<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ruby.git/spec/ruby/core, branch ruby_3_2</title>
<subtitle>github.com: ruby/ruby.git
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/'/>
<entry>
<title>merge revision(s) d2520b7b76759118071a16e6bca22726a5de9fb4: [Backport #19439]</title>
<updated>2023-03-08T05:46:30+00:00</updated>
<author>
<name>NARUSE, Yui</name>
<email>naruse@airemix.jp</email>
</author>
<published>2023-03-08T05:46:30+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=4e4a4e42b284d9309a7e51c97058093539e7a843'/>
<id>4e4a4e42b284d9309a7e51c97058093539e7a843</id>
<content type='text'>
	Marshal.load: restore instance variables on Regexp

	[Bug #19439]

	The instance variables were restore on the Regexp source,
	not the regexp itself.

	Unfortunately we have a bit of a chicken and egg problem.

	The source holds the encoding, and the encoding need to be set on
	the source to be able to instantiate the Regexp.

	So the instance variables have to be read on the `source`.
	To correct this we transfert the instance variables after
	instantiating the Regexp.

	The only way to avoid this would be to read the instance variable
	twice and rewind.
	---
	 marshal.c                             | 20 ++++++++++++++++++--
	 spec/ruby/core/marshal/shared/load.rb | 11 +++++++++++
	 2 files changed, 29 insertions(+), 2 deletions(-)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	Marshal.load: restore instance variables on Regexp

	[Bug #19439]

	The instance variables were restore on the Regexp source,
	not the regexp itself.

	Unfortunately we have a bit of a chicken and egg problem.

	The source holds the encoding, and the encoding need to be set on
	the source to be able to instantiate the Regexp.

	So the instance variables have to be read on the `source`.
	To correct this we transfert the instance variables after
	instantiating the Regexp.

	The only way to avoid this would be to read the instance variable
	twice and rewind.
	---
	 marshal.c                             | 20 ++++++++++++++++++--
	 spec/ruby/core/marshal/shared/load.rb | 11 +++++++++++
	 2 files changed, 29 insertions(+), 2 deletions(-)
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 8ce2fb9bbbaea14737c84385b1573f743a30f773,3a0f6ce1d31eefd8af01b50f3632a64d64e8f8c1: [Backport #19415]</title>
<updated>2023-03-02T00:29:38+00:00</updated>
<author>
<name>NARUSE, Yui</name>
<email>naruse@airemix.jp</email>
</author>
<published>2023-03-02T00:28:58+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=53f6173cfc085a7422b4a76c85e6c35969209327'/>
<id>53f6173cfc085a7422b4a76c85e6c35969209327</id>
<content type='text'>
	Only emit circular dependency warning for owned thread shields [Bug
	 #19415]

	If multiple threads attemps to load the same file concurrently
	it's not a circular dependency issue.

	So we check that the existing ThreadShield is owner by the current
	fiber before warning about circular dependencies.
	---
	 internal/thread.h                                     |  1 +
	 load.c                                                |  3 ++-
	 spec/ruby/core/kernel/shared/require.rb               | 11 +++++++++++
	 spec/ruby/fixtures/code/concurrent_require_fixture.rb |  4 ++++
	 test/ruby/test_require.rb                             |  3 ---
	 thread.c                                              | 11 +++++++++++
	 6 files changed, 29 insertions(+), 4 deletions(-)
	 create mode 100644 spec/ruby/fixtures/code/concurrent_require_fixture.rb

	Use Thread.pass until thread.stop? to wait for thread to block

	[Bug #19415]

	It should be more reliable
	---
	 spec/ruby/fixtures/code/concurrent_require_fixture.rb | 2 +-
	 1 file changed, 1 insertion(+), 1 deletion(-)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	Only emit circular dependency warning for owned thread shields [Bug
	 #19415]

	If multiple threads attemps to load the same file concurrently
	it's not a circular dependency issue.

	So we check that the existing ThreadShield is owner by the current
	fiber before warning about circular dependencies.
	---
	 internal/thread.h                                     |  1 +
	 load.c                                                |  3 ++-
	 spec/ruby/core/kernel/shared/require.rb               | 11 +++++++++++
	 spec/ruby/fixtures/code/concurrent_require_fixture.rb |  4 ++++
	 test/ruby/test_require.rb                             |  3 ---
	 thread.c                                              | 11 +++++++++++
	 6 files changed, 29 insertions(+), 4 deletions(-)
	 create mode 100644 spec/ruby/fixtures/code/concurrent_require_fixture.rb

	Use Thread.pass until thread.stop? to wait for thread to block

	[Bug #19415]

	It should be more reliable
	---
	 spec/ruby/fixtures/code/concurrent_require_fixture.rb | 2 +-
	 1 file changed, 1 insertion(+), 1 deletion(-)
</pre>
</div>
</content>
</entry>
<entry>
<title>Windows: Prefer USERPROFILE over HOMEPATH</title>
<updated>2022-12-24T14:48:47+00:00</updated>
<author>
<name>Lars Kanis</name>
<email>lars@greiz-reinsdorf.de</email>
</author>
<published>2022-12-18T20:05:54+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=d0f5dc9eac78ecade459b740ed08795c8df6d129'/>
<id>d0f5dc9eac78ecade459b740ed08795c8df6d129</id>
<content type='text'>
HOMEPATH is set to "\WINDOWS\system32" when running per "runas" session.
This directory is not writable by ordinary users, leading to errors with many ruby tools.
Also config files in the home directory are not recognized.

Still keeping HOME at first which is not used by native Windows,
but by ruby specs and by MSYS2 environment.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
HOMEPATH is set to "\WINDOWS\system32" when running per "runas" session.
This directory is not writable by ordinary users, leading to errors with many ruby tools.
Also config files in the home directory are not recognized.

Still keeping HOME at first which is not used by native Windows,
but by ruby specs and by MSYS2 environment.
</pre>
</div>
</content>
</entry>
<entry>
<title>Windows: Fix encoding of Dir.home</title>
<updated>2022-12-24T13:54:23+00:00</updated>
<author>
<name>Lars Kanis</name>
<email>lars@greiz-reinsdorf.de</email>
</author>
<published>2022-12-18T20:05:22+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=d6ce4180a5b4dacbac895c9911031a6df6c61136'/>
<id>d6ce4180a5b4dacbac895c9911031a6df6c61136</id>
<content type='text'>
Dir.home returns an UTF-8 string since ruby-3.0, but the actual
encoding of the bytes was CP_ACP or CP_OEMCP.
That led to invalid bytes when calling Dir.home with an unicode
username.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Dir.home returns an UTF-8 string since ruby-3.0, but the actual
encoding of the bytes was CP_ACP or CP_OEMCP.
That led to invalid bytes when calling Dir.home with an unicode
username.
</pre>
</div>
</content>
</entry>
<entry>
<title>Always issue deprecation warning when calling Regexp.new with 3rd positional argument</title>
<updated>2022-12-22T19:50:26+00:00</updated>
<author>
<name>Jeremy Evans</name>
<email>code@jeremyevans.net</email>
</author>
<published>2022-12-20T20:44:11+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=7e8fa06022a9e412e3f8e6c8b6f0ba1909f648d5'/>
<id>7e8fa06022a9e412e3f8e6c8b6f0ba1909f648d5</id>
<content type='text'>
Previously, only certain values of the 3rd argument triggered a
deprecation warning.

First step for fix for bug #18797.  Support for the 3rd argument
will be removed after the release of Ruby 3.2.

Fix minor fallout discovered by the tests.

Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, only certain values of the 3rd argument triggered a
deprecation warning.

First step for fix for bug #18797.  Support for the 3rd argument
will be removed after the release of Ruby 3.2.

Fix minor fallout discovered by the tests.

Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Ensure Fiber storage is only accessed from the Fiber it belongs to</title>
<updated>2022-12-20T18:32:23+00:00</updated>
<author>
<name>Benoit Daloze</name>
<email>eregontp@gmail.com</email>
</author>
<published>2022-12-20T17:21:43+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=0efa36ac06a14a3e2e0aca395fee6530c790bdf1'/>
<id>0efa36ac06a14a3e2e0aca395fee6530c790bdf1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Never use the storage of another Fiber, that violates the whole design</title>
<updated>2022-12-20T18:32:23+00:00</updated>
<author>
<name>Benoit Daloze</name>
<email>eregontp@gmail.com</email>
</author>
<published>2022-12-20T16:59:46+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=45175962a6fd74ab2e9ba92f1280f3987af25494'/>
<id>45175962a6fd74ab2e9ba92f1280f3987af25494</id>
<content type='text'>
* See https://bugs.ruby-lang.org/issues/19078#note-30
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* See https://bugs.ruby-lang.org/issues/19078#note-30
</pre>
</div>
</content>
</entry>
<entry>
<title>Add spec for fiber storage. (#6896)</title>
<updated>2022-12-10T00:54:53+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2022-12-10T00:54:53+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=22d391dc637dd756fdcdfc0ece4a71753b5b2ddb'/>
<id>22d391dc637dd756fdcdfc0ece4a71753b5b2ddb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Clean up a temporary file</title>
<updated>2022-12-09T13:15:38+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2022-12-09T13:15:38+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=fe67998816245fbab6a65095bde3d57f1277609c'/>
<id>fe67998816245fbab6a65095bde3d57f1277609c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduce `IO.new(..., path:)` and promote `File#path` to `IO#path`. (#6867)</title>
<updated>2022-12-08T05:19:53+00:00</updated>
<author>
<name>Samuel Williams</name>
<email>samuel.williams@oriontransfer.co.nz</email>
</author>
<published>2022-12-08T05:19:53+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/ruby.git/commit/?id=6fd5d2dc003bda5ce0685abd2b975d7ac7079d46'/>
<id>6fd5d2dc003bda5ce0685abd2b975d7ac7079d46</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
