Version Bumping =============== Brain-Score Vision now features an automated version bumping process that follows `Semantic Versioning `_ (MAJOR.MINOR.PATCH) and is triggered via a GitHub Action. This ensures that any significant changes to the codebase lead to an appropriate version update. How It Works ------------ 1. **Pull Request Analysis:** When a pull request (PR) is submitted, a GitHub Action (see the `workflow file `_) analyzes the changes. If any files outside the plugin directories—namely, ``benchmarks``, ``data``, ``metrics``, and ``models``—are modified, the version bump process is initiated. Changes confined to plugin directories are considered non-breaking and therefore do not necessitate a version increment. 2. **Determining the Bump Type:** The type of version bump is determined by labels applied to the PR: - **MAJOR:** Apply the ``major update`` label to trigger an increase in the major version. - **MINOR:** Apply the ``minor update`` label to trigger an increase in the minor version. - **PATCH:** If neither label is applied, the version will automatically increment the patch number. 3. **Version Increment and PR Creation:** The tool `bump-my-version `_ uses the latest version tag to calculate the new version number. After bumping the version, a new PR is automatically created containing the updated version. This PR is auto-approved, undergoes status checks, and is then merged automatically. Version Releases ---------------- After the version is bumped, release notes are automatically generated. These notes include all commit details since the previous version bump and can be viewed in the `Releases section `_ of the repository. PyPI Publishing --------------- A version bump also triggers a publishing job that builds the new package and uploads it to PyPI. You can always find the latest package available on PyPI at the `PyPI project page `_.