Skip to content

Conversation

@BYK
Copy link
Member

@BYK BYK commented Jan 9, 2026

Summary

This PR migrates from the deprecated action-prepare-release to the new Craft GitHub Actions.

Changes

  • Migrated .github/workflows/release_binary.yml to Craft reusable workflow
  • Updated .craft.yml with versioning.policy: calver

Documentation

See https://getsentry.github.io/craft/github-actions/ for more information.

@BYK BYK requested a review from a team as a code owner January 9, 2026 17:57
This PR migrates from the deprecated action-prepare-release to the new
Craft GitHub Actions (reusable workflow or composite action).

Changes:
- Migrate .github/workflows/release_library.yml to Craft reusable workflow
@BYK BYK force-pushed the ci/migrate-to-craft-action branch from 64b9e3e to 1736a75 Compare January 9, 2026 17:57
@github-actions
Copy link

github-actions bot commented Jan 9, 2026

Semver Impact of This PR

🟢 Patch (bug fixes)

📋 Changelog Preview

This is how your changes will appear in the changelog.
Entries from this PR are highlighted with a left border (blockquote style).


New Features ✨

  • (config) Allow loading config values from a file by Dav1dde in #5531
  • (eap) Add support for native scalar arrays by Dav1dde in #5394

Bug Fixes 🐛

  • (event-normalization) Also normalize trace context as well as all spans by constantinius in #5515
  • (spans) Mark root spans as segments in OTel conversion by mjq in #5532
  • (store) Flip byte order of UUIDs by jjbayer in #5526

Build / dependencies / internal 🔧

  • (deps) Update rdkafka to 0.38 with librdkafka 2.10 by Dav1dde in #5523
  • (profile-chunks) Move profile chunks to new processing pipeline by Dav1dde in #5505
  • (release) Switch from action-prepare-release to Craft by BYK in #5527
  • (server) Return status code 413 if envelope is rejected due to size limits by Dav1dde in #5474
  • (spans) Add additional tags to usage/count per root by Dav1dde in #5511

🤖 This preview updates automatically when you update the PR.

BYK added 2 commits January 9, 2026 23:04
The previous migration incorrectly removed the GitHub App token
authentication step. This commit restores it by switching to the
composite action pattern which preserves the auth flow.
The previous migration incorrectly removed the GitHub App token
authentication step. This commit restores it by switching to the
composite action pattern which preserves the auth flow.
Comment on lines 1 to 17
name: Changelog Preview
on:
pull_request:
types:
- opened
- synchronize
- reopened
- edited
- labeled
permissions:
contents: write
pull-requests: write

jobs:
changelog-preview:
uses: getsentry/craft/.github/workflows/changelog-preview.yml@v2
secrets: inherit
Copy link
Member

Choose a reason for hiding this comment

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

I don't think we want this, also it does not use the changelog.md we actually curate.

Copy link
Member Author

Choose a reason for hiding this comment

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

Yeah this only makes sense if you are using automated changelogs. Happy to remove but I also recommend giving automated changelogs a shot. It allows curation too: https://getsentry.github.io/craft/configuration/#custom-changelog-entries-from-pr-descriptions

Copy link
Member

Choose a reason for hiding this comment

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

I am interested about the automated snapshots, but I'd like to review/look into that separately. From your presentation it sounds like the automated changelogs can possibly do what we're interested in now, but we still have a few workflows tied to the manual process.

Comment on lines 41 to 44
with:
version: ${{ github.event.inputs.version }}
force: ${{ github.event.inputs.force }}
version: ${{ inputs.version }}
force: ${{ inputs.force }}
calver: true

This comment was marked as outdated.

Copy link
Member Author

Choose a reason for hiding this comment

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

@Dav1dde do we still have calver + semver in Relay

Copy link
Member

@Dav1dde Dav1dde Jan 12, 2026

Choose a reason for hiding this comment

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

Calver for self-hosted and binary releases, semver for (Python) library releases

Comment on lines 30 to 37
- name: Prepare release
uses: getsentry/craft@1c58bfd57bfd6a967b6f3fc92bead2c42ee698ce # v2
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:
version: ${{ inputs.version }}
force: ${{ inputs.force }}
path: py

This comment was marked as outdated.

Comment on lines 38 to 44
uses: getsentry/craft@1c58bfd57bfd6a967b6f3fc92bead2c42ee698ce # v2
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:
version: ${{ github.event.inputs.version }}
force: ${{ github.event.inputs.force }}
version: ${{ inputs.version }}
force: ${{ inputs.force }}
calver: true

This comment was marked as outdated.

Comment on lines 30 to 37
- name: Prepare release
uses: getsentry/craft@1c58bfd57bfd6a967b6f3fc92bead2c42ee698ce # v2
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:
version: ${{ inputs.version }}
force: ${{ inputs.force }}
path: py

This comment was marked as outdated.

Comment on lines 32 to 35
uses: getsentry/craft@1c58bfd57bfd6a967b6f3fc92bead2c42ee698ce
env:
GITHUB_TOKEN: ${{ steps.token.outputs.token }}
with:

This comment was marked as outdated.

- /^relay-Windows-x86_64-pdb.zip$/
- /^relay-Windows-x86_64\.exe$/
versioning:
policy: calver
Copy link

Choose a reason for hiding this comment

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

Global calver policy incorrectly applies to semver library releases

Medium Severity

The global versioning.policy: calver setting in .craft.yml applies to all releases, but the Python library releases (via release_library.yml with path: py) require semver versioning according to the PR discussion. The library release workflow has no mechanism to override this global calver policy, potentially causing version validation issues or incorrect version handling for Python library releases.

Additional Locations (1)

Fix in Cursor Fix in Web

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