Project

General

Profile

Activity

From 11/16/2018 to 11/22/2018

11/22/2018

11:56 PM Bug #15333 (Closed): make check fails looking for Bundler 2.0
Just pulled the latest trunk from github. The log from "make check" seems to indicate a bundler 2.0 missing. Using bundler 1.17.1 installed by gem.
ruby -v: ruby 2.6.0dev (2018-11-23 trunk 65931) [x86_64-linux]
making mjit_build_dir...
leam (Leam Hall)
11:31 PM Bug #15332 (Closed): coverage and InstructionSequence regression
With the current head:
```ruby
require 'coverage'
Coverage.start
RubyVM::InstructionSequence.compile("puts 'hi'", 'hello_world.rb').eval
Coverage.result # => {}, should be {'hello_world.rb' => [1]}
```
This is ...
marcandre (Marc-Andre Lafortune)
10:59 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
> holiday where you are
Yes, but I'm more or less not afk now. JFYI, unless I'm 'pinged', I don't receive messages via email even if I 'watch' the thread, which is a change from a few months ago...
I just built from r65930, and it...
MSP-Greg (Greg L)
08:32 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
> > https://bugs.ruby-lang.org/issues/14968#change-75083
>
> Thanks for the reports, I'm trying r65929 to disable non-blocking-by-default
> on Win32. However, this change may expose existing bugs:

Greg: can you try reverting r65...
normalperson (Eric Wong)
08:12 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
> https://bugs.ruby-lang.org/issues/14968#change-75083

Thanks for the reports, I'm trying r65929 to disable non-blocking-by-default
on Win32. However, this change may expose existing bugs:

> Also, some of the TestNetHTTPS tests ...
normalperson (Eric Wong)
03:39 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
Further testing (net, openssl, & socket):
```
1) Error:
TestSocket#test_udp_recv_truncation:
Errno::EMSGSIZE: A message sent on a datagram socket was larger than the internal message buffer or some other network limit, or the buffe...
MSP-Greg (Greg L)
03:15 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
ruby-loco built r65909 green, and failed on r65922 and r65927.
Using the r65927 build locally, test_drb.rb freezes on various tests intermittently:
```
DRbTests::TestDRbAry#test_07_break_18
DRbTests::TestDRbCore#test_07_private_mis...
MSP-Greg (Greg L)
02:29 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
Well, at the same time you seem to have introduced a bug on Windows. As of r65925 on AppVeyor of both mswin and MinGW, MinGW hangs on test-all's test_drbssl, and mswin hangs on some test (it doesn't produce helpful logs).
You can't se...
k0kubun (Takashi Kokubun)
01:07 PM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
Thanks, that's fixed now. k0kubun (Takashi Kokubun)
10:22 AM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
takashikkbn@gmail.com wrote:
> r65922 made Travis x86_64-darwin build fail
> https://travis-ci.org/ruby/ruby/jobs/458319172. Could you take
> a look at it?

I assume below failure is all that is relevant, maybe r65925 fixes it.

...
normalperson (Eric Wong)
09:44 AM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
r65922 made Travis x86_64-darwin build fail https://travis-ci.org/ruby/ruby/jobs/458319172. Could you take a look at it?
~~~
1) Failure:
TestSocket_BasicSocket#test_read_write_nonblock [/Users/travis/build/ruby/ruby/test/socket/te...
k0kubun (Takashi Kokubun)
09:04 AM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
ko1@atdot.net wrote:
> Honestly speaking, we are not sure we can introduce it into
> Ruby 2.6 (incompatibility, stability and so on).

