python-semantic-release 9.18.1__tar.gz → 9.19.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.
Files changed (204) hide show
  1. {python_semantic_release-9.18.1/src/python_semantic_release.egg-info → python_semantic_release-9.19.1}/PKG-INFO +2 -2
  2. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/algorithm.rst +1 -1
  3. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/automatic-releases/github-actions.rst +7 -7
  4. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/automatic-releases/index.rst +2 -0
  5. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/changelog_templates.rst +7 -7
  6. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/commands.rst +5 -4
  7. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/commit_parsing.rst +100 -20
  8. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/configuration.rst +10 -10
  9. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/index.rst +5 -4
  10. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/migrating_from_v7.rst +15 -15
  11. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/multibranch_releases.rst +3 -3
  12. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/strict_mode.rst +1 -1
  13. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/troubleshooting.rst +2 -3
  14. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/pyproject.toml +8 -3
  15. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1/src/python_semantic_release.egg-info}/PKG-INFO +2 -2
  16. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/python_semantic_release.egg-info/SOURCES.txt +2 -1
  17. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/python_semantic_release.egg-info/requires.txt +1 -1
  18. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/__init__.py +1 -1
  19. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/__main__.py +7 -3
  20. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/commands/main.py +3 -6
  21. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/config.py +31 -1
  22. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/__init__.py +4 -0
  23. python_semantic_release-9.19.1/src/semantic_release/commit_parser/conventional.py +31 -0
  24. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/changes.md.j2 +4 -4
  25. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.release_notes.md.j2 +2 -2
  26. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/changes.rst.j2 +4 -4
  27. python_semantic_release-9.19.1/src/semantic_release/globals.py +8 -0
  28. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/helpers.py +6 -0
  29. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/const.py +7 -7
  30. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_changelog/test_changelog.py +44 -44
  31. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_changelog/test_changelog_custom_parser.py +6 -6
  32. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_changelog/test_changelog_parsing.py +2 -2
  33. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_changelog/test_changelog_release_notes.py +12 -12
  34. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_config/test_generate_config.py +4 -4
  35. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_publish/test_publish.py +4 -4
  36. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_1_channel.py +2 -2
  37. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_2_channels.py +2 -2
  38. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_3_channels.py +4 -4
  39. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/git_flow/test_repo_4_channels.py +2 -2
  40. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_1_channel.py +2 -2
  41. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/github_flow/test_repo_2_channels.py +2 -2
  42. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk.py +2 -2
  43. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_dual_version_support.py +2 -2
  44. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_dual_version_support_w_prereleases.py +2 -2
  45. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/test_repo_trunk_w_prereleases.py +2 -2
  46. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version.py +7 -7
  47. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_build.py +5 -5
  48. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_bump.py +117 -117
  49. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_changelog.py +31 -31
  50. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_changelog_custom_commit_msg.py +4 -4
  51. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_github_actions.py +6 -2
  52. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_print.py +35 -35
  53. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_release_notes.py +3 -3
  54. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_stamp.py +7 -7
  55. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/test_version_strict.py +3 -3
  56. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/test_help.py +4 -4
  57. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/test_main.py +15 -9
  58. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/commit_parsers.py +20 -20
  59. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/example_project.py +7 -7
  60. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/git_repo.py +26 -25
  61. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/git_flow/repo_w_1_release_channel.py +16 -16
  62. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/git_flow/repo_w_2_release_channels.py +17 -17
  63. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/git_flow/repo_w_3_release_channels.py +19 -19
  64. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/git_flow/repo_w_4_release_channels.py +15 -13
  65. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/github_flow/repo_w_default_release.py +11 -9
  66. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/github_flow/repo_w_release_channels.py +11 -9
  67. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/repo_initial_commit.py +2 -2
  68. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/trunk_based_dev/repo_w_dual_version_support.py +7 -7
  69. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/trunk_based_dev/repo_w_dual_version_support_w_prereleases.py +9 -9
  70. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/trunk_based_dev/repo_w_no_tags.py +8 -8
  71. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/trunk_based_dev/repo_w_prereleases.py +7 -7
  72. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/trunk_based_dev/repo_w_tags.py +7 -7
  73. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/test_default_changelog.py +6 -6
  74. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/test_release_history.py +38 -38
  75. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/test_release_notes.py +6 -6
  76. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/cli/test_config.py +7 -7
  77. python_semantic_release-9.18.1/tests/unit/semantic_release/commit_parser/test_angular.py → python_semantic_release-9.19.1/tests/unit/semantic_release/commit_parser/test_conventional.py +65 -61
  78. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/commit_parser/test_emoji.py +4 -4
  79. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/commit_parser/test_scipy.py +4 -4
  80. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/util.py +2 -2
  81. python_semantic_release-9.18.1/src/semantic_release/globals.py +0 -6
  82. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/AUTHORS.rst +0 -0
  83. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/LICENSE +0 -0
  84. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/MANIFEST.in +0 -0
  85. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/README.rst +0 -0
  86. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/Makefile +0 -0
  87. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/automatic-releases/cronjobs.rst +0 -0
  88. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/automatic-releases/travis.rst +0 -0
  89. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/conf.py +0 -0
  90. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/contributing.rst +0 -0
  91. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/contributors.rst +0 -0
  92. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/make.bat +0 -0
  93. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/docs/psr_changelog.rst +0 -0
  94. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/setup.cfg +0 -0
  95. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/python_semantic_release.egg-info/dependency_links.txt +0 -0
  96. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/python_semantic_release.egg-info/entry_points.txt +0 -0
  97. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/python_semantic_release.egg-info/top_level.txt +0 -0
  98. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/changelog/__init__.py +0 -0
  99. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/changelog/context.py +0 -0
  100. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/changelog/release_history.py +0 -0
  101. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/changelog/template.py +0 -0
  102. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/__init__.py +0 -0
  103. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/changelog_writer.py +0 -0
  104. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/cli_context.py +0 -0
  105. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/commands/__init__.py +0 -0
  106. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/commands/changelog.py +0 -0
  107. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/commands/generate_config.py +0 -0
  108. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/commands/publish.py +0 -0
  109. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/commands/version.py +0 -0
  110. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/const.py +0 -0
  111. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/github_actions_output.py +0 -0
  112. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/masking_filter.py +0 -0
  113. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/cli/util.py +0 -0
  114. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/_base.py +0 -0
  115. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/angular.py +0 -0
  116. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/emoji.py +0 -0
  117. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/scipy.py +0 -0
  118. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/tag.py +0 -0
  119. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/token.py +0 -0
  120. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/commit_parser/util.py +0 -0
  121. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/const.py +0 -0
  122. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/changelog_header.md.j2 +0 -0
  123. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/changelog_init.md.j2 +0 -0
  124. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/changelog_update.md.j2 +0 -0
  125. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/first_release.md.j2 +0 -0
  126. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/macros.md.j2 +0 -0
  127. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/unreleased_changes.md.j2 +0 -0
  128. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/.components/versioned_changes.md.j2 +0 -0
  129. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/md/CHANGELOG.md.j2 +0 -0
  130. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/changelog_header.rst.j2 +0 -0
  131. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/changelog_init.rst.j2 +0 -0
  132. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/changelog_update.rst.j2 +0 -0
  133. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/first_release.rst.j2 +0 -0
  134. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/macros.rst.j2 +0 -0
  135. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/unreleased_changes.rst.j2 +0 -0
  136. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/.components/versioned_changes.rst.j2 +0 -0
  137. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/data/templates/angular/rst/CHANGELOG.rst.j2 +0 -0
  138. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/enums.py +0 -0
  139. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/errors.py +0 -0
  140. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/gitproject.py +0 -0
  141. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/__init__.py +0 -0
  142. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/_base.py +0 -0
  143. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/bitbucket.py +0 -0
  144. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/gitea.py +0 -0
  145. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/github.py +0 -0
  146. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/gitlab.py +0 -0
  147. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/remote_hvcs_base.py +0 -0
  148. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/token_auth.py +0 -0
  149. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/hvcs/util.py +0 -0
  150. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/py.typed +0 -0
  151. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/version/__init__.py +0 -0
  152. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/version/algorithm.py +0 -0
  153. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/version/declaration.py +0 -0
  154. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/version/translator.py +0 -0
  155. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/src/semantic_release/version/version.py +0 -0
  156. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/__init__.py +0 -0
  157. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/conftest.py +0 -0
  158. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/__init__.py +0 -0
  159. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_changelog/__init__.py +0 -0
  160. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_config/__init__.py +0 -0
  161. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_publish/__init__.py +0 -0
  162. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/__init__.py +0 -0
  163. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/__init__.py +0 -0
  164. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/conftest.py +0 -0
  165. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/git_flow/__init__.py +0 -0
  166. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/github_flow/__init__.py +0 -0
  167. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/cmd_version/bump_version/trunk_based_dev/__init__.py +0 -0
  168. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/e2e/conftest.py +0 -0
  169. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/__init__.py +0 -0
  170. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/__init__.py +0 -0
  171. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/git_flow/__init__.py +0 -0
  172. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/github_flow/__init__.py +0 -0
  173. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/repos/trunk_based_dev/__init__.py +0 -0
  174. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/fixtures/scipy.py +0 -0
  175. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/__init__.py +0 -0
  176. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/conftest.py +0 -0
  177. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/__init__.py +0 -0
  178. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/__init__.py +0 -0
  179. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/conftest.py +0 -0
  180. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/test_changelog_context.py +0 -0
  181. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/test_template.py +0 -0
  182. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/changelog/test_template_render.py +0 -0
  183. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/cli/__init__.py +0 -0
  184. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/cli/test_github_actions_output.py +0 -0
  185. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/cli/test_masking_filter.py +0 -0
  186. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/cli/test_util.py +0 -0
  187. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/cli/test_version.py +0 -0
  188. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/commit_parser/__init__.py +0 -0
  189. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/commit_parser/test_parsed_commit.py +0 -0
  190. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/commit_parser/test_util.py +0 -0
  191. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/__init__.py +0 -0
  192. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test__base.py +0 -0
  193. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test_bitbucket.py +0 -0
  194. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test_gitea.py +0 -0
  195. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test_github.py +0 -0
  196. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test_gitlab.py +0 -0
  197. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test_token_auth.py +0 -0
  198. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/hvcs/test_util.py +0 -0
  199. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/test_helpers.py +0 -0
  200. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/version/__init__.py +0 -0
  201. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/version/test_algorithm.py +0 -0
  202. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/version/test_declaration.py +0 -0
  203. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/version/test_translator.py +0 -0
  204. {python_semantic_release-9.18.1 → python_semantic_release-9.19.1}/tests/unit/semantic_release/version/test_version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: python-semantic-release
