Activity
From 09/09/2020 to 09/15/2020
09/15/2020
-
11:18 PM Feature #17171: Why is the visibility of constants not affected by `private`?
- I think your expectation is reasonable. If we change it, we need much work to estimate its compatibility impact carefully and to design a migration path, of course.
I proposed and implemented `private_constant` ten years ago. [Feature ... -
09:04 PM Feature #17171: Why is the visibility of constants not affected by `private`?
- I'd like us to consider changing this so that `private` also changes the visibility of future constants being set.
If that is deemed too risky for compatibility, could `private_constant` with no receiver do this? -
08:34 PM Feature #17171 (Rejected): Why is the visibility of constants not affected by `private`?
- ```ruby
class Foo
def call_me
# ...
end
private
SOME_DATA = %i[...].freeze # is public, why not private?
def calc_stuff # is private, ok.
# ...
end
end
```
It's probably a naive question, but wh... -
10:45 PM Revision 344304c8 (git): Use build_message on test_securerandom.rb (#3543)
- * Revert "Revert "[ruby/securerandom] Use build_message instead of message for test-unit""
* [ruby/securerandom] Fixed the wrong usage of build_message -
07:56 PM Revision 1af0319f (git): 2.8 -> 3.0 in specs
-
07:35 PM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
- I merged https://github.com/ruby/ruby/pull/3488 so it's in time for preview1.
@nobu Could you decide if you think https://github.com/nobu/ruby/tree/unfrozen-literal is worth it? -
07:32 PM Feature #17104 (Closed): Do not freeze interpolated strings when using frozen-string-literal
- Applied in changeset commit:git|9b535f3ff7c2f48e34dd44564df7adc723b81276.
----------
Interpolated strings are no longer frozen with frozen-string-literal: true
* Remove freezestring instruction since this was the only usage for it.
* [... -
07:32 PM Revision 9b535f3f (git): Interpolated strings are no longer frozen with frozen-string-literal: true
- * Remove freezestring instruction since this was the only usage for it.
* [Feature #17104] -
07:07 PM Feature #17170 (Feedback): Numeric.zero, Numeric.one
- Hi at the ruby team,
I'd like to suggest to enhance `Numeric` to provide two new class methods, which shall be: `zero` and `one`.
- `Integer.zero` shall be equal to `Integer(0)`
- `Float.zero` shall be equal to `Float(0)`
- `BigD... -
04:18 PM Feature #17045 (Closed): ObjectSpace.dump_all should allocate as little as possible in the GC heap
- Applied in changeset commit:git|fbba6bd4e3dff7a61965208fecae908f10c4edbe.
----------
Parse ObjectSpace.dump_all / dump arguments in Ruby to avoid allocation noise
[Feature #17045] ObjectSpace.dump_all should allocate as little as possi... -
04:18 PM Revision fbba6bd4 (git): Parse ObjectSpace.dump_all / dump arguments in Ruby to avoid allocation noise
- [Feature #17045] ObjectSpace.dump_all should allocate as little as possible in the GC heap
Up until this commit ObjectSpace.dump_all allocates two Hash because of `rb_scan_args`.
It also can allocate a `File` because of `rb_io_get_writ... -
04:12 PM Bug #17169 (Rejected): Bad value for range using infinity for Time
- @matz already rejected enhancing Time ranges in https://bugs.ruby-lang.org/issues/12961#note-5: `So we only need to fix Date class. I don't think we should enhance Time ranges to support Integer/Float.` So the current behavior is not a ...
-
03:31 PM Bug #17169 (Rejected): Bad value for range using infinity for Time
- How to reproduce:
``` ruby
-Float::INFINITY...Float::INFINITY # works
Date.today...Float::INFINITY # works
-Float::INFINITY...Date.today # works
Time.now...Float::INFINITY #fails with "ArgumentError: bad value for range"
-Float::... - 04:09 PM Revision a0d50465 (git): * 2020-09-16 [ci skip]
-
04:09 PM Revision 86087a15 (git): pointers on the stack need to be pinned
-
01:51 PM Feature #17168: Bundle RBS
- Approved.
Matz.
-
09:26 AM Feature #17168: Bundle RBS
- Details: https://www.youtube.com/watch?v=PvkpW1OEaP8
-
09:11 AM Feature #17168 (Closed): Bundle RBS
- @hsbt and I have been working to make RBS one of the bundled gems.
We are finalizing the patch and hope we can finish it tonight.
https://github.com/ruby/ruby/pull/3496
I'd like to ask Matz to approve bundling it in Ruby 3.0 (hope... -
12:44 PM Revision ee10efdc (git): Revert "[ruby/securerandom] Use build_message instead of message for test-unit"
- This reverts commit 7f9f5f5723cd723dee578b0681066c8393ee45d0.
-
12:17 PM Revision abbd3241 (git): [ruby/uri] Remove deprecated URI.escape/URI.unescape
- https://github.com/ruby/uri/commit/61c6a47ebf
-
12:07 PM Revision 7f9f5f57 (git): [ruby/securerandom] Use build_message instead of message for test-unit
- https://github.com/ruby/securerandom/commit/826b877e83
-
11:56 AM Revision ed39078d (git): bump patchlevel to 125
-
11:55 AM Revision 7d763148 (git): Merge RubyGems 3.1.4
- 11:32 AM Revision 3dd9e12b (git): [ruby/fileutils] Reduce iteration through list for `:mkdir_p`
- By calling the instruction to `list.map` within `list.each` itself.
https://github.com/ruby/fileutils/commit/e690eec937 - 10:53 AM Revision 026ba68c (git): Fix handling of FMODE_PREP.
- 10:53 AM Revision a9b2a96c (git): Fix incorrect initialization of `rb_io_t::self`.
-
06:35 AM Feature #13683: Add strict Enumerable#single
- How about #sole since it means one and only and is concise?
``` ruby
[].sole
#!> SoleError: empty Array when single value expected (contains 0, expected 1)
Set.new.sole
#!> SoleError: empty Set when single value expected (contains 0, e... -
05:03 AM Revision b2b855f4 (git): Fix `warning: instance variable bt_locations not initialized`
-
05:03 AM Revision f3754dfc (git): Fix missing `"` [ci skip]
-
12:40 AM Revision 29b1ac61 (git): Add IRB and Reline update for NEWS of 3.0.0-preview1
09/14/2020
-
08:21 PM Bug #15409 (Closed): OpenStruct error when attribute is called 'method'
- Merged.
- 08:10 PM Revision 60f5d384 (git): [ruby/ostruct] Fix dup/clone
- 08:10 PM Revision 125605ab (git): [ruby/ostruct] method_missing is private
- 08:10 PM Revision 606c009c (git): [ruby/ostruct] Avoid self calling our public methods.
- Found because `json` has a bad example in its test suite.
This implementation still offers better encapsulation. - 08:10 PM Revision 67e5f7a9 (git): [ruby/ostruct] Reinstate recent changes
- This reverts commit 28e60b0045b5732bca11012d81a5223001faa6b2.
- 06:18 PM Revision 39312cf4 (git): Optimize Pathname#relative? / absolute?
- 05:29 PM Revision 28e60b00 (git): [ruby/ostruct] Revert recent changes
- This reverts commit e026e186f4..12a2e32d43.
- 04:59 PM Revision 867f0c67 (git): [ruby/rdoc] Prefer require_relative
- 04:46 PM Revision 12a2e32d (git): [ruby/ostruct] Add access to public instance methods in case they are overriden
- 04:46 PM Revision 12a13eef (git): [ruby/ostruct] Tweak doc
- 04:46 PM Revision 8eefa8f3 (git): [ruby/ostruct] Allow overriding public methods
- [Fixes https://bugs.ruby-lang.org/issues/15409]
- 04:46 PM Revision ebb8de73 (git): [ruby/ostruct] Refactor handling of frozen OpenStruct. Simplify `new_ostruct_member!`
- 04:46 PM Revision 5e7ec053 (git): [ruby/ostruct] Add really basic test that was missing
- 04:46 PM Revision e026e186 (git): [ruby/ostruct] Revert "ostruct.rb: deferred accessors"
- This reverts commits:
dc38e99813
22c082fcfd
b499e0f9ff
58e5876646
Add test for overriden private methods
[Fixes https://bugs.ruby-lang.org/issues/12136] - 03:05 PM Revision 1cabb216 (git): * 2020-09-15 [ci skip]
-
03:04 PM Revision e81d7189 (git): sync fstring pool
- fstring pool should be sync with other Ractors.
-
03:04 PM Revision 74ddac1c (git): relax dependency
- vm_sync.h does not need to include vm_core.h and ractor_pub.h.
-
03:04 PM Revision f7ccb8dd (git): restart Ractor.select on intterupt
- signal can interrupt Ractor.select, but if there is no exception,
Ractor.select should restart automatically. -
09:22 AM Revision edb5c671 (git): [ruby/tmpdir] Warn when environment variables skipped (fixes #2)
- https://github.com/ruby/tmpdir/commit/af7b020a89
-
09:22 AM Revision df1c035d (git): [ruby/tmpdir] Test "not writable" case
- https://github.com/ruby/tmpdir/commit/84684d80f9
-
09:22 AM Revision 04de778e (git): [ruby/tmpdir] Test "not a directory" cases
- https://github.com/ruby/tmpdir/commit/f335f2c23e
-
09:21 AM Revision f7f849e3 (git): [ruby/tmpdir] Test also TMP and TEMP environment variables
- https://github.com/ruby/tmpdir/commit/414c00ebe6
-
09:21 AM Revision 50bce206 (git): [ruby/tmpdir] Prefer better failure message
- https://github.com/ruby/tmpdir/commit/ac12877306
-
09:19 AM Revision 9fbbbadc (git): Added just working Test::Unit::CoreAssertions#diff
- This is not "diff", but show expected and actual results both,
just to get rid of `NoMethodError` when an assertion failed. -
08:52 AM Revision d52dffd8 (git): [ruby/zlib] Add Zlib::GzipReader.zcat for handling multiple gzip streams in gz file
- Most gzip tools support concatenated gz streams in a gz file. This
offers a way to handle such gz files in Ruby.
Fixes [Bug #9790]
Fixes [Bug #11180]
Fixes [Bug #14804]
https://github.com/ruby/zlib/commit/e2ce56de7d - 08:26 AM Revision f1d32010 (git): [ruby/net-smtp] Add SNI support to net/smtp
- https://github.com/ruby/net-smtp/commit/b706942392
-
08:23 AM Revision 141404e8 (git): [ruby/net-smtp] Net::SMTP.start arguments are keyword arguments
- The helo argument is not important, but the helo argument must be
specified to specify the user and secret arguments.
If helo, user, secret, and authtype arguments are keyword arguments,
it is not necessary to specify the helo argument.
... -
08:22 AM Revision 888e04ae (git): [ruby/net-smtp] TLS should not check the host name by default.
- In tlsconnect(), the host name is checked when
@ssl_context.verify_mode is not OpenSSL::SSL::VERIFY_NONE, but the
verify_mode of @ssl_context generated by default is nil.
https://github.com/ruby/net-smtp/commit/bde75a15b5 -
08:15 AM Revision cdb85142 (git): [ruby/erb] Use libexec same as ruby core repository
- https://github.com/ruby/erb/commit/660255cf24
-
07:22 AM Revision ccb944fc (git): add NEW entries about Ractor and new method cache.
-
06:43 AM Misc #17138: DevelopersMeeting20200925Japan
- * [Feature #14722] python's buffer protocol clone (mrkn)
* I will fix some bugs until the next meeting.
* Can I merge this?
* [Feature #16812] Allow slicing arrays with ArithmeticSequence (mrkn)
* I found the wrong test case, so th... -
05:23 AM Feature #16786: Light-weight scheduler for improved concurrency.
- I have introduced experimental support for event-driven scheduling for the following primitives:
- Mutex
- ConditionVariable
- Queue (& SizedQueue)
In addition, I've reworked the method names to be more consistent taking into account t... -
05:07 AM Revision 78ef7eeb (git): Manually picked https://github.com/ruby/open3/commit/724bdb8e1de939e71a6aa8a65ccf6980f53f4353
-
05:06 AM Revision eace12c2 (git): Fixup 8f71bb0e4f76ab12e469d33bc560bd76cc3aaf90
-
04:44 AM Feature #16792 (Closed): Make Mutex held per Fiber instead of per Thread
- Applied in changeset commit:git|178c1b0922dc727897d81d7cfe9c97d5ffa97fd9.
----------
Make Mutex per-Fiber instead of per-Thread
* Enables Mutex to be used as synchronization between multiple Fibers
of the same Thread.
* With a Fiber ... - 04:44 AM Revision 7fca2741 (git): Rework console to use `rb_io_wait`.
- 04:44 AM Revision 8eea66a0 (git): Add support for Queue & SizedQueue.
- 04:44 AM Revision 0f613cc5 (git): Add support for ConditionVariable.
- 04:44 AM Revision 1a0cfe28 (git): Improve handling of urgent notification pipe.
- 04:44 AM Revision 3dc0fc11 (git): Update dependencies
-
04:44 AM Revision 178c1b09 (git): Make Mutex per-Fiber instead of per-Thread
- * Enables Mutex to be used as synchronization between multiple Fibers
of the same Thread.
* With a Fiber scheduler we can yield to another Fiber on contended
Mutex#lock instead of blocking the entire thread.
* This also makes the beh... - 04:44 AM Revision 9e0a48c7 (git): Prefer `rb_thread_current_scheduler`.
- 04:44 AM Revision 701dcbb3 (git): Add support for hooking `IO#read`.
- 04:44 AM Revision 132453fa (git): Rename `Fiber{}` to `Fiber.schedule{}`.
- 04:44 AM Revision d387029f (git): Standardised scheduler interface.
- 04:44 AM Revision 905e9c80 (git): Simplify bitmasks for IO events.
- 04:44 AM Revision 6747cb57 (git): Add RB_ prefix to `GetOpenFile` and `MakeOpenFile`.
- 04:44 AM Revision 703e5297 (git): Add `rb_thread_current_scheduler()`.
-
03:02 AM Revision a9ccebbd (git): Added promoted libraries to default gems section on NEWS
-
01:29 AM Feature #17159: extend `define_method` for Ractor
- ### The reason I use `#define_method` (4)
I sometimes use it to alias _a part_ of a module, like this:
```ruby
class Foo
%i[sin cos tan].each do |sym|
define_method(sym, Math.instance_method(sym))
end
end
p Foo.new.si...
09/13/2020
- 05:20 PM Revision ba73e447 (git): * 2020-09-14 [ci skip]
-
05:14 PM Revision b682e0fc (git): [ruby/irb] Version 1.2.6
- https://github.com/ruby/irb/commit/5a7dd8c3bf
-
05:13 PM Revision 5bb9e125 (git): [ruby/irb] Need calculate_width and split_by_width of Reline::Unicode of reline 0.1.5 or later
- https://github.com/ruby/irb/commit/c05bc9e595
-
05:13 PM Revision 8f9b1902 (git): [ruby/irb] Omit output if first line of multiline is too long
- https://github.com/ruby/irb/commit/0feeae38c5
-
05:13 PM Revision e468d9f4 (git): [ruby/irb] Add OMIT_ON_ASSIGNMENT
- Omit the results evaluated at assignment if they are too long.
The behavior of ECHO_ON_ASSIGNMENT being on by default is hard to understand,
so I change it to off by default. Instead, we turn OMIT_ON_ASSIGNMENT on by
default. The result... -
05:12 PM Revision 5d841f56 (git): [ruby/irb] Version 1.2.5
- https://github.com/ruby/irb/commit/07beb3964d
-
05:12 PM Revision 3a3e9330 (git): [ruby/reline] Version 0.1.5
- https://github.com/ruby/reline/commit/c8a419beb5
-
10:07 AM Feature #17159: extend `define_method` for Ractor
- > #eval (...) has huge freedom to explode the program
I think this will happen too with the new feature proposed here.
One needs new bytecode/etc for the Proc/method where `i` is replaced by a literal value, isn't it?
Or do you alternat... -
10:01 AM Feature #17159: extend `define_method` for Ractor
- Copying captured variables seems a nice feature to have, also for optimizations.
In fact, this already exists in TruffleRuby internally:
https://github.com/oracle/truffleruby/blob/574d6bd2425caa856707ffd713fdb8ffc87be1e1/src/main/java/... -
09:41 AM Feature #17165: Add `filter` and `flatten` keywords to `Enumerable#map`
- And I'd argue if one wants to do everything in one block, just enjoy the freedom of imperative programming:
```ruby
result = []
array.each do |foo|
if bar = baz(foo)
result.concat bar.map{...}
end
end
``` -
09:38 AM Feature #17165: Add `filter` and `flatten` keywords to `Enumerable#map`
- What's the problem with the obvious:
```ruby
array.map { |foo|
baz(foo)
}.select { |bar|
condition(bar)
}.flat_map { |bar|
bar.map{...}
}
```
I think it's so much more readable.
And I don't think the extra allocations ... -
09:25 AM Bug #17146: Queue operations are allowed after it is frozen
- ko1 (Koichi Sasada) wrote in #note-1:
> `require "thread"; q=Queue.new.freeze; q.push 1` works without error from Ruby 1.6.0.
Ah, yes, because it's not deeply frozen:
https://github.com/ruby/ruby/blob/23ccbdf52188b78427f41d75b1a4b81... - 03:35 AM Revision d7b279e7 (git): * 2020-09-13 [ci skip]
-
03:35 AM Revision 3bdf8efd (git): Fix typos [ci skip]
-
03:13 AM Bug #17167 (Closed): Nested numbered parameters are not allowed
- Unlike `[[1, 2], [3, 4]].each{|v| v.each{|v| p v}}`, nested numbered parametersin `[[1, 2], [3, 4]].each{_1.each{p _1}}` has no clue like `|v|` for nesting.
It is very hard to tell two `_1` have different meanings.
It is a possible c...
09/12/2020
-
09:45 PM Feature #13719: [PATCH] net/http: allow existing socket arg for Net::HTTP.start
- hadmut@danisch.de wrote:
> Any news on this?
> https://bugs.ruby-lang.org/issues/13719#change-87531
It looks like net/http development moved to a proprietary service
which I can't comment on due to Terms-of-Service + JS + CAPTCH... -
03:20 PM Bug #17167 (Closed): Nested numbered parameters are not allowed
- Numbered parameter is allowed in an ordinary block:
```ruby
[[1, 2], [3, 4]].each{p _1}
# >> [1, 2]
# >> [3, 4]
```
as well as in a nested block:
```ruby
[[1, 2], [3, 4]].each{|a| a.each{p _1}}
# >> 1
# >> 2
# >> 3
# >>... -
02:51 PM Feature #17166 (Third Party's Issue): net/http not supporting unix domain sockets
- Hi,
meanwhile it's common and state of the art to offer rest apis not just over tcp/ip, but over unix domain sockets as well for machine-internal use and advanced security.
Unfortunately net/http does not support unix domain soc... -
02:46 PM Feature #17165 (Open): Add `filter` and `flatten` keywords to `Enumerable#map`
- I had a use case to do `map` on an enumerable, with 1-level flattening, while skipping `nil` values.
There are convenient `Enumerable#flat_map` and `Enumerable#filter_map` methods, but the problem is that they cannot be used at the sa... -
07:27 AM Revision 0ac185be (git): Fix compile-time check for copy_file_range(2)
- * close fds properly
* define USE_COPY_FILE_RANGE if HAVE_COPY_FILE_RANGE is defined
* avoid errors on cross-compiling environments -
07:07 AM Revision 012785ef (git): Check copy_file_range(2) is actually supported.
- see also: https://gitlab.com/gitlab-org/gitlab/-/issues/218999#note_363225872
-
01:07 AM Revision ae508633 (git): Suppress "assigned but unused variable" warning
09/11/2020
-
11:35 PM Revision 777d5367 (git): [ruby/reline] Support for word movement escape sequences in iTerm2
- https://github.com/ruby/reline/commit/187235f88c
-
11:35 PM Revision f36dc2b6 (git): [ruby/reline] Treat prompt correctly when Reline.prompt_proc isn't set
- https://github.com/ruby/reline/commit/9c9ba0eff3
-
11:35 PM Revision ce389ade (git): [ruby/reline] Move cursor to currect vertical pos after rendering a logical line
- https://github.com/ruby/reline/commit/9b932df544
-
11:35 PM Revision 9baf1bd0 (git): [ruby/reline] Stop using chomp option of lines method
- https://github.com/ruby/reline/commit/3e2f55c3e0
-
11:35 PM Revision 0ec19cc8 (git): [ruby/reline] Stop erasing chars after the cursor at eol
- When the cursor is at the end of the line and erases characters after the
cursor, some terminals delete the character at the cursor position.
https://github.com/ruby/reline/commit/e96ec97b02 -
11:35 PM Revision 2e34b35a (git): [ruby/reline] Skip the nil obtained from getc
- The nil means there is nothing in the buffer in some systems. Incidentally,
Errno::EIO is raised if the I/O is closed.
https://github.com/ruby/reline/commit/c698634e74 -
11:35 PM Revision a840ef85 (git): [ruby/reline] not clear scrollback buffer
- https://github.com/ruby/reline/commit/ba800f1461
-
11:35 PM Revision 08627440 (git): [ruby/reline] clear_screen use Windows API
- https://github.com/ruby/reline/commit/2c5ee54cb3
-
11:35 PM Revision 770e6603 (git): [ruby/reline] Use str.encoding by default for split_by_width
- https://github.com/ruby/reline/commit/2d32604c9e
- 11:31 PM Revision ae5d97ca (git): * 2020-09-12 [ci skip]
-
11:29 PM Revision 6042b743 (git): Promote time.rb to default gems
-
11:20 PM Bug #12780: BigDecimal#round returns different types depending on argument
- matz (Yukihiro Matsumoto) wrote in #note-9:
> `#round` with the argument less than 1 (`n < 1`) should return `Integer` value.
I've submitted a pull request that implements this: https://github.com/ruby/bigdecimal/pull/170
-
10:50 PM Bug #12834 (Closed): `prepend` getting prepended even if it already exists in the ancestors chain
-
10:46 PM Bug #12838 (Assigned): Duplication of UDP packets for DNS responses causing "no address" results for valid hostnames
- This is still in issue in the master branch. The underlying problem is resolv does not remove the `[sender, message_id]` pair once a response has been received. I have submitted a pull request to fix this issue: https://github.com/ruby...
-
08:32 PM Bug #12987 (Closed): Win32 API.rb can not call function without argument.
- I tried with `ruby 2.6.3p62 (2019-04-16 revision 67580) [i386-mingw32]` and `ruby 1.9.3p551 (2014-11-13) [i386-mingw32]` and was able to call a function without an argument:
```ruby
require 'Win32API'
getch = Win32API.new("C:\\Windo... -
08:17 PM Bug #13094: Zlib::GzipReader eof?がfalseなのにgetsでnilが返ってくる
- I've added a pull request to zlib to document this difference in #gets behavior: https://github.com/ruby/zlib/pull/18
-
08:00 PM Bug #13100 (Rejected): OpenSSL::PKey::EC#public_keyでGroup情報がコピーされない。
- This is expected and documented behavior since https://github.com/ruby/openssl/commit/9435c8b3cab02a78375cb43e122e4cfc7eee79b9, where `key.group` returns a new group, and modifying that group does not affect the key.
-
07:44 PM Feature #13153: Inconsistent sprintf formatting for 0 value
- `sprintf` has been documented that the prefix is only added on non-zero since commit:67151cd7af01f97524f0a14cf5abd9567f856155 in 2008, so this isn't a bug, but a feature request. Adding the prefix even on zero seems more reasonable to m...
-
06:40 PM Bug #13670 (Closed): [BUG] Bus Error at 0xefce7b (armv7l) (ruby 2.3.4p301)
-
01:01 PM Revision 01e0d749 (git): Promote resolv-replace to default gems
-
12:50 PM Revision e0675b1c (git): Promote resolv to default gems
-
12:15 PM Revision d1851ba5 (git): Promote securerandom to default gems
-
11:38 AM Revision 2f248183 (git): Promote open-uri to default gems
-
10:22 AM Feature #13719: [PATCH] net/http: allow existing socket arg for Net::HTTP.start
- Any news on this?
I was just trying to use the rest-client gem to connect to a unix domain socket, which isn't possible since the underlying net/http component does not accept unix domain URLs.
Since offering rest-apis on unix-dom... -
05:36 AM Feature #17140: Merge Enumerable#grep(_v) with Enumerable#select/reject
- I made `select` parts.
https://github.com/nobu/ruby/pull/new/feature/17140-enum_select -
05:34 AM Revision f0ddbd50 (git): Let String#slice! return nil (#3533)
- Returns `nil` instead of an empty string when non-integer number is given (to make it 2.7 compatible).
-
04:26 AM Revision 0d78390b (git): rbinstall.rb: OpenStruct has not been needed for years
- Since 6f3e8df133c7785ff6bb6f18d1faec81fefb3999 in 2014.
-
02:02 AM Revision 406559a2 (git): Add missing break
- pointed out by Coverity Scan
-
01:52 AM Revision d55c914f (git): Removed DRb.default_safe_level and DRb#safe_level
-
01:52 AM Revision e691e671 (git): Removed Thread#safe_level
09/10/2020
-
10:42 PM Bug #13891 (Closed): Rake - no files in bin folder - 59839
-
10:37 PM Bug #13918 (Closed): Appveyor failure - svn 59961 Use https instead of ftp for libffi downloading
-
10:34 PM Bug #13932 (Closed): [PATCH] Extension libraries take precedence in checks of later Kernel.#require calls for features without file extensions
- This patch appears to change a general behavior of `require` even when extension libraries are not involved. For example, it changes the behavior of this code:
```ruby
Dir.mkdir('a')
Dir.mkdir('b')
File.write('a/c.rb', '$a = 1')
... -
09:34 PM Feature #16794: Rightward operators
- For symmetry, we also have `<<-` for heredocs "take this input for..."
It might make sense to think of `->>` as "give this output to..." -
08:02 PM Bug #17164 (Closed): Threads can ignore kill/interrupt/abort
- Threads can opt-out of requests to shut down the thread, including 'thr.kill' and the interrupt that happens when a main thread shuts down. When the interrupt happens, 'ensure' clauses will run in the thread's stack. If one of these clau...
-
06:41 PM Bug #14327 (Closed): Segmentation fault while compiling ruby 2.5 on alpine armhf
-
06:27 PM Bug #14434: IO#reopen fails after EPIPE
- I tried updating this patch for the current master branch, but it breaks `test_reopen_inherit`:
```
1) Failure:
TestIO#test_reopen_inherit [/ruby/test/ruby/test_io.rb:2385]:
<"outerr"> expected but was
<"">.
```
@nobu, do yo... -
03:51 PM Bug #14015: Enumerable & Hash yielding arity
- Looks like this was resolved for `map` specifically in #13391 (https://github.com/ruby/ruby/commit/1f67a3900fbd45482ed36ad3b148b321307c1576)
Here are other steps to reveal the inconsistency:
```ruby
hash = { a: "my", b: "en" }
... - 03:49 PM Revision 440ab313 (git): * 2020-09-11 [ci skip]
-
03:48 PM Revision ef22af4d (git): If the GC runs before the Mutex's are initialised then we get a crash in pthread_mutex_lock.
- It is possible for GC to run during initialisation due to objects being allocated
-
01:52 PM Feature #16150: Add a way to request a frozen string from to_s
- Honestly now that `Symbol#name` is exposed, it's very easy to simply replace `to_s` with `Symbol.alias_method(:to_s, :name)`.
-
10:24 AM Feature #16150: Add a way to request a frozen string from to_s
- matz (Yukihiro Matsumoto) wrote in #note-68:
> I admit `Symbol#name` that returns a frozen string from a symbol. This can be a building block of the proposal.
> ...
For what it's worth, I agree with the above suggestion to try making a... -
12:34 PM Feature #17045: ObjectSpace.dump_all should allocate as little as possible in the GC heap
- I opened a PR with a patch for this: https://github.com/ruby/ruby/pull/3530
-
11:42 AM Revision 867204c4 (git): Promote syslog to default gems
-
09:56 AM Revision cf76a4a5 (git): Promote base64 to default gems
-
09:56 AM Revision cf681038 (git): Promote shellwords to default gems
-
09:56 AM Revision cee8e957 (git): Promote abbrev to default gems
-
09:44 AM Revision ea78960e (git): sync callable_method_entry()
- callable_method_entry() read/write method table structures so that
this function should be synchronized between Ractors. -
07:34 AM Feature #17140: Merge Enumerable#grep(_v) with Enumerable#select/reject
- Enhancing `select` and `reject` seems a good idea.
Matz.
09/09/2020
-
07:45 PM Revision 475c8701 (git): Make SecureRandom support Ractor
- SecureRandom lazily defines `get_random`. Accessing the mutex to define
the `get_random` method is not supported inside a Ractor. This commit
defines `gen_random` when `securerandom` is required and makes it
suppore Ractor (as well as ... -
06:11 PM Revision 5001cc47 (git): Optimize ObjectSpace.dump_all
- The two main optimization are:
- buffer writes for improved performance
- avoid formatting functions when possible
```
| |compare-ruby|built-ruby|
|:------------------|-----------:|---------:|
|dump_all_string ... -
04:04 PM Bug #15409: OpenStruct error when attribute is called 'method'
- > The only complicating factor is json has a dependency on ostruct. JSON::GenericObject inherits from OpenStruct
It is of very questionable usefulness though, so it could probably be deprecated at the same time, or make lazy loaded an... -
03:39 PM Bug #15409: OpenStruct error when attribute is called 'method'
- jeremyevans0 (Jeremy Evans) wrote in #note-10:
> marcandre (Marc-Andre Lafortune) wrote in #note-9:
> ...
Thanks for the quick review 👍. I'll wait a few days and commit if there are no other comments.
> I would like to move ostruct... -
03:38 PM Bug #15409: OpenStruct error when attribute is called 'method'
- Hanmac (Hans Mackowiak) wrote in #note-11:
> i have seen ruby making problems when using `method_missing` without `respond_to_missing` so it might cause problems there
The PR doesn't change `respond_to?`. The `respond_to_missing` wa... -
07:24 AM Bug #15409: OpenStruct error when attribute is called 'method'
- marcandre (Marc-Andre Lafortune) wrote in #note-9:
> I opened a PR that resolves this: https://github.com/ruby/ostruct/pull/15
> ...
i have seen ruby making problems when using `method_missing` without `respond_to_missing` so it might c... -
12:00 AM Bug #15409: OpenStruct error when attribute is called 'method'
- marcandre (Marc-Andre Lafortune) wrote in #note-9:
> I opened a PR that resolves this: https://github.com/ruby/ostruct/pull/15
I reviewed the PR and the changes look good to me.
In regards to OpenStruct in general, I agree with @m... - 03:05 PM Revision 76c7146a (git): * 2020-09-10 [ci skip]
-
03:05 PM Revision b49a8704 (git): Add a :since option to dump_all
- This is useful to see what a block of code allocated, e.g.
```
GC.start
GC.disable
ObjectSpace.trace_object_allocations do
# run some code
end
gc_gen = GC.count
allocations = ObjectSpace.dump_all(output: :file, since: gc_gen)
GC.enabl... -
01:47 PM Revision 3590f082 (git): spec/ruby/core/file/utime_spec.rb: far future timestamp may be trancated
- Under some Ext4 filesystem settings, a timestamp is limited up to
0x37fffffff (2446-05-10).
https://ext4.wiki.kernel.org/index.php/Ext4_Disk_Layout#Inode_Timestamps
> Therefore, timestamps should not overflow until May 2446.
Actually t... -
12:53 PM Revision 01828a95 (git): Promote tsort to default gems
-
12:10 PM Revision b194973d (git): Revert the related commits about `Tempfile.open` change.
- Start with https://github.com/ruby/ruby/commit/fa21985a7a2f8f52a8bd82bd12a724e9dca74934
to https://github.com/ruby/ruby/commit/d7492a0be885ea9f2b9f71e3e95582f9a859c439 -
11:15 AM Revision 6997109f (git): [ruby/tempfile] Revert Tempfile.open unlinking the file
- Document difference in behavior between Tempfile.open and
Tempfile.create.
https://github.com/ruby/tempfile/commit/426d6f887f -
09:06 AM Bug #17162: Dir['**/*'] : stack smashing detected when listing big amount of directories
- Here's a repository with 2 scripts that might help debugging.
- one to create a lot of directories & sub-directories
- another to clear newly created directories
https://gitlab.com/kawsay/ruby-bug-17162
Sadly I haven't got a ... -
03:04 AM Feature #17163 (Open): Rename `begin`
- `Range#begin` is a getter method; it returns a value, and does not have a side effect, or does any calculation. Nevertheless, "begin" is a verb, so there is a mismatch. I would rather expect a noun.
It has a counterpart `Range#end`, a...