Pull Request Conventions
This page outlines pull request conventions and standards across Cadence repositories. For language-specific tooling, build instructions, and formatting details, refer to the CONTRIBUTING.md file in each repository.
Pull Request Titles
Conventional Commits Format
All pull request titles should follow the Conventional Commits format:
<type>(<optional scope>): <description>
Examples:
feat(worker): Add batch processing API
fix(history): Resolve deadlock in workflow execution
docs: Update getting started guide
Types:
- feat: A new feature
- fix: A bug fix
- docs: Documentation only changes
- refactor: Code change that neither fixes a bug nor adds a feature
- test: Adding or updating tests
- chore: Changes to build process, dependencies, or tools
PR Title Guidelines
Follow the Chris Beams guide to writing git commit messages. All PR titles should:
- Start with UPPER case
- Be specific (avoid generic titles like "bug fixes")
- Use imperative mood ("Add feature" not "Added feature")
Examples from Cadence repositories:
- Make sync activity retry multiple times before fetch history from remote
- Enable archival config per domain
Signing Commits
The Developer Certificate of Origin (DCO) requires all commits to be signed before they can be merged to Cadence repositories. You can fulfill this requirement using either:
- Signing every commit with
-s
:git commit -s -m "Your commit message"
- Signing each commit with a GPG key
Setting up GPG key signing
- Generate a new GPG key
- Add GPG key to your GitHub account
- Tell Git about your signing key
- Enable automatic signing:
git config --global commit.gpgsign true