Contributing#
If you encounter an issue or want to contribute to pyrekordbox, please feel free to get in touch, open an issue or create a new pull request!
pyrekordbox is tested on Windows and MacOS, however some features can’t be tested in the CI setup since it requires a working Rekordbox installation.
Pre-commit Hooks#
We are using the pre-commit framework to automatically run a linter and code formatter at commit time. This ensures that every commit fulfills the basic requirements to be mergeable and follows the coding style of the project.
The pre-commit hooks can be installed via
$ pre-commit install
Commit Message Format#
A format influenced by Angular commit message.
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
Type#
Must be one of the following:
feat: A new feature
fix: Bug fixes or improvements
perf: A code change that improves performance
refactor: Code refactoring
ci: Changes to CI configuration files and scripts
docs: Documention changes
build: Updating Makefile etc, no production code changes
test: Adding missing tests or correcting existing tests
update Other configurations updates
Scope (optional)#
The scope should specify the affected part of the project. The following is a list of possible scopes:
config: Configuration handling
xml: Rekordbox XML database handling
db: Rekordbox v6 database handling
anlz: ANLZ file handling
mysetting: MySettings file handling
Subject#
Use the summary field to provide a succinct description of the change:
use the imperative, present tense: “change” not “changed” nor “changes”
don’t capitalize the first letter
no dot (.) at the end
Body (optional)#
Just as in the summary, use the imperative, present tense: “fix” not “fixed” nor “fixes”.
Explain the motivation for the change in the commit message body. This commit message should explain why you are making the change. You can include a comparison of the previous behavior with the new behavior in order to illustrate the impact of the change.