-
-
Notifications
You must be signed in to change notification settings - Fork 219
Closed
Labels
core teamThis issue should be done by an Excalibur core memberThis issue should be done by an Excalibur core memberstaleThis issue or PR has not had any activity recentlyThis issue or PR has not had any activity recentlytools
Description
Context
Currently, we have guidelines for how to format commit message in general, but do not have enforced standards for how to add commit metadata (is this a breaking change, is this a bugfix, other changes adjacent to semantic versioning concerns, etc.) We stopgap some of that with Github labels, but those do not exist in the Git commit history.
Proposal
- enforce the Conventional Commit format for all commits that are merged to the main branch
- this will allow us to automatically determine the appropriate semantic version for post-1.0 releases of Excalibur
- add optional linting command for developers to use locally
- this prevents having to require that community contributors follow the strict commit message format, since we squash and rebase all pull requests when merging
- automate changelog updates on pull request merge
- if commit messages are required to be well-formatted and provide proper context, then the vast majority of the changelog can be automated
- maintain the majority of our git commit message format conventions, as described in our Contributing document
- update the Contributing document to include the new Conventional Commits formatting guidelines
Commit Format Examples
General template:
<type>[optional scope]: <Description>
[optional body]
closes #issue_number
Specific example:
fix: Prevent sounds from playing when the game is stopped
Ensure all sounds stop when the game is stopped, and Sound.play() does not play sounds when the game is stopped
closes #1476
additional info: https://www.conventionalcommits.org
See also #777
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
core teamThis issue should be done by an Excalibur core memberThis issue should be done by an Excalibur core memberstaleThis issue or PR has not had any activity recentlyThis issue or PR has not had any activity recentlytools