Skip to content

chore: prepare v1.12.0 release with streamlined release workflow#172

Merged
pftg merged 1 commit into
masterfrom
emdash/feat-re-review-git-history-8yi
Apr 12, 2026
Merged

chore: prepare v1.12.0 release with streamlined release workflow#172
pftg merged 1 commit into
masterfrom
emdash/feat-re-review-git-history-8yi

Conversation

@pftg

@pftg pftg commented Apr 12, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Prepare v1.12.0 release (version bump, CHANGELOG update)
  • Streamline release workflow to one-click with version verification
  • Add release preparation guide (docs/RELEASE_PREP.md)
  • Add upgrade guide (docs/UPGRADING.md)

Changes

  • .github/workflows/release.yml: Enhanced release workflow with version verification and simplified one-click process
  • CHANGELOG.md: Added v1.12.0 release notes
  • docs/RELEASE_PREP.md: New release preparation checklist and guide
  • docs/UPGRADING.md: New comprehensive upgrade guide for users
  • lib/capybara/screenshot/diff/version.rb: Version bump to 1.12.0

Summary by Sourcery

Prepare the 1.12.0 release and streamline the automated release process.

New Features:

  • Introduce a git-tagged, trusted-publishing GitHub Actions release workflow that runs tests, builds the gem, and publishes to RubyGems based on a specified version input.

Enhancements:

  • Bump the gem version to 1.12.0.

CI:

  • Enhance the release GitHub Actions workflow with version verification, automated tests, build steps, tag creation, and RubyGems publication.

Documentation:

  • Add a detailed upgrading guide for v1.12.0, covering behavior changes, new features, compatibility, and troubleshooting.
  • Add a release preparation guide documenting the release rationale, checklist, and step-by-step workflow usage for publishing new versions.
  • Create a structured CHANGELOG following Keep a Changelog and Semantic Versioning, documenting all major changes up to v1.12.0.

Summary by CodeRabbit

  • Documentation

    • Added comprehensive CHANGELOG documenting v1.12.0 release notes
    • Added upgrade guide for migrating to v1.12.0
  • Chores

    • Bumped version to 1.12.0
    • Updated release workflow for automated publishing

@sourcery-ai

sourcery-ai Bot commented Apr 12, 2026

Copy link
Copy Markdown
Contributor

Reviewer's Guide

Prepares the v1.12.0 release by bumping the gem version, introducing a significantly more detailed changelog and user-facing upgrade documentation, and expanding the GitHub Actions release workflow into a one-click, version-verified pipeline that runs tests, builds, tags, and publishes the gem.

Sequence diagram for the new one-click release workflow

sequenceDiagram
  actor Maintainer
  participant GitHub_UI
  participant GitHub_Actions as GitHub_Actions_release_yml
  participant Repo as GitHub_Repository
  participant RubyGems as RubyGems_org

  Maintainer->>GitHub_UI: Run workflow release.yml with version input
  GitHub_UI->>GitHub_Actions: workflow_dispatch event(version)
  GitHub_Actions->>Repo: actions/checkout checks out repository
  GitHub_Actions->>GitHub_Actions: Set up Ruby with ruby/setup-ruby

  GitHub_Actions->>GitHub_Actions: Verify version
  GitHub_Actions->>GitHub_Actions: Read GEM_VERSION from workflow input
  GitHub_Actions->>GitHub_Actions: Read RUBY_VERSION from lib capybara screenshot diff version
  GitHub_Actions-->>GitHub_Actions: Compare GEM_VERSION and RUBY_VERSION
  alt Version mismatch
    GitHub_Actions-->>Maintainer: Fail workflow with version mismatch
  else Version matches
    GitHub_Actions->>GitHub_Actions: bundle exec rake test
    GitHub_Actions->>GitHub_Actions: bundle exec rake build

    GitHub_Actions->>Repo: Configure git user and create tag v<version>
    GitHub_Actions->>Repo: Push tag v<version> to origin

    GitHub_Actions->>RubyGems: Publish gem via rubygems/release-gem@v1
    RubyGems-->>Maintainer: Gem v<version> available
  end
