Description:
Today, SAM's spec is a document meant for human consumption only. SAM should also have an authoritative, machine-readable spec (schema). This would be beneficial in multiple ways:
- This would allow cfn-lint to remove its dependency on the SAM translator code, which can cause dependency conflicts with other modules if they depend on a different version of SAM translator. cfn-lint could keep a copy the SAM schema similar to what it does for CloudFormation schemas. Then there would no longer be a dependency conflict.
- Somewhat tangential: I'd prefer for SAM CLI's
sam validate command to just run cfn-lint against the template. I think this would be far more valuable than what the current sam validate command offers. Removing cfn-lint's dependency on SAM translator would unblock this.
- If we could embed the documentation of the current spec into the schema, this could lead to the human-readable version of the spec being auto-generated. This would allow us to auto-generate the SAM spec in the official SAM documentation after each SAM release.
Description:
Today, SAM's spec is a document meant for human consumption only. SAM should also have an authoritative, machine-readable spec (schema). This would be beneficial in multiple ways:
sam validatecommand to just run cfn-lint against the template. I think this would be far more valuable than what the currentsam validatecommand offers. Removing cfn-lint's dependency on SAM translator would unblock this.