Skip to content

Bump version to 0.4.0 - #90

Open
dduugg wants to merge 1 commit into
mainfrom
release-0.4.0
Open

dduugg wants to merge 1 commit into
mainfrom
release-0.4.0

Conversation

@dduugg

@dduugg dduugg commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Closes #89.

0.3.0 shipped in June 2024. Everything since — including packwerk 3 compatibility — has sat on main unreleased, so consumers have to pin the gem to a git SHA. @sliminas reported this in #89.

Why nothing published on its own

Nothing is broken in the pipeline. .github/workflows/cd.yml runs after every successful CI run on main and delegates to shared-config, which runs rake release via discourse/publish-rubygems-action. That publishes only when the gemspec version differs from what is on RubyGems, so with the version left at 0.3.0 every CD run since June 2024 has succeeded and correctly done nothing. Bumping the version is the whole release.

Why minor, not patch

Three changes since 0.3.0 are breaking for consumers, so this takes the breaking slot in 0.x:

0.3.0 main
required_ruby_version >= 2.7 >= 3.3
packwerk >= 2.2.1 >= 3
sorbet-runtime runtime dependency dropped

The sorbet-runtime removal is the fix #89 is asking for: packwerk 3.3 dropped the dependency, and the checkers moved to RBS comment annotations in #68 and #71. lib/ no longer references sorbet-runtime at all — sorbet and sorbet-runtime remain development dependencies only.

Verification

Run on this branch, against the locked packwerk 3.3.1:

bundle exec rake test     88 runs, 142 assertions, 0 failures, 0 errors, 0 skips
bundle exec rubocop       67 files inspected, no offenses detected
bundle exec srb tc        No errors! Great job.
gem build                 Successfully built RubyGem — Version: 0.4.0

Gemfile.lock is included because the gemspec is a path dependency, so the lock pins the gem's own version and would otherwise go stale.

What merging does

Merging publishes. CI will run on main, CD will see 0.4.0 against the published 0.3.0, then tag v0.4.0, push the gem to RubyGems, and cut a GitHub release with generated notes. Worth knowing before you hit the button, since it is not easily undone.

CHANGELOG.md only points at the releases page, so it needs no edit.

Out of scope: gem build also emits two pre-existing cosmetic gemspec warnings (description and summary are identical, and homepage_uri duplicates source_code_uri). Unrelated to the release, so I left them alone.

Sent with Claude Code

The last release, 0.3.0, went out in June 2024. Since then `main` gained
packwerk 3 compatibility, but none of it is installable, so consumers have
to pin the gem to a git SHA (#89).

Minor rather than patch: three changes since 0.3.0 are breaking for
consumers.

  - `required_ruby_version` raised from >= 2.7 to >= 3.3
  - the `packwerk` dependency raised from >= 2.2.1 to >= 3
  - `sorbet-runtime` dropped as a runtime dependency, after the checkers
    migrated to RBS comment annotations (#68, #71)

Verified on this branch against packwerk 3.3.1: 88 tests pass, rubocop
reports no offenses across 67 files, and `srb tc` is clean. The gem builds
as 0.4.0 and `lib/` no longer references sorbet-runtime.
@dduugg
dduugg requested a review from a team as a code owner September 17, 2026 23:08
@github-project-automation github-project-automation Bot moved this to Triage in Modularity Sep 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Triage

Development

Successfully merging this pull request may close these issues.

Release new version to fix issues with packwerk 3.3

1 participant