crystal-lang / distribution-scripts

40 stars 23 forks source link

Release Shards 0.17.4 #277

Closed straight-shoota closed 6 months ago

straight-shoota commented 6 months ago

Release preparation

  1. [x] Start preparing changelog and release notes
  2. [x] Publish release PR draft (https://github.com/crystal-lang/shards/pull/605)
    • It should be populated with updates to CHANGELOG.md, VERSION, and shard.yml.

Release process

Steps 4.-6. are automated via scripts/make-shards-release.sh

  1. [x] Finalize the release PR
    • Make sure all changes are mentioned in the changelog
    • Check release date
    • Build man files with the release date: $ make clean docs SOURCE_DATE_EPOCH=$(gdate -d "YYYY-MM-DD" +"%s")
    • Un-draft the PR
  2. [x] Smoke test with test-ecosystem
  3. [x] Merge the release PR
  4. [x] Tag & annotate the commit with the changelog using v<M.m.p> pattern as {version}
    • git tag -s -a -m v1.17.4 v1.17.4
  5. [x] Publish Github release (https://github.com/crystal-lang/shards/releases/new)
    • Copy the changelog section as description
  6. [x] Close milestone (https://github.com/crystal-lang/shards/milestones)

Post-release

  1. [x] Update distribution-scripts (Helper script: scripts/update-shards.sh)
  2. [x] Update https://github.com/crystal-lang/crystal
  3. [ ] Submit a PR to update the homebrew formula in https://github.com/Homebrew/homebrew-core/blob/master/Formula/crystal.rb . Or do it on Crystal release.
  4. [ ] Update default base version in test-ecosystem