hecat icon indicating copy to clipboard operation
hecat copied to clipboard

new processor: awesome_lint

Open nodiscc opened this issue 4 years ago • 0 comments

-> https://github.com/nodiscc/hecat/blob/master/hecat/processors/awesome_lint.py

Add a processor that checks for missing keys/fields and broken relations in YAML data and outputs warnings or errors. For example:

tags:

  • [x] assert that the tag description is defined, else throw a warning
  • [ ] if less than 3 software items have this tag in their tags, throw a warning
  • [x] if the tag has related tags, assert that they exist, else throw an error
  • [ ] (later) if a tag has related tags, assert that they are also related back to this tag, else throw a warning
  • [x] (later) if a tag has a delegate_to: defined and there are still software items with this tag, throw a warning

software:

  • [ ] assert that source_code_url is defined, else throw an error
  • [x] assert that the description is defined, else throw an error
  • [x] assert that licenses are defined, else throw an error
  • [x] assert that each license exists, else error
  • [x] assert that the description is less than 250 characters, else throw an error
  • [ ] if github_archived is defined assert that it is false, else error
  • [x] if github_last_updated is defined, assert that it is a date less than 6 months in the past, else warning
  • [x] if external_links are defined, assert that they are of the form [text](url) (markdown link) else throw an error

licenses:

  • [ ] assert that the description is defined, else throw an error

nodiscc avatar Jan 04 '22 22:01 nodiscc