Activity
From 04/27/2021 to 05/03/2021
05/03/2021
-
11:53 PM Revision 7a3dd05e (git): spec/ruby/library/net/http/http/fixtures/http_server.rb host naming for Windows
-
11:53 PM Revision 5a42ef49 (git): Fix test/net/http/test_https.rb host naming for Windows
-
09:11 PM Revision 9a6226c6 (git): Eagerly allocate instance variable tables along with object
- This allows us to allocate the right size for the object in advance,
meaning that we don't have to pay the cost of ivar table extension
later. The idea is that if an object type ever became "extended" at
some point, then it is very like... -
09:10 PM Bug #17511: Segmentation fault when compiled with -O2 or higher on ARM Android
- Just for the record, there turns out to be a Clang/LLVM bug in its `__builtin_longjmp` implementation for ARM Linux (more specifically for non-Darwin and non-Windows) for which there seems to be no reliable workaround on user's side.
... -
07:08 PM Bug #17846: Percent mode changes the output from ERB beyond what is documented
- Apologies if intentional, but it seems that whitespace between `<%` and `#` can be troublesome:
https://makandracards.com/makandra/3533-erb-templates-and-comments
-
04:31 PM Feature #11963 (Closed): Add a simple static web server to `ruby`
-
04:26 PM Feature #11963: Add a simple static web server to `ruby`
- I guess this one can be closed, I've just ran my first `ruby -run -e httpd . -p 8080` using ruby 2.7!
- 04:00 PM Revision a6ff1dc6 (git): * 2021-05-04 [ci skip]
-
03:59 PM Revision 14ee2635 (git): Workaround failures on Windows
-
03:44 PM Bug #17812 (Closed): Timeout::Error doesn't let two-argument raise() set a new message
-
02:57 PM Feature #17837: Add support for Regexp timeouts
- > I admit that this is less important than per-request timeout.
I'd like to second what Sam said on this. With what is now the most common way of deploying Ruby in production, namely a threaded web-server like Puma, there is no good w... -
01:38 PM Feature #17837: Add support for Regexp timeouts
- Eregon (Benoit Daloze) wrote in #note-5:
> Shouldn't an app have a global timeout per request anyway, and that would catch regexps and other things too?
I agree that it is much better to have. Still, I think this proposal is good-to-... -
07:57 AM Feature #17837: Add support for Regexp timeouts
- > Shouldn't an app have a global timeout per request anyway
Sort of, it gets complicated. Unicorn is easy cause it is single threaded. Killing off threads in Puma is much more fraught, in Sidekiq the old pattern of killing off was nuk... -
01:29 PM Feature #17847: `ruby -run -e httpd` displays URL
- +1
-
12:56 PM Feature #17847 (Closed): `ruby -run -e httpd` displays URL
- The current version of un.rb `httpd` shows port number only:
```
$ ruby -run -e httpd
[2021-05-03 21:55:09] INFO WEBrick 1.7.0
[2021-05-03 21:55:09] INFO ruby 3.1.0 (2021-05-03) [x86_64-linux]
[2021-05-03 21:55:09] INFO WEBrick... -
11:34 AM Feature #17795: Around `Process.fork` callbacks API
- Another use-case I found: https://github.com/rubyjs/mini_racer#fork-safety
That gem (and others of course) could provide some helpers methods based on the chosen strategy if there is a common hook.
Right now providing fork safety (if... -
12:46 AM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
- Apologies about my misleading statement about support for the OS.
It doesn't seem to be receiving security updates anymore so I had assumed it reached end of life.
Looking at the report, the crash happens after fork.
There was a Ruby cr...
05/02/2021
-
11:44 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
- The latest version of Xcode (12.5 beta) seems to support macOS 10.9 or later: https://developer.apple.com/support/xcode/
-
11:11 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
- OS X El Capitan is no longer supported by Apple.
I'm not sure about Ruby's policy for trying to support OSes that the vendor no longer supports.
In any case, I would suggest upgrading to a newer OS to deal with the crash. - 11:17 PM Revision a0296448 (git): * 2021-05-03 [ci skip]
-
11:17 PM Revision 511b2f30 (git): Get rid of misleading indentation
-
09:26 PM Feature #17845: Windows Ruby - ucrt build?
- @larskanis
Sorry, I meant to ping you immediately, but got distracted. Also, I saw your changes to ridk, but didn't see your patch file.
Anyway, I agree that there needs to be some way to distinguish between mingw and ucrt builds.... -
08:11 PM Feature #17845: Windows Ruby - ucrt build?
- > I wonder if there is a standard target triplet for MinGW + UCRT.
The compiler triplet for MINGW with UCRT is still 'x86_64-w64-mingw32'. This is defined in MSYS2 [here](https://github.com/msys2/MSYS2-packages/blob/master/filesystem... -
06:42 PM Bug #17846 (Rejected): Percent mode changes the output from ERB beyond what is documented
- ```
/ # cat repro.erb
<% # %>x
y
/ # erb repro.erb
y
/ # erb -P repro.erb
/ #
```
Based on documentation of -P (disabling percent mode), this change in behavior
is unexpected.
05/01/2021
-
08:06 PM Bug #17774: Quantified empty group causes regex to fail
- sawa (Tsuyoshi Sawada) wrote in #note-3:
> wanabe (_ wanabe) wrote in #note-2:
> ...
Oh I'm very sorry, I wrote it wrong.
I was aware of it, but I simply used the wrong word.
-
12:50 PM Bug #17774: Quantified empty group causes regex to fail
- wanabe (_ wanabe) wrote in #note-2:
> ... Oniguruma, a derivative of Onigmo
I believe it is the other way around.
-
11:06 AM Bug #17774: Quantified empty group causes regex to fail
- The reproduction example could be a bit shorter.
```
$ ruby -ve 'p "xxxx" =~ /(?:x(){5})*$/, "xxxx" =~ /(?:x(){4})*$/'
ruby 3.1.0dev (2021-05-01T02:04:17Z origin/master 121fa24a34) [x86_64-linux]
3
0
```
This problem has already... -
07:41 PM Feature #17845: Windows Ruby - ucrt build?
- MinGW `msvcrt` packages have a prefix of `mingw-w64-x86_64`,
MinGW ` ucrt ` packages have a prefix of `mingw-w64-ucrt-x86_64`. -
07:33 PM Feature #17845: Windows Ruby - ucrt build?
- I wonder if there is a standard target triplet for MinGW + UCRT. I came up with `x86_64-w64-mingw32-ucrt`, but when googled it hits only one page. I suppose something like `x64-mingw32-ucrt` is acceptable for `target_os` in `configure`, ...
-
06:38 PM Feature #17845 (Closed): Windows Ruby - ucrt build?
- Currently, Windows Ruby is normally compiled two ways.
The first, mswin, is compiled using Microsoft's current Visual C compiler, and links to the universal runtime (ucrt).
The second, mingw, is compiled using MinGW gcc. This link... -
03:09 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
- I wonder if the problem disappears by backporting commit:4ea96f1d4f8a50c204c4367c994cdbf12cd97b64 which modifies `fill_random_bytes_syscall` so that it calls `CCRandomGenerateBytes` instead for newer environments (probably for macOS >= 1...
-
12:54 PM Bug #17843: Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
- The stack trace shows that the crash occurred at:
```
libdispatch.dylib(_dispatch_queue_wakeup_with_qos_slow+126) [0x00007fff90ff9b06]
libcorecrypto.dylib(ccrng_CommonCrypto_generate+309) [0x00007fff9e03bddc]
libruby.3.0.dylib(ruby_f... -
08:03 AM Bug #17843 (Closed): Ruby on Rails error[BUG] Segmentation fault at 0x0000000000000110 ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-darwin15] (#42110)
- following tutorial
https://www.youtube.com/watch?v=nlKIJfv50U0
On this command
$ rails g scaffold Survey name:text laptop:binary os:text
the following error was generated with the following instruction
[BUG] Segmentation fault... -
01:01 PM Feature #17844 (Open): Support list of methods to test with respond_to?
- Not sure whether this is a good idea at all, but I guess it doesn't hurt to put it up for debate.
The preferred way to check e.g. whether an argument is acceptable is by use of `respond_to?`:
```ruby
# Don't
def notify(recipien... -
02:04 AM Bug #17606 (Closed): Make failed on i386-cygwin (miniruby.exe aborted)
- Applied in changeset commit:git|121fa24a3451b45c41ac0a661b64e9fc8600e589.
----------
Adjust struct member offset for i386 Cygwin
Fixes [Bug #17606] -
02:04 AM Revision 121fa24a (git): Adjust struct member offset for i386 Cygwin
- Fixes [Bug #17606]
-
12:13 AM Revision f64d7674 (git): Fix example for custom warn method
- Regexp has a match? method.
[ci skip]
04/30/2021
-
10:47 PM Misc #17842: Example incorrect in documentation for Hash#dig
- Thanks for the fix! I merged your pull request.
-
10:46 PM Misc #17842 (Closed): Example incorrect in documentation for Hash#dig
- Applied in changeset commit:git|a9824a3113ee5342e7ac90387de9f3b9d5ec9e0a.
----------
Correct documentation example on Hash#dig
Fixes [Misc #17842]. The current documentation suggests that:
{foo: {bar: {baz: 2}}}.dig(:foo, :bar... -
10:37 PM Misc #17842: Example incorrect in documentation for Hash#dig
- Here is a pull request that fixes the comment: https://github.com/ruby/ruby/pull/4441
-
10:30 PM Misc #17842 (Closed): Example incorrect in documentation for Hash#dig
- In the current examples for Hash#dig, we have:
```
h = {foo: {bar: {baz: 2}}}
h.dig(:foo) # => {:bar=>{:baz=>2}}
h.dig(:foo, :bar) # => {:bar=>{:baz=>2}} <-- incorrect return value
```
This should be:
```
h = {foo: {bar: {baz: ... - 10:46 PM Revision a867d552 (git): * 2021-05-01 [ci skip]
-
10:46 PM Revision a9824a31 (git): Correct documentation example on Hash#dig
- Fixes [Misc #17842]. The current documentation suggests that:
{foo: {bar: {baz: 2}}}.dig(:foo, :bar) # => {:bar=>{:baz=>2}}
when it should be:
{foo: {bar: {baz: 2}}}.dig(:foo, :bar) # => {:baz=>2} -
08:29 PM Feature #17837: Add support for Regexp timeouts
- Shouldn't an app have a global timeout per request anyway, and that would catch regexps and other things too?
Capturing the time in regexp interrupt checks is easy but sounds fairly expensive.
Could such regexps emit a warning since ... -
03:06 PM Bug #17840: `make install` overriding file permission with 644
- You are right! Thank you for your detailed explanation! I confirmed the files permissions were changed by your steps.
> As for package management, for example Gentoo Portage [removes bundled gems](https://gitweb.gentoo.org/repo/gentoo... -
02:45 PM Bug #16798: ENV.replace on Windows with a variable name not respecting case will clear it
- The backport breaks on RHEL7:
~~~
hash.c: In function 'keylist_delete':
hash.c:5661:5: error: 'for' loop initial declarations are only allowed in C99 mode
for (long i=0; i<RARRAY_LEN(keys); i++) {
^
hash.c:5661:5: note:... -
02:36 PM Bug #17823: addr2line.c: Interpret `DW_RLE_start_length`
- PR: https://github.com/ruby/ruby/pull/4439
-
02:11 PM Bug #17810: addr2line.c: Some symbol names missing in C backtrace with Clang/LLVM
- PR: https://github.com/ruby/ruby/pull/4438
The second patch is omitted from the PR, because it turns out to be not very useful. The corresponding source file name should be easily guessable from the symbol name. -
12:40 PM Bug #17606: Make failed on i386-cygwin (miniruby.exe aborted)
- PR: https://github.com/ruby/ruby/pull/4437
-
11:56 AM Revision 1f255add (git): Silence GCC 11 warnings
- ```
../strftime.c: In function 'rb_strftime_with_timespec':
../strftime.c:392:39: warning: comparison is always false due to limited range of data type [-Wtype-limits]
392 | if (vtm->wday < 0 || vtm->wday > 6)
... -
11:46 AM Revision b2c54f53 (git): [ruby/irb] Need reline >= 0.1.6
- irb 1.3.5 need reline >= 0.1.6 because irb use `Reline::IOGate.in_pasting?`.
This method defined after reline 0.1.6.
fix #228.
https://github.com/ruby/irb/commit/6b7b8fc324 -
11:22 AM Feature #17647: Print register `r11` on 32-bit ARM Linux
- PR: https://github.com/ruby/ruby/pull/4436
-
02:58 AM Revision 6ee55455 (git): Update Time documentation
04/29/2021
-
10:35 PM Misc #17828 (Closed): Deprecate use of master and slave
- We should only update the documentation and code on `etc/pty`. I totally agreed the Matz's opinion.
-
05:00 PM Misc #17828: Deprecate use of master and slave
- For reference, the Rust project decided to switch to `main` because it is the tools default and running on defaults has value.
Still, it's doing so on a relaxed timeline: https://internals.rust-lang.org/t/changing-the-default-branch-fro... -
10:22 PM Bug #16612: Enumerator::ArithmeticSequence#last with float range produces incorrect value
- I've traced this to an off-by-one in `ruby_float_step_size`. I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/4434
@Eregon Unfortunately, you can't get `#each` to work like repeated edition without breaking... -
08:04 PM Bug #17840: `make install` overriding file permission with 644
- user:jaruga That is because what you changed is the default value of `data_mode` which is overwritten by command-line options:
```
./miniruby -I../lib -I. -I.ext/common ../tool/runruby.rb --extout=.ext -- --disable-gems -r./x86_64-li... -
06:42 PM Bug #17840: `make install` overriding file permission with 644
Thanks for checking. I assumed the data_mode (0644) might cause this situation.
However after editing `rbinstall.rb` to change the data_mode from 0644 to 0755, I still saw the installed files permissions were still 644.
```
$ vi...-
06:13 PM Bug #17840: `make install` overriding file permission with 644
- Seems intentionally done at [tool/rbinstall.rb:774](https://github.com/ruby/ruby/blob/dfca24af82e7d06adcb57f625573b0e558d9e5dc/tool/rbinstall.rb#L774). Files having pattern `libexec/*` are chmodded to `prog_mode` (0755), otherwise to `da...
-
04:30 PM Bug #17840 (Closed): `make install` overriding file permission with 644
- On the current latest master `b0b5a4e86ef2740c427f9356a4173a1debf4f79c`, by the following steps, I can see the difference between files permission between installed Ruby's gems directory installed by `make install` and gems directory ins...
-
07:13 PM Revision 5a451c4b (git): lldb: Warn when attempting to dump invalid pages
-
07:02 PM Bug #17841 (Closed): The first instance of SortedSet doesn't sort when rbtree is present
- This is probably caused by the fix to #15830. Here's a pull request that should fix it: https://github.com/ruby/ruby/pull/4432, though I didn't test with rbtree. Closing and marking for backport.
-
06:32 PM Bug #17841 (Closed): The first instance of SortedSet doesn't sort when rbtree is present
- If the `rbtree` gem is present, then in ruby 2.7, the first instance of `SortedSet` will return entries in insertion order. Future instances of `SortedSet` correctly return sorted entries.
Given:
```
require 'rbtree'
require 'set... - 04:40 PM Revision dfca24af (git): * 2021-04-30 [ci skip]
-
04:36 PM Revision 19504d11 (git): test/net/smtp/test_smtp.rb: wait a moment before socket is closed
- On Solaris, Socket.tcp seems to fail with EINVAL if the server closes
the connection immediately after accpeted. I think this is a bug of
Socket.tcp, but seems difficult to fix soon.
http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-ma... -
02:58 PM Bug #17794: addr2line.c can free(3) an invalid pointer without zlib
- PR: https://github.com/ruby/ruby/pull/4430
This should be trivial. -
02:28 PM Bug #17788: ruby 3.0.0 - compiling c++ extension on alpine fails
- PR: https://github.com/ruby/ruby/pull/4429
-
01:39 PM Feature #17752: Enable -Wundef for C extensions in repository
- user:Eregon Thank you very much. I have just learnt how to use GitHub. I will do it by myself next time.
-
01:27 PM Feature #17752: Enable -Wundef for C extensions in repository
- I made a PR with @xtkoba's patches and additional fixes, as well as enabling undef warnings:
https://github.com/ruby/ruby/pull/4428
@xtkoba Importing patches is quite time-consuming, it would be better if you can already make commits... -
01:05 PM Feature #17837: Add support for Regexp timeouts
- +1 wonderful and useful idea
Even without the DoS aspect, it's all too easy to create regexps with pathological performance that only manifests in certain edge cases, usually in production. It would be very useful if some kind of time... -
05:23 AM Feature #17837: Add support for Regexp timeouts
- Invoking a thread implicitly in the interpreter is troublesome. Previously, Ruby had a timer thread, but as far as I know, it was (almost) abundaned by @normalperson. If you try to revive a timer thread, you should learn the complex hist...
-
11:27 AM Bug #16492: TestBugReporter#test_bug_reporter_add test failures
- Note I am planing to check this ticket after reviving Travis s390x (#17818).
-
08:53 AM Bug #17787: Four AIX build issues with xlc compiler and ruby-3.0.1
- ruby_3_0 3e07a4edc92f18dec4806961c1b724ac5cf4d6b2 merged revision(s) 3a3033c138c0951ad5edbf02b5c233b58a190d2f.
-
08:53 AM Revision 3e07a4ed (git): merge revision(s) 3a3033c138c0951ad5edbf02b5c233b58a190d2f: [Backport #17787]
- get rid of using `__builtin_unreachable` directly [Bug #17787]
As it is an independent feature from `clz`, `ctz` and `popcount`,
it might be unavailable even if the latters are built in.
---
internal/bit... -
08:49 AM Revision cc4e6026 (git): merge revision(s) 87c546b5fa97e6e226cce4daf417617a1143f642,7a3322a0fd660d676f1918bd7c4a37676b44e1c2:
- Avoid using inconsistent coding style
Other `_mjit_compile_*.erb` files don't use goto. These files'd better
be consistent for readability.
---
tool/ruby_vm/views/_mjit_compile_getinlinecache.erb | 14 ++... -
08:20 AM Revision 58240b5d (git): merge revision(s) 4ae27d8075b2d138d13cb2b112f0ee50934b3017,2670509ebba5ba31a5bf34cf906943075446e005,8e2ac2140d1cd9c163c1556df58c020dc22ab269:
- [ruby/net-ftp] Reduce resource cosumption of Net::FTP::TIME_PARSER
Reported by Alexandr Savca as a DoS vulnerability, but Net::FTP is a
client library and the impact of the issue is low, so I have decided
to fix ... -
01:57 AM Feature #16962: Make IO.for_fd autoclose option default to false
- ioquatix (Samuel Williams) wrote in #note-4:
> Thanks for looking into this.
> ...
My git blame magic ball shows that Ruby has always done this. It was temporarily changed in commit:6f1edacc010c48c5762598fed74ff4f1e62d1b20 and then qu... -
12:21 AM Feature #16962: Make IO.for_fd autoclose option default to false
- Thanks for looking into this.
Not being able to close some file descriptors when using `IO.for_fd` is almost certainly a bug.
```
/* need to keep FILE objects of stdin, stdout and stderr */
```
Why? -
12:07 AM Feature #16962: Make IO.for_fd autoclose option default to false
- I looked into this and I think it's because stdin, stdout, and stderr are special cased:
```c
if (IS_PREP_STDIO(fptr) || fd <= 2) {
/* need to keep FILE objects of stdin, stdout and stderr */
}
```
This Ruby pro...
04/28/2021
-
11:52 PM Bug #17583: Segfault on large stack(RUBY_THREAD_VM_STACK_SIZE)
- nobu (Nobuyoshi Nakada) wrote in #note-9:
> Does this work?
> ...
@nobu I tested it and it fixes the problem on OpenBSD/amd64. -
09:36 PM Bug #17804: Math.cbrt(0.0) returns NaN
- I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/4425
-
08:30 PM Bug #16680 (Closed): Symlink folder in $LOAD_PATH does not work with autoload
- I tried this with Ruby 2.6, 2.7, and 3.0, and got the same results with all three:
```
$ ls -ld /home/jeremy/tmp/looksee1
lrwxr-xr-x 1 jeremy jeremy 7 Apr 28 13:19 /home/jeremy/tmp/looksee1 -> looksee
$ ruby26 -I /home/jeremy/tm... -
07:26 PM Bug #17839: Windows CI failures with net/http - fix at ruby/net-http
- Windows failures in test-all & test-spec are fixed by ruby/ruby PR https://github.com/ruby/ruby/pull/4424.
Patches also applied to ruby-loco, both mingw & mswin passed. Ruby-loco's mswin runs full testing, unlike CI here... -
03:30 PM Bug #17839 (Closed): Windows CI failures with net/http - fix at ruby/net-http
- CI is currently broken on Windows builds.
Fix is at https://github.com/ruby/net-http/pull/20, adds Windows CI, updates workflow yaml, fixes host naming, etc
Actions runs now need approval for first time contributors. If someone co... -
06:52 PM Bug #17836: JIT fails to create a precompiled header with Clang
- Sorry, I forgot adding `Co-authored-by` in the commit message (please consider using GitHub if you care), but I merged your patch. Thanks.
-
06:50 PM Bug #17836 (Closed): JIT fails to create a precompiled header with Clang
- Applied in changeset commit:git|9f8a50723f8a84b3e4755b418570148f422d1b28.
----------
Specify -c to emit pch with clang (#4423)
[Bug #17836] - 06:50 PM Revision b0b5a4e8 (git): * 2021-04-29 [ci skip]
-
06:49 PM Revision 9f8a5072 (git): Specify -c to emit pch with clang (#4423)
- [Bug #17836]
-
05:11 PM Bug #17585: DWARF5 support?
- Fedora Rawhide is using GCC11 since ~beginning of the year and I am not aware of any issues. Actually, Fedora 34 was released yesterday, so should there been any issues, we will soon find out :)
-
11:24 AM Bug #17585: DWARF5 support?
- GCC 11 is released yesterday, and in [Changes, New Features, and Fixes](https://gcc.gnu.org/gcc-11/changes.html) it is said that:
```
To take full advantage of DWARF version 5 GCC needs to be build against binutils version 2.35.2 or ... -
11:44 AM Bug #17542 (Closed): Username and password are not decoded if retrieved from env
- fixed at 842f00f45212019a3b07f8d8dac269d35beb9efa
-
09:48 AM Revision 96fd1e1f (git): Removed unused macro HAVE_CONFIG_H
- It seems like a vestige of ext/md5.
-
09:48 AM Revision 795fb51f (git): NDEBUG is ignored since Ruby 3.0
-
08:58 AM Revision f985dafe (git): Guard for < Ruby 3.0
- 08:48 AM Revision 7f1323c3 (git): [ruby/ostruct] Add compatibility for to_h with block in Ruby 2.5
- https://github.com/ruby/ostruct/commit/da45de5068
- 08:33 AM Revision 37b445ea (git): [ruby/ostruct] Compatibility with Ruby 2.5
- https://github.com/ruby/ostruct/commit/ecd9fafdf8
-
07:25 AM Feature #17837: Add support for Regexp timeouts
- I wonder if even a lightweight SIGVTALRM may be too much of a performance hit? On the upside though not needing to think about a background thread is nice!
If we are doing a background thread implementation I would recommend dropping... -
05:23 AM Feature #17837: Add support for Regexp timeouts
- I like this idea. It might be better to use SIGVTALRM instead of a monitor thread. However, it may affect the performance of a program that repeatedly uses a small and trivial regexp. Anyone can try to implement it and evaluate the perfo...
-
06:05 AM Feature #16989: Sets: need ♥️
- Is there a chance this feature lands in 3.1?
-
05:56 AM Misc #17828: Deprecate use of master and slave
- zzak (Zachary Scott) wrote in #note-5:
> For me, having different branch names is just a quality of life improvement. Every project at my company has switched to "main", and many OSS projects I hack on have as well. Having to remember w... -
12:38 AM Misc #17828: Deprecate use of master and slave
- For me, having different branch names is just a quality of life improvement. Every project at my company has switched to "main", and many OSS projects I hack on have as well. Having to remember which one uses "main" and which one uses "m...
-
04:49 AM Feature #17838 (Closed): `Set#intersect?` and enumerables
- `Set#intersect?` currently accepts only a `set` argument.
It should accept an enumerable argument:
```ruby
[1, 2, 3].intersect?(Set[2, 3, 4]) # => true
Set[2, 3, 4].intersection([1, 2, 3]) # => Set[2, 3]
Set[2, 3, 4].intersect?(... -
03:02 AM Bug #17799: Seg fault in rb_class_clear_method_cache
- I doubt if `rb_class_detach_module_subclasses` in `class.c` is worth investigating. The reason is as follows. As mentioned in #note-6, there is a large gap between Frame 6 and Frame 8 of the crashed thread which we cannot fill in, and so...
-
02:56 AM Revision 2afbe711 (git): [ruby/optparse] Add EditorConfig file
- More info here: https://editorconfig.org/
For example, `ruby/ruby` has it: https://github.com/ruby/ruby/blob/05ebaee/.editorconfig
Also fix some offenses.
https://github.com/ruby/optparse/commit/29402e7e0e -
02:10 AM Revision 908785ef (git): [ruby/net-imap] Fix typo intentionaly -> intentionally [ci skip]
- https://github.com/ruby/net-imap/commit/4057c662e7
-
02:03 AM Revision 0296a644 (git): [ruby/net-http] Initialize OpenSSL early before creating TCPSocket
- OpenSSL make take some time to initialize, and it would be best
to take that time before connecting instead of after.
From joshc on Redmine.
Fixes Ruby Bug #9459
https://github.com/ruby/net-http/commit/14e09fba24 -
02:01 AM Revision 1229ad05 (git): [ruby/net-http] Fix the regexp used to clean the host
- Introduced in https://github.com/ruby/ruby/commit/c1652035644
`/s` marks the regexp as encoded with Windows-31J which makes little
sense.
Nurse thinks the intent was to use `/m` for a multi-line regexp.
https://github.com/ruby/net-htt... - 02:01 AM Revision 842f00f4 (git): [ruby/net-http] Decode user and password from env configured proxy
- If someone sets an env variable defining a http_proxy, containing a
username / password with percent-encoded characters, then the resulting
base64 encoded auth header will be wrong.
For example, suppose a username is `Y\X` and the passw... -
01:58 AM Revision 8a2b7b79 (git): [ruby/net-http] Replace Timeout.timeout in Net:HTTP#connect
- Use Socket.tcp's connect_timeout option instead
https://github.com/ruby/net-http/commit/753cae3bbc - 01:51 AM Revision e22626f0 (git): [ruby/net-smtp] mod: bump to a new VERSION that could be checked for testings >0.2.1
- https://github.com/ruby/net-smtp/commit/8f2c9323e2
-
01:48 AM Revision eebecdf1 (git): [ruby/net-smtp] Removed needless files from Gem::Specification#files
- https://github.com/ruby/net-smtp/commit/69bba6b125
-
01:47 AM Revision ff931d03 (git): [ruby/net-smtp] Replace Timeout.timeout with socket timeout
- Timeout.timeout is inefficient since it spins up a new thread for
each invocation, use Socket.tcp's connect_timeout option instead
https://github.com/ruby/net-smtp/commit/6ae4a59f05 - 01:46 AM Revision 4c8cce5b (git): [ruby/net-smtp] Net::SMTP.start() and #start() accepts ssl_context_params keyword argument
- Additional params are passed to OpenSSL::SSL::SSLContext#set_params.
For example, `Net::SMTP#start(ssl_context_params: { cert_store: my_store, timeout: 123 })`
calls `set_params({ cert_store: my_store, timeout: 123 })`.
... -
12:10 AM Revision 73455749 (git): test/net/ftp/test_ftp.rb: Use RubyVM::JIT instead of RubyVM::MJIT
04/27/2021
-
11:39 PM Feature #17837 (Closed): Add support for Regexp timeouts
- ### Background
ReDoS are a very common security issue. At Discourse we have seen a few through the years. https://owasp.org/www-community/attacks/Regular_expression_Denial_of_Service_-_ReDoS
In a nutshell there are 100s of ways thi... -
11:35 PM Feature #17830: Add Integer#previous and Integer#prev
- As Matz gets cited more and more, I think it's best to let him decide.
-
06:30 PM Feature #17830: Add Integer#previous and Integer#prev
- sawa (Tsuyoshi Sawada) wrote in #note-6:
> rafasoares (Rafael Soares) wrote in #note-5:
> ...
No, that's another quote. I'm referring to the one in the paragraph above. Complete excerpt here:
> He has often said that he is “trying t... -
06:13 PM Feature #17830: Add Integer#previous and Integer#prev
- rafasoares (Rafael Soares) wrote in #note-5:
> He [matz] has often said that he is “trying to make Ruby *natural, not simple*”
> ...
Not the main issue, but I need to point this out. Assuming that you are referring to this passage from ... -
04:13 PM Feature #17830: Add Integer#previous and Integer#prev
- sawa (Tsuyoshi Sawada) wrote in #note-4:
> > I think Integer#pred is great as the inverse of #succ, but it reads a bit weird as the inverse of #next, which might be preferable for those going for a more "reads like English" approach.
>... -
06:39 AM Feature #17830: Add Integer#previous and Integer#prev
- > I think Integer#pred is great as the inverse of #succ, but it reads a bit weird as the inverse of #next, which might be preferable for those going for a more "reads like English" approach.
I do not understand this logic. If "predecess... -
11:33 PM Bug #17836 (Closed): JIT fails to create a precompiled header with Clang
- A log message:
```
Creating precompiled header
Starting process: /usr/lib/llvm/12/bin/clang /usr/lib/llvm/12/bin/clang --target=x86_64-pc-linux-gnu -w -funwind-tables -fdeclspec -Wfatal-errors -fPIC -shared -w -pipe -Oz -fno-fast-math... -
11:11 PM Bug #17799: Seg fault in rb_class_clear_method_cache
- xtkoba (Tee KOBAYASHI) wrote in #note-7:
> The stack trace seems somehow corrupted and not correct, possibly messed up by signal trampoline. It is true that there are some types of bugs that corrupt the call stack (e.g. `longjmp` with in... -
07:58 PM Bug #17799: Seg fault in rb_class_clear_method_cache
- The stack trace seems somehow corrupted and not correct, possibly messed up by signal trampoline. It is true that there are some types of bugs that corrupt the call stack (e.g. `longjmp` with incorrect jump buffer). I have no idea whethe...
-
05:52 PM Bug #17799: Seg fault in rb_class_clear_method_cache
- xtkoba (Tee KOBAYASHI) wrote in #note-5:
> It would be possible that the lines inserted affect other parts of the code.
> ...
Thanks! I wonder if this is a similar strict aliasing issue.
One thing I don't understand is this part of ... -
09:08 PM Bug #17827: Monitor is not fiber safe
- Thanks for your work. @nagachika can you please backport this? 🙏
-
04:53 PM Bug #17827: Monitor is not fiber safe
- Fixed in https://github.com/ruby/ruby/commit/3a3b19b2bba49e5d6f1cf13764eb6dd701397be9.
This should be backported to 3.0 (I marked it as such).
I noticed something else while writing a test for this:
On 2.7:
```
ruby -e 'm=Mutex.... -
04:47 PM Bug #17827 (Closed): Monitor is not fiber safe
- Applied in changeset commit:git|3a3b19b2bba49e5d6f1cf13764eb6dd701397be9.
----------
Fix Monitor to lock per Fiber, like Mutex [Bug #17827] -
09:03 PM Bug #17835 (Closed): Net::HTTP should automatically add Accept-Encoding request header on HEAD request as well
- Currently, Net::HTTP adds the Accept-Encoding request header by default except for HEAD method.
https://github.com/ruby/ruby/blob/v3_0_1/lib/net/http.rb#L1489-L1493
https://github.com/ruby/ruby/blob/v3_0_1/lib/net/http/generic_request.... -
07:23 PM Bug #14090: `TestGc#test_interrupt_in_finalizer` fails very rarely
- user:jeremyevans0 I tried the PR and it does not seem to resolve the intermittent timeout issue in `test_interrupt_in_finalizer` when the mitigation is disabled.
-
05:56 PM Bug #14090: `TestGc#test_interrupt_in_finalizer` fails very rarely
- xtkoba (Tee KOBAYASHI) wrote in #note-3:
> This seems to be still a problem with a recent revision of Ruby on a recent GNU/Linux environment:
@xtkoba Thank you very much for testing. Are you able to check whether https://github.com/... -
05:47 PM Bug #14090: `TestGc#test_interrupt_in_finalizer` fails very rarely
- This seems to be still a problem with a recent revision of Ruby on a recent GNU/Linux environment:
```
Wed Apr 28 02:39:30 JST 2021
trial:3673
../revision.h unchanged
Run options:
--seed=50002
"--ruby=./miniruby -I../lib -I. -... -
02:08 AM Bug #14090: `TestGc#test_interrupt_in_finalizer` fails very rarely
- I tried the following patch to disable the mitigation:
```diff
diff --git a/thread.c b/thread.c
index 4f2debdaf2..0fdef76445 100644
--- a/thread.c
+++ b/thread.c
@@ -601,13 +601,12 @@ rb_thread_terminate_all(rb_thread_t *th)
... -
06:12 PM Revision 8e2ac214 (git): test/net/ftp/test_ftp.rb: reduce the size of a long response
- "9" * 999999999 (about 1 GB) was too large for some CI servers.
This commit changes the size to 999999 (about 1 MB).
http://rubyci.s3.amazonaws.com/scw-9d6766/ruby-master/log/20210427T141707Z.fail.html.gz
http://rubyci.s3.amazonaws.com/... -
05:27 PM Revision fe11031b (git): test/net/ftp/test_ftp.rb: remove unused variable
-
05:13 PM Revision 99eebf82 (git): test/ruby/test_fiber.rb: reduce the count of object creation to cause GC
- ... on Solaris. This is the same as 547887138f19959f649b1c0dbcde5659ae3878ed.
http://rubyci.s3.amazonaws.com/solaris10-gcc/ruby-master/log/20210427T160003Z.fail.html.gz
```
[ 7667/20965] TestFiber#test_fork_from_fiber/export/home/users/... - 04:47 PM Revision 72eacd73 (git): * 2021-04-28 [ci skip]
-
04:42 PM Revision 3a3b19b2 (git): Fix Monitor to lock per Fiber, like Mutex [Bug #17827]
-
03:14 PM Feature #17016: Enumerable#accumulate
- Thanks everyone continuing to discuss whether to add this method to the Ruby lazy Enumerable!
In case it is helpful, please permit me to clarify that this method (and the functional programming pattern it represents) is of **practical**... -
09:05 AM Feature #17016: Enumerable#accumulate
- mame (Yusuke Endoh) wrote in #note-39:
> This ticket was discussed in the dev meeting, but no conclusion was reached.
> ...
That's true.
> Thus, FoldList is more suitable name than Accumulate in this case.
> ...
I don't thinks Fold... -
02:58 PM Revision 1c1c9153 (git): lldb: highlight the slot when using dump_page_rvalue
-
02:58 PM Revision f64bb9fc (git): lldb: dump_page_rvalue - dump a heap page containing an RVALUE
- rather than having to do this in a two step process:
1. heap_page obj
2. dump_page $2 (or whatever lldb variable heap_page set)
we can now just
dump_page_rvalue obj -
02:58 PM Revision c752a358 (git): lldb: Add Freelist Index to dump_page output
-
12:22 PM Revision 1b2abb65 (git): [ruby/net-ftp] Replace "iff" with "if and only if"
- iff means if and only if, but readers without that knowledge might
assume this to be a spelling mistake. To me, this seems like
exclusionary language that is unnecessary. Simply using "if and only if"
instead should suffice.
https://git... -
12:22 PM Revision 2670509e (git): [ruby/net-ftp] Add test cases
- https://github.com/ruby/net-ftp/commit/865232bb2a
-
12:21 PM Revision 4ae27d80 (git): [ruby/net-ftp] Reduce resource cosumption of Net::FTP::TIME_PARSER
- Reported by Alexandr Savca as a DoS vulnerability, but Net::FTP is a
client library and the impact of the issue is low, so I have decided
to fix it as a normal issue.
Based on patch by nobu.
https://github.com/ruby/net-ftp/commit/a93af6... -
12:21 PM Revision 990baec4 (git): [ruby/net-ftp] Close the passive connection data socket if there is an error setting up the transfer
- Previously, the connection leaked in this case. This uses
begin/ensure and checking for an error in the ensure block.
An alternative approach would be to not even perform the
connection until after the RETR (or other) command has been
... -
12:20 PM Revision a86c6cb3 (git): [ruby/net-ftp] Replace Timeout.timeout with socket timeout
- Timeout.timeout is inefficient since it spins up a new thread for
each invocation, use Socket.tcp's connect_timeout option instead
when we aren't using SOCKS (we can't replace Timeout.timeout
for SOCKS yet since SOCKSSocket doesn't have ... -
12:19 PM Revision fb819d93 (git): [ruby/net-ftp] Re-apply 827e471d438fdec1ae329afb5912b8e06d534823
- https://github.com/ruby/net-ftp/commit/3ca80368c4
-
12:07 PM Revision ac739f42 (git): [ruby/matrix] Guard for < Ruby 3.0
- https://github.com/ruby/matrix/commit/1ef660c627
- 12:01 PM Revision 3af2e892 (git): [ruby/matrix] v0.4.1
- https://github.com/ruby/matrix/commit/f7c9981907
- 12:01 PM Revision c57ba9b9 (git): [ruby/matrix] v0.4.0
- https://github.com/ruby/matrix/commit/baea4b90d4
-
11:57 AM Revision acf599e6 (git): [ruby/matrix] Use Gemfile instead of Gem::Specification#add_development_dependency.
- https://github.com/ruby/matrix/commit/1381fde5c1
- 11:54 AM Revision 22d36c46 (git): [ruby/gdbm] Add dependency to gdbm package on mingw
- RubyInstaller2 supports metadata tags for installation of dependent
MSYS2/MINGW libraries. The openssl gem requires the mingw-openssl
package to be installed on the system, which the gem installer takes
care about, when this tag is set.
... -
11:52 AM Revision ad3f4c07 (git): [ruby/pathname] gemspec: Explicitly list 0 executables
- This gem exposes no executables.
https://github.com/ruby/pathname/commit/c401d97d58 -
08:07 AM Revision ea88f49a (git): test/ruby/test_exception.rb: suppress "warning: statement not reached"
-
08:05 AM Revision d405b1a8 (git): Make imemo_ast WB-protected again
- by firing the write barrier of imemo_ast after nd_lit is modified.
This will fix the issue of https://github.com/ruby/ruby/pull/4416 more
gracefully. -
08:05 AM Revision e48109d8 (git): Partially revert 2c7d3b3a722c4636ab1e9d289cbca47ddd168d3e
- to make imemo_ast WB-protected again. Only the test is kept.
-
07:34 AM Misc #17828: Deprecate use of master and slave
- zzak (Zachary Scott) wrote in #note-3:
> I would defer to @hsbt on how difficult it would be to change the default branch in git.
Do you mean replacing "master"? Although I agree with avoiding the word "slave", I agree with Matz, and... -
06:47 AM Misc #17828: Deprecate use of master and slave
- I would defer to @hsbt on how difficult it would be to change the default branch in git. I'm happy to review and merge any patches that offer alternative (either code using alias for backwards compatibility) or documentation.