fix: release full rebuild#10
Merged
Merged
Conversation
daveomri
marked this pull request as ready for review
May 26, 2026 13:53
There was a problem hiding this comment.
Pull request overview
Refactors the release automation from GitHub Release publication events to a manual workflow_dispatch release flow, aligning stable releases with the changelog/version bump and PyPI publishing pipeline used by related Apify Python packages.
Changes:
- Rebuilds
release.ymlaround manual release inputs, changelog updates, GitHub release creation, and PyPI publishing from the post-bump commit. - Updates prerelease/code-check workflows to use
apify/workflows@v0.45.0and adjusts prerelease permissions/skip logic. - Expands release documentation for stable and beta release behavior.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
CONTRIBUTING.md |
Documents the new stable and beta release process. |
.github/workflows/run_code_checks.yml |
Pins reusable check workflows to apify/workflows@v0.45.0. |
.github/workflows/release.yml |
Replaces release-event publishing with a manual stable release pipeline. |
.github/workflows/pre_release.yml |
Updates prerelease gating, permissions, and reusable workflow pin. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
drobnikj
approved these changes
May 27, 2026
drobnikj
left a comment
Member
There was a problem hiding this comment.
Two notes, but pre approving
…e validation checks
… from main branch in apify repository
Jakub-Vacek
approved these changes
May 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Refactors the release pipeline to the
workflow_dispatchshape used bylangchain-apifyandcrawlee-python, replacing the originalrelease: published(manual tag) flow.Why the first attempt used manual tags: the ticket said "Cut release v0.1.0 via GitHub Releases", which I read as the Releases UI flow. CI passed; it looked correct.
What broke on the v0.1.0 publish:
update_changelog(in reusable workflowapify/workflows/.../python_bump_and_update_changelog.yaml) failed withYou are not currently on a branch.actions/checkout@v6defaults togithub.ref→ onrelease: publishedthat's the tag → HEAD detached.apify/actions/signed-commit@v1.0.0runsgit pull --rebase --autostash, which can't operate detached.push/workflow_dispatch, false forrelease: published).Why rebuild instead of just disabling
update_changelog: the minimal fix means bumpingpyproject.toml/CHANGELOG.mdby hand every release: compounding tech debt and a growing diff againstlangchain-apify. Mirroring the canonical shape now keeps the full flow automated.Changes
release.yml: full rebuild:workflow_dispatchwithrelease_type(auto/custom/patch/minor/major) +custom_versioninputs; fail-fast validation on emptycustom_version.update_changelogjob: bumpspyproject.toml, writesCHANGELOG.md, commits tomainviaapify/actions/signed-commit(works becauseworkflow_dispatchfrommainkeeps HEAD attached).create_github_releasejob usingsoftprops/action-gh-release@v2.publish_to_pypichecks out the post-bumpchangelog_commitishand is serialized aftercreate_github_release→ tag, release page, and wheel all anchor to the same SHA; no wheel-without-tag failure mode.permissions:block on every write job.pre_release.yml:docs:/ci:skip gate to require conventional-commit colon or scope paren (no more false positives ondocumentation helper).release_metadatafor git-cliff PR/issue context.publish_to_pypitocontents: read.All workflows: pinned
apify/workflows/.../*.yamlto@v0.45.0(per upstream recommendation), replacing SHA pins and@main.CONTRIBUTING.md: rewrote Releases section; added "How beta and stable releases compose" subsection on thechangelog_commitishchain..gitignore: local-only dev paths (.personal_testing/,.claude/, doc drafts,poetry.lock).Test plan
CI-only change; no package code modified.
apify/workflows@v0.45.0,apify/actions@v1.1.2) re-verified against passed inputs/outputsneeds:, parallel jobs gate the same prerequisitesv0.1.0traced end-to-end: tag, release, and wheel anchor to the samechangelog_commitishCreate a releasewithrelease_type: custom,custom_version: 0.1.0once this PR mergesSource-code checklist items (tests, docstrings, README table,
## [Unreleased]entry, Actor docstring link) are N/A — CI-only PR. The newupdate_changelogjob writes the first changelog entry automatically.Related issues
Supersedes Dependabot PRs #6, #5, #3 (workflow SHA bumps, folded into
@v0.45.0).signed-commitintroduced upstream in:apify/workflows#297apify/crawlee-python#1896