python-semantic-release 10.5.0__tar.gz → 10.5.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/PKG-INFO +1 -1
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/automatic-releases/github-actions.rst +9 -9
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/configuration.rst +1 -1
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/pyproject.toml +1 -1
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/commands/version.py +6 -1
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/gitproject.py +31 -7
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/conftest.py +9 -1
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_print.py +2 -25
- python_semantic_release-10.5.2/tests/e2e/cmd_version/test_version_upstream_check.py +574 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/test_gitproject.py +28 -4
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/util.py +14 -19
- python_semantic_release-10.5.0/tests/e2e/cmd_version/test_version_upstream_check.py +0 -283
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/LICENSE +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/MANIFEST.in +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/README.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/Makefile +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/api/commands.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/changelog_templates.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/commit_parsing.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/getting_started.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/installation.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/multibranch_releases.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/concepts/strict_mode.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/conf.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/automatic-releases/cronjobs.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/automatic-releases/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/automatic-releases/travis.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/configuration-guides/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/configuration-guides/monorepos-ex-easy-before-release.png +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/configuration-guides/monorepos-ex-easy-post-release.png +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/configuration-guides/monorepos.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/configuration-guides/uv_integration.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/configuration/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/contributing/contributing_guide.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/contributing/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/make.bat +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/misc/psr_changelog.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/misc/troubleshooting.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/upgrading/08-upgrade.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/upgrading/09-upgrade.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/upgrading/10-upgrade.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/docs/upgrading/index.rst +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/setup.cfg +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/python_semantic_release.egg-info/SOURCES.txt +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/__main__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/changelog/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/changelog/context.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/changelog/release_history.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/changelog/template.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/changelog_writer.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/cli_context.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/commands/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/commands/changelog.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/commands/generate_config.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/commands/main.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/commands/publish.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/config.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/const.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/github_actions_output.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/masking_filter.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/cli/util.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/_base.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/angular.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/conventional/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/conventional/options.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/conventional/options_monorepo.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/conventional/parser.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/conventional/parser_monorepo.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/emoji.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/scipy.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/tag.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/token.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/commit_parser/util.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/const.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/changelog_header.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/changelog_init.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/changelog_update.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/changes.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/first_release.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/macros.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/unreleased_changes.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.components/versioned_changes.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/.release_notes.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/md/CHANGELOG.md.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/changelog_header.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/changelog_init.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/changelog_update.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/changes.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/first_release.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/macros.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/unreleased_changes.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/.components/versioned_changes.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/data/templates/conventional/rst/CHANGELOG.rst.j2 +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/enums.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/errors.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/globals.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/helpers.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/_base.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/bitbucket.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/gitea.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/github.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/gitlab.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/remote_hvcs_base.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/token_auth.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/hvcs/util.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/py.typed +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/algorithm.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/declaration.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/declarations/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/declarations/enum.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/declarations/i_version_replacer.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/declarations/pattern.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/declarations/toml.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/translator.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/version/version.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/const.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_changelog/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_changelog/test_changelog.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_changelog/test_changelog_custom_parser.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_changelog/test_changelog_parsing.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_changelog/test_changelog_release_notes.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_config/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_config/test_generate_config.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_publish/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_publish/test_publish.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/conftest.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/git_flow/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_1_channel.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_2_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_3_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_4_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_1_channel.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_1_channel_branch_update_merge.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_2_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow_monorepo/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow_monorepo/test_monorepo_1_channel.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/github_flow_monorepo/test_monorepo_2_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_dual_version_support.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_dual_version_support_w_prereleases.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_w_prereleases.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev_monorepo/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/bump_version/trunk_based_dev_monorepo/test_monorepo_trunk.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_build.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_bump.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_changelog.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_changelog_custom_commit_msg.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_github_actions.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_partial_tag.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_release_notes.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_shallow.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_stamp.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/cmd_version/test_version_strict.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/conftest.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/test_help.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/e2e/test_main.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/commit_parsers.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/example_project.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/git_repo.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/example_monorepo.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/git_monorepo.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/github_flow/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/github_flow/monorepo_w_default_release.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/github_flow/monorepo_w_release_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/trunk_based_dev/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/monorepos/trunk_based_dev/monorepo_w_tags.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/git_flow/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/git_flow/repo_w_1_release_channel.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/git_flow/repo_w_2_release_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/git_flow/repo_w_3_release_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/git_flow/repo_w_4_release_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/github_flow/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/github_flow/repo_w_default_release.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/github_flow/repo_w_default_release_w_branch_update_merge.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/github_flow/repo_w_release_channels.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/repo_initial_commit.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/trunk_based_dev/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/trunk_based_dev/repo_w_dual_version_support.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/trunk_based_dev/repo_w_dual_version_support_w_prereleases.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/trunk_based_dev/repo_w_no_tags.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/trunk_based_dev/repo_w_prereleases.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/repos/trunk_based_dev/repo_w_tags.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/fixtures/scipy.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/conftest.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/conftest.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/test_changelog_context.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/test_default_changelog.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/test_release_history.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/test_release_notes.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/test_template.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/changelog/test_template_render.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/cli/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/cli/test_config.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/cli/test_github_actions_output.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/cli/test_masking_filter.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/cli/test_util.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/cli/test_version.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/commit_parser/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/commit_parser/test_conventional.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/commit_parser/test_emoji.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/commit_parser/test_parsed_commit.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/commit_parser/test_scipy.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/commit_parser/test_util.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test__base.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test_bitbucket.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test_gitea.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test_github.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test_gitlab.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test_token_auth.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/hvcs/test_util.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/test_helpers.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/declarations/__init__.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/declarations/test_pattern_declaration.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/declarations/test_toml_declaration.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/test_algorithm.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/test_translator.py +0 -0
- {python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/tests/unit/semantic_release/version/test_version.py +0 -0
|
@@ -893,14 +893,14 @@ to the GitHub Release Assets as well.
|
|
|
893
893
|
- name: Action | Semantic Version Release
|
|
894
894
|
id: release
|
|
895
895
|
# Adjust tag with desired version if applicable.
|
|
896
|
-
uses: python-semantic-release/python-semantic-release@v10.5.
|
|
896
|
+
uses: python-semantic-release/python-semantic-release@v10.5.2
|
|
897
897
|
with:
|
|
898
898
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
899
899
|
git_committer_name: "github-actions"
|
|
900
900
|
git_committer_email: "actions@users.noreply.github.com"
|
|
901
901
|
|
|
902
902
|
- name: Publish | Upload to GitHub Release Assets
|
|
903
|
-
uses: python-semantic-release/publish-action@v10.5.
|
|
903
|
+
uses: python-semantic-release/publish-action@v10.5.2
|
|
904
904
|
if: steps.release.outputs.released == 'true'
|
|
905
905
|
with:
|
|
906
906
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -969,7 +969,7 @@ to the GitHub Release Assets as well.
|
|
|
969
969
|
the ``token`` input) in order to gain push access.
|
|
970
970
|
|
|
971
971
|
.. note::
|
|
972
|
-
As of
|
|
972
|
+
As of v10.5.0, Python Semantic Release automatically detects and converts
|
|
973
973
|
shallow clones to full clones when needed. While you can still use ``fetch-depth: 0``
|
|
974
974
|
with ``actions/checkout@v4`` to fetch the full history upfront, it is no longer
|
|
975
975
|
required. If you use the default shallow clone, Python Semantic Release will
|
|
@@ -977,7 +977,7 @@ to the GitHub Release Assets as well.
|
|
|
977
977
|
an older version of PSR, you will need to unshallow the repository prior to use.
|
|
978
978
|
|
|
979
979
|
.. note::
|
|
980
|
-
As of
|
|
980
|
+
As of v10.5.0, the verify upstream step is no longer required as it has been
|
|
981
981
|
integrated into PSR directly. If you are using an older version of PSR, you will need
|
|
982
982
|
to review the older documentation for that step. See Issue `#1201`_ for more details.
|
|
983
983
|
|
|
@@ -1005,7 +1005,7 @@ The equivalent GitHub Action configuration would be:
|
|
|
1005
1005
|
|
|
1006
1006
|
- name: Action | Semantic Version Release
|
|
1007
1007
|
# Adjust tag with desired version if applicable.
|
|
1008
|
-
uses: python-semantic-release/python-semantic-release@v10.5.
|
|
1008
|
+
uses: python-semantic-release/python-semantic-release@v10.5.2
|
|
1009
1009
|
with:
|
|
1010
1010
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
1011
1011
|
force: patch
|
|
@@ -1064,14 +1064,14 @@ Publish Action.
|
|
|
1064
1064
|
|
|
1065
1065
|
- name: Release submodule 1
|
|
1066
1066
|
id: release-submod-1
|
|
1067
|
-
uses: python-semantic-release/python-semantic-release@v10.5.
|
|
1067
|
+
uses: python-semantic-release/python-semantic-release@v10.5.2
|
|
1068
1068
|
with:
|
|
1069
1069
|
directory: ${{ env.SUBMODULE_1_DIR }}
|
|
1070
1070
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
1071
1071
|
|
|
1072
1072
|
- name: Release submodule 2
|
|
1073
1073
|
id: release-submod-2
|
|
1074
|
-
uses: python-semantic-release/python-semantic-release@v10.5.
|
|
1074
|
+
uses: python-semantic-release/python-semantic-release@v10.5.2
|
|
1075
1075
|
with:
|
|
1076
1076
|
directory: ${{ env.SUBMODULE_2_DIR }}
|
|
1077
1077
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -1083,7 +1083,7 @@ Publish Action.
|
|
|
1083
1083
|
# ------------------------------------------------------------------- #
|
|
1084
1084
|
|
|
1085
1085
|
- name: Publish | Upload package 1 to GitHub Release Assets
|
|
1086
|
-
uses: python-semantic-release/publish-action@v10.5.
|
|
1086
|
+
uses: python-semantic-release/publish-action@v10.5.2
|
|
1087
1087
|
if: steps.release-submod-1.outputs.released == 'true'
|
|
1088
1088
|
with:
|
|
1089
1089
|
directory: ${{ env.SUBMODULE_1_DIR }}
|
|
@@ -1091,7 +1091,7 @@ Publish Action.
|
|
|
1091
1091
|
tag: ${{ steps.release-submod-1.outputs.tag }}
|
|
1092
1092
|
|
|
1093
1093
|
- name: Publish | Upload package 2 to GitHub Release Assets
|
|
1094
|
-
uses: python-semantic-release/publish-action@v10.5.
|
|
1094
|
+
uses: python-semantic-release/publish-action@v10.5.2
|
|
1095
1095
|
if: steps.release-submod-2.outputs.released == 'true'
|
|
1096
1096
|
with:
|
|
1097
1097
|
directory: ${{ env.SUBMODULE_2_DIR }}
|
|
@@ -1398,7 +1398,7 @@ The regular expression generated from the ``version_variables`` definition will:
|
|
|
1398
1398
|
2. The variable name defined by ``variable`` and the version must be separated by
|
|
1399
1399
|
an operand symbol (``=``, ``:``, ``:=``, or ``@``). Whitespace is optional around
|
|
1400
1400
|
the symbol. As of v10.0.0, a double-equals (``==``) operator is also supported
|
|
1401
|
-
as a valid operand symbol. As of
|
|
1401
|
+
as a valid operand symbol. As of v10.5.0, PSR can omit all operands as long
|
|
1402
1402
|
as there is at least one whitespace character between the variable name and the version.
|
|
1403
1403
|
|
|
1404
1404
|
3. The value of the variable must match a `SemVer`_ regular expression and can be
|
|
@@ -722,6 +722,7 @@ def version( # noqa: C901
|
|
|
722
722
|
)
|
|
723
723
|
except GitCommitEmptyIndexError:
|
|
724
724
|
logger.info("No local changes to add to any commit, skipping")
|
|
725
|
+
commit_changes = False
|
|
725
726
|
|
|
726
727
|
# Tag the version after potentially creating a new HEAD commit.
|
|
727
728
|
# This way if no source code is modified, i.e. all metadata updates
|
|
@@ -749,7 +750,11 @@ def version( # noqa: C901
|
|
|
749
750
|
# This prevents conflicts if another commit was pushed while we were preparing the release
|
|
750
751
|
# We check HEAD~1 because we just made a release commit
|
|
751
752
|
try:
|
|
752
|
-
project.verify_upstream_unchanged(
|
|
753
|
+
project.verify_upstream_unchanged(
|
|
754
|
+
local_ref="HEAD~1",
|
|
755
|
+
upstream_ref=config.remote.name,
|
|
756
|
+
noop=opts.noop,
|
|
757
|
+
)
|
|
753
758
|
except UpstreamBranchChangedError as exc:
|
|
754
759
|
click.echo(str(exc), err=True)
|
|
755
760
|
click.echo(
|
{python_semantic_release-10.5.0 → python_semantic_release-10.5.2}/src/semantic_release/gitproject.py
RENAMED
|
@@ -335,17 +335,23 @@ class GitProject:
|
|
|
335
335
|
self.logger.exception(str(err))
|
|
336
336
|
raise GitPushError(f"Failed to push tag ({tag}) to remote") from err
|
|
337
337
|
|
|
338
|
-
def verify_upstream_unchanged(
|
|
339
|
-
self, local_ref: str = "HEAD", noop: bool = False
|
|
338
|
+
def verify_upstream_unchanged( # noqa: C901
|
|
339
|
+
self, local_ref: str = "HEAD", upstream_ref: str = "origin", noop: bool = False
|
|
340
340
|
) -> None:
|
|
341
341
|
"""
|
|
342
342
|
Verify that the upstream branch has not changed since the given local reference.
|
|
343
343
|
|
|
344
344
|
:param local_ref: The local reference to compare against upstream (default: HEAD)
|
|
345
|
+
:param upstream_ref: The name of the upstream remote or specific remote branch (default: origin)
|
|
345
346
|
:param noop: Whether to skip the actual verification (for dry-run mode)
|
|
346
347
|
|
|
347
348
|
:raises UpstreamBranchChangedError: If the upstream branch has changed
|
|
348
349
|
"""
|
|
350
|
+
if not local_ref.strip():
|
|
351
|
+
raise ValueError("Local reference cannot be empty")
|
|
352
|
+
if not upstream_ref.strip():
|
|
353
|
+
raise ValueError("Upstream reference cannot be empty")
|
|
354
|
+
|
|
349
355
|
if noop:
|
|
350
356
|
noop_report(
|
|
351
357
|
indented(
|
|
@@ -368,12 +374,30 @@ class GitProject:
|
|
|
368
374
|
raise DetachedHeadGitError(err_msg) from None
|
|
369
375
|
|
|
370
376
|
# Get the tracking branch (upstream branch)
|
|
371
|
-
if (tracking_branch := active_branch.tracking_branch()) is None:
|
|
372
|
-
|
|
373
|
-
|
|
377
|
+
if (tracking_branch := active_branch.tracking_branch()) is not None:
|
|
378
|
+
upstream_full_ref_name = tracking_branch.name
|
|
379
|
+
self.logger.info("Upstream branch name: %s", upstream_full_ref_name)
|
|
380
|
+
else:
|
|
381
|
+
# If no tracking branch is set, derive it
|
|
382
|
+
upstream_name = (
|
|
383
|
+
upstream_ref.strip()
|
|
384
|
+
if upstream_ref.find("/") == -1
|
|
385
|
+
else upstream_ref.strip().split("/", maxsplit=1)[0]
|
|
386
|
+
)
|
|
387
|
+
|
|
388
|
+
if not repo.remotes or upstream_name not in repo.remotes:
|
|
389
|
+
err_msg = "No remote found; cannot verify upstream state!"
|
|
390
|
+
raise UnknownUpstreamBranchError(err_msg)
|
|
391
|
+
|
|
392
|
+
upstream_full_ref_name = (
|
|
393
|
+
f"{upstream_name}/{active_branch.name}"
|
|
394
|
+
if upstream_ref.find("/") == -1
|
|
395
|
+
else upstream_ref.strip()
|
|
396
|
+
)
|
|
374
397
|
|
|
375
|
-
|
|
376
|
-
|
|
398
|
+
if upstream_full_ref_name not in repo.refs:
|
|
399
|
+
err_msg = f"No upstream branch found for '{active_branch.name}'; cannot verify upstream state!"
|
|
400
|
+
raise UnknownUpstreamBranchError(err_msg)
|
|
377
401
|
|
|
378
402
|
# Extract the remote name from the tracking branch
|
|
379
403
|
# tracking_branch.name is in the format "remote/branch"
|
|
@@ -206,6 +206,10 @@ def run_cli(clean_os_environment: dict[str, str]) -> RunCliFn:
|
|
|
206
206
|
invoke_kwargs: dict[str, Any] | None = None,
|
|
207
207
|
) -> Result:
|
|
208
208
|
from semantic_release.cli.commands.main import main
|
|
209
|
+
from semantic_release.globals import logger
|
|
210
|
+
|
|
211
|
+
# Prevent logs from being propagated to the root logger (pytest)
|
|
212
|
+
logger.propagate = False
|
|
209
213
|
|
|
210
214
|
cli_runner = CliRunner(mix_stderr=False)
|
|
211
215
|
env_vars = {**clean_os_environment, **(env or {})}
|
|
@@ -213,7 +217,11 @@ def run_cli(clean_os_environment: dict[str, str]) -> RunCliFn:
|
|
|
213
217
|
|
|
214
218
|
with mock.patch.dict(os.environ, env_vars, clear=True):
|
|
215
219
|
# run the CLI with the provided arguments
|
|
216
|
-
|
|
220
|
+
result = cli_runner.invoke(main, args=args, **(invoke_kwargs or {}))
|
|
221
|
+
# Force the output to be printed to stdout which will be captured by pytest
|
|
222
|
+
sys.stdout.write(result.stdout)
|
|
223
|
+
sys.stderr.write(result.stderr)
|
|
224
|
+
return result
|
|
217
225
|
|
|
218
226
|
return _run_cli
|
|
219
227
|
|
|
@@ -105,7 +105,6 @@ def test_version_print_next_version(
|
|
|
105
105
|
next_release_version: str,
|
|
106
106
|
file_in_repo: str,
|
|
107
107
|
run_cli: RunCliFn,
|
|
108
|
-
mocked_git_fetch: MagicMock,
|
|
109
108
|
mocked_git_push: MagicMock,
|
|
110
109
|
post_mocker: Mocker,
|
|
111
110
|
):
|
|
@@ -270,7 +269,6 @@ def test_version_print_tag_prints_next_tag(
|
|
|
270
269
|
get_cfg_value_from_def: GetCfgValueFromDefFn,
|
|
271
270
|
file_in_repo: str,
|
|
272
271
|
run_cli: RunCliFn,
|
|
273
|
-
mocked_git_fetch: MagicMock,
|
|
274
272
|
mocked_git_push: MagicMock,
|
|
275
273
|
post_mocker: Mocker,
|
|
276
274
|
):
|
|
@@ -386,7 +384,6 @@ def test_version_print_tag_prints_next_tag_no_zero_versions(
|
|
|
386
384
|
get_cfg_value_from_def: GetCfgValueFromDefFn,
|
|
387
385
|
file_in_repo: str,
|
|
388
386
|
run_cli: RunCliFn,
|
|
389
|
-
mocked_git_fetch: MagicMock,
|
|
390
387
|
mocked_git_push: MagicMock,
|
|
391
388
|
post_mocker: Mocker,
|
|
392
389
|
):
|
|
@@ -450,7 +447,6 @@ def test_version_print_last_released_prints_version(
|
|
|
450
447
|
repo_result: BuiltRepoResult,
|
|
451
448
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
452
449
|
run_cli: RunCliFn,
|
|
453
|
-
mocked_git_fetch: MagicMock,
|
|
454
450
|
mocked_git_push: MagicMock,
|
|
455
451
|
post_mocker: Mocker,
|
|
456
452
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -502,7 +498,6 @@ def test_version_print_last_released_prints_released_if_commits(
|
|
|
502
498
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
503
499
|
commits: list[str],
|
|
504
500
|
run_cli: RunCliFn,
|
|
505
|
-
mocked_git_fetch: MagicMock,
|
|
506
501
|
mocked_git_push: MagicMock,
|
|
507
502
|
post_mocker: Mocker,
|
|
508
503
|
file_in_repo: str,
|
|
@@ -552,10 +547,8 @@ def test_version_print_last_released_prints_released_if_commits(
|
|
|
552
547
|
def test_version_print_last_released_prints_nothing_if_no_tags(
|
|
553
548
|
repo_result: BuiltRepoResult,
|
|
554
549
|
run_cli: RunCliFn,
|
|
555
|
-
mocked_git_fetch: MagicMock,
|
|
556
550
|
mocked_git_push: MagicMock,
|
|
557
551
|
post_mocker: Mocker,
|
|
558
|
-
caplog: pytest.LogCaptureFixture,
|
|
559
552
|
):
|
|
560
553
|
repo = repo_result["repo"]
|
|
561
554
|
|
|
@@ -577,10 +570,7 @@ def test_version_print_last_released_prints_nothing_if_no_tags(
|
|
|
577
570
|
# Evaluate (no release actions should have occurred on print)
|
|
578
571
|
assert_successful_exit_code(result, cli_cmd)
|
|
579
572
|
assert result.stdout == ""
|
|
580
|
-
|
|
581
|
-
# must use capture log to see this, because we use the logger to print this message
|
|
582
|
-
# not click's output
|
|
583
|
-
assert "No release tags found." in caplog.text
|
|
573
|
+
assert "No release tags found." in result.stderr
|
|
584
574
|
|
|
585
575
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
586
576
|
assert repo_status_before == repo_status_after
|
|
@@ -598,7 +588,6 @@ def test_version_print_last_released_on_detached_head(
|
|
|
598
588
|
repo_result: BuiltRepoResult,
|
|
599
589
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
600
590
|
run_cli: RunCliFn,
|
|
601
|
-
mocked_git_fetch: MagicMock,
|
|
602
591
|
mocked_git_push: MagicMock,
|
|
603
592
|
post_mocker: Mocker,
|
|
604
593
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -647,7 +636,6 @@ def test_version_print_last_released_on_nonrelease_branch(
|
|
|
647
636
|
repo_result: BuiltRepoResult,
|
|
648
637
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
649
638
|
run_cli: RunCliFn,
|
|
650
|
-
mocked_git_fetch: MagicMock,
|
|
651
639
|
mocked_git_push: MagicMock,
|
|
652
640
|
post_mocker: Mocker,
|
|
653
641
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -705,7 +693,6 @@ def test_version_print_last_released_tag_prints_correct_tag(
|
|
|
705
693
|
get_cfg_value_from_def: GetCfgValueFromDefFn,
|
|
706
694
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
707
695
|
run_cli: RunCliFn,
|
|
708
|
-
mocked_git_fetch: MagicMock,
|
|
709
696
|
mocked_git_push: MagicMock,
|
|
710
697
|
post_mocker: Mocker,
|
|
711
698
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -766,7 +753,6 @@ def test_version_print_last_released_tag_prints_released_if_commits(
|
|
|
766
753
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
767
754
|
commits: list[str],
|
|
768
755
|
run_cli: RunCliFn,
|
|
769
|
-
mocked_git_fetch: MagicMock,
|
|
770
756
|
mocked_git_push: MagicMock,
|
|
771
757
|
post_mocker: Mocker,
|
|
772
758
|
file_in_repo: str,
|
|
@@ -817,10 +803,8 @@ def test_version_print_last_released_tag_prints_released_if_commits(
|
|
|
817
803
|
def test_version_print_last_released_tag_prints_nothing_if_no_tags(
|
|
818
804
|
repo_result: BuiltRepoResult,
|
|
819
805
|
run_cli: RunCliFn,
|
|
820
|
-
mocked_git_fetch: MagicMock,
|
|
821
806
|
mocked_git_push: MagicMock,
|
|
822
807
|
post_mocker: Mocker,
|
|
823
|
-
caplog: pytest.LogCaptureFixture,
|
|
824
808
|
):
|
|
825
809
|
repo = repo_result["repo"]
|
|
826
810
|
|
|
@@ -842,10 +826,7 @@ def test_version_print_last_released_tag_prints_nothing_if_no_tags(
|
|
|
842
826
|
# Evaluate (no release actions should have occurred on print)
|
|
843
827
|
assert_successful_exit_code(result, cli_cmd)
|
|
844
828
|
assert result.stdout == ""
|
|
845
|
-
|
|
846
|
-
# must use capture log to see this, because we use the logger to print this message
|
|
847
|
-
# not click's output
|
|
848
|
-
assert "No release tags found." in caplog.text
|
|
829
|
+
assert "No release tags found." in result.stderr
|
|
849
830
|
|
|
850
831
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
851
832
|
assert repo_status_before == repo_status_after
|
|
@@ -872,7 +853,6 @@ def test_version_print_last_released_tag_on_detached_head(
|
|
|
872
853
|
get_cfg_value_from_def: GetCfgValueFromDefFn,
|
|
873
854
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
874
855
|
run_cli: RunCliFn,
|
|
875
|
-
mocked_git_fetch: MagicMock,
|
|
876
856
|
mocked_git_push: MagicMock,
|
|
877
857
|
post_mocker: Mocker,
|
|
878
858
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -931,7 +911,6 @@ def test_version_print_last_released_tag_on_nonrelease_branch(
|
|
|
931
911
|
get_cfg_value_from_def: GetCfgValueFromDefFn,
|
|
932
912
|
get_versions_from_repo_build_def: GetVersionsFromRepoBuildDefFn,
|
|
933
913
|
run_cli: RunCliFn,
|
|
934
|
-
mocked_git_fetch: MagicMock,
|
|
935
914
|
mocked_git_push: MagicMock,
|
|
936
915
|
post_mocker: Mocker,
|
|
937
916
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -989,7 +968,6 @@ def test_version_print_next_version_fails_on_detached_head(
|
|
|
989
968
|
simulate_change_commits_n_rtn_changelog_entry: SimulateChangeCommitsNReturnChangelogEntryFn,
|
|
990
969
|
get_commit_def_fn: GetCommitDefFn[CommitParser[ParseResult, ParserOptions]],
|
|
991
970
|
default_parser: CommitParser[ParseResult, ParserOptions],
|
|
992
|
-
mocked_git_fetch: MagicMock,
|
|
993
971
|
mocked_git_push: MagicMock,
|
|
994
972
|
post_mocker: Mocker,
|
|
995
973
|
strip_logging_messages: StripLoggingMessagesFn,
|
|
@@ -1052,7 +1030,6 @@ def test_version_print_next_tag_fails_on_detached_head(
|
|
|
1052
1030
|
simulate_change_commits_n_rtn_changelog_entry: SimulateChangeCommitsNReturnChangelogEntryFn,
|
|
1053
1031
|
get_commit_def_fn: GetCommitDefFn[CommitParser[ParseResult, ParserOptions]],
|
|
1054
1032
|
default_parser: CommitParser[ParseResult, ParserOptions],
|
|
1055
|
-
mocked_git_fetch: MagicMock,
|
|
1056
1033
|
mocked_git_push: MagicMock,
|
|
1057
1034
|
post_mocker: Mocker,
|
|
1058
1035
|
strip_logging_messages: StripLoggingMessagesFn,
|