Skip to content

Merge upstream jdx/ruby - #13

Merged
excid3 merged 10 commits into
mainfrom
merge-upstream-jdx
Sep 28, 2026
Merged

excid3 merged 10 commits into
mainfrom
merge-upstream-jdx

Conversation

@excid3

@excid3 excid3 commented Sep 28, 2026

Copy link
Copy Markdown
Member

Merges the latest jdx/ruby main and strips what only applies to jdx's fork.

  • Merge upstream: Ruby 4.0.7 and 3.4.11 recipes (already present here, merged cleanly) and the .ruby-version bump to 4.0.7.
  • Remove jdx's Entire/Codex/Claude session tooling (.entire/, .codex/, .claude/settings.json), including the checkpoint remote at jdx/ruby-checkpoints, and the link-discussion workflow.
  • Point BOOTSTRAP_REPO at hatchboxio/precompiled-ruby, whose 3.4.7 release has the needed no_yjit tarballs, in build.yml and bin/package-linux.

.github/renovate.json still extends github>jdx/renovate-config.

🤖 Generated with Claude Code

github-actions Bot and others added 10 commits September 15, 2026 12:07
…jdx#61)

GitHub links merged pull requests to **issues** through `Closes #N`, but
discussions have no equivalent. A discussion that asks for a feature
stays open and unlinked after the pull request implementing it merges,
so the person who filed it is never told it shipped and the thread has
to be closed by hand.

This adds a workflow that runs when a pull request merges, scans its
body for discussion references, and comments on each referenced
discussion with a link back to the pull request.

| In the PR body | Effect on the discussion |
|---|---|
| `Closes #N`, `Fixes #N`, `Resolves #N` | Comment, then close as
`RESOLVED` |
| `Refs #N`, `Discussion: #N` | Comment only |

A PR titled `feat(status): show the last cron start and next scheduled
time` whose body ends in `Closes #901` posts this on discussion #901 the
moment it merges:

> Implemented in [#902](jdx/pitchfork#902):
feat(status): show the last cron start and next scheduled time

Numbers that turn out to be issues or pull requests are skipped, so
GitHub's native issue linking is unaffected, and a pull request whose
body references no discussion does nothing at all. Only same-repository
references (`jdx#42`) are recognized, not `owner/repo#42`.

The action is pinned to `jdx/link-discussion-action@38e7537` — a fork of
[`gaojunran/link-discussion-action`](https://github.com/gaojunran/link-discussion-action)
v0.1 (MIT) taken at that same commit, so the code that runs against this
repository's token is not controlled by a third-party account. The
committed `dist/index.js` was verified byte-identical (sha256
`ec31b601…`) to a rebuild from `src/` with the locked dependencies. It
authenticates with the automatic `GITHUB_TOKEN` scoped to `discussions:
write` and `pull-requests: read`; no new secrets are required.

This has been running in
[jdx/pitchfork](https://github.com/jdx/pitchfork) since
[#596](jdx/pitchfork#596) and is being rolled
out to every repository with Discussions enabled.

*AI-assisted — Tool: Claude Code; model: anthropic/claude-opus-5;
version: 2.1.270.*

🤖 Generated with [Claude Code](https://claude.com/claude-code)

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> CI-only automation using scoped GITHUB_TOKEN; no application or
runtime behavior changes.
> 
> **Overview**
> Adds a **`link-discussion`** GitHub Actions workflow that runs when a
pull request is **merged** (not merely closed). It uses the pinned
**`jdx/link-discussion-action`** with the default **`GITHUB_TOKEN`**,
granted **`discussions: write`** and **`pull-requests: read`**, to find
discussion references in the PR body and post a back-link comment (and
optionally resolve discussions when keywords like **`Closes #N`** are
used).
> 
> This mirrors issue auto-linking for GitHub Discussions so requesters
get notified when their feature ships, without adding new secrets.
> 
> <sup>Reviewed by [Cursor Bugbot](https://cursor.com/bugbot) for commit
95ab9db. Bugbot is set up for automated
code reviews on this repo. Configure
[here](https://www.cursor.com/dashboard/bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Added automated linking between merged pull requests and related
discussions.
* Improved visibility and traceability between development changes and
community conversations.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ruby](https://www.ruby-lang.org)
([source](https://redirect.github.com/ruby/ruby)) | patch | `4.0.6` →
`4.0.7` |

---

### Release Notes

<details>
<summary>ruby/ruby (ruby)</summary>

###
[`v4.0.7`](https://redirect.github.com/ruby/ruby/releases/tag/v4.0.7):
4.0.7

[Compare
Source](https://redirect.github.com/ruby/ruby/compare/v4.0.6...v4.0.7)

#### What's Changed

- [Bug #&#8203;22188: addr2line doesn't find symbols when compiled with
GCC LTO - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22188)
- [Bug #&#8203;22210: Check if issue #&#8203;19969 is still reproducible
/ re-opened in 4.0.x - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22210)
- [Bug #&#8203;22217: Segmentation fault when resuming execution with
`Coverage.start` and ruby/debug - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22217)
- [Fix formatting in ObjectSpace.\_id2ref error path by eregon · Pull
Request #&#8203;18206](https://redirect.github.com/ruby/ruby/pull/18206)
- [Bug #&#8203;22200: ObjectSpace.\_id2ref can return a different object
than the id's owner on Ruby 4.0 (stale id2ref\_tbl entry for objects
with generic fields) - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22200)
- [Bug #&#8203;22123: Ruby::Box + `BUNDLER_SETUP` can evaluate gemspecs
before main-box RubyGems initialization - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22123)
- [Bump ERB to 6.0.7 by k0kubun · Pull Request
#&#8203;18282](https://redirect.github.com/ruby/ruby/pull/18282)
- [Bug #&#8203;22237: GC.auto\_compact corrupts a String or segfaults
from String#tr with dup or gsub - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22237)
- [Bug #&#8203;22243: Change fork behavior when Process.\_fork raises an
exception during fork with a block argument - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22243)
- [Bug #&#8203;22223: Socket.tcp with connect\_timeout returns a phantom
"connected" socket for a refused connection on macOS 27 (kernel answers
EISCONN on connect retry; SO\_ERROR never consulted) - Ruby - Ruby Issue
Tracking System](https://bugs.ruby-lang.org/issues/22223)
- [Bug #&#8203;22220: Performance regression when requiring
`aws-sdk-ec2` in Ruby 4.0.6 - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22220)
- [Bug #&#8203;22218: Line TracePoint misses executed loop condition
after a guard - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22218)
- [Bug #&#8203;22198: win32: heap overflow in Kernel#system - Ruby -
Ruby Issue Tracking System](https://bugs.ruby-lang.org/issues/22198)
- [Bug #&#8203;22196: Heap-use-after-free in `fiber_switch` with
transfer-terminated async tasks on 3.4.10 - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22196)
- [Bug #&#8203;22190: Class#subclasses does not include clones of
classes that include modules - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22190)
- [Bug #&#8203;11438: native\_thread\_init\_stack() get
machine.stack\_start unequal to thread's stack start address, x86 win32
- Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/11438)
- [Bug #&#8203;22257: Prepending a module to an already-included module
leaves stale super caches - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22257)
- [Bug #&#8203;22242: SEGV in method dispatch
(`vm_call_iseq_setup_kwparm_nokwarg` / `def_iseq_ptr`) on Ruby 4.0.6 —
Rails CI - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22242)
- [Bug #&#8203;22269: `Coverage.line_stub` clobbers already-collected
coverage data - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22269)
- [Bug #&#8203;22290: Adding instance variables to anonymous object may
bloat all future classes - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22290)
- [Bug #&#8203;22292: YJIT/ZJIT: Struct accessor crashes after an
instance variable is set on a Struct that exactly fills the largest GC
slot - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22292)
- [Bug #&#8203;20958: fix ENV.keys encoding on windows - Ruby - Ruby
Issue Tracking System](https://bugs.ruby-lang.org/issues/20958)
- [Bug #&#8203;22259: Arrays sharding a buffer segfault when
concatenating with each other - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22259)
- [Bug #&#8203;22264: Warning missing from parse.y hash literals - Ruby
- Ruby Issue Tracking System](https://bugs.ruby-lang.org/issues/22264)
- [Bug #&#8203;22303: EncodingError from interpolating symbol crashes
whole process - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22303)
- [Bug #&#8203;22224: YJIT: rb\_yjit\_invalidate\_ep\_is\_bp takes the
VM lock stopping Ractors on every Proc materialization; multi-Ractor
throughput collapses (up to \~150x) - Ruby - Ruby Issue Tracking
System](https://bugs.ruby-lang.org/issues/22224)

Note: This list is automatically generated by
tool/gen-github-release.rb. Because of this, some commits may be
missing.

#### Full Changelog

</details>

---

### Configuration

📅 **Schedule**: (in timezone America/Chicago)

- Branch creation
  - Only on Tuesday (`* * * * 2`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/jdx/ruby).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xMDMuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjEwMy4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
*AI-assisted — Tool: Codex; model: openai/gpt-6-sol; version: unavailable.*
*AI-assisted — Tool: Codex; model: openai/gpt-6-sol; version: unavailable.*
*AI-assisted — Tool: Codex; model: openai/gpt-6-sol; version: unavailable.*
Drop the Entire/Codex/Claude session hooks, the Entire checkpoint remote
pointing at jdx/ruby-checkpoints, and the link-discussion workflow.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@excid3
excid3 merged commit 894b0f9 into main Sep 28, 2026
7 checks passed
@excid3
excid3 deleted the merge-upstream-jdx branch September 28, 2026 23:45
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