python-semantic-release 8.5.0__py3-none-any.whl → 8.5.1__py3-none-any.whl

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: python-semantic-release
3
- Version: 8.5.0
3
+ Version: 8.5.1
4
4
  Summary: Automatic Semantic Versioning for Python projects
5
5
  Author-email: Rolf Erik Lekang <me@rolflekang.com>
6
6
  License: MIT
@@ -1,4 +1,4 @@
1
- semantic_release/__init__.py,sha256=mZv0KfaVUjhp5JP7nESRhzdRnuRyiOZXcIndN5xkwkg,869
1
+ semantic_release/__init__.py,sha256=h4PInIymV8KWgZouPza-6Yl57L0hzg0Y-5q5ISvOMT0,869
2
2
  semantic_release/__main__.py,sha256=vXOARLV7KHeVXgpOMU0Q-8wovpdsOrtTsycxulI5xIE,106
3
3
  semantic_release/const.py,sha256=Z1o2QNh60wSLeF-_1TemMBjU3ZXbV0XghnUFsbTVfOs,831
4
4
  semantic_release/enums.py,sha256=D5B_reQGGKQQT22HO5PUtvn2Bok3fkht6TfJtXkmAUg,1020
@@ -10,7 +10,7 @@ semantic_release/changelog/release_history.py,sha256=lphD64zgbE7IBhWoNsXP4uHOXBT
10
10
  semantic_release/changelog/template.py,sha256=Vzsc2dN4_6RuykELN8lqEc4L9Gw6ibpiq4oB36kUoOU,4649
11
11
  semantic_release/cli/__init__.py,sha256=gwAYhZO-4TR0tKCkQ4GqutWsL--0CII2_dcbrElI4M4,419
12
12
  semantic_release/cli/common.py,sha256=gmMdTjTyFa6b1ISlIeljgX1UheRwmwwaoIZcXrlAOPU,1401
13
- semantic_release/cli/config.py,sha256=l8oTHYzj7b-5GWonOiUkzEVCqn9-fQJ4Sajhuh4yyno,13198
13
+ semantic_release/cli/config.py,sha256=tJz6K2Pn4Jd0jW_4LecxvEMNo9w3RdHGp-p1eqk-QZo,13463
14
14
  semantic_release/cli/const.py,sha256=S8oNNpSaKdZxcAs7PAKEjQHic0czoJBGd7XHo57FOzw,39
15
15
  semantic_release/cli/github_actions_output.py,sha256=stGWcuMtelY0qM2E_-IfofP6UvsQ6czsO7qpMfnRJI4,2102
16
16
  semantic_release/cli/masking_filter.py,sha256=DxqjiJyABlzwwwZ1r8JGQpb6QrF00StJFm0-2-s5Fv0,3071
@@ -20,7 +20,7 @@ semantic_release/cli/commands/changelog.py,sha256=sc-unuM2-qtLspJIu2lv-Xh-wm42io
20
20
  semantic_release/cli/commands/generate_config.py,sha256=KHS_37300JGyROMxXVm9Oper51GVRnI9EET3_21aJkc,1481
21
21
  semantic_release/cli/commands/main.py,sha256=bJKQbgfzb7cti4IxMhjZ_HoCF7O3UNnJJB9yPyBuCIQ,4957
22
22
  semantic_release/cli/commands/publish.py,sha256=CvhZ4Z8CTPS-4f7kWH-xJ5JTk3jlJ-p8Mg7y2KC4SnY,1492
23
- semantic_release/cli/commands/version.py,sha256=GGbrdmwc8biXMbHbz36_tXJe9LHbhOOZmdc6HQvd-V8,19785
23
+ semantic_release/cli/commands/version.py,sha256=a3DzUouLAIZCimmw_Es_DV-woPKc0JCUXZhd45oFzog,20820
24
24
  semantic_release/commit_parser/__init__.py,sha256=cv5HFBdw7OJd4Laj4Ex8ZZ5Tml8GwXgQcXW6Pasr2Ao,615
25
25
  semantic_release/commit_parser/_base.py,sha256=kVczeF1EDNobNHy3PuE9Q3wboKhHIK7tAjL4uftwICo,2611
26
26
  semantic_release/commit_parser/angular.py,sha256=7kp-vo3hpShHC3X3TZKHiOyXI_grLHn1hZ8L8bI3gC8,4392
@@ -43,10 +43,10 @@ semantic_release/version/algorithm.py,sha256=qnBAOgp97SDKqRUpVF3oWqd9nhjNPnnGbV3
43
43
  semantic_release/version/declaration.py,sha256=f6Ld7hIhrqvDrRBapJHr-KDimuyo-4IG8009Zu9BIgU,7357
44
44
  semantic_release/version/translator.py,sha256=P1noIsVBn8u6zNOFjG0xKYOWapxqf_PHSMvMeLJ9kXg,3050
45
45
  semantic_release/version/version.py,sha256=Ki-aHHEYsIecstLaF2XQD139veLfeBRRrKp3Jx_iETE,14178
