Thank you for contributing to pCloud Backup for Home Assistant!
This project uses Conventional Commits for automatic versioning and changelog generation.
<type>(<scope>): <short description>
[optional body]
[optional footer]
feat: A new feature (bumps MINOR version)fix: A bug fix (bumps PATCH version)docs: Documentation only changesstyle: Code style changes (formatting, etc.)refactor: Code refactoringperf: Performance improvementstest: Adding or updating testsbuild: Build system or dependency changesci: CI/CD changeschore: Other changes that don't modify src or test files
To create a breaking change (bumps MAJOR version), add ! after the type or include BREAKING CHANGE: in the footer:
feat!: remove deprecated API
BREAKING CHANGE: The old API has been removed. Use the new API instead.
# Feature (MINOR version bump)
git commit -m "feat(api): add support for chunked file uploads"
# Bug fix (PATCH version bump)
git commit -m "fix(auth): handle token expiration correctly"
# Breaking change (MAJOR version bump)
git commit -m "feat!: change authentication method to OAuth2
BREAKING CHANGE: Username/password authentication is no longer supported. Please reconfigure using OAuth2."
# With scope
git commit -m "fix(backup): resolve issue with retention policy calculation"
# Multiple scopes
git commit -m "feat(api,auth): add automatic token refresh on expiration"Common scopes include:
api: API-related changesauth: Authentication changesbackup: Backup functionalitysensor: Sensor platformconfig: Configuration flowdocs: Documentationci: CI/CD
When you push to main:
- Commits are analyzed for conventional commit format
- Version is automatically bumped (PATCH/MINOR/MAJOR)
- Changelog is automatically generated
- Git tag is created
- GitHub release is created (if configured)
Note: Only commits to main trigger releases. Commits in pull requests are checked but don't trigger releases.
- Fork the repository
- Create a feature branch (
git checkout -b feat/my-new-feature) - Make your changes
- Commit using conventional commit format
- Push to your fork (
git push origin feat/my-new-feature) - Create a Pull Request
Version numbers follow Semantic Versioning:
- MAJOR (1.0.0): Breaking changes
- MINOR (0.1.0): New features, backwards compatible
- PATCH (0.0.1): Bug fixes, backwards compatible
The version in manifest.json is automatically updated on release.