Skip to content

DSDL linter #68

@pavel-kirienko

Description

@pavel-kirienko

We need to have this script transformed into a standalone reusable DSDL linter:

https://github.com/UAVCAN/public_regulated_data_types/blob/master/verify

Business requirements:

  • Implemented as a standalone Python script dependent only on PyDSDL.
  • Ensure that the formatting recommendations provided in the specification are followed.
  • Support for definition-wide diagnostic suppression using pragmas.
  • Ensure the header comment is provided for all data types. Allow the caller to specify which namespaces should be allowed to bypass this requirement.
  • Allow the caller to specify the maximum size of serialized representations. Provide a pragma to override this.
  • Ensure ASCII charset; prohibit tabs and \r (carriage return).
  • Non-zero return code if a violation is found.

I am not sure where the script should be located; could be the PyDSDL repo or just a separate gist?

Original comment: https://github.com/UAVCAN/public_regulated_data_types/pull/67/files/acb48c15288510bffea3797d76e3eca21d6413dc#r322079388

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions