Activity
From 09/27/2024 to 10/03/2024
10/03/2024
-
09:55 PM Feature #20770: A *new* pipe operator proposal
- Has *"then"* but as a keyword been considered?
In the basic version it could appear as a *"begin..then..end"* block:
``` ruby
value = begin add value, 3 then square it then half it end
```
It looks like syntax highlighting is ready. *"b... -
09:02 PM Revision e90862f0 (git): [DOC] Correct documentation for Array#max
- The return value of Array#max is the maximum value per the block, not
from the block. -
09:02 PM Revision 3ece042c (git): [DOC] Tweaks for Array#min (#11786)
-
08:20 PM Revision 8e7df4b7 (git): Rename size_pool -> heap
- Now that we've inlined the eden_heap into the size_pool, we should
rename the size_pool to heap. So that Ruby contains multiple heaps, with
different sized objects.
The term heap as a collection of memory pages is more in memory
managem... -
08:20 PM Revision b58a3645 (git): Inline eden_heap into size_pool
- After the individual tomb_heaps were removed in favour of a global list
of empty pages, the only instance of rb_heap_t left is the eden_heap
within each size pool.
This PR inlines the heap fields directly into rb_size_pool_t to remove
i... -
07:45 PM Revision cd71fa96 (git): Remove else case for shared-gc make target
-
05:43 PM Revision 568511f3 (git): [ruby/prism] Handle single global variable character name
- https://github.com/ruby/prism/commit/7a0af49997
-
05:30 PM Revision f8568fbd (git): [ruby/prism] Pop lex mode for heredocs in the lexer, not the parser
- https://github.com/ruby/prism/commit/5dd36b979e
-
04:04 PM Bug #20433 (Closed): Hash.inspect for some hash returns syntax invalid representation
- Yes, I have merged it since @matz said at the dev meeting today that he still wants to try this change in the next preview release. So closing.
However, it may be reverted if the impact of the incompatibility is too large. -
03:49 PM Bug #20433: Hash.inspect for some hash returns syntax invalid representation
- @tompng @mame what is the status on this? I see https://github.com/ruby/ruby/pull/10924 has been merged, should this ticket be closed?
I personally love this change, but I have a lot of tests to update as a result, so I'd like to know... -
03:58 PM Revision 77db3781 (git): Fix indentation in test_after_gc_start_hook_with_GC_stress
-
03:52 PM Revision ac0a8c62 (git): [ruby/reline] Make rendering test faster using updated yamatanooroti
- (https://github.com/ruby/reline/pull/747)
https://github.com/ruby/reline/commit/7534f7f92a -
03:15 PM Misc #20717 (Closed): DevMeeting-2024-10-03
-
02:27 PM Bug #20620 (Closed): singleton_method undefined for module using "extend self"
- Applied in changeset commit:git|9986a7c3930437bc9d9b88736c22695585aa6c48.
----------
Make Object#singleton_method return methods in modules included in or prepended to singleton class
To simplify the implementation, this makes Object#s... -
06:53 AM Bug #20620: singleton_method undefined for module using "extend self"
- @jeremyevans0 Thank you. Let us merge the pull-request, and experiment with the preview.
Matz.
-
02:27 PM Revision 9986a7c3 (git): Make Object#singleton_method return methods in modules included in or prepended to singleton class
- To simplify the implementation, this makes Object#singleton_method
call the same method called by Object#method (rb_obj_method), then
check that the returned Method is defined before the superclass of the
object's singleton class. To ke... -
01:28 PM Revision dc83de49 (git): [DOC] Add missing word
-
01:28 PM Revision f56be428 (git): [DOC] Add pound sign before all <=> methods
-
12:52 PM Revision 66124cdb (git): [ruby/prism] Use `partial_script` for the parser translators
- Followup to https://github.com/ruby/prism/pull/3079
https://github.com/ruby/prism/commit/68f434e356 -
12:51 PM Feature #20778: ruby/repl_type_completor as a bundled gem
- Thank you. I added owner grant.
-
09:05 AM Feature #20778: ruby/repl_type_completor as a bundled gem
- I added `repl_type_completor` at https://github.com/ruby/ruby/commit/50b32a3c9206df2ec7bcb4c54a59844c27f1c144
@tompng Can you add owner grant of https://rubygems.org/gems/repl_type_completor to me? I will not release without maintaine... -
07:29 AM Feature #20778: ruby/repl_type_completor as a bundled gem
- I'll support this.
-
07:25 AM Feature #20778: ruby/repl_type_completor as a bundled gem
- Accepted. Looking forward to making it public.
Matz.
-
06:41 AM Feature #20778 (Assigned): ruby/repl_type_completor as a bundled gem
-
12:38 PM Feature #20669 (Closed): Add Marshal::MarshalError class to differentiate ArgumentErrors
-
09:46 AM Feature #20669: Add Marshal::MarshalError class to differentiate ArgumentErrors
- In the meantime, Dalli merged a change that sounds a lot like Eregon's comment. https://github.com/petergoldstein/dalli/pull/1011
My immediate needs are met, and I will close this feature request. EDIT: I can't find a button to close th... - 12:29 PM Revision cd96af2c (git): Add `IO::Buffer` tests for read and write with length & offset. (#11779)
-
12:27 PM Revision 218445bb (git): [ruby/rdoc] Fix ToRdoc#accept_table
- (https://github.com/ruby/rdoc/pull/1184)
https://github.com/ruby/rdoc/commit/7b68545094 -
11:49 AM Revision b421964b (git): Remove unused macros
-
10:38 AM Revision 9d4af312 (git): [ruby/reline] Rename `matches?` as `match?`
- (https://github.com/ruby/reline/pull/753)
https://github.com/ruby/reline/commit/9230fe162d -
09:49 AM Misc #20781 (Closed): DevMeeting-2024-11-07
- # The next dev meeting
**Date: 2024/11/07 13:00-17:00** (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/master/2024/DevMeeting-2024-11-07.md
- Dev meeting *IS NOT* a decision-making place. All decisions should be done at t... -
09:47 AM Revision 5bf8a530 (git): Specify commit hash of debug in bundled_gems
-
09:47 AM Revision c94815ba (git): Update spec/ruby/ for colon-style hash inspect
-
09:47 AM Revision af1c356c (git): Update default gem test for colon-style hash inspect
-
09:47 AM Revision f7343b63 (git): prettyprint hash with colon style
-
09:47 AM Revision 7237af75 (git): Update ruby test for colon-style hash inspect
-
09:47 AM Revision f4e54892 (git): Update bootstraptest test for colon-style hash inspect
-
09:47 AM Revision a8a05912 (git): Hash#inspect with colon style
-
09:44 AM Feature #17296 (Feedback): Feature: Pathname#chmod use FileUtils.chmod instead of File
- It was discussed at the dev meeting.
`File.chmod` and `FileUtils.chmod` have an incompatibility in their handling of symbolic links: `File.chmod` changes the permissions on the target of the symbolic link, while `FileUtils.chmod` chan... -
09:11 AM Feature #20705: Should "0.E-9" be a valid float value?
- @nobu Could you open a PR based on your implementation https://github.com/nobu/ruby/tree/float-dtoa ?
My implementation doesn't accept `0xf.p0` but your implementation does. -
08:58 AM Feature #20705: Should "0.E-9" be a valid float value?
- I'd like to enhance string to float conversion in general. I might introduce small incompatibility, but impact will be small.
Matz. -
09:10 AM Bug #20693: Dir.tmpdir should perform a real access check before warning about writability
- I think the reason why `File.writable?` is used should be described in the source.
-
08:53 AM Feature #20673 (Feedback): Enable native SOCKS support by default
- 08:41 AM Revision 2c0149d3 (git): Update bundled gems list at 6435dfce5fcddd22d3570eda2c60cc [ci skip]
-
08:41 AM Revision 6435dfce (git): style
-
08:41 AM Revision 50b32a3c (git): Added repl_type_completor as bundled gems
-
07:12 AM Feature #20738: Removing a specific entry from a hash literal
- I don't want to add a special value (Hash::DROP) nor special syntax (?key:) here. Use `h = {foo: 1}; h[:bar] = 2 if bar?`.
Matz.
- 07:00 AM Revision 7f251ce5 (git): Update bundled gems list as of 2024-10-03
-
06:43 AM Feature #18127 (Closed): Ractor-local version of Singleton
- I have been merged https://github.com/ruby/singleton/pull/4
- 06:04 AM Revision 1b3f18af (git): each_address should now resolve for AAAA first
- AAAA over A is standards track behaviour as per RFC 6724.
-
05:20 AM Revision 4cd893b0 (git): [flori/json] Optimize key type check in `json_object_i`
- Rather than checking the class we can check the type.
This is very subtly different for String subclasses, but I think it's
OK.
We also save on checking the type again in the fast path.
https://github.com/flori/json/commit/772a0201ab -
05:20 AM Revision 57282c62 (git): [flori/json] Optimize `fbuffer_inc_capa`
- On my `JSON.dump` benchmark it shows up as 6% of runtime, compared
to 40% for `convert_UTF8_to_JSON`.
Since the vast majority of the time this function is called we
still have some buffer capacity, we might as well check that
first and ... -
05:20 AM Revision 630c6813 (git): [flori/json] JSON.dump: avoid redundant UTF-8 validation
- Given that we called `rb_enc_str_asciionly_p`, if the string encoding
isn't valid UTF-8, we can't know it very cheaply by checking the
encoding and coderange that was just computed by Ruby, rather than
to do it ourselves.
Also Ruby migh... -
04:44 AM Misc #20728: Propose Eileen Uchitelle as a core committer
- OK, welcome Eileen.
Matz.
-
04:43 AM Feature #20750: Allow rb_thread_call_with_gvl to work when thread already has GVL
- OK, I accept to make `rb_thread_call_with_gvl` to acquire GVL only when needed. @ko1 worried it may encourage bad design pattern, but not allowing `rb_thread_call_with_gvl` with GVL does not improve the situation.
So I accept it, you ha... - 04:11 AM Revision 835ac8a4 (git): Update bundled gems list at a048090bd591ef874f36effb2065d6 [ci skip]
-
04:10 AM Revision a048090b (git): Update bundled_gems
-
04:09 AM Feature #10459 (Rejected): [PATCH] rfc3339 method for Time
- I confirmed this to @akr again. He said "rfc3339 is slightly different from iso8601. I don't want to introduce this alias".
-
03:38 AM Revision d40db5cf (git): [DOC] [pty] Add clean up to `PTY.spawn`
-
03:16 AM Revision 9bd2f30d (git): [ruby/reline] Fix FD leaks (https://github.com/ruby/reline/pull/752)
- `PTY.spawn` with a block detaches the spawned process and leaves it
running in background even after exiting the given block. It is the
responsibility of the caller to clean up the yielded IOs and PID.
https://github.com/ruby/ruby/acti... - 02:33 AM Revision 75c4ac33 (git): Update `IO::Buffer` documentation. (#11737)
- Update documentation.
-
12:40 AM Revision e5c26b0f (git): Stop skipping broken tests
-
12:40 AM Revision 8877e9d9 (git): Update rbs test
10/02/2024
-
11:53 PM Bug #20780 (Open): related to #20779 -- crash creating large number of concurrent-ruby promises
- The attached script crashes (vs. the hang in issue #20779). I believe this is also a OSX specific resource issue, but have been unable to craft a better script to demonstrate the problem.
I've included a script to reproduce, the st... -
11:31 PM Bug #20779 (Closed): Un-rescuable thread creation limit on Mac
- Thread.new will hang the ruby process once past the OSX limit. It does not appear that's possible to trap and rescue failed thread creation.
It seems the Mac has a limit to the number of threads it supports and googling the issue sug... -
11:20 PM Feature #17326: Add Kernel#must! to the standard library
- Looks like PR was opened at https://github.com/ruby/ruby/pull/11772.
-
09:33 PM Revision e7734615 (git): [rubygems/rubygems] Remove compatibility code with old RubyGems
- https://github.com/rubygems/rubygems/commit/f11e42a3c5
-
08:52 PM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- > OK, I'll revert all related changes if that's what you said that. I'm considering how to suppress needless warning with your request, But I can't collaborate with your tone.
I don't see anything wrong about @Earlopain 's tone. And h... -
07:43 PM Revision d3e2d23c (git): Fix compilation when RGENGC_CHECK_MODE >= 4
- the mark_function_data callback was moved from the ractor to the VM.
-
06:44 PM Revision e7cf2e76 (git): [DOC] Fix indentation in documentation for Array#sort!
-
06:39 PM Revision 77056674 (git): [ruby/prism] Fix up binding power for singleton method receiver
- https://github.com/ruby/prism/commit/f29ceae5cf
-
05:58 PM Feature #20778 (Closed): ruby/repl_type_completor as a bundled gem
- When gem repl_type_completor is installed, `irb --type-completor` will provide better completion in IRB.
~~~
irb(main):001* [1, 2, 3].map(&:ch█
|:chr|
~~~
~~~
irb(main):001* [1, 2, 3].map(&:chr).each ... -
05:54 PM Revision 253b76ec (git): [DOC] Tweaks for Array#max (#11768)
-
05:47 PM Revision 2f5ab4c4 (git): YJIT: Merge `impl VALUE` blocks [ci skip]
- Reported by Kevin Menard.
-
05:47 PM Revision 09761e47 (git): [ruby/reline] Fix incremental search cancel bug
- (https://github.com/ruby/reline/pull/748)
https://github.com/ruby/reline/commit/bf0f8fa333 -
05:36 PM Revision 8f4277f4 (git): [ruby/reline] Add a timeout to cursor_pos
- (https://github.com/ruby/reline/pull/750)
https://github.com/ruby/reline/commit/dd4a654e5d -
05:19 PM Revision 9f47f0eb (git): [DOC] Tweaks for Array#length
-
05:03 PM Feature #20770: A *new* pipe operator proposal
- @AlexandreMagro I don’t think this analogy is suitable here.
Of course, there are operators that aren’t convenient to use in chaining (though, I should admit to the sin of sometimes just using `the.chain.with.+(argument).like.that`, ... -
04:14 PM Feature #20770: A *new* pipe operator proposal
- zverok (Victor Shepelev) wrote in #note-28:
> What would `|>` bring here?
> ...
I’d like to turn the question around and ask what would be returned from the following code?
```ruby
array_a = [{ name: 'A', points: 30 }, { name: 'B', poin... -
03:19 PM Feature #20770: A *new* pipe operator proposal
- I agree with @zverok and am not quite sold on the value of `|>` over the existing `.then{}` if we still have to explicitly specify implicit args like `it/_1/etc` (unlike elixir).
I am intrigued by the `.{}` syntax though but wish it did... -
06:34 AM Feature #20770: A *new* pipe operator proposal
- A couple of my counterpoints to `|>` (and towards `.{}`, if we do need syntax sugar in this place at all):
While `|>` sure exists in other languages, we need to look into how it plays with the rest of the code/semantics of _our_ langu... -
04:13 PM Bug #20776: [PRISM] Pattern matching syntax error message
- What's happening with the error message is that it's seeing the `$g` and determining that it's not a valid pattern, so it assumes the pattern is missing. Then it's determining that there is no statement delimiter (newline or semicolon) b...
-
11:53 AM Bug #20776: [PRISM] Pattern matching syntax error message
- The same code ~~segfaulted~~ crashed due to "Unexpected node type" in 3.3.
Probably some backports are needed. -
11:51 AM Bug #20776 (Closed): [PRISM] Pattern matching syntax error message
- Syntax error is fine, but is really expecting end-of-input there?
```
$ ruby -v -e '1 => $g'
ruby 3.4.0dev (2024-10-01T14:59:58Z master 169a5ee99e) +PRISM [arm64-darwin23]
-e:1: warning: possibly useless use of a variable in void c... -
04:02 PM Revision 99620b98 (git): fake.rb: Copy options in RUBY_DESCRIPTION to the fake string
- The `RUBY_DESCRIPTION_WITH` macro has been removed already, so there
are no more descriptions strings with rjit/yjit enabled. -
03:47 PM Revision bf8a8820 (git): Deduplicate RGENGC_CHECK_MODE into gc/gc.h
-
03:38 PM Bug #20777 (Closed): 3.3: `RUBY_DESCRIPTION` is corrupt when `--yjit` and `--parser=prism`
-
03:37 PM Bug #20777 (Closed): 3.3: `RUBY_DESCRIPTION` is corrupt when `--yjit` and `--parser=prism`
- Note the last garbages.
```shell-session
$ ruby3.3 -W0 --yjit --parser=prism -e 'p RUBY_DESCRIPTION'
"ruby 3.3.5 (2024-09-03 revision ef084cc8f4) +YJIT +PRISM [arm64-darwin\x00\x00\x00"
```
commit:76ea5cde2a0f4834a5228104249b6b3... -
03:27 PM Revision 2610bf01 (git): [ruby/prism] Fix up doubled range in arguments
- https://github.com/ruby/prism/commit/aee2de91a3
-
03:12 PM Revision 609fdde2 (git): [DOC] Tweaks for Array.intersect? (#11744)
-
03:11 PM Revision a7c04a31 (git): [DOC] Tweaks for Array#intersection (#11745)
-
02:55 PM Revision 75ab01f3 (git): [DOC] Tweaks for Array#last (#11748)
-
02:47 PM Revision 2e2520ef (git): [ruby/prism] Fix up beginless ranges in method definitions
- https://github.com/ruby/prism/commit/ab9d80987a
-
01:28 PM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- I opened a pull request to merge nobu's and my tests together: https://github.com/ruby/win32-registry/pull/3
@hsbt You left me as the only maintainer for win32-registry. Is it expected that I maintain this library from now on?
How ab... -
12:31 PM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- > The test file in https://github.com/larskanis/win32-registry seems quite different from the one in ruby/ruby.
Oh this is new! I created the win32-registry repository 10 months ago, when your test wasn't written. So I wrote my own. I... -
11:47 AM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- The test file in https://github.com/larskanis/win32-registry seems quite different from the one in ruby/ruby.
Is it intentional? -
09:37 AM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- Thanks! I transferred it to https://github.com/ruby/win32-registry. I keep you as admin on ruby/win32-registry.
-
09:27 AM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- @hsbt I had to move the repository to an organization, in order to give you admin access. The new address is: https://github.com/oneclick/win32-registry
-
08:56 AM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- @larskanis Thanks to invite me for https://github.com/larskanis/win32-registry. But I can't see `Settings` tab yet. Can you make me `admin` of that repository?
I consider to extract `net-http-sspi` from `win32/sspi` with nobu because ... -
04:52 AM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- >My intention is that the repository can be moved to https://github.com/ruby/win32-registry and can be integrated it into ruby.
Can you add my GitHub account (hsbt) to that repository as admin? After that, I will transfer to under the... -
03:10 AM Feature #20775 (Assigned): Gemify win32-registry, win32-sspi and win32-resolv
- >win32-registry
I agreed your proposal.
@nobu Do you have any concern?
> ...
I'm +1 to @nobu's opinion. we should remove it from `ruby/ruby`.
>win32-resolv
As nobu said, we already bundled it to resolv gem.
-
02:38 AM Feature #20775: Gemify win32-registry, win32-sspi and win32-resolv
- ### win32/sspi
I'd propose to just drop it.
It has been unmaintained for years, not only `A` you mentioned (e.g., `Fixnum`), but no body noticed it.
### win32/resolve
it is included in [ruby/resolv](https://github.com/ruby/resolv) ... -
01:15 PM Revision e41e4bac (git): [DOC] Tweaks for Array#inspect (#11743)
-
01:03 PM Revision c1d6d55f (git): Assert in only one place just after adding an argument
-
12:54 PM Revision 6acf0361 (git): Mark iseq keyword default values during compilation
- During compilation, we write keyword default values into the iseq, so we
should mark it to ensure it does not get GC'd.
This might fix issues on ASAN like
http://ci.rvm.jp/logfiles/brlog.trunk_asan.20240927-194923
==805257==ERROR: ... -
11:43 AM Revision 3e1021b1 (git): Make default parser enum and define getter/setter
-
11:43 AM Revision 4e219d8f (git): Split appending options to ruby_description
- It's becoming tedious to map each format specifier to an argument.
-
10:37 AM Revision acbdb309 (git): [rubygems/rubygems] Fix error in one source when fetching dependency APIs clearing results from all sources
- https://github.com/rubygems/rubygems/commit/0549ddbcc5
- 09:04 AM Revision 7469b830 (git): Update bundled gems list at bb97061f65d620b225d7638400642e [ci skip]
-
09:03 AM Revision bb97061f (git): SKip failing tests that are caused by unknown IOError
-
09:03 AM Revision 973d4702 (git): Update bundled_gems
-
08:32 AM Revision fe8d7ca8 (git): [DOC] Alias Float#magnitude to abs
-
08:07 AM Revision b7a33aef (git): [DOC] Keep example styles consistent
- The examples of chaining for other methods, such as #tap have the dot at
the start of the line, while #then has it at the end of the previous
line. Updated this to have consistent style in Kernel docs. -
08:07 AM Revision bae3d681 (git): [DOC] Remove repeated examples for Kernel#then
-
08:06 AM Revision 5eb7cbf4 (git): [DOC] Alias Kernel#yield_self to #then
- 05:36 AM Revision d2ec0e80 (git): [ruby/fiddle] test memory-view: ensure releasing in test
- It's for avoiding calling release on exit via GC. If it's happen, Ruby
will be crashed because Fiddle::MemoryView's finalizer may refer other
Ruby object. In exit phrase, the referred Ruby object may be already
freed.
https://github.com... - 05:36 AM Revision c9910851 (git): [ruby/fiddle] test: remove fragile memory leak tests
- https://github.com/ruby/fiddle/commit/0bfcd02bef
-
05:34 AM Revision 9d4e7b37 (git): Make spec file for env helpers more generic
-
05:34 AM Revision 50001380 (git): [rubygems/rubygems] Fix `bundler/inline` resetting ENV
- https://github.com/rubygems/rubygems/commit/72d8d4dbba
-
05:34 AM Revision a3929a9c (git): [rubygems/rubygems] The `BUNDLER_SETUP` env should also be cleaned up
- https://github.com/rubygems/rubygems/commit/47b7e50f64
-
05:34 AM Revision 49483904 (git): [rubygems/rubygems] Make sure MissingSpecVersionError#to_s prints exception message
- Gem command loading errors rely on `#to_s` on the raised exception, but
in the case of `MissingSpecVersionError` that was only the exception
name, making it printed twice and no message at all.
Before:
```
ERROR: Loading command: inst... -
05:34 AM Revision 02d50d9c (git): [rubygems/rubygems] Simplify command loading
- https://github.com/rubygems/rubygems/commit/95f60f0e60
-
05:34 AM Revision 3d1eb62b (git): [rubygems/rubygems] Standarize "ins" test command too
- https://github.com/rubygems/rubygems/commit/517e9a8669
-
05:34 AM Revision 8e73609c (git): [rubygems/rubygems] Fix weirdness of "interrupt" test command
- https://github.com/rubygems/rubygems/commit/0a75590ac9
-
05:33 AM Revision 63f31a9e (git): [ruby/singleton] Fixed double assignment
- https://github.com/ruby/singleton/commit/9d3c77a868
-
05:13 AM Revision 30775d0b (git): [DOC] Fix typo in Forwardable docs
-
03:18 AM Revision a8a921ae (git): [ruby/irb] Use correct binding in debug mode
- (https://github.com/ruby/irb/pull/1007)
In debug command, IRB's context was using wrong binding.
Some code colorization, command detection failed because binding.local_variable returned wrong value.
https://github.com/ruby/irb/commit/6...
10/01/2024
-
10:46 PM Feature #20770: A *new* pipe operator proposal
- I strongly agree that new additions should be thoroughly evaluated and aligned with the philosophy of the language ("A programmer's best friend"). I've found the discussion so far to be very productive, and my opinion is that:
I don't... -
07:43 PM Feature #20770: A *new* pipe operator proposal
- [The Ruby-lang homepage](https://www.ruby-lang.org) states that Ruby has
> a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write.
And on the [about page](https://www.ruby-lang.org/en... -
07:02 PM Feature #20770: A *new* pipe operator proposal
- @Eregon this example (at least for me) is just an easy target for discussion (because it uses standard libraries, is easily reproducible, and demonstrates the multi-step realistic process that uses several libraries at once).
I believ... -
06:18 PM Feature #20770: A *new* pipe operator proposal
- One concern with so many `then {}` is that's a non-trivial overhead for execution (2 method calls + 1 block call for `then { foo(it) }` vs 1 method call for `foo(var)`).
So if it's added I think it should translate to the same as using ... -
05:47 PM Feature #20770: A *new* pipe operator proposal
- ufuk (Ufuk Kayserilioglu) wrote in #note-21:
> I tend to agree with @Dan0042 on this one, this seems to go against the nature of Ruby. In Ruby, an expression like `URI.parse(it)` is always eagerly evaluated, except when it is inside a b... -
05:19 PM Feature #20770: A *new* pipe operator proposal
- I think that this is one of the more interesting approaches to a pipeline operator in Ruby as it is just syntax sugar. As I am understanding it:
```ruby
foo
|> bar(_1, baz)
|> hoge(_1, quux)
```
would be treated by the parser t... -
05:09 PM Feature #20770: A *new* pipe operator proposal
- I tend to agree with @Dan0042 on this one, this seems to go against the nature of Ruby. In Ruby, an expression like `URI.parse(it)` is always eagerly evaluated, except when it is inside a block. This is not true in other languages; ones ...
-
04:13 PM Feature #20770: A *new* pipe operator proposal
- I'm not a big fan of this pipe operator idea, but at least the idea of using `it` is a good one; it solves many problems with previous proposals.
```ruby
foo = 42
1 |> foo |> BAR
#foo should be localvar but somehow is parsed as met... -
01:08 PM Feature #20770: A *new* pipe operator proposal
- vo.x (Vit Ondruch) wrote in #note-18:
> Right, this was far fetched and would not work admittedly. But that is why I proposed the `client_api_url.to(URI)`, because after all, this is IMHO mostly about type conversion. Why would I ever w... -
09:55 AM Feature #20770: A *new* pipe operator proposal
- zverok (Victor Shepelev) wrote in #note-17:
> I don’t think it is realistic, generally. I mean, convert every `f(g(x))` to “`x` should have method `g`, and the result should have method `f`, so you can write `x.g.f` always (or in most w... -
08:24 AM Feature #20770: A *new* pipe operator proposal
- vo.x (Vit Ondruch) wrote in #note-14:
> AlexandreMagro (Alexandre Magro) wrote in #note-7:
> ...
I don’t think it is realistic, generally. I mean, convert every `f(g(x))` to “`x` should have method `g`, and the result should have metho... -
07:55 AM Feature #20770: A *new* pipe operator proposal
- > We could expand the syntax to treat `.{}` as `.then{}`, similar to how `.()` is `.call()`.
I really like this idea. Yes, it is not “how it is in other languages” yet it has a deep internal consistency with other language elements a... -
07:07 AM Feature #20770: A *new* pipe operator proposal
- Not mentioning, the example ignores error handling, which would be IMHO the biggest problem in real life example
-
07:02 AM Feature #20770: A *new* pipe operator proposal
- AlexandreMagro (Alexandre Magro) wrote in #note-7:
To me it just demonstrates that the APIs are likely incomplete and don't provide methods for easy conversion. We have a lot of conversion methods such as `#to_str`, `#to_json`, ... Bu... -
05:56 AM Feature #20770: A *new* pipe operator proposal
- When pipeline operator was proposed previously (#15799), we briefly spoke of the idea of a block notation without a closing bracket ([the meeting log](https://github.com/ruby/dev-meeting-log/blob/c908bf7e7be60af5c5feabb544541de5f7d003ef/...
-
04:49 AM Feature #20770: A *new* pipe operator proposal
- FYI: https://github.com/tc39/proposal-pipeline-operator
is similar idea. -
07:47 PM Revision 5edc3219 (git): [DOC] Tweaks for Array#keep_if
-
07:46 PM Revision e72e18b3 (git): [DOC] Tweaks for Array#join
-
07:42 PM Revision 467ebbeb (git): [ruby/prism] Disallow dynamic patterns in labels at top level followed by pipes
- https://github.com/ruby/prism/commit/ccc746f918
-
07:36 PM Feature #20775 (Closed): Gemify win32-registry, win32-sspi and win32-resolv
- Many libraries bundled with ruby have been gemified and were separated into it's own repository.
Not so far the 3 win32 libraries: https://github.com/ruby/ruby/tree/master/ext/win32/lib/win32
* win32/registry
* win32/resolv
* win32/s... -
06:27 PM Feature #20768: Add Hash#delete_at
- ```ruby
a, c = [:a, :c].map { hash.delete(it) }
```
seems enough and does not require adding a new method for what looks like (to me) a narrow use case. -
05:01 PM Revision e320da60 (git): [ruby/reline] Fix Reline crash with invalid encoding history
- (https://github.com/ruby/reline/pull/751)
https://github.com/ruby/reline/commit/e9d4b37e34 -
03:03 PM Revision ec230ac6 (git): Resync to latest Prism
-
02:59 PM Revision 169a5ee9 (git): Use user defined inline rules `user_or_keyword_variable`
-
02:54 PM Bug #20762: `make test-basic` with -DRGENGC_FORCE_MAJOR_GC is always failure
- This should be addressed by https://github.com/ruby/ruby/pull/11711
-
01:51 PM Revision d86b4041 (git): [ruby/prism] Disallow empty labels when not allowed
- https://github.com/ruby/prism/commit/399ee28dc1
-
12:57 PM Revision 75568d23 (git): [ruby/prism] Disallow &. after endless range
- https://github.com/ruby/prism/commit/498dd922d4
-
12:48 PM Revision 3932d8a8 (git): Replace heap_eden_total_slots with objspace_available_slots
-
12:06 PM Bug #20764 (Closed): Forwarding parameter `...` is wrongly allowed in lambda
- Applied in changeset commit:git|86ae409467e3674c142f012ee3b2288b0305d87c.
----------
[Bug #20764] Refactor argument forwarding in lambda
Reject argument forwarding in lambda:
- without parentheses
- after optional argument(s) -
11:00 AM Revision 86ae4094 (git): [Bug #20764] Refactor argument forwarding in lambda
- Reject argument forwarding in lambda:
- without parentheses
- after optional argument(s) -
10:59 AM Bug #20755 (Closed): IO::Buffer#transfer transfers mutable reference to String's memory but not lock ownership
- Applied in changeset commit:git|35e124832e29b65c84d4e0e4e434616859f9bdf5.
----------
[Bug #20755] Frozen string should not be writable via IO::Buffer -
09:57 AM Misc #20774 (Open): Remove remaining locale dependent code from Windows port
- The external_encoding of files, file names and ENV on Windows were changed from locale codepage to UTF-8 in ruby-3.0.
But there are still several remaining points where locale encoding is used although there is no need to do so.
The Wi... -
09:46 AM Revision 35e12483 (git): [Bug #20755] Frozen string should not be writable via IO::Buffer
-
09:41 AM Revision 3ebc85e2 (git): Define RactorLocalSingleton on .mspec.constants
-
09:32 AM Revision d109c7c6 (git): Temporary disabled RactorLocalSingleton from constant leak check.
-
08:59 AM Revision 0f005449 (git): [ruby/singleton] Make compatible with Ruby 2.4
- https://github.com/ruby/singleton/commit/0a77bb492d
-
08:59 AM Revision 2f53c9fc (git): [ruby/singleton] Clean VERSION freezing
- https://github.com/ruby/singleton/commit/f31334a736
-
08:59 AM Revision d0c1eef5 (git): [ruby/singleton] Only use RactorLocalSingleton if Ractor is defined
- https://github.com/ruby/singleton/commit/f684d36a47
-
08:59 AM Revision a6e96df5 (git): [ruby/singleton] Change PerRactorSingleton to RactorLocalSingleton
- https://github.com/ruby/singleton/commit/1216a86303
-
08:59 AM Revision 136b30b4 (git): [ruby/singleton] Improve Ractor-compliance; Create PerRactorSingleton
- https://github.com/ruby/singleton/commit/ec4f66d9c1
-
08:35 AM Revision 76111af6 (git): expand relative path
-
08:35 AM Revision 4822220e (git): Pass MSPECOPT from compilers.yml
-
05:54 AM Bug #20501: ruby SEGV
- I'm not sure but this seems to need to be backported.
-
05:47 AM Bug #20501 (Closed): ruby SEGV
-
05:45 AM Bug #20752 (Closed): IO::Buffer#slice creates mutable IO::Buffer instance that points to readonly memory (e.g. fronzen String)
- 03:34 AM Revision 522614a3 (git): Bump github/codeql-action from 3.26.9 to 3.26.10
- Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.26.9 to 3.26.10.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.m... -
12:57 AM Bug #20773 (Closed): CI of RHEL8 and Amazon Linux 2 are failed from Sep 26th
- https://github.com/ruby/ruby/pull/11736 fixed this.
09/30/2024
-
11:58 PM Feature #20770: A *new* pipe operator proposal
- jeremyevans0 (Jeremy Evans) wrote in #note-10:
> We could expand the syntax to treat `.{}` as `.then{}`, similar to how `.()` is `.call()`. With that, you could do:
> ...
The idea of using `.{}` is really creative, but it feels somewh... -
10:55 PM Feature #20770: A *new* pipe operator proposal
- AlexandreMagro (Alexandre Magro) wrote in #note-9:
> Yes, and it's also possible to achieve this with a chain of `.then`, which results in a similar structure. The idea of the pipe operator is to be syntactic sugar, bringing functionali... -
10:30 PM Feature #20770: A *new* pipe operator proposal
- ufuk (Ufuk Kayserilioglu) wrote in #note-8:
> You can also make the whole pipeline with just using procs:
> ...
Yes, and it's also possible to achieve this with a chain of `.then`, which results in a similar structure. The idea of the... -
10:15 PM Feature #20770: A *new* pipe operator proposal
- AlexandreMagro (Alexandre Magro) wrote in #note-7:
> With the pipe operator, the same logic can be simplified and made more readable:
> ...
I would like to note that this almost works already today:
```ruby
irb> client_api_url = "htt... -
09:23 PM Feature #20770: A *new* pipe operator proposal
- vo.x (Vit Ondruch) wrote in #note-6:
> Code like `add(value, 3)` is hardly some idiomatic Ruby. If it was Ruby, then you'd likely use `value.add(3)` or `value + 3`. Other examples of readable code are [here](https://poignant.guide/book/... -
08:32 PM Feature #20770: A *new* pipe operator proposal
- Code like `add(value, 3)` is hardly some idiomatic Ruby. If it was Ruby, then you'd likely use `value.add(3)` or `value + 3`. Other examples of readable code are [here](https://poignant.guide/book/chapter-3.html). I can't see what is rea...
-
07:02 PM Feature #20770: A *new* pipe operator proposal
- bkuhlmann (Brooke Kuhlmann) wrote in #note-4:
> For background, this has been discussed before:
> ...
One issue with `.pipe` is that it mixes two approaches: the object method chain (`lhs.rhs`) and passing the result as an argument (`r... -
02:15 PM Feature #20770: A *new* pipe operator proposal
- For background, this has been discussed before:
- [15799](https://bugs.ruby-lang.org/issues/15799): This was implemented and then reverted.
- [20580](https://bugs.ruby-lang.org/issues/20580): This recently popped up as well.
- There... -
04:27 AM Feature #20770: A *new* pipe operator proposal
- I would still love to see this type of pipeline functionality implemented with plain expressions instead of new operators.
I have this (old) working [proof of concept](https://github.com/lendinghome/pipe_operator#-pipe_operator) gem f... -
02:24 AM Feature #20770: A *new* pipe operator proposal
- nobu (Nobuyoshi Nakada) wrote in #note-1:
> In the previous trial syntax, the receiver of RHS was the result of LHS.
> ...
Exactly, this is the expected behavior of the pipe operator in other functional languages, such as Elixir. In th... -
01:15 AM Feature #20770: A *new* pipe operator proposal
- In the previous trial syntax, the receiver of RHS was the result of LHS.
In your proposal, the receiver of RHS is the same as LHS, and the LHS result is passed as an implicit argument?
-
11:00 PM Revision af63b4f8 (git): Return an Iterator Instead of a Vector in `addrs_to_pages` Method (#11725)
- * Returning an iterator instead of a vec
* Avoid changing the meaning of end_page
---------
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> -
06:23 PM Revision 30507a4a (git): Move RUBY_INTERNAL_EVENT_FREEOBJ into GC implementation
- Instead of calling rb_gc_event_hook inside of rb_gc_obj_free, it should
be up to the GC implementation to call the event. -
05:55 PM Revision 292c9793 (git): Remove no longer needed excludes files
-
05:12 PM Revision d592ddd5 (git): Fix compile issue with a short-circuited if/unless condition and `defined?`
- This caused an issue when `defined?` was in the `if` condition. Its
instructions weren't appended to the instruction sequence even though it was compiled
if a compile-time known logical short-circuit happened before the `defined?`. The c... -
04:58 PM Revision 2a580923 (git): Remove unneeded prototype for objspace_available_slots
-
04:16 PM Revision af765686 (git): Run just bignum related tests when gmp enabled
-
04:16 PM Revision 4608ef8d (git): -l option of 7z is unknown switch with the `ubuntu-latest`.
- https://github.com/ruby/actions/actions/runs/11095032727/job/30823174026#step:3:349
-
03:36 PM Revision 6c9b5c16 (git): Sync Prism with latest main branch
-
02:49 PM Bug #20765 (Closed): Unexpected node type in pattern matching expression: PM_IMPLICIT_REST_NODE evaluating `a=>*,`
-
02:32 PM Bug #20765: Unexpected node type in pattern matching expression: PM_IMPLICIT_REST_NODE evaluating `a=>*,`
- Thank you — I have opened https://github.com/ruby/prism/pull/3096 to fix this.
-
02:33 PM Revision c1c9ba77 (git): [ruby/prism] Require a delimiter for singleton classes
- https://github.com/ruby/prism/commit/fd58d6a9ea
-
01:54 PM Bug #20755: IO::Buffer#transfer transfers mutable reference to String's memory but not lock ownership
- https://github.com/ruby/ruby/pull/11738
-
01:09 PM Revision 6b8078cc (git): Don't create empty string for interpolation
- We don't need to create an empty string for interpolation unless it is
the only element.
For example:
"#{hello} world"
Before:
0000 putobject "" ( 1)[Li]
0002 putself
... -
12:22 PM Bug #20753: [doc] IO::Buffer examples try to write into readonly buffer returned from IO::Buffer.for
- https://github.com/ruby/ruby/pull/11737
-
12:07 PM Bug #20752: IO::Buffer#slice creates mutable IO::Buffer instance that points to readonly memory (e.g. fronzen String)
- Looks like @nobu already made a PR here: https://github.com/ruby/ruby/pull/11735
-
12:00 PM Bug #20752: IO::Buffer#slice creates mutable IO::Buffer instance that points to readonly memory (e.g. fronzen String)
- The second example `XameError` is hilarious, what a great bug. Yes, this should be fixed.
-
11:39 AM Revision 63706744 (git): [Bug #20752] Slice of readonly `IO::Buffer` also should be readonly
-
11:35 AM Revision b93c51c1 (git): Free a buffer allocated by realpath
- 8350b48cfa7d344d9e2dc9748c26607c1b89d7df introduced a memory leak bug.
Will fix [Bug #20773]
`loop { File.realpath("foo") }` caused memory leak. -
11:32 AM Revision 5ed67f48 (git): [ruby/rdoc] Only let browser search through source code until it's
- expanded
(https://github.com/ruby/rdoc/pull/1181)
Something that's been bothering me is that while the source code is
not visible by default, the browser still jump to it when searching.
Adding the `visible` property prevents this.
Tes... -
10:10 AM Revision 81d26814 (git): Update test args with bundled gems. webrick has been removed that targets
-
09:53 AM Revision 8cd36a6d (git): Don't warn the bundled gems that are migrated at Ruby 3.0.
- We should stop warnings at some point. I decided to that period EOL-ed versions.
ex. In 2024, Ruby 3.0 is EOL. we removed webrick, rexml, rss from warning targets. -
09:29 AM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- I apologize for my tone, I will try to be more understanding. I am just a bit frustrated with the warnings in general, especially with the ones that were backported 3.3.5. I know it is already reverted but they do still happen now.
It... -
09:11 AM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- >All it does is supress the warning from reline (which is suppressed directly in the gem right now anyways) when fiddle is gone in 3.5
Yes, I only accept that point with your request in this time. I may add `syslog` to OPTIONAL with `... -
08:34 AM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- https://github.com/ruby/ruby/commit/3a9e48b9a4860022f43d8101c0f3249299437886 this seems better but I still question the rationale.
I don't see the point in giving `fiddle` special treatment with `OPTIONAL`. What problem is this solvin... -
09:26 AM Bug #20773 (Closed): CI of RHEL8 and Amazon Linux 2 are failed from Sep 26th
- RHEL8 and Amazon Linux 2 are failed with `Cannot allocate memory - fork(2)` from Sep 26th.
* http://rubyci.s3.amazonaws.com/rhel8/ruby-master/log/20240926T093004Z.fail.html.gz
* http://rubyci.s3.amazonaws.com/amazon2/ruby-master/log/... -
09:17 AM Revision c30a3ed0 (git): Fix the last character index in an assertion
- Also, when `RUBY_DEBUG` is enabled, objects allocated in shared-gc
fail at `rb_ractor_confirm_belonging`, so assert it always. -
09:04 AM Revision ac278675 (git): Use Named Reference
-
09:04 AM Revision 044e57ed (git): Implement SPLAT NODE keyword locations
-
08:43 AM Revision 239c1c62 (git): LLVM 20 begun
- see also https://github.com/llvm/llvm-project/commit/10c6d6349e51bb245b9deec4aafca9885971135b
-
07:49 AM Bug #20772 (Open): Test with -O3 is flaky
- I enabled `-O3` build and those tests. But it failed with flaky status.
https://github.com/ruby/ruby/actions/runs/11098648054/job/30831665071#step:6:2439
```
[251/251] 53150=test_range
worker 53144=test_euc_jp does not respon... -
07:20 AM Revision 6abed7ea (git): Test with -O3 is flaky now. I disabled it same as before.
- 07:02 AM Revision f14d5210 (git): * 2024-09-30 [ci skip]
-
07:01 AM Revision 165aeb87 (git): -l option of 7z is unknown switch with the `ubuntu-latest`.
- https://github.com/ruby/actions/actions/runs/11095032727/job/30823174026#step:3:349
-
06:18 AM Bug #20771 (Closed): make-snapshot is broken with ubuntu-latest
- `make-snapshot` is broken now with the following failure.
```
Command Line Error:
Unknown switch:
-l
creating zip archive... /home/runner/work/actions/actions/pkg/snapshot-ruby_3_3.zip 0.003 failed
```
I opened PRs to stable ... -
05:49 AM Bug #20767: VM_ASSERT fails on clear_method_entry_by_id_in_class() under a specific situation
- The test case: https://github.com/ruby/ruby/pull/11715/files
-
05:35 AM Bug #20766 (Closed): Endless range rejected inside defs singleton
-
05:18 AM Bug #20749 (Closed): Error message not shown in output with prism
-
05:09 AM Revision 3a273c47 (git): [rubygems/rubygems] Fix error when changing a path source to a git source if frozen mode
- https://github.com/rubygems/rubygems/commit/4c79ab9b2e
-
05:09 AM Revision 1e007636 (git): [rubygems/rubygems] Fix duplicated spec names
- https://github.com/rubygems/rubygems/commit/26f6600197
-
05:08 AM Revision 7d318c2c (git): [rubygems/rubygems] Fix `stub.activated?` sometimes returning false after activation under bundler
- Closes https://github.com/rubygems/rubygems/pull/8068
This issue only occurs if the underlying stub is a gem stub:
https://github.com/Earlopain/rubygems/blob/f56098d8a193dcb94584d721e82b8cff397e5265/bundler/lib/bundler/stub_specificatio... -
05:08 AM Revision dbe69a46 (git): [rubygems/rubygems] I _think_ this workaround is no longer necessary
- https://github.com/rubygems/rubygems/commit/6a76fedfd0
-
05:08 AM Revision 060932af (git): [rubygems/rubygems] Fix old cache format detection when application is not source controlled
- https://github.com/rubygems/rubygems/commit/b2adcc0173
-
05:07 AM Revision 82f250af (git): [rubygems/rubygems] `gem cleanup` no longer needs to reset paths
- Since `Gem::Uninstaller` no longer changes paths either.
https://github.com/rubygems/rubygems/commit/427059d45f -
05:07 AM Revision d4ac5c57 (git): [rubygems/rubygems] Don't add duplicated specs to unresolved specs
- This could happen when a regular gem shadows a default gem.
https://github.com/rubygems/rubygems/commit/9ef70dd1f7 -
05:07 AM Revision 73d60df6 (git): [rubygems/rubygems] Don't list duplicated version in `Gem::Specification.reset` warning
- https://github.com/rubygems/rubygems/commit/e6e3db821f
-
05:00 AM Feature #18368 (Closed): Range#step semantics for non-Numeric ranges
- I think there is no task in this ticket. Thank you @zverok
-
05:00 AM Feature #18423 (Closed): Installing stable versions like 3.0.3 from source generates fatal error by make
- We can't support Solaris anymore.
-
04:04 AM Revision 1b6c234f (git): s/reproducable/reproducible/
-
03:03 AM Revision 3fe59b04 (git): -l option of 7z is unknown switch with the `ubuntu-latest`.
- https://github.com/ruby/actions/actions/runs/11095032727/job/30823174026#step:3:349
-
02:35 AM Revision 3a9e48b9 (git): Fixed warning condition with LoadError
-
02:10 AM Bug #20762 (Assigned): `make test-basic` with -DRGENGC_FORCE_MAJOR_GC is always failure
- I disabled this test at https://github.com/ruby/ruby/commit/a896c4cc532b9192732af02ac5cb84d3b5e7f82d
-
01:52 AM Bug #20729 (Closed): Test failure with 0fc8422a05 and native mswin environment
- This is fixed by https://github.com/ruby/ruby/pull/11719
-
01:27 AM Revision 28a01e30 (git): Ruby exception cannot work here
- Just show error messages then ignore the invalid library.
-
01:22 AM Revision 03ca99c9 (git): [DOC] Tweaks for Array#hash (#11704)
-
01:21 AM Revision 5be11c1d (git): [DOC] Tweaks for Array#first (#11687)
-
01:21 AM Revision 116395d3 (git): [DOC] Tweaks for Array#flatten! (#11689)
-
01:21 AM Revision 154ec2d2 (git): [DOC] Tweaks for Array#insert (#11709)
09/29/2024
-
11:01 PM Revision 9b4a4974 (git): Fix loading of nonascii script name on Windows
- Since the prism parser was enabled by default, loading scripts with nonascii characters somewhere in the script path is no longer working.
It only works when the codepage was switched to 65001 (UTF-8).
This patch doesn't change the enco... -
05:57 PM Feature #20770 (Open): A *new* pipe operator proposal
- Hello,
This is my first contribution here. I have seen previous discussions around introducing a pipe operator, but it seems the community didn't reach a consensus. I would like to revisit this idea with a simpler approach, more of a ... -
03:20 PM Revision a0838a39 (git): Raise fatal error instead of BUG
- Failures due to the external setting is not a bug of ruby itself.
-
03:19 PM Revision 5139a574 (git): Make directory for shared-GC libraries at build
-
03:03 PM Revision 9d604800 (git): CI: Remove `SHARED_GC` compilation
- It is checked in ubuntu.yml.
-
03:03 PM Revision 5e466ad3 (git): CI: Remove `ENABLE_PATH_CHECK` compilation
- As `ENABLE_PATH_CHECK` is defaulted to 1 on other than DOSISH and
Cygwin, setting this macro to 1 on Ubuntu changes nothing from the
default. As for `ENABLE_PATH_CHECK=0` tests, we have real CI
platforms already. -
02:27 PM Feature #20769: Add `Hash#transform_value`
- Thank you for sharing that code sample. It demonstrates an interesting way to use `Hash#merge` with a block argument.
When the key argument is absent from the Hash, a call to `Hash#transform_value` would be a no-operation. I apologize... -
02:51 AM Feature #20769: Add `Hash#transform_value`
- ```ruby
hash.merge(image: nil) {|_, url| download(url)}
hash.merge!(image: nil) {|_, url| download(url)}
``` -
02:07 PM Revision 1f6d2e77 (git): Remove leading spaces from `LIBPATHFLAG` and `RPATHFLAG`
- Join with a space in `MakeMakefile#libpathflag` instead.
- 01:24 PM Revision 9138b388 (git): Update bundled gems list as of 2024-09-29
-
12:38 PM Revision 52e40aea (git): Bump actions/checkout
-
12:00 PM Revision f5d9d9b5 (git): win32/sspi: Use `start_with?` to see prefix
-
12:00 PM Revision 25eb9bde (git): win32/sspi: Rafactor pack/unpack
-
12:00 PM Revision 30230ed9 (git): win32/sspi: For Ractor use a constant instead of a class variable
-
12:00 PM Revision fc2f196c (git): win32/sspi: Fix missing A suffix in an API constant name
-
12:00 PM Revision b7bca0eb (git): win32/sspi: Fix Win32::SSPI::SSPIResult#== with Integer
- The values of `@@map` are `Symbol`s and `@value` should be an
`Integer` since unpacked as unsigned long, so this comparison should
be false always. Probably comparison with `Symbol` was intended. -
12:00 PM Revision 1179c863 (git): win32/sspi: Already Fixnum has been removed years ago
-
10:09 AM Revision 65a0795c (git): [DOC] Mention block mode of `String#unpack`
-
10:07 AM Revision e7144af7 (git): [DOC] Refine about offset directives
-
09:55 AM Revision 066ac0fd (git): Expand buffer at once then fill it at once
-
09:45 AM Revision 3b43585a (git): Extract common code from `pack_pack` and `pack_unpack_internal`
-
02:42 AM Revision e1889dd7 (git): Assertions should not have side effects
-
01:13 AM Revision 01ff65af (git): [DOC] Tweaks for Array#replace
-
01:12 AM Revision 3986b5fe (git): [DOC] Tweaks for Array#include?
-
12:59 AM Revision d64528c6 (git): [DOC] Tweaks for Array#freeze
-
12:58 AM Revision 5a7b66fa (git): [DOC] Tweaks for Array#flatten (#11688)
09/28/2024
-
09:34 PM Feature #20769 (Feedback): Add `Hash#transform_value`
- Add `Hash#transform_value` as a specialized, key-specific version of [Hash#transform_values](https://docs.ruby-lang.org/en/3.3/Hash.html#method-i-transform_values).
```ruby
hash = { image: "https://example.com/image.jpg" }
mutated_h... - 09:12 PM Revision 87212a54 (git): [rubygems/rubygems] Improve Gem::SpecFetcher tests.
- https://github.com/rubygems/rubygems/commit/6e0456583b
- 09:12 PM Revision 5c18b63d (git): [rubygems/rubygems] [tests] Don't expect suggestions that aren't actually helpful.
- https://github.com/rubygems/rubygems/commit/e7d6b92e31
- 09:12 PM Revision 47a3482a (git): [rubygems/rubygems] Remove code that makes suggest_gems_from_name give worse results.
- https://github.com/rubygems/rubygems/commit/09ec67ffdf
-
09:08 PM Feature #20768 (Open): Add Hash#delete_at
- Add `Hash#delete_at` to delete values from a list keyed by its arguments.
The interface and return values draw inspiration from [Hash#values_at](https://docs.ruby-lang.org/en/3.3/Hash.html#method-i-values_at) and [Array#delete_at](ht... -
01:37 PM Revision b9e225fc (git): Allow dot3 in defs singleton
-
11:53 AM Revision 8f678d69 (git): Implement OP_ASGN2 NODE locations
-
07:05 AM Bug #20767 (Closed): VM_ASSERT fails on clear_method_entry_by_id_in_class() under a specific situation
- VM_ASSERT in `clear_method_entry_by_id_in_class()` (vm_method.c) fails when:
* Kernel#require is refined
* Kernel#require is replaced by `alias_method` and `define_method`
* User code calls `require`
* The aliased method entry is u... -
06:38 AM Bug #20766 (Closed): Endless range rejected inside defs singleton
- These are syntax error with --parser=parse.y. I think it should be syntax ok.
```ruby
def (1...).f; end
def (tap{1...}).f; end
```
ruby-3.0: Syntax OK (checked with 3.0.6)
ruby-3.1: Syntax Error (checked with 3.1.4)
ruby --parse... -
06:02 AM Bug #20765 (Closed): Unexpected node type in pattern matching expression: PM_IMPLICIT_REST_NODE evaluating `a=>*,`
- ~~~
# ruby --parser=prism -e "a=>*,"
-e: [BUG] Unexpected node type in pattern matching expression: PM_IMPLICIT_REST_NODE
# ruby --parser=parse.y -e "a=>*,"
-e:1: syntax error, unexpected end-of-input
~~~ -
05:48 AM Bug #20764 (Closed): Forwarding parameter `...` is wrongly allowed in lambda
- These codes are all syntax error
~~~ruby
->...{}
->(...){}
->(a,...){}
~~~
But these are allowed in --parser=parse.y. It should be syntax error
~~~ruby
->a,...{}
->(a=1,...){}
~~~
~~~
# ruby --parser=parse.y -e "p ->a,...{}... -
12:42 AM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- >By the way, I share @Earlopain's questions about the additional patch
Ah, thanks. It's simple bug. I'll fix at next week.
09/27/2024
-
05:45 PM Revision 027ef605 (git): [Bug #20763] Add tests
-
05:44 PM Bug #20763 (Closed): Stack consistency error with bare endless range
-
05:07 PM Bug #20763: Stack consistency error with bare endless range
- Thanks @tompng — https://github.com/ruby/ruby/pull/11714 should fix this.
-
04:50 PM Bug #20763 (Closed): Stack consistency error with bare endless range
- `<compiled>: [BUG] Stack consistency error (sp: 7, bp: 6)` running these codes. No error with --parser=parse.y
~~~sh
ruby -e "1r..; nil"
ruby -e "a=1; a..; nil"
ruby -e "rand..; nil"
~~~
~~~
# ruby -e "1r..; nil"
-e:1: [BUG] ... -
05:43 PM Revision addb5fea (git): Fix up compiling popped ranges with non-optimizable bounds
- Fixes [Bug #20763]
-
04:59 PM Revision 7e19904c (git): Remove on `RSTRING_END` dependency from parser
-
04:49 PM Revision d1324170 (git): [rubygems/rubygems] Warning about PATH in `--user-install` mode is only necessary for gems with executables
- https://github.com/rubygems/rubygems/commit/2fe0f452a2
-
03:59 PM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- I meant that I think in Ruby 3.4 (prior to my patch), the warning would also apply to non Bundler contexts that lead to a `LoadError`, where it would inform that `csv` may not always be present and may need an explicit install from RubyG...
-
03:33 PM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- deivid (David Rodríguez) wrote in #note-14:
> I think this would affect both Bundler and non Bundler usages. Currently the warnings recommends to install the gem from RubyGems in non Bundler context, that will also be lost in Ruby 3.4 f... -
11:08 AM Bug #20714: Handle optional dependencies in `bundled_gems.rb`
- I see that https://github.com/ruby/ruby/pull/11550 was merged which is great but I'm confused about https://github.com/ruby/ruby/commit/ff3f61556fb62d12d57d017f4c54f1a8fd5208be because it basically reverts that PR. If a dependency is opt...
-
03:21 PM Feature #6012: Proc#source_location also return the column
- I also really like @ioquatix 's suggestion in https://bugs.ruby-lang.org/issues/6012#note-13 and it is a lot more flexible and more efficient too (since computing e.g. column information if unused is not cheap).
For instance `method.sour... -
03:06 PM Feature #6012: Proc#source_location also return the column
- It seems good to revisit this, the workarounds are pretty messy and CRuby-specific, e.g. https://github.com/rails/rails/pull/53055/files
I think @mame 's suggestion in https://bugs.ruby-lang.org/issues/6012#note-12 is fine although I ... -
03:08 PM Misc #20717: DevMeeting-2024-10-03
- * [Feature #6012] Proc#source_location also return the column (eregon)
* How about `{Proc,Method,UnboundMethod}.source_location #=> [path, start_line, start_column, start_offset, end_line, end_column, end_offset]` ?
* How about `{Pro... -
03:00 PM Bug #20761: [DOC] `RubyVM::AbstractSyntaxTree.of` examples raise because parser is prism by default
- Thanks for the links, yes, that seems a perfect use case for more information in `#source_location`, going through `RubyVM` APIs for that feels overly complicated for something so simple.
I found https://bugs.ruby-lang.org/issues/6012... -
02:44 PM Bug #20761: [DOC] `RubyVM::AbstractSyntaxTree.of` examples raise because parser is prism by default
- Eregon (Benoit Daloze) wrote in #note-7:
> @Earlopain Is there a reason you need this and cannot just use e.g. `Prism.parse("proc {1 + 2}")`?
> ...
This question specifically was about usage that Rails recently adopted for printing the s... -
02:37 PM Bug #20761: [DOC] `RubyVM::AbstractSyntaxTree.of` examples raise because parser is prism by default
- In general the entire `RubyVM::AbstractSyntaxTree` module should be considered deprecated (and maybe even removed), given it relies on parse.y internals and that matz said that the Prism API is the official Ruby API for parsing Ruby code...
-
02:30 PM Bug #20761: [DOC] `RubyVM::AbstractSyntaxTree.of` examples raise because parser is prism by default
- @Earlopain Is there a reason you need this and cannot just use e.g. `Prism.parse("proc {1 + 2}")`?
A cleaner and portable way to achieve this functionality from a Proc/Method would be if there is a way to retrieve their precise source l... -
02:45 PM Revision b873787a (git): Update recommendations regarding parsing Ruby code now that Prism is stable
-
02:45 PM Feature #14844 (Rejected): Future of RubyVM::AST?
- These days, I believe there is no value to make `RubyVM::AbstractSyntaxTree` stable.
The official Ruby API to parse Ruby code is the Prism API (regardless of which parser is used internally), as matz said. -
02:10 PM Revision 94ad2c3f (git): Reduce creating `rb_parser_string_t` repeatedly for literals.
- Since #11698, `parser_str_new` makes `rb_parser_string_t` and `VALUE`
but discards the former, and then `STR_NEW3` makes the same thing
again. -
02:10 PM Revision 710d916c (git): Add wrapper macros of `rb_parser_str_buf_cat`
-
01:58 PM Revision 098649bc (git): [ruby/rdoc] Add home page link to output message
- (https://github.com/ruby/rdoc/pull/1165)
The link is clickable in the terminal and opens the home page in the browser
https://github.com/ruby/rdoc/commit/b7d580afab -
10:34 AM Revision 7f83bd37 (git): Reduce `is_ascii_string` function dependency for parser
- Changed to use `rb_parser_is_ascii_string` function instead of `is_ascii_string` function
-
09:39 AM Revision c1ee5ea2 (git): Avoid to unintentional Bundler definition by Bundler::Definition.no_lock
-
09:39 AM Revision ff3f6155 (git): Only warn fiddle as optional dependency
-
09:20 AM Revision eff16d93 (git): Implement OP_ASGN1 NODE locations
-
08:03 AM Revision a70adce1 (git): Only `warn` about bundled gems when require succeeds
-
06:15 AM Bug #20762 (Closed): `make test-basic` with -DRGENGC_FORCE_MAJOR_GC is always failure
- https://github.com/ruby/ruby/actions/runs/11063957302/job/30741993035#step:8:1816
----
```
/github/workspace/src/basictest/test.rb:2357: [BUG] cannot create a new page after major GC
ruby 3.4.0dev (2024-09-27T03:22:52Z pull/112... -
05:39 AM Revision a896c4cc (git): RGENGC_FORCE_MAJOR_GC is disabled same as current HEAD
-
05:39 AM Revision b63f3c9d (git): Use user.login instead of actor
-
05:39 AM Revision e58c7a93 (git): Applied https://github.com/ruby/ruby/pull/11574
-
05:39 AM Revision 52bb90f9 (git): sequential execution of some CI tasks
- reduced parallelism from some 50-ish to 10-ish so that other jobs
can run. -
05:30 AM Bug #20560 (Assigned): make install - skipped bundled gems - minor issue
-
04:37 AM Misc #16267 (Closed): MinGW CI - add to Actions ?
- https://github.com/ruby/ruby/commits/master/.github/workflows/mingw.yml is available today.
-
04:31 AM Revision d7e5133d (git): [ruby/benchmark] Add example for Benchmark.realtime
- https://github.com/ruby/benchmark/commit/0f278be6c1
-
04:31 AM Revision 3209bb95 (git): [ruby/benchmark] Specify unit of time for Benchmark.realtime
- https://github.com/ruby/benchmark/commit/388236685c
-
04:14 AM Revision dc8fa59f (git): Skip non-existent directories in PATH
-
12:58 AM Revision 0c25eb4f (git): s/interation/iteration/
-
12:58 AM Revision a50a7c70 (git): s/erorr/error/