Loading

File-Level Changes

Change Details Files
Expand the GitHub Actions release workflow into a parameterized, one-click release pipeline with version verification, testing, building, tagging, and publishing.
  • Added a workflow_dispatch input for the release version and named the workflow and job using that input.
  • Clarified GitHub Actions permissions comments for trusted publishing and tag creation.
  • Inserted a Ruby-based version verification step that compares the provided version input to the library’s VERSION constant and fails on mismatch.
  • Added steps to run the test suite and build the gem before publishing.
  • Replaced the direct publish action with separate steps to create and push an annotated git tag and then invoke the RubyGems release action.
.github/workflows/release.yml
Bump the library version to v1.12.0 to match the new release.
  • Updated the VERSION constant from 1.11.0 to 1.12.0.
lib/capybara/screenshot/diff/version.rb
Introduce a full changelog using Keep a Changelog format, documenting all notable changes for v1.12.0 and linking prior and unreleased versions.
  • Created a new CHANGELOG.md file with Keep a Changelog structure and Semantic Versioning note.
  • Documented all categories of changes (Added, Changed, Deprecated, Removed, Fixed, Performance, Documentation, Build/CI, Internal Refactoring) for v1.12.0 with commit references.
  • Added comparison links for Unreleased, v1.12.0, and v1.11.0 and pointed users to the upgrade guide.
CHANGELOG.md
Add a detailed upgrade guide for users moving to v1.12.0, covering breaking-ish changes, new features, and troubleshooting.
  • Documented quick upgrade steps and expectations for most users.
  • Outlined behavior changes such as new defaults for blur_active_element, hide_caret, and fail_if_new with code samples to restore old behavior.
  • Explained removal of SVN support and ActiveSupport as a dependency, and noted internal API changes.
  • Described new features (HTML reporter, standalone image comparison, perceptual color distance, assert_no_screenshot_changes, configuration block) and performance improvements.
  • Provided compatibility matrix, testing steps, troubleshooting guidance, rollback instructions, and a summary checklist.
docs/UPGRADING.md
Add a release preparation guide specific to v1.12.0, documenting rationale, checklist, and release process using GitHub Actions and optional manual steps.
  • Summarized the scope and nature of the v1.12.0 minor release and justified the version bump given behavior and feature changes.
  • Listed new features, performance improvements, and dependency changes that characterize the release.
  • Provided a pre-release checklist including changelog review, version update, test runs, and commit guidance.
  • Documented the preferred GitHub Actions-based release flow (draft/publish GitHub release, run workflow) and an alternative manual rake-based release procedure.
  • Included post-release verification steps, user migration guidance, contributor stats, and suggested next steps.
docs/RELEASE_PREP.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@coderabbitai

coderabbitai Bot commented Apr 12, 2026

Copy link
Copy Markdown

Warning

Rate limit exceeded

@pftg has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 15 minutes and 49 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 15 minutes and 49 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: dade709c-14cd-4298-9118-e8a6ad7d9d94

📥 Commits

Reviewing files that changed from the base of the PR and between ff18ecf and 62a74cf.

📒 Files selected for processing (7)
  • .github/workflows/release.yml
  • CHANGELOG.md
  • README.md
  • capybara-screenshot-diff.gemspec
  • docs/RELEASE_PREP.md
  • docs/UPGRADING.md
  • lib/capybara/screenshot/diff/version.rb
📝 Walkthrough

Walkthrough

This pull request bumps capybara-screenshot-diff version from 1.11.0 to 1.12.0 and establishes comprehensive release infrastructure. Changes include a refactored release workflow with version validation and automated tagging, plus new documentation files detailing release preparation, upgrade guidance, and a complete CHANGELOG for the 1.12.0 release.

