Project

General

Profile

Activity

From 02/21/2019 to 02/27/2019

02/27/2019

11:59 PM Feature #15626: Manual Compaction for MRI's GC (`GC.compact`)
Really interesting, but what are the benefits for users who writes Ruby?
Did the Rails app get faster enough? Or you have some other motivations?
tad (Tadashi Saito)
10:57 PM Feature #15626: Manual Compaction for MRI's GC (`GC.compact`)
Adding updated patch. tenderlovemaking (Aaron Patterson)
10:26 PM Feature #15626: Manual Compaction for MRI's GC (`GC.compact`)
I've tested the compactor with a Rails application, and I want to share my results.
I added the middleware below:
```ruby
# This file is used by Rack-based servers to start the application.
require_relative 'config/environment'...
tenderlovemaking (Aaron Patterson)
10:13 PM Feature #15626 (Closed): Manual Compaction for MRI's GC (`GC.compact`)
Hi,
I've attached a patch that implements a compactor for MRI. I'll try to describe the patch in detail below, but the biggest user facing changes are:
1. A new method `GC.compact` that can be called from Ruby
2. C extensions hav...
tenderlovemaking (Aaron Patterson)
08:11 PM Bug #15625: Module#name performance has exponential-time worst case by aliased constants
This may be useful to mention at an upcoming developer meeting.
Aliased constants are probably quite common; I use them in a few of my
projects myself, although this is very minor compared to me using aliased
methods (I use a LOT o...
shevegen (Robert A. Heiler)
05:36 PM Bug #15625 (Closed): Module#name performance has exponential-time worst case by aliased constants
It's well-known (c.f #11119) that `Module#name` has poor performance on anonymous classes, due to searching the entire constant namespace of the VM.
However, we recently discovered that it's even worse than that. In the presence of al...
nelhage (Nelson Elhage)
02:41 PM Misc #15614: DevelopersMeeting20190311Japan
* [Feature #14799] Startless range
* What kind of situation is it? I want it quickly :)
osyo (manga osyo)
01:55 PM Feature #15624 (Rejected): Allow net/http Response to close before reading entire body
As far as I understand HTTP doesn't provide such close without reading.
You know HTTP protocol itself doesn't provide such early close mechanism itself.
And though TCP, HTTP's underlying protocol, provides its error handling packet f...
naruse (Yui NARUSE)
03:25 AM Feature #15624 (Rejected): Allow net/http Response to close before reading entire body
Currently net/http has:
```
def reading_body(sock, reqmethodallowbody) #:nodoc: internal use only
@socket = sock
@body_exist = reqmethodallowbody && self.class.body_permitted?
begin
yield
self.body #...
sam.saffron (Sam Saffron)
12:40 PM Revision 6f2c516d (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
12:40 PM Revision 19408c78 (git): skip to not support color tty environment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e hsbt (Hiroshi SHIBATA)
12:30 PM Feature #15181 (Closed): Azure pipelines vc builds? help needed
Applied in changeset trunk|r67137.
----------
Test Bundler examples and bundled gems tests with Azure Pipeline.
* They are invoked on Linux and macOS environment.
* Try to build with vs2017. But it's only binary build.
https://d...
hsbt (Hiroshi SHIBATA)
12:30 PM Revision 019864b4 (git): Test Bundler examples and bundled gems tests with Azure Pipeline.
* They are invoked on Linux and macOS environment.
* Try to build with vs2017. But it's only binary build.
https://dev.azure.com/rubylang/ruby/
[Feature #15181][ruby-core:89222]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@...
hsbt (Hiroshi SHIBATA)
08:44 AM Bug #15622: Default version of Bundler incorrectly invoked when using binstubs
Forgot to comment here. I'm pretty sure this is the same as https://bugs.ruby-lang.org/issues/15582? The fix for it should be released in the next patch level version
For the moment `gem update --system` indeed workarounds it, since i...
deivid (David Rodríguez)
03:26 AM Revision c2ee3389 (git): * 2019-02-27
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:26 AM Revision 8092d571 (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:26 AM Revision 5e2a8cb7 (git): Remove stale arguments
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
03:08 AM Bug #15623: Ruby 2.6.1 Segmentation Fault in on Phusion Passenger server boot in dev
Forgot to add crash log (from one of the crashes)
```
/Users/pikachuexe/.rvm/gems/ruby-2.6.1/gems/activesupport-5.2.2/lib/active_support/core_ext/time/conversions.rb:55: [BUG] Segmentation fault at 0x000000010260aa3a
ruby 2.6.1p33 (...
PikachuEXE (Pikachu EXE)
03:03 AM Bug #15623 (Third Party's Issue): Ruby 2.6.1 Segmentation Fault in on Phusion Passenger server boot in dev
Ruby is install via RVM
Passenger is install via gem install/bundle install
It's not always crashing the same thread
Happens in 2.6.0 too
But not in 2.5.x
PikachuEXE (Pikachu EXE)

02/26/2019

05:58 PM Misc #15617: Any chance we can ship 2.5.4 sooner rather than later?
I guess this may be up to the release manager; perhaps he is a little bit
busy right now. You could consider adding it to the next upcoming developer
meeting ( https://bugs.ruby-lang.org/issues/15614 ) to get feedback whether
there ma...
shevegen (Robert A. Heiler)
08:46 AM Feature #15611 (Assigned): Shipping Bundler as a bundled gem, not a default gem
hsbt (Hiroshi SHIBATA)
08:45 AM Bug #15622 (Assigned): Default version of Bundler incorrectly invoked when using binstubs
hsbt (Hiroshi SHIBATA)
08:22 AM Bug #15622: Default version of Bundler incorrectly invoked when using binstubs
I was able to reproduce this with the steps provided, and it seems to work after a `gem update --system`. Possibly a bug in a particular version of Rubygems? dzunk (Matt Duszynski)
01:34 AM Revision ff074304 (git): * 2019-02-26
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
01:34 AM Revision e2d1bb1f (git): add exceptions for indenting conventions for files related to regular expressions
Ruby uses the Oniguruma/Onigmo regular expression engine, including the underlying
character encoding framework. In contrast to other code implementing Ruby, the
regular expression engine related code is formatted with two spaces per ind...
duerst (Martin Dürst)

02/25/2019

10:38 PM Bug #15622 (Rejected): Default version of Bundler incorrectly invoked when using binstubs
When trying to run a binstub with Ruby 2.6.1 with Bundler 2.0.1 on the system, the wrong version of Bundler gets loaded which then fails when the Gemfile.lock points to a 2.x version (since the default version that ships with Ruby is Bun... schneems (Richard Schneeman)
08:25 PM Feature #15619: Support blacklisting certain dependency versions
Thanks for your suggestion. Moved to https://github.com/rubygems/rubygems/issues/2659. skalee (Sebastian Skalacki)
02:19 AM Feature #15619 (Third Party's Issue): Support blacklisting certain dependency versions
This request makes a lot of sense to me.
However, while the gem library is part of Ruby, they are developed separately. I suggest you submit your request to https://github.com/rubygems/rubygems/issues.
duerst (Martin Dürst)
08:51 AM Bug #15621 (Closed): system({}, ...) breaks nonascii ENV["PATH"] on Windows

### Problem
It seems that `system({}, ...)` breaks nonascii `ENV["PATH"]` after execution.
`system(...)` isn't affected. Only `system(env, ...)` is affected.
OS: Windows 7
Ruby: https://github.com/oneclick/rubyinstaller2/releas...
kenhys (Kentaro Hayashi)
06:14 AM Bug #15616 (Rejected): Chained destructive methods fail when using +@ to unfreeze a frozen string
Yes. It's a matter of precedence. The "Pickaxe" book describes it as
> Single terms in an expression may be any of the following:
> ...
That means that in ```+foo.gsub!("bar", "car")```, the `.` of method invocation has higher preced...
duerst (Martin Dürst)

02/24/2019

06:57 PM Bug #15620 (Closed): Block argument usage affects lambda semantic
The following snippet demonstrate the issue:
``` ruby
def pass_after_use(&block)
raise unless block
lambda(&block).call
end
def direct_pass(&block)
lambda(&block).call
end
pass_after_use do |_arg|
puts "fine, beca...
alanwu (Alan Wu)
06:41 PM Feature #15619 (Third Party's Issue): Support blacklisting certain dependency versions
# Abstract
This feature request proposes introducing a new dependency constraint "!=", which will allow to blacklist a specific buggy version of some gem dependency without dropping support for older releases.
# Background
I am ...
skalee (Sebastian Skalacki)
05:16 PM Feature #15618: Implement Enumerator::Yielder#to_proc
I have no particularly strong pro or con opinion on the functionality itself.
I have only one comment about syntax, though. While { |line| y << line } }
may or may not be redundant (let's leave that open for the moment), and is
defi...
shevegen (Robert A. Heiler)
03:55 PM Feature #15618 (Closed): Implement Enumerator::Yielder#to_proc
When writing an Enumerator block, you often want to delegate iteration to another method like this:
```ruby
enum = Enumerator.new { |y|
Dir.glob("*.rb") { |file|
File.open(file) { |f| f.each_line { |line| y << line } }
}
...
knu (Akinori MUSHA)
11:57 AM Revision 23a8183b (git): Check stx_btime in struct statx
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
05:27 AM Revision a582007e (git): * 2019-02-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
05:27 AM Revision 8b8285e2 (git): configure.ac: remove check for broken memmem
the bug of memmem(3) was fixed in glibc 2.1 released in 1999.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Glass_saga (Masaki Matsushita)

02/23/2019

05:10 AM Misc #15615: File.birthtimeがLinux環境で有効なファイル作成時刻を得られなかった場合の挙動について
とりあえず`NotImplementedError`とも一番近そうな`ENOSYS`を投げるようにしましたが、本来セットされていない`errno`を装うよりは`RuntimeError`あたりのほうがいいのではないかと思います。
もしくは次点で`nil`。
nobu (Nobuyoshi Nakada)
04:42 AM Revision dc700cf9 (git): configure.ac: skip check of statx() on AIX
Linux and AIX have statx() with different prototype.
Linux: int statx(int, const char*, int, unsigned int, struct statx*)
AIX: int statx(char, struct stat*, int, int)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67128 b2dd03c8-39d...
Glass_saga (Masaki Matsushita)
03:43 AM Revision 6604e1b7 (git): Merge json-2.2.0 from flori/json.
https://github.com/flori/json/releases/tag/v2.2.0
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
hsbt (Hiroshi SHIBATA)
02:22 AM Revision f22ffd83 (git): spec/../rbconfig_spec.rb: skip spec not working on MinGW
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e k0kubun (Takashi Kokubun)
02:17 AM Revision 0dab1fce (git): * 2019-02-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
02:17 AM Revision 052dbbe7 (git): spec/../shared/write.rb: suppress random failure
due to MJIT worker's known race condition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
k0kubun (Takashi Kokubun)

02/22/2019

10:54 PM Misc #15617 (Closed): Any chance we can ship 2.5.4 sooner rather than later?
We started carrying code like this in Discourse due to #14634 breaking Queue after fork.
https://review.discourse.org/t/dev-disable-async-logging-in-development-on-broken-ruby/1829
I was wondering if there is any chance we can fa...
sam.saffron (Sam Saffron)
04:07 PM Bug #15613 (Open): Enumerator::Chain#each doesn't relay block signature
marcandre (Marc-Andre Lafortune)
03:51 PM Bug #15616: Chained destructive methods fail when using +@ to unfreeze a frozen string
```
+foo.gsub!("bar", "car")
```
stands for
```
+(foo.gsub!("bar", "car"))
```
and because foo is frozen, you'll get an error, see #15606
try this
```
foo = "bar".freeze
foo = (+foo).gsub!("bar", "car")
```
or
```
foo...
ahorek (Pavel Rosický)
02:52 PM Bug #15616 (Rejected): Chained destructive methods fail when using +@ to unfreeze a frozen string
Using the +@ syntax to unfreeze a string does not work when chaining destructive methods
Consider the following;
``` ruby
foo = "bar".freeze
+foo.gsub!("bar", "car")
```
This raises;
``` ruby
FrozenError: can't modify frozen ...
cianooooo (Cian O)
02:15 PM Misc #15614: DevelopersMeeting20190311Japan
[Misc #15615] File.birthtimeがLinux環境で有効なファイル作成時刻を得られなかった場合の挙動について
Glass_saga (Masaki Matsushita)
10:20 AM Misc #15614: DevelopersMeeting20190311Japan
* [Feature #14609] `Kernel#p` without args shows the receiver (aycabta)
* carry over
aycabta (aycabta .)
06:48 AM Misc #15614 (Closed): DevelopersMeeting20190311Japan
Please comment your favorite ticket numbers you want to ask to discuss with your *SHORT* comment or summary.
(your summary/comment will help us because we don't need to read all of ticket comments)
*DO NOT* discuss then on this ticke...
Glass_saga (Masaki Matsushita)
02:13 PM Misc #15615 (Closed): File.birthtimeがLinux環境で有効なファイル作成時刻を得られなかった場合の挙動について
`File.birthtime`はファイルの作成時刻を返すメソッドです。
これまでLinux環境ではこのメソッドは実装されておらず、呼び出すと`NotImplementedError`が発生していましたが、r67088から一部のLinux環境でも`File.birthtime`が動作するようになりました。
Linux環境での`File.birthtime`は、`statx()`というLinux 4.11から導入されたシステムコールを使うことで実装されています。
...
Glass_saga (Masaki Matsushita)
07:25 AM Revision f53548a8 (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
07:25 AM Revision b1c1ee71 (git): change `cfunc->invoker` type for opt.
* vm_insnhelper.c: change `call_cfunc_*` parameters order
and specify a function type for the passed func ptr.
This fix reduce the number of asm instructions, such as:
# before this patch
0000000000000110 <call_cfunc_0>:
...
ko1 (Koichi Sasada)
06:43 AM Revision 4af7f77d (git): STATX_BTIME depends on filesystems
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67121 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:35 AM Revision def040f6 (git): Skip EPERM, when statx(2) is wholely blocked
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:22 AM Revision 1ae52fcd (git): Skip EPERM, like as r67102
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:14 AM Revision aa5dd6fe (git): STATX_BTIME depends on filesystems
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:07 AM Revision b9357e4d (git): File#birthtime depends on the kernel version on Linux
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67117 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:01 AM Revision fc90c4ec (git): Support File#birthtime on Linux
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67116 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
03:08 AM Revision 607ecea7 (git): Unified rb_file_s_birthtime
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)

02/21/2019

08:59 PM Revision 67032770 (git): * expand tabs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67114 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
08:59 PM Revision 4e15be8b (git): refactoring compile.c.
* compile.c: refacetoring:
* initialize `branches` with Qfalse intead of 0.
* make compile_call* functions from `iseq_compile_each0()`
to make modifying them easy.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67113 b2dd03c...
ko1 (Koichi Sasada)
08:02 PM Feature #12745: String#(g)sub(!) should pass a MatchData to the block, not a String
sawa (Tsuyoshi Sawada) wrote:
> What about having `Enumerator#with_m`, such that
> ...
This doesn't make sense to add to Enumerator in my opinion, since most Enumerators will not be created from `gsub`/`sub`:
```ruby
[1].each.with_...
jeremyevans0 (Jeremy Evans)
07:17 PM Feature #12745: String#(g)sub(!) should pass a MatchData to the block, not a String
What about having `Enumerator#with_m`, such that
```ruby
gsub(pattern).with_m{|match, match_data| block} → new_str
sub(pattern).with_m{|match, match_data| block} → new_str
```
And if we want to expand that to `scan`, we can intr...
sawa (Tsuyoshi Sawada)
03:38 PM Revision da797623 (git): Update to ruby/spec@7a16e01
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
03:38 PM Revision b8e389a0 (git): * 2019-02-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:38 PM Revision 203d9467 (git): * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67110 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
03:38 PM Revision 92d3a726 (git): Update to ruby/mspec@2ee5661
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67109 b2dd03c8-39d4-4d8f-98ff-823fe69b080e Eregon (Benoit Daloze)
03:28 PM Feature #15605: json library needs more frequent releases
> Perhaps a better general solution may be to allow the ruby main team to decide who is co-owner of gems IF these gems are part of the official ruby distribution.
This seems like a good rule of thumb. I know we've had trouble finding ...
headius (Charles Nutter)
07:32 AM Revision 8b94ce98 (git): Constified
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
07:03 AM Revision 936b61d4 (git): Path for AT_EMPTY_PATH must not be NULL
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
06:12 AM Revision 32f3961f (git): * 2019-02-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67106 b2dd03c8-39d4-4d8f-98ff-823fe69b080e svn[bot]
06:12 AM Revision 7c369b78 (git): Separate fstatx_without_gvl from statx_without_gvl
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e nobu (Nobuyoshi Nakada)
 

Also available in: Atom