Activity
From 02/11/2022 to 02/17/2022
02/17/2022
-
10:52 PM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
- matz (Yukihiro Matsumoto) wrote in #note-6:
> Okay, `binding` should raise an exception when called from a C defined method.
I've submitted a pull request for this: https://github.com/ruby/ruby/pull/5567
It's trickier than I expec... -
01:04 PM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
- FWIW TruffleRuby currently raises one of these 2 errors when trying to call a Ruby method which needs a direct Ruby frame above:
```
Cannot call Ruby method which needs a Ruby caller frame directly in a foreign language (RuntimeError)
... -
07:55 AM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
- Okay, `binding` should raise an exception when called from a C defined method.
Matz. -
01:17 AM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
- To simplify the semantics and implementation, we could make Kernel#binding
raise when the direct caller is not Ruby. I think it's reasonable given that
the Binding class was designed for Ruby and doesn't necessarily make sense for
oth... -
10:49 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
- > We've seen many instances of gems breaking on JRuby & TruffleRuby over the years due to new default gems
We (JRuby team) have been working to support the various default gems on JRuby for several years (or more, if you consider json... -
06:26 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
- @eregon sorry I was not talking about default gems; by "stdlib" I meant the libraries that have not (yet) been gemified. So I must apologize that my example was completely flawed, as I didn't realize those 3 libs are actually gemified. A...
-
05:39 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
- @Dan0042 One issue is some people want the dependency on default gems to be in the Gemfile.lock, which e.g. enables the gem to be checked for security issues easily (e.g. dependabot).
And of course if someone specifies a specific versio... -
05:28 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
- Here's one idea: what if there was a list of all standard libraries in a given ruby version, such as `RbConfig::STDLIBS = Set["digest", "strscan", "delegate", etc...]`
Then rubygems itself could use this list to ensure that `spec.add_de... -
11:14 AM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
- Another instance of this issue: https://github.com/mikel/mail/pull/1472#discussion_r808927322
I think new default gems should initially noop (i.e., just use the stdlib version) on `RUBY_ENGINE != "ruby"`,
that would be much less brea... -
07:29 PM Feature #18585: Promote find pattern to official feature
- ktsj (Kazuki Tsujimoto) wrote in #note-2:
> > Is this request related to the whole feature (as described at https://docs.ruby-lang.org/en/3.1/doc/syntax/pattern_matching_rdoc.html) or only to one pattern called "Find pattern" (as descri... -
08:49 AM Feature #18585: Promote find pattern to official feature
- Accepted. Congratulations.
Matz.
-
05:45 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- The problem with that approach though is it's frequent to not run CI before pushing in CRuby, and then `master` could end up segfaulting between a commit-changing-ABI-forgot-to-bump and the commit-bump-ABI.
-
05:44 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- FWIW in TruffleRuby there is both a pre-commit hook and a check in CI: [code](https://github.com/eregon/truffleruby/commit/a268438182c301aba66d7a85441a423fc3ea786c#diff-4aeadbe0dc0d66a5cae590c5e29eedac5b5a4aae6db13a1dc1075b2877786767).
... -
04:39 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- I'm not sure if I agree with the approach of using a pre-commit hook. AFAIK pre-commit hooks are not automatically installed (every developer has to manually install it), so most people will probably not install it. If we check on CI, if...
-
04:20 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- It could be a mix of both approaches. As a pre-commit hook, compute the checksum/hash of header files and, if different from current "abi_hash", the developer must update a) the current `abi_hash` and b) the `abi_version` ONLY IF there's...
-
02:13 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- I don't think there's a way for us reinstall C extension gems through make in Ruby. I think this would be the responsibility of RubyGems/Bundler. Since we're moving forward with manual ABI versioning, it should be rare (maybe once a mont...
-
12:51 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- @hsbt Isn't `gem pristine`/`bundle install` (with Bundler path set) or similar good enough?
Reinstalling pure-Ruby gems is extremely fast compared to installing C extensions (which must rebuilt, otherwise significant risk of random SEGV... -
09:06 AM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- I agreed to check ABI breakage on dev branch. But I'm bit of against re-install or re-build all of gems each ABI versions. It's good to only rebuild C extensions when changing ABI versions.
@peterzhu2118
Can you provide the make ta... -
05:59 AM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
- I am against ABI based on SHA1 hash. We should bump API version manually, I think.
If you can provide make target to bump the versions, it's better.
Matz.
-
04:54 PM Feature #16663 (Closed): Add block or filtered forms of Kernel#caller to allow early bail-out
- Applied in changeset commit:git|4c366ec9775eb6acb3fcb3b88038d051512c75a2.
----------
Add Thread.each_caller_location
This method takes a block and yields Thread::Backtrace::Location
objects to the block. It does not take arguments, an... -
07:56 AM Feature #16663: Add block or filtered forms of Kernel#caller to allow early bail-out
- I accept `each_caller_location`.
Matz.
- 04:54 PM Revision 7757ccb5 (git): * 2022-02-18 [ci skip]
-
04:54 PM Revision 4c366ec9 (git): Add Thread.each_caller_location
- This method takes a block and yields Thread::Backtrace::Location
objects to the block. It does not take arguments, and always
starts at the default frame that caller_locations would start at.
Implements [Feature #16663] -
03:34 PM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
- Ok, so I went over all 71 matches after filtering vendored code: https://gist.github.com/casperisfine/5a26c7b85f7d15c4acd63d62d67eafbb
I opened 31 pull requests, all where trivial changes `str.encoding.name == ""` -> `str.encoding == ... -
02:00 PM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
- > Will you?
I'd like to champion this. I already started opening pull requests on the affected gems.
-
01:58 PM Feature #18576 (Open): Rename `ASCII-8BIT` encoding to `BINARY`
- Making `Encoding#name` to return the name different from the encoding name is unacceptable.
Besides that, in general, compatibility issue is hard to estimate beforehand, so we tend to be very conservative.
If you (or someone) estimate ... -
01:30 PM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
- Link to the gem-codesearch results from @ko1: https://hackmd.io/koJLPz4eRXKzaaDvVqji7w#Feature-18576-Rename-ASCII-8BIT-encoding-to-BINARY-byroot
This seems very few usages and IMHO such gems should be fixed (if they are still used, pr... -
09:27 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
- > Does this counter-proposal solve the original problem?
I believe so because the main way users are exposed to `ASCII-8BIT` is through `EncodingError`.
> ...
Indeed, my personal belief is that `Encoding#name` is both an advanced A... -
09:24 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
- Does this counter-proposal solve the original problem?
It seems it introduces another inconsistency (and possible confusion).
Matz.
-
09:16 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
- Can I make a counter proposal?
We could keep `Encoding#name` as `"ASCII-8BIT"`, but change `Encoding#inspect` and make sure `EncodingError` use the `BINARY` name in its error messages.
What do you think? -
09:14 AM Feature #18576 (Rejected): Rename `ASCII-8BIT` encoding to `BINARY`
- I don't object to the proposal itself. But as @ko1 searched, there are so many gems that compare `Encoding#name` and `ASCII-8BIT`.
So I don't accept the proposal for the sake of compatibility.
Matz.
-
03:22 PM Feature #13110: Byte-based operations for String
- matz (Yukihiro Matsumoto) wrote in #note-24:
> Regarding names, I accept `byteindex`, `byterindex`, `byteoffset`.
> ...
This could be opened as a new issue, but would it be possible to consider adding more readable aliases as suggested... -
06:02 AM Feature #13110: Byte-based operations for String
- Regarding names, I accept `byteindex`, `byterindex`, `byteoffset`.
I am against `byte_rindex` since I consider the naming consistency is more important.
Matz.
-
01:57 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- Thank you Matz!
> I vote for putting it under ObjectSpace
I think it's fine. It's an advanced class, no need to pollute the main namespace with it.
> ...
Agreed. A couple points though:
- I agree that `#each` isn't desirabl... -
01:16 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- I agree with introducing a map (hash) with each key referenced weakly. It should be in the core since weak references should be tightly integrated with the garbage collector.
Since the current `WeakMap` is hard to implement in JRuby... -
01:47 PM Bug #18504 (Closed): configure prints a warning when cross-compiling
- Applied in changeset commit:git|4113862c0068a8a95d752f5fdf14980f92cd41d7.
----------
Do not search for commands with double tool prefixes [Bug #18504]
The `CC` found by `AC_CHECK_TOOL` is prefixed by the host triplet
when cross compili... -
01:47 PM Revision 4113862c (git): Do not search for commands with double tool prefixes [Bug #18504]
- The `CC` found by `AC_CHECK_TOOL` is prefixed by the host triplet
when cross compiling. To search for commands with `AC_CHECK_TOOL`
based on that `CC` means to search also doubly prefixed names. -
01:05 PM Feature #18571: Removed the bundled sources from release package after Ruby 3.2
- Accepted, for the record.
Matz.
-
11:25 AM Feature #18571 (Assigned): Removed the bundled sources from release package after Ruby 3.2
- We decided on the following policy.
* We will remove the bundled sources from ruby repo.
* @hsbt is working now for psych and fiddle.
* If users put the third-party source under the ruby packages, ruby build system use them.
-
12:30 PM Feature #18589: Finer-grained constant invalidation
- Amusingly enough, this discussion led me to instrument our production environment to see what is bumping the cache, and one of the big offenders is `open-uri`: https://github.com/ruby/open-uri/blob/174a8eb7de357fc04c0675dd30073c0218f401a...
-
12:13 PM Feature #16989: Sets: need ♥️
- I agree with merging the pull request above, and see how it goes.
Matz.
-
10:12 AM Feature #16989: Sets: need ♥️
- I've prepared a PR: https://github.com/ruby/ruby/pull/5563
-
12:11 PM Feature #12962 (Rejected): Feature Proposal: Extend 'protected' to support module friendship
- I revisited this issue at the developer meeting and concluded to reject this proposal.
I understand OP's need for the `friend` visibility but considering the dynamic nature of the language (plus current usage of `protected` visibility),... -
11:39 AM Bug #18578: Hash#shift を繰り返していると ruby が無応答になる。
- ruby_3_1 7fe0ebc4e7abd78501094cbb2d47918c8ff29f60 merged revision(s) 496591de96b261b8789332c7f8b2bfbd17658955.
-
11:29 AM Revision 992bdfea (git): Refine the load error message
- Show the linked ruby library name when failed to load extension
built against different ruby library. -
11:29 AM Revision 5952a1f2 (git): Check running macOS version at runtime
-
11:12 AM Revision c8b414b3 (git): Reuse `-v` option result as `target_platform`
- Backticks method invokes `/bin/sh` when the command contains
quotes, and `sh` clears some environment variables set in
runruby.rb to search the built shared library. -
11:02 AM Bug #18590 (Closed): String#downcase and CAPITAL LETTER I WITH DOT ABOVE
- Downcasing for "İ" character works in an unexpected way:
```ruby
'İ'.downcase
=> "i̇"
```
Expected result - downcasing should return "i". Instead, it returns small "i" and additional "dot" character:
```ruby
'İ'.downcase.cha... -
10:04 AM Revision dfe7faa6 (git): exclude name must be Regexp or Symbol
- https://github.com/ruby/ruby/blob/fdf0f8d81487560f5837dc7e3888a96f7c2b4ec9/tool/lib/test/unit.rb#L1273-L1290
-
09:58 AM Revision fdf0f8d8 (git): btest-ruby OPTS=-v should disable quiet
- `make btest-ruby` is run with -q (quiet) option and -v should
remove -q option. -
07:15 AM Feature #18568: Explore lazy RubyGems boot to reduce need for --disable-gems
- Lazy loading RubyGems sounds great. Ping us if you need support from the core.
Matz.
-
06:03 AM Feature #18513 (Closed): Hide patchlevel from `ruby -v`
- Merged at https://github.com/ruby/ruby/commit/9f81d9f92d
-
04:47 AM Feature #18513: Hide patchlevel from `ruby -v`
- Agreed.
Matz.
-
05:36 AM Revision 9f81d9f9 (git): Hide patchlevel from release build
-
03:19 AM Revision 7fe0ebc4 (git): merge revision(s) 496591de96b261b8789332c7f8b2bfbd17658955: [Backport #18578]
- st.c: Do not clear entries_bound when calling Hash#shift for empty
hash
tab->entries_bound is used to check if the bins are full in
rebuild_table_if_necessary.
Hash#shift against an empty hash assigned ... -
12:02 AM Misc #18587: What was the reason behind Ruby choosing SipHash for Hash?
- JFYI this thread can be something related: https://bugs.ruby-lang.org/issues/13017
02/16/2022
-
07:34 PM Feature #18589: Finer-grained constant invalidation
- During startup, global invalidation for constants also causes a lot of extra lookups, and with a JIT it throws away a lot of code during startup (or the JIT can't inline the value of the constant).
Global per-name constant invalidation ... -
07:10 PM Feature #18589: Finer-grained constant invalidation
- At the moment on Shopify's core monolith we're seeing around 1 in 30 requests invalidate the global cache. We're still working out the source of the invalidations. But at the moment with the current design if anything changes anywhere ev...
-
06:45 PM Feature #18589: Finer-grained constant invalidation
- Current design is the global counter doesn't change frequently.
Do you have measurements about it on some apps?
-
05:32 PM Feature #18589 (Closed): Finer-grained constant invalidation
- This is related to https://github.com/ruby/ruby/pull/5433.
## Current behavior
Caches depend on a global counter. All constant mutations cause all caches to be invalidated.
```ruby
class A
B = 1
end
def foo
A::B # inl... -
05:36 PM Misc #18557: DevMeeting-2022-02-17
- * [Feature #18589] Finer-grained constant invalidation (Kevin Newton)
* We want to trade a very small memory increase for much better constant cache invalidation.
* This will allow relying on more stable constant caches for better ... -
05:16 PM Misc #18587: What was the reason behind Ruby choosing SipHash for Hash?
- One concern which might have been considered is what if someone writes their own hash table in pure-Ruby using `#hash`?
Then the only way to protect those is a better `#hash` method by default, which seems to be what Ruby did.
OTOH, I ... -
04:12 PM Misc #18587: What was the reason behind Ruby choosing SipHash for Hash?
- I misread a point related to extra carefulness.
They don't suggest a rehash on collision, but on hash map grow; since on hash map grow we need to rehash the key anyway, they suggested that in addition to the rehashing we add an extra st... -
03:42 PM Misc #18587 (Open): What was the reason behind Ruby choosing SipHash for Hash?
- Hello
I am digging into the history behind Ruby using SipHash for its Hash.
I found that in 2012 there were CVE-2012-5371 showing up;
the Ruby maintainers went with the decision to switch algorithms, probably, because we wanted some... -
04:43 PM Revision 5f01fba0 (git): yjit_codegen.c: Prevent a possible out-of-bound access
- The code attempts to read `C_ARG_REGS[leaf_builtin->argc + 1]`, and the
size of `C_ARG_REGS` is `NUM_C_ARG_REGS`. So, the guard condition must
be `leaf_builtin->argc + 1 + 1 <= NUM_C_ARG_REGS`.
This change fixes the off-by-one error. T... -
03:52 PM Bug #18588 (Closed): ruby -e 'p gets' with japanese charactors gets additional invalid leading chars and caught Encoding::InvalidByteSequenceError
- ### Input a line starting with japanese charactor from console, almost every time ruby gets additional invalid leading charactors.
## Reproduce process
```
R:\ruby32\bin>ruby -e 'p gets'
あ
-e:1:in `gets': "\\xA0" on Windows-31J ... - 03:34 PM Revision fabf60c9 (git): * 2022-02-17 [ci skip]
-
03:34 PM Revision 797e8f54 (git): Fix -Wsign-compare when -DRUBY_DEBUG=1
- Sizes for darray are size_t now. CC @peterzhu2118
-
02:50 PM Revision 969ad580 (git): Change feature_index from fake Array to darray
- Using a fake (malloc) RArray is not friendly for the garbage
collector. Fake RArray does not have a heap page, so it causes Variable
Width Allocation to crash when we try to implement it on Arrays.
This commit changes feature_index from... -
02:50 PM Revision 71afa816 (git): Change darray size to size_t and add functions that use GC malloc
- Changes size and capacity of darray to size_t to support more
elements.
Adds functions to darray that use GC allocation functions. -
02:43 PM Revision f9abb286 (git): Parenthesize a macro expression
- The modulo in `rb_yjit_code_page_alloc` seems interpreted wrongly.
-
08:57 AM Revision 00c7a0d4 (git): fix parallel test timeout retrying
- On the parallel test, workers can be killed because of timeout
and the information for the retrying can be inconsistent.
This patch will skip if the inconsistency is found and report
as an error.
http://ci.rvm.jp/results/trunk-asserts@p... -
07:32 AM Revision b9851c7e (git): lib/securerandom.rb: Fix the check of availability of Random.urandom
- Random.urandom raises a RuntimeError if it is unavailable.
[Bug #13885] -
05:19 AM Bug #13885: Random.urandom と securerandom について
- いまは Random.urandom は利用できない環境で RuntimeError を投げるようになっているはずなのですが、securerandom.rb で Random.urandom が利用可能かをチェックするコードが古いまま(nil を返すかどうかを見る)になってました。
ちょっと Random.urandom が利用できない環境を作るのが難しそうでテストできないのですが、おそらく動かないと思うので修正しておこうと思います。
https://git... -
04:32 AM Bug #18586 (Closed): ObjectSpace::WeakMap#each seems to leak a broken object
- Applied in changeset commit:git|1ae630db2682831cc0f2d381ff46e7b8cd3c2174.
----------
`wmap#each` should check liveness of keys
`ObjectSpace::WeakMap#each*` should check key's liveness.
fix [Bug #18586] - 04:32 AM Revision e7d76fe2 (git): * 2022-02-16 [ci skip]
-
04:31 AM Revision 1ae630db (git): `wmap#each` should check liveness of keys
- `ObjectSpace::WeakMap#each*` should check key's liveness.
fix [Bug #18586]
02/15/2022
-
08:17 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- > I can't imagine a use case where you'd want to share metadata for objects that are eql.
As you certainly know, `Object#==` defaults to `Object#equal?`, so generally equality hashes are workable in scenarios where you actually need ... -
07:40 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- byroot (Jean Boussier) wrote in #note-8:
> Then yes. But it's rarely convenient.
Can you elaborate? Because the DeduplicationSet example has `@set[object] = true`, which is exactly a non-GC-able value.
And the METADATA example is ... -
02:42 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- > as long as you use non-GC-able values only
Then yes. But it's rarely convenient. -
02:08 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- If ObjectSpace::WeakMap had a #compare_by_identity that could be set to false, wouldn't this be equivalent to this WeakKeysMap? (as long as you use non-GC-able values only)
-
08:13 AM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- > Do you think this Hash compatible? For example, default_proc (I think it is too much)?
Yes, I'd rather not ask for methods that may cause difficulties in the future. -
04:49 AM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- ko1 (Koichi Sasada) wrote in #note-4:
> Do you think this `Hash` compatible? For example, `default_proc` (I think it is too much)?
`ObjectSpace::WeakMap` is good starting point.
-
04:46 AM Feature #18498: Introduce a public WeakKeysMap that compares by equality
- Do you think this `Hash` compatible? For example, `default_proc` (I think it is too much)?
-
05:20 PM Bug #18586 (Closed): ObjectSpace::WeakMap#each seems to leak a broken object
- ```
h = ObjectSpace::WeakMap.new
GC.disable
s = "a"
10000.times do
h[s] = true
s = s.succ
end
GC.enable
h.each do |x|
x + ""
x + ""
x + ""
end
```
```
$ ruby t.rb
t.rb:15: [BUG] Segmentation fault at ... -
03:19 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- p8 (Petrik de Heus) wrote in #note-11:
> I can imagine having a `protected_send` just like we have a `public_send` and `send` (which is basically `private_send`).
Yeah, I was also thinking to something like:
```ruby
friend/internal... -
03:14 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- matthewd (Matthew Draper) wrote in #note-10:
> The trouble with using `send` in this [general] situation is that it makes it too equally-easy to reach into _all_ internals: you want access to methods that are suitable for a collaborator ... -
02:53 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- I can imagine having a `protected_send` just like we have a `public_send` and `send` (which is basically `private_send`).
Although that probably is a lot more difficult to optimize. -
01:25 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- The trouble with using `send` in this [general] situation is that it makes it too equally-easy to reach into _all_ internals: you want access to methods that are suitable for a collaborator but not a downstream user, but you can also imm...
-
02:32 PM Feature #18585: Promote find pattern to official feature
- > Is this request related to the whole feature (as described at https://docs.ruby-lang.org/en/3.1/doc/syntax/pattern_matching_rdoc.html) or only to one pattern called "Find pattern" (as described at https://docs.ruby-lang.org/en/3.1/doc/...
-
11:22 AM Bug #18504: configure prints a warning when cross-compiling
- What about this?
```diff
diff --git a/configure.ac b/configure.ac
index 4feefb57915..01e87c0a9b4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -129,9 +129,9 @@ AC_ARG_WITH(gcc,
AS_HELP_STRING([--without-gcc], [never use gcc]),... -
08:11 AM Feature #18339: GVL instrumentation API
- > Could you write a picture (or flow) what happens on GVL hooks with GVL acquire/release?
I'm sorry, I don't understand the question.
> ...
Sure. It was just for consistency, but I can rename it to anything.
> I'm planning to in... -
05:52 AM Feature #18339: GVL instrumentation API
- * Could you write a picture (or flow) what happens on GVL hooks with GVL acquire/release?
* It seems it doesn't use TracePoint data structures, so I think we don't need to use `RUBY_INTERNAL_EVENT_*` naming.
* I'm planning to introduce... -
07:30 AM Feature #18490 (Closed): MakeMakefile.pkg_config should accept multiple options
-
05:10 AM Feature #18571: Removed the bundled sources from release package after Ruby 3.2
- @tenderlovemaking's comment for psych and libffi: https://github.com/ruby/psych/issues/535
02/14/2022
-
03:30 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- For this Net::HTTP example IMHO it'd be better to use `send`, that would make it a private method and be explicit that code is calling into partly-internals.
IMHO friend-like visibility is too magic and the linear search could be a sign... -
03:02 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- > Calling "private/protected" methods on another object feels rather wrong to me.
The whole point of `protected` is that it allows you to call methods on another object. But I assume you meant another object that is not an instance of... -
02:23 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
- Do you have an example in Rails?
This sounds like it can be solved by moving such private-but-shared method to `Internals` or some other module.
Calling "private/protected" methods on another object feels rather wrong to me.
May... -
03:24 PM Misc #18557: DevMeeting-2022-02-17
- * [Feature #18576] Rename `ASCII-8BIT` encoding to `BINARY`
- The `ASCII-8BIT` name is very confusing for beginners.
- Even for people who know what it is, it can easily be misread as `US-ASCII`
- It has been aliased as `BINARY` fo... -
02:15 PM Misc #18557: DevMeeting-2022-02-17
- * [Misc #18362] mswin builds & vs2022
* What can we do for the bug? -
02:08 PM Misc #18557: DevMeeting-2022-02-17
- * [Feature #18585] Promote find pattern to official feature (ktsj)
* Is it OK to to promote find pattern to official feature?
-
02:35 PM Revision 26187a85 (git): Use RARRAY_SHARED_ROOT_FLAG for checking re-enter
- RARRAY_SHARED_ROOT_FLAG is defined as FL_USER5, but we should use
RARRAY_SHARED_ROOT_FLAG instead of depending on that they're equal. -
02:29 PM Feature #18585: Promote find pattern to official feature
- Hello! Is this request related to the whole feature (as described at https://docs.ruby-lang.org/en/3.1/doc/syntax/pattern_matching_rdoc.html) or only to one pattern called "Find pattern" (as described at https://docs.ruby-lang.org/en/3.1...
-
02:05 PM Feature #18585 (Closed): Promote find pattern to official feature
- "Find pattern" has introduced in 3.0 and it is still marked as an experimental.
I don't see any problems, so it is time to promote it to official feature.
(BTW, it was useful when writing code like the following for a practical examp... -
08:17 AM Revision 76e594d5 (git): fix GC event synchronization
- (1) gc_verify_internal_consistency() use barrier locking
for consistency while `during_gc == true` at the end
of the sweep on `RGENGC_CHECK_MODE >= 2`.
(2) `rb_objspace_reachable_objects_from()` is called without
VM synchroni... -
06:38 AM Misc #18362: mswin builds & vs2022
- Visual Studio 2022 version 17.0.6 released at February 8 seems still unfixed.
I wonder how we deal with this issue (easy -> hard order):
1. wait the fix (or abandon VS2022)
2. disable `O2` optimization on VS2022
3. disable `__assume()`... -
05:57 AM Bug #18582: Hash.group_by not grouping correctly with SortedSets
- Ah, I had tried method_defined?, but it returns true (for inherited Kernel#eql?)
I did not realized that method_defined? also accepted a inherited=false argument.
Thank you. - 05:52 AM Revision 83803117 (git): * 2022-02-14 [ci skip]
-
05:52 AM Revision 8e089991 (git): extend timeout for mjit
- 1 seconeds is not enough on an specific (busy) machine w/ mjit.
http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker/3830178 - 04:57 AM Revision 8a0dfd4a (git): * 2022-02-14 [ci skip]
-
04:56 AM Revision c8b5d703 (git): Merge RubyGems-3.3.7 and Bundler-2.3.7 (#5543)
02/13/2022
-
11:43 AM Bug #18584 (Closed): List of Rubies has an error
- Can you file it to https://github.com/ruby/actions ?
index.txt was generated by https://github.com/ruby/actions/blob/master/tool/snapshot/update_index.rb
-
11:18 AM Bug #18584 (Closed): List of Rubies has an error
- There was nowhere obvious on https://www.ruby-lang.org about where to report this problem, so I figured here was as good a place as any...
The name for this entry on https://cache.ruby-lang.org/pub/ruby/index.txt is wrong:
ruby-1.8... -
09:25 AM Revision 7a8ea2e4 (git): [MSWin] Install OpenSSL with vcpkg
-
09:12 AM Feature #18463: Random number generation with xoshiro
- @mrkn Happy to add Xoshiro and PCG generators. Probably also good to add
MRG32k3a [1]
Philox [2]
MixMax [3][4]
Squares [5]
The Rust library has good documentation[6], as well as speed comparisons. Would be good to have something s... -
05:11 AM Feature #18463: Random number generation with xoshiro
- @bbrklm I want the Xoshiro256 generator for Ruby, too. In addition to it, I want the dSFMT generator.
I think it is good to create a semi-standard gem library for providing such random number generators. The existence of the semi-st... -
08:39 AM Revision b4fd0e0c (git): Exclude TestThread#test_signal_at_join on FreeBSD 13 for now [ci skip]
-
08:02 AM Revision 7cd35926 (git): skip some test using openssl to cease failure on GitHub Actions for MinGW.
-
07:25 AM Bug #18582: Hash.group_by not grouping correctly with SortedSets
- You can use `RBTree.method_defined?(:eql?, false)` and so on, instead of `RBTree.instance_methods(false).include?`.
-
07:09 AM Revision b61b4563 (git): skip some tests of rdoc temporary.
-
07:05 AM Revision 6c70a329 (git): merge revision(s) f18a0b7654d471101b207e7fe553e12a25398e45,77e1b477297a48e285d34b21e8d30ab4b46bf90c,c483aa8394fc26e341666db66938b1d6fc2cbb8e,f2e39e5fed498b51ae914ed42ec51ae578330583,6aaa1c4d09249baae93d5bb7fba585be420c4fee,923b3652247aa17ac99dc45cb1cd0654fa08d976,950c7a12efa19d73bed10d377368a50664cae32c,69ce9e4187589335124077029496ee293d4e9189,ddb87396349fa4699153d5c4c7569c2e0186adfc,09e7a0c4a4fba18e3308e4f8cb4b8b5b52b41d20,298d65b1e4f3019af7fc9b905390b56736f5fd0e,2f3edf28f3a251bac2cf3b47b46b372faac71e8e:
- [ruby/rdoc] Follow-up rubygems
Use test-unit assertions instead of minitest.
https://github.com/ruby/rdoc/commit/d6a6209d7f
---
test/rdoc/test_rdoc_rubygems_hook.rb | 18 ++++++++++++------
1 fi... - 06:48 AM Revision a9aa42ac (git): * 2022-02-13 [ci skip]
-
06:48 AM Revision 045ab1d0 (git): [DOC] Fix a typo in `Integer#chr` example
- The current example raises the following error.
```ruby
0..chr # => undefined local variable or method `chr' for main:Object (NameError)
```
This PR updates the example to produce the expected behavior.
```ruby
0.chr # => "\x00"
``` -
05:30 AM