Activity
From 07/23/2022 to 07/29/2022
07/29/2022
-
11:53 PM Feature #18949: Deprecate and remove replicate and dummy encodings
- noahgibbs (Noah Gibbs) wrote in #note-2:
> I've been working on YJIT string handling. At this point our string handling is so simple that I don't think this would affect us either way. For encodings, we mostly call CRuby functions that ... -
08:17 PM Feature #18949: Deprecate and remove replicate and dummy encodings
- I've been working on YJIT string handling. At this point our string handling is so simple that I don't think this would affect us either way. For encodings, we mostly call CRuby functions that handle them. So short-term, I don't think th...
-
05:48 PM Feature #18949: Deprecate and remove replicate and dummy encodings
- Based on my recent work on `String#<<` performance, I concur that encoding management often takes longer than the actual string operation, and that `get_actual_encoding()` is a very big offender.
I'm also curious what was the intended... -
05:40 PM Feature #18949 (Closed): Deprecate and remove replicate and dummy encodings
- Ruby has a lot of accidental complexity.
Sometimes it becomes clear some features bring a lot of complexity and yet provide little value or are used very rarely.
Also most Ruby users do not even know about these features.
Replicate an... -
11:32 PM Revision 0e85586e (git): Add --enable-yjit=dev_nodebug configure option
-
11:32 PM Revision fbd24793 (git): Add --enable-yjit=stats configure option
-
11:06 PM Bug #18946: Time#to_date returns incorrect date
- `Time#to_datetime` does not operate the same way, which seems like an undesirable inconsistency:
```ruby
Time.local(1499, 12, 27).to_datetime
=> #<DateTime: 1499-12-27T00:00:00-07:52 ((2268928j,28378s,0n),-28378s,2299161j)>
Time.... -
08:26 AM Bug #18946: Time#to_date returns incorrect date
- > Time seems to use a proleptic Gregorian calendar (the Gregorian calendar extended to before the Gregorian reform, see https://en.wikipedia.org/wiki/Proleptic_Gregorian_calendar) while Date seems to be using the Julian calendar before t...
-
07:03 AM Bug #18946: Time#to_date returns incorrect date
- This may be due to the Gregorian calendar reform (see https://en.wikipedia.org/wiki/Gregorian_calendar#Gregorian_reform, which says: "Julian Thursday, 4 October 1582, being followed by Gregorian Friday, 15 October").
Time seems to use... -
06:29 AM Bug #18946 (Closed): Time#to_date returns incorrect date
- Time#to_date returns incorrect date.
Actual Behavior:
```
Time.local(1499, 12, 27).to_date
=> #<Date: 1499-12-18 ((2268919j,0s,0n),+0s,2299161j)>
```
Expected Behavior:
```
Time.local(1499, 12, 27).to_date
=> #<Date: 1499-12... -
07:51 PM Revision 53175643 (git): [ruby/date] [DOC] Enhanced RDoc (https://github.com/ruby/date/pull/66)
- Treats:
#===
#to_s
#inspect
#strftme
#asctime
#iso3601
#rfc3339
#rfc2822
#httpdate
#jisx0301
https://github.com/ruby/date/commit/aed66fedf6 - 07:24 PM Revision 2346f3be (git): * 2022-07-30 [ci skip]
-
07:24 PM Revision 030050cd (git): [rubygems/rubygems] Make `--standalone` play nice with `--local`
- I'm not sure if using relative paths in the generated script is best for
this case, since it makes the script not movable, but that can be
improved later.
https://github.com/rubygems/rubygems/commit/7f5bdbb842 -
07:24 PM Revision b515fdcc (git): [rubygems/rubygems] No need to set anything at all unless standalone is given
- https://github.com/rubygems/rubygems/commit/d695c8da3e
-
06:14 PM Bug #18945: node_id is not initialized but it is used leading to UB
- I hope I did everything correctly: https://github.com/ruby/ruby/pull/6202
Sidenote: It's bit shame one has to read and understand this https://docs.github.com/en/site-policy/github-terms/github-terms-of-service fairly long document be... -
02:34 PM Bug #18945: node_id is not initialized but it is used leading to UB
- Good catch! Your first patch looks great to me. Can you send a PR to https://github.com/ruby/ruby/? Thank you!
-
05:58 PM Feature #18930: Officially deprecate class variables
- > the last time I tried something like that it was rejected: #14541.
#14541 proposed to change their semantic, which is a hard proposition for backward compatibility. What I'm alluding to would be to introduce another syntax for true... -
05:54 PM Feature #18930: Officially deprecate class variables
- @shan Agreed.
If we are not yet ready to deprecate them, could we at least discourage them in official docs?
@byroot:
> Yes that's what I say in my comment, and I see how some users may find this unsatisfactory.
I think it is a... -
05:48 PM Misc #18836: DevMeeting-2022-07-21
- Posting here since there is no ticket for the next meeting yet (@mame Could you copy this when creating the next dev meeting ticket?).
* [Feature #18949] Deprecate and remove replicate and dummy encodings (eregon)
* What do you thi... -
03:28 PM Bug #18947: Unexpected Errno::ENAMETOOLONG on Windows
- austin (Austin Ziegler) wrote in #note-1:
> If Ruby does not have an application manifest (I don’t know whether it does or not)
As I understand it was added here — [[Win32] long path name support [Bug #12551]](https://github.com/ruby... -
01:50 PM Bug #18947: Unexpected Errno::ENAMETOOLONG on Windows
- inversion (Yura Babak) wrote:
> Pathname and FileUtils work fine for me until there is a folder with a **very long path** (>260 chars).
> ...
It’s been a long time since I’ve done anything in Windows, but the article you posted indica... -
07:08 AM Bug #18947 (Open): Unexpected Errno::ENAMETOOLONG on Windows
- On Windows 10, I am working on a script to copy a complex folder structure.
Pathname and FileUtils work fine for me until there is a folder with a **very long path** (>260 chars).
Normally you cannot access such a folder with Ruby.... -
03:15 PM Feature #16987 (Closed): Enumerator::Lazy vs Array methods
-
03:15 PM Bug #18760 (Closed): Ractors vs "skynet" microbenchmark
-
03:14 PM Misc #18404 (Closed): 3.1 documentation problems tracking ticket
-
03:09 PM Feature #14423 (Closed): Enumerator from single object
-
03:09 PM Misc #17390 (Closed): Class and method-level docs for Ractor
-
03:08 PM Misc #17399 (Closed): Are endless methods experimental?
-
03:08 PM Misc #17422 (Closed): 3.0 documentation problems tracking ticket
-
02:49 PM Feature #18948: Add `with_private_method` option to `private_constant`
- okuramasafumi (Masafumi OKURA) wrote in #note-2:
> In a real world code I'm facing, `M1` contains lots of other methods so including it in `InstanceMethods` causes confusion.
You should be able to work around this by making sure the ... -
02:41 PM Feature #18948: Add `with_private_method` option to `private_constant`
- In a real world code I'm facing, `M1` contains lots of other methods so including it in `InstanceMethods` causes confusion.
I pushed my code on GitHub.
https://github.com/okuramasafumi/alba/blob/jsonapi/lib/alba/resource.rb#L299-L301... -
11:26 AM Feature #18948: Add `with_private_method` option to `private_constant`
- How about calling `include M1` in `M2::InstanceMethods`?
```
module M1
CONST = 'CONST'.freeze
private_constant :CONST
end
module M2
def self.included(base)
base.include InstanceMethods
end
module InstanceMet... -
09:41 AM Feature #18948 (Closed): Add `with_private_method` option to `private_constant`
- ## Problem
I have the following code:
```ruby
module M1
CONST = 'CONST'.freeze
end
module M2
def self.included(base)
base.include M1
base.include InstanceMethods
end
module InstanceMethods
def cons... -
02:40 PM Revision f78e46d4 (git): [ruby/rdoc] Add block quotes (https://github.com/ruby/rdoc/pull/907)
- Also adjusts which blocks may be nested.
https://github.com/ruby/rdoc/commit/dde1860441 -
01:54 PM Bug #18743: Enumerator#next / peek re-use each others stacktraces
- This issue is part of Ruby for a long time now:
https://github.com/ruby/ruby/commit/3a855da47b867e24428582b0a20aa1ea7e4dc2af
Proposed fix here:
https://github.com/ruby/ruby/pull/6201 -
10:10 AM Revision 62849b33 (git): Keep gitignore for libyaml source with psych
-
10:10 AM Revision 4e886d2a (git): Update parser-text.rb with https://github.com/ruby/racc/commit/4ecc13c9cbd4663268c34b0a5c99cf5307de7c60
-
10:10 AM Revision b2cc74a5 (git): [flori/json] test parsing of unicode, mixing literal characters with escaped
- https://github.com/flori/json/commit/82fe866da2
-
10:10 AM Revision 66b52f04 (git): [flori/json] Stop including the parser source __LINE__ in exceptions
- It makes testing for JSON errors very tedious. You either have
to use a Regexp or to regularly update all your assertions
when JSON is upgraded.
https://github.com/flori/json/commit/de9eb1d28e - 10:10 AM Revision 4bf97a8e (git): fix typo in Time#xmlschema documentation
-
10:10 AM Revision 419ad1e1 (git): [ruby/optparse] Also accept '-' as an optional argument (https://github.com/ruby/optparse/pull/35)
- https://github.com/ruby/optparse/commit/f2b8318631
-
10:10 AM Revision 37254541 (git): Merge ruby/fileutils from https://github.com/ruby/fileutils/commit/332025bc0299254f97a06d64e580f60fea4e7125
- 10:06 AM Revision d1e726cc (git): [rubygems/rubygems] Fix dead links to deprecated bundle-package(1) with bundler-cache(1)
- Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
https://github.com/rubygems/rubygems/commit/9c2e80a10f -
08:29 AM Feature #18685: Enumerator.product: Cartesian product of enumerables
- https://github.com/ruby/ruby/pull/6197
- 07:31 AM Revision def1d44a (git): [rubygems/rubygems] Add package/pack aliases to man pages for cache
- Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
https://github.com/rubygems/rubygems/commit/1685e3a9dc -
06:46 AM Revision bfd09b11 (git): Merge rubygems master from https://github.com/rubygems/rubygems/commit/446cc57a7ccdf1924deb291be9571219e7ba8523
-
12:21 AM Revision f29f1d22 (git): [ruby/rdoc] Fix formatting blockquote in verbatim
- Reported at https://github.com/ruby/rdoc/pull/907#discussion_r932505816
https://github.com/ruby/rdoc/commit/86384ac7f9
07/28/2022
-
11:26 PM Feature #18930: Officially deprecate class variables
- In the Ruby communities on IRC and Slack we frequently have to convince new Rubyists to just treat class variables as deprecated rather than wasting time learning all about them to find they'll never use them or get them through a code r...
-
12:07 PM Feature #18930: Officially deprecate class variables
- > If you don't want that to be public API it could be :nodoc: or made private + using send.
Yes that's what I say in my comment, and I see how some users may find this unsatisfactory. -
09:57 AM Feature #18930: Officially deprecate class variables
- For such a case it seems fine to use instance variables on the class and expose e.g. `SomeThingNeverInherited#some_config?`.
If you don't want that to be public API it could be `:nodoc:` or made private + using `send`.
```ruby
class... -
07:21 AM Feature #18930: Officially deprecate class variables
- Even though I don't remember adding any new class variable in the last half decade, I'm not sure we can deprecate them, as IMO deprecations should be actionable, and some of these may not be.
I think the main use case for class variab... -
11:12 PM Revision 0d68286b (git): Revert "Try reproducing the MinGW hang on time command (#6168)"
- This reverts commit bee5089d6789401f265f87b2f23f1bd7ec63cec8.
Looking at https://github.com/ruby/ruby/runs/7564065637?check_suite_focus=true,
we concluded that the ruby process for test-all is stuck before exit
when this issue reproduce... -
10:52 PM Bug #18945 (Closed): node_id is not initialized but it is used leading to UB
- I am trying to compile ruby in a reproducible way, but libruby always has a
different hash. After two days of digging I've reached the conclusion that
node_id is used when not initialized, leading to an undefined behaviour. In my
case... -
09:37 PM Revision c348f5a9 (git): [ruby/date] [DOC] Enhanced RDoc for <=> (https://github.com/ruby/date/pull/65)
- https://github.com/ruby/date/commit/0cdbaa92e9
-
04:06 PM Revision c56e957d (git): [ruby/rdoc] Link from RDoc::Markup to RDoc::MarkupReference (https://github.com/ruby/rdoc/pull/906)
- Recently new RDoc::MarkupReference replaces Markup Reference in RDoc::Markup (which was always the goal).
https://github.com/ruby/rdoc/commit/825be7eaf4 - 03:38 PM Revision 68655c62 (git): * 2022-07-29 [ci skip]
-
03:38 PM Revision ab08a43e (git): YJIT: Teach getblockparamproxy to handle the no-block case without exiting (#6191)
- Teach getblockparamproxy to handle the no-block case without exiting
Co-authored-by: John Hawthorn <john@hawthorn.email>
Co-authored-by: John Hawthorn <john@hawthorn.email> -
02:50 PM Revision 18b1e5e6 (git): [ruby/rdoc] [DOC] Add some links in intro; delimit rendered HTML output. (https://github.com/ruby/rdoc/pull/904)
- https://github.com/ruby/rdoc/commit/c02645364f
-
02:46 PM Revision 90cf767d (git): Fix format-pedantic warnings
-
02:46 PM Revision 94c3d528 (git): Fix conversion of `rb_ractor_id()`
-
02:46 PM Revision c38ad2ae (git): Fix format specifier for `rb_ractor_id()`
-
02:41 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
- Without any additional patches by Nobu here are the known limitations:
- Does not work with streaming code from STDIN (i.e. `echo 'def bad' | ruby` )
- Does not work when executing a file directly (i.e. `ruby bad.rb`)
- Does not wor... -
06:24 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
- Can we merge `syntax_suggest` into ruby/ruby now? Is there any blocker?
-
02:02 PM Revision 229cf263 (git): Lock the VM for rb_gc_writebarrier_unprotect
- When using Ractors, rb_gc_writebarrier_unprotect requries a VM lock
since it modifies the bitmaps. -
02:02 PM Revision 1c166452 (git): Make array slices views rather than copies
- Before this commit, if the slice fits in VWA, it would make a copy
rather than a view. This is slower as it requires a memcpy of the
contents. -
02:02 PM Revision 2375afb8 (git): Refactor gc_ref_update_array
-
01:03 PM Feature #18910: Improve maintainability of LLDB helpers
- ianks (Ian Ker-Seymer) wrote in #note-1:
> On a related note, I’ve often found myself wanting access to these helpers when developing native extensions. I’ve copy-pasta’d them in the past, but I wonder if Ruby could support including th... -
12:01 PM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
- @hsbt Thanks for the logs. Some symbols are
indeed not found due to link errors. For example,
`rb_complex_real()` is provided but not found.
The linker error contradicts itself:
```
have_func: checking for rb_complex_real() in r... -
09:43 AM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
- @katei Thanks! I will test your patch when it's complete.
FYI: Xcode 14 beta 3 with macOS 13.0 public beta is still same results.
-
09:04 AM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
- I've made a patch to address the linking failure issue by replacing `-undefined dynamic_lookup` with `-bundle_loader`.
https://github.com/ruby/ruby/pull/6193
The patch has been tested with Xcode 14 beta2 toolchain on macOS 12.4 Monte... -
08:32 AM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
- @alanwu full log is here https://gist.github.com/hsbt/293250f86a2731b4f76ceea4d903bd64
-
11:57 AM Bug #18933: Dir.tmpdir implemented in non-Ractor-safe manner
- Attached is a possible solution for this
-
10:45 AM Revision 3eade599 (git): Skip randomly failing tests with FreeBSD 12
-
10:25 AM Revision d448ecc7 (git): Fix the missing brackets
-
10:14 AM Revision 202ce7de (git): test_io_console.rbL399 is also randomly failing same as bfc697f1e26f1406c45ec7309ca0d4c0b5ecedd6
-
10:10 AM Revision 98e01c99 (git): Also skip the failing test similar with a343952d195a324dd4563318d8f88b167316ce5d
-
07:31 AM Feature #18774: Add Queue#pop(timeout:)
- I created https://bugs.ruby-lang.org/issues/18944
-
07:31 AM Feature #18944 (Closed): Add SizedQueue#push(timeout:)
- While implementing [Feature #18774] It appeared to me that adding this timeout was quite obvious.
And @matz explicitly asked for a separate ticket to be opened for that feature if someone wanted it: https://github.com/ruby/dev-meeting... -
07:05 AM Revision 2b937476 (git): `RUBY_DEBUG_LOG2` should filter against the given `file`
-
04:29 AM Revision bee5089d (git): Try reproducing the MinGW hang on time command (#6168)
- to see if it really exits correctly.
GitHub Support asked me to confirm the command is exiting correctly. -
12:22 AM Misc #18942 (Closed): String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
-
12:15 AM Feature #18943 (Closed): New constant caching instruction: opt_getconstant_path
- I'd like to propose the change to the bytecode for constant caching.
I've submitted this improvement via pull request at https://github.com/ruby/ruby/pull/6187 and also attached a patch to this issue.
Previously YARV bytecode impleme... -
12:06 AM Revision 5d5c1d0f (git): Suppress use-after-free warning by gcc-12
-
12:02 AM Revision 431fdc92 (git): [DOC] Cross references for `ARGF`
07/27/2022
-
10:31 PM Bug #18920 (Closed): Documentation on ARGF.inplace_mode and ARGF.inplace_mode= is wrong
- Applied in changeset commit:git|4ad69899b7db1e384665dec090d5cdc0c3b3c9b2.
----------
Fix documentation for ARGF.inplace_mode{,=}
The value affects the name of the backup file created, not the
name of the file modified (as the file is m... -
10:29 PM Revision 4ad69899 (git): Fix documentation for ARGF.inplace_mode{,=}
- The value affects the name of the backup file created, not the
name of the file modified (as the file is modified in place).
Fixes [Bug #18920] -
09:23 PM Bug #18939 (Third Party's Issue): pod install error
-
06:42 PM Misc #18942: String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
- austin (Austin Ziegler) wrote in #note-1:
> scub8040 (Saverio M.) wrote:
> ...
Uh, ok! Thanks.
EDIT: I've tried to close the issue, but couldn't. -
06:25 PM Misc #18942: String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
- scub8040 (Saverio M.) wrote:
> There are other cases though, which I think are either incorrectly handled, or at least, they should documented.
> ...
This is neither a behaviour bug nor a documentation bug.
From `ri String#split`:
... -
06:11 PM Misc #18942 (Closed): String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
- Hello!
The string splitting needs to deal with some edge cases when it comes to empty strings/fields, for example, an emptry string always returns an empty array.
There are other cases though, which I think are either incorrectly h... -
05:41 PM Feature #18774: Add Queue#pop(timeout:)
- @mame thanks for bringing this out, I definitely missed it. I'll open another ticket tomorrow then.
-
05:40 PM Feature #18774: Add Queue#pop(timeout:)
- According to the dev meeting log, @matz said "Create another ticket for SizedQueue#push if someone wants it".
https://github.com/ruby/dev-meeting-log/blob/master/DevMeeting-2022-05-19.md#feature-18774-add-queuepoptimeout-eregon -
10:29 AM Feature #18774: Add Queue#pop(timeout:)
- > I think it'd be fine to add, and I don't think that needs to be discussed in a dev meeting again since it's so similar.
Agreed. Also `SizedQueue#push` already has `non_block=false` like `Queue#pop`, so it makes perfect sense. I'll i... -
10:23 AM Feature #18774: Add Queue#pop(timeout:)
- byroot (Jean Boussier) wrote in #note-12:
> So I started to implement `Queue#pop(timeout:)` and `SizedQueue#pop(timeout:)` https://github.com/ruby/ruby/pull/6185
Thanks!
> ...
I think it'd be fine to add, and I don't think that ne... -
09:06 AM Feature #18774: Add Queue#pop(timeout:)
- So I started to implement `Queue#pop(timeout:)` and `SizedQueue#pop(timeout:)` https://github.com/ruby/ruby/pull/6185
As pointed by @ioquatix, I believe that `SizedQueue#push` should have a timeout as well. -
04:55 PM Feature #18885: End of boot advisory API for RubyVM
- Another optimization that could be invoked from this method is `malloc_trim`.
- 03:24 PM Revision 708d06f3 (git): * 2022-07-28 [ci skip]
-
03:18 PM Revision 6582df26 (git): Update to ruby/spec@cbfaf51
-
03:18 PM Revision 44f42413 (git): Update to ruby/mspec@290e36a
-
02:51 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
- I've rebased to change the name of the project from `DeadEnd` to `SyntaxSuggest`. All checks are passing except for "Code scanning results / CodeQL" which doesn't appear to be related to my code change.
I've got no other pending chan... -
01:55 PM Revision 9b9704f9 (git): merge revision(s) 456e1d1eaa9bb11adaed1acde488d7da3c88704b:
- Try the tag without "v" prefix to checkout upstream repositories
---
gems/bundled_gems | 4 ++--
tool/fetch-bundled_gems.rb | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-) -
01:16 PM Revision 70a9328b (git): [ci-skip]Document how to run an individual bootstrap test
-
12:05 PM Revision 64c8291c (git): [ruby/pathname] Fix `autoload` of `FileUtils`
- Should not be `Pathname::FileUtils`.
https://github.com/ruby/pathname/commit/d1eb366e73 -
09:42 AM Revision f42230ff (git): Adjust styles [ci skip]
-
09:25 AM Revision 8b9d4b2c (git): Append semicolons [ci skip]
-
08:45 AM Revision 852ac26e (git): Make indents and newlines consistent [ci skip]
-
08:36 AM Revision 464f73a5 (git): Do not load library files from repository only for test
- What we want to test should be the bundled and to be installed files,
but not the upstream. -
06:11 AM Bug #18941: Endless loop with a memory leak in FileUtils::mkpath
- Thank you for your report. The behavior was indeed changed between 3.0 and 3.1: https://github.com/ruby/fileutils/pull/60
-
05:49 AM Bug #18941 (Closed): Endless loop with a memory leak in FileUtils::mkpath
- On Windows 10 with Ruby `3.1.2p20 (2022-04-12 revision 4491bb740a) [x64-mingw-ucrt]`,
an attempt to create a path on the offline external drive stuck with a memory leak:
``` ruby
require 'fileutils'
FileUtils.mkpath 'W:/new_dir'
```... -
05:17 AM Revision 8154b176 (git): Manually sync with https://github.com/ruby/date/pull/64
07/26/2022
-
10:14 PM Bug #18810: Make `Kernel#p` interruptable.
- > My concern is that inserting p(...) changes a program behavior unintentionally (except that the p writes something to stdout, of course).
There are so many ways it can do this. If the fiber scheduler is active it is a totally differ... -
08:34 AM Bug #18810: Make `Kernel#p` interruptable.
- My concern is that inserting `p(...)` changes a program behavior unintentionally (except that the p writes something to stdout, of course).
When debugging, we often insert `p(...)` and run the program to reproduce the bug being debugg... - 08:39 PM Revision c3d9849d (git): [rubygems/rubygems] Add ignore_funding_requests config flag
- https://github.com/rubygems/rubygems/commit/ab302f72c9
-
08:06 PM Revision 64f9f7d8 (git): [ruby/rdoc] [DOC] Clarifications for directives (https://github.com/ruby/rdoc/pull/903)
- - Former section "Directives in Trailing Comments" is reworked. The important thing about a directive is what it does, not whether it's trailing or stand-alone. Therefore I've worked the directives in the former section into the appropr...
-
07:56 PM Revision b4ae144e (git): [rubygems/rubygems] Don't use Pathname for creating extension dir
- Not sure why, but I run into the following flaky test failure
````
(...)
Invoking `/Users/deivid/.asdf/installs/ruby/3.1.2/bin/ruby -I/Users/deivid/Code/rubygems/rubygems/bundler/spec -r/Users/deivid/Code/rubygems/rubygems/bundler/spec... -
06:33 PM Bug #18940 (Closed): Ruby Ractor fails with IOError when handling higher concurrency
- Reproduction server:
```
require 'socket'
# Set based on CPU count
CONCURRENCY = 8
server = TCPServer.new(8080)
workers = CONCURRENCY.times.map do
Ractor.new do
loop do
# receive TCPSocket
session = Ract... -
06:21 PM Bug #18816: Ractor segfaulting MacOS 12.4 (aarch64 / M1 processor)
- I don't get a ruby segfault anymore. It works fine when using no concurrency:
```
hey -n 20000 http://localhost:8080/
Summar... -
04:49 PM Bug #18816: Ractor segfaulting MacOS 12.4 (aarch64 / M1 processor)
- Can we backport this to 3.0 and 3.1?
-
06:08 PM Revision 6a698075 (git): [rubygems/rubygems] Completely drop base parameter from index
- This parameter was coupling the concept of lockfile with the index. I
don't think it's necessary.
Also I believe it's causing some flaky test failures, which might leak
into realworld issues. They are like this:
````
Invoking `/opt/hos... -
04:40 PM Feature #18926: Ractor should support mutexes and treat the block as critical section across ractors
- > In the example, allowing to mutate @map in a Ractor is fundamentally unsafe...
The proposal is for mutex blocks to synchronize across ractors, thereby making it safe. This would IMO make for a better default than the current one, wh... - 04:40 PM Revision 3b1ed03d (git): * expand tabs. [ci skip]
- Tabs were expanded because the file did not have any tab indentation in unedited lines.
Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook. -
04:39 PM Revision 36d0c71a (git): Refactored poisoning and unpoisoning freelist to simpler API
-
04:31 PM Revision 33f9e8f4 (git): Add doc/rdoc directory to .document
- Adding the doc/rdoc directory to .document will allow files in that
directory to be included in the documentation. - 04:04 PM Revision 457170e5 (git): * 2022-07-27 [ci skip]
-
04:04 PM Revision 163e3f07 (git): [rubygems/rubygems] Use main as default branch for Bundler specs
- https://github.com/rubygems/rubygems/commit/482077d185
-
02:27 PM Feature #18784: `FileUtils.rm_f` and `FileUtils.rm_rf` should not mask exceptions
- Thanks @mame!
-
12:46 PM Feature #18784: `FileUtils.rm_f` and `FileUtils.rm_rf` should not mask exceptions
- > In my opinion, the current behavior is hardly useful for anyone
Personally, I agree. I want `FileUtils.rm_rf` to report an error if it fails to delete a file/directory passed as an argument. In the dev meeting, @knu and @naruse had ... -
01:39 PM Bug #18937: Inconsistent definitions of Complex#<=> and Numeric#<=> with others
- @mame
I have a motivation to create a "quaternion" class which is highly interoperable with other built-in numeric classes. (gem: [quaternion_c2](https://rubygems.org/gems/quaternion_c2))
I recently noticed that there was `Complex#... -
08:05 AM Bug #18937: Inconsistent definitions of Complex#<=> and Numeric#<=> with others
- > However, neither Complex#<=> nor Numeric#<=> satisfies that definition.
`Complex#<=>` is a different method from `Object#<=>`, so I don't see that as a problem in itself. Some Ruby core methods don't necessarily follow the Liskov Su... -
01:12 PM Revision 4325e902 (git): Use rb_ary_hidden_new for rb_ary_hidden_new_fill
-
01:12 PM Revision efb91ff1 (git): Rename rb_ary_tmp_new to rb_ary_hidden_new
- rb_ary_tmp_new suggests that the array is temporary in some way, but
that's not true, it just creates an array that's hidden and not on the
transient heap. This commit renames it to rb_ary_hidden_new. -
01:12 PM Revision 3f70aa65 (git): Remove ary_discard
- ary_discard should not be used as it should be handled by the GC. The
only user of ary_discard is rb_ary_product, which doesn't neeed to use
ary_discard. -
12:12 PM Revision 456e1d1e (git): Try the tag without "v" prefix to checkout upstream repositories
-
09:33 AM Revision 2d1cf658 (git): Adjust indent [ci skip]
-
09:07 AM Bug #18939: pod install error
- It's third party's issue. You may want to try this solution: https://github.com/ffi/ffi/issues/800#issuecomment-1008308614
-
09:02 AM Bug #18939 (Third Party's Issue): pod install error
- Ruby version:
ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.arm64e-darwin21]
Ruby script:
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------
Process: ... -
08:37 AM Bug #18907: rb_profile_frames output includes dummy main Thread frame
- Awesome, thank you! :)
-
01:47 AM Bug #18907: rb_profile_frames output includes dummy main Thread frame
- I talked with @ko1 about this issue. It seems to be fine, so I have merged it, thanks!
-
01:44 AM Bug #18907 (Closed): rb_profile_frames output includes dummy main Thread frame
- Applied in changeset commit:git|649bfbe00d8032fa2c0536e596a284f69926e87f.
----------
Fix `rb_profile_frames` output includes dummy main thread frame
The `rb_profile_frames` API did not skip the two dummy frames that
each thread has at ... -
08:30 AM Feature #18919: Ractor: can't share #Method objects
- Indeed, I didn't mean "to-proc", Method objects, as per the usage example, is the one I meant.
- 07:03 AM Revision 9a8f6e39 (git): Cheaply derive code range for String#b return value
- The result of String#b is a string with an ASCII_8BIT/BINARY encoding. That encoding is ASCII-compatible and has no byte sequences that are invalid for the encoding. If we know the receiver's code range, we can derive the resulting strin...
-
05:38 AM Revision 9e6d07f3 (git): Merge rubygems/bundler HEAD
- Merge from https://github.com/rubygems/rubygems/commit/2af2520b4a7ab1c6eb1fdc3d2ef4d8c062d96ad7
-
04:42 AM Revision b404a5f1 (git): 8fa66467de is broken with rubygems/rubygems and flori/json.
- Revert "Fix sync_default_gems.rb to use absolute path"
This reverts commit 8fa66467de82f787ead9dd901ad06694c79d88dc. -
01:43 AM Revision 649bfbe0 (git): Fix `rb_profile_frames` output includes dummy main thread frame
- The `rb_profile_frames` API did not skip the two dummy frames that
each thread has at its beginning. This was unlike `backtrace_each` and
`rb_ec_parcial_backtrace_object`, which do skip them.
This does not seem to be a problem for non-m...
07/25/2022
-
09:31 PM Revision cc29b43c (git): [ruby/rdoc] Move section Directives into section Blocks (https://github.com/ruby/rdoc/pull/901)
- https://github.com/ruby/rdoc/commit/e48e07ef53
- 08:29 PM Revision d7868c79 (git): * append newline at EOF. [ci skip]
-
08:29 PM Revision ba098fa1 (git): Sync RDoc
-
08:29 PM Revision 8fa66467 (git): Fix sync_default_gems.rb to use absolute path
-
07:58 PM Revision 43c11f6c (git): For rdoc, copy doc/rdoc to doc/ (#6181)
- 07:56 PM Revision 382cde96 (git): [rubygems/rubygems] Bump rb-sys
- Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.20 to 0.9.26.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.20...v0.9.26)
---
updated-depende... -
07:08 PM Revision 63330ae4 (git): Change ROBJECT_TRANSIENT_FLAG to use FL_USER2
- 04:53 PM Revision 17534f3e (git): * 2022-07-26 [ci skip]
- 04:53 PM Revision fab5a0e6 (git): [rubygems/rubygems] Bump rb-sys in /test/rubygems/test_gem_ext_cargo_builder/custom_name
- Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.20 to 0.9.26.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.20...v0.9.26)
---
updated-depende... -
02:22 PM Feature #12607: Ruby needs an atomic integer
- Yes, I think a few low-level concurrency primitives should move from Concurrent Ruby to core. As we add more concurrency to Ruby, and add JIT compilers, ideally the VM should understand these primitives, rather than being opaque extensio...
-
01:14 PM Feature #12607: Ruby needs an atomic integer
- It'd be good to revisit this (e.g. see https://twitter.com/_byroot/status/1550580128723476480).
Ractor has little need for this. But with Thread there is a clear need for this.
Also the STM work was not merged, so that's not a replac... - 12:37 PM Revision 979368b4 (git): [rubygems/rubygems] Bundler: add deprecation notice of viz to man
- Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
https://github.com/rubygems/rubygems/commit/0e1cbfa598 -
12:18 PM Revision 31a5586d (git): rb_str_buf_append: add a fast path for ENC_CODERANGE_VALID
- If the RHS has valid encoding, and both strings have the same
encoding, we can use the fast path.
However we need to update the LHS coderange.
```
compare-ruby: ruby 3.2.0dev (2022-07-21T14:46:32Z master cdbb9b8555) [arm64-darwin21]
bu... - 11:39 AM Revision 9733f4d0 (git): merge revision(s) edf01d4e82d8e44ee30ec41fbcb7f802bc8b8c5d: [Backport #18772]
- Treat NULL fake string as an empty string
And the NULL string must be of size 0.
---
string.c | 5 +++++
1 file changed, 5 insertions(+) -
09:50 AM Revision f61dd38e (git): Wait the test thread to sleep
- Revert "Synchronize the test thread sleep"
This reverts commit 307835fe314fea6e946a8c9b25bb3912680ed7d1. -
07:58 AM Bug #18938 (Closed): Backport cf7d07570f50ef9c16007019afcff11ba6500d70
- Please backport https://github.com/ruby/ruby/commit/cf7d07570f50ef9c16007019afcff11ba6500d70 which fixes a bug in `ObjectSpace.dump` for Ruby 3.0 and Ruby 3.1
Ref: https://github.com/ruby/ruby/pull/6166
cc @nobu -
03:01 AM Revision 307835fe (git): Synchronize the test thread sleep
-
12:53 AM Feature #18668: Merge `io-nonblock` gems into core
- ianks (Ian Ker-Seymer) wrote in #note-21:
> IMO, we really do need to support this use case. Even if it were just fir testing purposes, it would *still* be worthwhile if it makes developing non-blocking gems easier.
What precisely is... -
12:18 AM Revision b30b727c (git): Fix format specifier
- `uintptr_t` is not always `unsigned long`, but can be casted to void
pointer safely.
07/24/2022
- 11:50 PM Revision 1c4aaa3e (git): * 2022-07-25 [ci skip]
-
11:50 PM Revision 91c05b34 (git): Bundled gems test needs `prepare-gems`
- `prepare-gems` downloads and extracts the bundled gems, and these gems
are built by `build-exts` now. -
11:50 PM Revision b291c972 (git): Use built bundled gems in test-bundled-gems
-
01:32 PM Revision 6af72120 (git): Make extensions under `Gem.extension_api_version` directory
-
07:36 AM Revision e0a7e5e1 (git): Kill bundled gem tests when interrupted
-
03:49 AM Bug #18937: Inconsistent definitions of Complex#<=> and Numeric#<=> with others
- I fix the last code as follows:
```ruby
class Complex
def <=>(other)
return (self == other ? 0 : nil) if self.imag != 0
if other.kind_of?(Complex)
if other.imag == 0
return self.real <=> other.real
... -
03:06 AM Bug #18937 (Closed): Inconsistent definitions of Complex#<=> and Numeric#<=> with others
- Object#<=> says "Returns 0 if `obj` and `other` are the same object or `obj == other`" .
https://ruby-doc.org/core-3.1.2/Object.html#method-i-3C-3D-3E
However, neither Complex#<=> nor Numeric#<=> satisfies that definition.
```ruby...
07/23/2022
- 11:57 PM Revision 114f85ec (git): * 2022-07-24 [ci skip]
-
11:57 PM Revision 1cd487d7 (git): [DOC] IO#eof
- Use IO#eof? instead of I#eof?
-
06:07 PM Bug #18936 (Closed): Backport 261753249996d46e00c2549fff2527816bf387db
- Please backport commit [261753249996d46e00c2549fff2527816bf387db](https://github.com/ruby/ruby/commit/261753249996d46e00c2549fff2527816bf387db), which fixes a leak of mark stack chunks during shutdown.
It's causing [false positives to... -
12:42 PM Revision 721d154e (git): Remove duplicate code for internal arrays
- Internal arrays are now created hidden from the start.
-
11:40 AM Feature #18926: Ractor should support mutexes and treat the block as critical section across ractors
- In the example, allowing to mutate `@map` in a Ractor is fundamentally unsafe, because there could be another reference to `@map` which is accessed concurrently without the Mutex.
In fact there are two in that example, `@map.key?` and `... -
02:34 AM Feature #18926: Ractor should support mutexes and treat the block as critical section across ractors
- With all due respect for Ractor’s incredible technical achievements so far, I unfortunately think that the “honeymoon phase” for Ractor may be complete. The community was incredibly bullish about its potential and the problems it could s...
-
02:19 AM Feature #18668: Merge `io-nonblock` gems into core
- IMO, we really do need to support this use case. Even if it were just fir testing purposes, it would *still* be worthwhile if it makes developing non-blocking gems easier.
Ruby should move towards better async support, not away from i... -
02:08 AM Feature #18910: Improve maintainability of LLDB helpers
- On a related note, I’ve often found myself wanting access to these helpers when developing native extensions. I’ve copy-pasta’d them in the past, but I wonder if Ruby could support including them for debug builds?