3
- Version: 9.18.1
3
+ Version: 9.19.1
4
4
  Summary: Automatic Semantic Versioning for Python projects
5
5
  Author-email: Rolf Erik Lekang <me@rolflekang.com>
6
6
  License: MIT
@@ -62,7 +62,7 @@ Requires-Dist: pre-commit~=3.5; extra == "dev"
62
62
  Requires-Dist: tox~=4.11; extra == "dev"
63
63
  Requires-Dist: ruff==0.6.1; extra == "dev"
64
64
  Provides-Extra: mypy
65
- Requires-Dist: mypy==1.14.1; extra == "mypy"
65
+ Requires-Dist: mypy==1.15.0; extra == "mypy"
66
66
  Requires-Dist: types-requests~=2.32.0; extra == "mypy"
67
67
  Requires-Dist: types-pyyaml~=6.0; extra == "mypy"
68
68
 
@@ -35,7 +35,7 @@ Implementation
35
35
 
36
36
  1. Parse all the Git tags of the repository into semantic versions, and **sort**
37
37
  in descending (most recent first) order according to `semver precedence`_.
38
- Ignore any tags which do not correspond to valid semantic vesrions according
38
+ Ignore any tags which do not correspond to valid semantic versions according
39
39
  to ``tag_format``.
40
40
 
41
41
 
@@ -337,7 +337,7 @@ before the :ref:`version <cmd-version>` subcommand.
337
337
 
