You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This issue outlines the tasks to be done for the upcoming major release of this project.
Command-Line Interface (CLI) entrypoint
Define a Program abstraction.
Implement the default program flow that checks commit messages.
Implement a program flow that rejects invalid configurations.
Implement a --version/-v program flow.
Implement a --help/-h program flow.
Write an elaborate help text with usage instructions.
Register the comet command as a bin entrypoint in package.json.
GitHub Actions entrypoint
Implement the default program flow that checks commit messages.
Implement a program flow that rejects invalid configurations.
Configurations
Define a Configuration abstraction. Define a default configuration.
Support comet.json configuration files. Define a Valibot schema for the JSON payload in the configuration file.
Support comet.jsonc configuration files. Strip line comments and block comments from the JSON payload.
Implement scoped overrides to enable/disable certain rules in a particular context.
Implement configuration extensions from other local configuration files and from remote configuration files.
Define a versioned JSON schema to provide validation and code completion in configuration files.
Upload the JSON schema to a public web server (alternatively, use unpkg like Knip does). Automate the publication of versioned JSON schemas in the release workflow.
Validate that the $schema property in comet.json points to a JSON schema that corresponds to the current program version.
Implement checks for redundant configuration parameters.
Commits
Define a Commit abstraction.
Implement a getCommits function for local Git clients.
Implement a getCommits function for pull requests in GitHub.
Implement a console reporter with coloured output and ^^^ range indicators.
Implement a Markdown reporter for job summaries in GitHub Actions.
New project name: Comet
Create a fork of this repository to preserve the commit SHAs. Rename the original repository to rainstormy/comet. Then rename the fork to rainstormy/github-action-validate-commit-messages to restore workflows that refer to the original name. Mark the fork as archived.
This issue outlines the tasks to be done for the upcoming major release of this project.
Command-Line Interface (CLI) entrypoint
Programabstraction.--version/-vprogram flow.--help/-hprogram flow.cometcommand as abinentrypoint inpackage.json.GitHub Actions entrypoint
Configurations
Configurationabstraction. Define a default configuration.comet.jsonconfiguration files. Define a Valibot schema for the JSON payload in the configuration file.comet.jsoncconfiguration files. Strip line comments and block comments from the JSON payload.$schemaproperty incomet.jsonpoints to a JSON schema that corresponds to the current program version.Commits
Commitabstraction.getCommitsfunction for local Git clients.getCommitsfunction for pull requests in GitHub.Rules
Ruleabstraction.noMergeCommits#293noRepeatedSubjectLines#294noRestrictedTrailers#295noRevertRevertCommits#296noSingleWordSubjectLines#297noSquashMarkers#298noUnexpectedPunctuation#300noExcessiveWhitespace#301useAuthorEmailPatterns#302useAuthorNamePatterns#303useCapitalisedSubjectLines#305useCommitterEmailPatterns#306useCommitterNamePatterns#307useConciseSubjectLines#308useEmptyLineBeforeBodyLines#309useImperativeSubjectLines#310useIssueLinks#311useLineWrapping#312noExcessiveCommitsPerBranch#313useSignedCommits#314Reporters
Reporterabstraction.^^^range indicators.New project name: Comet
rainstormy/comet. Then rename the fork torainstormy/github-action-validate-commit-messagesto restore workflows that refer to the original name. Mark the fork as archived.