Project

General

Profile

Activity

From 06/10/2022 to 06/16/2022

06/16/2022

10:50 PM Misc #18834: Significant change in loop speeds (regressing using while loop on ARM chips)
Interesting! Can you post the output of:
$ ruby -ve 'pp RbConfig::CONFIG, RubyVM::OPTS'
For your ARM build of Ruby? I suspect the performance difference
could be explained by compiler differences.
alanwu (Alan Wu)
10:21 PM Misc #18834 (Feedback): Significant change in loop speeds (regressing using while loop on ARM chips)

I was benchmarking some code and one of the benchmarks I came across was <a href="https://github.com/fastruby/fast-ruby/blob/master/code/enumerable/each_with_index-vs-while-loop.rb">fast-ruby's</a> while vs each_with_index. I ran these...
tarellel (Brandon Hicks)
10:30 PM Feature #18835 (Open): Add InstructionSequence#type method
This method returns a symbol representing the type of the instruction
sequence object.
I'm trying to collect some statistics about instruction sequences for an entire system, but I mostly care about methods and blocks. This feature l...
tenderlovemaking (Aaron Patterson)
08:34 PM Revision e4629219 (git): Fix spec version guard
Follow up for 278fefb96294adf9d27a78f919c714a31b65ef58 alanwu (Alan Wu)
08:25 PM Bug #18806 (Closed): protected methods defined by refinements can't be called
Applied in changeset commit:git|ae163cae6b3f01e0fb827e0a18d5889f9703617f.
----------
Allow calling protected methods from refinements
Previously protected methods on refinements could never be called
because they were seen as being "de...
jhawthorn (John Hawthorn)
04:14 AM Bug #18806: protected methods defined by refinements can't be called
The option 1 is accepted.
Matz.
matz (Yukihiro Matsumoto)
08:24 PM Revision ae163cae (git): Allow calling protected methods from refinements
Previously protected methods on refinements could never be called
because they were seen as being "defined" on the hidden refinement
ICLASS.
This commit updates calling refined protected methods so that they are
considered to be defined...
jhawthorn (John Hawthorn)
06:57 PM Bug #17130: Method#super_method is broken for aliased methods
It looks to me like super_method is still broken for aliased methods.
```
class A
def foo; end
end
class B < A
alias foo2 foo
end
p B.instance_method(:foo2).super_method #=> #<UnboundMethod: A#foo>
```
I believe that he...
Dan0042 (Daniel DeLorme)
05:38 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
Thank you everyone for your help so far. This is very exciting!
> like renaming
I did some brainstorming. I think having the word "syntax" in the name will help people remember or find it. Originally I scoped this to keywords `do` ...
schneems (Richard Schneeman)
07:45 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
I accept merging the functionality of `dead_end` gem to the core like `did_you_mean`. We have a few remaining issues like renaming it or separating `dead_end` command from the gem, etc.
Matz.
matz (Yukihiro Matsumoto)
07:19 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
We had a discussion today at the monthly committers' meeting, and there was general agreement to move ahead.
One point that was discussed was the name. It's a funny name, but it may not be easy to understand for beginners (compare e.g...
duerst (Martin Dürst)
06:58 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
How about to move `::DeadEnd` to `::SyntaxError::DeadEnd` if it is only used for SyntaxError message modification?
(I don't know details so if it is not only for SyntaxError, please ignore this comment)
ko1 (Koichi Sasada)
05:13 PM Feature #18832: Do not have class/module keywords consider ancestors of Object
I agree we shouldn't look in modules prepended/included in Object, only look on the lexical parent itself (not its ancestors).
This is one of these inconsistent "deep constant lookup" exceptions (the other I remember is "deepMethodSearc...
Eregon (Benoit Daloze)
04:59 PM Misc #18691: An option to build Ruby with build only flags not propagated to `rbconfig.rb`.
> So, I want to add the ARCH_FLAG to configure script environment variables for convenience.
Just note. I tried to implement build only flags to inject ARCH_FLAG in Makefile with the patch below (the last commit on <https://github.com/j...
jaruga (Jun Aruga)
04:56 PM Bug #18729: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
matz (Yukihiro Matsumoto) wrote in #note-24:
> > One way to address that is https://bugs.ruby-lang.org/issues/18751#note-11 (no longer hide ZSUPER method entry from users).
> ...
Could you point the incompatibility(ies)?
I think we ne...
Eregon (Benoit Daloze)
02:21 PM Bug #18729: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
> One way to address that is https://bugs.ruby-lang.org/issues/18751#note-11 (no longer hide ZSUPER method entry from users).
It is. And I once thought it was a good idea, but the change caused some incompatibility we don't want to se...
matz (Yukihiro Matsumoto)
02:15 PM Bug #18729: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
> On current TruffleRuby it's "B:hello" (same as current CRuby), due to that.
That's nice. It is an illusion we want to present.
Matz.
matz (Yukihiro Matsumoto)
10:09 AM Bug #18729: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
matz (Yukihiro Matsumoto) wrote in #note-20:
> And if I understand correctly, copying could cause the following code to print "B:B:hello", which is confusing.
That depends on the details of super lookup, which can notice it should go...
Eregon (Benoit Daloze)
10:06 AM Bug #18729: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
@matz Right, this is the something you intended initially for public/protected/private.
I think most Rubyists do not understand this detail and the real practical issue is the inconsistencies shown by Method/UnboundMethod objects (e.g.,...
Eregon (Benoit Daloze)
09:16 AM Bug #18729: Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
And if I understand correctly, copying could cause the following code to print "B:B:hello", which is confusing.
```ruby
class A
private def foo; puts "hello"; end
end
class B<A
private def foo; print "B:"; super; end
end
cl...
matz (Yukihiro Matsumoto)
09:11 AM Bug #18729 (Rejected): Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private
The current method searching is symbolic (not copying at the time) except for aliases intentionally. For example, if you redefine a method in a module after a class included the module, the redefined method is called. Aliasing is an exce... matz (Yukihiro Matsumoto)
04:49 PM Bug #18827 (Closed): `__ENCODING__` is not set to the source encoding when saving script lines
Applied in changeset commit:git|cd5cafa4a380e2459862b6e99ff0c381362ef1be.
----------
Respect the encoding of the source [Bug #18827]
Do not override the input string encoding at the time of preparation,
the source encoding is not deter...
nobu (Nobuyoshi Nakada)
04:48 PM Revision cd5cafa4 (git): Respect the encoding of the source [Bug #18827]
Do not override the input string encoding at the time of preparation,
the source encoding is not determined from the input yet.
nobu (Nobuyoshi Nakada)
04:22 PM Feature #18279 (Closed): ENV.merge! support multiple arguments as Hash.merge!
Applied in changeset commit:git|278fefb96294adf9d27a78f919c714a31b65ef58.
----------
ENV.merge! support multile arguments [Feature #18279]
nobu (Nobuyoshi Nakada)
08:52 AM Feature #18279: ENV.merge! support multiple arguments as Hash.merge!
Accepted.
Matz.
matz (Yukihiro Matsumoto)
04:22 PM Revision 278fefb9 (git): ENV.merge! support multile arguments [Feature #18279]
nobu (Nobuyoshi Nakada)
03:48 PM Revision 51835135 (git): Added tests for setting ivars on frozen objs
jemmai (Jemma Issroff)
03:48 PM Revision c49fde35 (git): Adding more clone tests, and adding dup tests
jemmai (Jemma Issroff)
03:47 PM Revision cfe9c24d (git): * 2022-06-17 [ci skip]
git[bot]
03:47 PM Revision af425b6d (git): Added vm_ivar benchmark for initializing an embedded obj
jemmai (Jemma Issroff)
02:56 PM Revision 0ab2bca1 (git): [ruby/fileutils] [DOC] Small tweaks (https://github.com/ruby/fileutils/pull/89)
https://github.com/ruby/fileutils/commit/13ab96439b burdettelamar (Burdette Lamar)
02:35 PM Revision c310691d (git): [ruby/net-http] Make `Net::HTTPHeader#content_range` return nil on non-byte units
* Returning nil from the `content_range` method instead of raising an
error when the unit in the content-range header is not "bytes".
Fix https://bugs.ruby-lang.org/issues/11450
https://github.com/ruby/net-http/commit/0b5030dd86
Co-...
Shishir Joshi
02:19 PM Bug #18829 (Closed): GC_COMPACTION_SUPPORTED macro should be set and detected automatically.
Applied in changeset commit:git|52d42e702375446746164a0251e1a10bce813b78.
----------
Rename GC_COMPACTION_SUPPORTED
Naming this macro GC_COMPACTION_SUPPORTED is misleading because it
only checks whether compaction is supported at compi...
peterzhu2118 (Peter Zhu)
02:18 PM Revision 79eaaf2d (git): Include runtime checks for compaction support
Commit 0c36ba53192c5a0d245c9b626e4346a32d7d144e changed GC compaction
methods to not be implemented when not supported. However, that commit
only does compile time checks (which currently only checks for WASM),
but there are additional c...
peterzhu2118 (Peter Zhu)
02:18 PM Revision 52d42e70 (git): Rename GC_COMPACTION_SUPPORTED
Naming this macro GC_COMPACTION_SUPPORTED is misleading because it
only checks whether compaction is supported at compile time.
[Bug #18829]
peterzhu2118 (Peter Zhu)
01:10 PM Revision 2223eb08 (git): Revert "HTTPHeader.content_range throws error on non-byte units"
This reverts commit 63546bfc1581d4abec2a0d846106a1c0afc0efa9. nobu (Nobuyoshi Nakada)
12:43 PM Revision 1cc64a55 (git): [ruby/racc] Fix flag to `Regexp.new`
Probably intended to pass encoding "none".
https://github.com/ruby/racc/commit/65cd26efd8
nobu (Nobuyoshi Nakada)
11:20 AM Revision 714a4942 (git): Remove unused and accidentally public rb_str_shared_root_p()
This function was added to a public header in [1] probably
unintentionally since it's not used anywhere, exposes implementation
details, and isn't related to the goals of that pull request.
[1]: 56cc3e99b6b9ec004255280337f6b8353f5e5b06
alanwu (Alan Wu)
11:17 AM Bug #11450 (Closed): HTTPHeader.content_range throws error on non-byte units
Applied in changeset commit:git|63546bfc1581d4abec2a0d846106a1c0afc0efa9.
----------
HTTPHeader.content_range throws error on non-byte units
* Added a nil check in Net::HTTPHeader#initialize_http_header for keys in the header that do n...
Anonymous
11:17 AM Bug #12055 (Closed): `NET::HTTPResponse` is not deflating responses with custom `Content-Range` header
Applied in changeset commit:git|63546bfc1581d4abec2a0d846106a1c0afc0efa9.
----------
HTTPHeader.content_range throws error on non-byte units
* Added a nil check in Net::HTTPHeader#initialize_http_header for keys in the header that do n...
Anonymous
11:16 AM Revision 63546bfc (git): HTTPHeader.content_range throws error on non-byte units
* Added a nil check in Net::HTTPHeader#initialize_http_header for keys in the header that do not have any value
* Returning nil from the content_range method instead of raising an error when the unit in the content-range header is not by...
Shishir Joshi
08:22 AM Bug #8973 (Feedback): Allow to configure archlibdir for multiarch
nobu (Nobuyoshi Nakada)
07:54 AM Feature #18183: make SecureRandom.choose public
I prefer `Random::Formatter#alphanumeric(n = 16, chars: …)` to others. But `alphabet:` or `set:` are acceptable too.
Matz.
matz (Yukihiro Matsumoto)
07:47 AM Revision 8ef312fc (git): MJIT: Consider compaction on CC failure
k0kubun (Takashi Kokubun)
07:27 AM Bug #18826: Symbol#to_proc inconsistent, sometimes calls private methods
In general, `a.b(&:c)` should behave exactly the same as `a.b{_1.c}`. But visibility check for `protected` methods may be too difficult for `to_proc`. So rejecting `protected` methods altogether like `private` methods is acceptable.
...
matz (Yukihiro Matsumoto)
06:44 AM Feature #18461 (Rejected): closures are capturing unused variables
Rejected. Ruby and JavaScript are different languages.
Upon existence of `eval`, the impact of removing unused variables from closures are far bigger in Ruby. The optimization should not be mandatory.
If there's no side effect (e.g. `e...
matz (Yukihiro Matsumoto)
06:26 AM Feature #18788: Support passing Regexp options as String to Regexp.new
Accepted. Unknown flags should raise errors.
Matz.
matz (Yukihiro Matsumoto)
05:10 AM Revision 30ca4a82 (git): MJIT: Remove free_compiling_iseqs from mswin
k0kubun (Takashi Kokubun)
05:09 AM Revision b5079794 (git): MJIT: Handle compaction units on stop_worker
k0kubun (Takashi Kokubun)
04:58 AM Revision 66f0ce34 (git): MJIT: Get rid of obsoleted compiling_iseqs
k0kubun (Takashi Kokubun)
04:54 AM Bug #18833: Documentation for IO#gets is inaccurate (bytes versus characters)
Correction - the `IO#gets` data for a UTF-8 input stream including BOM *does* include the BOM as an invisible first character. I didn't notice at first because it's, well, invisible!
Doesn't change the documentation issue at hand, but...
adh1003 (Andrew Hodgkinson)
04:02 AM Bug #18833: Documentation for IO#gets is inaccurate (bytes versus characters)
For avoidance of doubt, the behaviour of Ruby itself is (IMHO) sensible and working well. The only change needed is to alter the word "bytes" to "characters" for the `IO#gets` description of the `limit` parameter. adh1003 (Andrew Hodgkinson)
04:01 AM Bug #18833 (Rejected): Documentation for IO#gets is inaccurate (bytes versus characters)
Please see https://ruby-doc.org/core-3.1.2/IO.html#method-i-gets:
> With integer argument `limit` given, returns up to `limit+1` bytes:
In relation to https://github.com/janko/down/pull/74, I discovered that while `IO#read` ignores...
adh1003 (Andrew Hodgkinson)
04:41 AM Bug #18813: Let Module#autoload be strict about the autoloaded constant
I am against the behavior change, because of the compatibility concern. It's OK for me to give warning instead of raising exceptions.
Matz.
matz (Yukihiro Matsumoto)
04:32 AM Revision 1ffc6c43 (git): MJIT: Deal with mjit_free_iseq on mjit_notify_waitpid
k0kubun (Takashi Kokubun)
12:18 AM Revision 332985c1 (git): MJIT: Fix test_jit_failure for mswin
k0kubun (Takashi Kokubun)

06/15/2022

11:50 PM Revision 15a6dd56 (git): MJIT: Handle C compiler failures
k0kubun (Takashi Kokubun)
11:07 PM Revision 17d260a8 (git): Restore rb_exec_recursive_outer
This was a public method, so we should probably keep it. jhawthorn (John Hawthorn)
10:57 PM Revision 5310147b (git): MJIT: Handle JIT failure properly
k0kubun (Takashi Kokubun)
09:49 PM Feature #18832: Do not have class/module keywords consider ancestors of Object
You're right, it happens too if the first element of the nesting is `Object`.
For context, this happened in a Rails application that had `app/models/comment.rb`, which worked regularly fine. However, in a `.rake` file the project had ...
fxn (Xavier Noria)
09:08 PM Feature #18832: Do not have class/module keywords consider ancestors of Object
fxn (Xavier Noria) wrote in #note-3:
> Even more, if you set an autoload for `C` in `Object`, the autoload is triggered. Which is also consistent with "I have not found the constant in my lookup, but let's trigger the autoload to get it...
jeremyevans0 (Jeremy Evans)
09:01 PM Feature #18832: Do not have class/module keywords consider ancestors of Object
Even more, if you set an autoload for `C` in `Object`, the autoload is triggered. Which is also consistent with "I have not found the constant in my lookup, but let's trigger the autoload to get it defined hopefully". This is also consis... fxn (Xavier Noria)
08:47 PM Feature #18832: Do not have class/module keywords consider ancestors of Object
There is something weird here somewhere.
In general, Ruby does not check the ancestors as far as I can tell. Take the same situation with non-empty nesting:
```ruby
module M
class C
end
end
module N
include M
cla...
fxn (Xavier Noria)
08:23 PM Feature #18832: Do not have class/module keywords consider ancestors of Object
I don't think this is a bug. `p Object.const_defined?(:C, false)` explicitly says you don't want to look into ancestors. However `class C` at top level will look into ancestors of Object (even `class Object::C` will). I don't believe R... jeremyevans0 (Jeremy Evans)
08:13 PM Feature #18832 (Closed): Do not have class/module keywords consider ancestors of Object
The following code:
```ruby
module M
class C
end
end
include M
p Object.const_defined?(:C, false)
class C < String # (1)
end
```
prints `false`, as expected, but then raises `superclass mismatch for class C (Type...
fxn (Xavier Noria)
08:56 PM Revision 1e8fed2d (git): [ruby/fileutils] [DOC] More on paths and lists (https://github.com/ruby/fileutils/pull/88)
https://github.com/ruby/fileutils/commit/ba3ae2430d burdettelamar (Burdette Lamar)
08:46 PM Revision 9eabc575 (git): [ci skip] [lldb] Ensure rbbt has loaded the globals
rb_backtrace relies on the existend of RUBY_T_MASK. This is set up by
the global loading code in lldb_init()
rb_backtrace does not call lldb_init previously, and therefore would
only work if called after another lldb function that _did_...
eightbitraptor (Matt V-H)
05:59 PM Revision acee714c (git): [ci skip] Print the rb_classext_t for a class, using an offset
Now that classes are using VWA, the RCLASS_PTR uses an offset to get the
rb_classext_t object. Doing this all the time in lldb is boring. So
script lldb to do it for us
eightbitraptor (Matt V-H)
05:57 PM Revision a327ce8b (git): Remove unused rb_thread_create_mjit_thread
follow up https://github.com/ruby/ruby/pull/6006 k0kubun (Takashi Kokubun)
05:52 PM Revision 23459e4d (git): Move RubyVM::MJIT to builtin Ruby
just less C code to maintain k0kubun (Takashi Kokubun)
04:41 PM Misc #18830 (Closed): Remove MJIT worker thread
Applied in changeset commit:git|1162523bae926cfa6128043b635e28c14b732754.
----------
Remove MJIT worker thread (#6006)
[Misc #18830]
k0kubun (Takashi Kokubun)
04:28 PM Misc #18830: Remove MJIT worker thread
Thank you for sharing your past usage of Ruby on Windows. I'll keep the MSWIN support during the changes of this ticket anyway, but note that you might not have been using MSWIN. If you installed Ruby with RubyInstaller2, it's MinGW. In ... k0kubun (Takashi Kokubun)
11:33 AM Misc #18830: Remove MJIT worker thread
I am currently using Ruby with FreeBSD, macOS and GNU/Linux.
In the past I had to run Ruby with https://github.com/rails-sqlserver/tiny_tds in a Windows Server. About 4 years ago.
kaiquekandykoga (Kaíque Koga)
07:53 AM Misc #18830 (Closed): Remove MJIT worker thread
## Proposal
* Remove MJIT worker thread
* Compiling ISeq to C should synchronously happen in Ruby threads
* Unix platforms asynchronously wait for a C compiler process to finish using SIGCHLD, and MSWIN synchronously waits for a...
k0kubun (Takashi Kokubun)
04:40 PM Revision 1162523b (git): Remove MJIT worker thread (#6006)
[Misc #18830] k0kubun (Takashi Kokubun)
04:21 PM Feature #16495: Inconsistent quotes in error messages
> the weird practice of putting three periods before and after a code block cited in a text
It is a cultural difference. In many languages/writing conventions, three dots is a sign of "phrase broken in the middle". Can be used when le...
zverok (Victor Shepelev)
03:43 PM Feature #16495: Inconsistent quotes in error messages
zverok (Victor Shepelev) wrote in #note-21:
> I wonder what is the **necessity** to preserve this legacy convention of ``assimetric `quotes'``?.. Just because it is already this way?.. (If you ask me, it irked me always as also looking ...
austin (Austin Ziegler)
02:20 PM Feature #16495: Inconsistent quotes in error messages
zverok (Victor Shepelev) wrote in #note-21:
> (If you ask me, it irked me always as also looking weird in the terminal, but maybe it is something personal)(
Speaking of irking, the weird practice of putting three periods before and ...
sawa (Tsuyoshi Sawada)
01:02 PM Feature #16495: Inconsistent quotes in error messages
@nobu Even where it works, it is not common knowledge of the way to hack around the **necessity** to post a singular backtick. Note that it was discovered in the current issue after **2 years of a discussion**. (I use markdown almost eve... zverok (Victor Shepelev)
12:49 PM Feature #16495: Inconsistent quotes in error messages
As it seems working in other than titles, it would be an issue of GitHub.
You should report it to GitHub, not here.
nobu (Nobuyoshi Nakada)
12:09 PM Feature #16495: Inconsistent quotes in error messages
Not sure if it's well supported, it doesn't work in GitHub issue title which is one place where I have this problem.
https://github.com/socketry/async/issues/50
ioquatix (Samuel Williams)
11:28 AM Feature #16495: Inconsistent quotes in error messages
https://daringfireball.net/projects/markdown/syntax#code
> To include a literal backtick character within a code span, you can use multiple backticks as the opening and closing delimiters:
> ...
>
nobu (Nobuyoshi Nakada)
10:03 AM Feature #16495: Inconsistent quotes in error messages
> Why don't you use double- or triple-backticks?
Because that doesn't work for inline Markdown.
ioquatix (Samuel Williams)
03:23 AM Feature #16495: Inconsistent quotes in error messages
zverok (Victor Shepelev) wrote in #note-12:
> Because error messages are by their nature something you frequently want to communicate quickly and inline?
> ...
Why don't you use double- or triple-backticks?
> Ugh, do you know why a...
nobu (Nobuyoshi Nakada)
04:04 PM Revision 64fb3279 (git): * 2022-06-16 [ci skip]
git[bot]
04:04 PM Revision d154d5d2 (git): Add imemo types to global namespace in lldb helpers
jemmai (Jemma Issroff)
01:17 PM Revision bb12aa4d (git): Remove unnecessary condition
`no_blockarg` is called for non-null `node` only. nobu (Nobuyoshi Nakada)
12:59 PM Feature #18831 (Open): Block argument to `yield`
Block argument to `yield` is a syntax error.
This is because there was previously no way to receive a given block in the yielded block.
However `do |&block|` has been introduced since 1.8.7.
Why is it prohibited still now?
https:/...
nobu (Nobuyoshi Nakada)
12:10 PM Revision d417c1dd (git): [rubygems/rubygems] Revert "Support running specs with asdf version manager"
This reverts commit https://github.com/rubygems/rubygems/commit/4b2d09af5bc7.
https://github.com/rubygems/rubygems/commit/90ca7a7163
deivid (David Rodríguez)
09:14 AM Revision e09bdc11 (git): [rubygems/rubygems] Support running specs with asdf version manager
The `asdf-ruby` plugin sets `RUBYLIB` to require some code to reshim
after installing gems. This interferes with our specs.
Reset that, but leave any "internal" entries in places, because the
ruby-core test setup also uses RUBYLIB.
htt...
deivid (David Rodríguez)
07:01 AM Revision daf086c0 (git): Update bundled gems list at 2022-06-15
git[bot]
05:42 AM Revision 46706e78 (git): MJIT: Add a test for Process.waitall handling
k0kubun (Takashi Kokubun)
03:55 AM Bug #8973: Allow to configure archlibdir for multiarch
@vo.x With your patch and `--with-multiarch --with-archlibdir='${libdir}'`, not only libruby.so but also all standard library extensions are placed under `${libdir}` without `${arch}`.
Is this intentional?
nobu (Nobuyoshi Nakada)
12:14 AM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
The issue with #18487 was that `Kernel#binding` used to find the
first Ruby frame on the stack and that this iterating behavior
is brittle as it basically acts as an assertion that the frames
that it skips over remain as non-Ruby frames ...
alanwu (Alan Wu)

06/14/2022

10:52 PM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
alanwu (Alan Wu) wrote in #note-15:
> I spoke too soon! Flipping the `if` in `demo.rb`:
> ...
Doesn't the change in https://bugs.ruby-lang.org/issues/18487 (raising a kernel error) imply that this doesn't need to be fixed?
Also, tha...
daveola (David Stellar)
09:19 PM Bug #18780 (Open): Incorrect binding receiver for C API rb_eval_string()
> I wrote a reproducer and luckily, it's no
> ...
I spoke too soon! Flipping the `if` in `demo.rb`:
```text
ruby 3.2.0dev (2022-06-14T16:06:06Z master ab10f111c3) [x86_64-darwin21]
[:rbeval_string, :main, :mainl]
"p [:in_main, sel...
alanwu (Alan Wu)
09:12 PM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
Thanks for the bug report. The "binding with mixed information from two
contexts" situation from <https://bugs.ruby-lang.org/issues/18780#note-4>
definitely looks wrong. I wrote a reproducer and luckily, it's no
longer an issue on the...
alanwu (Alan Wu)
08:42 PM Revision 788a5e14 (git): [ruby/fileutils] [DOC] More on cp_r (https://github.com/ruby/fileutils/pull/87)
* More on cp_r
https://github.com/ruby/fileutils/commit/82a2b62578
burdettelamar (Burdette Lamar)
08:26 PM Bug #18829 (Open): GC_COMPACTION_SUPPORTED macro should be set and detected automatically.
Thank you for the ticket. I have [a patch](https://github.com/ruby/ruby/pull/6019) that should fix this issue, please try it out and let me know if it works. peterzhu2118 (Peter Zhu)
07:54 PM Bug #18829 (Closed): GC_COMPACTION_SUPPORTED macro should be set and detected automatically.
Since this problem does not occur in the master branch (due to the increased page size), it seems like the bug has already been fixed/worked around. It seems unlikely we would backport the increased page size to older Ruby versions, and... jeremyevans0 (Jeremy Evans)
10:58 AM Bug #18829 (Closed): GC_COMPACTION_SUPPORTED macro should be set and detected automatically.
After backporting the patch [0] for GC compaction support from https://github.com/ruby/ruby/pull/5934 (for bug https://bugs.ruby-lang.org/issues/18779), I found that there is no mechanism to automatically define the GC_COMPACTION_SUPPORT... jprokop (Jarek Prokop)
08:10 PM Bug #18826: Symbol#to_proc inconsistent, sometimes calls private methods
I agree with the @Eregon 's analysis, and submitted a pull request that makes Symbol#to_proc return a proc that will only call public methods: https://github.com/ruby/ruby/pull/6018 . I'm not happy with the implementation as it copies a... jeremyevans0 (Jeremy Evans)
10:44 AM Bug #18826: Symbol#to_proc inconsistent, sometimes calls private methods
Also worth noting that for performance purposes, `Symbol#to_proc` should be able to be cached globally, i.e., cache the Proc in the/per Symbol instance.
So then the `self` inside that Proc should be a sentinel value (`nil` or the Symbol...
Eregon (Benoit Daloze)
10:06 AM Bug #18826: Symbol#to_proc inconsistent, sometimes calls private methods
I think Symbol#to_proc should behave like `public_send`, i.e., only allows calling public methods.
That makes sense given we don't really have a call-site where we can assess the caller self easily, especially if converted to something ...
Eregon (Benoit Daloze)
12:12 AM Bug #18826: Symbol#to_proc inconsistent, sometimes calls private methods
This appears to be caused by the use of the `VM_FCALL` flag in `vm_call_symbol`. Since `:foo.to_proc` should be treated as `lambda{|t| t.foo}`, not `lambda{|t| t.send(:foo)}`, I agree that this is a bug.
Fixing this for private metho...
jeremyevans0 (Jeremy Evans)
06:17 PM Bug #18808 (Assigned): Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
Thank you both. As long as we have rb_mjit_header.h, I think we can work on it. I'll work on what @michals provided to close this issue. k0kubun (Takashi Kokubun)
05:17 PM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
Line 22951-22953 of `rb_mjit_header.h`:
```c
__attribute__ ((__visibility__("default"))) extern
_Bool
rb_iseq_only_optparam_p(const rb_iseq_t *iseq)
```
Note the newline immediately following `extern`, which is unexpected by th...
xtkoba (Tee KOBAYASHI)
05:11 PM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
```
--- rb_mjit_header.h 2022-06-14 18:58:52.514742594 +0200
+++ rb_mjit_min_header-3.2.0.h 2022-06-14 07:47:37.415389264 +0200
...
@@ -22947,7 +16629,7 @@
((iseq)->body)->param.flags.has_kwrest == 0 &&
...
michals (Michal Suchánek)
04:17 PM Bug #18808 (Feedback): Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
Given that this is not reproduced on RubyCI, I think this report is not actionable until we see an entire rb_mjit_header.h (not rb_mjit_min_header-3.2.0.h) that reproduces this problem. I'll leave this issue until somebody uploads one.
...
k0kubun (Takashi Kokubun)
03:18 PM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
You can, but then the recipient should attach the files here anyway for everybody to be able to debug the issue with them. Do you have a browser to upload them yourself? k0kubun (Takashi Kokubun)
02:52 PM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
Can I email these files to someone directly rather than post them here? npn (John Davis)
08:46 AM Bug #18808 (Assigned): Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
mame (Yusuke Endoh)
08:09 AM Bug #18808 (Open): Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
mame (Yusuke Endoh)
05:58 AM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
```
/tmp/20220614-16633-i2edux.h:16633:1: error: multiple storage classes in declaration specifiers
__attribute__ ((__visibility__("default"))) extern
^
compilation terminated due to -Wfatal-errors.
```
```
_Bool
rb_simple_iseq...
michals (Michal Suchánek)
03:59 AM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
If `__attribute__ ((__visibility__("default")))` did not go with `extern` on a specific platform, then the following C code failed to compile:
```c
__attribute__ ((__visibility__("default"))) extern
int foo(void);
```
FWIW, with...
xtkoba (Tee KOBAYASHI)
05:24 PM Feature #18825: Specialized instruction for "array literal + `.hash`"
mame (Yusuke Endoh) wrote in #note-1:
> Just an idea. Is it possible to introduce a general instruction like `opt_newarray_send` instead of individual `opt_newarray_*` instructions?
It should be possible (IMO). But I guess it means ...
tenderlovemaking (Aaron Patterson)
01:26 AM Feature #18825: Specialized instruction for "array literal + `.hash`"
Just an idea. Is it possible to introduce a general instruction like `opt_newarray_send` instead of individual `opt_newarray_*` instructions? mame (Yusuke Endoh)
04:06 PM Revision ab10f111 (git): * 2022-06-15 [ci skip]
git[bot]
04:05 PM Revision 9357e310 (git): [ruby/psych] Fix libyaml download failure rescue under miniruby
I tried to build Ruby on a system without libyaml today and realized
that my attempt from <https://github.com/ruby/psych/pull/557> doesn't
fix the error in <https://github.com/ruby/psych/issues/552>. I still got
the same `LoadError` from...
alanwu (Alan Wu)
02:23 PM Revision 9f09397b (git): YJIT: On-demand executable memory allocation; faster boot (#5944)
This commit makes YJIT allocate memory for generated code gradually as
needed. Previously, YJIT allocates all the memory it needs on boot in
one go, leading to higher than necessary resident set size (RSS) and
time spent on boot initiali...
alanwu (Alan Wu)
01:52 PM Revision 9b9cc8ad (git): [ruby/fileutils] [DOC] More on paths and lists (https://github.com/ruby/fileutils/pull/86)
* More on paths and lists
https://github.com/ruby/fileutils/commit/c3d92d34f4
burdettelamar (Burdette Lamar)
11:42 AM Bug #18828 (Closed): [Ripper] Anonymous parameter forwarding failures are not checked
Applied in changeset commit:git|1a70973f7557af33bfca6e2edc5cd302937425a4.
----------
ripper: Check if anonymous parameters defined [Bug #18828]
nobu (Nobuyoshi Nakada)
09:34 AM Bug #18828: [Ripper] Anonymous parameter forwarding failures are not checked
https://github.com/ruby/ruby/pull/6016 nobu (Nobuyoshi Nakada)
09:26 AM Bug #18828 (Closed): [Ripper] Anonymous parameter forwarding failures are not checked
#### Anonymous rest parameter
```shell-session
$ ruby -c -e 'def b; c(*); end'
-e:1: no anonymous rest parameter
$ ruby -rripper -e 'p Ripper.new("def b; c(*); end").tap(&:parse).error?'
false
```
#### Anonymous keyword rest p...
nobu (Nobuyoshi Nakada)
11:41 AM Revision 1a70973f (git): ripper: Check if anonymous parameters defined [Bug #18828]
nobu (Nobuyoshi Nakada)
10:40 AM Misc #18803: DevMeeting-2022-06-16
* [Bug #18729] Method#owner and UnboundMethod#owner are incorrect after using Module#public/protected/private (eregon)
* Please see https://bugs.ruby-lang.org/issues/18435#note-12
* Removing "ZSUPER methods" solves everything: simp...
Eregon (Benoit Daloze)
02:31 AM Misc #18803: DevMeeting-2022-06-16
* [Feature #18159] Integrate functionality of dead_end gem into Ruby (@duerst)
* How about this?
* IMO: We try to add `dead_end` as the default gems before releasing 3.2.0-preview2
hsbt (Hiroshi SHIBATA)
09:45 AM Feature #18749: Strangeness of endless inclusive ranges
@mame san, thanks for letting me know about the discussion.
It looks to me that the discussion you quoted was directed toward letting `1..` be an alias of `1...`, just like https://bugs.ruby-lang.org/issues/18749#note-1 suggests, all ...
sawa (Tsuyoshi Sawada)
07:07 AM Feature #18749 (Rejected): Strangeness of endless inclusive ranges
We were aware of this issue, and we agreed with the current behavior. This thread in Twitter discusses the issue: https://twitter.com/mrkn/status/987509913365594112
Here is a simple English translation:
* ko1: Under `ary = [1, 2, 3]`, ...
mame (Yusuke Endoh)
08:07 AM Bug #8973 (Assigned): Allow to configure archlibdir for multiarch
Okay thanks for your quick answer. @nobu Could you review the patch? mame (Yusuke Endoh)
07:12 AM Bug #8973: Allow to configure archlibdir for multiarch
Although I have not checked what is the situation with the `--with-rubyarchprefix` for a long time. vo.x (Vit Ondruch)
07:10 AM Bug #8973: Allow to configure archlibdir for multiarch
Yes please! We still carry around the patch in Fedora:
https://src.fedoraproject.org/rpms/ruby/blob/rawhide/f/ruby-2.1.0-Enable-configuration-of-archlibdir.patch
vo.x (Vit Ondruch)
06:13 AM Bug #8973 (Feedback): Allow to configure archlibdir for multiarch
@vo.x Do you still want this? I'd like to know if the patch is still need to review mame (Yusuke Endoh)
07:23 AM Feature #18773: deconstruct to receive a range
It would be easier to discuss if you could write a spec of what pattern match will pass what range. I understand as follows by reading your implementation. Right?
* `ary in [1, 2, 3]` will call `ary.deconstruct(3..3)`, which means "th...
mame (Yusuke Endoh)
04:34 AM Feature #18773 (Assigned): deconstruct to receive a range
mame (Yusuke Endoh)
06:36 AM Bug #10855 (Third Party's Issue): [PATCH] Matrix#inverse returns matrix of integers whenever possible
Now the matrix library is a bundled gem, so (if needed) let's continue to discuss it in their bug tracker https://github.com/ruby/matrix. mame (Yusuke Endoh)
03:43 AM Bug #18827: `__ENCODING__` is not set to the source encoding when saving script lines
https://github.com/ruby/ruby/pull/6015 nobu (Nobuyoshi Nakada)
02:33 AM Bug #18827 (Closed): `__ENCODING__` is not set to the source encoding when saving script lines
`__ENCODING__` should respect the encoding of the given source code.
```shell-session
$ ruby -Ke -e 'p __ENCODING__'
#<Encoding:EUC-JP>
```
```ruby
p eval("__ENCODING__".encode("euc-jp")) #=> #<Encoding:EUC-JP>
```
But it is ig...
nobu (Nobuyoshi Nakada)
03:31 AM Feature #18183: make SecureRandom.choose public
> - `Random::Formatter#from_set(set, n = 16)` (or `Random::Formatter#from_set(n = 16, set: …)`)
I like `Random::Formatter#from_set` or `Random::Formatter#from_alphabet` because `from` makes it clear what the purpose of the additional ...
olleicua (Antha Auciello)
03:25 AM Feature #18183: make SecureRandom.choose public
mame (Yusuke Endoh) wrote in #note-13:
> austin (Austin Ziegler) wrote in #note-11:
> ...
I think that `#alphanumeric` might still be the better name as the alphabet could be `[*'ABCDFGHKMNPQRTUVWXYZ'.split(''), *'0'..'9']`. If that’s ...
austin (Austin Ziegler)
02:40 AM Feature #18183: make SecureRandom.choose public
austin (Austin Ziegler) wrote in #note-11:
> One option would be to extend `Random::Formatter#alphanumeric` to have an optional "alphabet":
This approach looks nice to me. If "numeric" sounds a bit weird here, how about introducing `...
mame (Yusuke Endoh)
01:21 AM Revision 048f1422 (git): Add placeholder to let braces match
nobu (Nobuyoshi Nakada)

06/13/2022

08:43 PM Bug #18826 (Closed): Symbol#to_proc inconsistent, sometimes calls private methods
The following usage calls a protected method and prints "hello":
``` ruby
class Test
protected
def referenced_columns
puts "hello"
end
end
Test.new.tap(&:referenced_columns)
```
However, the follow...
bjfish (Brandon Fish)
08:23 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
> AbstractSyntaxTree already has script_lines for the sake of AST.of method. I think it's reasonable to make these lines accessible from SyntaxError too.
That is perfect. Not having to read in a file to get contents makes this much ea...
schneems (Richard Schneeman)
09:16 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
@schneems If this proposal was accepted, can you transfer `dead_end` to under the ruby organization? The ruby committer needs to develop the upstream because the change of Ruby interpreter broke the default gems.
It's great to fix it ...
hsbt (Hiroshi SHIBATA)
05:49 PM Misc #18691: An option to build Ruby with build only flags not propagated to `rbconfig.rb`.
nobu (Nobuyoshi Nakada) wrote in #note-1:
> I think you can pass build-time-only flags to `make`:
> ...
I tested. And I see that the `make install` also needs the `ARCH_FLAG` to build some native extension gems.
```
$ make install ...
jaruga (Jun Aruga)
05:36 PM Misc #18691: An option to build Ruby with build only flags not propagated to `rbconfig.rb`.
> > https://github.com/ruby/ruby/pull/5879
> ...
As you know, the PR to add `configure --enable-mkmf-verbose` option above was merged.
jaruga (Jun Aruga)
05:21 PM Feature #18819 (Closed): Moving Strings between size pools
I merged it. tenderlovemaking (Aaron Patterson)
05:11 PM Revision 56cc3e99 (git): Move String RVALUES between pools
And re-embed any strings that can now fit inside the slot they've been
moved to
eightbitraptor (Matt V-H)
04:49 PM Feature #18825 (Rejected): Specialized instruction for "array literal + `.hash`"
Feature #18611 is merged. That feature encourages people to write hash methods like this:
```
def hash
[@a, @b, @c].hash
end
```
I would like to add a specialized instruction for this case `opt_newarray_hash`. It's similar ...
tenderlovemaking (Aaron Patterson)
04:41 PM Feature #18824 (Closed): Drop MinGW support of MJIT
Removed in commit:f8502a26990c652a2c3c1131614230fec446ab25 k0kubun (Takashi Kokubun)
07:07 AM Feature #18824 (Closed): Drop MinGW support of MJIT
## Proposal
Stop supporting MJIT on MinGW from Ruby 3.2
## Motivation
Compilers on MinGW behave weirdly and MinGW-specific C code is sometimes required as a workaround. Despite the high maintenance cost, nobody seems to be using MJI...
k0kubun (Takashi Kokubun)
04:28 PM Revision f8502a26 (git): Drop MinGW support of MJIT (#6012)
[Feature #18824] k0kubun (Takashi Kokubun)
03:39 PM Revision c3ee80ff (git): * 2022-06-14 [ci skip]
git[bot]
03:39 PM Revision 9a381c24 (git): [ruby/fileutils] [DOC] Clarify path arguments (https://github.com/ruby/fileutils/pull/85)
https://github.com/ruby/fileutils/commit/5f9ef9ddc8 burdettelamar (Burdette Lamar)
02:58 PM Bug #18823: _Bool not defined for C++
Thanks for the clarification.
I see that ruby core uses bool pretty consistently, and _Bool is used only in a few places.
Not sure where I copied it from.
michals (Michal Suchánek)
02:12 PM Bug #18823: _Bool not defined for C++
michals (Michal Suchánek) wrote in #note-6:
> include/ruby/internal/stdbool.h defines _Bool, and in most cases just uses bool defined by the runtime.
No. C99 defines "_Bool" as an intrinsic type, and C's stdbool.h defines "bool" as a...
mame (Yusuke Endoh)
01:55 PM Bug #18823: _Bool not defined for C++
include/ruby/internal/stdbool.h defines _Bool, and in most cases just uses bool defined by the runtime.
I have no idea how there would even be _Bool if not defined there.
_Bools is used in bigdecimal and detected in extconf so it's...
michals (Michal Suchánek)
01:39 PM Bug #18823 (Rejected): _Bool not defined for C++
michals (Michal Suchánek) wrote in #note-3:
> I added a _Bool argument as part of other development which prevents ruby from building on older compiler versions and VS - eg. https://github.com/ruby/ruby/commit/6c72653d98c36c2a816bfff4e4...
mame (Yusuke Endoh)
11:06 AM Bug #18823: _Bool not defined for C++
```
generating cxxanyargs-x64-mswin64_140.def
compiling ../../../../src/ext/-test-/cxxanyargs/cxxanyargs.cpp
cxxanyargs.cpp
D:\a\ruby\ruby\src\include\ruby/internal/intern/select/win32.h(213): error C2061: syntax error: identifier '_...
michals (Michal Suchánek)
11:00 AM Bug #18823: _Bool not defined for C++
I added a _Bool argument as part of other development which prevents ruby from building on older compiler versions and VS - eg. https://github.com/ruby/ruby/commit/6c72653d98c36c2a816bfff4e4e9b1c451154a9e michals (Michal Suchánek)
12:02 AM Bug #18823 (Feedback): _Bool not defined for C++
> When a _Bool argument is added to rb_fd_select
I cannot understand what do you mean. Could you elaborate how to reproduce your issue and show the error log?
mame (Yusuke Endoh)
01:46 PM Bug #18816: Ractor segfaulting MacOS 12.4 (aarch64 / M1 processor)
I've tried to reproduce the problem in a container running from the M1 mac as host, but it seems the issue is mac-specific, as I couldn't make it SEGV.
```
Linux ac9a228ca7ac 5.15.40-0-virt #1-Alpine SMP Wed, 18 May 2022 08:12:19 +00...
brodock (Gabriel Mazetto)
12:11 PM Revision 753da6de (git): [ruby/fileutils] [DOC] Enhanced Rdoc (https://github.com/ruby/fileutils/pull/84)
Treats:
::chown_R
::touch
::commands
::options
::have_option?
::options_of
::collect_method
https://github.com/ruby/fileutils/commit/5df0324f52
burdettelamar (Burdette Lamar)
10:33 AM Revision b1397e96 (git): [ruby/reline] Revert "Merge pull request #441 from nevans/workaround-linker-script-so"
This reverts commit https://github.com/ruby/reline/commit/4ccf128ffa18, reversing
changes made to https://github.com/ruby/reline/commit/a2651419e9a0.
https://github.com/ruby/reline/commit/51053138a4
st0012 (Stan Lo)
10:12 AM Revision a80f5c53 (git): Enable "make annocheck" on platforms other than Linux.
The annocheck supports ELF format binaries compiled for any OS and for any
architecture. It can work in not only Linux but also FreeBSD and Solaris.
It is designed to be independent of the host OS and the architecture.
Even in Mac, as t...
Jun Aruga
06:22 AM Revision b2e58b02 (git): compile.c (add_adjust_info): Remove `insns_info_index > 0`
... because insns_info_index could not be zero here. Also it adds an
invariant check for that.
This change will prevent the following warning of GCC 12.1
http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20220613T000004Z.log.html.gz
...
mame (Yusuke Endoh)
06:18 AM Revision 5060c9d8 (git): cont.c: prevent a warning of GCC 12.1
... by assigning a dummy value to the allocated stack.
http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20220613T000004Z.log.html.gz
```
cont.c: In function ‘cont_restore_0.constprop’:
cont.c:1489:28: warning: ‘*sp’ may be used unini...
mame (Yusuke Endoh)
04:12 AM Revision 425a4613 (git): Handle case where write result is zero.
Samuel Williams
03:17 AM Revision d9ccb6b3 (git): [ruby/reline] Check the ambiguous char width only on tty
It sent the char to check even to non-tty, e.g., pipe.
This causes `unknown command: "\xE2\x96\xBDstart ` warnings on
ruby's parallel test on Windows, where non-standard FDs cannot be
passed to child processes.
https://github.com/ruby/r...
nobu (Nobuyoshi Nakada)
01:38 AM Revision abc828bc (git): Prevent a "warning: `*' interpreted as argument prefix"
mame (Yusuke Endoh)
01:38 AM Revision 54be0e4f (git): * 2022-06-13 [ci skip]
git[bot]
01:37 AM Revision 670de716 (git): Prevent a warning: assigned but unused variable - out
http://rubyci.s3.amazonaws.com/ubuntu1804/ruby-master/log/20220613T003003Z.log.html.gz
```
/home/chkbuild/chkbuild/tmp/build/20220613T003003Z/ruby/test/ruby/test_yjit_exit_locations.rb:96: warning: assigned but unused variable - out
/hom...
mame (Yusuke Endoh)
01:33 AM Bug #18808 (Feedback): Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
I cannot reproduce the issue with Ubuntu 20.04 on ppc64le. Could you provide config.log? mame (Yusuke Endoh)

06/12/2022

09:49 PM Bug #18823: _Bool not defined for C++
Apparently for MSVC to report the correct c++ version it needs the /Zc:__cplusplus flag.
I don't know where to inject this flag, though.
The other failure cases are probably really obsolete.
michals (Michal Suchánek)
09:33 PM Bug #18823 (Rejected): _Bool not defined for C++
When a _Bool argument is added to rb_fd_select ruby cannot be compiled on
VisualStudio 2022
VisualStudio 2019
gcc-5
gcc-4.8
clang-5
clang-4
clang-3.9
c++98 (llvm 14)
c++2a (llvm 14)
which suggests that `if defined(HAV...
michals (Michal Suchánek)
08:38 PM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
```
diff --git a/tool/transform_mjit_header.rb b/tool/transform_mjit_header.rb
index 8867c556f0..63a072573a 100644
--- a/tool/transform_mjit_header.rb
+++ b/tool/transform_mjit_header.rb
@@ -194,10 +194,10 @@ def self.conflicting_types?(...
michals (Michal Suchánek)
08:30 PM Bug #18808: Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
Also a problem on SLE 12
Deleting the `extern` reports the same error on the next line with `__attribute__ ((__visibility__("default"))) extern` which suggests that `extern` does not go with `__attribute__ ((__visibility__("default")))`...
michals (Michal Suchánek)
11:35 AM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
daveola (David Stellar) wrote in #note-11:
> I hear the suggestion and I will just have to switch to using a debugger for my code to work, it's not a conditional, I need the ability to write a different version of eval() for my code, and...
Eregon (Benoit Daloze)
02:06 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
schneems (Richard Schneeman) wrote in #note-19:
> One idea: In addition to the `SyntaxError#path`, is it possible to also attach the source code the parser was just looking at maybe an API like `SyntaxError#source_contents`?
`Abstrac...
nobu (Nobuyoshi Nakada)

06/11/2022

07:12 PM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
Eregon (Benoit Daloze) wrote in #note-10:
> I'm reluctant to reply since you seem to ignore my comments as a Ruby implementer.
I'm sorry you feel that way, and I regret posting to the truffleruby discussion by mistake, I lost track o...
daveola (David Stellar)
12:56 PM Bug #18780 (Rejected): Incorrect binding receiver for C API rb_eval_string()
I'm reluctant to reply since you seem to ignore my comments as a Ruby implementer.
Anyway, you are asking for something to get the caller's binding, that is very much on purpose not provided by Ruby.
Such a functionality breaks encapsul...
Eregon (Benoit Daloze)
05:02 PM Revision ee7aca31 (git): * 2022-06-12 [ci skip]
git[bot]
05:02 PM Revision d0bf31e6 (git): [rubygems/rubygems] Don't on gemspecs with invalid `require_paths`, just warn
These gemspecs already work most of the times. When they are installed
normally, the require_paths in the gemspec stub line becomes actually
correct, and the incorrect value in the real gemspec is ignored. It only
becomes an issue in sta...
deivid (David Rodríguez)
12:26 PM Revision 28e27ee7 (git): Fix typo in yjit.c comments [ci skip]
takp (Takayoshi Nishida)
11:17 AM Bug #18767: IO.foreach hangs up when passes limit=0
I agree that the current behaviour completely makes sense.
The point is that there are other IO methods (that read multiple lines) which don't accept 0 as a limit. So it's more a consistency issue.
For instance `IO.readlines` and `IO#e...
andrykonchin (Andrew Konchin)
09:43 AM Revision 7f9eb888 (git): [rubygems/rubygems] Reuse package from the installer for extracting the specification
Previously we would instantiate two different packages and extract the
specification from the package twice for each gem installed. We can
reuse the installer for this so that we just need to do it once.
https://github.com/rubygems/ruby...
deivid (David Rodríguez)
09:43 AM Revision 965c314e (git): [rubygems/rubygems] Move security exception handling to the only place using it
https://github.com/rubygems/rubygems/commit/ba975b3b7f deivid (David Rodríguez)
09:43 AM Revision bf8dc36e (git): [rubygems/rubygems] Swapping should not raise any errors
https://github.com/rubygems/rubygems/commit/600a9ac658 deivid (David Rodríguez)
09:43 AM Revision 6292b365 (git): [rubygems/rubygems] Remove unclear comment
This is the explanation of why we do the swapping, not of why we
download the gem.
https://github.com/rubygems/rubygems/commit/1a25eb7e7b
deivid (David Rodríguez)
09:43 AM Revision 52cc76d1 (git): [rubygems/rubygems] `Gem::Specification.loaded_from` is already set by the installer
https://github.com/rubygems/rubygems/commit/796eebfdbf deivid (David Rodríguez)
09:43 AM Revision 22c97ab8 (git): [rubygems/rubygems] Refactor some more duplicated logic
https://github.com/rubygems/rubygems/commit/9bd389e1b6 deivid (David Rodríguez)
09:43 AM Revision 95f5194b (git): [rubygems/rubygems] Move `no_install` setting check to a more sensible place
It's only related to the `bundle cache` command, so it should be checked
there.
https://github.com/rubygems/rubygems/commit/cf749f8ffa
deivid (David Rodríguez)
09:43 AM Revision 3f69774b (git): [rubygems/rubygems] No need to redownload if package already there
https://github.com/rubygems/rubygems/commit/285ccbc07e deivid (David Rodríguez)
09:43 AM Revision a9077af7 (git): [rubygems/rubygems] No need to overwrite path when there's a remote
https://github.com/rubygems/rubygems/commit/d86fb2c316 deivid (David Rodríguez)
09:43 AM Revision 870e5a39 (git): [rubygems/rubygems] Remove another unnecessary require
https://github.com/rubygems/rubygems/commit/04e6a5ae31 deivid (David Rodríguez)
09:43 AM Revision 692fec4e (git): [rubygems/rubygems] Simplify `Gem::Security::Exception` handling
These days all these errors are raised as `Gem::Security::Exception` so
there's no need to do any matching on the exception message.
https://github.com/rubygems/rubygems/commit/bd3403da57
deivid (David Rodríguez)
09:43 AM Revision 572f3240 (git): [rubygems/rubygems] Remove unnecessary require
The `security_policies` method already requires it.
https://github.com/rubygems/rubygems/commit/d19b088f2f
deivid (David Rodríguez)
09:43 AM Revision 4a758496 (git): [rubygems/rubygems] Remove unnecessary `spec.remote` guard
It's checked before calling the method already.
https://github.com/rubygems/rubygems/commit/4eb00e9586
deivid (David Rodríguez)
09:43 AM Revision d5288c8a (git): [rubygems/rubygems] Refactor ambiguous gems check
https://github.com/rubygems/rubygems/commit/a00c79a4da deivid (David Rodríguez)
05:22 AM Revision 7e1788e1 (git): fix typo in dir documentation (#6002)
Jaeson Lauritzen
05:05 AM Bug #18031 (Closed): Nested TracePoint#enable with define_method target crashes
Applied in changeset commit:git|e75cb61d4645b9833b14a0cc4190cceffc9b6551.
----------
Fix nested bmethod TracePoint and memory leak
df317151a5b4e0c5a30fcc321a9dc6abad63f7ed removed the code to free
rb_hook_list_t, so repeated targeting ...
alanwu (Alan Wu)

06/10/2022

09:48 PM Revision 52da90ac (git): Make method id explicit in rb_exec_recursive_outer
Previously, because opt_aref and opt_aset don't push a frame, when they
would call rb_hash to determine the hash value of the key, the initial
level of recursion would incorrectly use the method id at the top of the
stack instead of "has...
jhawthorn (John Hawthorn)
09:48 PM Revision f4747958 (git): Add mid argument to exec_recursive
jhawthorn (John Hawthorn)
09:41 PM Revision 44b3daa0 (git): [ruby/fileutils] Enhanced RDoc (https://github.com/ruby/fileutils/pull/83)
Treats ::chmod_R and ::chown.
https://github.com/ruby/fileutils/commit/df4ac84bef
burdettelamar (Burdette Lamar)
09:11 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
I 100% agree. I think we should aim to get it into a preview and ideally get another preview release. If people have a strong reaction against it, then we don't need to invest more time. If people see it being helpful then we can work mo... schneems (Richard Schneeman)
09:44 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
schneems (Richard Schneeman) wrote in #note-19:
> It's maybe worth asking as well, how confident is Ruby core that this is a feature they want? Basically: I am worried that if I ask you for too many changes or new interfaces and then ...
duerst (Martin Dürst)
08:47 PM Revision fc484be5 (git): Add assertion for embedded to embedded ivar copy
jemmai (Jemma Issroff)
05:52 PM Revision 9ed9cc98 (git): Add tests for a variety of string-subclass operations (#5999)
This way YJIT has to match CRuby for each of them.
Remove unused string_p() Rust function
Noah Gibbs
04:29 PM Revision 46333f59 (git): * 2022-06-11 [ci skip]
git[bot]
04:29 PM Revision e777ac91 (git): Don't return a value from jit_guard_known_klass. We never return anything but true at this point and we don't usually check the returned value. (#6000)
Noah Gibbs
03:46 PM Bug #18768: Inconsistent behavior of IO, StringIO and String each_line methods when return paragraph and chomp: true passed
mame (Yusuke Endoh) wrote in #note-8:
> @jeremyevans0 Thank you for your explanation, I understand. The keyword name "chomp" might be a bit confusing.
I agree, the behavior is not obvious from the name `chomp`. However, it is obviou...
jeremyevans0 (Jeremy Evans)
09:39 AM Bug #18768: Inconsistent behavior of IO, StringIO and String each_line methods when return paragraph and chomp: true passed
@jeremyevans0 Thank you for your explanation, I understand. The keyword name "chomp" might be a bit confusing. mame (Yusuke Endoh)
02:56 PM Revision 1e528e8c (git): small fix on `setup_debug_log()`
* print `ruby_debug_log_mode` at first.
* show filters when `ruby_debug_log_mode` is not "disabled".
ko1 (Koichi Sasada)
02:12 PM Revision c54f4264 (git): Remove duplicated rb_yjit_get_stats (#5997)
`rb_yjit_get_stats` is defined twice in yjit.c, it only needs to be
defined once.
Eileen M. Uchitelle
12:11 PM Feature #11164: Garbage collector in Ruby 2.2 provokes unexpected CoW
That seems to be exactly what https://github.com/ko1/nakayoshi_fork solves anyway. byroot (Jean Boussier)
10:15 AM Feature #11164 (Rejected): Garbage collector in Ruby 2.2 provokes unexpected CoW
This ticket raised GC's efficiency issue. As far as I read, it was not a regression. I consider that this is not a bug, but a suggestion for improvement. I'd like to move this to the Feature tracker, and close it for now because I don't ... mame (Yusuke Endoh)
10:58 AM Bug #18771 (Closed): IO.foreach/.readlines ignores the 4th positional argument
Applied in changeset commit:git|27eb36596a65d6bca44b4420ca6526175bf1b431.
----------
Stop ignoring 4th positional argument to IO.#{foreach,readlines}
Fixes [Bug #18771]
jeremyevans (Jeremy Evans)
09:55 AM Bug #10213 (Feedback): bundled gems ignored by make install
Maybe because of time, I cannot understand what is a problem. What do you mean "ignored"?
A bundled gem has been used for many years as a bare gem that is automatically installed during "make install" (i.e., it can be uninstalled), an...
mame (Yusuke Endoh)
07:33 AM Bug #18801 (Rejected): Dead YARV instructions produced when `branchif` is used
I believe this is not a bug. The current YARV compiler is a product of trial and error, and we know that sometimes it emits dead code (mainly due to peephole optimization). It may be room for improvement, but not a bug. mame (Yusuke Endoh)
07:24 AM Bug #18050 (Closed): Cannot build ruby-2.7.4 on NetBSD
According to the OP, there is the same issue in Ruby 3.0 and the same fix works for Ruby 3.0. Continue to discuss it in #18049. Closing this. mame (Yusuke Endoh)
07:19 AM Bug #17843 (Closed): Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
I found two bug reports in other projects that have a similar stack trace:
https://github.com/lastpass/lastpass-cli/issues/170
https://www.mail-archive.com/macports-users@lists.macports.org/msg07932.html
Both are on El Capitan. I ...
mame (Yusuke Endoh)
06:31 AM Bug #16277 (Closed): UNIXServer#listen fails with Errno::EADDRINUSE error under Windows 10 / WSL Ubuntu 18.04
I tried the script on Windows 11 / WSL2 Ubuntu 22.04, but couldn't repro the issue. I guess WSL2 solved the issue. Please ping me if it still occurs. mame (Yusuke Endoh)
06:15 AM Bug #10584 (Rejected): String.valid_encoding?, String.ascii_only? fails to account for BOM.
For the third and forth examples, you can use `BOM|UTF-8` encoding.
```
$ ruby -e 'p File.read("utf-8-with-bom-file", encoding: "BOM|UTF-8").ascii_only?'
true
$ ruby -e 'p File.read("utf-8-with-bom-file", encoding: "BOM|UTF-8")[0]'...
mame (Yusuke Endoh)
05:39 AM Bug #9921 (Feedback): gmtime_r, win32.h, and <string>
Does this still reproduce? mame (Yusuke Endoh)
05:23 AM Bug #9431 (Rejected): In windows ruby IO.write returns count of bytes without count of CR character
I believe this is a spec of Windows. Ruby's IO interface is based on C's stdio, and I confirmed that `fwrite("Hello\n", 1, 6, fp)` returns 6 and actually outputs 7 bytes on Windows with cl.exe. mame (Yusuke Endoh)
02:24 AM Feature #16495: Inconsistent quotes in error messages
The more pervasive Markdown becomes, the more annoying this quoting style becomes. ioquatix (Samuel Williams)
01:10 AM Revision e75cb61d (git): Fix nested bmethod TracePoint and memory leak
df317151a5b4e0c5a30fcc321a9dc6abad63f7ed removed the code to free
rb_hook_list_t, so repeated targeting of the same bmethod started
to leak the hook list. You can observe how the maximum memory use
scales with input size in the following...
alanwu (Alan Wu)
 

Also available in: Atom