338
338
  .. code:: yaml
339
339
 
340
- - uses: python-semantic-release/python-semantic-release@v9.18.0
340
+ - uses: python-semantic-release/python-semantic-release@v9.19.0
341
341
  with:
342
342
  root_options: "-vv --noop"
343
343
 
@@ -576,7 +576,7 @@ before the :ref:`publish <cmd-publish>` subcommand.
576
576
 
577
577
  .. code:: yaml
578
578
 
579
- - uses: python-semantic-release/publish-action@v9.18.0
579
+ - uses: python-semantic-release/publish-action@v9.19.0
580
580
  with:
581
581
  root_options: "-vv --noop"
582
582
 
@@ -684,7 +684,7 @@ to the GitHub Release Assets as well.
684
684
  - name: Action | Semantic Version Release
685
685
  id: release
686
686
  # Adjust tag with desired version if applicable.
687
- uses: python-semantic-release/python-semantic-release@v9.18.0
687
+ uses: python-semantic-release/python-semantic-release@v9.19.0
688
688
  with:
689
689
  github_token: ${{ secrets.GITHUB_TOKEN }}
690
690
  git_committer_name: "github-actions"
@@ -695,7 +695,7 @@ to the GitHub Release Assets as well.
695
695
  if: steps.release.outputs.released == 'true'
696
696
 
697
697
  - name: Publish | Upload to GitHub Release Assets
698
- uses: python-semantic-release/publish-action@v9.18.0
698
+ uses: python-semantic-release/publish-action@v9.19.0
699
699
  if: steps.release.outputs.released == 'true'
700
700
  with:
701
701
  github_token: ${{ secrets.GITHUB_TOKEN }}
@@ -744,7 +744,7 @@ The equivalent GitHub Action configuration would be:
744
744
 
745
745
  - name: Action | Semantic Version Release
746
746
  # Adjust tag with desired version if applicable.
747
- uses: python-semantic-release/python-semantic-release@v9.18.0
747
+ uses: python-semantic-release/python-semantic-release@v9.19.0
748
748
  with:
749
749
  github_token: ${{ secrets.GITHUB_TOKEN }}
750
750
  force: patch
@@ -772,13 +772,13 @@ Publish Action.
772
772
  .. code:: yaml
773
773
 
774
774
  - name: Release Project 1
775
- uses: python-semantic-release/python-semantic-release@v9.18.0
775
+ uses: python-semantic-release/python-semantic-release@v9.19.0
776
776
  with:
777
777
  directory: ./project1
778
778
  github_token: ${{ secrets.GITHUB_TOKEN }}
779
779
 
780
780
  - name: Release Project 2
781
- uses: python-semantic-release/python-semantic-release@v9.18.0
781
+ uses: python-semantic-release/python-semantic-release@v9.19.0
782
782
  with:
783
783
  directory: ./project2
784
784
  github_token: ${{ secrets.GITHUB_TOKEN }}
@@ -13,6 +13,8 @@ Guides
13
13
  ^^^^^^
14
14
 
15
15
  .. toctree::
16
+ :maxdepth: 2
17
+
16
18
  travis
17
19
  github-actions
18
20
  cronjobs
@@ -49,7 +49,7 @@ PSR provides two default changelog output formats:
49
49
  Both formats are kept in sync with one another to display the equivalent information
50
50
  in the respective format. The default changelog template is located in the
51
51
  ``data/templates/`` directory within the PSR package. The templates are written in
52
- modular style (ie. multiple files) and during the render proccess are ultimately
52
+ modular style (ie. multiple files) and during the render process are ultimately
53
53
  combined together to render the final changelog output. The rendering start point
54
54
  is the ``CHANGELOG.{FORMAT_EXT}.j2`` underneath the respective format directory.
55
55
 
@@ -71,8 +71,8 @@ A common and *highly-recommended* configuration option is the
71
71
  :ref:`changelog.exclude_commit_patterns <config-changelog-exclude_commit_patterns>`
72
72
  setting which allows the user to define regular expressions that will exclude commits
73
73
  from the changelog output. This is useful to filter out change messages that are not
74
- relevant to your external consumers (ex. ``ci`` and ``test`` in the angular commit
75
- convention) and only include the important changes that impact the consumer of your
74
+ relevant to your external consumers (ex. ``ci`` and ``test`` in the conventional commit
75
+ standard) and only include the important changes that impact the consumer of your
76
76
  software.
77
77
 
78
78
  Another important configuration option is the :ref:`changelog.mode <config-changelog-mode>`
@@ -144,7 +144,7 @@ newly created changelog file.
144
144
 
145
145
  .. tip::
146
146
  We have accomplished changelog updating through the use of the `Jinja`_ templating
147
- and addtional context filters and context variables. This is notable because
147
+ and additional context filters and context variables. This is notable because
148
148
  in the case that you want to customize your changelog template, you now can use the
149
149
  same logic to enable changelog updates of your custom template!
150
150
 
@@ -228,7 +228,7 @@ Configuration Examples
228
228
  }
229
229
  }
230
230
 
231
- 3. Goal: Configure an initializing reStructuredText changelog with filtered angular
231
+ 3. Goal: Configure an initializing reStructuredText changelog with filtered conventional
232
232
  commits patterns and merge commits within a custom config file ``releaserc.toml``.
233
233
 
234
234
  .. code:: toml
@@ -282,7 +282,7 @@ for defining a custom template directory):
282
282
  semantic-release --noop changelog --post-to-release-tag v1.0.0
283
283
 
284
284
  The default template provided by PSR will respect the
285
- :ref:`<config-changelog-default_templates-mask_initial_release>` setting and
285
+ :ref:`config-changelog-default_templates-mask_initial_release` setting and
286
286
  will also add a comparison link to the previous release if one exists without
287
287
  customization.
288
288
 
@@ -1220,7 +1220,7 @@ __ https://github.com/python-semantic-release/python-semantic-release/tree/maste
1220
1220
  maintain any content that should be included before the new release information.
1221
1221
  See ``data/templates/*/md/.components/changelog_update.md.j2`` for reference.
1222
1222
 
1223
- 5. **Print your insertion flag.** This is impartive to ensure that the resulting
1223
+ 5. **Print your insertion flag.** This is imperative to ensure that the resulting
1224
1224
  changelog can be updated in the future. See
1225
1225
  ``data/templates/*/md/.components/changelog_update.md.j2`` for reference.
1226
1226
 
@@ -272,8 +272,8 @@ the flag.
272
272
  This can be useful when making a single prerelease on a branch that would typically release
273
273
  normal versions.
274
274
 
275
- If not specified in :ref:`cmd-version-option-prerelease-token`, the prerelease token is idenitified using the
276
- :ref:`Multibranch Release Configuration <multibranch-releases-configuring>`
275
+ If not specified in :ref:`cmd-version-option-prerelease-token`, the prerelease token is identified
276
+ using the :ref:`Multibranch Release Configuration <multibranch-releases-configuring>`
277
277
 
278
278
  See the examples alongside :ref:`cmd-version-option-force-level` for how to use this flag.
279
279
 
@@ -282,8 +282,9 @@ See the examples alongside :ref:`cmd-version-option-force-level` for how to use
282
282
  ``--prerelease-token [VALUE]``
283
283
  ******************************
284
284
 
285
- Force the next version to use the value as the prerelease token. This overrides the configured value if one is
286
- present. If not used during a release producing a prerelease version, this option has no effect.
285
+ Force the next version to use the value as the prerelease token. This overrides the configured
286
+ value if one is present. If not used during a release producing a prerelease version, this
287
+ option has no effect.
287
288
 
288
289
  .. _cmd-version-option-build-metadata:
289
290
 
@@ -33,7 +33,7 @@ to handle your specific commit message style.
33
33
  features are added beyond the scope of the original commit message style guidelines.
34
34
 
35
35
  Other tools may not follow the same conventions as PSR's guideline extensions, so
36
- if you plan to use any similar programs in tadem with PSR, you should be aware of the
36
+ if you plan to use any similar programs in tandem with PSR, you should be aware of the
37
37
  differences in feature support and fall back to the official format guidelines if
38
38
  necessary.
39
39
 
@@ -48,27 +48,110 @@ Built-in Commit Parsers
48
48
 
49
49
  The following parsers are built in to Python Semantic Release:
50
50
 
51
- - :ref:`AngularCommitParser <commit_parser-builtin-angular>`
51
+ - :ref:`ConventionalCommitParser <commit_parser-builtin-conventional>`
52
+ - :ref:`AngularCommitParser <commit_parser-builtin-angular>` *(deprecated in v9.19.0)*
52
53
  - :ref:`EmojiCommitParser <commit_parser-builtin-emoji>`
53
54
  - :ref:`ScipyCommitParser <commit_parser-builtin-scipy>`
54
55
  - :ref:`TagCommitParser <commit_parser-builtin-tag>` *(deprecated in v9.12.0)*
55
56
 
56
57
  ----
57
58
 
59
+ .. _commit_parser-builtin-conventional:
60
+
61
+ Conventional Commits Parser
62
+ """""""""""""""""""""""""""
63
+
64
+ *Introduced in v9.19.0*
65
+
66
+ A parser that is designed to parse commits formatted according to the
67
+ `Conventional Commits Specification`_. The parser is implemented with the following
68
+ logic in relation to how PSR's core features:
69
+
70
+ - **Version Bump Determination**: This parser extracts the commit type from the subject
71
+ line of the commit (the first line of a commit message). This type is matched against
72
+ the configuration mapping to determine the level bump for the specific commit. If the
73
+ commit type is not found in the configuration mapping, the commit is considered a
74
+ non-parsable commit and will return it as a ParseError object and ultimately a commit
75
+ of type ``"unknown"``. The configuration mapping contains lists of commit types that
76
+ correspond to the level bump for each commit type. Some commit types are still valid
77
+ do not trigger a level bump, such as ``"chore"`` or ``"docs"``. You can also configure
78
+ the default level bump
79
+ :ref:`commit_parser_options.default_level_bump <config-commit_parser_options>` if desired.
80
+ To trigger a major release, the commit message body must contain a paragraph that begins
81
+ with ``BREAKING CHANGE:``. This will override the level bump determined by the commit type.
82
+
83
+ - **Changelog Generation**: PSR will group commits in the changelog by the commit type used
84
+ in the commit message. The commit type shorthand is converted to a more human-friendly
85
+ section heading and then used as the version section title of the changelog and release
86
+ notes. Under the section title, the parsed commit descriptions are listed out in full. If
87
+ the commit includes an optional scope, then the scope is prefixed on to the first line of
88
+ the commit description. If a commit has any breaking change prefixed paragraphs in the
89
+ commit message body, those paragraphs are separated out into a "Breaking Changes" section
90
+ in the changelog (Breaking Changes section is available from the default changelog in
91
+ v9.15.0). Each breaking change paragraph is listed in a bulleted list format across the
92
+ entire version. A single commit is allowed to have more than one breaking change
93
+ prefixed paragraph (as opposed to the `Conventional Commits Specification`_). Commits
94
+ with an optional scope and a breaking change will have the scope prefixed on to the
95
+ breaking change paragraph. Parsing errors will return a ParseError object and ultimately
96
+ a commit of type ``"unknown"``. Unknown commits are consolidated into an "Unknown" section
97
+ in the changelog by the default template. To remove unwanted commits from the changelog
98
+ that normally are placed in the "unknown" section, consider the use of the configuration
99
+ option :ref:`changelog.exclude_commit_patterns <config-changelog-exclude_commit_patterns>`
100
+ to ignore those commit styles.
101
+
102
+ - **Pull/Merge Request Identifier Detection**: This parser implements PSR's
103
+ :ref:`commit_parser-builtin-linked_merge_request_detection` to identify and extract
104
+ pull/merge request numbers. The parser will return a string value if a pull/merge
105
+ request number is found in the commit message. If no pull/merge request number is
106
+ found, the parser will return an empty string.
107
+
108
+ - **Linked Issue Identifier Detection**: This parser implements PSR's
109
+ :ref:`commit_parser-builtin-issue_number_detection` to identify and extract issue numbers.
110
+ The parser will return a tuple of issue numbers as strings if any are found in the commit
111
+ message. If no issue numbers are found, the parser will return an empty tuple.
112
+
113
+ - **Squash Commit Evaluation**: This parser implements PSR's
114
+ :ref:`commit_parser-builtin-squash_commit_evaluation` to identify and extract each commit
115
+ message as a separate commit message within a single squashed commit. You can toggle this
116
+ feature on/off via the :ref:`config-commit_parser_options` setting.
117
+
118
+ - **Release Notice Footer Detection**: This parser implements PSR's
119
+ :ref:`commit_parser-builtin-release_notice_footer_detection`, which is a custom extension
120
+ to traditional `Conventional Commits Specification`_ to use the ``NOTICE`` keyword as a git
121
+ footer to document additional release information that is not considered a breaking change.
122
+
123
+ **Limitations**:
124
+
125
+ - Commits with the ``revert`` type are not currently supported. Track the implementation
126
+ of this feature in the issue `#402`_.
127
+
128
+ If no commit parser options are provided via the configuration, the parser will use PSR's
129
+ built-in
130
+ :py:class:`defaults <semantic_release.commit_parser.conventional.ConventionalCommitParserOptions>`.
131
+
132
+ .. _#402: https://github.com/python-semantic-release/python-semantic-release/issues/402
133
+ .. _Conventional Commits Specification: https://www.conventionalcommits.org/en/v1.0.0
134
+
135
+ ----
136
+
58
137
  .. _commit_parser-builtin-angular:
59
138
 
60
139
  Angular Commit Parser
61
140
  """""""""""""""""""""
