Skip to content

Decouple Moldflow API public PyPI publish from GitHub Release - #85

Merged
sankalps0549 merged 3 commits into
release/27from
shrivas/im-14373
Aug 14, 2026
Merged

Decouple Moldflow API public PyPI publish from GitHub Release#85
sankalps0549 merged 3 commits into
release/27from
shrivas/im-14373

Conversation

@sankalps0549

@sankalps0549 sankalps0549 commented Aug 13, 2026

Copy link
Copy Markdown
Collaborator

Description

Decouples the public PyPI publish from GitHub Release creation so that the Moldflow monorepo can consume the wheel (from GitHub Releases) before PyPI goes live. This avoids customers on 2027 FCS seeing pip upgrade prompts for API versions their installed client doesn't support yet.

Changes:

  • Split publish.yml into two workflows: github-release.yml (creates GH Release with wheel) and pypi-publish.yml (downloads wheel from GH Release, uploads to PyPI)
  • github-release.yml includes a duplicate-release guard (fails if tag already exists)
  • pypi-publish.yml includes a PyPI ordering guard (blocks publishing a newer version when older GitHub Releases haven't been published to PyPI yet)
  • Removed the weekly check-publish-alignment.yml cron (replaced by publish-time check)
  • Updated RELEASE.md to document the two-step process and ordering rules

Type of change

  • New feature (non-breaking change which adds functionality)
  • Documentation update

Checklist

  • I have read the CONTRIBUTING document
  • My code follows the style guidelines of this project
  • I have updated the documentation accordingly
  • I have added a note to CHANGELOG.md describing my changes
  • Any dependent changes have been merged and published

Testing

N/A — CI workflow changes are validated by GitHub Actions on trigger; no local unit tests apply.

Additional Notes

This is part of a coordinated change across the Moldflow monorepo and the public API repo. The monorepo side consumes the wheel from GitHub Releases via a CMake download step, so the GitHub Release must be created first, and PyPI publishing follows as a separate manual step once the monorepo release is confirmed.

Split publish.yml into github-release.yml and pypi-publish.yml. Add PyPI ordering guard that blocks publishing newer versions before older ones are on PyPI. Update RELEASE.md to document two-step release process.
@sankalps0549
sankalps0549 requested a review from osinjoku August 13, 2026 21:37
@sankalps0549 sankalps0549 changed the title [IM-14373] Decouple Moldflow API public PyPI publish from GitHub Release Decouple Moldflow API public PyPI publish from GitHub Release Aug 13, 2026
@sankalps0549
sankalps0549 marked this pull request as ready for review August 13, 2026 21:43

@osinjoku osinjoku left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Decoupling looks correct: github-release.yml builds and archives the wheel on a GitHub Release first, and pypi-publish.yml downloads those assets and uploads to PyPI without rebuilding. This supports the monorepo consuming the GitHub Release before PyPI goes live. Tag vs version.json drift on long-lived release branches is expected and not a functional concern.

@sankalps0549
sankalps0549 merged commit a4f59c0 into release/27 Aug 14, 2026
23 checks passed
@sankalps0549
sankalps0549 deleted the shrivas/im-14373 branch August 14, 2026 08:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants