Skip to content

chore: release v0.4.1 — promote develop to main#47

Merged
amcheste merged 5 commits into
mainfrom
develop
May 27, 2026
Merged

chore: release v0.4.1 — promote develop to main#47
amcheste merged 5 commits into
mainfrom
develop

Conversation

@amcheste-ai-agent
Copy link
Copy Markdown
Contributor

Summary

Promotes the merged v0.4.1 work from develop to main — the last step before tagging and publishing.

develop now contains everything: the maindevelop sync (dependabot + release commits), the CI decoupling (#39), and the chore: release v0.4.1 bump (#46). This brings it all to main so the v0.4.1 tag can be cut from main.

Merge + publish (yours — the bot can't push to main or push tags)

  1. Merge this as a merge commit — squash is disabled repo-wide, so ancestry is preserved either way:
    gh pr merge <this-pr> --merge --admin
    --admin is needed because main has enforce_admins.
  2. Tag + publish:
    git fetch origin && git checkout main && git pull
    git tag -a v0.4.1 -m "Release v0.4.1" && git push origin v0.4.1
    The tag triggers the (now-decoupled) release pipeline → build + publish to PyPI; v0.4.1 becomes latest.

Verify after

  • Release run for v0.4.1 is green (acceptance job soft-fails, build + publish succeed).
  • pip install overleaf-mcp-server resolves to 0.4.1.

🤖 Generated with Claude Code

amcheste-ai-agent and others added 5 commits May 23, 2026 12:49
Overleaf git *write* is a premium-only feature. Gating the PyPI publish
(release.yml) and every PR (tests.yml real-overleaf job) on a live,
paid third-party credential made CI brittle: when the Overleaf premium
plan lapsed, pushes to the test project began returning HTTP 403, which
silently blocked the v0.4.0 release (tagged but never published) and
turned the nightly canary red.

Decouple the paid dependency from the gates:

- release.yml: drop `needs: acceptance` from `build` and mark the
  acceptance job `continue-on-error`, so a write-403 can no longer stop
  a publish. It still runs as a release-moment signal.
- tests.yml: mark the `real-overleaf` job `continue-on-error` so the
  same failure is informational, not a red X on every PR.

Both live-Overleaf jobs auto-resume as useful green signals once write
access is restored. nightly.yml remains the dedicated daily canary. To
reinstate a hard release gate, re-add `needs: acceptance` and drop
`continue-on-error`.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: amcheste <13696614+amcheste@users.noreply.github.com>
…f-write-tests

ci: stop gating releases/PRs on the live Overleaf write suite
v0.4.0 was tagged 2026-05-12 but never reached PyPI: the release pipeline
was gated on a live Overleaf write test, and the test project's premium
plan had lapsed (writes return HTTP 403), which blocked the publish. With
that gate removed (PR #39), 0.4.1 ships all of 0.4.0's changes plus the CI
fixes — it's the first published release of the 0.4.x line.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: amcheste <13696614+amcheste@users.noreply.github.com>
chore: release v0.4.1 (+ develop↔main sync)
@amcheste-ai-agent amcheste-ai-agent Bot requested a review from amcheste as a code owner May 27, 2026 22:56
@amcheste amcheste merged commit 0878989 into main May 27, 2026
30 checks passed
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.

2 participants