62
141
 
142
+ .. warning::
143
+ This parser was deprecated in ``v9.19.0``. It will be removed in a future release.
144
+ This parser is being replaced by the :ref:`commit_parser-builtin-conventional`.
145
+
63
146
  A parser that is designed to parse commits formatted according to the
64
147
  `Angular Commit Style Guidelines`_. The parser is implemented with the following
65
148
  logic in relation to how PSR's core features:
66
149
 
67
150
  - **Version Bump Determination**: This parser extracts the commit type from the subject
68
- line of the commit (the first line of a commit messsage). This type is matched against
151
+ line of the commit (the first line of a commit message). This type is matched against
69
152
  the configuration mapping to determine the level bump for the specific commit. If the
70
153
  commit type is not found in the configuration mapping, the commit is considered a
71
- non-conformative commit and will return it as a ParseError object and ultimately a commit
154
+ non-parsable commit and will return it as a ParseError object and ultimately a commit
72
155
  of type ``"unknown"``. The configuration mapping contains lists of commit types that
73
156
  correspond to the level bump for each commit type. Some commit types are still valid
74
157
  do not trigger a level bump, such as ``"chore"`` or ``"docs"``. You can also configure
@@ -129,10 +212,7 @@ If no commit parser options are provided via the configuration, the parser will
129
212
  built-in :py:class:`defaults <semantic_release.commit_parser.angular.AngularParserOptions>`.
130
213
 
131
214
  .. _#402: https://github.com/python-semantic-release/python-semantic-release/issues/402
132
- .. _#733: https://github.com/python-semantic-release/python-semantic-release/issues/733
133
- .. _#1085: https://github.com/python-semantic-release/python-semantic-release/issues/1085
134
215
  .. _Angular Commit Style Guidelines: https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#commits
135
- .. _PR#1112: https://github.com/python-semantic-release/python-semantic-release/pull/1112
136
216
 
137
217
  ----
138
218
 
@@ -151,7 +231,7 @@ commit messages. The parser is implemented with the following logic in relation
151
231
  how PSR's core features:
152
232
 
153
233
  - **Version Bump Determination**: This parser only looks for emojis in the subject
154
- line of the commit (the first line of a commit messsage). If more than one emoji is
234
+ line of the commit (the first line of a commit message). If more than one emoji is
155
235
  found, the emoji configured with the highest priority is selected for the change impact
156
236
  for the specific commit. The emoji with the highest priority is the one configured in the
157
237
  ``major`` configuration option, followed by the ``minor``, and ``patch`` in descending
@@ -209,7 +289,7 @@ Scipy Commit Parser
209
289
  """""""""""""""""""
210
290
 
211
291
  A parser that is designed to parse commits formatted according to the
