Developers who would like to contribute with feature requests, bug reports and other changes are welcome to do so. Please adhere to the following guidelines when contributing code to this repository.
The library / CLI app is versioned as per the semantic versioning scheme. In brief, the version numbers signify the following:
<major>.<minor>.<patch>
| | |------ backwards-compatible (no new feature)
| |-------------- backwards-compatible (new features or deprecations)
|---------------------- breaking change
Issues are used to document and track bugs, feature requests, or anything that should be added, updated, or removed from the codebase. Questions or concerns can of course be posed via issues. A contributing developer mainly operns an issue as a means to communicate with the maintainer.
Before opening an issue, please check if the following conditions are met:
- The issue is related to RenameRename (as opposed to the shell)
- There exists no similar issue (open or closed)
When opening an issue, please include the following information in the description:
- RenameRename version number
- OS and its version number
- Observed behavior and steps to reproduce it
- Expected behavior and if applicable, a resolution
Please follow the Conventional Changelog strategy when writing commit messages.
To ensure code style compliance to PEP8, we typically use flake8.
All Python code contributed should be style compliant.
So, before committing any code, run flake8
to make these checks.
You can install flake8
via:
pip install flake8==3.8.4
A configuration file for flake8
is already provided in ./.flake8
.
Therefore, you can just run the command in the repository's root directory:
flake8
RenameRename is tested through unit tests. If applicable and when contributing Python code, please add a unit test that fails until the bug is resolved or the feature is implemented. Also, please ensure that already existing tests pass.
When adding, removing, or fixing code, please add a brief entry to the changelog describing what was contributed.