python-semantic-release 10.0.0__tar.gz → 10.0.1__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.0.0 → python_semantic_release-10.0.1}/PKG-INFO +1 -1
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/api/commands.rst +1 -1
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/automatic-releases/github-actions.rst +13 -13
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/automatic-releases/travis.rst +1 -1
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/configuration.rst +4 -4
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/pyproject.toml +1 -1
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/conftest.py +2 -1
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version.py +5 -2
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_print.py +21 -10
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_strict.py +5 -2
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/conftest.py +20 -1
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/test_main.py +13 -4
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/LICENSE +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/MANIFEST.in +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/README.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/Makefile +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/changelog_templates.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/commit_parsing.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/getting_started.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/index.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/installation.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/multibranch_releases.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/strict_mode.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/conf.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/automatic-releases/cronjobs.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/automatic-releases/index.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/index.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/contributing/contributing_guide.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/contributing/index.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/index.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/make.bat +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/misc/psr_changelog.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/misc/troubleshooting.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/08-upgrade.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/09-upgrade.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/10-upgrade.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/index.rst +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/setup.cfg +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/python_semantic_release.egg-info/SOURCES.txt +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/__main__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/changelog/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/changelog/context.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/changelog/release_history.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/changelog/template.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/changelog_writer.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/cli_context.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/commands/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/commands/changelog.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/commands/generate_config.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/commands/main.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/commands/publish.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/commands/version.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/config.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/const.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/github_actions_output.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/masking_filter.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/util.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/_base.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/angular.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/conventional.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/emoji.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/scipy.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/tag.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/token.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/commit_parser/util.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/const.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/changelog_header.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/changelog_init.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/changelog_update.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/changes.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/first_release.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/macros.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/unreleased_changes.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.components/versioned_changes.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/.release_notes.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/md/CHANGELOG.md.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/changelog_header.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/changelog_init.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/changelog_update.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/changes.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/first_release.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/macros.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/unreleased_changes.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/.components/versioned_changes.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/data/templates/conventional/rst/CHANGELOG.rst.j2 +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/enums.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/errors.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/gitproject.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/globals.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/helpers.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/_base.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/bitbucket.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/gitea.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/github.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/gitlab.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/remote_hvcs_base.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/token_auth.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/hvcs/util.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/py.typed +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/algorithm.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/declaration.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/declarations/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/declarations/enum.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/declarations/i_version_replacer.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/declarations/pattern.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/declarations/toml.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/translator.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/version/version.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/const.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_changelog/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_changelog/test_changelog.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_changelog/test_changelog_custom_parser.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_changelog/test_changelog_parsing.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_changelog/test_changelog_release_notes.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_config/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_config/test_generate_config.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_publish/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_publish/test_publish.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/conftest.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/git_flow/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_1_channel.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_2_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_3_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_4_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/github_flow/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_1_channel.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_2_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_dual_version_support.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_dual_version_support_w_prereleases.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_w_prereleases.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_build.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_bump.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_changelog.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_changelog_custom_commit_msg.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_github_actions.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_release_notes.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/cmd_version/test_version_stamp.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/e2e/test_help.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/commit_parsers.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/example_project.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/git_repo.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/git_flow/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/git_flow/repo_w_1_release_channel.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/git_flow/repo_w_2_release_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/git_flow/repo_w_3_release_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/git_flow/repo_w_4_release_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/github_flow/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/github_flow/repo_w_default_release.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/github_flow/repo_w_release_channels.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/repo_initial_commit.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/trunk_based_dev/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/trunk_based_dev/repo_w_dual_version_support.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/trunk_based_dev/repo_w_dual_version_support_w_prereleases.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/trunk_based_dev/repo_w_no_tags.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/trunk_based_dev/repo_w_prereleases.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/repos/trunk_based_dev/repo_w_tags.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/fixtures/scipy.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/conftest.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/conftest.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/test_changelog_context.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/test_default_changelog.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/test_release_history.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/test_release_notes.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/test_template.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/changelog/test_template_render.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/cli/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/cli/test_config.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/cli/test_github_actions_output.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/cli/test_masking_filter.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/cli/test_util.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/cli/test_version.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/commit_parser/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/commit_parser/test_conventional.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/commit_parser/test_emoji.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/commit_parser/test_parsed_commit.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/commit_parser/test_scipy.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/commit_parser/test_util.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test__base.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test_bitbucket.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test_gitea.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test_github.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test_gitlab.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test_token_auth.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/hvcs/test_util.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/test_helpers.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/declarations/__init__.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/declarations/test_pattern_declaration.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/declarations/test_toml_declaration.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/test_algorithm.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/test_translator.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/unit/semantic_release/version/test_version.py +0 -0
- {python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/tests/util.py +0 -0
|
@@ -496,4 +496,4 @@ corresponding release is found in the remote VCS, then Python Semantic Release w
|
|
|
496
496
|
attempt to create one.
|
|
497
497
|
|
|
498
498
|
If using this option, the relevant authentication token *must* be supplied via the
|
|
499
|
-
relevant environment variable.
|
|
499
|
+
relevant environment variable.
|
|
@@ -371,8 +371,8 @@ to the remote repository. This option is equivalent to adding either ``--push``
|
|
|
371
371
|
""""""""""""""""
|
|
372
372
|
|
|
373
373
|
.. important::
|
|
374
|
-
This option has been removed in
|
|
375
|
-
command injection vulnerability. Please update as to
|
|
374
|
+
This option has been removed in v10.0.0 and newer because of a
|
|
375
|
+
command injection vulnerability. Please update as to v10.0.0 as soon
|
|
376
376
|
as possible.
|
|
377
377
|
|
|
378
378
|
Additional options for the main ``semantic-release`` command, which will come
|
|
@@ -382,7 +382,7 @@ before the :ref:`version <cmd-version>` subcommand.
|
|
|
382
382
|
|
|
383
383
|
.. code:: yaml
|
|
384
384
|
|
|
385
|
-
- uses: python-semantic-release/python-semantic-release@
|
|
385
|
+
- uses: python-semantic-release/python-semantic-release@v10.0.0
|
|
386
386
|
with:
|
|
387
387
|
root_options: "-vv --noop"
|
|
388
388
|
|
|
@@ -688,8 +688,8 @@ This is useful for testing the action without actually publishing anything.
|
|
|
688
688
|
""""""""""""""""
|
|
689
689
|
|
|
690
690
|
.. important::
|
|
691
|
-
This option has been removed in
|
|
692
|
-
command injection vulnerability. Please update as to
|
|
691
|
+
This option has been removed in v10.0.0 and newer because of a
|
|
692
|
+
command injection vulnerability. Please update as to v10.0.0 as soon
|
|
693
693
|
as possible.
|
|
694
694
|
|
|
695
695
|
Additional options for the main ``semantic-release`` command, which will come
|
|
@@ -699,7 +699,7 @@ before the :ref:`publish <cmd-publish>` subcommand.
|
|
|
699
699
|
|
|
700
700
|
.. code:: yaml
|
|
701
701
|
|
|
702
|
-
- uses: python-semantic-release/publish-action@
|
|
702
|
+
- uses: python-semantic-release/publish-action@v10.0.0
|
|
703
703
|
with:
|
|
704
704
|
root_options: "-vv --noop"
|
|
705
705
|
|
|
@@ -873,14 +873,14 @@ to the GitHub Release Assets as well.
|
|
|
873
873
|
- name: Action | Semantic Version Release
|
|
874
874
|
id: release
|
|
875
875
|
# Adjust tag with desired version if applicable.
|
|
876
|
-
uses: python-semantic-release/python-semantic-release@
|
|
876
|
+
uses: python-semantic-release/python-semantic-release@v10.0.0
|
|
877
877
|
with:
|
|
878
878
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
879
879
|
git_committer_name: "github-actions"
|
|
880
880
|
git_committer_email: "actions@users.noreply.github.com"
|
|
881
881
|
|
|
882
882
|
- name: Publish | Upload to GitHub Release Assets
|
|
883
|
-
uses: python-semantic-release/publish-action@
|
|
883
|
+
uses: python-semantic-release/publish-action@v10.0.0
|
|
884
884
|
if: steps.release.outputs.released == 'true'
|
|
885
885
|
with:
|
|
886
886
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -979,7 +979,7 @@ The equivalent GitHub Action configuration would be:
|
|
|
979
979
|
|
|
980
980
|
- name: Action | Semantic Version Release
|
|
981
981
|
# Adjust tag with desired version if applicable.
|
|
982
|
-
uses: python-semantic-release/python-semantic-release@
|
|
982
|
+
uses: python-semantic-release/python-semantic-release@v10.0.0
|
|
983
983
|
with:
|
|
984
984
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
985
985
|
force: patch
|
|
@@ -1038,14 +1038,14 @@ Publish Action.
|
|
|
1038
1038
|
|
|
1039
1039
|
- name: Release submodule 1
|
|
1040
1040
|
id: release-submod-1
|
|
1041
|
-
uses: python-semantic-release/python-semantic-release@
|
|
1041
|
+
uses: python-semantic-release/python-semantic-release@v10.0.0
|
|
1042
1042
|
with:
|
|
1043
1043
|
directory: ${{ env.SUBMODULE_1_DIR }}
|
|
1044
1044
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
1045
1045
|
|
|
1046
1046
|
- name: Release submodule 2
|
|
1047
1047
|
id: release-submod-2
|
|
1048
|
-
uses: python-semantic-release/python-semantic-release@
|
|
1048
|
+
uses: python-semantic-release/python-semantic-release@v10.0.0
|
|
1049
1049
|
with:
|
|
1050
1050
|
directory: ${{ env.SUBMODULE_2_DIR }}
|
|
1051
1051
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
@@ -1057,7 +1057,7 @@ Publish Action.
|
|
|
1057
1057
|
# ------------------------------------------------------------------- #
|
|
1058
1058
|
|
|
1059
1059
|
- name: Publish | Upload package 1 to GitHub Release Assets
|
|
1060
|
-
uses: python-semantic-release/publish-action@
|
|
1060
|
+
uses: python-semantic-release/publish-action@v10.0.0
|
|
1061
1061
|
if: steps.release-submod-1.outputs.released == 'true'
|
|
1062
1062
|
with:
|
|
1063
1063
|
directory: ${{ env.SUBMODULE_1_DIR }}
|
|
@@ -1065,7 +1065,7 @@ Publish Action.
|
|
|
1065
1065
|
tag: ${{ steps.release-submod-1.outputs.tag }}
|
|
1066
1066
|
|
|
1067
1067
|
- name: Publish | Upload package 2 to GitHub Release Assets
|
|
1068
|
-
uses: python-semantic-release/publish-action@
|
|
1068
|
+
uses: python-semantic-release/publish-action@v10.0.0
|
|
1069
1069
|
if: steps.release-submod-2.outputs.released == 'true'
|
|
1070
1070
|
with:
|
|
1071
1071
|
directory: ${{ env.SUBMODULE_2_DIR }}
|
|
@@ -18,7 +18,7 @@ You will need to set up an environment variable in Travis. An easy way to do tha
|
|
|
18
18
|
is to go to the settings page for your package and add it there. Make sure that the
|
|
19
19
|
secret toggle is set correctly.
|
|
20
20
|
|
|
21
|
-
You need to set the :ref:`GH_TOKEN <
|
|
21
|
+
You need to set the :ref:`GH_TOKEN <config-remote-token>` environment
|
|
22
22
|
variable with a personal access token for Github. It will need either ``repo`` or
|
|
23
23
|
``public_repo`` scope depending on whether the repository is private or public.
|
|
24
24
|
|
|
@@ -142,7 +142,7 @@ version to be ``1.0.0``, regardless of patch, minor, or major change level.
|
|
|
142
142
|
Additionally, when ``allow_zero_version`` is set to ``false``,
|
|
143
143
|
the :ref:`config-major_on_zero` setting is ignored.
|
|
144
144
|
|
|
145
|
-
*Default changed to ``false`` in
|
|
145
|
+
*Default changed to ``false`` in v10.0.0*
|
|
146
146
|
|
|
147
147
|
**Default:** ``false``
|
|
148
148
|
|
|
@@ -390,7 +390,7 @@ is there to document?
|
|
|
390
390
|
The message details can be found in the ``first_release.md.j2`` and ``first_release.rst.j2``
|
|
391
391
|
templates of the default changelog template directory.
|
|
392
392
|
|
|
393
|
-
*Default changed to ``true`` in
|
|
393
|
+
*Default changed to ``true`` in v10.0.0.*
|
|
394
394
|
|
|
395
395
|
**Default:** ``true``
|
|
396
396
|
|
|
@@ -664,7 +664,7 @@ The patterns in this list are treated as regular expressions.
|
|
|
664
664
|
``mode``
|
|
665
665
|
********
|
|
666
666
|
|
|
667
|
-
*Introduced in v9.10.0. Default changed to `update` in
|
|
667
|
+
*Introduced in v9.10.0. Default changed to `update` in v10.0.0.*
|
|
668
668
|
|
|
669
669
|
**Type:** ``Literal["init", "update"]``
|
|
670
670
|
|
|
@@ -1351,7 +1351,7 @@ The regular expression generated from the ``version_variables`` definition will:
|
|
|
1351
1351
|
|
|
1352
1352
|
2. The variable name defined by ``variable`` and the version must be separated by
|
|
1353
1353
|
an operand symbol (``=``, ``:``, ``:=``, or ``@``). Whitespace is optional around
|
|
1354
|
-
the symbol. As of
|
|
1354
|
+
the symbol. As of v10.0.0, a double-equals (``==``) operator is also supported
|
|
1355
1355
|
as a valid operand symbol.
|
|
1356
1356
|
|
|
1357
1357
|
3. The value of the variable must match a `SemVer`_ regular expression and can be
|
|
@@ -207,10 +207,11 @@ def run_cli(clean_os_environment: dict[str, str]) -> RunCliFn:
|
|
|
207
207
|
|
|
208
208
|
cli_runner = CliRunner(mix_stderr=False)
|
|
209
209
|
env_vars = {**clean_os_environment, **(env or {})}
|
|
210
|
+
args = ["-vv", *(argv or [])]
|
|
210
211
|
|
|
211
212
|
with mock.patch.dict(os.environ, env_vars, clear=True):
|
|
212
213
|
# run the CLI with the provided arguments
|
|
213
|
-
return cli_runner.invoke(main, args=
|
|
214
|
+
return cli_runner.invoke(main, args=args, **(invoke_kwargs or {}))
|
|
214
215
|
|
|
215
216
|
return _run_cli
|
|
216
217
|
|
|
@@ -26,6 +26,7 @@ if TYPE_CHECKING:
|
|
|
26
26
|
from requests_mock import Mocker
|
|
27
27
|
|
|
28
28
|
from tests.conftest import RunCliFn
|
|
29
|
+
from tests.e2e.conftest import StripLoggingMessagesFn
|
|
29
30
|
from tests.fixtures.example_project import GetWheelFileFn, UpdatePyprojectTomlFn
|
|
30
31
|
from tests.fixtures.git_repo import BuiltRepoResult, GetVersionsFromRepoBuildDefFn
|
|
31
32
|
|
|
@@ -151,6 +152,7 @@ def test_version_on_nonrelease_branch(
|
|
|
151
152
|
run_cli: RunCliFn,
|
|
152
153
|
mocked_git_push: MagicMock,
|
|
153
154
|
post_mocker: Mocker,
|
|
155
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
154
156
|
):
|
|
155
157
|
"""
|
|
156
158
|
Given repo is on a non-release branch,
|
|
@@ -175,7 +177,7 @@ def test_version_on_nonrelease_branch(
|
|
|
175
177
|
# Evaluate (expected -> actual)
|
|
176
178
|
assert_successful_exit_code(result, cli_cmd)
|
|
177
179
|
assert not result.stdout
|
|
178
|
-
assert expected_error_msg == result.stderr
|
|
180
|
+
assert expected_error_msg == strip_logging_messages(result.stderr)
|
|
179
181
|
|
|
180
182
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
181
183
|
tags_after = sorted([tag.name for tag in repo.tags])
|
|
@@ -196,6 +198,7 @@ def test_version_on_last_release(
|
|
|
196
198
|
run_cli: RunCliFn,
|
|
197
199
|
mocked_git_push: MagicMock,
|
|
198
200
|
post_mocker: Mocker,
|
|
201
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
199
202
|
):
|
|
200
203
|
"""
|
|
201
204
|
Given repo is on the last release version,
|
|
@@ -229,7 +232,7 @@ def test_version_on_last_release(
|
|
|
229
232
|
# Evaluate (expected -> actual)
|
|
230
233
|
assert_successful_exit_code(result, cli_cmd)
|
|
231
234
|
assert f"{latest_release_version}\n" == result.stdout
|
|
232
|
-
assert f"{expected_error_msg}\n" == result.stderr
|
|
235
|
+
assert f"{expected_error_msg}\n" == strip_logging_messages(result.stderr)
|
|
233
236
|
|
|
234
237
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
235
238
|
assert repo_status_before == repo_status_after
|
|
@@ -35,6 +35,7 @@ if TYPE_CHECKING:
|
|
|
35
35
|
from requests_mock import Mocker
|
|
36
36
|
|
|
37
37
|
from tests.conftest import RunCliFn
|
|
38
|
+
from tests.e2e.conftest import StripLoggingMessagesFn
|
|
38
39
|
from tests.fixtures.git_repo import (
|
|
39
40
|
BuiltRepoResult,
|
|
40
41
|
GetCfgValueFromDefFn,
|
|
@@ -442,6 +443,7 @@ def test_version_print_last_released_prints_version(
|
|
|
442
443
|
run_cli: RunCliFn,
|
|
443
444
|
mocked_git_push: MagicMock,
|
|
444
445
|
post_mocker: Mocker,
|
|
446
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
445
447
|
):
|
|
446
448
|
repo = repo_result["repo"]
|
|
447
449
|
latest_release_version = get_versions_from_repo_build_def(
|
|
@@ -465,7 +467,7 @@ def test_version_print_last_released_prints_version(
|
|
|
465
467
|
|
|
466
468
|
# Evaluate
|
|
467
469
|
assert_successful_exit_code(result, cli_cmd)
|
|
468
|
-
assert not result.stderr
|
|
470
|
+
assert not strip_logging_messages(result.stderr)
|
|
469
471
|
assert f"{latest_release_version}\n" == result.stdout
|
|
470
472
|
|
|
471
473
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -493,6 +495,7 @@ def test_version_print_last_released_prints_released_if_commits(
|
|
|
493
495
|
mocked_git_push: MagicMock,
|
|
494
496
|
post_mocker: Mocker,
|
|
495
497
|
file_in_repo: str,
|
|
498
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
496
499
|
):
|
|
497
500
|
repo = repo_result["repo"]
|
|
498
501
|
latest_release_version = get_versions_from_repo_build_def(
|
|
@@ -520,7 +523,7 @@ def test_version_print_last_released_prints_released_if_commits(
|
|
|
520
523
|
|
|
521
524
|
# Evaluate
|
|
522
525
|
assert_successful_exit_code(result, cli_cmd)
|
|
523
|
-
assert not result.stderr
|
|
526
|
+
assert not strip_logging_messages(result.stderr)
|
|
524
527
|
assert f"{latest_release_version}\n" == result.stdout
|
|
525
528
|
|
|
526
529
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -585,6 +588,7 @@ def test_version_print_last_released_on_detached_head(
|
|
|
585
588
|
run_cli: RunCliFn,
|
|
586
589
|
mocked_git_push: MagicMock,
|
|
587
590
|
post_mocker: Mocker,
|
|
591
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
588
592
|
):
|
|
589
593
|
repo = repo_result["repo"]
|
|
590
594
|
latest_release_version = get_versions_from_repo_build_def(
|
|
@@ -611,7 +615,7 @@ def test_version_print_last_released_on_detached_head(
|
|
|
611
615
|
|
|
612
616
|
# Evaluate (expected -> actual)
|
|
613
617
|
assert_successful_exit_code(result, cli_cmd)
|
|
614
|
-
assert not result.stderr
|
|
618
|
+
assert not strip_logging_messages(result.stderr)
|
|
615
619
|
assert f"{latest_release_version}\n" == result.stdout
|
|
616
620
|
|
|
617
621
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -632,6 +636,7 @@ def test_version_print_last_released_on_nonrelease_branch(
|
|
|
632
636
|
run_cli: RunCliFn,
|
|
633
637
|
mocked_git_push: MagicMock,
|
|
634
638
|
post_mocker: Mocker,
|
|
639
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
635
640
|
):
|
|
636
641
|
repo = repo_result["repo"]
|
|
637
642
|
latest_release_version = get_versions_from_repo_build_def(
|
|
@@ -658,7 +663,7 @@ def test_version_print_last_released_on_nonrelease_branch(
|
|
|
658
663
|
|
|
659
664
|
# Evaluate (expected -> actual)
|
|
660
665
|
assert_successful_exit_code(result, cli_cmd)
|
|
661
|
-
assert not result.stderr
|
|
666
|
+
assert not strip_logging_messages(result.stderr)
|
|
662
667
|
assert f"{latest_release_version}\n" == result.stdout
|
|
663
668
|
|
|
664
669
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -688,6 +693,7 @@ def test_version_print_last_released_tag_prints_correct_tag(
|
|
|
688
693
|
run_cli: RunCliFn,
|
|
689
694
|
mocked_git_push: MagicMock,
|
|
690
695
|
post_mocker: Mocker,
|
|
696
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
691
697
|
):
|
|
692
698
|
repo = repo_result["repo"]
|
|
693
699
|
repo_def = repo_result["definition"]
|
|
@@ -712,7 +718,7 @@ def test_version_print_last_released_tag_prints_correct_tag(
|
|
|
712
718
|
|
|
713
719
|
# Evaluate
|
|
714
720
|
assert_successful_exit_code(result, cli_cmd)
|
|
715
|
-
assert not result.stderr
|
|
721
|
+
assert not strip_logging_messages(result.stderr)
|
|
716
722
|
assert f"{latest_release_tag}\n" == result.stdout
|
|
717
723
|
|
|
718
724
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -748,6 +754,7 @@ def test_version_print_last_released_tag_prints_released_if_commits(
|
|
|
748
754
|
mocked_git_push: MagicMock,
|
|
749
755
|
post_mocker: Mocker,
|
|
750
756
|
file_in_repo: str,
|
|
757
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
751
758
|
):
|
|
752
759
|
repo = repo_result["repo"]
|
|
753
760
|
repo_def = repo_result["definition"]
|
|
@@ -776,7 +783,7 @@ def test_version_print_last_released_tag_prints_released_if_commits(
|
|
|
776
783
|
|
|
777
784
|
# Evaluate
|
|
778
785
|
assert_successful_exit_code(result, cli_cmd)
|
|
779
|
-
assert not result.stderr
|
|
786
|
+
assert not strip_logging_messages(result.stderr)
|
|
780
787
|
assert f"{latest_release_tag}\n" == result.stdout
|
|
781
788
|
|
|
782
789
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -850,6 +857,7 @@ def test_version_print_last_released_tag_on_detached_head(
|
|
|
850
857
|
run_cli: RunCliFn,
|
|
851
858
|
mocked_git_push: MagicMock,
|
|
852
859
|
post_mocker: Mocker,
|
|
860
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
853
861
|
):
|
|
854
862
|
repo = repo_result["repo"]
|
|
855
863
|
repo_def = repo_result["definition"]
|
|
@@ -877,7 +885,7 @@ def test_version_print_last_released_tag_on_detached_head(
|
|
|
877
885
|
|
|
878
886
|
# Evaluate (expected -> actual)
|
|
879
887
|
assert_successful_exit_code(result, cli_cmd)
|
|
880
|
-
assert not result.stderr
|
|
888
|
+
assert not strip_logging_messages(result.stderr)
|
|
881
889
|
assert f"{latest_release_tag}\n" == result.stdout
|
|
882
890
|
|
|
883
891
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -907,6 +915,7 @@ def test_version_print_last_released_tag_on_nonrelease_branch(
|
|
|
907
915
|
run_cli: RunCliFn,
|
|
908
916
|
mocked_git_push: MagicMock,
|
|
909
917
|
post_mocker: Mocker,
|
|
918
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
910
919
|
):
|
|
911
920
|
repo = repo_result["repo"]
|
|
912
921
|
repo_def = repo_result["definition"]
|
|
@@ -934,7 +943,7 @@ def test_version_print_last_released_tag_on_nonrelease_branch(
|
|
|
934
943
|
|
|
935
944
|
# Evaluate (expected -> actual)
|
|
936
945
|
assert_successful_exit_code(result, cli_cmd)
|
|
937
|
-
assert not result.stderr
|
|
946
|
+
assert not strip_logging_messages(result.stderr)
|
|
938
947
|
assert f"{last_release_tag}\n" == result.stdout
|
|
939
948
|
|
|
940
949
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
@@ -961,6 +970,7 @@ def test_version_print_next_version_fails_on_detached_head(
|
|
|
961
970
|
get_commit_def_fn: GetCommitDefFn,
|
|
962
971
|
mocked_git_push: MagicMock,
|
|
963
972
|
post_mocker: Mocker,
|
|
973
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
964
974
|
):
|
|
965
975
|
repo = repo_result["repo"]
|
|
966
976
|
expected_error_msg = (
|
|
@@ -994,7 +1004,7 @@ def test_version_print_next_version_fails_on_detached_head(
|
|
|
994
1004
|
# Evaluate (expected -> actual)
|
|
995
1005
|
assert_exit_code(1, result, cli_cmd)
|
|
996
1006
|
assert not result.stdout
|
|
997
|
-
assert f"{expected_error_msg}\n" == result.stderr
|
|
1007
|
+
assert f"{expected_error_msg}\n" == strip_logging_messages(result.stderr)
|
|
998
1008
|
|
|
999
1009
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
1000
1010
|
assert repo_status_before == repo_status_after
|
|
@@ -1020,6 +1030,7 @@ def test_version_print_next_tag_fails_on_detached_head(
|
|
|
1020
1030
|
get_commit_def_fn: GetCommitDefFn,
|
|
1021
1031
|
mocked_git_push: MagicMock,
|
|
1022
1032
|
post_mocker: Mocker,
|
|
1033
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
1023
1034
|
):
|
|
1024
1035
|
repo = repo_result["repo"]
|
|
1025
1036
|
expected_error_msg = (
|
|
@@ -1053,7 +1064,7 @@ def test_version_print_next_tag_fails_on_detached_head(
|
|
|
1053
1064
|
# Evaluate (expected -> actual)
|
|
1054
1065
|
assert_exit_code(1, result, cli_cmd)
|
|
1055
1066
|
assert not result.stdout
|
|
1056
|
-
assert f"{expected_error_msg}\n" == result.stderr
|
|
1067
|
+
assert f"{expected_error_msg}\n" == strip_logging_messages(result.stderr)
|
|
1057
1068
|
|
|
1058
1069
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
1059
1070
|
assert repo_status_before == repo_status_after
|
|
@@ -17,6 +17,7 @@ if TYPE_CHECKING:
|
|
|
17
17
|
from requests_mock import Mocker
|
|
18
18
|
|
|
19
19
|
from tests.conftest import RunCliFn
|
|
20
|
+
from tests.e2e.conftest import StripLoggingMessagesFn
|
|
20
21
|
from tests.fixtures.git_repo import BuiltRepoResult, GetVersionsFromRepoBuildDefFn
|
|
21
22
|
|
|
22
23
|
|
|
@@ -30,6 +31,7 @@ def test_version_already_released_when_strict(
|
|
|
30
31
|
run_cli: RunCliFn,
|
|
31
32
|
mocked_git_push: MagicMock,
|
|
32
33
|
post_mocker: Mocker,
|
|
34
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
33
35
|
):
|
|
34
36
|
"""
|
|
35
37
|
Given repo has no new changes since the last release,
|
|
@@ -60,7 +62,7 @@ def test_version_already_released_when_strict(
|
|
|
60
62
|
# Evaluate
|
|
61
63
|
assert_exit_code(2, result, cli_cmd)
|
|
62
64
|
assert f"{latest_release_version}\n" == result.stdout
|
|
63
|
-
assert f"{expected_error_msg}\n" == result.stderr
|
|
65
|
+
assert f"{expected_error_msg}\n" == strip_logging_messages(result.stderr)
|
|
64
66
|
|
|
65
67
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
66
68
|
assert repo_status_before == repo_status_after
|
|
@@ -78,6 +80,7 @@ def test_version_on_nonrelease_branch_when_strict(
|
|
|
78
80
|
run_cli: RunCliFn,
|
|
79
81
|
mocked_git_push: MagicMock,
|
|
80
82
|
post_mocker: Mocker,
|
|
83
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
81
84
|
):
|
|
82
85
|
"""
|
|
83
86
|
Given repo is on a non-release branch,
|
|
@@ -103,7 +106,7 @@ def test_version_on_nonrelease_branch_when_strict(
|
|
|
103
106
|
# Evaluate
|
|
104
107
|
assert_exit_code(2, result, cli_cmd)
|
|
105
108
|
assert not result.stdout
|
|
106
|
-
assert expected_error_msg == result.stderr
|
|
109
|
+
assert expected_error_msg == strip_logging_messages(result.stderr)
|
|
107
110
|
|
|
108
111
|
# assert nothing else happened (no code changes, no commit, no tag, no push, no vcs release)
|
|
109
112
|
tags_after = sorted([tag.name for tag in repo.tags])
|
|
@@ -2,7 +2,7 @@ from __future__ import annotations
|
|
|
2
2
|
|
|
3
3
|
import os
|
|
4
4
|
from pathlib import Path
|
|
5
|
-
from re import IGNORECASE, compile as regexp
|
|
5
|
+
from re import IGNORECASE, MULTILINE, compile as regexp
|
|
6
6
|
from typing import TYPE_CHECKING
|
|
7
7
|
from unittest.mock import MagicMock
|
|
8
8
|
|
|
@@ -47,6 +47,9 @@ if TYPE_CHECKING:
|
|
|
47
47
|
|
|
48
48
|
def __call__(self, repo: Repo) -> RuntimeContext: ...
|
|
49
49
|
|
|
50
|
+
class StripLoggingMessagesFn(Protocol):
|
|
51
|
+
def __call__(self, log: str) -> str: ...
|
|
52
|
+
|
|
50
53
|
|
|
51
54
|
@pytest.hookimpl(tryfirst=True)
|
|
52
55
|
def pytest_collection_modifyitems(items: list[pytest.Item]) -> None:
|
|
@@ -116,6 +119,22 @@ def retrieve_runtime_context(
|
|
|
116
119
|
return _retrieve_runtime_context
|
|
117
120
|
|
|
118
121
|
|
|
122
|
+
@pytest.fixture(scope="session")
|
|
123
|
+
def strip_logging_messages() -> StripLoggingMessagesFn:
|
|
124
|
+
"""Fixture to strip logging messages from the output."""
|
|
125
|
+
# Log levels match SemanticReleaseLogLevel enum values
|
|
126
|
+
logger_msg_pattern = regexp(
|
|
127
|
+
r"^\s*(?:\[\d\d:\d\d:\d\d\])?\s*(FATAL|CRITICAL|ERROR|WARNING|INFO|DEBUG|SILLY).*?\n(?:\s+\S.*?\n)*(?!\n[ ]{11})",
|
|
128
|
+
MULTILINE,
|
|
129
|
+
)
|
|
130
|
+
|
|
131
|
+
def _strip_logging_messages(log: str) -> str:
|
|
132
|
+
# Make sure it ends with a newline
|
|
133
|
+
return logger_msg_pattern.sub("", log.rstrip("\n") + "\n")
|
|
134
|
+
|
|
135
|
+
return _strip_logging_messages
|
|
136
|
+
|
|
137
|
+
|
|
119
138
|
@pytest.fixture(scope="session")
|
|
120
139
|
def long_hash_pattern() -> Pattern:
|
|
121
140
|
return regexp(r"\b([0-9a-f]{40})\b", IGNORECASE)
|
|
@@ -8,6 +8,7 @@ from typing import TYPE_CHECKING
|
|
|
8
8
|
|
|
9
9
|
import git
|
|
10
10
|
import pytest
|
|
11
|
+
from click.testing import CliRunner
|
|
11
12
|
from pytest_lazy_fixtures.lazy_fixture import lf as lazy_fixture
|
|
12
13
|
|
|
13
14
|
from semantic_release import __version__
|
|
@@ -20,6 +21,7 @@ if TYPE_CHECKING:
|
|
|
20
21
|
from pathlib import Path
|
|
21
22
|
|
|
22
23
|
from tests.conftest import RunCliFn
|
|
24
|
+
from tests.e2e.conftest import StripLoggingMessagesFn
|
|
23
25
|
from tests.fixtures.example_project import ExProjectDir, UpdatePyprojectTomlFn
|
|
24
26
|
from tests.fixtures.git_repo import BuiltRepoResult
|
|
25
27
|
|
|
@@ -59,8 +61,13 @@ def test_main_prints_version_and_exits(run_cli: RunCliFn):
|
|
|
59
61
|
assert result.output == f"semantic-release, version {__version__}\n"
|
|
60
62
|
|
|
61
63
|
|
|
62
|
-
def
|
|
63
|
-
|
|
64
|
+
def test_main_no_args_passes_w_help_text():
|
|
65
|
+
from semantic_release.cli.commands.main import main
|
|
66
|
+
|
|
67
|
+
cli_cmd = [MAIN_PROG_NAME]
|
|
68
|
+
result = CliRunner().invoke(main, prog_name=cli_cmd[0])
|
|
69
|
+
assert_successful_exit_code(result, cli_cmd)
|
|
70
|
+
assert "Usage: " in result.output
|
|
64
71
|
|
|
65
72
|
|
|
66
73
|
@pytest.mark.parametrize(
|
|
@@ -210,7 +217,9 @@ def test_errors_when_config_file_does_not_exist_and_passed_explicitly(
|
|
|
210
217
|
|
|
211
218
|
@pytest.mark.usefixtures(repo_w_no_tags_conventional_commits.__name__)
|
|
212
219
|
def test_errors_when_config_file_invalid_configuration(
|
|
213
|
-
run_cli: RunCliFn,
|
|
220
|
+
run_cli: RunCliFn,
|
|
221
|
+
update_pyproject_toml: UpdatePyprojectTomlFn,
|
|
222
|
+
strip_logging_messages: StripLoggingMessagesFn,
|
|
214
223
|
):
|
|
215
224
|
# Setup
|
|
216
225
|
update_pyproject_toml("tool.semantic_release.remote.type", "invalidType")
|
|
@@ -220,7 +229,7 @@ def test_errors_when_config_file_invalid_configuration(
|
|
|
220
229
|
result = run_cli(cli_cmd[1:])
|
|
221
230
|
|
|
222
231
|
# preprocess results
|
|
223
|
-
stderr_lines = result.stderr.splitlines()
|
|
232
|
+
stderr_lines = strip_logging_messages(result.stderr).splitlines()
|
|
224
233
|
|
|
225
234
|
# Evaluate
|
|
226
235
|
assert_exit_code(1, result, cli_cmd)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/commit_parsing.rst
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/getting_started.rst
RENAMED
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/installation.rst
RENAMED
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/concepts/strict_mode.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/configuration/index.rst
RENAMED
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/contributing/index.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/misc/psr_changelog.rst
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/misc/troubleshooting.rst
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/08-upgrade.rst
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/09-upgrade.rst
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/docs/upgrading/10-upgrade.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/__init__.py
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/__main__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/config.py
RENAMED
|
File without changes
|
{python_semantic_release-10.0.0 → python_semantic_release-10.0.1}/src/semantic_release/cli/const.py
RENAMED
|
File without changes
|
|
File without changes
|