212
- `Scipy Commit Style Guidlines`_. This is essentially a variation of the `Angular Commit Style
292
+ `Scipy Commit Style Guidelines`_. This is essentially a variation of the `Angular Commit Style
213
293
  Guidelines`_ with all different commit types. Because of this small variance, this parser
214
294
  only extends our :ref:`commit_parser-builtin-angular` parser with pre-defined scipy commit types
215
295
  in the default Scipy Parser Options and all other features are inherited.
@@ -217,7 +297,7 @@ in the default Scipy Parser Options and all other features are inherited.
217
297
  If no commit parser options are provided via the configuration, the parser will use PSR's
218
298
  built-in :py:class:`defaults <semantic_release.commit_parser.scipy.ScipyParserOptions>`.
219
299
 
220
- .. _Scipy Commit Style Guidlines: https://scipy.github.io/devdocs/dev/contributor/development_workflow.html#writing-the-commit-message
300
+ .. _Scipy Commit Style Guidelines: https://scipy.github.io/devdocs/dev/contributor/development_workflow.html#writing-the-commit-message
221
301
 
222
302
  ----
223
303
 
@@ -246,7 +326,7 @@ Common Linked Merge Request Detection
246
326
 
247
327
  All of the PSR built-in parsers implement common pull/merge request identifier detection
248
328
  logic to extract pull/merge request numbers from the commit message regardless of the
249
- VCS platform. The parsers evaluate the subject line for a paranthesis-enclosed number
329
+ VCS platform. The parsers evaluate the subject line for a parenthesis-enclosed number
250
330
  at the end of the line. PSR's parsers will return a string value if a pull/merge request
251
331
  number is found in the commit message. If no pull/merge request number is found, the
252
332
  parsers will return an empty string.
@@ -291,7 +371,7 @@ for your VCS. PSR supports the following case-insensitive prefixes and their con
291
371
  - implement (implements, implementing, implemented)
292
372
 
293
373
  PSR also allows for a more flexible approach to identifying more than one issue number without
294
- the need of extra git trailors (although PSR does support multiple git trailors). PSR support
374
+ the need of extra git trailers (although PSR does support multiple git trailers). PSR support
295
375
  various list formats which can be used to identify more than one issue in a list. This format
296
376
  will not necessarily work on your VCS. PSR currently support the following list formats:
297
377
 
@@ -343,7 +423,7 @@ a ``release_notices`` attribute that is a tuple of string paragraphs to identify
343
423
  release notice.
344
424
 
345
425
  In the default changelog and release notes template, these release notices will be
346
- formatted into their own section called **ADDITIONAL RELEASE INFORMATION**. Each will
426
+ formatted into their own section called **Additional Release Information**. Each will
347
427
  include any commit scope defined and each release notice in alphabetical order.
348
428
 
349
429
  ----
@@ -364,7 +444,7 @@ will be evaluated individually for both the level bump and changelog generation.
364
444
  squash commits are found, a list with the single commit object will be returned.
365
445
 
366
446
  Currently, PSR has been tested against GitHub, BitBucket, and official ``git`` squash
367
- merge commmit messages. GitLab does not have a default template for squash commit messages
447
+ merge commit messages. GitLab does not have a default template for squash commit messages
368
448
  but can be customized per project or server. If you are using GitLab, you will need to
369
449
  ensure that the squash commit message format is similar to the example below.
370
450
 
@@ -381,10 +461,10 @@ formatted squash commit message of conventional commit style:*
381
461
 
382
462
  * docs(configuration): defined new config option for the project
383
463
 
384
- When parsed with the default angular parser with squash commits toggled on, the version
385
- bump will be determined by the highest level bump of the three commits (in this case, a
386
- minor bump because of the feature commit) and the release notes would look similar to
387
- the following:
464
+ When parsed with the default conventional-commit parser with squash commits toggled on,
465
+ the version bump will be determined by the highest level bump of the three commits (in
466
+ this case, a minor bump because of the feature commit) and the release notes would look
467
+ similar to the following:
388
468
 
389
469
  .. code-block:: markdown
390
470
 
@@ -582,7 +662,8 @@ A subclass must implement the following:
582
662
  :py:class:`ParseResult <semantic_release.commit_parser.token.ParseResult>`, or a
583
663
  subclass of this.
584
664
 
585
- By default, the constructor for :py:class:`CommitParser <semantic_release.commit_parser._base.CommitParser>`
665
+ By default, the constructor for
666
+ :py:class:`CommitParser <semantic_release.commit_parser._base.CommitParser>`
586
667
  will set the ``options`` parameter on the ``options`` attribute of the parser, so there
587
668
  is no need to override this in order to access ``self.options`` during the ``parse``
588
669
  method. However, if you have any parsing logic that needs to be done only once, it may
@@ -610,5 +691,4 @@ Therefore, a custom commit parser could be implemented via:
610
691
  def parse(self, commit: git.objects.commit.Commit) -> semantic_release.ParseResult:
611
692
  ...
612
693
 
613
- .. _angular commit guidelines: https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#commits
614
694
  .. _gitpython-commit-object: https://gitpython.readthedocs.io/en/stable/reference.html#module-git.objects.commit
@@ -88,9 +88,12 @@ environment variable is:
88
88
  default = "default value"
89
89
 
90
90
  In this structure:
91
+
91
92
  * ``env`` represents the environment variable that Python Semantic Release will search for
93
+
92
94
  * ``default_env`` is a fallback environment variable to read in case the variable specified
93
95
  by ``env`` is not set. This is optional - if not specified then no fallback will be used.
96
+
94
97
  * ``default`` is a default value to use in case the environment variable specified by ``env``
95
98
  is not set. This is optional - if ``default`` is not specified then the environment variable
96
99
  specified by ``env`` is considered required.
@@ -105,7 +108,7 @@ configuration setting. If there are type mis-matches, PSR will throw validation
105
108
  If a setting is not provided, than PSR will fill in the value with the default value.
106
109
 
107
110
  Python Semantic Release expects a root level key to start the configuration definition. Make
108
- sure to use the correct root key dependending on the configuration format you are using.
111
+ sure to use the correct root key depending on the configuration format you are using.
109
112
 
110
113
  .. note:: If you are using ``pyproject.toml``, this heading should include the ``tool`` prefix
111
114
  as specified within PEP 517, resulting in ``[tool.semantic_release]``.
@@ -405,7 +408,7 @@ This setting is used to specify the output format the default changelog template
405
408
  will use when rendering the changelog. PSR supports both Markdown (``md``) and
406
409
  reStructuredText (``rst``) formats.
407
410
 
408
- This setting will take presendence over the file extension of the
411
+ This setting will take precedence over the file extension of the
409
412
  :ref:`config-changelog-default_templates-changelog_file` setting. If this setting is
410
413
  omitted, the file extension of the :ref:`config-changelog-default_templates-changelog_file`
411
414
  setting will be used to determine the output format. If the file extension is not recognized,
@@ -695,10 +698,6 @@ A string that will be used to identify where the new version should be inserted
695
698
  changelog file (as defined by :ref:`config-changelog-changelog_file`) when the changelog mode
696
699
  is set to ``update``.
697
700
 
698
- When the changelog mode is set to ``init``, this string will be included as part of the
699
- header of the changelog file to initialize the changelog with a format that will be condusive
700
- for future version insertions.
701
-
702
701
  If you modify this value in your config, you will need to manually update any saved changelog
703
702
  file to match the new insertion flag if you use the ``update`` mode. In ``init`` mode, the
704
703
  changelog file will be overwritten as normal.
@@ -790,7 +789,8 @@ Specify which commit parser Python Semantic Release should use to parse the comm
790
789
  within the Git repository.
791
790
 
792
791
  Built-in parsers:
793
- * ``angular`` - :ref:`AngularCommitParser <commit_parser-builtin-angular>`
792
+ * ``angular`` - :ref:`AngularCommitParser <commit_parser-builtin-angular>` *(deprecated in v9.19.0)*
793
+ * ``conventional`` - :ref:`ConventionalCommitParser <commit_parser-builtin-conventional>` *(available in v9.19.0+)*
794
794
  * ``emoji`` - :ref:`EmojiCommitParser <commit_parser-builtin-emoji>`
795
795
  * ``scipy`` - :ref:`ScipyCommitParser <commit_parser-builtin-scipy>`
796
796
  * ``tag`` - :ref:`TagCommitParser <commit_parser-builtin-tag>` *(deprecated in v9.12.0)*
@@ -800,7 +800,7 @@ your own commit parser in ``path/to/module_file.py:Class`` or ``module:Class`` f
800
800
 
801
801
  For more information see :ref:`commit-parsing`.
802
802
 
803
- **Default:** ``"angular"``
803
+ **Default:** ``"conventional"``
804
804
 
805
805
  ----
806
806
 
@@ -964,7 +964,7 @@ calls rather than the primary domain (ex. ``api.github.com``).
964
964
 
965
965
  **Most on-premise HVCS installations will NOT use this setting!** Whether or not
966
966
  this value is used depends on the HVCS configured (and your server administration)
967
- in the :ref:`remote.type <config-remote-type>` setting and used in tadem with the
967
+ in the :ref:`remote.type <config-remote-type>` setting and used in tandem with the
968
968
  :ref:`remote.domain <config-remote-domain>` setting.
969
969
 
970
970
  When using a custom :ref:`remote.domain <config-remote-domain>` and a HVCS
@@ -1057,7 +1057,7 @@ used for the connection. If the protocol scheme is provided in the field value,
1057
1057
  match this setting or it will throw an error.
1058
1058
 
1059
1059
  The purpose of this flag is to prevent any typos in provided ``domain`` and ``api_domain``
1060
- values that accidently specify an insecure connection but allow users to toggle the protection
1060
+ values that accidentally specify an insecure connection but allow users to toggle the protection
1061
1061
  scheme off when desired.
1062
1062
 
1063
1063
  **Default:** ``false``
@@ -140,9 +140,8 @@ Setting up commit parsing
140
140
  -------------------------
141
141
 
142
142
  We rely on commit messages to detect when a version bump is needed.
143
- By default, Python Semantic Release uses the
144
- `Angular style <https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#commits>`_.
145
- You can find out more about this in :ref:`commit-parsing`.
143
+ By default, Python Semantic Release uses the `Conventional Commits Specification`_
144
+ to parse commit messages. You can find out more about this in :ref:`commit-parsing`.
146
145
 
