Skip to content

Automate the release process - #146

Merged
t-kalinowski merged 2 commits into
mainfrom
release/automation
Jul 31, 2026
Merged

Automate the release process#146
t-kalinowski merged 2 commits into
mainfrom
release/automation

Conversation

@t-kalinowski

@t-kalinowski t-kalinowski commented Jul 31, 2026

Copy link
Copy Markdown
Member

Summary

Add a small, linear release command so maintainers do not need to coordinate version commits, CI, tagging, publication checks, artifact verification, and the development-version reset by hand.

User-facing changes

  • Add scripts/release.sh VERSION for stable releases from a clean, up-to-date main checkout on supported macOS and Linux hosts.
  • Run the complete local check, push the stable version, watch its exact CI run, create the annotated tag, and watch the tag-driven release workflow.
  • Download and checksum the current host's archive, smoke-test ir, rx, and a short R execution, then restore VERSION+dev and watch its CI run.
  • Document prerequisites, the release sequence, and manual recovery after a failure in RELEASE.md.

Internal changes

  • Keep the script to a single fail-fast path with no automatic recovery state machine.
  • Require both origin fetch and push URLs to resolve to r-lib/ir before changing files.
  • Add two black-box tests using real local Git repositories and a small GitHub shim, covering invalid input and the complete release sequence.

Notes

The complete local check passes with 198 tests. The release script also passes Bash syntax and ShellCheck validation.

@t-kalinowski
t-kalinowski marked this pull request as ready for review July 31, 2026 14:46
@t-kalinowski
t-kalinowski merged commit df455a4 into main Jul 31, 2026
4 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.

1 participant