Understood, but all sockets in 1.8 relied on non-blocking I/O, too.
Most scalability problems ar...
normalperson (Eric Wong)
08:47 AM Bug #14968 (Closed): [PATCH] io.c: make all pipes nonblocking by default
Applied in changeset trunk|r65922.
----------
io + socket: make pipes and sockets nonblocking by default
All normal Ruby IO methods (IO#read, IO#gets, IO#write, ...) are
all capable of appearing to be "blocking" when presented with a
f...
normalperson (Eric Wong)
06:12 AM Bug #14968: [PATCH] io.c: make all pipes nonblocking by default
Honestly speaking, we are not sure we can introduce it into Ruby 2.6 (incompatibility, stability and so on).
So please commit it and let's try it.
If we find troubles we can't solve, we may revert them.
Thanks,
Koichi
ko1 (Koichi Sasada)
10:44 PM Revision 8a233ea6 (git): io.c: revalidate fptr->fd after rb_io_wait_readable
fptr->fd may become -1 while GVL is released in
rb_wait_for_single_fd, so we must check it after reacquiring
GVL. This should avoid EBADF errors exposed by making pipes
non-blocking by default:
http://ci.rvm.jp/results/trunk-test@ruby-...
Eric Wong
10:41 PM Feature #15301: Symbol#call, returning method bound with arguments
Interesting idea of partial evaluation, but `call` is too generic, and could cause confusion. I am not positive about the expression.
Matz.
matz (Yukihiro Matsumoto)
10:39 PM Feature #15302: Proc#with and Proc#by, for partial function application and currying
This kind of partial evaluation is an interesting idea, but as a non-native speaker, I wonder those words do not cause confusion which works which way? At least I was confused.
Matz.
matz (Yukihiro Matsumoto)
10:36 PM Feature #15286 (Rejected): Proposal: Add Kernel.#expand(*args)
I am against the idea for some reasons:
* I don't think `expand` is the right name for the behavior
* meta-programming is too much for this half-baked substitute for #15236
Regarding #15236, we are waiting for the time when our re...
matz (Yukihiro Matsumoto)
10:29 PM Feature #15231: Remove `Object#=~`
I vote for the proposed change. Let's give deprecation warning first. I don't think we need to remove `!~` from `Kernel`.
Matz.
matz (Yukihiro Matsumoto)
10:06 PM Feature #15331 (Closed): [PATCH] Faster hashing for short string literals
## Background
It's common for applications to use string literals as hash keys, especially
for applications that work with YAML or JSON:
```
paylod['name']
```
At the moment (r65895), hash lookups using a string key is about ...
alanwu (Alan Wu)
08:02 PM Revision fc0a92ab (git): * 2018-11-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:02 PM Revision 0698c496 (git): socket: disable nonblocking-by-default on win32
Perhaps this fixes test failures reported by Greg and k0kubun.
However, the failure of certain tests to handle non-blocking I/O
seems to indicate pre-existing problems on win32 platforms.
Somebody knowledgeable about win32 should be abl...
Eric Wong
05:51 PM Feature #11689: Add methods allow us to get visibility from Method and UnboundMethod object.
I mean, as seen in yui-knk's example with `pry`, I think it's helpful to be able to essentially do `send("#{method.visibility}_instance_methods")`. I'm not picky on the name though if there is something better than visibility.
But I t...
MikeVastola (Mike Vastola)
07:59 AM Feature #11689: Add methods allow us to get visibility from Method and UnboundMethod object.
The proposal sounds nice, but I am not fully satisfied with the term **visibility**. So how about adding `public?`, `private?` and `protected?` methods instead?
Matz.
matz (Yukihiro Matsumoto)
05:49 PM Bug #15313: [PATCH] Let debuggers know when a tail call happens
I noticed that the original patch doesn't compile with GCC.
-Werror=declaration-after-statement doesn't seem to have any effect on Clang: https://godbolt.org/z/8Qykk4 (switch to gcc to see it fail to compile. It compiles on Clang)
seem...
alanwu (Alan Wu)
05:13 PM Bug #15324: Dir.home test doesn't match actual Ruby or system behaviour
I'm mistaken. Windows 10 (Appveyor?) will process a plain '~'
The test should pass with:
```ruby
if windows?
assert_equal(File.expand_path("~"), Dir.home(user))
else
assert_equal(File.expa...
MSP-Greg (Greg L)
04:49 PM Bug #15324: Dir.home test doesn't match actual Ruby or system behaviour
@naruse
Re r65926, I believe Windows has never processed '~'. Also, Window doesn't natively have ENV['USER'], but Ruby sets it. Regardless, the revised test fails...
Thanks, Greg
MSP-Greg (Greg L)
10:43 AM Bug #15324 (Closed): Dir.home test doesn't match actual Ruby or system behaviour
Applied in changeset trunk|r65926.
----------
Use File.expand_path("~username") instead of ENV["HOME"]
File.expand_path("~username") uses getpwnam() independently from
Dir.home. [Bug #15324]
From: Chris Seaton <chris@chrisseaton.com>
naruse (Yui NARUSE)
03:40 PM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
normalperson (Eric Wong) wrote:
>
> ...
Nice! Now it works. Moreover, the example above was extracted from a bigger one example for a common web scenario: "dumb" http server which accepts clients requests to the queue in a native thr...
dm1try (Dmitry Dedov)
10:42 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
> > I've just tested this branch(`osx/kqueue`). It looks like
> > `sleep` does not work as expected(it blocks forever) inside
> > light thread if some blocking queue is used, see ex:

> I think you also need to join thread::Light to...
normalperson (Eric Wong)
02:22 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
me@dmitry.it wrote:
> @normalperson thank you for your work!

You're welcome.

> I've just tested this branch(`osx/kqueue`). It looks like `sleep` does not work as expected(it blocks forever) inside light thread if some blocking qu...
normalperson (Eric Wong)
01:28 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
@normalperson thank you for your work!
normalperson (Eric Wong) wrote:
> https://80x24.org/ruby.git thread-light-r65903
> ...
I've just tested this branch(`osx/kqueue`). It looks like `sleep` does not work as expected(it blocks f...
dm1try (Dmitry Dedov)
03:11 PM Bug #15244: Method #extname return empty string if filename is dot ('.')
Still present. TiSer (Sergey Ti)
03:04 PM Feature #14982: Improve namespace system in ruby to avoiding top-level names chaos
I'd like to show something I've been working on for the last few months. It's called Modulation, a small (less than 300 LOC) gem providing an alternative way to manage dependencies in Ruby applications. Modulation provides complete isola... ciconia (Sharon Rosner)
02:17 PM Bug #15328: mjit_worker.c fails to build
Thx, testing with r65928, I got past that point. vo.x (Vit Ondruch)
07:58 AM Bug #15328 (Closed): mjit_worker.c fails to build
nobu (Nobuyoshi Nakada)
01:29 PM Revision 2751b536 (git): mjit.c: avoid running copy job handler after ISeq GC
like this http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1471633
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
12:59 PM Bug #15329: Native implementation of coroutines - segfault
I'll let you know if I find something useful. Thanks ahorek (Pavel Rosický)
11:48 AM Bug #15329: Native implementation of coroutines - segfault
I only experience crash with -O3, I think it's an alignment issue. I am going to look into it more tomorrow, right now I wouldn't spend too much time on this until I investigate alignment issues. Thanks for your continued reports and help. ioquatix (Samuel Williams)
10:16 AM Bug #15329: Native implementation of coroutines - segfault
```
rvm install ruby-head --disable-binary -- --enable-shared CC=clang
```
also tested with gcc-8 (Ubuntu 8.1.0-5ubuntu1~14.04) 8.1.0 - exactly the same error
passing -O0 debugflags=-ggdb3" makes no change
for comparsion
```
rvm...
ahorek (Pavel Rosický)
06:32 AM Bug #15329: Native implementation of coroutines - segfault
Also, on gcc, can you please try:
```
./configure optflags="-O0" debugflags="-ggdb3" && mingw32-make
```
See if that still has crash when running tests.
ioquatix (Samuel Williams)
06:30 AM Bug #15329: Native implementation of coroutines - segfault
Based on all the evidence, I think it's compiler bug.
Do you mind testing with clang? It will help to support this hypothesis if it doesn't crash and give me a better idea of what to check next.
ioquatix (Samuel Williams)
02:21 AM Bug #15329: Native implementation of coroutines - segfault
You need to use debugger to get stack trace.
Here is an example of running it in GDB to get stack trace:
```
(gdb) run --disable-gems -I. -I../lib -I../test/lib ../test/ruby/test_enumerator.rb
Starting program: C:\msys64\home\sam...
ioquatix (Samuel Williams)
02:09 AM Bug #15329: Native implementation of coroutines - segfault
the same error
```
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems -r./x86_64-linux-fake ./tool/rbinstall.rb --make="make" --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --data-mode=0...
ahorek (Pavel Rosický)
01:55 AM Bug #15329: Native implementation of coroutines - segfault
Native fiber implementation is all about speed and consistent interface across all supported platforms. It's good to hear there is speed improvement on WSL with native fiber. It also looks like it's a little bit faster than CreateFiber W... ioquatix (Samuel Williams)
01:28 AM Bug #15329: Native implementation of coroutines - segfault
hmm, it has something to do with rvm...
I've tried to build trunk manually and it works
I double checked a few commits before
https://github.com/ruby/ruby/commit/07a324a0f6464f31765ee4bc5cfc23a99d426705
and there's no segfault if...
ahorek (Pavel Rosický)
11:03 AM Revision 69c59f4f (git): Wait accept is ready also on Solaris
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11x/ruby-trunk/log/20181121T212405Z.diff.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
10:43 AM Revision 4e1ee665 (git): Use File.expand_path("~username") instead of ENV["HOME"]
File.expand_path("~username") uses getpwnam() independently from
Dir.home. [Bug #15324]
From: Chris Seaton <chris@chrisseaton.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
10:13 AM Revision 0bd8193e (git): ext/socket/init.c (rsock_socket0): non-blocking for non-SOCK_NONBLOCK
We need to make sockets non-blocking for systems without
SOCK_CLOEXEC/SOCK_NONBLOCK macros at all.
[ruby-core:89965] [Bug #14968]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
09:18 AM Bug #15285 (Closed): lambda return behavior regression from #14639
Applied in changeset trunk|r65923.
----------
Revert r63030
* array.c (rb_ary_collect): no longer splat sole array for lambda.
[ruby-core:89734] [Bug #15285]
nobu (Nobuyoshi Nakada)
09:18 AM Revision 31649a24 (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:18 AM Revision b309975a (git): Revert r63030
* array.c (rb_ary_collect): no longer splat sole array for lambda.
[ruby-core:89734] [Bug #15285]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
09:00 AM Feature #12698: Method to delete a substring by regex match
What about making the replacement of sub/gsub optional? (`str.gsub(/re/, repl='')`)
`sub` here might be considered as short for "subtract". 😆
knu (Akinori MUSHA)
08:46 AM Revision 6a65f2b1 (git): io + socket: make pipes and sockets nonblocking by default
All normal Ruby IO methods (IO#read, IO#gets, IO#write, ...) are
all capable of appearing to be "blocking" when presented with a
file description with the O_NONBLOCK flag set; so there is
little risk of incompatibility within Ruby-using ...
Eric Wong
08:46 AM Revision b009de13 (git): configure.ac: support 32-bit builds on x86-64 systems
Because RAM is still expensive :<
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
08:29 AM Feature #15327 (Closed): Proposal: Enable refinements to `#respond_to?`
Applied in changeset trunk|r65920.
----------
Enable refinements at Object#respond_to?
[Feature #15327] [Fix GH-2020]
From: osyo-manga <manga.osyo@gmail.com>
nobu (Nobuyoshi Nakada)
06:25 AM Feature #15327: Proposal: Enable refinements to `#respond_to?`
`defined?(obj.method)` should work. nobu (Nobuyoshi Nakada)
08:29 AM Revision 16a642c3 (git): Enable refinements at Object#respond_to?
[Feature #15327] [Fix GH-2020]
From: osyo-manga <manga.osyo@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
08:24 AM Bug #15114: Ruby で定義したメソッドに `&:hoge` を渡しても refinements が有効にならない
キャッシュ化を無効化していない場合は `test_to_proc_arg_with_refinements_override` で落ちるはずです。
後ほどこちらでも確認してみます。
osyo (manga osyo)
07:34 AM Bug #15114: Ruby で定義したメソッドに `&:hoge` を渡しても refinements が有効にならない
キャッシュ化を無効にしなくてもテストは通るようですが、これはテストが意図したとおりになっていないということでしょうか。 nobu (Nobuyoshi Nakada)
08:21 AM Feature #15317: How to deal with obsolete property values in Unicode 11.0.0
duerst (Martin Dürst) wrote:
> duerst (Martin Dürst) wrote:
> ...
`/\p{Grapheme_Cluster_Break=E_Modifier}/` is specially introduced for `/\X/`.
But the source of \X, Unicode Text Segmentation (https://unicode.org/reports/tr29/) but wh...
naruse (Yui NARUSE)
07:54 AM Feature #15317: How to deal with obsolete property values in Unicode 11.0.0
The opinions at the committer meeting were tending towards producing an error or a warning, because this would make it possible to find places that need to be rewritten to produce whatever may have been the desired result.
The discuss...
duerst (Martin Dürst)
07:51 AM Feature #15317: How to deal with obsolete property values in Unicode 11.0.0
duerst (Martin Dürst) wrote:
> - Hiragana_or_Katakana is an old obsolete script property, which currently leads to an error with `'abc' =~ /\p{hiragara_or_katakana}/'`
A more recent example: `'abc' =~ /\p{Grapheme_Cluster_Break=E_M...
duerst (Martin Dürst)
08:17 AM Bug #15130 (Closed): Nested Timeouts hang on cygwin
First, I have good news. This error doesn't occur anymore. I discovered this yesterday when I was preparing to apply your third patch, and today I was able to confirm that it also applies without any of the patches you sent, on trunk. I ... duerst (Martin Dürst)
08:04 AM Feature #15289: Accept "target" keyword on `TracePoint#enable`
I got Matz's approval.
I'll implement it and commit soon before ruby 2.6 rc1.
Now, I finished most of features, except handling at exception.
ko1 (Koichi Sasada)
08:02 AM Feature #15287: New TracePoint events to support loading features
I got Matz's approval except naming "loaded" because the name "loaded" can be after `require/load`. This proposal is just after compiling (iseq genration) and just before running loading code.
Other possibility:
* `iseq_generated` (i...
ko1 (Koichi Sasada)
07:53 AM Feature #15326 (Closed): Proposal: Enable refinements to `#public_send`
Applied in changeset trunk|r65919.
----------
Enable refinements to public_send.
[Feature #15326] [Fix GH-2019]
From: manga_osyo <manga.osyo@gmail.com>
nobu (Nobuyoshi Nakada)
07:53 AM Revision 633fef6d (git): Enable refinements to public_send.
[Feature #15326] [Fix GH-2019]
From: manga_osyo <manga.osyo@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
07:36 AM Feature #15144: Enumerator#chain
We got Matz's approval for adding Enumerable#chain (instead of Enumerator#chain) and Enumerator#+. knu (Akinori MUSHA)
06:09 AM Bug #15319 (Closed): Since r65735, tool/mjit_archflag.sh related error on Solaris 10
Applied in changeset trunk|r65918.
----------
mjit_archflag.sh: fix bare word in the header
[ruby-dev:50674] [Bug #15319]
nobu (Nobuyoshi Nakada)
06:09 AM Revision 8a15e080 (git): mjit_archflag.sh: fix bare word in the header
[ruby-dev:50674] [Bug #15319]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:08 AM Revision 1d5b52c3 (git): .gitignore: add mjit_build_dir.c [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
06:08 AM Revision 15e37da6 (git): .gitignore: add .time under coroutine [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
06:08 AM Revision a3bf7a19 (git): .gitignore: revert r65834 partially [ci skip]
and exclude under coroutine only.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
znz (Kazuhiro NISHIYAMA)
06:01 AM Feature #15000: Prevent to initialize MonitorMixin twice
How about checking owner object?
```diff
diff --git a/lib/monitor.rb b/lib/monitor.rb
index 288ed755ea..1a17e9bc7d 100644
--- a/lib/monitor.rb
+++ b/lib/monitor.rb
@@ -251,9 +251,13 @@ def initialize(*args)
# Initializes the ...
znz (Kazuhiro NISHIYAMA)
05:51 AM Feature #6284 (Closed): Add composition for procs
Applied in changeset trunk|r65911.
----------
proc.c: Implement Proc#* for Proc composition
* proc.c (proc_compose): Implement Proc#* for Proc composition, enabling
composition of Procs and Methods. [Feature #6284]
* test/ruby/test_...
nobu (Nobuyoshi Nakada)
05:51 AM Revision c71cc2db (git): Proc#<< and Proc#>>
[Feature #6284]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
05:51 AM Revision 3b7b7065 (git): proc.c: Support any callable when composing Procs
* proc.c (proc_compose): support any object with a call method rather
than supporting only procs. [Feature #6284]
* proc.c (compose): use the function call on the given object rather
than rb_proc_call_with_block in order to support ...
nobu (Nobuyoshi Nakada)
05:51 AM Revision 4eaf22cc (git): proc.c: Implement Method#* for Method composition
* proc.c (rb_method_compose): Implement Method#* for Method composition,
which delegates to Proc#*.
* test/ruby/test_method.rb: Add test cases for Method composition.
From: Paul Mucur <mudge@mudge.name>
git-svn-id: svn+ssh://ci.ruby...
nobu (Nobuyoshi Nakada)
05:51 AM Revision a43e967b (git): proc.c: Implement Proc#* for Proc composition
* proc.c (proc_compose): Implement Proc#* for Proc composition, enabling
composition of Procs and Methods. [Feature #6284]
* test/ruby/test_proc.rb: Add test cases for Proc composition.
From: Paul Mucur <mudge@mudge.name>
git-svn-id...
nobu (Nobuyoshi Nakada)
05:40 AM Feature #15330: autoload_relative
I do not have much to add to autoload_relative as such, although I would like to
mention that, similar to require_relative, the shorter variants are easier to
write - e. g. "require 'path'" versus "require_relative 'path'"; similar to...
shevegen (Robert A. Heiler)
04:53 AM Bug #15322: Time.strptime does not support %3N, %6N, %9N
You can commit it but ", default is 9 digits " should also be removed. naruse (Yui NARUSE)
04:27 AM Bug #6234 (Closed): Incomplete code in ossl_pkey_ec.c
The comment has been already removed. mame (Yusuke Endoh)
04:17 AM Bug #6215 (Rejected): print "#{RUBY_PATCHLEVEL.slice(2,3)}\n" results in crash
Closing. Please reopen if anyone could reproduce the bug. mame (Yusuke Endoh)
03:39 AM Revision 65525727 (git): Revert "test_gem_remote_fetcher.rb: give up testing MJIT here"
This reverts commit d12bcfc186f2aea5e83f2f59716958ea12b5c937.
pause on --jit-wait looks not working... I'll fix that first.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
02:17 AM Revision 38f7bb48 (git): Use VirtualAlloc/VirtualProtect/VirtualFree for windows stack allocation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
01:26 AM Misc #15229: DevelopersMeeting20181122Japan
* [Bug #6087] How should inherited methods deal with return values of their own subclass?
* 6 years ago, matz decided that `class A < Array; end; A.new.flatten.class #=> A in 2.X, Array in 3.0`. Just confirm: has the decision been st...
mame (Yusuke Endoh)
12:46 AM Misc #15007: Let all Init_xxx and extension APIs frequently called from init code paths be considered cold
ko1 (Koichi Sasada) wrote:
> > Does that seem reasonable as a unit of work to you?
> ...
I added some investigation and conclusions with gcc and clang to the reduced scope PR https://github.com/ruby/ruby/pull/2005
methodmissing (Lourens Naudé)
12:38 AM Bug #595: Fiber ignores ensure clause
In a GC language, it's impossible to ensure this, unless you want the GC to invoke some functionality.
I suggest adding something like `Fiber#stop` which causes internally `Fiber#resume` to raise exception.
It should be up to user ...
ioquatix (Samuel Williams)

11/21/2018

11:58 PM Bug #15313: [PATCH] Let debuggers know when a tail call happens
Yes if the return events can fire as usual even when tail calls happen it would be perfect and would fix #15303.
I don't see a way to fire the return events in the normal order without extra allocations, though. Maybe it's possible?
...
alanwu (Alan Wu)
07:05 PM Bug #15313: [PATCH] Let debuggers know when a tail call happens
fix #15303 (invoke return event) doesn't solve it?
BTW, if you provide an API, sample code will help us to understand.
ko1 (Koichi Sasada)
11:44 PM Misc #15229: DevelopersMeeting20181122Japan
* [Feature #15330] Proposal: autoload_relative (marcandre)
* This feature is actually more useful than `autoload` and should be added to 2.6
marcandre (Marc-Andre Lafortune)
01:44 PM Misc #15229: DevelopersMeeting20181122Japan
* [Feature #15327] Proposal: Enable refinements to `#respond_to?`
* [Feature #15326] Proposal: Enable refinements to `#public_send`
* [Feature #15114] Symbol#to_proc does not work with refinements?
* I want to more refinements!
osyo (manga osyo)
10:03 AM Misc #15229: DevelopersMeeting20181122Japan
* [Feature #10548] remove callcc (Callcc is now going obsoleted. Please use Fiber.) (ioquatix)
* It's unofficially deprecated, unsupported in most implementations of Ruby, and not used very much. Do you think it's a good idea to drop ...
ioquatix (Samuel Williams)
11:43 PM Feature #15330 (Assigned): autoload_relative
I'd like to propose a way to autoload a constant using a relative path.
It could look like:
```
autoload_relative :MyConst, 'models/my_const'
```
My proposal raises two questions:
1) what's the future of `autoload`?
I be...
marcandre (Marc-Andre Lafortune)
11:36 PM Bug #6057 (Closed): URI - Nonsensical Behavior
This ticket was duplicated by ##10075, and that ticket has been already closed with documentation improvement. So I'm closing this. mame (Yusuke Endoh)
10:44 PM Revision e7d919d2 (git): * configure.ac: On AIX, LDFLAGS must be after -L../.. in TRY_LINK,
not to refer to a system-installed libruby-static.a
when configuring the ext libraries
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Rei Odaira
10:30 PM Bug #15329: Native implementation of coroutines - segfault
Interesting, I did some research about WSL, apparently it can run unmodified binaries from Linux.
I checked the configure log and it says
```
checking native coroutine implementation for x86_64-linux... amd64
```
Do you mind ...
ioquatix (Samuel Williams)
08:57 PM Bug #15329: Native implementation of coroutines - segfault
Sure, could you give me a hint how to get it? Unfortunatelly it isn't present in any of standard build logs... ahorek (Pavel Rosický)
08:43 PM Bug #15329: Native implementation of coroutines - segfault
I need stack trace can you please try to get it for me? ioquatix (Samuel Williams)
06:54 PM Bug #15329 (Closed): Native implementation of coroutines - segfault
Hi, after https://github.com/ruby/ruby/commit/07a324a0f6464f31765ee4bc5cfc23a99d426705 issue #14739 was merged I'm getting a segfault
uname -a (WSL)
```
Linux DESKTOP-2POPPQP 4.4.0-17134-Microsoft #345-Microsoft Wed Sep 19 17:47:00 ...
ahorek (Pavel Rosický)
09:17 PM Feature #10548: remove callcc (Callcc is now going obsoleted. Please use Fiber.)
Since this may be discussed in the next upcoming developer meeting, perhaps
callcc could be put into a standalone gem, if it is removed? Just in the event
that some people may want to keep it, could install it if they want to (a bit
l...
shevegen (Robert A. Heiler)
08:39 PM Revision 7028d5b0 (git): * 2018-11-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:39 PM Revision 33853957 (git): errno.h must be included after config.h because config.h might define
_REENTRANT, _THREAD_SAFE, etc., which affect how errno is defined
on some architectures
* ext/openssl/ossl.h: include errno.h after ruby.h
* include/ruby/io.h: include errno.h after ruby/config.h
git-svn-id: svn+ssh://ci.ruby-lang.org...
Rei Odaira
05:29 PM Bug #15328 (Closed): mjit_worker.c fails to build
njti_worker.c fails to build with r65905:
~~~
---
... snip ...
Configuration summary for ruby version 2.6.0
* Installation prefix: /usr
* exec prefix: /usr
* arch: x86_64-linux
* site arch...
vo.x (Vit Ondruch)
04:44 PM Bug #15319 (Open): Since r65735, tool/mjit_archflag.sh related error on Solaris 10
r65902にて、シェルのエラーは出なくなったのですが、mjit_worker.cのコンパイルエラーは出続けています。
~~~
gcc -O -m64 -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -DRUBY_DEVEL=1 -fvisibility=hidden -fexcess-precision=standard -DRUBY_EXPORT -fPIE -DCANONICALIZAT...
ngoto (Naohisa Goto)
09:27 AM Bug #15319 (Closed): Since r65735, tool/mjit_archflag.sh related error on Solaris 10
Applied in changeset trunk|r65902.
----------
Makefile.in: get rid of `local` for Solaris sh
[ruby-dev:50673] [Bug #15319]
nobu (Nobuyoshi Nakada)
03:51 AM Bug #15319: Since r65735, tool/mjit_archflag.sh related error on Solaris 10
Makefile.inの呼び出し側で `indent=$${archs:+' '} define_arch_flags` と渡すのはどうでしょうか。 nobu (Nobuyoshi Nakada)
03:28 AM Bug #15319 (Open): Since r65735, tool/mjit_archflag.sh related error on Solaris 10
r65808 の修正後、別のエラーになりました。(r65894で確認)
抜粋すると、bash等のローカル変数作成用の予約語 `local` がSolarisの/bin/shでは普通のコマンド扱いされています。
~~~
+ local indent=
/bin/sh: local: not found
~~~
tool/mjit_archflag.sh の以下の行が原因と思われます。
~~~
define_arch_flags() {
...
ngoto (Naohisa Goto)
01:33 PM Bug #15325: Ruby 2.5.3 seg fault after find block returns
Something is quite odd. I tried a number of variations:
1. `break build` appears to work with Ruby 2.4.5 and 2.5.3.
1. Instead of `break build`, use `true`: In Ruby 2.5.3, this by itself seems to cause selection to be nil. I got a se...
stanhu (Stan Hu)
01:32 PM Feature #15286: Proposal: Add Kernel.#expand(*args)
Thanks nobu :)
> Interesting feature, but I don't think the name Kernel#expand is acceptable.
Yes, I looking for a more good name.
Are there any good names?
> ...
Yes..., but `binding.expand(:a, :b, :c)` is long...
`Kernel.#ex...
osyo (manga osyo)
01:18 PM Feature #15327 (Closed): Proposal: Enable refinements to `#respond_to?`
Refinements are enabled with various contexts and methods.
* `#send`
* `#__send__`
* Symbol#to_proc
* `#to_s`
* called by `"#{hoge}"`
* `#to_proc`
* call to `&:hoge`
* since ruby 2.6
I want to enable refinements for ...
osyo (manga osyo)
01:16 PM Feature #15326 (Closed): Proposal: Enable refinements to `#public_send`
Sometimes we use `#public_send` rather than` #send` to avoid calling the `private` method.
```ruby
def meth(a)
# Not call private method
# Use #public_send
a.public_send(a.name)
end
```
However, `#send` support to refin...
osyo (manga osyo)
11:33 AM Revision d12bcfc1 (git): test_gem_remote_fetcher.rb: give up testing MJIT here
because we can't configure timeout for remote fetcher.
We've sometimes hit timeout.
https://app.wercker.com/ruby/ruby/runs/mjit-test2/5bf5213c183106002857d355?step=5bf530de63e94600071b0785
https://app.wercker.com/ruby/ruby/runs/mjit-tes...
k0kubun (Takashi Kokubun)
11:03 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
> But I think this is a good change to maintain compatibility
> and avoid inadvertant switching:

Updated patch on top of 2/2 to disable switching properly
with Mutex locked:
https://80x24.org/spew/20181121095520.v4ddgpn6lufbvuvt@w...
normalperson (Eric Wong)
10:20 AM Revision 5335ce0e (git): Merge master branch from rubygems/rubygems upstream.
* Enable Style/MethodDefParentheses in Rubocop
https://github.com/rubygems/rubygems/pull/2478
* Enable Style/MultilineIfThen in Rubocop
https://github.com/rubygems/rubygems/pull/2479
* Fix required_ruby_version with prereleas...
hsbt (Hiroshi SHIBATA)
10:09 AM Revision 2f023c5d (git): Get rid of variable modifiers of BSD make
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
09:27 AM Revision 71ce60ce (git): Makefile.in: get rid of `local` for Solaris sh
[ruby-dev:50673] [Bug #15319]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
09:11 AM Revision e0cd7d65 (git): configure.ac: silence `command -v` outpout
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
08:51 AM Revision 953091a4 (git): char is not unsigned
It seems that decades ago, ruby was written under assumption that
char is unsigned. Which is of course a false assumption. We
need to explicitly store a numeric value into an unsigned char
variable to tell we expect 0..255 value.
git...
shyouhei (Shyouhei Urabe)
08:10 AM Feature #15144: Enumerator#chain
knu (Akinori MUSHA) wrote:
> - The constructor is currently `Enumerator::Chain.new(*enums)` but it should probably be `Enumerator::Chain.new(enums)` to make it extensible to take an enumerable in general, with `itertools.chain.from_iter...
knu (Akinori MUSHA)
06:26 AM Feature #15144: Enumerator#chain
I've written an initial implementation as attached:
- `Enumerator.chain(*enums)` to generate an enumerator chain of `enums`
- `Enumerator#+(other)` to generate an enumerator chain of `[self, other]`
- `Enumerator#chain(*others)` to ...
knu (Akinori MUSHA)
08:06 AM Bug #6038 (Closed): #instance_eval bug
It looks already fixed. I'm unsure if this behavior is guaranteed, though. Whether it is guaranteed or not, I think we can close this issue. mame (Yusuke Endoh)
03:26 AM Revision f1ed4b71 (git): configure.ac: add --disable-fiber-coroutine option
* configure.ac: add --disable-fiber-coroutine option, and disable
it on x86-mingw32 for now.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
03:26 AM Revision 9cda5bba (git): configure.ac: gather preset variables on mingw
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)

11/20/2018

11:16 PM Bug #15325: Ruby 2.5.3 seg fault after find block returns
Note that I've managed to remove the `return` statement inside the `find` block, and this appears to make the seg fault go away.
~~~diff
diff --git a/app/services/ci/register_job_service.rb b/app/services/ci/register_job_service.rb
...
stanhu (Stan Hu)
10:11 PM Bug #15325 (Closed): Ruby 2.5.3 seg fault after find block returns
In https://gitlab.com/gitlab-org/gitlab-ce/blob/233af8f1731734aaad7e5055af39f26c16608649/app/services/ci/register_job_service.rb#L48, we see a repeatable seg fault on both MacOS and Ubuntu with Rails 5.0.7 in a development environment. T... stanhu (Stan Hu)
10:40 PM Revision b755c261 (git): Show function name based on dladdr
If there's no dwarf and symbol table, this will be a last resort.
(mainly on macOS)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
naruse (Yui NARUSE)
10:40 PM Revision 529adb68 (git): Support Universal Binary for macOS
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e naruse (Yui NARUSE)
08:58 PM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
I see that this will probably be discussed in the upcoming developer meeting.
I have no particular pro or con to add to any of the functionality, yet alone
internal code-side of it, but I would like to point out that any API decision...
shevegen (Robert A. Heiler)
03:22 PM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
Koichi Sasada <ko1@atdot.net> wrote:
> On 2018/11/20 17:44, Eric Wong wrote:
> ...
I'm not sure how deadlock detection would work, and I don't
think there is data race there.
Main synchronization should be Queue/SizedQueue (like "m...
normalperson (Eric Wong)
10:22 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
On 2018/11/20 17:44, Eric Wong wrote:
> Mutex and ConditionVariable are NOT scheduling points for
> Thread::Light switching; however they may process signal
> handling and handle I/O dispatch for other native threads.

Why not?
Ho...
ko1 (Koichi Sasada)
08:52 AM Feature #13618: [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
> https://bugs.ruby-lang.org/issues/13618

Updated pull request against r65832 with new name: "Thread::Light"

The following changes since commit 8d9a9aab67d6d517995532737a37379c20dc7f76:

thread_pthread.c (rb_reserved_fd_p): fals...
normalperson (Eric Wong)
08:09 PM Revision 26adef94 (git): Fix indentation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
05:07 PM Feature #15323: [PATCH] Proposal: Add Enumerable#filter_map
I think the functionality, that is to combine .filter (be it select
or reject, is secondary to me), and .map, could be useful. I don't
really need it myself but I find it is not entirely out of the question
that others may find it use...
shevegen (Robert A. Heiler)
02:29 PM Feature #15323: [PATCH] Proposal: Add Enumerable#filter_map
Could't we use reduce for this?
~~~ ruby
(1..10).reduce([]) { |a, i| i.even? ? a << (i * 2) : a }
~~~
tny (Tony Sunny)
11:59 AM Feature #15323 (Closed): [PATCH] Proposal: Add Enumerable#filter_map
This is a proposal for a combined `filter` + `map` method (https://bugs.ruby-lang.org/issues/5663).
This method both filters and maps the elements of an enumerable in just one iteration:
~~~ ruby
(1..10).filter_map { |i| i * 2 if ...
alfonsojimenez (Alfonso Jiménez)
04:10 PM Bug #15324 (Closed): Dir.home test doesn't match actual Ruby or system behaviour
This test currently asserts that `Dir.home(user)` should return ENV['HOME'] if user is the current user.
We don't think this is correct - `Dir.home(user)` uses the expanded value of `~user`, which explictly uses the login database, an...
chrisseaton (Chris Seaton)
04:09 PM Feature #11266: [PATCH] WEBrick: allow subclassing of Response and Request
It has been... a very long time. Nobu, is there something else I can do? julik (Julik Tarkhanov)
03:46 PM Revision 9423a752 (git): * 2018-11-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:46 PM Revision 0017e386 (git): Skip known MJIT random test failures
Let me silence this until I have time to work on them, and make the CI
usable for testing other features.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
02:40 PM Revision c6d0892f (git): configure.ac: disable native-fiber for MinGW
because it had already been SEGV-ed in pull request'S CI
https://ci.appveyor.com/project/ruby/ruby/builds/20427065/job/32oahrcd58b8ubb1
and has never worked on trunk either.
Please make sure it does not SEGVs on your MinGW environment o...
k0kubun (Takashi Kokubun)
02:13 PM Revision 52007cae (git): appveyor.yml: do not undefine everything [ci skip]
https://ci.appveyor.com/project/ruby/ruby/builds/20432223/job/yhwbku8dg2s40e9e
C:/projects/ruby/test/lib/test/unit.rb:1004: warning: undefining `object_id' may cause serious problems
C:/projects/ruby/test/lib/test/unit.rb:1004: warning: ...
k0kubun (Takashi Kokubun)
01:39 PM Revision 3bbc2abc (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65890 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:39 PM Revision aee857e4 (git): appveyor.yml: exclude TestEnumerable.rb on msys2
because it SEGVs on setup like:
https://ci.appveyor.com/project/ruby/ruby/builds/20431217/job/97no5h1gqv50k1vf
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65889 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
12:59 PM Revision 94438bcb (git): appveyor.yml: native-fiber crashes Enumerator
test on MinGW.
https://ci.appveyor.com/project/ruby/ruby/builds/20427662/job/tnnw50opqtj6x0xq
https://ci.appveyor.com/project/ruby/ruby/builds/20429129/job/dpgbx5atkxjiwh7q
To investigate issues, let's try running this without -j.
git-...
k0kubun (Takashi Kokubun)
12:02 PM Revision 91e6ac3d (git): Make coroutine object directory for each arch
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:01 PM Revision f3ba295a (git): test/excludes/_appveyor: exclude AppVeyor killer
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65886 b2dd03c8-39d4-4d8f-98ff-823fe69b080e k0kubun (Takashi Kokubun)
11:59 AM Bug #15304: Package build with extensions is not reproducible
I created the PR https://github.com/rubygems/rubygems/pull/2481 to address these issues. lewo (lewo lewo)
11:45 AM Revision 6f592557 (git): Change ASMEXT to s
By the default of GNU make, .S is used to be compiled with CC, but
we have already used .s as ia64.s, and now coroutine/*/Context.s.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65885 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
11:24 AM Revision 51af9bac (git): Makefile.in: fix Travis i686 build
by r65880
https://travis-ci.org/ruby/ruby/jobs/457384539
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65884 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
11:18 AM Revision d5322084 (git): mjit_worker.c: avoid GC when modifying ISeq
This is hoped to fix the SEGV:
https://app.wercker.com/ruby/ruby/runs/mjit-test1/5bf392cf183106002856c1f0?step=5bf3bddc87436a0006292535
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65883 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
10:51 AM Revision 5fe1ad96 (git): Fix condition
FIBER_USE_NATIVE is always defined as 0 or 1, use `#if` instead of
`#ifdef`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:43 AM Revision be3af57b (git): Make fiber_entry static
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
10:29 AM Revision 973bcc59 (git): Fix typo and make directory
* common.mk (coroutine/amd64/Context.$(OBJEXT)): fix a typo,
$(OBJECT).
* common.mk (coroutine/amd64): recipe to make object directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:22 AM Feature #15317: How to deal with obsolete property values in Unicode 11.0.0
Some pointers obtained from an Unicode-internal discussion:
- All (including past) property values are available from the Relax NG schema for UCD in XML at http://www.unicode.org/reports/tr42/tr42-23.rnc, linked off https://www.unicod...
duerst (Martin Dürst)
10:18 AM Revision 3ccb5b97 (git): Support Visual C++ (mswin)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65879 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:18 AM Revision 1fa02b8d (git): Fix windows builds.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65878 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:18 AM Revision 638be684 (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:18 AM Revision 495dffba (git): GAS style assembly for win64 (mingw).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65876 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:18 AM Revision 5e8a1dad (git): Expose stack functions to coroutine and non-windows implementations.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:18 AM Revision c5d3b83a (git): Fix exposure of stack allocations.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65874 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:18 AM Revision 8b1b056e (git): Use malloc/free for windows stack allocation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:18 AM Revision 0ba0ad8b (git): Fix struct usage.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65872 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 972cc2d5 (git): Fix message result.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65871 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 76c6b6d1 (git): Fix configure.ac typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65870 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 49e92085 (git): Fix line endings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65869 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 0b5e1442 (git): Initial support for x64-mingw32
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65868 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision d97c9280 (git): Better (?) support for Windows TIB.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 904af4ae (git): Be even more specific, for some reason it was selecting amd64 on x64-mingw32.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65866 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 43d7fd09 (git): Limit coroutine implementations to Linux.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65865 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 98e26e96 (git): Tidy up assembly make rule.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65864 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision a2cd16e5 (git): Expose dependency between cont.c and coroutine implementation.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision cdb8f3f9 (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65862 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:17 AM Revision ae3c8c20 (git): Prefer "static inline" to avoid duplicate symbols.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65861 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision a3de4a09 (git): Remove trailing whitespace.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65860 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 5547c65b (git): Rename fiber chain benchmark.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65859 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision a8848860 (git): Restore native non-coroutine code path.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:17 AM Revision 83c84182 (git): Formatting changes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:16 AM Revision 9481461c (git): Ensure start function has correct declaration.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:16 AM Revision 42575570 (git): Try using compiler for assembling.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65855 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:16 AM Revision 11b672f3 (git): Print out what the assembler is doing to figure out why it's not working.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65854 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:16 AM Revision 99346f74 (git): Mark COROUTINE as noreturn.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65853 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:16 AM Revision b58dc42a (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:16 AM Revision 20f1c6c1 (git): Remove `Benchmark` times.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:16 AM Revision 3710dedc (git): Tidy up comments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65850 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:14 AM Revision dba6b87b (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65849 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:14 AM Revision d4a58838 (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65848 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:13 AM Revision 3e9beaf7 (git): Initial effort to support 32-bit Linux.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65847 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:13 AM Revision ff86d1b6 (git): It cannot be const because it is being passed to destructive operation (destroy).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65846 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:13 AM Revision 9a324cf9 (git): Better benchmark name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65845 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:09 AM Revision 3f0ae691 (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65844 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:09 AM Revision 12ae8c08 (git): Fix broken benchmark
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65843 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:06 AM Revision 635dd340 (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
10:06 AM Revision 995f6ee1 (git): Fix code climate cognitive complexity issue
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65841 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
10:06 AM Revision 4aa44a76 (git): Create output directory when assembling file
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65840 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
09:59 AM Revision ec0d3ba1 (git): Restore return value assignment
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65839 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
09:59 AM Revision dc049ad8 (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65838 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:59 AM Revision acd84d32 (git): * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65837 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
09:59 AM Revision 748c497a (git): Rewrite fiber benchmark
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65836 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
09:59 AM Revision 990ddcfc (git): Better support for amd64 platforms
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65835 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
09:59 AM Revision 07a324a0 (git): Native implementation of coroutines to improve performance of fibers
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65834 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Samuel Williams
09:32 AM Bug #15315: ec_switch can still lose interrupts
takashikkbn@gmail.com wrote:
> > 1) will remain dangerous
>
> Is this about Bug #15316?

Partially, yes (sorry, just (mostly) wrapped up Thread::Light
for review on Linux and unlikely to be online much due to
family stuff.
normalperson (Eric Wong)
09:29 AM Revision 27665e51 (git): common.mk: BTESTS to direct tests by btest
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65833 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
09:13 AM Misc #15229: DevelopersMeeting20181122Japan
* [Bug #15285] lambda return behavior regression from #14639 nobu (Nobuyoshi Nakada)
08:52 AM Misc #15229: DevelopersMeeting20181122Japan
> https://bugs.ruby-lang.org/issues/15229

[Feature #13618] Thread::Light for 2.6 [ruby-core:89900]
normalperson (Eric Wong)
08:12 AM Bug #15322 (Closed): Time.strptime does not support %3N, %6N, %9N
~~~
Time.strptime("2018-11-20 17:11:22.123", "%Y-%m-%d %H:%M:%S.%3N")
# => raise ArgumentError: invalid strptime format - `%Y-%m-%d %H:%M:%S.%3N'
Time.strptime("2018-11-20 17:11:22.123456", "%Y-%m-%d %H:%M:%S.%6N")
# => raise Argumen...
okkez (okkez _)
07:31 AM Feature #15321: Update Unicode data to Unicode Version 12.0.0
The announcement for the draft list of emoji candidates is at http://blog.unicode.org/2018/10/draft-candidates-for-emoji-120-beta.html. duerst (Martin Dürst)
07:10 AM Feature #15321: Update Unicode data to Unicode Version 12.0.0
The beta announcement is at http://unicode.org/versions/beta-12.0.0.html, the draft summary is at http://unicode.org/versions/Unicode12.0.0/. A blog entry is at http://blog.unicode.org/2018/11/unicode-120-beta-review.html.
A draft li...
duerst (Martin Dürst)
06:57 AM Feature #15321 (Closed): Update Unicode data to Unicode Version 12.0.0
Unicode Version 12.0.0 will be published in 2019, earlier than Unicode 11.0.0 in 2018. This is an issue to manage updating Ruby to Unicode 12.0.0. Details to follow.
The target version may be Ruby 2.6.1 or 2.7.
duerst (Martin Dürst)
07:27 AM Revision 8d9a9aab (git): thread_pthread.c (rb_reserved_fd_p): false-positive on negative FD
Negative-numbered FDs are never valid FDs on POSIX-like
platforms, and we initialize our self-pipes/eventfd values
to "-1", so stop treating -1 as a reserved FD if our system
is too low on resources to allocate FDs at startup.
git-svn-i...
Eric Wong
06:13 AM Revision 259173cc (git): run single test [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65831 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
05:58 AM Revision b3b82766 (git): vm_insnhelper.c: fix indent [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65830 b2dd03c8-39d4-4d8f-98ff-823fe69b080e shyouhei (Shyouhei Urabe)
05:18 AM Revision 34f3f916 (git): Simply treat IO::WaitReadable just like Errno::EAGAIN
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65829 b2dd03c8-39d4-4d8f-98ff-823fe69b080e U.Nakamura
05:14 AM Feature #15151: String#slice!(0,..) creates a duplicate of original string
ping @nobu chopraanmol1 (Anmol Chopra)
04:51 AM Revision 0deee5c0 (git): vm_insnhelper.c: recv -1 + 3 overflows
Here, recv can be INT2FIX(-1), which is 0xFFFF_FFFFul.
INT2FIX(1) is 3ul. So `recv - 1 + INT2FIX(1)` is:
recv 0xFFFF_FFFFul
recv-1 0xFFFF_FFFEul (note: unsigned)
recv-1+INT2FIX(1) 0x0000_0001ul Here is the overf...
shyouhei (Shyouhei Urabe)
04:07 AM Feature #15000 (Assigned): Prevent to initialize MonitorMixin twice
Reverted r65822 because mon_initialize_spec.rb fails:
```
1)
MonitorMixin#mon_initialize can be called in initialize_copy to get a new M
utex and used with synchronize ERROR
ThreadError: already initialized
/home/...
shugo (Shugo Maeda)
03:02 AM Feature #15000 (Closed): Prevent to initialize MonitorMixin twice
Applied in changeset trunk|r65822.
----------
lib/monitor.rb: prevent to initialize MonitorMixin twice
Suggested by Benoit Daloze. [ruby-core:88504] [Feature #15000]
shugo (Shugo Maeda)
03:56 AM Revision 0dfc5918 (git): revert r65822
Because mon_initialized may be used to re-initialize copied objects intentionally.
mon_initialize_spec.rb fails:
1)
MonitorMixin#mon_initialize can be called in initialize_copy to get a new Mutex and used with synchronize ERROR
ThreadE...
shugo (Shugo Maeda)
03:07 AM Revision 312fc605 (git): rdoc query
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
03:03 AM Revision 1cf0af63 (git): mjit.c: fix typos [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65825 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
03:03 AM Revision aa515c8d (git): Remove unnecessary space
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65824 b2dd03c8-39d4-4d8f-98ff-823fe69b080e znz (Kazuhiro NISHIYAMA)
03:01 AM Revision 9ba7aece (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65823 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:01 AM Revision 8d68f422 (git): lib/monitor.rb: prevent to initialize MonitorMixin twice
Suggested by Benoit Daloze. [ruby-core:88504] [Feature #15000]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65822 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shugo (Shugo Maeda)
02:16 AM Revision 59676f6d (git): revert r65820 and retry assert_finish
From: MSP-Greg <greg.mpls@gmail.com>
https://github.com/ruby/ruby/commit/5187ea768f57315e61486122d688f1992d4cb21f
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
02:13 AM Bug #15318 (Rejected): net/imap socket backward compatibility broken in ruby 2.5+
normalperson (Eric Wong) wrote:
> "Socket.tcp" been part of the public Ruby API for around 10 years
> ...
Agreed.
@sock is a private API and Socket is recommended over TCPSocket, so I wouldn't like to
revert the change.
shugo (Shugo Maeda)
01:28 AM Revision 5187ea76 (git): test_thread.rb: skip test_thread.rb broken for Windows
msys2.
https://ci.appveyor.com/project/ruby/ruby/builds/20419607/job/fuvrfcmrhxr1r1cr
https://ci.appveyor.com/project/ruby/ruby/builds/20395349/job/2nqewb06b5eanwea
https://ci.appveyor.com/project/ruby/ruby/builds/20382452/job/658pvl1cq...
k0kubun (Takashi Kokubun)
01:12 AM Bug #15316: rb_postponed_job_register not thread-safe
> If you can't solve it, can you wait until after the 11/22 developers meeting?
As tracked in [Bug #15320], I succeeded to fix it in r 65817. So, please never mind about that.
http://ci.rvm.jp/results/trunk-mjit-wait@silicon-docker/1...
k0kubun (Takashi Kokubun)
12:50 AM Bug #15310: [PATCH] thread_pthread.c: close race from UBF_TIMER and non-GVL-releasing thread
@normalperson Eric,
> would introduce no portability problems or performance overhead if I'm wrong...
> ...
No idea about performance, but MinGW built & tested fine.
ruby 2.6.0dev (2018-11-20 trunk 65818) [x64-mingw32]
MSP-Greg (Greg L)
12:47 AM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Instead of r65815, please try the latest trunk (r65819). k0kubun (Takashi Kokubun)
12:39 AM Revision d7d0ee10 (git): Check -fcf-protection
* configure.ac: Check if CFLAGS actually includes -fcf-protection
instead of checking if the flag is valid by RUBY_TRY_CFLAGS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65819 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:07 AM Revision b410d321 (git): thread.c: fix obsoleted comment [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65818 b2dd03c8-39d4-4d8f-98ff-823fe69b080e k0kubun (Takashi Kokubun)
12:04 AM Bug #15320 (Closed): IO.popen with MJIT worker thread may deadlock
Applied in changeset trunk|r65817.
----------
process.c: do not try to pause MJIT
while child handler is disabled.
trying to fix [Bug #15320]
k0kubun (Takashi Kokubun)
12:04 AM Revision 3405411c (git): process.c: do not try to pause MJIT
while child handler is disabled.
trying to fix [Bug #15320]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65817 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)

11/19/2018

11:28 PM Revision 95e09343 (git): test_process.rb: Process.daemon seems irrelevant [ci skip]
in the backtrace:
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468677
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
11:06 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Could you try building and running test_jit with r65815? k0kubun (Takashi Kokubun)
11:05 PM Bug #15307 (Closed): TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Applied in changeset trunk|r65815.
----------
configure.ac: avoid crashing MJIT with -fcf-protection
by avoiding using __builtin_longjmp, like r64983.
[Bug #15307]
k0kubun (Takashi Kokubun)
10:29 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Cool, thanks a lot. It looks like a new option of gcc. I reproduced your issue with:
```
./configure CC="gcc-8" CFLAGS="-fcf-protection"
```
I'll think about how to deal with this.
k0kubun (Takashi Kokubun)
02:55 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Just confirmed that removing just `-fcf-protection` from the initial flag set makes the test pass. vo.x (Vit Ondruch)
02:39 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
It seems that `-fcf-protection` makes the difference. IOW this makes the test (specifically testing with test_lambda_longjmp) fail:
~~~
CFLAGS="-fcf-protection" \
CXXFLAGS="-fcf-protection" \
LDFLAGS="" \
FFLAGS="" \
FCFLAGS="" ....
vo.x (Vit Ondruch)
12:02 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
and possibly -fasynchronous-unwind-tables -fstack-clash-protection as well k0kubun (Takashi Kokubun)
12:01 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Could you try eliminating -fstack-protector-strong? k0kubun (Takashi Kokubun)
11:53 AM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
I have tried to reduce the hardening options:
~~~patch
--- /a
+++ /b
@@ -16,12 +16,10 @@
* enable shared libs: yes
* dynamic library ext: so
* CFLAGS: ${optflags} ${debugflags} ${warnflags}
- * LDFLA...
vo.x (Vit Ondruch)
11:05 PM Revision 00fac76e (git): configure.ac: avoid crashing MJIT with -fcf-protection
by avoiding using __builtin_longjmp, like r64983.
[Bug #15307]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
10:41 PM Bug #15285: lambda return behavior regression from #14639
I also ran into this problem in ruby 2.5.3.
This is a little confusing because there are two things being changed here:
1. How arguments are handled in a passed &lambda, which was asked for in #14639
2. How return is handled in a pa...
jhawthorn (John Hawthorn)
10:10 PM Revision 27322735 (git): revert r65807
it didn't work.
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468677
and skips broken tests for now. But this issue should be fixed soon.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65814 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
10:08 PM Bug #15320 (Open): IO.popen with MJIT worker thread may deadlock
k0kubun (Takashi Kokubun)
01:33 PM Bug #15320 (Closed): IO.popen with MJIT worker thread may deadlock
Applied in changeset trunk|r65807.
----------
process.c: do not run signal handler before fork
to prevent from proceeding one for MJIT while it's not safe yet.
By that situation, MJIT worker could be waiting for compiler process foreve...
k0kubun (Takashi Kokubun)
01:02 PM Bug #15320 (Closed): IO.popen with MJIT worker thread may deadlock
In r65785, we added `mjit_pause` on `before_fork_ruby`. We seem to have introduced a few deadlocks by that. This was discussed in https://bugs.ruby-lang.org/issues/15316, but I filed a separate ticket because this issue is independent fr... k0kubun (Takashi Kokubun)
09:33 PM Bug #15310: [PATCH] thread_pthread.c: close race from UBF_TIMER and non-GVL-releasing thread
lars@greiz-reinsdorf.de wrote:
> Do you have an exploit to trigger the described issue?

Not yet, was just thinking about it again, now, though...

> https://bugs.ruby-lang.org/issues/15310#change-74957
normalperson (Eric Wong)
09:11 PM Bug #15310: [PATCH] thread_pthread.c: close race from UBF_TIMER and non-GVL-releasing thread
Do you have an exploit to trigger the described issue?
larskanis (Lars Kanis)
06:42 PM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
karis10@f5foster.com wrote:
> https://bugs.ruby-lang.org/issues/15318

"Socket.tcp" been part of the public Ruby API for around 10 years
already. socksify should be supporting it in addition to TCPSocket;
because there is code whi...
normalperson (Eric Wong)
06:05 PM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
ahorek (Pavel Rosický) wrote:
> It wasn't intentional, but I think you shouldn't depend on TCPSocket anyway.
> ...
One more comment about it if you don't mind. Internal interfaces being created for some reason, and there was a reason t...
karis10 (bug reporter)
04:05 PM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
It wasn't intentional, but I think you shouldn't depend on TCPSocket anyway.
1/ Net::IMAP doesn't expose @socket in a public api
2/ it isn't documented that Net::IMAP will always use TCPSocket
@nobu what's your opinion? we should at...
ahorek (Pavel Rosický)
01:13 PM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
ahorek (Pavel Rosický) wrote:
> ok, IMAP uses Socket.tcp instead of TCPSocket, so if you patch TCPSocket directly it won't work anymore.
> ...
I understand your intentions and don't know what are you going to do next, but it's not a go...
karis10 (bug reporter)
10:52 AM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
ok, IMAP uses Socket.tcp instead of TCPSocket, so if you patch TCPSocket directly it won't work anymore.
the intention was to get rid of Timeout.timeout {} and make these libraries fully async
there are simmilar pending changes for...
ahorek (Pavel Rosický)
08:26 AM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
nobu (Nobuyoshi Nakada) wrote:
> Could you elaborate how it is broken?
Sure.
~~~ ruby
require 'net/imap'
require 'net/pop'
require 'socksify'
Socksify::debug = true
Socksify::proxy('127.0.0.1', 1080) do |_|
# in ruby 2.4...
karis10 (bug reporter)
08:18 AM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
ahorek (Pavel Rosický) wrote:
> https://github.com/ruby/ruby/commit/5bf395f4cbd43bf64abcf6cc19daf834d2a02046#diff-4b4baaf75652a369c39b0b76e81ad54d
> ...
I was talking about this exactly change:
~~~ diff
< @sock = TCPSocket.open...
karis10 (bug reporter)
05:57 AM Bug #15318: net/imap socket backward compatibility broken in ruby 2.5+
https://github.com/ruby/ruby/commit/5bf395f4cbd43bf64abcf6cc19daf834d2a02046#diff-4b4baaf75652a369c39b0b76e81ad54d
Hi, the mentioned change was reverted and never released in any stable version.
ahorek (Pavel Rosický)
02:32 AM Bug #15318 (Feedback): net/imap socket backward compatibility broken in ruby 2.5+
Could you elaborate how it is broken? nobu (Nobuyoshi Nakada)
03:00 PM Revision 797098f8 (git): * 2018-11-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65813 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:00 PM Revision de790435 (git): ruby/ruby.h: void rb_scan_args_verify
* include/ruby/ruby.h (rb_scan_args_verify): void the never used
result.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65812 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
02:21 PM Revision 9c336391 (git): appveyor.yml: separately execute test_bignum
because that may crash worker with -j.
https://ci.appveyor.com/project/ruby/ruby/builds/20403179/job/mkdcb6uy8qn2djgl
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65811 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
02:00 PM Revision b756b25c (git): ruby.c: do not surface MJIT to user
In some places, both JIT and MJIT are being used, but it could be
confusing for new comers. We're not explaining MJIT on NEWS file or release
notes as well. So we consider MJIT as an internal term of implementation
like YARV.
configure....
k0kubun (Takashi Kokubun)
01:48 PM Revision 83aff333 (git): internal.h: resurrect --disable-mjit-support
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e k0kubun (Takashi Kokubun)
01:43 PM Bug #15319 (Closed): Since r65735, tool/mjit_archflag.sh related error on Solaris 10
Applied in changeset trunk|r65808.
----------
fix for Solaris sh
* Makefile.in (mjit_config.h): removed unnecessary assignment.
* tool/mjit_archflag.sh (define_arch_flags): need to quote on
Solaris. [ruby-dev:50669] [Bug #15319]
nobu (Nobuyoshi Nakada)
01:36 PM Bug #15319: Since r65735, tool/mjit_archflag.sh related error on Solaris 10
これでどうでしょうか。
```diff
diff --git a/Makefile.in b/Makefile.in
index f1d5258ad9..b8db70f5c8 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -601,7 +601,7 @@ mjit_config.h:
quote "MJIT_DLDFLAGS MJIT_ARCHFLAG" $(MJIT_DLDFLAGS); \
...
nobu (Nobuyoshi Nakada)
09:44 AM Bug #15319: Since r65735, tool/mjit_archflag.sh related error on Solaris 10
どうやら ` indent=$${archs+ } define_arch_flags; \` の行で/bin/shのエラーが発生しているようです。
つまり `${archs+ }` の閉じ括弧が単体のコマンドとして認識されているようです。
ngoto (Naohisa Goto)
09:35 AM Bug #15319 (Closed): Since r65735, tool/mjit_archflag.sh related error on Solaris 10
r65735以降、手元の Solaris 10 上でのコンパイルがエラーになります。
コンパイラは gcc, Oracle Developer Studio のどちらでもダメでした。
r65738においてのgccでの最後の方のコンパイル時の出力を抜粋すると以下の通りです。
~~~
gcc -O -m64 -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -DRUBY_DEVEL=1 -f...
ngoto (Naohisa Goto)
01:43 PM Revision 3f84ef97 (git): fix for Solaris sh
* Makefile.in (mjit_config.h): removed unnecessary assignment.
* tool/mjit_archflag.sh (define_arch_flags): need to quote on
Solaris. [ruby-dev:50669] [Bug #15319]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65808 b2dd03c8-39d...
nobu (Nobuyoshi Nakada)
01:40 PM Bug #15315: ec_switch can still lose interrupts
> 1) will remain dangerous
Is this about Bug #15316?
k0kubun (Takashi Kokubun)
01:33 PM Revision e205cd80 (git): process.c: do not run signal handler before fork
to prevent from proceeding one for MJIT while it's not safe yet.
By that situation, MJIT worker could be waiting for compiler process forever
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1468033
[Bug #15320]
git-svn-id: svn+ssh:/...
k0kubun (Takashi Kokubun)
01:21 PM Revision 759cfd3b (git): configure.ac: rename extra_warning as extra_warnflags
Adjusted to warnflags variable. This variable will have flags for
warnings, but not a warning itself.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65806 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
10:57 AM Feature #15317: How to deal with obsolete property values in Unicode 11.0.0
shevegen (Robert A. Heiler) wrote:
> Could a warning be issued as well, at the least for a transition period?
I warning might make sense, but then we would get into the question of whether we need a warning for those cases w
here pr...
duerst (Martin Dürst)
10:15 AM Revision 33fed2d0 (git): configure.ac: respect extra_warnflags if given
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65805 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
09:52 AM Revision 72135687 (git): string.c: setbyte silently ignores upper bits
The behaviour of String#setbyte has been depending on the width
of int, which is not portable. Must check explicitly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
09:42 AM Revision d1372430 (git): .travis.yml: do not pass unnecessary warnflags
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
08:57 AM Bug #14998: Race conditions in MonitorMixin when interrupted
Eregon (Benoit Daloze) wrote:
> From https://bugs.ruby-lang.org/issues/14859#note-9
> ...
How about the following code?
```ruby
def wait(timeout = nil)
Thread.handle_interrupt(Exception => :never) do
@monitor.__...
shugo (Shugo Maeda)
08:10 AM Bug #14359 (Closed): IO#ungetbyte integer overflow
Applied in changeset trunk|r65802.
----------
io.c: ungetbyte silently ignores upper bits
The behaviour of IO#ungetbyte has been depending on the width of
Fixnums. Fixnums should be invisible nowadays. It must be a
bug. Fix [Bug #14359]
shyouhei (Shyouhei Urabe)
08:10 AM Revision 412b6b5b (git): io.c: ungetbyte silently ignores upper bits
The behaviour of IO#ungetbyte has been depending on the width of
Fixnums. Fixnums should be invisible nowadays. It must be a
bug. Fix [Bug #14359]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65802 b2dd03c8-39d4-4d8f-98ff-823fe6...
shyouhei (Shyouhei Urabe)
07:00 AM Revision 38adc0c1 (git): _colorize_result_prepare.m4: do not save CONFIGURE_TTY
redirection to a tty, file or pipe is not a permanent status.
`rb_cv_` prefix means that it should be saved/restored across
re-configurations.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65801 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:52 AM Revision 74564fbe (git): Makefile.in: reconfig with the original warnflags
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:52 AM Revision 4863a93d (git): .travis.yml: use dedicated flags
* .travis.yml: use dedicated flags, cflags and others, not to
override optflags, warnflags and debugflags.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65799 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:48 AM Revision 6bdca5d8 (git): array.c: avoid (VALUE)--
This args[1]-- overflows when it is zero. Should do that only
when we can say it is nonzero.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65798 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
05:04 AM Misc #15229: DevelopersMeeting20181122Japan
* [Feature #15317] How to deal with obsolete property values in Unicode 11.0.0
* A clear idea on this is needed to upgrade to Unicode 11.0.0.
* [Feature #13890] Allow a regexp as an argument to 'count', to count more interesting th...
duerst (Martin Dürst)
05:04 AM Revision 1a5b274e (git): .travis.yml: -Wno-unknown-warning-option is needed, too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65797 b2dd03c8-39d4-4d8f-98ff-823fe69b080e shyouhei (Shyouhei Urabe)
04:59 AM Feature #12698: Method to delete a substring by regex match
matz (Yukihiro Matsumoto) wrote:
> I don't think it's worth adding which is easily done by `sub/gsub`.
If put this way, it's easy to agree. But looking at it starting from `String#delete`, it feels annoying that `String#delete` doesn...
duerst (Martin Dürst)
04:25 AM Bug #15280: r65509 - bundler & make install, no CLI
@hsbt
Sorry, I should have added some more info. It's a Windows build, and there are three *.cmd files in bin:
bundle.cmd
bundle_ruby.cmd
bundler.cmd
bundler.cmd which doesn't work, has one 'ruby' line
```
load File.expand_pa...
MSP-Greg (Greg L)
03:22 AM Bug #15280 (Feedback): r65509 - bundler & make install, no CLI
I couldn't reproduce them.
```
~/D/g/b/bundler (master) > ruby -v
ruby 2.6.0dev (2018-11-18 trunk 65790) +JIT [x86_64-darwin18]
~/D/g/b/bundler (master) > bundle version
Bundler version 2.0.0.pre.1 (2018-11-19 commit unknown)
~/D...
hsbt (Hiroshi SHIBATA)
03:08 AM Revision 9f6c0270 (git): .travis.yml: extra CFLAGS to suppress warnings
When CFLAGS is passed on travis, warnflags seems not working.
Let's add them directly to prevent clang form messing up the logs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65796 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
03:01 AM Revision e0dba078 (git): -Wno-unused-value [ci skip]
Without this option clang outputs tons of warnings, which
are annoying. See https://travis-ci.org/ruby/ruby/jobs/456553420#L1817
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
02:58 AM Revision 45a89c0a (git): sort lines [ci skip]
... for aethetic reasons.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65794 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
02:43 AM Feature #15286: Proposal: Add Kernel.#expand(*args)
And, what do you expect for keywords, e.g., `__FILE__`, `__LINE__`, `self`, `super`, and etc? nobu (Nobuyoshi Nakada)
02:20 AM Feature #15286: Proposal: Add Kernel.#expand(*args)
Interesting feature, but I don't think the name `Kernel#expand` is acceptable.
Maybe an instance method of `Binding`?
And I think it should raise a `NameError` instead of a `NoMethodError` on invalid names.
nobu (Nobuyoshi Nakada)
12:52 AM Bug #15316: rb_postponed_job_register not thread-safe
I see.
> If you can't solve it, can you wait until after the 11/22
developers meeting?
Sure. I hope we'll release the fix on rc1, so I'll try to fix that anyway.
I hope auto-fiber will be in 2.6 too :)
k0kubun (Takashi Kokubun)
12:33 AM Bug #15316: rb_postponed_job_register not thread-safe
takashikkbn@gmail.com wrote:
> Well, I seem to have introduced at least two deadlocks by
> that. I already fixed the first one, and I'm going to fix the
> second one
> http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1467162.
>
...
normalperson (Eric Wong)
12:07 AM Bug #15316: rb_postponed_job_register not thread-safe
Well, I seem to have introduced at least two deadlocks by that. I already fixed the first one, and I'm going to fix the second one http://ci.rvm.jp/results/trunk-mjit@silicon-docker/1467162.
I'll take a deeper look when I come home to...
k0kubun (Takashi Kokubun)

11/18/2018

11:29 PM Revision becdfee6 (git): * 2018-11-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:29 PM Revision 9cbfb177 (git): Also clean ruby-runner.o and ruby.imp [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65792 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
11:29 PM Revision c8ab2634 (git): update-deps: fix runtime error [ci skip]
* tool/update-deps (init_global): environment strings are frozen.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
01:32 PM Revision 524e4cc9 (git): mjit.c: fix deadlock introduced by r65785
in mjit_pause() fired by before_fork_ruby(). When calling
RUBY_VM_CHECK_INTS() in mjit_pause()'s loop, other threads may call
start_worker() which sets `stop_worker_p = FALSE` and it could wait for
MJIT worker stop forever even while `st...
k0kubun (Takashi Kokubun)
10:43 AM Feature #15317: How to deal with obsolete property values in Unicode 11.0.0
Could a warning be issued as well, at the least for a transition period?
On a side note, does anyone happen to know how perl5/perl6 and python handle
these situations? Perhaps if what they do makes sense, we could have a
consistent...
shevegen (Robert A. Heiler)
09:35 AM Feature #15317 (Closed): How to deal with obsolete property values in Unicode 11.0.0
http://www.unicode.org/versions/Unicode11.0.0/#Migration contains the following:
> Four Grapheme_Cluster_Break and Word_Break classes have become obsolete and are no longer used: E_Base, E_Modifier, Glue_After_Zwj, and E_Base_GAZ. Tho...
duerst (Martin Dürst)
10:26 AM Bug #15318 (Rejected): net/imap socket backward compatibility broken in ruby 2.5+
Hi,
I use net/pop and net/imap libraries and sometimes I need my pop/imap connections to be socksified or proxified (through TCPSocket initialize method modifications: https://github.com/Shopify/socksify-ruby). Upgrading to ruby 2.5.3 f...
karis10 (bug reporter)
09:32 AM Revision 9edbcbcb (git): wercker.yml: debug problematic test on test-all
Some test seems to hang
https://app.wercker.com/ruby/ruby/runs/mjit-test1/5bf1221c183106002855989c?step=5bf1225987436a0006192c31
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
09:22 AM Revision fcd8412d (git): test_jit.rb: loosen output check
for interleaving between processes
https://gist.github.com/ko1/ace0374825377b41628d4590b7377601
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65788 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
08:44 AM Revision 9b850d1a (git): test_jit.rb: dump information to debug test failure
debugging
http://ci.rvm.jp/results/trunk-vm-asserts@silicon-docker/1466123
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
08:40 AM Bug #15316: rb_postponed_job_register not thread-safe
> OK, please do.
Done, in r65785. Comments from your point of view would be much appreciated.
> ...
looks fine.
> Somewhat related. We need to ensure a consistent state of the queue (either postponed_job or workqueue).
In a s...
k0kubun (Takashi Kokubun)
08:22 AM Bug #15316: rb_postponed_job_register not thread-safe
takashikkbn@gmail.com wrote:
> Oh by the way, I have a patch which was created yesterday but
> I was too busy to commit that yet. (I'll commit that shortly.)

OK, please do.

I am also testing a minor cleanup:
https://80x24.org/s...
normalperson (Eric Wong)
08:09 AM Bug #15316: rb_postponed_job_register not thread-safe
Thanks to report that.
> My goal is also to support MJIT in forked processes
Oh by the way, I have a patch which was created yesterday but I was too busy to commit that yet. (I'll commit that shortly.)
I think thread-safety of p...
k0kubun (Takashi Kokubun)
06:52 AM Bug #15316: rb_postponed_job_register not thread-safe
> https://bugs.ruby-lang.org/issues/15316

> So it looks like we need a THREAD-SAFE (not necessarily async-safe)
> version of rb_postponed_job_register. Or a one-off API for MJIT...
> job registration for MJIT.

I think I will in...
normalperson (Eric Wong)
04:49 AM Bug #15316 (Closed): rb_postponed_job_register not thread-safe
Consider following execution timeline for two threads, t1 and t2.
(should be 2 columns, I only have fixed-width fonts for display)
```
t1 t2 (mjit-worker)
-----------------------------------------...
normalperson (Eric Wong)
08:25 AM Revision 57efe84b (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:25 AM Revision fe6974a8 (git): mjit_worker.c: support MJIT in forked Ruby process
by launching MJIT worker thread in child Ruby process.
See the comment before `mjit_child_after_fork` for details.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
08:23 AM Revision 0a7a5a7a (git): thread.c: rb_fiber_atfork has nothing to do with mjit.c [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e k0kubun (Takashi Kokubun)
08:22 AM Revision bdf5eb3b (git): mjit_worker.c: fix typo [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e k0kubun (Takashi Kokubun)
08:22 AM Revision 05159044 (git): test_jit.rb: fix typo [ci skip]
we don't have such VM register
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
06:22 AM Misc #15229: DevelopersMeeting20181122Japan
mame@ruby-lang.org wrote:
> https://bugs.ruby-lang.org/issues/15229

[Bug #14968] make all pipes and sockets non-blocking by default
normalperson (Eric Wong)
05:12 AM Misc #15229: DevelopersMeeting20181122Japan
* [Feature #15302] Proc#with and Proc#by, for partial function application and currying (Ritchie Buitre)
* Convenient methods for functional programming.
RichOrElse (Ritchie Buitre)
04:34 AM Revision 644f2013 (git): vm_trace.c (rb_postponed_job_flush): use rb_atomic_t for mask
ec->interrupt_mask will remain rb_atomic_t and is 32-bit on some
64-bit systems while "unsigned long" is 64-bits. So avoid
mismatching lengths and stick to rb_atomic_t.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65781 b2dd03c8-3...
Eric Wong
04:21 AM Revision 5c334727 (git): common.mk: dependency of io.c for r65779
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
03:37 AM Revision eb959292 (git): io.c: include vm_core.h for VM_UNREACHABLE
Thanks to Greg L <greg.mpls@gmail.com> for the report
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
01:37 AM Revision 0cdd4596 (git): * 2018-11-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:37 AM Revision b5bb5ed0 (git): io.c (novl_wait_for_single_fd): VM_UNREACHABLE instead of assert
This respects VM_CHECK_MODE and is more consistent with
the rest of our code.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Eric Wong
01:37 AM Revision e4c9a70c (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:37 AM Revision 9a8b75a7 (git): vm_core.h (rb_thread_set_current*): convert to static inline
We already use "static inline" heavily and there should be no
penalty for modern compilers; this adds type-checking, too.
This will make future changes easier-to-review.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65775 b2dd03c8-...
Eric Wong
12:50 AM Bug #15315 (Assigned): ec_switch can still lose interrupts
ec_switch and thread switching may still lose interrupts
trap interrupt is OK because of r64062
Not OK:
1) postponed job interrupt from MJIT worker
This is trickiest to solve because it also affects thread switching,
not...
normalperson (Eric Wong)

11/17/2018

04:54 PM Feature #15302: Proc#with and Proc#by, for partial function application and currying
shevegen (Robert A. Heiler) wrote:
> I am not sure if the API seems ok. I am also not sure if matz
> ...
Thank you for taking the time to review my proposal and for the suggestions.
To illustrate more clearly how **`Symbol#with`** wor...
RichOrElse (Ritchie Buitre)
10:56 AM Feature #15302: Proc#with and Proc#by, for partial function application and currying
I am not sure if the API seems ok. I am also not sure if matz
wants to have `Symbol`s have methods such as `.with()`. For example,
to me personally it is not entirely clear why "with 2" would
be equal to "n * 2" as such.
I am also...
shevegen (Robert A. Heiler)
01:42 AM Revision 2b894084 (git): test/mkmf/base.rb: use CC_WRAPPER same as the toplevel
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
01:28 AM Bug #15312: Ruby gives me wrong result for plus operation
You can write rational numbers by `r` suffix.
```ruby
p 0.1r + 0.2r #=> (3/10)
```
As I found these literals (`r` and `i`) have not been mentioned in `doc/syntax/`, added them now (r65773).
nobu (Nobuyoshi Nakada)
01:21 AM Revision 077a15c8 (git): [DOC] rational and imaginary literals [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)

11/16/2018

11:27 PM Revision 9d6968f1 (git): * 2018-11-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:27 PM Revision 0a10c46d (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
11:27 PM Revision 3ec3d7d9 (git): Switch to 2-0-stable branch of bundler/bundler repository from our fork repository.
https://github.com/bundler/bundler/tree/2-0-stable
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hsbt (Hiroshi SHIBATA)
10:43 PM Bug #15314 (Assigned): Bundler with 2.6 fails when installing dependencies into a --path with --binstubs
hsbt (Hiroshi SHIBATA)
10:34 PM Bug #15314 (Closed): Bundler with 2.6 fails when installing dependencies into a --path with --binstubs
When using Ruby 2.6 and installing gems via bundler's `--path` option, there is an exception:
~~~ text
$ ruby -v
ruby 2.6.0preview3 (2018-11-06 trunk 65578) [x86_64-darwin17]
$ rails -v
Rails 5.2.1
$ rails new myapp-2-6
$ cd mya...
schneems (Richard Schneeman)
08:10 PM Bug #15313 (Closed): [PATCH] Let debuggers know when a tail call happens
## Background
The popular debugger "byebug" relies on tracepoint events to implement a few core functionality such as "next".
The "next" command needs to pause execution when the VM reaches the next line on the same stack frame. As the...
alanwu (Alan Wu)
06:37 PM Bug #15312 (Rejected): Ruby gives me wrong result for plus operation
See also https://0.30000000000000004.com/
marcandre (Marc-Andre Lafortune)
06:34 PM Bug #15312: Ruby gives me wrong result for plus operation
This is not a bug, that's how floating point arithmetic works in accordance with the IEEE 754 standard.
You can read more about that on Wikipedia or in this article: https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
T...
Anonymous
05:43 PM Bug #15312 (Rejected): Ruby gives me wrong result for plus operation
Run into this weird issue today. Tried that on rubies 2.5.1p57 and ruby 2.5.3p105 (i believe this is latest stable at the moment).
Here is how to reproduce it
```
$ irb
2.5.3 :001 > 2.6 + 0.1
=> 2.7
2.5.3 :002 > 2.7 + 0.1
=...
kot-begemot (Max Zet)
05:21 PM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
Actually here is the documentation of build flags:
https://src.fedoraproject.org/rpms/redhat-rpm-config/blob/master/f/buildflags.md
vo.x (Vit Ondruch)
08:41 AM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
k0kubun (Takashi Kokubun) wrote:
> I'm not so familiar with redhat-hardened things. I have some questions:
> ...
It is the default and mandatory settings for the build of all packages on Fedora/RHEL. The last hardening changes were pr...
vo.x (Vit Ondruch)
03:00 AM Bug #15307: TestJIT#test_{catching_deep_exception,compile_insn_throw,lambda_longjmp} segfaults with gcc-8 -fcf-protection
I'm not so familiar with redhat-hardened things. I have some questions:
* Why are you using the "hardened" options? Is it default on your environment?
* Do these tests succeed if you strip the hardened options on the same environment...
k0kubun (Takashi Kokubun)
02:13 PM Bug #15304: Package build with extensions is not reproducible
Regarding files under `usr/​lib/​ruby/​gems/​2.​5.​0/​extensions/​x86_64-​linux/​2.​5.​0/​msgpack-​1.​2.​4/​`, I think that rubygems is lazy not to select files properly.
And `.​/​usr/​lib/​ruby/​gems/​2.​5.​0/​gems/​msgpack-​1.​2.​4/​e...
nobu (Nobuyoshi Nakada)
12:44 PM Bug #15304: Package build with extensions is not reproducible
nobu (Nobuyoshi Nakada) wrote:
> These (and `page-Makefile.ri`) are all garbages after installation.
Hmm, I'm not sure to understand, because several distributions have these files remaining in the `install-dir` provided to `rubygem`...
lewo (lewo lewo)
12:21 PM Bug #15304: Package build with extensions is not reproducible
lewo (lewo lewo) wrote:
> I think the `mkmf.log` should not be written in the `install-dir`. But what about the `Makefile`? Could it be still used after the ruby gem build? If not, it could also be removed from the `install-dir`.
The...
nobu (Nobuyoshi Nakada)
08:21 AM Bug #15304: Package build with extensions is not reproducible
nobu (Nobuyoshi Nakada) wrote:
> Why are such files packaged?
These files are written by `gem intall` in the directory specified by the `--install-dir` option. Distributions are taking this whole direcory to create the distribution p...
lewo (lewo lewo)
12:11 PM Bug #15311 (Closed): `make check` causes `warning: No mjit_build_directory`
Applied in changeset trunk|r65769.
----------
Makefile.in: test-almost also needs mjit_build_dir.so
[ruby-core:89830] [Bug #15311]
nobu (Nobuyoshi Nakada)
07:37 AM Bug #15311 (Closed): `make check` causes `warning: No mjit_build_directory`
`make help` says:
```
check: equals make test test-all test-spec
```
But `make check` does not depend `test-all` acctually, it does not create `mjit_build_dir.so`.
So `make check` outputs many `warning: No mjit...
znz (Kazuhiro NISHIYAMA)
12:11 PM Revision f632ecd0 (git): Makefile.in: test-almost also needs mjit_build_dir.so
[ruby-core:89830] [Bug #15311]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
09:49 AM Feature #12115: Add Symbol#call to allow to_proc shorthand with arguments
I have a related proposal #15302 with a different implementation and interface. RichOrElse (Ritchie Buitre)
09:07 AM Feature #15306: Generate prelude.c using miniruby
In this specific case, I am concerned about the possibility of patching Ruby, specifically #8566.
It is, unfortunately, a bit more complex with the bootstrapping. Ideally, the content of tarball should be the same as the content of th...
vo.x (Vit Ondruch)
12:22 AM Feature #15306: Generate prelude.c using miniruby
On Thu, Nov 15, 2018 at 7:10 PM Eric Wong <normalperson@yhbt.net> wrote:
> > I don't see any reason why prelude.c should be included in
> > source tarball
>
> I agree with this part, BASERUBY is already a build requirement
> of Rub...
shyouhei (Shyouhei Urabe)
09:04 AM Revision ffd9a7ea (git): pack.c: cast from double to float can be undefined
Generally speaking, a value of double is not always representable
when demoted to a float. ISO C defines what to do when such
conversion loses precision, but leaves it undefined when the
value is completely out of range. (cf: ISO/IEC 989...
shyouhei (Shyouhei Urabe)
07:08 AM Revision 3c7852f8 (git): common.mk: hack to export symbols for MJIT in ruby.imp
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:52 AM Revision e2074a35 (git): test/excludes/_wercker: remove obsoleted pipeline name
from excludes directory names. test-mjit-wait / test-mjit are combined
and distributed as mjit-test1 and mjit-test2 now.
So the subdirectory names are changed to option names, --jit and --jit-wait.
git-svn-id: svn+ssh://ci.ruby-lang.or...
k0kubun (Takashi Kokubun)
06:52 AM Revision fe7773b9 (git): common.mk: fix the pattern to be hidden
* common.mk (ruby.imp): consider symbol prefix, remove InitVM, and
fix internal symbols start with a dot.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
06:52 AM Revision 34cc6fef (git): Make some internal functions static
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:51 AM Revision 429245aa (git): Prefix rb_ec_set_vm_stack
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:47 AM Revision f98e323e (git): appveyor.yml: skip reverting comment improvement [ci skip]
This part was not intended in r65760
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
06:45 AM Revision 4686869f (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
06:45 AM Revision c2ed1ede (git): appveyor.yml: give up running test_push_over_ary_max
because separately running it without -j didn't work.
Revert "appveyor.yml: run memory-exchausting test separately"
This reverts commit r65703.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
04:32 AM Revision 1d66574a (git): [DOC] mention class method `new` [ci skip]
* NEWS: mention `new` class methods, instead of `initialize`
insetance methods whic are not called by users directly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
04:25 AM Revision cb153527 (git): [doc] Fix grammar typo in Pty_init() docstring [ci skip]
[Fix GH-2014]
From: Olle Jonsson <olle.jonsson@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
04:21 AM Revision b90bac32 (git): Test for undef'ed method in class hierachy
This probably should have been `#bar` on the instance of class `Undef2` all along
[Fix GH-2015]
From: Alex Snaps <alex.snaps@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)
04:05 AM Revision a9723e96 (git): numeric.c: avoid division by zero
Forgot to add in r65751.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
03:34 AM Revision 73549c50 (git): bignum.c: fix bug in big2dbl()
I was wrong at r65753.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
shyouhei (Shyouhei Urabe)
03:09 AM Revision 1a84c57e (git): bignum.c: avoid (size_t)--
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e shyouhei (Shyouhei Urabe)
02:59 AM Revision ca149140 (git): bignum.c: BDIGIT might or might not integer-promote
BDIGIT can be unsigned int or unsigned short, depending on BDIGIT_DBL.
Given that, unsigned int and unsigned short are different in how
integer promotion works. BOGLO assumes its argument is wider than
BDIGIT, which is not always true. ...
shyouhei (Shyouhei Urabe)
02:43 AM Bug #15130: Nested Timeouts hang on cygwin
Ping again on https://bugs.ruby-lang.org/issues/15130

> This 3rd patch goes on top of the previous two:
>
> https://80x24.org/spew/20181015223141.18303-1-e@80x24.org/raw
>
> The 3 patch series should be:
>
> thread_p...
normalperson (Eric Wong)
02:34 AM Revision 6732423b (git): enc/unicode.c: 'a' is bigger than 'A'
In ASCII, 'a' is bigger than 'A'. Which means 'A' - 'a' is a negative
number (-32, to be precise). In C, the type of 'a' and 'A' are signed
int (cf: ISO/IEC 9899:1990 section 6.1.3.4). So 'A' - 'a' is also a
signed int. It is `(signed in...
shyouhei (Shyouhei Urabe)
02:30 AM Bug #15310 (Open): [PATCH] thread_pthread.c: close race from UBF_TIMER and non-GVL-releasing thread
thread_pthread.c: close race from UBF_TIMER and non-GVL-releasing thread
A Ruby thread may run without releasing the GVL if there is no
contention. And there may be no contention because another
thread missed its wakeup and needs t...
normalperson (Eric Wong)
01:56 AM Bug #15309: ECB is broken

test encrypt :
FAILED!
test decrypt :
OK!
sevk (kk kk)
01:55 AM Bug #15309 (Closed): ECB is broken
~~~ ruby
#!/usr/bin/env ruby
require 'openssl'
# AES-128 ECB mode test vectors
KEY = ["2b7e151628aed2a6abf7158809cf4f3c"].pack("H*")
PLAINTEXT = ["6b...
sevk (kk kk)
01:52 AM Revision 3a083985 (git): avoid division by zero
* cvt(): use signbit() instead of 1/d < 0
* w_float(): ditto
* ruby_float_step_size(): unit==0 check shall be prior to divisions
* arith_seq_float_step_size(): ditto
* rb_big_divide(): same as r65642
* fix_divide(): ditto
* rb_big_fdiv_d...
shyouhei (Shyouhei Urabe)
12:37 AM Revision a3b92a5d (git): rbinstall.rb: do not install rdoc flag files [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:28 AM Revision 9b38ed53 (git): bignum.c: suppress unused variable warning
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
12:25 AM Revision 027cf467 (git): pack.c: refine warning
* pack.c (unknown_directive): refine warning message at unknown
directive in unpack too, and quote unprintable characters.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
nobu (Nobuyoshi Nakada)
12:25 AM Revision 6a6d0379 (git): pack.c: adjust indent [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
 

Also available in: Atom