147
146
  .. seealso::
148
147
  - :ref:`config-branches` - Adding configuration for releases from multiple branches.
@@ -150,6 +149,8 @@ You can find out more about this in :ref:`commit-parsing`.
150
149
  For example, Python Semantic Release also ships with emoji and scipy-style parsers.
151
150
  - :ref:`remote.type <config-remote-type>` - specify the type of your remote VCS.
152
151
 
152
+ .. _Conventional Commits Specification: https://www.conventionalcommits.org/en/v1.0.0
153
+
153
154
  Setting up the changelog
154
155
  ------------------------
155
156
 
@@ -218,7 +219,7 @@ and changelogs. The user has three options to push changes to the repository:
218
219
  - :ref:`Changelog <config-changelog>` - customize your project's changelog.
219
220
  - :ref:`changelog-templates-custom_release_notes` - customize the published release notes
220
221
  - :ref:`upload_to_vcs_release <config-publish-upload_to_vcs_release>` -
221
- enable/disable uploading artefacts to VCS releases
222
+ enable/disable uploading artifacts to VCS releases
222
223
  - :ref:`version --vcs-release/--no-vcs-release <cmd-version-option-vcs-release>` - enable/disable VCS release
223
224
  creation.
224
225
  - `upload-to-gh-release`_, a GitHub Action for running ``semantic-release publish``
@@ -8,7 +8,7 @@ The internals have been changed significantly to better support highly-requested
8
8
  features and to streamline the maintenance of the project.
9
9
 
10
10
  As a result, certain things have been removed, reimplemented differently, or now
11
- exhibit different behaviour to earlier versions of Python Semantic Release. This
11
+ exhibit different behavior to earlier versions of Python Semantic Release. This
12
12
  page is a guide to help projects to ``pip install python-semantic-release>=8.0.0`` with
13
13
  fewer surprises.
14
14
 
@@ -19,12 +19,12 @@ Python Semantic Release GitHub Action
19
19
 
20
20
  .. _breaking-removed-artefact-upload:
21
21
 
22
- GitHub Action no longer publishes artefacts to PyPI or GitHub Releases
22
+ GitHub Action no longer publishes artifacts to PyPI or GitHub Releases
23
23
  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
24
24
 
25
25
  Python Semantic Release no longer uploads distributions to PyPI - see
26
26
  :ref:`breaking-commands-repurposed-version-and-publish`. If you are
27
- using Python Semantic Release to publish release notes and artefacts to
27
+ using Python Semantic Release to publish release notes and artifacts to
28
28
  GitHub releases, there is a new GitHub Action `upload-to-gh-release`_
29
29
  which will perform this action for you.
30
30
 