Changes

Cohort / File(s) Summary
Version Bump
lib/capybara/screenshot/diff/version.rb
Incremented version constant from "1.11.0" to "1.12.0".
Release Workflow
.github/workflows/release.yml
Converted from simple RubyGems push to a dedicated release job triggered via workflow_dispatch. Added required version input with validation against Capybara::Screenshot::Diff::VERSION, explicit rake test and rake build steps, and automated annotated git tag creation before pushing to RubyGems.
Release Documentation
CHANGELOG.md, docs/RELEASE_PREP.md, docs/UPGRADING.md
Added comprehensive release documentation: CHANGELOG documenting v1.12.0 features, changes, fixes and performance items (100 lines); RELEASE_PREP.md describing release checklist and procedures (154 lines); UPGRADING.md providing migration guide with default behavior changes and new feature usage (390 lines).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~18 minutes

Poem

🐰 A version bumped, a release grows,
New workflows dance, the pipeline flows,
With docs to guide each upgrading soul,
From 1.11 to 1.12, our goal!
Release prep done, with git tag and care! 🏷️

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: version bump to v1.12.0 and a streamlined release workflow that converts a simple push job to a versioned dispatch-triggered process with verification steps.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch emdash/feat-re-review-git-history-8yi

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've found 3 issues, and left some high level feedback:

  • The new release workflow is driven by a version input and creates/pushes the tag itself, but docs/RELEASE_PREP.md still describes creating the tag via a GitHub Release or rake release; aligning the documented flow with the actual workflow (and avoiding duplicate tag creation) would reduce confusion for future releases.
  • RELEASE_PREP.md is heavily hard-coded to v1.12.0 (including title, checklist items, and commands), which will make it easy to forget to update for future releases; consider making it version-agnostic or using placeholders so it remains reusable.
  • In CHANGELOG.md, SVN support is listed both under Deprecated and Removed, and the Deprecated entry says it is already removed; it would be clearer to either mark it as deprecated in a prior version or keep it only under Removed for v1.12.0.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- The new release workflow is driven by a `version` input and creates/pushes the tag itself, but `docs/RELEASE_PREP.md` still describes creating the tag via a GitHub Release or `rake release`; aligning the documented flow with the actual workflow (and avoiding duplicate tag creation) would reduce confusion for future releases.
- RELEASE_PREP.md is heavily hard-coded to v1.12.0 (including title, checklist items, and commands), which will make it easy to forget to update for future releases; consider making it version-agnostic or using placeholders so it remains reusable.
- In CHANGELOG.md, SVN support is listed both under `Deprecated` and `Removed`, and the `Deprecated` entry says it is already removed; it would be clearer to either mark it as deprecated in a prior version or keep it only under `Removed` for v1.12.0.

## Individual Comments

### Comment 1
<location path=".github/workflows/release.yml" line_range="43-50" />
<code_context>
+      - name: Run tests
+        run: bundle exec rake test
+
+      - name: Build gem
+        run: bundle exec rake build
+
+      # Create and push tag
</code_context>
<issue_to_address>
**suggestion (performance):** The explicit `rake build` step might be redundant with `rubygems/release-gem@v1`.

If no later steps use the artifact from `bundle exec rake build`, you can drop this step and rely on `rubygems/release-gem@v1` to build as part of the publish, reducing redundant work in the workflow.

```suggestion
      # Build and test
      - name: Run tests
        run: bundle exec rake test

      # Build is handled by rubygems/release-gem@v1 during publish

      # Create and push tag
```
</issue_to_address>

### Comment 2
<location path=".github/workflows/release.yml" line_range="50-54" />
<code_context>
+        run: |
+          git config user.name "github-actions[bot]"
+          git config user.email "github-actions[bot]@users.noreply.github.com"
+          git tag -a "v${{ github.event.inputs.version }}" -m "Release v${{ github.event.inputs.version }}"
+          git push origin "v${{ github.event.inputs.version }}"
+
</code_context>
<issue_to_address>
**suggestion:** Tag creation will fail if the tag already exists; consider handling that case explicitly.

