<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git, branch v3_4_7</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>v3.4.7</title>
<updated>2025-10-07T16:42:48+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-10-07T16:42:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=7a5688e2a27668e48f8d6ff4af5b2208b98a2f5e'/>
<id>7a5688e2a27668e48f8d6ff4af5b2208b98a2f5e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 7ae67e8f6ad6e7fd0677b28a7a10961f79d55495: [Backport #21568]</title>
<updated>2025-10-07T16:41:15+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-10-07T16:41:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ef3ce711fb29f7273216edb2fe41bb2604c835c3'/>
<id>ef3ce711fb29f7273216edb2fe41bb2604c835c3</id>
<content type='text'>
	[PATCH] load.c: Fix dest and src of MEMMOVE

	When multiple files with the same name are required, the features_index
	hash stores the indexes in `$LOADED_FEATURES` array into a darray.
	The dest and src arguments for `MEMMOVE` were wrongly reversed when
	inserting a new index in the darray.

	[Bug #21568]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	[PATCH] load.c: Fix dest and src of MEMMOVE

	When multiple files with the same name are required, the features_index
	hash stores the indexes in `$LOADED_FEATURES` array into a darray.
	The dest and src arguments for `MEMMOVE` were wrongly reversed when
	inserting a new index in the darray.

	[Bug #21568]
</pre>
</div>
</content>
</entry>
<entry>
<title>tool/merger.rb: Fetch diff from GitHub instead of cgit</title>
<updated>2025-10-07T16:40:55+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-10-06T17:53:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a7eb7e7c6fe02f7127ff527fff18a0914a7aa888'/>
<id>a7eb7e7c6fe02f7127ff527fff18a0914a7aa888</id>
<content type='text'>
Our cgit server has been shut down.

tool/merger.rb: Fetch a diff in the patch format

It expects "Subject:", so it needs to be a patch file.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Our cgit server has been shut down.

tool/merger.rb: Fetch a diff in the patch format

It expects "Subject:", so it needs to be a patch file.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update rubyspec as of CVE-2025-27221</title>
<updated>2025-10-07T16:15:46+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-10-07T01:30:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d2cd7eaa11f57f81cdbacf0e8d5162d37e28337b'/>
<id>d2cd7eaa11f57f81cdbacf0e8d5162d37e28337b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge URI-1.0.4</title>
<updated>2025-10-07T16:15:46+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2025-10-07T09:29:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=71462666e0f1ea720062e12f97b2ea89166038d1'/>
<id>71462666e0f1ea720062e12f97b2ea89166038d1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>macos.yml: macOS 13 hosted runner image is closing down</title>
<updated>2025-10-02T17:05:39+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-10-02T17:05:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=49d7295fc38583abf3018a16a2018667871d9f3d'/>
<id>49d7295fc38583abf3018a16a2018667871d9f3d</id>
<content type='text'>
https://github.blog/changelog/2025-09-19-github-actions-macos-13-runner-image-is-closing-down/
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.blog/changelog/2025-09-19-github-actions-macos-13-runner-image-is-closing-down/
</pre>
</div>
</content>
</entry>
<entry>
<title>Reapply "merge revision(s) 62430c19c9f1ab49429cebe65f30588472648c95: [Backport #21342]"</title>
<updated>2025-09-29T22:10:58+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-29T22:10:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=264b2d78c366491834c9ce4499a4ad7b7564b89d'/>
<id>264b2d78c366491834c9ce4499a4ad7b7564b89d</id>
<content type='text'>
This reverts commit c414b9871f263331cde0af1c08cf5c1a47e1aedf.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit c414b9871f263331cde0af1c08cf5c1a47e1aedf.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "merge revision(s) 62430c19c9f1ab49429cebe65f30588472648c95: [Backport #21342]"</title>
<updated>2025-09-29T22:08:47+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-29T22:08:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c414b9871f263331cde0af1c08cf5c1a47e1aedf'/>
<id>c414b9871f263331cde0af1c08cf5c1a47e1aedf</id>
<content type='text'>
This reverts commit 4306c9048fb674d24b92dc46b6746a4749564147.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit 4306c9048fb674d24b92dc46b6746a4749564147.
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 354d47ae5bc4edcc94db4a5391ed71a8b9844e57: [Backport #21569]</title>
<updated>2025-09-29T21:36:06+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-29T21:36:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=22c2262b83224f6798d60d539f1f8609d9722766'/>
<id>22c2262b83224f6798d60d539f1f8609d9722766</id>
<content type='text'>
	IBF: Avoid unaligned load on 32 bit platforms

	[Bug #21569]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	IBF: Avoid unaligned load on 32 bit platforms

	[Bug #21569]
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 62430c19c9f1ab49429cebe65f30588472648c95: [Backport #21342]</title>
<updated>2025-09-29T21:35:15+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-09-29T21:35:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=4306c9048fb674d24b92dc46b6746a4749564147'/>
<id>4306c9048fb674d24b92dc46b6746a4749564147</id>
<content type='text'>
	Properly unlock locked mutexes on thread cleanup.

	Mutexes were being improperly unlocked on thread cleanup. This bug was
	introduced in 050a8954395.

	We must keep a reference from the mutex to the thread, because if the fiber
	is collected before the mutex is, then we cannot unlink it from the thread in
	`mutex_free`. If it's not unlinked from the the thread when it's freed, it
	causes bugs in `rb_thread_unlock_all_locking_mutexes`.

	We now mark the fiber when a mutex is locked, and the thread is marked
	as well. However, a fiber can still be freed in the same GC cycle as the
	mutex, so the reference to the thread is still needed.

	The reason we need to mark the fiber is that `mutex_owned_p()` has an ABA
	issue where if the fiber is collected while it's locked, a new fiber could be
	allocated at the same memory address and we could get false positives.

	Fixes [Bug #21342]

	Co-authored-by: John Hawthorn &lt;john@hawthorn.email&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	Properly unlock locked mutexes on thread cleanup.

	Mutexes were being improperly unlocked on thread cleanup. This bug was
	introduced in 050a8954395.

	We must keep a reference from the mutex to the thread, because if the fiber
	is collected before the mutex is, then we cannot unlink it from the thread in
	`mutex_free`. If it's not unlinked from the the thread when it's freed, it
	causes bugs in `rb_thread_unlock_all_locking_mutexes`.

	We now mark the fiber when a mutex is locked, and the thread is marked
	as well. However, a fiber can still be freed in the same GC cycle as the
	mutex, so the reference to the thread is still needed.

	The reason we need to mark the fiber is that `mutex_owned_p()` has an ABA
	issue where if the fiber is collected while it's locked, a new fiber could be
	allocated at the same memory address and we could get false positives.

	Fixes [Bug #21342]

	Co-authored-by: John Hawthorn &lt;john@hawthorn.email&gt;
</pre>
</div>
</content>
</entry>
</feed>
