Activity
From 09/03/2020 to 09/09/2020
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 ins... -
06:11 PM Revision 5001cc47 (git): Optimize ObjectSpace.dump_all
- The two main optimization are:
- buffer writes for improved performance
- avoid formatting functions when possibl... -
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
I... -
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:
> > I opened a ... -
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 `r... -
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/ostruc... -
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/ostru... - 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_allocati... -
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... -
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/... -
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/4... -
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-directori... -
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. Never...
09/08/2020
-
09:48 PM Bug #15409: OpenStruct error when attribute is called 'method'
- I opened a PR that resolves this: https://github.com/ruby/ostruct/pull/15
Note that using a field called `:method`... -
09:41 PM Feature #17039: Remove Time#succ
- I gave it a try: https://github.com/ruby/ruby/pull/3525
-
07:10 PM Bug #17152 (Closed): Missing TracePoint return event for String#unpack
-
06:30 PM Bug #17162: Dir['**/*'] : stack smashing detected when listing big amount of directories
- One possible approach to avoiding the stack smash is to limit the recursion allowed during directory globbing. Here'...
-
09:11 AM Bug #17162 (Closed): Dir['**/*'] : stack smashing detected when listing big amount of directories
- When I try to recursively list directories, the instructions returns an error "*** stack smashing detected ***" / "[B...
- 04:23 PM Revision 96f2b2e0 (git): * 2020-09-09 [ci skip]
-
04:22 PM Revision 65ab2385 (git): Use size_t for MJIT's max_ivar_index
- iseq_inline_iv_cache_entry's index is also size_t.
%"PRIuSIZE" seems to print warnings against st_index_t in some env... -
11:39 AM Revision b7d86e33 (git): Workaroud for macOS Big Sur(11.0)
-
11:38 AM Revision cdef1709 (git): libSystem.dylib is also symlink. Use libSystem.B.dylib
-
10:56 AM Misc #17138: DevelopersMeeting20200925Japan
- * [Feature #14394] Class.descendants (fatkodima)
* Introduces `Module#descendants` method as a native way to track ... -
03:35 AM Misc #17138: DevelopersMeeting20200925Japan
- * [Feature #17134] Add resolv_timeout to TCPSocket (glass)
* It introduces `resolve_timeout` similar to `Socket.tc... -
10:35 AM Revision 0168094d (git): Use libSystem.dylib instead of libm.dylib and libc.dylib
- Because macOS 11.0(Big Sur) was removed libc and libm from `/usr/lib`.
- 01:31 AM Revision 4530bea8 (git): * 2020-09-08 [ci skip]
-
01:30 AM Revision 5be75aad (git): Add FALLTHROUGH
- Pointed out by Coverity Scan
```
** CID 1466646: Control flow issues (MISSING_BREAK)
/ext/-test-/random/loop.c: 63 i...
09/07/2020
-
06:48 PM Bug #17160: Wrong exception backtrace
- I thought there will be some magic and yes, it is confusing, because I'd expect the `rescue` exception to be the rule...
-
03:08 PM Bug #17160 (Rejected): Wrong exception backtrace
- It is confusing, but I think there is nothing wrong. There are two points.
The first point is that the location f... -
02:19 PM Bug #17160 (Rejected): Wrong exception backtrace
- Looking at web-console test results [1], there is following error reported:
~~~
WebConsole::EvaluatorTest#test_Ev... -
02:38 PM Bug #17161 (Closed): [BUG] object allocation during garbage collection phase
- Hi, I frequently get this error in development or production, at any time. I cannot find a sequence of actions to rep...
-
01:05 PM Bug #17152: Missing TracePoint return event for String#unpack
- This behavior is fixed(alredy backported).
ref: https://bugs.ruby-lang.org/issues/17149
ref: https://github.com/r... -
12:13 PM Revision 27707617 (git): Run a TracePoint test in an insolated process
- to prevent a random failure like
http://ci.rvm.jp/results/trunk-random2@phosphorus-docker/3024287 - 12:07 PM Revision 2b5b9e12 (git): * 2020-09-07 [ci skip]
-
12:06 PM Revision a2f3aaea (git): Fix a random test failure by TracePoint
- A test worker process may already be enabling TracePoint, which results
in changing the insn name in this test.
http... -
11:08 AM Revision 2b07b24b (git): Added `rb_random_base_init`
- To enclose the initialization of Random::Base part.
-
11:08 AM Revision 49240112 (git): Added WITH_REAL macros
- Added `WITH_REAL` versions to `RB_RANDOM_INTERFACE` macros. Also
these macros including "without real" versions no l... -
11:08 AM Revision d6ec0ef5 (git): Added `get_real` interface
-
11:08 AM Revision c449b9b0 (git): Added rb_int_pair_to_real
-
11:08 AM Revision af5e87ab (git): separate rb_random_t
- * random.c: separate abstract rb_random_t and rb_random_mt_t for
Mersenne Twister implementation.
* include/ruby/r... -
11:08 AM Revision f4d52739 (git): Random::Base
- * random.c (InitVM_Random): introduce abstract super class
Random::Base. -
10:02 AM Revision 19917d45 (git): .github: try GitHub Container Registry
- It is natural for a CI running on GitHub to use GitHub's facility.
See also https://github.blog/2020-09-01-introduci... -
04:36 AM Feature #17159: extend `define_method` for Ractor
- Yes, I mean most of case (2) can be replaced with `eval` and proposed changes.
-
02:39 AM Feature #17159: extend `define_method` for Ractor
- Just a comment. In general,
```ruby
i = 0
define_method("foo#{i}"){ i }
```
and
```ruby
i = 0
eval("def foo#{i} #... -
01:49 AM Feature #17159 (Open): extend `define_method` for Ractor
- Ractor prohibits use of non-isolated `Proc`s.
Non-isolated example is here:
```ruby
s = "foo"
pr = Proc.new{ ... -
04:29 AM Feature #17157 (Closed): Remove `ruby -T`
- Applied in changeset commit:git|0dbf6e46fb88a1c8c48ce5f67ac881a77de76526.
----------
[Feature #17157] removed -T com... - 04:29 AM Revision 17a27060 (git): * 2020-09-07 [ci skip]
-
04:12 AM Feature #17148: stdbuf(1) support
- なるほど、そんなやり方が……。
それだと stdbuf の有無など環境の差異を気にしなくて良さそうですね。 -
01:41 AM Feature #17147: New method to get frozen strings from String objects
- Thank you for the beedbacks! I missed considering about `String#-@` method. It looks worth to try, so I'll evaluate t...
09/06/2020
-
07:29 PM Bug #17158 (Closed): Ractor Segfault when using shell and puts
- Here is my example repo:
https://github.com/schneems/ractor_shell_bug_reproduction
This is the commit of Ruby I... -
03:59 PM Revision 0dbf6e46 (git): [Feature #17157] removed -T command line option
-
03:43 PM Feature #17147: New method to get frozen strings from String objects
- > Not also sure if String#-@ saves the OP’s situation, though
`String#-@` doesn't as it's too late (the string was... -
12:22 PM Bug #17152: Missing TracePoint return event for String#unpack
- Hi, cfis (Charlie Savage) .
you expected `return` like this?
```
47435362097880:112480.769196 line # bu... -
10:12 AM Feature #17157 (Closed): Remove `ruby -T`
- Warning says that it will be removed in Ruby 3.0.
```
% ruby -T1 -e ''
ruby: warning: ruby -T will be removed i... - 10:11 AM Revision b22b3f03 (git): Increase timeout for GitHub Actions.
-
10:05 AM Revision c19f8f62 (git): Add `*.md` to doc/.document [ci skip]
-
04:57 AM Revision 369cfabd (git): Make it possible to dump and load an exception object
- A backtrace object in an exception had never supported marshalling
correctly: `Marshal.load(Marshal.dump(exc)).backtr... - 03:37 AM Revision c12b2703 (git): Add `RB_` prefix for size_t to number conversion.
-
02:16 AM Bug #17015: RubyVM::AbstractSyntaxTree.parse has the same result on `proc { |a| }` and `proc { |a,| }`
- ruby_2_7 dd4e51d84e01d9c60458dfe19a0b4d4e05b55140 merged revision(s) ff5e66034006a875125581114cce19d46843b32a.
-
02:16 AM Revision dd4e51d8 (git): merge revision(s) ff5e66034006a875125581114cce19d46843b32a: [Backport #17015]
- Added `NODE_SPECIAL_EXCESSIVE_COMMA` info to `ARGS` of
`RubyVM::AbstractSyntaxTree`. -
02:06 AM Bug #17149: Backport 3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7
- ruby_2_7 3fef159f81fad6ffb9af5b60f4c8ec867fdb2391 merged revision(s) 3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7.
-
02:05 AM Revision 3fef159f (git): merge revision(s) 3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7: [Backport #17149]
- Trace :return of builtin methods
using opt_invokebuiltin_delegate_leave insn.
Since Ruby 2.7, :retu... -
01:59 AM Feature #17156 (Open): Refinements per directory tree
- One of the main use case for refinements is to enable extensions to core classes for a given codebase (app or gem) wi...
-
01:56 AM Bug #17141: Crash when parsing malformed input
- ruby_2_7 e778de2c82478dda930cfc8d795ed4e0e60ea775 merged revision(s) 11963da9e8e98821860fbb0c0f2adc118860c814.
-
01:43 AM Bug #17141: Crash when parsing malformed input
- I have just found that the similar testcase was added in https://bugs.ruby-lang.org/issues/16603 and backporting git|...
-
01:30 AM Bug #17141: Crash when parsing malformed input
- Okey, I will add a test for this case into master and backport it to ruby_2_7 with your patch.
Thanks. -
01:55 AM Bug #16603: Passing number or symbol to kwargs splat causes segmentation fualt
- ruby_2_7 e778de2c82478dda930cfc8d795ed4e0e60ea775 merged revision(s) 11963da9e8e98821860fbb0c0f2adc118860c814.
-
01:54 AM Revision e778de2c (git): merge revision(s) 11963da9e8e98821860fbb0c0f2adc118860c814: [Backport #16603] [Backport #17141]
- Check type of empty keyword [Bug #16603]
Co-authored-by: Yusuke Endoh <[email protected]> -
12:55 AM Bug #17144: Tempfile.open { ... } does not unlink the file
- Austin Ziegler wrote on mailing list:
> If we don’t change the behaviour, could we at least modify the documentation...
09/05/2020
- 07:58 PM Revision 40c06e6f (git): Fixed some typos in ractor.md (#3522)
-
06:13 PM Bug #17141: Crash when parsing malformed input
- nagachika (Tomoyuki Chikanaga) wrote in #note-2:
> Hi Jeremy,
> The code around the patch you show is exactly same ... -
11:11 AM Bug #17141: Crash when parsing malformed input
- Hi Jeremy,
The code around the patch you show is exactly same in master and ruby_2_7 branches.
Isn't the patch nece... - 04:59 PM Revision dfefe0e0 (git): * 2020-09-06 [ci skip]
-
04:58 PM Revision 776b3df4 (git): Fix typos [ci skip]
-
02:16 PM Revision 170c7528 (git): common.mk: UNALIGNED_MEMBER_ACCESS needs internal/warnings.h on some platforms
-
02:16 PM Revision dd83d0c5 (git): update-deps: ruby-runner is not a target
-
02:05 PM Feature #17155 (Open): Add a Diggable mixin
- Ruby 2.3 introduced the ```#dig``` method as a general way to access elements in deep structures. Initially it was im...
-
01:18 PM Misc #17154: Update Pathname Documentation to Clarify Expected Behavior
- Oh, and I would be happy to submit the necessary patches if this if a feature that will be accepted.
-
02:29 AM Misc #17154 (Assigned): Update Pathname Documentation to Clarify Expected Behavior
- I would like to suggest adding a sentence to the documentation for [Pathname](https://ruby-doc.org/stdlib-2.7.1/libdo...
-
12:30 PM Bug #17150: Dumping/loading an Exception object dumps core
- https://github.com/ruby/ruby/pull/3521
-
11:49 AM Feature #16461: Proc#using
- I think it would be good to get @headius' feedback on this.
I'd also like to take another detailed look (I won't b... -
11:05 AM Feature #16461: Proc#using
- Disclaimer: I'm a big fan of refinements; they make Ruby more expressive (or chaotic 😉) and allow developers to be mo...
-
10:28 AM Bug #16771: Segmentation fault when inspecting a bound method
- Thank you jeremy for your investigation.
I reverted the commit at 2c9dd060ab487a96e391793bd782cef6fd471b83 according... -
10:26 AM Bug #16771: Segmentation fault when inspecting a bound method
- ruby_2_7 2c9dd060ab487a96e391793bd782cef6fd471b83.
-
10:19 AM Revision 9a1f0240 (git): bump patchlevel to 119
-
10:18 AM Revision 2c9dd060 (git): Revert "Don't display singleton class in Method#inspect unless method defined there"
- [Backport #16771]
This reverts commit 0d24fb774d84d4a99454ce10fd343da00049a588. -
08:34 AM Revision 5c49bb54 (git): Removed useless casts
- 08:21 AM Revision 72757fb5 (git): Fix typo in ractor.md
-
06:31 AM Feature #16786: Light-weight scheduler for improved concurrency.
- Thanks @matz, I'll consider your feedback, and we can make some changes after the next PR is finished.
-
02:54 AM Bug #17149 (Closed): Backport 3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7
-
01:51 AM Feature #17153 (Closed): Add Enumerable#compact_map
-
01:09 AM Feature #17153: Add Enumerable#compact_map
- Oops! I didn't notice that. Thank you for letting me know. Please close this.
sawa (Tsuyoshi Sawada) wrote in #not... -
12:41 AM Feature #17153: Add Enumerable#compact_map
- Hi Ito-san,
This is a duplicate of https://bugs.ruby-lang.org/issues/5663 and https://bugs.ruby-lang.org/issues/1532... -
01:41 AM Feature #17151: Support multiple builtin ruby code for implimatation in Ruby & C
- Beacause, if file can be separeted when number of cases implemented by builtin code in future, readability for code w...
-
01:21 AM Feature #17151: Support multiple builtin ruby code for implimatation in Ruby & C
- Why do they need to be separate files?
-
12:10 AM Feature #17147 (Feedback): New method to get frozen strings from String objects
- Not also sure if String#-@ saves the OP’s situation, though. The method dedups string contents but has nothing to do...
09/04/2020
-
11:28 PM Feature #17153 (Closed): Add Enumerable#compact_map
- I often write code like this (`map`, then `compact`):
``` ruby
nums = [1, 2, 3, 4, 5]
nums.map { |n| n * 10 if n... -
07:25 PM Bug #17152 (Closed): Missing TracePoint return event for String#unpack
- A user reported an incorrect call graph for profiled code from ruby prof. See https://github.com/ruby-prof/ruby-prof/...
-
05:36 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- Every method call in Ruby is a message that is sent. That's why `Object#send(name,...)` exists.
Sure, you are sendi... -
04:45 PM Feature #17151 (Open): Support multiple builtin ruby code for implimatation in Ruby & C
- ## Summrary
Support these multiple builtin code in implimatation in Ruby & C.
```ruby
# excerpt of trueclass.r... - 04:41 PM Revision de30450d (git): Fix typos in Ractor README.
-
03:53 PM Bug #17150 (Closed): Dumping/loading an Exception object dumps core
- During debugging a random core dump of Ractor test, I found an Exception object loaded via marshal seems broken even ...
- 03:42 PM Revision 1c8fe907 (git): * 2020-09-05 [ci skip]
-
03:42 PM Feature #17148: stdbuf(1) support
- バッファリングのモードを直接知る方法ってないですよねぇ。
```diff
diff --git a/io.c b/io.c
index 0d6e2178573..f69aa14934d 100644
--- a/io.c
... -
09:54 AM Feature #17148 (Open): stdbuf(1) support
- # 概要
Ruby インタープリターを stdbuf(1) による stdout/stderr の出力バッファ制御に対応させたい。
# 背景
UNIX のフィルターコマンドの多くは、標準出力の先が端末かどうかによって... -
03:34 PM Revision f943566d (git): break around function definition [ci skip]
-
03:20 PM Bug #17149 (Closed): Backport 3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7
- Since Ruby 2.7.x, builtin methods don't trigger return events in Tracepoint. This issue breaks other debuggers which ...
-
01:20 PM Revision 1c78f5d5 (git): Sort links in NEWS.md by URI [ci skip]
-
01:18 PM Revision eb67c603 (git): Added Symbol#name
- https://bugs.ruby-lang.org/issues/16150#change-87446
-
10:43 AM Feature #17147 (Closed): New method to get frozen strings from String objects
- The feature is provided by `-str`.
-
09:11 AM Feature #17147: New method to get frozen strings from String objects
- @tagomoris I've been advocating for exposing the `fstring` family of function exactly for this. We load a lot of data...
-
07:56 AM Feature #17147: New method to get frozen strings from String objects
- Understand the needs. Not sure if what is needed is actually the concept called “frozen” though.
-
07:39 AM Feature #17147: New method to get frozen strings from String objects
- I don't care of the name of that method, but here's some example if the discussion stops without options:
* String#f... -
07:36 AM Feature #17147 (Feedback): New method to get frozen strings from String objects
- Object deserializer (like JSON, MessagePack) instantiates many String objects (as keys of Hash objects), and many of ...
-
08:25 AM Bug #16651: Extensions Do Not Compile on Mingw64 with mingw32-make
- Ping?
-
07:33 AM Feature #16150: Add a way to request a frozen string from to_s
- I admit `Symbol#name` that returns a frozen string from a symbol. This can be a building block of the proposal.
As a... -
07:29 AM Feature #16650: Ruby 2.6.* and 2.7* no longer compile on latest Mingw64
- Ruby 2.6.5 on gcc 10.2.0 is still broken.
-
07:28 AM Revision d7406ccc (git): Updated dependency
-
06:17 AM Revision d164eef9 (git): Fixed heap-use-after-free on racter
- 05:23 AM Revision fbaab562 (git): lib/ostruct.rb: Revert "To use RuntimeError instead of FrozenError for old ruby versions."
- This reverts commit 4cd1fc8b3559353069860eee90b1b5bade013917.
-
05:18 AM Revision 3b0bcaf2 (git): check multi_ractor mode at main_p
- rb_ractor_main_p() need to access to the ractor pointer in TLS.
However it is slow operation so that we need to skip ... -
03:56 AM Bug #17146: Queue operations are allowed after it is frozen
- It seems "what is freeze mean" discussion.
-
01:52 AM Bug #17146: Queue operations are allowed after it is frozen
- If a Queue cannot push/pop, it is useless. A Queue doesn't have any operations on that would make sense if you canno...
-
12:58 AM Bug #17146: Queue operations are allowed after it is frozen
- > I guess old Thread::Queue implemented in Ruby did not have this bug.
`require "thread"; q=Queue.new.freeze; q.... -
02:55 AM Feature #17145: Ractor-aware `Object#deep_freeze`
- marcandre (Marc-Andre Lafortune) wrote in #note-7:
> I think these objects should stop the propagation. The name `... -
02:46 AM Revision 169b1d1a (git): Initialize loop variables of list_for_each for MS VC
-
01:18 AM Bug #17144: Tempfile.open { ... } does not unlink the file
- Eregon (Benoit Daloze) wrote in #note-9:
> Dan0042 (Daniel DeLorme) wrote in #note-6:
> > -1 for breaking compatibi... -
01:13 AM Feature #16990: Sets: operators compatibility with Array
- mame (Yusuke Endoh) wrote in #note-9:
> I expect that `ary + set` return a Set, not an Array, unless it raises an ex... -
12:25 AM Feature #16990: Sets: operators compatibility with Array
- I expect that `ary + set` return a Set, not an Array, unless it raises an exception.
> Otherwise array += set woul...
09/03/2020
-
11:35 PM Feature #16990: Sets: operators compatibility with Array
- Eregon (Benoit Daloze) wrote in #note-6:
> I don't expect Array "set" operations to magically know about the Set rep... -
11:29 PM Feature #16990: Sets: operators compatibility with Array
- knu (Akinori MUSHA) wrote in #note-4:
> We can probably define Set#to_ary if it's OK, and Array#+ will be able to de... -
02:00 PM Feature #16990: Sets: operators compatibility with Array
- Because Array and Set are fundamentally different, I think ensuring both operands have the same type, explicitly or i...
-
08:50 AM Feature #16990: Sets: operators compatibility with Array
- As for the result type, I think Array operators should return arrays. Otherwise `array += set` would turn the variab...
-
08:47 AM Feature #16990: Sets: operators compatibility with Array
- We can probably define Set#to_ary if it's OK, and Array#+ will be able to deal with a set. Let us think about the do...
-
12:09 AM Feature #16990: Sets: operators compatibility with Array
- Eregon (Benoit Daloze) wrote in #note-2:
> Isn't `[1].to_set + Set[2]` a good workaround here?
Did you mean only ... -
11:09 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- ko1 (Koichi Sasada) wrote in #note-28:
Thanks for all your replies!
> ```ruby
> q = Queue.new
> q.freeze
> q... -
08:26 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- marcandre (Marc-Andre Lafortune) wrote in #note-24:
> I find `Ractor` very promising 🎉
Thanks, I hope so.
> The imp... -
08:18 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- Eregon (Benoit Daloze) wrote in #note-23:
> Here is a problematic case on `master` sharing mutable state via `define_... -
08:14 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- I don't care about the name `recv` and `receive`.
Eregon (Benoit Daloze) wrote in #note-19:
> @ko1, @matz Which o... -
08:04 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- > I feel Ractor#send mutates the Ractor's state and frozen Ractor shouldn't accept any messages.
However, I don't ... -
08:01 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- Eregon (Benoit Daloze) wrote in #note-18:
> @ko1 Can you review these potential performance overheads of adding Ract... -
07:46 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- Sorry I missed your question.
Eregon (Benoit Daloze) wrote in #note-8:
> Instance variables on modules should pro... -
06:50 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- I find `Ractor` very promising 🎉
The impact is severily limited without support for user-based immutable types. Is... -
02:43 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- @mame Regarding OptCarrot, I think having `deep_freeze` would be a great help.
But I wonder, maybe `Object.deep_free... -
02:32 PM Feature #17100: Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- joanbm (Joan Blackmoore) wrote in #note-20:
I'll disregard your offensive comment, I tried to summarize the poll a... -
12:11 PM Feature #17100 (Closed): Ractor: a proposal for a new concurrent abstraction without thread-safety issues
- Applied in changeset commit:git|79df14c04b452411b9d17e26a398e491bca1a811.
----------
Introduce Ractor mechanism for ... -
10:53 PM Bug #17146 (Closed): Queue operations are allowed after it is frozen
- ```
[1] pry(main)> q = Queue.new
=> #<Thread::Queue:0x000056263683aee8>
[2] pry(main)> q.freeze
=> #<Thread::Queu... -
09:44 PM Feature #16989: Sets: need ♥️
- matz (Yukihiro Matsumoto) wrote in #note-17:
> I agree with some of your proposals (#16990, #16991, #16993, #16995).... -
09:44 PM Feature #16989: Sets: need ♥️
- knu (Akinori MUSHA) wrote in #note-18:
> OK, I think it's good for us now to diverge from the original philosophy of... -
07:48 AM Feature #16989: Sets: need ♥️
- OK, I think it's good for us now to diverge from the original philosophy of Set when I first wrote it and pursue the ...
-
01:14 AM Feature #16989: Sets: need ♥️
- I agree with some of your proposals (#16990, #16991, #16993, #16995). I want @knu to work on this. If I missed someth...
-
09:41 PM Revision d4585e74 (git): Avoid potential for rb_raise() while crashing
- rb_obj_raw_info is called while printing out crash messages and
sometimes called during garbage collection. Calling r... -
08:44 PM Feature #17145: Ractor-aware `Object#deep_freeze`
- > I think these objects should stop the propagation. The name make_shareable_via_ractor_by_deep_freezing_what_is_nece...
-
07:39 PM Feature #17145: Ractor-aware `Object#deep_freeze`
- ko1 (Koichi Sasada) wrote in #note-4:
> One concern about the name "freeze" is, what happens on shareable objects on ... -
07:34 PM Feature #17145: Ractor-aware `Object#deep_freeze`
- Eregon (Benoit Daloze) wrote in #note-3:
> A dynamic call to `freeze` causes extra calls
Yes
> and needs check... -
07:27 PM Feature #17145: Ractor-aware `Object#deep_freeze`
- Maybe we should have a method that ensure an object graph is shareable?
Not sure what a good name for that would be ... -
07:20 PM Feature #17145: Ractor-aware `Object#deep_freeze`
- One concern about the name "freeze" is, what happens on shareable objects on Ractors.
For example, Ractor objects ar... -
07:06 PM Feature #17145: Ractor-aware `Object#deep_freeze`
- A dynamic call to `freeze` causes extra calls, and needs checks that it was indeed frozen.
So for efficiency I think... -
06:42 PM Feature #17145 (Rejected): Ractor-aware `Object#deep_freeze`
- I'd like to propose `Object#deep_freeze`:
Freezes recursively the contents of the receiver (by calling `deep_freez... -
07:29 PM Misc #17138: DevelopersMeeting20200925Japan
- * [Feature #17143] Improve support for warning categories (jeremyevans0)
* Warning.warn :category keyword support ... -
09:24 AM Misc #17138: DevelopersMeeting20200925Japan
- * [Bug #17144] Tempfile.open { ... } does not unlink the file (eregon)
* OK to keep the change and make Tempfile.o... - 07:09 PM Revision e0a749c0 (git): * 2020-09-04 [ci skip]
-
07:07 PM Revision 3f922f3b (git): don't use toplevel return
- Toplevel return is supported after Ruby 2.4, so don't use it
for older BASERUBY. -
06:56 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- Dan0042 (Daniel DeLorme) wrote in #note-6:
> -1 for breaking compatibility with no deprecation, just for the sake of... -
03:46 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- > `Tempfile.open{ }` returns nil
I apologize for this brain fart. `Tempfile.open{ }` returns the result of the block... -
03:15 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- If we could allow incompatible changes of Tempfile in 3.0 or later, it is a good chance to reimplement it as a subcla...
-
03:14 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- -1 for breaking compatibility with no deprecation, just for the sake of perceived consistency.
But then again it's... -
01:44 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- It seems hard to deprecate here without changing behavior. Any idea?
OTOH, when an usage relied on the file to still... -
01:15 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- One idea: creating tmpfile library and
Tmpfile.open calls Tempfile.create.
This also resolves an inconsistency be... -
12:58 PM Bug #17144: Tempfile.open { ... } does not unlink the file
- I sympathize with this issue.
I wish Tempfile.open had worked like Tempfile.create from the beginning.
But changi... -
09:32 AM Bug #17144: Tempfile.open { ... } does not unlink the file
- Out of these 2 usages that relied on the file to still exist, 1 was incorrect:
https://github.com/ruby/ruby/blob/e8c3... -
09:21 AM Bug #17144 (Closed): Tempfile.open { ... } does not unlink the file
- ```
ruby -rtempfile -e 'Tempfile.open("txt") { |f| $path = f.path }; p File.exist?($path)'
true
```
but it should... -
04:37 PM Feature #17140: Merge Enumerable#grep(_v) with Enumerable#select/reject
- I imagine that `Set['and', 'the', 'of']` was meant.
-
07:01 AM Feature #17140: Merge Enumerable#grep(_v) with Enumerable#select/reject
- I guess I understand the first example. Just to make sure:
```
[-3, 4, 0, 8.5, 20, 5].select(1..10) #=> [4, 8.5, ... -
02:57 PM Feature #17016: Enumerable#accumulate
- Dan0042 (Daniel DeLorme) wrote in #note-33:
> ... what about `#cumulative` ?
Oh that's interesting! I had leapt ... -
02:26 PM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
- ko1 (Koichi Sasada) wrote in #note-21:
> I found that freezing interpolated strings are help for Ractor programming w... -
12:29 AM Feature #17104: Do not freeze interpolated strings when using frozen-string-literal
- I found that freezing interpolated strings are help for Ractor programming with constants.
```ruby
class C
i =... -
02:08 PM Feature #16992: Sets: officially ordered
- +1 from me. Hash if officially ordered.
Making Set unordered would likely break many things.
In practice I would th... -
02:03 PM Feature #16994: Sets: shorthand for frozen sets of symbols / strings
- Dan0042 (Daniel DeLorme) wrote in #note-3:
> I just thought of something...
> In the same way that `"str".freeze` i... -
03:03 AM Feature #16994: Sets: shorthand for frozen sets of symbols / strings
- I just thought of something...
In the same way that `"str".freeze` is optimized to be deduplicated, `%w[a b].include... -
12:11 PM Revision b52513e2 (git): skip Ractor tests on Compiler tests
- This implementation has memory corruption errors so and
it causes BUG on rare occasions. This commit skips
suspect te... -
12:11 PM Revision 79df14c0 (git): Introduce Ractor mechanism for parallel execution
- This commit introduces Ractor mechanism to run Ruby program in
parallel. See doc/ractor.md for more details about Rac... -
09:51 AM Revision eeb5325d (git): Hoisted out warn_deprecated
-
08:54 AM Revision 705b908f (git): Fix a typo [ci skip]
-
07:49 AM Revision 7b9ef667 (git): Don't call to_s in const_set
- Follow up for 5e16857315bf55307c5fc887ca6f03bfa0630a93. Calling a method
in the middle of const_set adds a way that i... -
06:14 AM Revision 50b18e81 (git): configure: detect that there is no g++
- AC_PROG_CXX checks for several C++ compilers INCLUDING g++. When none
of them were found it sets the CXX variable to... -
03:30 AM Feature #17122 (Closed): Add category to Warning#warn
- https://github.com/ruby/ruby/pull/3505 has been merged. Thank you Eileen!
-
03:06 AM Feature #16786: Light-weight scheduler for improved concurrency.
- Since this thread became long and complex, it was hard for me to grasp the latest proposal. Correct me if I missed so...
-
01:32 AM Feature #16986: Anonymous Struct literal
- One more point: I haven't seen much examples of similar features in other languages. The only suggestion I saw was th...
-
12:04 AM Feature #17143 (Open): Improve support for warning categories
- Support was recently added for Warning.warn to accept a `category` keyword. However, the initial implementation was ...
Also available in: Atom