If `v${{ github.event.inputs.version }}` already exists (from a prior run or manual tag), `git tag -a` will fail and stop the workflow. To make re-runs idempotent, you could guard tag creation, for example:

```bash
if git rev-parse "v${{ github.event.inputs.version }}" >/dev/null 2>&1; then
  echo "Tag v${{ github.event.inputs.version }} already exists; skipping tag creation."
else
  git tag -a "v${{ github.event.inputs.version }}" -m "Release v${{ github.event.inputs.version }}"
  git push origin "v${{ github.event.inputs.version }}"
fi
```

```suggestion
      # Create and push tag
      - name: Create release tag
        run: |
          git config user.name "github-actions[bot]"
          git config user.email "github-actions[bot]@users.noreply.github.com"

          TAG_NAME="v${{ github.event.inputs.version }}"

          if git rev-parse "$TAG_NAME" >/dev/null 2>&1; then
            echo "Tag $TAG_NAME already exists; skipping tag creation."
          else
            git tag -a "$TAG_NAME" -m "Release $TAG_NAME"
            git push origin "$TAG_NAME"
          fi
```
</issue_to_address>

### Comment 3
<location path="CHANGELOG.md" line_range="63-64" />
<code_context>
+- Add Quick Setup guide, tolerance table, and CI defaults note ([#786a0c1](https://github.com/donv/capybara-screenshot-diff/commit/786a0c1))
+- Add development guide for Docker testing and screenshot recording ([#8a7c981](https://github.com/donv/capybara-screenshot-diff/commit/8a7c981))
+- Add DeepWiki badge to README ([#0929cfa](https://github.com/donv/capybara-screenshot-diff/commit/0929cfa))
+- Add about DEBUG to README ([#c1a53c3](https://github.com/donv/capybara-screenshot-diff/commit/c1a53c3))
+
+### Build/CI
</code_context>
<issue_to_address>
**suggestion (typo):** Clarify the wording of "Add about DEBUG to README".

The phrase "Add about DEBUG to README" is slightly ungrammatical. Consider rewording to "Add information about DEBUG to README" or "Document DEBUG in README".

```suggestion
- Add DeepWiki badge to README ([#0929cfa](https://github.com/donv/capybara-screenshot-diff/commit/0929cfa))
- Document DEBUG in README ([#c1a53c3](https://github.com/donv/capybara-screenshot-diff/commit/c1a53c3))
```
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Comment thread .github/workflows/release.yml Outdated
Comment thread .github/workflows/release.yml Outdated
Comment thread CHANGELOG.md Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (4)
CHANGELOG.md (2)

25-29: SVN removal documented correctly.

Listing SVN support under both "Deprecated" and "Removed" with the same commit is slightly redundant for a same-release deprecation+removal. You could consolidate to just "Removed" since there's no migration window, but this is a minor style choice.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CHANGELOG.md` around lines 25 - 29, The changelog currently lists SVN support
under both "Deprecated" and "Removed" (same commit [`#2fe2792`]), so remove the
redundant "Deprecated" entry and keep a single "Removed" entry mentioning SVN
support removal and its commit; update the headings around the text that
reference "Deprecated" and "Removed" to only include the single consolidated
"Removed" line referencing commit 2fe2792 to avoid duplicate entries.

8-8: Consider adding an [Unreleased] section header.

Following Keep a Changelog convention, there should be an [Unreleased] section at the top to track changes for the next release. The link reference at line 96 exists but there's no corresponding section header.

♻️ Add Unreleased section
 and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

+## [Unreleased]
+
 ## [v1.12.0] - 2026-04-12
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@CHANGELOG.md` at line 8, Add an `[Unreleased]` top-level section header above
the existing release headers in CHANGELOG.md (e.g., insert "## [Unreleased]"
before "## [v1.12.0] - 2026-04-12") so future changes can be tracked; also
ensure the existing link reference for `[Unreleased]` at the bottom of the file
is present and points to the correct compare URL or placeholder, matching the
section header name exactly.
.github/workflows/release.yml (2)

51-56: Consider handling pre-existing tags gracefully.

If a tag v<version> already exists (e.g., from a prior failed run or manual creation), git push will fail with a non-obvious error. This is actually a reasonable safeguard against duplicate releases, but you could make it more explicit:

♻️ Add explicit tag check for clearer error
       - name: Create release tag
         run: |
+          if git rev-parse "v${{ github.event.inputs.version }}" >/dev/null 2>&1; then
+            echo "❌ Tag v${{ github.event.inputs.version }} already exists"
+            exit 1
+          fi
           git config user.name "github-actions[bot]"
           git config user.email "github-actions[bot]@users.noreply.github.com"
           git tag -a "v${{ github.event.inputs.version }}" -m "Release v${{ github.event.inputs.version }}"
           git push origin "v${{ github.event.inputs.version }}"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/release.yml around lines 51 - 56, The current release step
creates and pushes an annotated tag without checking for an existing tag, which
causes an unclear failure if v${{ github.event.inputs.version }} already exists;
update the "Create release tag" step to first check for an existing tag (use git
rev-parse --verify "refs/tags/v${{ github.event.inputs.version }}" for local and
git ls-remote --tags origin "refs/tags/v${{ github.event.inputs.version }}" for
remote) and then either exit with a clear error message via echo and non-zero
exit or handle overwrites explicitly, and ensure this logic surrounds the
existing git tag -a and git push commands so failures become explicit and
recoverable.

33-40: Variable name RUBY_VERSION shadows built-in environment variable.

The shell variable RUBY_VERSION on line 34 shadows the standard Ruby environment variable (commonly set by version managers like rbenv/rvm). While this works because it's scoped to this run block, using a distinct name like CODE_VERSION or GEM_VERSION would be clearer and avoid potential confusion.

♻️ Suggested rename
-          RUBY_VERSION=$(ruby -rlib/capybara/screenshot/diff/version -e "puts Capybara::Screenshot::Diff::VERSION")
-          if [ "$GEM_VERSION" != "$RUBY_VERSION" ]; then
+          CODE_VERSION=$(ruby -rlib/capybara/screenshot/diff/version -e "puts Capybara::Screenshot::Diff::VERSION")
+          if [ "$GEM_VERSION" != "$CODE_VERSION" ]; then
             echo "❌ Version mismatch!"
             echo "Input version: $GEM_VERSION"
-            echo "Ruby version: $RUBY_VERSION"
+            echo "Code version: $CODE_VERSION"
             exit 1
           fi
           echo "✅ Version verified: $GEM_VERSION"
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/release.yml around lines 33 - 40, The variable
RUBY_VERSION shadows a common environment variable; rename it to a distinct name
(e.g., CODE_VERSION) by assigning the ruby -r... command output to CODE_VERSION,
then update the conditional to compare GEM_VERSION to CODE_VERSION and update
the echo that prints the extracted value to reference CODE_VERSION instead of
RUBY_VERSION so all uses (assignment, comparison, and output) match the new
variable name.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/RELEASE_PREP.md`:
- Around line 72-84: Docs and workflow are inconsistent: the release.yml (lines
~51-56) creates and pushes the git tag itself, so update RELEASE_PREP.md Step 3
to reflect that you do NOT need to pre-create/select the tag when running the
workflow; specifically change the Step 3 instructions (the bullet that says
"Select the `v1.12.0` tag") to state that the workflow will create and push the
release tag automatically (or alternately, if you prefer to require a
pre-existing tag, modify release.yml to accept and use an existing tag instead);
reference release.yml tag-creation logic and the Step 3 text in RELEASE_PREP.md
to make them consistent.

In `@docs/UPGRADING.md`:
- Around line 372-373: Replace the outdated GitHub Issues URL that points to
"donv/capybara-screenshot-diff" with the correct repository
"snap-diff/snap_diff-capybara" by updating the Issues link text to
"https://github.com/snap-diff/snap_diff-capybara/issues" (the line currently
showing "- **Issues:** [GitHub
Issues](https://github.com/donv/capybara-screenshot-diff/issues)"); ensure only
the URL is changed and the surrounding Markdown format remains the same.

---

Nitpick comments:
In @.github/workflows/release.yml:
- Around line 51-56: The current release step creates and pushes an annotated
tag without checking for an existing tag, which causes an unclear failure if
v${{ github.event.inputs.version }} already exists; update the "Create release
tag" step to first check for an existing tag (use git rev-parse --verify
"refs/tags/v${{ github.event.inputs.version }}" for local and git ls-remote
--tags origin "refs/tags/v${{ github.event.inputs.version }}" for remote) and
then either exit with a clear error message via echo and non-zero exit or handle
overwrites explicitly, and ensure this logic surrounds the existing git tag -a
and git push commands so failures become explicit and recoverable.
- Around line 33-40: The variable RUBY_VERSION shadows a common environment
variable; rename it to a distinct name (e.g., CODE_VERSION) by assigning the
ruby -r... command output to CODE_VERSION, then update the conditional to
compare GEM_VERSION to CODE_VERSION and update the echo that prints the
extracted value to reference CODE_VERSION instead of RUBY_VERSION so all uses
(assignment, comparison, and output) match the new variable name.

In `@CHANGELOG.md`:
- Around line 25-29: The changelog currently lists SVN support under both
"Deprecated" and "Removed" (same commit [`#2fe2792`]), so remove the redundant
"Deprecated" entry and keep a single "Removed" entry mentioning SVN support
removal and its commit; update the headings around the text that reference
"Deprecated" and "Removed" to only include the single consolidated "Removed"
line referencing commit 2fe2792 to avoid duplicate entries.
- Line 8: Add an `[Unreleased]` top-level section header above the existing
release headers in CHANGELOG.md (e.g., insert "## [Unreleased]" before "##
[v1.12.0] - 2026-04-12") so future changes can be tracked; also ensure the
existing link reference for `[Unreleased]` at the bottom of the file is present
and points to the correct compare URL or placeholder, matching the section
header name exactly.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 68eef8ef-5768-4dcf-9513-e0c815bc0c1f

📥 Commits

Reviewing files that changed from the base of the PR and between c1a53c3 and ff18ecf.

📒 Files selected for processing (5)
  • .github/workflows/release.yml
  • CHANGELOG.md
  • docs/RELEASE_PREP.md
  • docs/UPGRADING.md
  • lib/capybara/screenshot/diff/version.rb

Comment thread docs/RELEASE_PREP.md Outdated
Comment thread docs/UPGRADING.md Outdated
@pftg pftg force-pushed the emdash/feat-re-review-git-history-8yi branch from 0dfe17b to a6f9978 Compare April 12, 2026 14:47
Add CHANGELOG.md with 71 commits since v1.11.0.
Add docs/UPGRADING.md migration guide.
Add docs/RELEASE_PREP.md release checklist.
Update .github/workflows/release.yml for one-click release.
Bump version to 1.12.0.
Fix outdated repository URLs in all docs.

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
@pftg pftg force-pushed the emdash/feat-re-review-git-history-8yi branch from 8b6718b to 62a74cf Compare April 12, 2026 15:08
@pftg pftg merged commit ed5ab97 into master Apr 12, 2026
7 checks passed
@pftg pftg deleted the emdash/feat-re-review-git-history-8yi branch April 12, 2026 15:10
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