diff --git a/.lycheeignore b/.lycheeignore index 5f9c2bcf9..26a1c98c6 100644 --- a/.lycheeignore +++ b/.lycheeignore @@ -4,4 +4,13 @@ mathworks.com https://www.freepik.com/ # (Occasional) Timeouts https://npo-echelon.ru/en/solutions/appchecker.php -https://www.qualys.com/apps/container-security \ No newline at end of file +https://www.qualys.com/apps/container-security +# 415 Unsupported Media Type (site works in browser) +dickgrune.com +zigrin.com +# Cloudflare bot protection +spinroot.com +# npmjs.com blocks automated requests +https://www.npmjs.com/package/tslint-clean-code +# GitHub wiki intermittent 502 +https://github.com/flowr-analysis/flowr/wiki/Terminology#program-slice \ No newline at end of file diff --git a/data/api/tags.json b/data/api/tags.json index db3eb14e8..a0dbec31e 100644 --- a/data/api/tags.json +++ b/data/api/tags.json @@ -427,11 +427,6 @@ "value": "embedded", "tag_type": "Other" }, - { - "name": "Formatter", - "value": "formatter", - "tag_type": "Other" - }, { "name": "Gherkin", "value": "gherkin", diff --git a/data/api/tools.json b/data/api/tools.json index 134dd0c3a..11eaa85a8 100644 --- a/data/api/tools.json +++ b/data/api/tools.json @@ -486,8 +486,8 @@ "types": [ "cli" ], - "homepage": "https://docs.ansible.com/ansible-lint", - "source": "https://github.com/willthames/ansible-lint", + "homepage": "https://ansible.readthedocs.io/projects/lint/", + "source": "https://github.com/ansible/ansible-lint", "pricing": null, "plans": null, "description": "Checks playbooks for practices and behaviour that could potentially be improved.", @@ -3498,7 +3498,7 @@ "plans": null, "description": "Static Code Analysis for R.", "discussion": null, - "deprecated": null, + "deprecated": true, "resources": null, "reviews": null, "demos": null, @@ -3603,37 +3603,6 @@ "demos": null, "wrapper": null }, - "codeit-right": { - "name": "CodeIt.Right", - "categories": [ - "linter" - ], - "languages": [ - "csharp", - "vbnet" - ], - "other": [], - "licenses": [ - "proprietary" - ], - "types": [ - "cli" - ], - "homepage": "https://submain.com/products/codeit.right.aspx", - "source": null, - "pricing": "https://submain.com/CodeIt.Right/editions/", - "plans": { - "free": false, - "oss": false - }, - "description": "CodeIt.Right™ provides a fast, automated way to ensure that your source code adheres to (your) predefined design and style guidelines as well as best coding practices.", - "discussion": null, - "deprecated": null, - "resources": null, - "reviews": null, - "demos": null, - "wrapper": null - }, "codelyzer": { "name": "Codelyzer", "categories": [ @@ -3716,38 +3685,6 @@ "demos": null, "wrapper": null }, - "codepeer": { - "name": "Codepeer", - "categories": [ - "linter" - ], - "languages": [ - "ada" - ], - "other": [], - "licenses": [ - "proprietary" - ], - "types": [ - "cli" - ], - "homepage": "https://www.adacore.com/static-analysis/codepeer", - "source": null, - "pricing": "https://www.adacore.com/pricing", - "plans": null, - "description": "Detects run-time and logic errors.", - "discussion": null, - "deprecated": null, - "resources": [ - { - "title": "What's New in CodePeer 19", - "url": "https://www.youtube.com/watch?v=8837TUpLLMo" - } - ], - "reviews": null, - "demos": null, - "wrapper": null - }, "codeql": { "name": "codeql", "categories": [ @@ -10911,34 +10848,6 @@ "demos": null, "wrapper": null }, - "ktool": { - "name": "ktool", - "categories": [ - "linter" - ], - "languages": [], - "other": [ - "binary", - "security" - ], - "licenses": [ - "MIT" - ], - "types": [ - "cli" - ], - "homepage": "https://ktool.cynder.me/en/latest/ktool.html", - "source": "https://github.com/cxnder/ktool", - "pricing": null, - "plans": null, - "description": "Fully cross-platform toolkit and library for MachO+Obj-C editing/analysis. Includes a cli kit, a curses GUI, ObjC header dumping, and much more.", - "discussion": null, - "deprecated": null, - "resources": null, - "reviews": null, - "demos": null, - "wrapper": null - }, "kube-hunter": { "name": "kube-hunter", "categories": [ @@ -12193,7 +12102,7 @@ "plans": null, "description": "Format markdown code blocks using your favorite code formatters.", "discussion": null, - "deprecated": null, + "deprecated": false, "resources": null, "reviews": null, "demos": null, @@ -12246,7 +12155,6 @@ "ci", "css", "dockerfile", - "formatter", "gherkin", "html", "json", @@ -12929,10 +12837,11 @@ "categories": [ "linter" ], - "languages": [], - "other": [ - "formatter" + "languages": [ + "javascript", + "typescript" ], + "other": [], "licenses": [ "Apache-2.0" ], @@ -13868,7 +13777,7 @@ "plans": null, "description": "Facebook's tools for code analysis, visualizations, or style-preserving source transformation for many languages.", "discussion": null, - "deprecated": null, + "deprecated": true, "resources": null, "reviews": null, "demos": null, @@ -17116,38 +17025,6 @@ "demos": null, "wrapper": null }, - "rezilion": { - "name": "Rezilion", - "categories": [ - "linter" - ], - "languages": [], - "other": [ - "security" - ], - "licenses": [ - "proprietary" - ], - "types": [ - "service" - ], - "homepage": "https://www.rezilion.com/", - "source": null, - "pricing": null, - "plans": null, - "description": "Discovers vulnerabilities for all components in your environment, filters out 85% non-exploitable vulnerabilities and creates a remediation plan and open tickets to upgrade components that violate your security policy and/or patch automatically in CI.", - "discussion": null, - "deprecated": null, - "resources": [ - { - "title": "Rezilion and CircleCI Integration Demo", - "url": "https://www.youtube.com/watch?v=OIhfnVKq-MU" - } - ], - "reviews": null, - "demos": null, - "wrapper": null - }, "rhabdomancer": { "name": "rhabdomancer", "categories": [ @@ -18117,33 +17994,6 @@ "demos": null, "wrapper": null }, - "searchdiggity": { - "name": "SearchDiggity", - "categories": [ - "linter" - ], - "languages": [], - "other": [ - "security" - ], - "licenses": [ - "proprietary" - ], - "types": [ - "cli" - ], - "homepage": "https://resources.bishopfox.com/resources/tools/google-hacking-diggity/attack-tools/", - "source": null, - "pricing": null, - "plans": null, - "description": "Identifies vulnerabilities in open source code projects hosted on Github, Google Code, MS CodePlex, SourceForge, and more. The tool comes with over 130 default searches that identify SQL injection, cross-site scripting (XSS), insecure remote and local file includes, hard-coded passwords, etc. ", - "discussion": null, - "deprecated": null, - "resources": null, - "reviews": null, - "demos": null, - "wrapper": null - }, "security-code-scan": { "name": "Security Code Scan", "categories": [ @@ -20519,9 +20369,9 @@ "service", "ide-plugin" ], - "homepage": "https://www.cqse.eu/en/teamscale/overview/", + "homepage": "https://teamscale.com", "source": null, - "pricing": "https://www.cqse.eu/en/teamscale/buy/", + "pricing": "https://teamscale.com/pricing", "plans": { "free": false, "oss": false @@ -20580,7 +20430,7 @@ "plans": null, "description": "Tencent Cloud Code Analysis (TCA for short, code-named CodeDog inside the company early) is a comprehensive platform for code analysis and issue tracking. TCA consist of three components, server, web and client. It integrates of a number of self-developed tools, and also supports dynamic integration of code analysis tools in various programming languages.", "discussion": null, - "deprecated": null, + "deprecated": true, "resources": null, "reviews": null, "demos": null, diff --git a/data/render/src/types.rs b/data/render/src/types.rs index dff617436..cdc1dbf1a 100644 --- a/data/render/src/types.rs +++ b/data/render/src/types.rs @@ -133,7 +133,22 @@ impl Entry { pub fn from_parsed(p: ParsedEntry, tags: &[Tag]) -> Result { valid(&p, tags)?; - let entry_tags: Result> = p.tags.iter().map(|t| get_tag(t, tags)).collect(); + + let tag_results: Vec> = p.tags.iter().map(|t| get_tag(t, tags)).collect(); + let tag_errors: Vec = tag_results + .iter() + .filter_map(|r| r.as_ref().err().map(|e| e.to_string())) + .collect(); + if !tag_errors.is_empty() { + bail!( + "Tool '{}': {}\n File: data/tools/{}.yml", + p.name, + tag_errors.join("\n"), + p.name.to_lowercase().replace(' ', "-") + ); + } + let entry_tags: Result> = tag_results.into_iter().collect(); + let types: Result> = p .types .iter() diff --git a/data/tags.yml b/data/tags.yml index 340898a27..c54183c6f 100644 --- a/data/tags.yml +++ b/data/tags.yml @@ -118,9 +118,6 @@ - name: F# value: fsharp type: language -- name: Formatter - value: formatter - type: other - name: Fortran value: fortran type: language diff --git a/data/tools/ansible-lint.yml b/data/tools/ansible-lint.yml index 399a0822e..1d121f54e 100644 --- a/data/tools/ansible-lint.yml +++ b/data/tools/ansible-lint.yml @@ -6,8 +6,8 @@ tags: license: MIT License types: - cli -source: 'https://github.com/willthames/ansible-lint' -homepage: 'https://docs.ansible.com/ansible-lint' +source: "https://github.com/ansible/ansible-lint" +homepage: "https://ansible.readthedocs.io/projects/lint/" description: >- Checks playbooks for practices and behaviour that could potentially be improved. diff --git a/data/tools/codeitright.yml b/data/tools/codeitright.yml deleted file mode 100644 index 82e8bb562..000000000 --- a/data/tools/codeitright.yml +++ /dev/null @@ -1,18 +0,0 @@ -name: CodeIt.Right -categories: - - linter -tags: - - csharp - - vbnet -license: proprietary -types: - - cli -homepage: 'https://submain.com/products/codeit.right.aspx' -pricing: https://submain.com/CodeIt.Right/editions/ -plans: - free: false - oss: false -description: >- - CodeIt.Right™ provides a fast, automated way to ensure that your source - code adheres to (your) predefined design and style guidelines as well as best - coding practices. diff --git a/data/tools/codepeer.yml b/data/tools/codepeer.yml deleted file mode 100644 index b254b579e..000000000 --- a/data/tools/codepeer.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: Codepeer -categories: -- linter -tags: -- ada -license: proprietary -types: -- cli -homepage: https://www.adacore.com/static-analysis/codepeer -description: Detects run-time and logic errors. -resources: -- title: What's New in CodePeer 19 - url: https://www.youtube.com/watch?v=8837TUpLLMo -pricing: https://www.adacore.com/pricing diff --git a/data/tools/ktool.yml b/data/tools/ktool.yml deleted file mode 100644 index 984c87f9a..000000000 --- a/data/tools/ktool.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: ktool -categories: - - linter -tags: - - binary - - security -license: MIT -types: - - cli -source: "https://github.com/cxnder/ktool" -homepage: "https://ktool.cynder.me/en/latest/ktool.html" -description: >- - Fully cross-platform toolkit and library for MachO+Obj-C editing/analysis. - Includes a cli kit, a curses GUI, ObjC header dumping, and much more. diff --git a/data/tools/mega-linter.yml b/data/tools/mega-linter.yml index 1865f9647..022e8a180 100644 --- a/data/tools/mega-linter.yml +++ b/data/tools/mega-linter.yml @@ -20,7 +20,6 @@ tags: - dockerfile - dotenv - dotnet - - formatter - gherkin - go - groovy diff --git a/data/tools/neurolint-cli.yml b/data/tools/neurolint-cli.yml index b13dd08de..ef4afc59b 100644 --- a/data/tools/neurolint-cli.yml +++ b/data/tools/neurolint-cli.yml @@ -2,11 +2,9 @@ name: Neurolint-CLI categories: - linter -languages: - - JavaScript - - TypeScript tags: - - formatter + - javascript + - typescript license: "Apache-2.0" types: - cli diff --git a/data/tools/rezilion.yml b/data/tools/rezilion.yml deleted file mode 100644 index d16af146b..000000000 --- a/data/tools/rezilion.yml +++ /dev/null @@ -1,17 +0,0 @@ -name: Rezilion -categories: - - linter -tags: - - security -license: proprietary -types: - - service -homepage: 'https://www.rezilion.com/' -resources: - - title: Rezilion and CircleCI Integration Demo - url: https://www.youtube.com/watch?v=OIhfnVKq-MU -description: >- - Discovers vulnerabilities for all components in your environment, - filters out 85% non-exploitable vulnerabilities and creates a - remediation plan and open tickets to upgrade components that violate your - security policy and/or patch automatically in CI. diff --git a/data/tools/searchdiggity.yml b/data/tools/searchdiggity.yml deleted file mode 100644 index 9769efc22..000000000 --- a/data/tools/searchdiggity.yml +++ /dev/null @@ -1,14 +0,0 @@ -name: SearchDiggity -categories: - - linter -tags: - - security -license: proprietary -types: - - cli -homepage: 'https://resources.bishopfox.com/resources/tools/google-hacking-diggity/attack-tools/' -description: >- - Identifies vulnerabilities in open source code projects - hosted on Github, Google Code, MS CodePlex, SourceForge, and more. - The tool comes with over 130 default searches that identify SQL injection, - cross-site scripting (XSS), insecure remote and local file includes, hard-coded passwords, etc. diff --git a/data/tools/teamscale.yml b/data/tools/teamscale.yml index c50ad195c..aa1237fe2 100644 --- a/data/tools/teamscale.yml +++ b/data/tools/teamscale.yml @@ -12,7 +12,7 @@ license: proprietary types: - service - ide-plugin -homepage: https://www.cqse.eu/en/teamscale/overview/ +homepage: https://teamscale.com description: >- Static and dynamic analysis tool supporting more than 25 languages and direct IDE integration. Free hosting for Open Source projects available on request. Free academic @@ -22,7 +22,7 @@ resources: url: https://www.youtube.com/watch?v=fJVjv0153-U - title: Teamscale Integration for Visual Studio url: https://marketplace.visualstudio.com/items?itemName=CQSEGmbH.Teamscale -pricing: https://www.cqse.eu/en/teamscale/buy/ +pricing: https://teamscale.com/pricing plans: free: false oss: false