python-semantic-release 9.3.1__tar.gz → 9.4.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-9.3.1/python_semantic_release.egg-info → python-semantic-release-9.4.1}/PKG-INFO +30 -30
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/pyproject.toml +39 -32
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1/python_semantic_release.egg-info}/PKG-INFO +30 -30
- python-semantic-release-9.4.1/python_semantic_release.egg-info/requires.txt +41 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/__init__.py +1 -1
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/github_actions_output.py +2 -1
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/gitea.py +26 -6
- python-semantic-release-9.4.1/tests/unit/semantic_release/cli/test_github_actions_output.py +77 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test_gitea.py +20 -14
- python-semantic-release-9.3.1/python_semantic_release.egg-info/requires.txt +0 -41
- python-semantic-release-9.3.1/tests/unit/semantic_release/cli/test_github_actions_output.py +0 -66
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/AUTHORS.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/LICENSE +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/MANIFEST.in +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/README.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/Makefile +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/algorithm.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/cronjobs.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/github-actions.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/index.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/travis.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/changelog_templates.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/commands.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/commit-parsing.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/conf.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/configuration.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/contributing.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/contributors.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/github-action.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/index.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/make.bat +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/migrating_from_v7.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/multibranch_releases.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/strict_mode.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/troubleshooting.rst +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/python_semantic_release.egg-info/SOURCES.txt +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/python_semantic_release.egg-info/dependency_links.txt +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/python_semantic_release.egg-info/entry_points.txt +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/python_semantic_release.egg-info/top_level.txt +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/__main__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/changelog/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/changelog/context.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/changelog/release_history.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/changelog/template.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/changelog.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/cli_context.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/generate_config.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/main.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/publish.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/commands/version.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/common.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/config.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/const.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/masking_filter.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/util.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/_base.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/angular.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/emoji.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/scipy.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/tag.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/token.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/commit_parser/util.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/const.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/data/templates/CHANGELOG.md.j2 +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/data/templates/release_notes.md.j2 +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/enums.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/errors.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/helpers.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/_base.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/bitbucket.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/github.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/gitlab.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/token_auth.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/util.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/algorithm.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/declaration.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/translator.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/version.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/setup.cfg +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/conftest.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_changelog.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_generate_config.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_help.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_main.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_publish.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_version.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/conftest.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/const.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/commit_parsers.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/example_project.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/git_repo.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/git_flow/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/git_flow/repo_w_2_release_channels.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/git_flow/repo_w_3_release_channels.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/github_flow/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/github_flow/repo_w_release_channels.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/trunk_based_dev/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/trunk_based_dev/repo_w_no_tags.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/trunk_based_dev/repo_w_prereleases.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/trunk_based_dev/repo_w_tags.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/scipy.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/scenario/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/scenario/test_next_version.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/scenario/test_release_history.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/scenario/test_template_render.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/changelog/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/changelog/test_default_changelog.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/changelog/test_release_notes.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/changelog/test_template.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/cli/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/cli/test_config.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/cli/test_masking_filter.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/cli/test_util.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/cli/test_version.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/helper.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/test_angular.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/test_emoji.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/test_scipy.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/test_tag.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/test_token.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/commit_parser/test_util.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test__base.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test_bitbucket.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test_github.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test_gitlab.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test_token_auth.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/hvcs/test_util.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/test_helpers.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/version/__init__.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/version/test_algorithm.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/version/test_declaration.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/version/test_translator.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/unit/semantic_release/version/test_version.py +0 -0
- {python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/util.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: python-semantic-release
|
|
3
|
-
Version: 9.
|
|
3
|
+
Version: 9.4.1
|
|
4
4
|
Summary: Automatic Semantic Versioning for Python projects
|
|
5
5
|
Author-email: Rolf Erik Lekang <me@rolflekang.com>
|
|
6
6
|
License: MIT
|
|
@@ -20,43 +20,43 @@ Requires-Python: >=3.8
|
|
|
20
20
|
Description-Content-Type: text/x-rst
|
|
21
21
|
License-File: LICENSE
|
|
22
22
|
License-File: AUTHORS.rst
|
|
23
|
-
Requires-Dist: click
|
|
23
|
+
Requires-Dist: click~=8.0
|
|
24
24
|
Requires-Dist: click-option-group~=0.5
|
|
25
|
-
Requires-Dist: gitpython
|
|
26
|
-
Requires-Dist: requests
|
|
27
|
-
Requires-Dist: jinja2
|
|
28
|
-
Requires-Dist: python-gitlab
|
|
25
|
+
Requires-Dist: gitpython~=3.0
|
|
26
|
+
Requires-Dist: requests~=2.25
|
|
27
|
+
Requires-Dist: jinja2~=3.1
|
|
28
|
+
Requires-Dist: python-gitlab~=4.0
|
|
29
29
|
Requires-Dist: tomlkit~=0.11
|
|
30
|
-
Requires-Dist: dotty-dict
|
|
31
|
-
Requires-Dist: importlib-resources
|
|
32
|
-
Requires-Dist: pydantic
|
|
33
|
-
Requires-Dist: rich
|
|
34
|
-
Requires-Dist: shellingham
|
|
30
|
+
Requires-Dist: dotty-dict~=1.3
|
|
31
|
+
Requires-Dist: importlib-resources~=6.0
|
|
32
|
+
Requires-Dist: pydantic~=2.0
|
|
33
|
+
Requires-Dist: rich~=12.5
|
|
34
|
+
Requires-Dist: shellingham~=1.5
|
|
35
35
|
Provides-Extra: docs
|
|
36
|
-
Requires-Dist: Sphinx
|
|
37
|
-
Requires-Dist: sphinxcontrib-apidoc==0.
|
|
38
|
-
Requires-Dist: sphinx-autobuild==
|
|
39
|
-
Requires-Dist: furo
|
|
36
|
+
Requires-Dist: Sphinx~=6.0; extra == "docs"
|
|
37
|
+
Requires-Dist: sphinxcontrib-apidoc==0.5.0; extra == "docs"
|
|
38
|
+
Requires-Dist: sphinx-autobuild==2024.2.4; extra == "docs"
|
|
39
|
+
Requires-Dist: furo~=2023.3; extra == "docs"
|
|
40
40
|
Provides-Extra: test
|
|
41
|
-
Requires-Dist: coverage[toml]
|
|
42
|
-
Requires-Dist: pytest
|
|
41
|
+
Requires-Dist: coverage[toml]~=7.0; extra == "test"
|
|
42
|
+
Requires-Dist: pytest~=7.0; extra == "test"
|
|
43
43
|
Requires-Dist: pytest-env~=1.0; extra == "test"
|
|
44
|
-
Requires-Dist: pytest-xdist
|
|
45
|
-
Requires-Dist: pytest-mock
|
|
44
|
+
Requires-Dist: pytest-xdist~=3.0; extra == "test"
|
|
45
|
+
Requires-Dist: pytest-mock~=3.0; extra == "test"
|
|
46
46
|
Requires-Dist: pytest-lazy-fixture~=0.6.3; extra == "test"
|
|
47
|
-
Requires-Dist: pytest-cov
|
|
48
|
-
Requires-Dist: pytest-pretty
|
|
49
|
-
Requires-Dist: pytest-clarity
|
|
50
|
-
Requires-Dist: responses
|
|
51
|
-
Requires-Dist: requests-mock
|
|
52
|
-
Requires-Dist: types-pytest-lazy-fixture
|
|
47
|
+
Requires-Dist: pytest-cov~=5.0; extra == "test"
|
|
48
|
+
Requires-Dist: pytest-pretty~=1.2; extra == "test"
|
|
49
|
+
Requires-Dist: pytest-clarity~=1.0; extra == "test"
|
|
50
|
+
Requires-Dist: responses~=0.25.0; extra == "test"
|
|
51
|
+
Requires-Dist: requests-mock~=1.10; extra == "test"
|
|
52
|
+
Requires-Dist: types-pytest-lazy-fixture~=0.6.3; extra == "test"
|
|
53
53
|
Provides-Extra: dev
|
|
54
|
-
Requires-Dist: pre-commit; extra == "dev"
|
|
55
|
-
Requires-Dist: tox; extra == "dev"
|
|
56
|
-
Requires-Dist: ruff==0.3.
|
|
54
|
+
Requires-Dist: pre-commit~=3.5; extra == "dev"
|
|
55
|
+
Requires-Dist: tox~=4.11; extra == "dev"
|
|
56
|
+
Requires-Dist: ruff==0.3.5; extra == "dev"
|
|
57
57
|
Provides-Extra: mypy
|
|
58
|
-
Requires-Dist: mypy; extra == "mypy"
|
|
59
|
-
Requires-Dist: types-requests; extra == "mypy"
|
|
58
|
+
Requires-Dist: mypy==1.9.0; extra == "mypy"
|
|
59
|
+
Requires-Dist: types-requests~=2.31.0; extra == "mypy"
|
|
60
60
|
|
|
61
61
|
Python Semantic Release
|
|
62
62
|
***********************
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Ref: https://packaging.python.org/en/latest/specifications/declaring-project-metadata/
|
|
2
2
|
# and https://setuptools.pypa.io/en/latest/userguide/pyproject_config.html
|
|
3
3
|
[build-system]
|
|
4
|
-
requires = ["setuptools
|
|
4
|
+
requires = ["setuptools ~= 69.0", "wheel ~= 0.42"]
|
|
5
5
|
build-backend = "setuptools.build_meta"
|
|
6
6
|
|
|
7
7
|
[project]
|
|
8
8
|
name = "python-semantic-release"
|
|
9
|
-
version = "9.
|
|
9
|
+
version = "9.4.1"
|
|
10
10
|
description = "Automatic Semantic Versioning for Python projects"
|
|
11
11
|
requires-python = ">=3.8"
|
|
12
12
|
license = { text = "MIT" }
|
|
@@ -22,18 +22,18 @@ classifiers = [
|
|
|
22
22
|
readme = "README.rst"
|
|
23
23
|
authors = [{ name = "Rolf Erik Lekang", email = "me@rolflekang.com" }]
|
|
24
24
|
dependencies = [
|
|
25
|
-
"click
|
|
26
|
-
"click-option-group~=0.5",
|
|
27
|
-
"gitpython
|
|
28
|
-
"requests
|
|
29
|
-
"jinja2
|
|
30
|
-
"python-gitlab
|
|
31
|
-
"tomlkit~=0.11",
|
|
32
|
-
"dotty-dict
|
|
33
|
-
"importlib-resources
|
|
34
|
-
"pydantic
|
|
35
|
-
"rich
|
|
36
|
-
"shellingham
|
|
25
|
+
"click ~= 8.0",
|
|
26
|
+
"click-option-group ~= 0.5",
|
|
27
|
+
"gitpython ~= 3.0",
|
|
28
|
+
"requests ~= 2.25",
|
|
29
|
+
"jinja2 ~= 3.1",
|
|
30
|
+
"python-gitlab ~= 4.0",
|
|
31
|
+
"tomlkit ~= 0.11",
|
|
32
|
+
"dotty-dict ~= 1.3",
|
|
33
|
+
"importlib-resources ~= 6.0",
|
|
34
|
+
"pydantic ~= 2.0",
|
|
35
|
+
"rich ~= 12.5",
|
|
36
|
+
"shellingham ~= 1.5",
|
|
37
37
|
]
|
|
38
38
|
|
|
39
39
|
[project.scripts]
|
|
@@ -49,27 +49,34 @@ repository = "http://github.com/python-semantic-release/python-semantic-release.
|
|
|
49
49
|
|
|
50
50
|
[project.optional-dependencies]
|
|
51
51
|
docs = [
|
|
52
|
-
"Sphinx
|
|
53
|
-
"sphinxcontrib-apidoc==0.
|
|
54
|
-
"sphinx-autobuild==
|
|
55
|
-
"furo
|
|
52
|
+
"Sphinx ~= 6.0",
|
|
53
|
+
"sphinxcontrib-apidoc == 0.5.0",
|
|
54
|
+
"sphinx-autobuild == 2024.2.4",
|
|
55
|
+
"furo ~= 2023.3",
|
|
56
56
|
]
|
|
57
57
|
test = [
|
|
58
|
-
"coverage[toml]
|
|
59
|
-
"pytest
|
|
60
|
-
"pytest-env~=1.0",
|
|
61
|
-
"pytest-xdist
|
|
62
|
-
"pytest-mock
|
|
63
|
-
"pytest-lazy-fixture~=0.6.3",
|
|
64
|
-
"pytest-cov
|
|
65
|
-
"pytest-pretty
|
|
66
|
-
"pytest-clarity
|
|
67
|
-
"responses
|
|
68
|
-
"requests-mock
|
|
69
|
-
"types-pytest-lazy-fixture
|
|
58
|
+
"coverage[toml] ~= 7.0",
|
|
59
|
+
"pytest ~= 7.0",
|
|
60
|
+
"pytest-env ~= 1.0",
|
|
61
|
+
"pytest-xdist ~= 3.0",
|
|
62
|
+
"pytest-mock ~= 3.0",
|
|
63
|
+
"pytest-lazy-fixture ~= 0.6.3",
|
|
64
|
+
"pytest-cov ~= 5.0",
|
|
65
|
+
"pytest-pretty ~= 1.2",
|
|
66
|
+
"pytest-clarity ~= 1.0",
|
|
67
|
+
"responses ~= 0.25.0",
|
|
68
|
+
"requests-mock ~= 1.10",
|
|
69
|
+
"types-pytest-lazy-fixture ~= 0.6.3",
|
|
70
|
+
]
|
|
71
|
+
dev = [
|
|
72
|
+
"pre-commit ~= 3.5",
|
|
73
|
+
"tox ~= 4.11",
|
|
74
|
+
"ruff == 0.3.5"
|
|
75
|
+
]
|
|
76
|
+
mypy = [
|
|
77
|
+
"mypy == 1.9.0",
|
|
78
|
+
"types-requests ~= 2.31.0"
|
|
70
79
|
]
|
|
71
|
-
dev = ["pre-commit", "tox", "ruff==0.3.3"]
|
|
72
|
-
mypy = ["mypy", "types-requests"]
|
|
73
80
|
|
|
74
81
|
[tool.pytest.ini_options]
|
|
75
82
|
env = [
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: python-semantic-release
|
|
3
|
-
Version: 9.
|
|
3
|
+
Version: 9.4.1
|
|
4
4
|
Summary: Automatic Semantic Versioning for Python projects
|
|
5
5
|
Author-email: Rolf Erik Lekang <me@rolflekang.com>
|
|
6
6
|
License: MIT
|
|
@@ -20,43 +20,43 @@ Requires-Python: >=3.8
|
|
|
20
20
|
Description-Content-Type: text/x-rst
|
|
21
21
|
License-File: LICENSE
|
|
22
22
|
License-File: AUTHORS.rst
|
|
23
|
-
Requires-Dist: click
|
|
23
|
+
Requires-Dist: click~=8.0
|
|
24
24
|
Requires-Dist: click-option-group~=0.5
|
|
25
|
-
Requires-Dist: gitpython
|
|
26
|
-
Requires-Dist: requests
|
|
27
|
-
Requires-Dist: jinja2
|
|
28
|
-
Requires-Dist: python-gitlab
|
|
25
|
+
Requires-Dist: gitpython~=3.0
|
|
26
|
+
Requires-Dist: requests~=2.25
|
|
27
|
+
Requires-Dist: jinja2~=3.1
|
|
28
|
+
Requires-Dist: python-gitlab~=4.0
|
|
29
29
|
Requires-Dist: tomlkit~=0.11
|
|
30
|
-
Requires-Dist: dotty-dict
|
|
31
|
-
Requires-Dist: importlib-resources
|
|
32
|
-
Requires-Dist: pydantic
|
|
33
|
-
Requires-Dist: rich
|
|
34
|
-
Requires-Dist: shellingham
|
|
30
|
+
Requires-Dist: dotty-dict~=1.3
|
|
31
|
+
Requires-Dist: importlib-resources~=6.0
|
|
32
|
+
Requires-Dist: pydantic~=2.0
|
|
33
|
+
Requires-Dist: rich~=12.5
|
|
34
|
+
Requires-Dist: shellingham~=1.5
|
|
35
35
|
Provides-Extra: docs
|
|
36
|
-
Requires-Dist: Sphinx
|
|
37
|
-
Requires-Dist: sphinxcontrib-apidoc==0.
|
|
38
|
-
Requires-Dist: sphinx-autobuild==
|
|
39
|
-
Requires-Dist: furo
|
|
36
|
+
Requires-Dist: Sphinx~=6.0; extra == "docs"
|
|
37
|
+
Requires-Dist: sphinxcontrib-apidoc==0.5.0; extra == "docs"
|
|
38
|
+
Requires-Dist: sphinx-autobuild==2024.2.4; extra == "docs"
|
|
39
|
+
Requires-Dist: furo~=2023.3; extra == "docs"
|
|
40
40
|
Provides-Extra: test
|
|
41
|
-
Requires-Dist: coverage[toml]
|
|
42
|
-
Requires-Dist: pytest
|
|
41
|
+
Requires-Dist: coverage[toml]~=7.0; extra == "test"
|
|
42
|
+
Requires-Dist: pytest~=7.0; extra == "test"
|
|
43
43
|
Requires-Dist: pytest-env~=1.0; extra == "test"
|
|
44
|
-
Requires-Dist: pytest-xdist
|
|
45
|
-
Requires-Dist: pytest-mock
|
|
44
|
+
Requires-Dist: pytest-xdist~=3.0; extra == "test"
|
|
45
|
+
Requires-Dist: pytest-mock~=3.0; extra == "test"
|
|
46
46
|
Requires-Dist: pytest-lazy-fixture~=0.6.3; extra == "test"
|
|
47
|
-
Requires-Dist: pytest-cov
|
|
48
|
-
Requires-Dist: pytest-pretty
|
|
49
|
-
Requires-Dist: pytest-clarity
|
|
50
|
-
Requires-Dist: responses
|
|
51
|
-
Requires-Dist: requests-mock
|
|
52
|
-
Requires-Dist: types-pytest-lazy-fixture
|
|
47
|
+
Requires-Dist: pytest-cov~=5.0; extra == "test"
|
|
48
|
+
Requires-Dist: pytest-pretty~=1.2; extra == "test"
|
|
49
|
+
Requires-Dist: pytest-clarity~=1.0; extra == "test"
|
|
50
|
+
Requires-Dist: responses~=0.25.0; extra == "test"
|
|
51
|
+
Requires-Dist: requests-mock~=1.10; extra == "test"
|
|
52
|
+
Requires-Dist: types-pytest-lazy-fixture~=0.6.3; extra == "test"
|
|
53
53
|
Provides-Extra: dev
|
|
54
|
-
Requires-Dist: pre-commit; extra == "dev"
|
|
55
|
-
Requires-Dist: tox; extra == "dev"
|
|
56
|
-
Requires-Dist: ruff==0.3.
|
|
54
|
+
Requires-Dist: pre-commit~=3.5; extra == "dev"
|
|
55
|
+
Requires-Dist: tox~=4.11; extra == "dev"
|
|
56
|
+
Requires-Dist: ruff==0.3.5; extra == "dev"
|
|
57
57
|
Provides-Extra: mypy
|
|
58
|
-
Requires-Dist: mypy; extra == "mypy"
|
|
59
|
-
Requires-Dist: types-requests; extra == "mypy"
|
|
58
|
+
Requires-Dist: mypy==1.9.0; extra == "mypy"
|
|
59
|
+
Requires-Dist: types-requests~=2.31.0; extra == "mypy"
|
|
60
60
|
|
|
61
61
|
Python Semantic Release
|
|
62
62
|
***********************
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
click~=8.0
|
|
2
|
+
click-option-group~=0.5
|
|
3
|
+
gitpython~=3.0
|
|
4
|
+
requests~=2.25
|
|
5
|
+
jinja2~=3.1
|
|
6
|
+
python-gitlab~=4.0
|
|
7
|
+
tomlkit~=0.11
|
|
8
|
+
dotty-dict~=1.3
|
|
9
|
+
importlib-resources~=6.0
|
|
10
|
+
pydantic~=2.0
|
|
11
|
+
rich~=12.5
|
|
12
|
+
shellingham~=1.5
|
|
13
|
+
|
|
14
|
+
[dev]
|
|
15
|
+
pre-commit~=3.5
|
|
16
|
+
tox~=4.11
|
|
17
|
+
ruff==0.3.5
|
|
18
|
+
|
|
19
|
+
[docs]
|
|
20
|
+
Sphinx~=6.0
|
|
21
|
+
sphinxcontrib-apidoc==0.5.0
|
|
22
|
+
sphinx-autobuild==2024.2.4
|
|
23
|
+
furo~=2023.3
|
|
24
|
+
|
|
25
|
+
[mypy]
|
|
26
|
+
mypy==1.9.0
|
|
27
|
+
types-requests~=2.31.0
|
|
28
|
+
|
|
29
|
+
[test]
|
|
30
|
+
coverage[toml]~=7.0
|
|
31
|
+
pytest~=7.0
|
|
32
|
+
pytest-env~=1.0
|
|
33
|
+
pytest-xdist~=3.0
|
|
34
|
+
pytest-mock~=3.0
|
|
35
|
+
pytest-lazy-fixture~=0.6.3
|
|
36
|
+
pytest-cov~=5.0
|
|
37
|
+
pytest-pretty~=1.2
|
|
38
|
+
pytest-clarity~=1.0
|
|
39
|
+
responses~=0.25.0
|
|
40
|
+
requests-mock~=1.10
|
|
41
|
+
types-pytest-lazy-fixture~=0.6.3
|
|
@@ -62,7 +62,8 @@ class VersionGitHubActionsOutput:
|
|
|
62
62
|
"version": str(self.version),
|
|
63
63
|
"tag": self.tag,
|
|
64
64
|
}
|
|
65
|
-
|
|
65
|
+
|
|
66
|
+
return str.join("", [f"{key}={value!s}\n" for key, value in outputs.items()])
|
|
66
67
|
|
|
67
68
|
def write_if_possible(self, filename: str | None = None) -> None:
|
|
68
69
|
output_file = filename or os.getenv(self.OUTPUT_ENV_VAR)
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/gitea.py
RENAMED
|
@@ -8,6 +8,7 @@ import mimetypes
|
|
|
8
8
|
import os
|
|
9
9
|
|
|
10
10
|
from requests import HTTPError
|
|
11
|
+
from urllib3.util.url import Url, parse_url
|
|
11
12
|
|
|
12
13
|
from semantic_release.helpers import logged_function
|
|
13
14
|
from semantic_release.hvcs._base import HvcsBase
|
|
@@ -49,13 +50,32 @@ class Gitea(HvcsBase):
|
|
|
49
50
|
) -> None:
|
|
50
51
|
self._remote_url = remote_url
|
|
51
52
|
|
|
52
|
-
|
|
53
|
-
"GITEA_SERVER_URL", self.DEFAULT_DOMAIN
|
|
54
|
-
)
|
|
53
|
+
domain_url = parse_url(
|
|
54
|
+
hvcs_domain or os.getenv("GITEA_SERVER_URL", "") or self.DEFAULT_DOMAIN
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
# Strip any scheme, query or fragment from the domain
|
|
58
|
+
self.hvcs_domain = Url(
|
|
59
|
+
host=domain_url.host, port=domain_url.port, path=domain_url.path
|
|
60
|
+
).url.rstrip("/")
|
|
61
|
+
|
|
62
|
+
api_domain_parts = parse_url(
|
|
63
|
+
hvcs_api_domain
|
|
64
|
+
or os.getenv("GITEA_API_URL", "")
|
|
65
|
+
or Url(
|
|
66
|
+
# infer from Domain url and append the default api path
|
|
67
|
+
scheme=domain_url.scheme,
|
|
68
|
+
host=self.hvcs_domain,
|
|
69
|
+
path=self.DEFAULT_API_PATH,
|
|
70
|
+
).url
|
|
71
|
+
)
|
|
55
72
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
73
|
+
# Strip any scheme, query or fragment from the api domain
|
|
74
|
+
self.hvcs_api_domain = Url(
|
|
75
|
+
host=api_domain_parts.host,
|
|
76
|
+
port=api_domain_parts.port,
|
|
77
|
+
path=api_domain_parts.path,
|
|
78
|
+
).url.rstrip("/")
|
|
59
79
|
|
|
60
80
|
self.api_url = f"https://{self.hvcs_api_domain}"
|
|
61
81
|
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
from __future__ import annotations
|
|
2
|
+
|
|
3
|
+
from textwrap import dedent
|
|
4
|
+
from typing import TYPE_CHECKING
|
|
5
|
+
|
|
6
|
+
import pytest
|
|
7
|
+
|
|
8
|
+
from semantic_release import Version
|
|
9
|
+
from semantic_release.cli.github_actions_output import VersionGitHubActionsOutput
|
|
10
|
+
|
|
11
|
+
from tests.util import actions_output_to_dict
|
|
12
|
+
|
|
13
|
+
if TYPE_CHECKING:
|
|
14
|
+
from pathlib import Path
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
@pytest.mark.parametrize("released", (True, False))
|
|
18
|
+
def test_version_github_actions_output_format(released: bool):
|
|
19
|
+
version_str = "1.2.3"
|
|
20
|
+
expected_output = dedent(
|
|
21
|
+
f"""\
|
|
22
|
+
released={'true' if released else 'false'}
|
|
23
|
+
version={version_str}
|
|
24
|
+
tag=v{version_str}
|
|
25
|
+
"""
|
|
26
|
+
)
|
|
27
|
+
output = VersionGitHubActionsOutput(
|
|
28
|
+
released=released,
|
|
29
|
+
version=Version.parse(version_str),
|
|
30
|
+
)
|
|
31
|
+
|
|
32
|
+
# Evaluate (expected -> actual)
|
|
33
|
+
assert expected_output == output.to_output_text()
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
def test_version_github_actions_output_fails_if_missing_output():
|
|
37
|
+
output = VersionGitHubActionsOutput(
|
|
38
|
+
version=Version.parse("1.2.3"),
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
# Execute with expected failure
|
|
42
|
+
with pytest.raises(ValueError, match="required outputs were not set"):
|
|
43
|
+
output.to_output_text()
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
def test_version_github_actions_output_writes_to_github_output_if_available(
|
|
47
|
+
monkeypatch: pytest.MonkeyPatch, tmp_path: Path
|
|
48
|
+
):
|
|
49
|
+
mock_output_file = tmp_path / "action.out"
|
|
50
|
+
version_str = "1.2.3"
|
|
51
|
+
monkeypatch.setenv("GITHUB_OUTPUT", str(mock_output_file.resolve()))
|
|
52
|
+
output = VersionGitHubActionsOutput(
|
|
53
|
+
version=Version.parse(version_str),
|
|
54
|
+
released=True,
|
|
55
|
+
)
|
|
56
|
+
|
|
57
|
+
output.write_if_possible()
|
|
58
|
+
|
|
59
|
+
action_outputs = actions_output_to_dict(
|
|
60
|
+
mock_output_file.read_text(encoding="utf-8")
|
|
61
|
+
)
|
|
62
|
+
|
|
63
|
+
# Evaluate (expected -> actual)
|
|
64
|
+
assert version_str == action_outputs["version"]
|
|
65
|
+
assert str(True).lower() == action_outputs["released"]
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def test_version_github_actions_output_no_error_if_not_in_gha(
|
|
69
|
+
monkeypatch: pytest.MonkeyPatch,
|
|
70
|
+
):
|
|
71
|
+
output = VersionGitHubActionsOutput(
|
|
72
|
+
version=Version.parse("1.2.3"),
|
|
73
|
+
released=True,
|
|
74
|
+
)
|
|
75
|
+
|
|
76
|
+
monkeypatch.delenv("GITHUB_OUTPUT", raising=False)
|
|
77
|
+
output.write_if_possible()
|
|
@@ -29,9 +29,15 @@ def default_gitea_client():
|
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
@pytest.mark.parametrize(
|
|
32
|
-
(
|
|
33
|
-
"
|
|
34
|
-
|
|
32
|
+
str.join(
|
|
33
|
+
", ",
|
|
34
|
+
[
|
|
35
|
+
"patched_os_environ",
|
|
36
|
+
"hvcs_domain",
|
|
37
|
+
"hvcs_api_domain",
|
|
38
|
+
"expected_hvcs_domain",
|
|
39
|
+
"expected_hvcs_api_domain",
|
|
40
|
+
],
|
|
35
41
|
),
|
|
36
42
|
[
|
|
37
43
|
({}, None, None, Gitea.DEFAULT_DOMAIN, Gitea.DEFAULT_API_DOMAIN),
|
|
@@ -39,29 +45,29 @@ def default_gitea_client():
|
|
|
39
45
|
{"GITEA_SERVER_URL": "https://special.custom.server/vcs/"},
|
|
40
46
|
None,
|
|
41
47
|
None,
|
|
42
|
-
"special.custom.server/vcs
|
|
43
|
-
|
|
48
|
+
"special.custom.server/vcs",
|
|
49
|
+
"special.custom.server/vcs/api/v1",
|
|
44
50
|
),
|
|
45
51
|
(
|
|
46
52
|
{"GITEA_API_URL": "https://api.special.custom.server/"},
|
|
47
53
|
None,
|
|
48
54
|
None,
|
|
49
55
|
Gitea.DEFAULT_DOMAIN,
|
|
50
|
-
"api.special.custom.server
|
|
56
|
+
"api.special.custom.server",
|
|
51
57
|
),
|
|
52
58
|
(
|
|
53
59
|
{"GITEA_SERVER_URL": "https://special.custom.server/vcs/"},
|
|
54
60
|
"https://example.com",
|
|
55
61
|
None,
|
|
56
|
-
"
|
|
57
|
-
|
|
62
|
+
"example.com",
|
|
63
|
+
"example.com/api/v1",
|
|
58
64
|
),
|
|
59
65
|
(
|
|
60
66
|
{"GITEA_API_URL": "https://api.special.custom.server/"},
|
|
61
67
|
None,
|
|
62
68
|
"https://api.example.com",
|
|
63
69
|
Gitea.DEFAULT_DOMAIN,
|
|
64
|
-
"
|
|
70
|
+
"api.example.com",
|
|
65
71
|
),
|
|
66
72
|
],
|
|
67
73
|
)
|
|
@@ -90,11 +96,11 @@ def test_gitea_client_init(
|
|
|
90
96
|
token=token,
|
|
91
97
|
)
|
|
92
98
|
|
|
93
|
-
assert client.hvcs_domain
|
|
94
|
-
assert client.hvcs_api_domain
|
|
95
|
-
assert
|
|
96
|
-
assert
|
|
97
|
-
assert client._remote_url
|
|
99
|
+
assert expected_hvcs_domain == client.hvcs_domain
|
|
100
|
+
assert expected_hvcs_api_domain == client.hvcs_api_domain
|
|
101
|
+
assert f"https://{expected_hvcs_api_domain}" == client.api_url
|
|
102
|
+
assert token == client.token
|
|
103
|
+
assert remote_url == client._remote_url
|
|
98
104
|
assert hasattr(client, "session")
|
|
99
105
|
assert isinstance(getattr(client, "session", None), Session)
|
|
100
106
|
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
click<9,>=8
|
|
2
|
-
click-option-group~=0.5
|
|
3
|
-
gitpython<4,>=3.0.8
|
|
4
|
-
requests<3,>=2.25
|
|
5
|
-
jinja2<4,>=3.1.2
|
|
6
|
-
python-gitlab<5,>=2
|
|
7
|
-
tomlkit~=0.11
|
|
8
|
-
dotty-dict<2,>=1.3.0
|
|
9
|
-
importlib-resources<7,>=5.7
|
|
10
|
-
pydantic<3,>=2
|
|
11
|
-
rich>=12.5.1
|
|
12
|
-
shellingham>=1.5.0.post1
|
|
13
|
-
|
|
14
|
-
[dev]
|
|
15
|
-
pre-commit
|
|
16
|
-
tox
|
|
17
|
-
ruff==0.3.3
|
|
18
|
-
|
|
19
|
-
[docs]
|
|
20
|
-
Sphinx<=6.0.0
|
|
21
|
-
sphinxcontrib-apidoc==0.3.0
|
|
22
|
-
sphinx-autobuild==2021.03.14
|
|
23
|
-
furo>=2023.3.27
|
|
24
|
-
|
|
25
|
-
[mypy]
|
|
26
|
-
mypy
|
|
27
|
-
types-requests
|
|
28
|
-
|
|
29
|
-
[test]
|
|
30
|
-
coverage[toml]<8,>=6
|
|
31
|
-
pytest<8,>=7
|
|
32
|
-
pytest-env~=1.0
|
|
33
|
-
pytest-xdist<4,>=2
|
|
34
|
-
pytest-mock<4,>=3
|
|
35
|
-
pytest-lazy-fixture~=0.6.3
|
|
36
|
-
pytest-cov<5,>=4
|
|
37
|
-
pytest-pretty<2,>=1.2.0
|
|
38
|
-
pytest-clarity>=1.0.1
|
|
39
|
-
responses==0.23.3
|
|
40
|
-
requests-mock<2,>=1.10.0
|
|
41
|
-
types-pytest-lazy-fixture>=0.6.3.3
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import pytest
|
|
2
|
-
|
|
3
|
-
from semantic_release import Version
|
|
4
|
-
from semantic_release.cli.github_actions_output import VersionGitHubActionsOutput
|
|
5
|
-
|
|
6
|
-
from tests.util import actions_output_to_dict
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
@pytest.mark.parametrize("released", (True, False))
|
|
10
|
-
def test_version_github_actions_output_format(released):
|
|
11
|
-
version = Version.parse("1.2.3")
|
|
12
|
-
output = VersionGitHubActionsOutput()
|
|
13
|
-
|
|
14
|
-
output.version = version
|
|
15
|
-
output.released = released
|
|
16
|
-
|
|
17
|
-
text = output.to_output_text()
|
|
18
|
-
# fmt: off
|
|
19
|
-
assert (
|
|
20
|
-
text == f"released={str(released).lower()}\n"
|
|
21
|
-
f"version={version!s}\n"
|
|
22
|
-
f"tag={version.as_tag()}"
|
|
23
|
-
)
|
|
24
|
-
# fmt: on
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
def test_version_github_actions_output_fails_if_missing_output():
|
|
28
|
-
version = Version.parse("1.2.3")
|
|
29
|
-
output = VersionGitHubActionsOutput()
|
|
30
|
-
|
|
31
|
-
output.version = version
|
|
32
|
-
|
|
33
|
-
with pytest.raises(ValueError, match="required outputs were not set"):
|
|
34
|
-
output.to_output_text()
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
def test_version_github_actions_output_writes_to_github_output_if_available(
|
|
38
|
-
monkeypatch, tmp_path
|
|
39
|
-
):
|
|
40
|
-
mock_output_file = tmp_path / "action.out"
|
|
41
|
-
version = Version.parse("1.2.3")
|
|
42
|
-
output = VersionGitHubActionsOutput()
|
|
43
|
-
|
|
44
|
-
output.version = version
|
|
45
|
-
output.released = True
|
|
46
|
-
|
|
47
|
-
monkeypatch.setenv("GITHUB_OUTPUT", str(mock_output_file.resolve()))
|
|
48
|
-
output.write_if_possible()
|
|
49
|
-
|
|
50
|
-
action_outputs = actions_output_to_dict(
|
|
51
|
-
mock_output_file.read_text(encoding="utf-8")
|
|
52
|
-
)
|
|
53
|
-
|
|
54
|
-
assert action_outputs["version"] == str(version)
|
|
55
|
-
assert action_outputs["released"] == "true"
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
def test_version_github_actions_output_no_error_if_not_in_gha(monkeypatch):
|
|
59
|
-
version = Version.parse("1.2.3")
|
|
60
|
-
output = VersionGitHubActionsOutput()
|
|
61
|
-
|
|
62
|
-
output.version = version
|
|
63
|
-
output.released = True
|
|
64
|
-
|
|
65
|
-
monkeypatch.delenv("GITHUB_OUTPUT", raising=False)
|
|
66
|
-
output.write_if_possible()
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/cronjobs.rst
RENAMED
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/index.rst
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/automatic-releases/travis.rst
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/changelog_templates.rst
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
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/docs/multibranch_releases.rst
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/__main__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/__init__.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
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/common.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/config.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/const.py
RENAMED
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/cli/util.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
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/__init__.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/_base.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/bitbucket.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/github.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/gitlab.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/token_auth.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/hvcs/util.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/semantic_release/version/version.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/__init__.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/conftest.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_changelog.py
RENAMED
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_help.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_main.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_publish.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/command_line/test_version.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/commit_parsers.py
RENAMED
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/example_project.py
RENAMED
|
File without changes
|
|
File without changes
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/fixtures/repos/__init__.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
|
{python-semantic-release-9.3.1 → python-semantic-release-9.4.1}/tests/scenario/test_next_version.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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|