46
- python_semantic_release-8.5.0.dist-info/AUTHORS.rst,sha256=XOReVvpymEFUPsS2QPH97jlfJBVrxwS2eu8-jVAe4gk,230
47
- python_semantic_release-8.5.0.dist-info/LICENSE,sha256=NE85nszX252sdQdu0xgS9qwfYES0k8qS6gW3uO4jRGE,1083
48
- python_semantic_release-8.5.0.dist-info/METADATA,sha256=XlRGK1n66cLxbFMf1Pn1a3NBtVYHdD-awcMnPMqpixQ,5325
49
- python_semantic_release-8.5.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
50
- python_semantic_release-8.5.0.dist-info/entry_points.txt,sha256=qojUBx_Ywf4u7KgP6NWlDaBDymZVUGQ7m5wF2duC2F0,95
51
- python_semantic_release-8.5.0.dist-info/top_level.txt,sha256=qYA24nyg3eP-ti5UW7Vuj2aXVmM0wqVHx4mREdRZNAA,17
52
- python_semantic_release-8.5.0.dist-info/RECORD,,
46
+ python_semantic_release-8.5.1.dist-info/AUTHORS.rst,sha256=XOReVvpymEFUPsS2QPH97jlfJBVrxwS2eu8-jVAe4gk,230
47
+ python_semantic_release-8.5.1.dist-info/LICENSE,sha256=NE85nszX252sdQdu0xgS9qwfYES0k8qS6gW3uO4jRGE,1083
48
+ python_semantic_release-8.5.1.dist-info/METADATA,sha256=a7IT0_X5dMsJMkFJ4qWZSQrdRcsLGuo5j4bosaEnYx4,5325
49
+ python_semantic_release-8.5.1.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
50
+ python_semantic_release-8.5.1.dist-info/entry_points.txt,sha256=qojUBx_Ywf4u7KgP6NWlDaBDymZVUGQ7m5wF2duC2F0,95
51
+ python_semantic_release-8.5.1.dist-info/top_level.txt,sha256=qYA24nyg3eP-ti5UW7Vuj2aXVmM0wqVHx4mREdRZNAA,17
52
+ python_semantic_release-8.5.1.dist-info/RECORD,,
@@ -23,7 +23,7 @@ from semantic_release.version import (
23
23
  tags_and_versions,
24
24
  )
25
25
 
26
- __version__ = "8.5.0"
26
+ __version__ = "8.5.1"
27
27
 
28
28
 
29
29
  def setup_hook(argv: list[str]) -> None:
@@ -9,6 +9,7 @@ from typing import TYPE_CHECKING, ContextManager, Iterable
9
9
 
10
10
  import click
11
11
  import shellingham # type: ignore[import]
12
+ from git.exc import GitCommandError
12
13
 
13
14
  from semantic_release.changelog import ReleaseHistory, environment, recursive_render
14
15
  from semantic_release.changelog.context import make_changelog_context
@@ -369,7 +370,15 @@ def version( # noqa: C901
369
370
  )
370
371
 
371
372
  elif commit_changes:
372
- repo.git.add(all_paths_to_add)
373
+ # TODO: in future this loop should be 1 line:
374
+ # repo.index.add(all_paths_to_add, force=False)
375
+ # but since 'force' is deliberally ineffective (as in docstring) in gitpython 3.1.18
376
+ # we have to do manually add each filepath, and catch the exception if it is an ignored file
377
+ for updated_path in all_paths_to_add:
378
+ try:
379
+ repo.git.add(updated_path)
380
+ except GitCommandError:
381
+ log.warning("Failed to add path (%s) to index", updated_path)
373
382
 
374
383
  rh = ReleaseHistory.from_git_history(
375
384
  repo=repo,
@@ -435,7 +444,15 @@ def version( # noqa: C901
435
444
  )
436
445
  elif commit_changes:
437
446
  # Anything changed here should be staged.
438
- repo.git.add(updated_paths)
447
+ # TODO: in future this loop should be 1 line:
448
+ # repo.index.add(updated_paths, force=False)
449
+ # but since 'force' is deliberally ineffective (as in docstring) in gitpython 3.1.18
450
+ # we have to do manually add each filepath, and catch the exception if it is an ignored file
451
+ for updated_path in updated_paths:
452
+ try:
453
+ repo.git.add(updated_path)
454
+ except GitCommandError:
455
+ log.warning("Failed to add path (%s) to index", updated_path)
439
456
 
440
457
  def custom_git_environment() -> ContextManager[None]:
441
458
  """
@@ -257,8 +257,18 @@ class RuntimeContext:
257
257
  ##
258
258
  # credentials masking for logging
259
259
  masker = MaskingFilter(_use_named_masks=raw.logging_use_named_masks)
260
+
261
+ try:
262
+ active_branch = repo.active_branch.name
263
+ except TypeError as err:
264
+ raise NotAReleaseBranch(
265
+ "Detached HEAD state cannot match any release groups; "
266
+ "no release will be made"
267
+ ) from err
268
+
260
269
  # branch-specific configuration
261
- branch_config = cls.select_branch_options(raw.branches, repo.active_branch.name)
270
+ branch_config = cls.select_branch_options(raw.branches, active_branch)
271
+
262
272
  # commit_parser
263
273
  commit_parser_cls = (
264
274
  _known_commit_parsers[raw.commit_parser]