@@ -143,7 +143,7 @@ Repurposing of ``version`` and ``publish`` commands
143
143
  """""""""""""""""""""""""""""""""""""""""""""""""""
144
144
  Python Semantic Release's primary purpose is to enable automation of correct semantic
145
145
  versioning for software projects. Over the years, this automation has been extended to
146
- include other actions such as building/publishing the project and its artefacts to
146
+ include other actions such as building/publishing the project and its artifacts to
147
147
  artefact repositories, creating releases in remote version control systems, and writing
148
148
  changelogs.
149
149
 
@@ -152,9 +152,9 @@ performing every piece of automation provided. This has been changed - the ``ver
152
152
  command now handles determining the next version, applying the changes to the project
153
153
  metadata according to the configuration, writing a changelog, and committing/pushing
154
154
  changes to the remote Git repository. It also handles creating a release in the remote
155
- VCS. It does *not* publish software artefacts to remote repositories such as PyPI;
155
+ VCS. It does *not* publish software artifacts to remote repositories such as PyPI;
156
156
  the rationale behind this decision is simply that under the hood, Python Semantic Release
157
- used `twine`_ to upload artefacts to package indexes such as PyPI, and it's recommended
157
+ used `twine`_ to upload artifacts to package indexes such as PyPI, and it's recommended
158
158
  to use twine directly via the command-line. From the twine
159
159
  `documentation <https://twine.readthedocs.io/en/stable/contributing.html#architectural-overview>`_:
160
160
 
@@ -162,7 +162,7 @@ to use twine directly via the command-line. From the twine
162
162
 
163
163
  As a result Python Semantic Release no longer depends on twine internals.
164
164
 
165
- The ``publish`` command now handles publishing software artefacts to releases in the
165
+ The ``publish`` command now handles publishing software artifacts to releases in the
166
166
  remote version control system.
167
167
 
168
168
  .. _twine: https://twine.readthedocs.io/en/stable
@@ -477,17 +477,17 @@ tag ``v1.1.4``, you should run::
477
477
 
478
478
  semantic-release changelog --post-to-release-tag v1.1.4
479
479
 
480
- .. _breaking-changelog-customisation:
480
+ .. _breaking-changelog-customization:
481
481
 
482
- Changelog customisation
482
+ Changelog customization
483
483
  """""""""""""""""""""""
484
484
 
485
- A number of options relevant to customising the changelog have been removed. This is
485
+ A number of options relevant to customizing the changelog have been removed. This is
486
486
  because Python Semantic Release now supports authoring a completely custom `Jinja`_
487
487
  template with the contents of your changelog.
488
488
  Historically, the number of options added to Python Semantic Release in order to
489
- allow this customisation has grown significantly; it now uses templates in order to
490
- fully open up customising the changelog's appearance.
489
+ allow this customization has grown significantly; it now uses templates in order to
490
+ fully open up customizing the changelog's appearance.
491
491
 
492
492
  .. _Jinja: https://jinja.palletsprojects.com/en/3.1.x/
493
493
 
@@ -499,7 +499,7 @@ Configuration
499
499
 
500
500
  The configuration structure has been completely reworked, so you should read
501
501
  :ref:`configuration` carefully during the process of upgrading to v8+. However,
502
- some common pitfalls and potential sources of confusion are summarised here.
502
+ some common pitfalls and potential sources of confusion are summarized here.
503
503
 
504
504
  .. _breaking-configuration-setup-cfg-unsupported:
505
505
 
@@ -520,7 +520,7 @@ needs.
520
520
  .. warning::
521
521
 
522
522
  If you don't already have a ``pyproject.toml`` configuration file, ``pip`` can
523
- change its behaviour once you add one, as a result of `PEP-517`_. If you find
523
+ change its behavior once you add one, as a result of `PEP-517`_. If you find
524
524
  that this breaks your packaging, you can add your Python Semantic Release
525
525
  configuration to a separate file such as ``semantic-release.toml``, and use
526
526
  the :ref:`--config <cmd-main-option-config>` option to reference this alternative
@@ -539,7 +539,7 @@ Commit parser options
539
539
 
540
540
  Options such as ``major_emoji``, ``parser_angular_patch_types`` or
541
541
  ``parser_angular_default_level_bump`` have been removed. Instead, these have been
542
- replaced with a single set of recognised commit parser options, ``allowed_tags``,
542
+ replaced with a single set of recognized commit parser options, ``allowed_tags``,
543
543
  ``major_tags``, ``minor_tags``, and ``patch_tags``, though the interpretation of
544
544
  these is up to the specific parsers in use. You can read more detail about using
545
545
  commit parser options in :ref:`commit_parser_options <config-commit_parser_options>`,
@@ -45,12 +45,12 @@ a situation may occur in the following scenario:
45
45
  Suppose that Python Semantic Release has been configured to use the same
46
46
  prerelease token ``"alpha"`` for all ``feature-*`` branches, and the default tag
47
47
  format ``"v{version}"``. In this case, running a pre-release from branch ``feature-1``
48
- will recognise that since the last release, ``1.1.0``, a **feature** has been
48
+ will recognize that since the last release, ``1.1.0``, a **feature** has been
49
49
  introduced and therefore the next tag to be applied to ``feature-1`` will be
50
50
  ``v1.2.0-alpha.1``.
51
51
 
52
52
  However, suppose we then try to run a release against ``feature-2``. This will also
53
- recognise that a **feature** has been introduced against the last released version of
53
+ recognize that a **feature** has been introduced against the last released version of
54
54
  ``v1.1.0`` and therefore will try to create the tag ``v1.2.0-alpha.1``, leading to an
55
55
  error as this tag was already created against ``feature-1``.
56
56
 
@@ -91,7 +91,7 @@ Each release group is configured as a nested mapping under the
91
91
  ``tool.semantic_release.branches`` key in ``pyproject.toml``, or the equivalent
92
92
  structure in other formats. the mapping requires a single key that is used as a
93
93
  name for the release group, which can help to identify it in log messages but has
94
- no effect on the behaviour of the release. For example, Python Semantic Release has
94
+ no effect on the behavior of the release. For example, Python Semantic Release has
95
95
  only one release group by default with the name ``main``.
96
96
 
97
97
  Inside each release group, the following key-value pairs can be set:
@@ -4,7 +4,7 @@ Strict Mode
4
4
  ===========
5
5
 
6
6
  Strict Mode is enabled by use of the :ref:`strict <cmd-main-option-strict>` parameter
7
- to the main command for Python Semantic Release. Strict Mode alters the behaviour of
7
+ to the main command for Python Semantic Release. Strict Mode alters the behavior of
8
8
  Python Semantic Release when certain conditions are encountered that prevent Python
9
9
  Semantic Release from performing an action. Typically, this will result in a warning
10
10
  becoming an error, or a different exit code (0 vs non-zero) being produced when Python