DEVX-53: Make PyPI publish failures non-fatal so Gitea release is always created #82

Merged
emil merged 0 commits from DEVX-53-non-fatal-pypi-publish into master 2026-06-25 21:39:13 +00:00
Owner

Problem

The tag-triggered publish.yml failed with InvalidDistribution: Invalid distribution metadata: unrecognized or malformed field 'license-file'. This blocked the Gitea release creation entirely.

While the post-merge publish step (DEVX-52) did create the Gitea release, the publish.yml workflow should also succeed — or at least not fail the job — when PyPI upload fails for any reason.

Fix

Wrap the PyPI/Gitea registry publish in a try/except that logs the error and continues to Gitea release creation. The Gitea release with release notes is the guarantee — PyPI publish is secondary and can fail for various reasons (409 Conflict, InvalidDistribution metadata, network issues).

Closes DEVX-53

## Problem The tag-triggered `publish.yml` failed with `InvalidDistribution: Invalid distribution metadata: unrecognized or malformed field 'license-file'`. This blocked the Gitea release creation entirely. While the post-merge publish step (DEVX-52) did create the Gitea release, the `publish.yml` workflow should also succeed — or at least not fail the job — when PyPI upload fails for any reason. ## Fix Wrap the PyPI/Gitea registry publish in a try/except that logs the error and continues to Gitea release creation. The Gitea release with release notes is the guarantee — PyPI publish is secondary and can fail for various reasons (409 Conflict, InvalidDistribution metadata, network issues). Closes DEVX-53
emil added the ready-to-merge label 2026-06-25 21:30:13 +00:00
emil reviewed 2026-06-25 21:30:44 +00:00
emil left a comment
Author
Owner

Automated PR Review

  • Architecture compliance: OK
  • Best practices: OK
  • Security: OK
  • i18n: OK
  • Resource management: OK
  • Documentation: WARNING — source files changed but no docs updated
  • Tests: OK
  • Commit conventions: OK

No issues found by automated checks.


Auto-merge: If all CI checks pass, this PR will be merged automatically.

## Automated PR Review - Architecture compliance: OK - Best practices: OK - Security: OK - i18n: OK - Resource management: OK - Documentation: WARNING — source files changed but no docs updated - Tests: OK - Commit conventions: OK No issues found by automated checks. --- **Auto-merge:** If all CI checks pass, this PR will be merged automatically.
emil changed title from DEVX-53: Make PyPI publish failures non-fatal to DEVX-53: Make PyPI publish failures non-fatal so Gitea release is always created 2026-06-25 21:37:55 +00:00
emil reviewed 2026-06-25 21:38:39 +00:00
emil left a comment
Author
Owner

Automated PR Review

  • Architecture compliance: OK
  • Best practices: OK
  • Security: OK
  • i18n: OK
  • Resource management: OK
  • Documentation: WARNING — source files changed but no docs updated
  • Tests: OK
  • Commit conventions: OK

No issues found by automated checks.


Auto-merge: If all CI checks pass, this PR will be merged automatically.

## Automated PR Review - Architecture compliance: OK - Best practices: OK - Security: OK - i18n: OK - Resource management: OK - Documentation: WARNING — source files changed but no docs updated - Tests: OK - Commit conventions: OK No issues found by automated checks. --- **Auto-merge:** If all CI checks pass, this PR will be merged automatically.
emil merged commit 8affccfa35 into master 2026-06-25 21:39:13 +00:00
emil deleted branch DEVX-53-non-fatal-pypi-publish 2026-06-25 21:39:13 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: oblachno-oss/devx#82