Activity
From 12/31/2017 to 01/06/2018
01/06/2018
-
03:32 PM Bug #14325 (Closed): Set#reset raise RuntimeError instead of FrozenError
- I think it should use `FrozenError` instead of `RuntimeError`.
I can't reproduce without modifying instance variable directly.
```
% ruby -v -r set -e 'Set[].tap{|s|s.instance_variable_set(:@hash, :dummy)}.freeze.reset'
ruby 2.6.0... -
10:27 AM Bug #14324 (Closed): Should Exception#full_message include escape sequences?
- ```
$ ruby -e 'p RuntimeError.new("foo").full_message'
"\e[1mTraceback \e[m(most recent call last):\n-e:1:in `full_message': \e[1mfoo (\e[4;1mRuntimeError\e[m\e[1m)\n\e[m"
```
That is probably not intended.
```
$ ruby -e 'p Run... - 09:23 AM Revision 0d63d4ee (git): Revert "net/protocol: use binary string buffers"
- Oops, not ready, yet (will work on this tomorrow :x).
This reverts commit r61638
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:21 AM Bug #14323 (Closed): net/ftp: fix FrozenError in BufferedSocket - Applied in changeset trunk|r61639.
----------
net/ftp: fix FrozenError in BufferedSocket
I noticed this bug while working on something else with
RUBYOPT=-d on, existing test cases all passed with it.
Note: I use String.new because it ... -
09:19 AM Bug #14323 (Closed): net/ftp: fix FrozenError in BufferedSocket
- net/ftp: fix FrozenError in BufferedSocket
I noticed this bug while working on something else with
RUBYOPT=-d on, existing test cases all passed with it.
Note: I use String.new because it is the local style, here,
I prefer +'' (o... - 09:21 AM Revision e56d3400 (git): net/ftp: fix FrozenError in BufferedSocket
- I noticed this bug while working on something else with
RUBYOPT=-d on, existing test cases all passed with it.
Note: I use String.new because it is the local style, here,
I prefer +'' (or ''.b, for a future commit)
* lib/net/ftp.rb (Bu... - 09:21 AM Revision 7d34bdb8 (git): net/protocol: use binary string buffers
- Not an encoding expert, but this seems necessary for the next
change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:01 AM Revision dbc925f2 (git): test_process.rb: skip not-found groups
- * test/ruby/test_process.rb (test_execopts_gid): under some
network configuration (maybe with Open Directory but
disconnected temporarily), some groups may fail to find.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61637 b2dd03... -
08:50 AM Bug #14257: the chomp option removes newlines in additon to the provided separator for String#each_line and String#lines
- Sorry, r61636 is needed too.
Huge RS with `chomp` option could cause a SEGV. -
08:44 AM Feature #13719: [PATCH] net/http: allow existing socket arg for Net::HTTP.start
- > https://bugs.ruby-lang.org/issues/13719
Ping, any comment on this? Thanks. -
08:44 AM Revision e043ae73 (git): string.c: out-of-bounds access
- * string.c (rb_str_enumerate_lines): fix out-of-bounds access when
record separator is longer than the last element. [Bug #14257]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61636 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
05:41 AM Feature #13587 (Closed): Improve performance of string interpolation
- This was applied in r60320.
-
05:29 AM Bug #14266: Set#clone(freeze: false) makes frozen internal hash
- (ref [Fix Set#clone to clone internal hash.](https://github.com/ruby/ruby/pull/661))
-
04:58 AM Feature #14316 (Closed): Update Status Code classes
- I commited at r61633, r61634, r61635.
-
04:55 AM Revision 660740a7 (git): Update Status Code
- see https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
04:55 AM Revision 34cd43ac (git): Add 103 Early Hints
- see https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
04:55 AM Revision c4e5930f (git): Specify frozen_string_literal: true
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:14 AM Bug #14314: Marshalling broken in Ruby 2.5.0 for Structs with keyword_init: true
- > Will this also fix YAML deserialization or is that a separate issue entirely?
Please file another issue for it. -
12:49 AM Bug #14322 (Open): Inconsitency in command line options between 2.4 and 2.5
- We must not break existing use cases (including commands which
may show up in shell scripts and Makefiles) without deprecation
warnings.
-
12:42 AM Bug #14322: Inconsitency in command line options between 2.4 and 2.5
- wolf@wolfsden.cz wrote:
> Bug #14322: Inconsitency in command line options between 2.4 and 2.5
> https://bugs.ruby-lang.org/issues/14322
> was this intentional?
Sadly, yes, and done without warning. I should've pushed
harder f... -
12:30 AM Bug #14322: Inconsitency in command line options between 2.4 and 2.5
- Hm, guess I should read not only the web version but also the detailed one. Guess this wasn't "notable" enough. Thx :)
-
12:24 AM Bug #14322 (Rejected): Inconsitency in command line options between 2.4 and 2.5
- Yes, ubygems.rb was removed intentionally. This is mentioned in the NEWS file for 2.5.0.
-
12:13 AM Bug #14322 (Rejected): Inconsitency in command line options between 2.4 and 2.5
- How command-line options are handled was changed between 2.4 and 2.5
```
[ wolf@ws ] :: ~
Load: 0.33 2.40 3.64 , Memory: 4.48 %, Disk: 77.69 %
$ ruby -rubygems -e 'puts Gem.user_dir'
Traceback (most recent call last):
1: from...
01/05/2018
-
10:14 PM Bug #14321 (Closed): Backport r54803 (Fix Math.lgamma on AIX)
- This is a ticket to back-port r54803 to 2.3.
-
10:09 PM Feature #14320 (Closed): [PATCH] open-uri: clear string after buffering
- open-uri: clear string after buffering
Since r58846 (in Ruby 2.5), it is safe to clear the string
yielded to Net::HTTPResponse#read_body methods. This
reduces malloc garbage (anonymous RSS) using the Linux-only
script below:
be... -
09:29 PM Misc #6299 (Closed): Adding PATCH to Net::HTTP
-
09:17 PM Misc #14211: maintain etc, fcntl, and zlib
- I'm for zlib.
I thought etc and fcntl are maintained as the same of core.
(even though there's a gem version) - 09:14 PM Revision 6776e0bc (git): io.c: clear Strings we create for IO.copy_stream
- While we can't recycle strings after giving them rb_funcall*,
we can reduce their malloc overhead by resizing them to zero.
This only affects cases where either `src' or `dst' is a non-IO
object and either `copy_length' is passed or ther... -
09:03 PM Feature #14319 (Closed): [PATCH] zlib: reduce garbage on Zlib::GzipReader#readpartial
- ```
For garbage-concious users who use the `outbuf' argument of
`readpartial' to supply a destination buffer, this provides
a drastic reduction in garbage when inflating large inputs
in a streaming fashion.
This results in a anony... -
08:58 PM Bug #10648 (Closed): libffi can't build on mswin32
-
08:57 PM Feature #14316: Update Status Code classes
- Looks fine.
Could you commit them?
> > 0001-Specify-frozen_string_literal-true.patch (697 Bytes)
> ...
This patch actually does nothing.
But it prevents that a future change accidentally adds mutable strings.
This change also fine... -
02:32 PM Feature #14316: Update Status Code classes
- zn@mbf.nifty.com wrote:
> 0001-Specify-frozen_string_literal-true.patch (697 Bytes)
0001 seems pointless, only strings in that file are literal hash
keys and they are all frozen since 2.1
(I also wrote
http://blade.nagaokaut.ac.j... -
01:54 PM Feature #14316 (Closed): Update Status Code classes
- In lib/net/http/responses.rb, some class names are old names.
So I would like to update and add `103 Early Hints` if no objection.
see https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml -
08:49 PM Feature #14315 (Closed): zlib: reduce garbage on gzip writes (deflate) - Applied in changeset trunk|r61631.
----------
zlib: reduce garbage on gzip writes (deflate)
Zlib::GzipWriter generated large amounts of garbage from
(struct zstream).input. Reuse the .input field when it is
hidden, and recycle it when... -
01:51 PM Feature #14315: zlib: reduce garbage on gzip writes (deflate)
- normalperson@yhbt.net wrote:
> https://bugs.ruby-lang.org/issues/14315
Complementary patch for the Zlib::GzipReader side:
https://80x24.org/spew/20180105134532.8946-1-e@80x24.org/raw
(sorry too tired to write proper commit message) -
11:20 AM Feature #14315 (Closed): zlib: reduce garbage on gzip writes (deflate)
- ```
zlib: reduce garbage on gzip writes (deflate)
Zlib::GzipWriter generated large amounts of garbage from
(struct zstream).input. Reuse the .input field when it is
hidden, and recycle it when its lifetime is over. This change
a... - 08:48 PM Revision a55abcc0 (git): zlib: reduce garbage on gzip writes (deflate)
- Zlib::GzipWriter generated large amounts of garbage from
(struct zstream).input. Reuse the .input field when it is
hidden, and recycle it when its lifetime is over. This change
alone reduced memory usage of the writer from 90MB to 4.5M... -
08:46 PM Bug #14246: Inconsistent C source code indentation
- Just FYI, there's a format tool named clang-format.
https://clang.llvm.org/docs/ClangFormat.html
I use following options:
https://github.com/nurse/strptime/blob/master/.clang-format -
06:13 PM Bug #14246: Inconsistent C source code indentation
- Let me quote Developers How-To [1]:
> * indent
> ...
[1]: https://bugs.ruby-lang.org/projects/ruby/wiki/DeveloperHowto -
08:40 PM Revision a410ff68 (git): merge revision(s) 61625,61626,61627:
- extend timeout to 15 seconds for ARMv8 environment
Show how many seconds it timeouts
By this we can easily extend timeout.
Extend timeout of test_clear_unreachable_keyword_args
git-svn-id: svn+ssh://ci.ruby-la... -
08:40 PM Revision a697c8b6 (git): merge revision(s) 61517: [Backport #14259]
- numeric.c: Fix Integer#pow with a large Fixnum modulo
* numeric.c: Fix Integer#pow with a large Fixnum modulo
[Bug #14259] [ruby-core:84562]
* test/ruby/test_numeric.rb: add assertions for reproducing this bug... -
08:39 PM Bug #14257: the chomp option removes newlines in additon to the provided separator for String#each_line and String#lines
- ruby_2_5 r61628 merged revision(s) 61513.
-
08:39 PM Revision 311d499f (git): merge revision(s) 61513: [Backport #14257]
- string.c: chomp rs at the end
* string.c (rb_str_enumerate_lines): should chomp record separator
only, but not a newline, at the end of the receiver as well as
middle, if the separator is given.
[ru... -
08:38 PM Revision fb7ed3b3 (git): Extend timeout of test_clear_unreachable_keyword_args
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:36 PM Revision 112ee3aa (git): Show how many seconds it timeouts
- By this we can easily extend timeout.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
07:54 PM Feature #14276: Ruby core debugger API
- Welcome!
Regarding your other proposal:
> Creating debug gem in standard lib with the same purpose. Having the guarantee that the unit tests will run for every ruby release.
I don't have a strong opinion on this actually, I'm fi... -
07:45 PM Feature #14276: Ruby core debugger API
- Sorry David I was afraid to be incorrect here. Wrote to fast.
Just looked into your comments regarding the C API being used in byebug.
Why are you using the C API’s instead of the ruby classes directly?
Also, what is the ruby clas... -
05:59 PM Feature #14276: Ruby core debugger API
- Thanks David for your input.
Very good resume of the situation which will help a lot on the ticket.
And also it is awesome to have you here discussing the subject with us.
I was planning to reply to Martin pretty soon about his qu... -
02:59 PM Feature #14276: Ruby core debugger API
- Hi! So there are two different proposals here. Regarding the first one:
> Defining core Debug API namespace where we would create the minimal interface for ruby core debug functionality (Not sure if only cruby or a broader API adopted... -
07:24 PM Revision 64f0caac (git): extend timeout to 15 seconds for ARMv8 environment
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:14 PM Bug #14314: Marshalling broken in Ruby 2.5.0 for Structs with keyword_init: true
- k0kubun (Takashi Kokubun) wrote:
> Thank you to catch this. I fixed this in r61616.
Will this also fix YAML deserialization or is that a separate issue entirely? -
11:45 AM Bug #14314: Marshalling broken in Ruby 2.5.0 for Structs with keyword_init: true
- Thank you to catch this. I fixed this in r61616.
-
11:44 AM Bug #14314 (Closed): Marshalling broken in Ruby 2.5.0 for Structs with keyword_init: true
- Applied in changeset trunk|r61616.
----------
marshal.c: allow marshalling keyword_init struct
struct.c: define rb_struct_s_keyword_init to shared with marshal.c
internal.h: add the declaration to be used by marshal.c
test/ruby/test_... -
06:04 PM Bug #14166 (Third Party's Issue): vagrant
- This appears to be Vagrant issue. Please report this to Vagrant upstream:
https://github.com/hashicorp/vagrant/
But I am quite sure somebody else already reported it, since here are already 3 reports ... -
05:59 PM Bug #14254 (Closed): vagrant add box not working
-
05:58 PM Bug #14167 (Closed): Segmentation fault with Vagrant 2.0.1
-
05:51 PM Feature #14318 (Closed): Speedup `Proc#call` to mimic `yield`
- Applied in changeset trunk|r61624.
----------
Speedup `Proc#call` [Feature #14318]
* vm_insnhelper.c (vm_call_opt_call): do same process of `yield` instead of
invoking `Proc`.
* vm_insnhelper.c (vm_invoke_block): invoke given block ... -
05:44 PM Feature #14318 (Closed): Speedup `Proc#call` to mimic `yield`
- We don't need to keep and restore`$SAFE` for `Proc#call`, we can replace the `Proc#call` process with `yield` process.
The following patch acheves this replacement.
```diff
Index: insns.def
=======================================... -
05:51 PM Revision 0d2346f9 (git): Speedup `Proc#call` [Feature #14318]
- * vm_insnhelper.c (vm_call_opt_call): do same process of `yield` instead of
invoking `Proc`.
* vm_insnhelper.c (vm_invoke_block): invoke given block handler instead of
using a block handler in the current frame.
Also do not check ... -
04:04 PM Revision 1d3d8d89 (git): parse.y: Use nd_set_loc instead of direct modification to nd_loc
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
04:04 PM Revision 8d06762c (git): parse.y: Remove unneeded code
- Because block_append sets prelude->nd_loc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
04:03 PM Bug #14317 (Rejected): Date.strptime(..., "%U") fails if first day of the week is not in the 0th week.
- Date.new(2018,1,1)
=> Mon, 01 Jan 2018
Date.new(2018,1,1).strftime("%U %Y")
=> "00 2018"
Date.strptime("00 2018", "%U %Y")
ArgumentError: invalid date
Date.strptime("1 0 2018", "%u %U %Y")
=> Mon, 01 Jan 2018
i would exp... -
03:44 PM Revision 5fe35fee (git): parse.y: make method_add_block accept location
- Also, use method_add_block instead of direct modification to nd_iter.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
03:43 PM Feature #14278: Ambiguous Exception for OpenSSL::HMAC.digest
- thanks @shevegen for your reply.
and yeah I believe we completely agree on everything here. The error should be more description at the same time not losing the known error class in our case (TypeError). the backtrace or the message th... -
12:28 PM Feature #14278: Ambiguous Exception for OpenSSL::HMAC.digest
- If I understand it correctly, the change you propose is, from e. g.:
TypeError: no implicit conversion of nil into String
Towards:
key argument cannot be nil for OpenSSL::HMAC.digest
I am not at all against a more ver... - 03:16 PM Revision 19cced42 (git): * 2018-01-06
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:16 PM Revision c5153955 (git): node_h (NEW_DEFN): remove unused argument
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
02:23 PM Bug #14273 (Closed): Stack Consistency Error from return in loop
- Applied in changeset trunk|r61618.
----------
compile.c: fix stack consistency error
* compile.c (iseq_peephole_optimize): fix stack consistency error
from return in loop, by adding extra `pop` when replacing `jump`
with `leave`, w... -
02:23 PM Revision 43c1eb44 (git): compile.c: fix stack consistency error
- * compile.c (iseq_peephole_optimize): fix stack consistency error
from return in loop, by adding extra `pop` when replacing `jump`
with `leave`, which is never reached but needed to adjust sp
calculation. [ruby-core:84589] [Bug #1... -
02:23 PM Revision 665839dd (git): compile.c: remove more unreachable chunk
- * compile.c (remove_unreachable_chunk): remove beyond labels to be
removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61617 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
11:44 AM Revision 26df9588 (git): marshal.c: allow marshalling keyword_init struct
- struct.c: define rb_struct_s_keyword_init to shared with marshal.c
internal.h: add the declaration to be used by marshal.c
test/ruby/test_marshal.rb: add test for Bug#14314
[Feature #14314] [ruby-core:84629]
git-svn-id: svn+ssh://ci.... -
11:39 AM Revision d3cea2ed (git): node.c: factor out the part of operator output into F_OPERATOR
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:39 AM Revision 80e45b04 (git): node.c: remove unused macro F_OPTION
- Follow up of r61610
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
11:24 AM Bug #14279: Modifying splat argument causes segmentation fault
- nagachika (Tomoyuki Chikanaga) wrote:
> Though I cannot reproduce SEGV on my box with any version of ruby (2.2.6, 2.4.6, 2.4.3, 2.5.0), I believe reporter's and ko1's statement and set Backport field. :p
I could reproduce on 2.2 and ... -
05:41 AM Bug #14279: Modifying splat argument causes segmentation fault
- Though I cannot reproduce SEGV on my box with any version of ruby (2.2.6, 2.4.6, 2.4.3, 2.5.0), I believe reporter's and ko1's statement and set Backport field. :p
-
02:47 AM Bug #14279: Modifying splat argument causes segmentation fault
- > I think something like a TypeError should be raised in such a case.
```ruby
a = 13
p(*a) #=> 13
```
So that this case is similar to `super(13)`.
Ruby 2.2 to 2.5 have same issue.
Thank you for your report.
-
02:25 AM Bug #14279 (Closed): Modifying splat argument causes segmentation fault
- Applied in changeset trunk|r61603.
----------
check array for zsuper. [Bug #14279]
* compile.c (iseq_compile_each0): for zsuper (NODE_ZSUPER), we need to check
given argument is Array or not.
* test/ruby/test_super.rb: add a test fo... -
10:46 AM Revision fee54c82 (git): node.c (NODE_OP_CDECL): fix a typo bug.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
- 10:30 AM Revision e9360033 (git): zlib: remove redundant rb_obj_reveal
- No need to reveal strings freshly created with rb_str_new.
* ext/zlib/zlib.c (zstream_detach_input): remove redundant call
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:41 AM Bug #14227 (Closed): [PATCH] tool/rbinstall.rb: allow owner to have write permissions - Applied in changeset trunk|r61611.
----------
tool/rbinstall.rb: allow owner to have write permissions
Denying write permissions to the owner seems wrong.
Oddly, this problem only manifests in the "ruby_2_4" branch when
installing bun... - 09:41 AM Revision 6c721bd4 (git): tool/rbinstall.rb: allow owner to have write permissions
- Denying write permissions to the owner seems wrong.
Oddly, this problem only manifests in the "ruby_2_4" branch when
installing bundled gems (rake and friends). It does not happen
with "ruby_2_3", or "trunk", so it might be related to ... -
09:18 AM Feature #14313: Support creating KeyError with receiver and key from Ruby
- should that also extend to the raise function itself like this?
~~~ ruby
raise KeyError, "key not found: #{header}", key: :header
~~~
or is that already done? -
03:51 AM Feature #14313: Support creating KeyError with receiver and key from Ruby
- Also `NameError`?
-
08:59 AM Revision 38c62063 (git): node.h: remove NODE_PRELUDE
- NODE_PRELUDE contains a `BEGIN` node, a main node, and compile_option.
This node is assumed that it must be located immediately under the root
NODE_SCOPE, but this strange assumption is not so good, IMO.
This change removes the assumtio... -
08:59 AM Revision 92b81dc5 (git): make rb_iseq_new* accept rb_ast_body_t instead of NODE*
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
08:59 AM Revision 503b858c (git): node.h: define rb_ast_body_t and restructure rb_ast_t
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:47 AM Revision a6794c4b (git): node.c: constify NODE* arguments in node.c
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:25 AM Revision 0268c85e (git): * insns.def (invokeblock): `calling->recv` is not used.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:18 AM Revision 4251ee5b (git): Try to fix Travis CI configuration.
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
05:27 AM Revision db81395d (git): parse.y: refactor out ast generation code of two rb_parser_compile_*
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
02:25 AM Revision 44936575 (git): check array for zsuper. [Bug #14279]
- * compile.c (iseq_compile_each0): for zsuper (NODE_ZSUPER), we need to check
given argument is Array or not.
* test/ruby/test_super.rb: add a test for this bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61603 b2dd03c8-39d4-4... -
02:22 AM Feature #14268 (Closed): [PATCH] net/protocol: optimize large read case - Applied in changeset trunk|r61602.
----------
net/protocol: optimize large read case
There are several places where rbuf_consume is called with
@rbuf.size as its length arg; simplify that case by avoiding
the slow String#slice! operati... - 02:22 AM Revision d9beb769 (git): net/protocol: optimize large read case
- There are several places where rbuf_consume is called with
@rbuf.size as its length arg; simplify that case by avoiding
the slow String#slice! operation in favor of a lightweight
replacement.
The following script exhibits reduced memory... -
12:49 AM Revision e1428e5c (git): Refactor ISEQ_TYPE_DEFINED_GUARD out
- This commit removes ISEQ_TYPE_DEFINED_GUARD because it is no longer
needed. And this introduces ISEQ_TYPE_PLAIN which means that the iseq
does nothing special but just wrap an expression. Currently, this is
used for once execution: `/f... - 12:49 AM Revision ecc29dc2 (git): * 2018-01-05
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
12:49 AM Revision 9c373683 (git): compile.c: refactoring of defined? exception handler
- This commit removes tmp_node trick to create a special exception handler
for `defined?`.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
01/04/2018
-
10:58 PM Bug #14279: Modifying splat argument causes segmentation fault
- I think something like a TypeError should be raised in such a case.
-
06:26 PM Bug #14198: Error forwarding standard input to subprocess
- Thanks for the suggestions.
The following code snippet based on `IO.popen` seems to work. It executes a command, and it returns its output as an array containing the output lines. Optionally, the output is written to stdout too.
~... -
02:37 PM Bug #14314: Marshalling broken in Ruby 2.5.0 for Structs with keyword_init: true
- ah yeah i see the problem
comparing the dump of the two cases, the dump doesn't know that the struct might need keyword_init (might not need to know?)
the problem is that its hard coded and can't be overwritten by own dump/load met... -
12:47 PM Bug #14314 (Closed): Marshalling broken in Ruby 2.5.0 for Structs with keyword_init: true
- Steps to reproduce:
~~~
irb(main):001:0> Foo = Struct.new(:foo)
=> Foo
irb(main):002:0> Marshal.load(Marshal.dump(Foo.new('a')))
=> #<struct Foo foo="a">
irb(main):003:0> Bar = Struct.new(:bar, keyword_init: true)
=> Bar(keywor... -
02:37 PM Feature #14278: Ambiguous Exception for OpenSSL::HMAC.digest
- Hanmac (Hans Mackowiak) wrote:
> the Error Message is common for all other stuff, check for example File.read(nil) has same error:
> ...
Thanks for your reply, and yeah that's the point. Errors must be more specific to reduce debugging... -
09:53 AM Feature #14278: Ambiguous Exception for OpenSSL::HMAC.digest
- the Error Message is common for all other stuff, check for example File.read(nil) has same error:
~~~
TypeError: no implicit conversion of nil into String
~~~
implicit conversion means that while an object might has a to_s meth... -
12:56 PM Revision 0f806b49 (git): test/ruby/test_io.rb: relax RLIMIT_NPROC for invocation of ruby
- This limit seems to be too restrict. It sometimes produces the
following warning when running `make test-all`:
```
TestIO#test_close_on_exec<main>: warning: pthread_create failed for
timer: Resource temporarily unavailable, scheduling b... -
12:47 PM Revision 0947c2ba (git): node.h: add NODE_ONCE instead of reuse of NODE_SCOPE
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:51 AM Revision 3ec5c755 (git): suppress warnings for long string literals
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
07:51 AM Revision f8de9b04 (git): define NO_LONG_LONG appropriately
- as documented above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
07:51 AM Revision beaf2ace (git): ULL suffix is a C99ism
- Don't assume long long == 8 bytes.
If you can assume C99, there are macros named UINT64_C and
such for appropriate integer literal suffixes.
If you can't, no way but do a bitwise or.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61... -
07:51 AM Revision fa26bdc6 (git): ULL suffix is a C99ism
- ... and why not just use ~0 instead?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
07:14 AM Feature #14276: Ruby core debugger API
- dsferreira (Daniel Ferreira) wrote:
> > > Developing production code without an available debugger is not manageable.
> ...
I also work fine without a debugger except maybe once per year, and then it's usually for C, not Ruby. But I kn... -
01:02 AM Feature #14276: Ruby core debugger API
> > Developing production code without an available debugger is not manageable.
> ...
OK. Lets replace the wording from "not manageable" to "not very manageable"?
> Here you make the assumption that, all the things included
> ...-
07:07 AM Revision e743a353 (git): iseq.c: Refactor out rb_iseq_new_ifunc from rb_iseq_new_with_opt
- It is too error-prone to pass IMEMO_IFUNC object as NODE*.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
05:03 AM Feature #14313 (Closed): Support creating KeyError with receiver and key from Ruby
- `KeyError` has readers for error details, `receiver` and `key`. They are convenient to process `KeyError`.
We can set `receiver` and `key` to `KeyError` by `rb_key_err_new()` in C. But we can't set them in Ruby. Because `receiver` and... -
04:48 AM Bug #14312 (Closed): backport r61591
- 変なメモリを読み出す可能性があるので、バックポートお願いします。2.5 だけです。
-
04:44 AM Revision 1e4be7a8 (git): iseq.c (rb_iseq_new_with_opt): handle the case where node is imemo_func
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:52 AM Bug #14266: Set#clone(freeze: false) makes frozen internal hash
- I see two possible ways to fix this:
1) Switch to overriding `clone` instead of `initialize_clone` in such cases.
2) Make `clone(freeze: false)` call `initialize_clone(freeze: false)`, but have `clone` otherwise call `initialize_cl... -
01:46 AM Revision 9edca48c (git): insns_info.inc.tmpl: share large tablese
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
01:30 AM Revision 7acd7b27 (git): insns_info.inc: position independent
- * template/insns_info.inc.tmpl (insn_name_info): make position
independent for large strings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:44 AM Revision a1bbb2a7 (git): Fix doc typo in Symbol#to_proc [Fix GH-1785]
- [ci skip]
From: Dimitris Zorbas <dimitrisplusplus@gmail.com>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:26 AM Revision 9b842fd0 (git): compile.c: next label
- * compile.c (compile_next): label for jump to the end of block is
removable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:26 AM Revision aee02268 (git): test_iseq_load.rb: set location
- * test/-ext-/iseq_load/test_iseq_load.rb (assert_iseq_roundtrip):
set path and line number from callers.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
01/03/2018
- 11:05 PM Revision 778d2028 (git): * 2018-01-04
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
11:05 PM Revision af597321 (git): compile.c: fix disasm dump
- * compile.c (DECL_ANCHOR): initialize as anchor type, which is not
a valid iseq element.
* compile.c (BADINSN_DUMP): dump from the first element, excluding
the anchor itself.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61584 ... -
09:01 PM Bug #14279 (Closed): Modifying splat argument causes segmentation fault
- Using Docker Ruby images ruby:2.2 through ruby:rc as of 2018-01-03, this little bit of code causes a segmentation fault:
~~~
class A
def x(*args)
args = 13
super
end
end
A.new.x
~~~
I'm not sure what the behavi... -
07:57 PM Feature #14276: Ruby core debugger API
- > Developing production code without an available debugger
> ...
This appears to be somewhat opinionated since I do just
fine without a debugger (except for pp, just as tenderlove
once said that he is a puts debugger, I am a pp debugg... -
02:52 AM Feature #14276 (Open): Ruby core debugger API
- I would like to propose the creation of a ruby core minimal API for a Debugger.
Historically we have been relying on gems as providers of debug functionality.
This has caused problems with debugger APIs being broken and the debugger ... -
07:53 PM Feature #14278 (Open): Ambiguous Exception for OpenSSL::HMAC.digest
- The `OpenSSL::HMAC.digest` shows unclear and ambiguous exception when key is nil.
~~~ ruby
require 'openssl'
key = nil
OpenSSL::HMAC.digest(OpenSSL::Digest.new('sha256'), key, 'RubyRuby')
TypeError: no implicit conversion of n... -
07:03 PM Feature #14277: Improve strings vs symbols ambiguity
- Hi Robert and remaining active participants of the conversation,
It is hard to reply to all your considerations.
The subject seems to be very complex to be discussed in a linear way.
I created this new issue in order to understand w... -
12:49 PM Feature #14277: Improve strings vs symbols ambiguity
- Since not everyone here knows Sequel, let me give an example on how strings and symbols are treated differently in that library.
~~~ ruby
DB[:users].select(:name).sql == %q{SELECT "name" FROM "users"}
DB[:users].select('name').sql =... -
12:31 PM Feature #14277: Improve strings vs symbols ambiguity
- For those saying that typing two "'" is about the same effort as a ":", you didn't actually understand the real issue. Most savings happens with the hash syntax. I take much less time to type "{a: 1}" than "{'a' => 1}".
-
10:06 AM Feature #14277: Improve strings vs symbols ambiguity
- jeremyevans0 (Jeremy Evans) wrote:
> Just because there some cases where you can use either a string or a symbol does not imply that you can use a string in all cases where you can use a symbol, or vice-versa.
True. In some cases ... -
09:58 AM Feature #14277: Improve strings vs symbols ambiguity
- > I use the term "Ambiguity" to emphasise the grey area where ruby developers
> ...
This is a general problem.
I personally think that ruby would be simpler without ... Symbols. :)
But people have been using symbols and symbols we... -
09:47 AM Feature #14277: Improve strings vs symbols ambiguity
- the difference from Symbol vs String was from a time long ago before frozen String literals where added
in 99% of the cases, use Symbol if you care about the name, like keys in a hash, key parameters, or method names, or 'enum' values... -
09:37 AM Feature #14277: Improve strings vs symbols ambiguity
- duerst (Martin Dürst) wrote:
> And just in case somebody cares, I have a library where the distinction between Symbol and String is crucial (and easy to understand). So I'm not supporting such a change, even if the general transition ... -
09:32 AM Feature #14277: Improve strings vs symbols ambiguity
- duerst (Martin Dürst) wrote:
> Koichi has given a challenge, most probably because he thinks it's very difficult if not impossible. Koichi only wrote "we can consider again".
Koichi is a very busy man like most of us.
I hope he ca... -
09:30 AM Feature #14277: Improve strings vs symbols ambiguity
- duerst (Martin Dürst) wrote:
> So are you saying we should disallow
> ...
As a ruby developer when I use an API I tend to expect that both strings and symbols are accepted since that has become the standard way of doing things in rub... -
09:16 AM Feature #14277: Improve strings vs symbols ambiguity
- jeremyevans0 (Jeremy Evans) wrote:
> To say strings and symbols are ambiguous is to imply that it is not possible to differentiate the two.
Ambiguity definition: _"doubtfulness or uncertainty of meaning or intention: to speak with... -
09:05 AM Feature #14277: Improve strings vs symbols ambiguity
- jeremyevans0 (Jeremy Evans) wrote:
> If you look at ruby code in the wild, is_a?(Symbol) seems even more common than case Symbol, and sometimes in places where symbol behavior differs from string behavior by design.
If the transiti... -
05:49 AM Feature #14277: Improve strings vs symbols ambiguity
- jeremyevans0 (Jeremy Evans) wrote:
> If you need to have symbols anyway, then the only reason to use the symbol syntax for strings is to save a single character. In which case it would be better to introduce a new terser form of stri... -
05:43 AM Feature #14277: Improve strings vs symbols ambiguity
- dsferreira (Daniel Ferreira) wrote:
> Can we discuss here what are the rules that would allow the transition path solution to be accepted?
Koichi has given a challenge, most probably because he thinks it's very difficult if not imp... -
05:43 AM Feature #14277: Improve strings vs symbols ambiguity
- duerst (Martin Dürst) wrote:
> So are you saying we should disallow
> ...
I would also support deprecating passing strings to methods which internally convert the strings to symbols, and raising `TypeError` in Ruby 3. However, I don't ... -
05:36 AM Feature #14277: Improve strings vs symbols ambiguity
- dsferreira (Daniel Ferreira) wrote:
> This is the ambiguity:
> ...
This is not ambiguity. The methods are designed to be used with symbols. The methods also accept strings in order to be a little easier to use in some situations.
... -
05:27 AM Feature #14277: Improve strings vs symbols ambiguity
- dsferreira (Daniel Ferreira) wrote:
> This is the ambiguity:
> ...
So are you saying we should disallow
```ruby
alias_method "foo", "bar"
```
I definitely would support that (after some depreciation period). -
04:06 AM Feature #14277 (Rejected): Improve strings vs symbols ambiguity
- This is the ambiguity:
```ruby
alias_method :foo, :bar
alias_method "foo", "bar"
```
Ruby developers are using strings and symbols interchangeably as if they were the same thing.
This is happening in ruby core, in ruby gems and... -
06:15 PM Bug #14247: Thread#fetch raise KeyError without key and receiver
- ruby_2_5 r61583 merged revision(s) 61507.
-
06:14 PM Revision ba5b7136 (git): merge revision(s) 61507: [Backport #14247]
- Fix KeyError#{key,receiver} of Thread#fetch
[ruby-core:84508] [Bug #14247]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_5@61583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:12 PM Bug #14248: configure fails to detect fd_mask type on OS X
- ruby_2_5 r61582 merged revision(s) 61500.
-
06:12 PM Revision de6c5ae9 (git): merge revision(s) 61500: [Backport #14248]
- fix fd mask detection on os x
This was broken in r59440 (3215b27a9abd8de793cf517f32d8901fd421eb1c)
[Bug #14248]
From: Stefan Kaes <skaes@railsexpress.de>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/rub... -
06:11 PM Bug #14243: Comments inside ERB tags broken
- ruby_2_5 r61581 merged revision(s) 61497.
-
06:11 PM Revision 887dced4 (git): merge revision(s) 61497: [Backport #14243]
- erb.rb: preserve the behavior for invalid syntax
comment. Fix regression at r58948.
I even don't want to deprecate it because deprecation needs to lex all
embedded Ruby script using Ripper and it would be slow. ... -
06:04 PM Bug #14236: rb_autoload の可視性が変更された結果、特定のgemを使用するとランタイム時に落ちるようになった
- ruby_2_5 r61580 merged revision(s) 61479.
-
06:03 PM Revision dc96b227 (git): merge revision(s) 61479: [Backport #14236]
- variable.c: public rb_autoload
* variable.c (rb_autoload): restore the visibility for backward
compatibility. [ruby-core:84454] [Bug #14236]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_5@61580 b2dd03c... -
06:02 PM Bug #14231: __uint128_t check in hash.c is broken, use
- ruby_2_5 r61579 merged revision(s) 61471,61472.
-
06:02 PM Revision 364f62a0 (git): merge revision(s) 61471,61472: [Backport #14231]
- Use UINT128_T support flag from configure
Current check for __uint128_t in hash.c is not valid, since it ignores
compilers other than gcc. We hit this on lcc on e2k platform.
Configure script properly checks fro... -
01:58 PM Revision 6bc72d25 (git): compile.c: label sp
- * compile.c (dump_disasm_list_with_cursor): show stack depth for
each label.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:19 AM Revision 44cf5baa (git): dln.c: dln_incompatible_library_p
- * dln.c (dln_incompatible_library_p): renamed as the error message
with dln prefix, since it is not bound to xmalloc restrictively.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61577 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:18 AM Feature #14275: GC not aggressive enough
- > Sometimes a well-placed String#clear has a good effect, but
> ...
I myself have been slowly starting to make use of .dup more
since I also tend to use frozen string set to true.
While my ruby code "appears" to be faster than befor... -
01:52 AM Feature #14275 (Open): GC not aggressive enough
- Ruby memory usage has always been a thorn in my side, more so than (lack of)
speed. I sometimes take vacations into Perl5 or C to escape from it.
Sometimes a well-placed String#clear has a good effect, but I'm not sure
if it's acce... -
09:05 AM Revision 21a2146e (git): dln.c: xmalloc_mismatch_p with dlopen
- * dln.c (xmalloc_mismatch_p): define only when using dlopen,
otherwise dlsym is not available too, and should be used then.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:28 AM Feature #14274: Merge Std-Lib Time Class into Core
- `time` requires `date`, so this would either require `date` be moved from stdlib to core (including `Date` and `DateTime`). While `time` itself only uses `Date._parse` and `Date._strptime`, people could be requiring `time` to use featur...
-
01:19 AM Feature #14274: Merge Std-Lib Time Class into Core
- I do not use rails, but I somewhat agree with you in the general
sense. I never remember the difference between date and time
offhand, for instance.
> I fail to see what makes the Std-Lib version of that class so
> ...
I do not kno... -
02:53 AM Bug #14226: Revert line number of "return", "b-return" and "end" events
- The new issue has been created: [Ruby core debugger API](https://bugs.ruby-lang.org/issues/14276)
-
01:43 AM Revision 96d19b6c (git): delete extra #undef [ci skip]
- Sorry, this was a garbage.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61575 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
01/02/2018
-
11:27 PM Feature #14274 (Open): Merge Std-Lib Time Class into Core
- Please excuse me if this is a duplicate or already asked-and-answered. I won't be offended by an automatic close.
I personally find it confusing when to use the Core version of the `Time` class versus the Std-Lib `require "time"` vers... -
10:48 PM Bug #14234: Failed to build on CentOS 6.9
- Do we know when the next version of ruby is likely to be released, and if it will include this patch? I'm trying to build ruby 2.5.0 for CentOS 6 and running into this same issue.
- 09:51 PM Revision 7bbff604 (git): variable.c: fix autoload stack space regression
- r61560 ("offsetof(type, foo.bar) is (arguably) a GCCism")
introduced 16 bytes of stack overhead on 64-bit systems.
Remove that overhead and cast, instead. While we're at it,
restore the "waitq" name to clarify the purpose of the field.
... - 09:23 PM Revision 2244bf57 (git): thread_pthread.c: use container_of
- It's easier to read this macro from ccan than open-coding pointer
arithmetic.
thread_pthread.c (ubf_wakeup_all_threads): use container_of
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
08:40 PM Bug #14273 (Closed): Stack Consistency Error from return in loop
- ```ruby
def foo(x)
unless x
while !x
return nil
end
end
end
foo(nil)
```
```
(irb):18: [BUG] Stack consistency error (sp: 100, bp: 101)
ruby 2.5.0p0 (2017-12-25 revision 61468) [x86_64-darwin17]
-- Cras... - 03:29 PM Revision 751c64f8 (git): * 2018-01-03
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:29 PM Revision cff48e44 (git): check an existence of block.
- * gc.c (rb_raw_obj_info): check block before using it.
* vm_core.h (vm_block_iseq): r61565 introduced NULL check but this
check is only needed by `rb_raw_obj_info()` and it is called at GC
debug mode. Above fix for `rb_raw_obj_info(... -
02:31 PM Bug #14269: backport r61562, r61563, r61566, r61568, r61569 (fix SEGV touching uninitialized memory)
- r61566 については ruby_2_3 では switch 文に default 節があるため未初期化のままアクセスされることはなく SEGV は発生しないと思いますが、初期化しておいて悪いことはないと思い REQUIRED のチケットに含めました。しかし backport は不要かもしれませんので最終判断は usa さんにお任せします。
-
12:51 PM Bug #14269 (Closed): backport r61562, r61563, r61566, r61568, r61569 (fix SEGV touching uninitialized memory)
- backport 管理用チケットです。
-
02:24 PM Bug #14272 (Closed): backport r61561 (fix memory leak (FOUND BY A COMPILER WARNING))
- backport 管理用のチケットです。
-
02:09 PM Bug #14271 (Closed): Random TestIO_Console#test_oflush failure
- From time to time, I observe the following test suite error:
~~~
1) Failure:
TestIO_Console#test_oflush [/builddir/build/BUILD/ruby-2.5.0/test/io/console/test_io_console.rb:215]:
Expected ["b", "ab"] to include "a".
~~~ -
12:57 PM Bug #14270 (Closed): backport r61564, r61565, r61571 (fix SEGV touching uninitialized memory)
- backport 管理用チケットです。
-
10:59 AM Feature #11473: Immutable String literal in Ruby 3
- FWIW, Rubocop suggests now in recent versions that you use the "unary plus" as the "one-character" approach to thaw a frozen string: http://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Performance/UnfreezeString
More details in the PR th... -
08:53 AM Feature #14268 (Closed): [PATCH] net/protocol: optimize large read case
- ```
Any comment? Will commit in a few days if none.
net/protocol: optimize large read case
There are several places where rbuf_consume is called with
@rbuf.size as its length arg; simplify that case by avoiding
the slow String#... -
06:59 AM Bug #14260: test failure related with proc arity on 32-bit environment (e.g. Solaris 10 with 32-bit compile)
- ngoto (Naohisa Goto) wrote:
> >> ビットフィールドのデフォルトは unsigned int というのがCの規格にて定められていますが、
> ...
調査していただいてありがとうございました。そのような状況であれば裸のintの利用は控えてsignedかunsignedを明示したほうが良さそうですね。修正は妥当そうだと思いました。 -
06:52 AM Feature #14045: Lazy Proc allocation for block parameters
- > Don't report a bug on a closed feature, report it as a new bug (and link to the feature), thanks.
Thanks, I wasn't aware which way was preferred. I've opened #14267 to report this as a new bug.
> ...
Agreed, but when dealing wit... -
01:10 AM Feature #14045: Lazy Proc allocation for block parameters
- myronmarston (Myron Marston) wrote:
> This change introduces a bug in RSpec. I'm working on a work around for RSpec (and hope to cut a release with a fix soon) but users running Ruby 2.5 with an older RSpec version will be affected, an... -
06:47 AM Feature #14267 (Closed): Lazy proc allocation introduced in #14045 creates regression
- The following script consistently prints `Proc equality: true` on versions of Ruby before 2.5, but prints `Proc equality: false` on Ruby 2.5:
``` ruby
# regression.rb
def return_proc(&block)
block
end
def return_procs(&block)... -
06:46 AM Revision 6faadd78 (git): include missing header
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:42 AM Revision 5b184f27 (git): fix SEGV inspecting uninitialized objects
- obj_info() assumes the given object is alive. OTOH
gc_writebarrier_incremental is called before or in middle of
object initialization. Can casue SEGV.
(lldb) run
Process 48188 launched: './miniruby' (x86_64)
Process 48188 stopped
* th... -
06:42 AM Revision 1d4129d9 (git): fix SEGV inspecting already freed objects
- obj_info() assumes the given object is alive. Passing freed
objects to it results in SEGV.
(lldb) run
Process 29718 launched: './miniruby' (x86_64)
Process 29718 stopped
* thread #1: tid = 0x3082c5, 0x00000001000bfaab miniruby`pathobj_... -
06:42 AM Revision 13af45c0 (git): fix uninitialized variable
- Likewise this can easily be noticed if you read the warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:42 AM Revision 54983030 (git): fix SEGV touching uninitialized local variable
- This imemo_name is used uninitialized because the switch
above does not cover all possible imemo types.
(lldb) run
Process 26068 launched: './miniruby' (x86_64)
Process 26068 stopped
* thread #1: tid = 0x14ba96, 0x00007fff8a402132 libsy... -
06:42 AM Revision 20389994 (git): fix SEGV touching uninitialized memory
- This function can be called from rb_data_typed_object_zalloc().
No assumption can be made about object internals.
(lldb) run
Process 22135 launched: './miniruby' (x86_64)
Process 22135 stopped
* thread #1: tid = 0x14a3af, 0x000000010008... -
06:42 AM Revision 9aabe5a5 (git): fix SEGV touching uninitialized memory
- This function can be called from Init_VM().
No assumption can be made about object internals.
(lldb) run
Process 15734 launched: './miniruby' (x86_64)
Process 15734 stopped
* thread #1: tid = 0x1441d4, 0x00000001000bdfcb miniruby`rb_raw... -
06:41 AM Revision cce479d6 (git): fix SEGV touching uninitialized memory
- This function can be called from InitVM_Object().
No assumption can be made about object internals.
(lldb) run
Process 10675 launched: './miniruby' (x86_64)
Process 10675 stopped
* thread #1: tid = 0x14252c, 0x00000001000bdda9 miniruby`... -
06:41 AM Revision 58517060 (git): fix SEGV touching uninitialized memory
- This function can be called from boot_defclass().
No assumption can be made about object internals.
(lldb) run
Process 2386 launched: './miniruby' (x86_64)
Process 2386 stopped
* thread #1: tid = 0x13f3b6, 0x00000001001e0b26 miniruby`rb... -
06:41 AM Revision e5914dd4 (git): fix memory leak (FOUND BY A COMPILER WARNING)
- Confusion of argument order ignores this st_free_table.
Results in garbaged table not GCed.
Easily noticable when you read the compiper warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision 5471bf9c (git): offsetof(type, foo.bar) is (arguably) a GCCism
- TL;DR see http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2031.htm
Suppose we have:
struct X {
struct Y {
z_t z;
} y;
} x;
then, you _cant_ infer offsetof(struct X, y.z). The ISO C99 section
7.17 says nothing about such situa... -
06:41 AM Revision 8dc0c7c0 (git): comparing function pointer versus void* is a GCCism
- However dlsym() requires such feature so this function is non-
portable by nature. Cannot but suppress warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision 1f76918a (git): label as lvalue is a GCCism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision a6b50f37 (git): statement experssion is a GCCism
- should mark as such.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision a5a5714b (git): enum value grater than int is a GCCism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision 8ebe5da2 (git): _Static_assert is a C11ism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision db5d556f (git): bit-fields other than int is a C99ism
- To be precise C90 says "A bit-field may have type int, unsigned
int, or signed int". It is clear that char or enum are NG.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision b8f8c202 (git): initializer paren-string `{("str")}` is a C99ism
- First, `"str"` is a string constant but `("str")` is not. It is a
random expression whose type happen to be const char*. Second,
non-constant initializer element is forbidden in C90. Mixture of
these two results in the fact that `{("s... -
06:41 AM Revision dfb24be6 (git): string literal longer than 509 characters is a C99ism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision 11c19de7 (git): flexible array member is a C99ism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision 91715ee5 (git): long long is a C99ism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision 1836af76 (git): comma at the end of enum is a C99ism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision 67b547d0 (git): __VA_ARGS__ is a C99ism
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision ef19834e (git): long long is a C99sim
- Don't assume 8-bytes integers == "long long".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision f6f1cfcb (git): string literal longer than 509 characters is a C99ism
- Should avoid such thing.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision 76091d43 (git): "%z" printf format specifier is a C99ism
- PRIxSIZE is also. But shimmed in ruby.h
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision f03146dd (git): int (*)(void) is incompatible with void*
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
06:41 AM Revision 3f1ef729 (git): rb_insn_func_t is incompatible with void*
- Why not just use void* ?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision b6a2d63e (git): explicit cast to void* required for %p
- These functions take variadic arguments so no automatic type
promotion is expected. You have to do it by hand.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:41 AM Revision b4b0e8bd (git): suppress warning for clang
- In this function, "volatile" is specified twice in macro-expanded
`VAR_INITIALIZED(cont)` part. That is a problem in fact. However
I don't want to touch this line because it is already a messy
workaround for clang SEGV. Let me just ig... -
04:24 AM Revision 035db929 (git): parse.y: fix typo
- * parse.y (singleton): fix typo, show the expression.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
04:20 AM Bug #14265 (Third Party's Issue): Possible bug in OpenSSL library
- Duplicate of [Bug #12561]. Current versions of Ruby/OpenSSL raise an exception:
$ ruby a.rb
plaintext: 030fa889aa00fc6554023a9aad8c9ca1776861746576730000000000000000000000000000000000000000000000000000000000000000000000000000000000... - 03:00 AM Revision 58d01fc1 (git): * 2018-01-02
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:00 AM Revision 6e2ceaf0 (git): parse.y: code end position
- * parse.y (parser_yyerror): use the given location as the end of
erred code, instead of the current position.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61538 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:24 AM Bug #14266 (Closed): Set#clone(freeze: false) makes frozen internal hash
- ```
% irb -r irb/completion --simple-prompt
>> require 'set'
=> true
> ...
=> #<Set: {}>
>> set.frozen?
=> false
> ...
=> true
```
In `Set#initialize_clone`, clone hash without freeze keyword argument.
But I think there is no...
01/01/2018
-
09:52 PM Bug #14265 (Third Party's Issue): Possible bug in OpenSSL library
- Hi,
I'm not sure if this is a bug or not, but there is a difference between Ruby and
Python when using Blowfish encryption in ECB mode. Using the same algorithm parameters, and the same input, the encrypted output is completely diff... -
08:31 PM Feature #14045: Lazy Proc allocation for block parameters
- For those who are interested, the work around I've implemented in RSpec is [here](
https://github.com/rspec/rspec-core/pull/2497/commits/84670489bb4943a62e783bd65f96e4b55360b141):
``` patch
From 84670489bb4943a62e783bd65f96e4b55360b... -
08:14 PM Feature #14045: Lazy Proc allocation for block parameters
- This change introduces a bug in RSpec. I'm working on a work around for RSpec (and hope to cut a release with a fix soon) but users running Ruby 2.5 with an older RSpec version will be affected, and the slight change in semantics introd...
-
07:41 PM Feature #9145: Queue#pop(true) return nil if empty instead of raising ThreadError
- How about a block form where the block is called with the popped element? The method would return false if called with non_block set to true if the queue is empty.
q = Queue.new
q << 1
q << 2
q << 3
while q.pop(true){|x| p x}
-
05:41 PM Bug #14263: Array Intersection does not seem to use hash
- > If two instances are .eql? but their hashes are not
Then `eql?` or `hash` are ill-defined. The definition of `hash` is that any two objects that are `eql?` must have identical `hash` values. Note that objects that are not `eql?` may... -
03:23 PM Bug #14264 (Closed): RDoc comment of warn does not mention uplevel:
- `Kernel#warn` support uplevel keyword argument since 2.5.0, but rdoc does not mention it.
https://github.com/ruby/ruby/blob/691b05e83c41d089c4f6c7a8bbac9dd63f36a144/error.c#L309-L325 -
01:18 PM Revision 691b05e8 (git): vm_core.h: make the algorithm of get_insn_info selectable
- Currently, VM_INSN_INFO_TABLE_IMPL == 0 means linear search, and
VM_INSN_INFO_TABLE_IMPL == 1 means binary search. I plan to add
succinct bitvector algorithm later.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61537 b2dd03c8-39d4-... -
12:51 PM Revision 295838e6 (git): iseq.h: Extract position array from iseq_insn_info_entry
- This makes TracePoint a bit fast by reducing cache misses of
`get_insn_info_binary_search`.
Also, I plan to use succinct bitvector algorithm for `get_insn_info`
instead of binary search. This change will make it easy.
git-svn-id: svn+... -
09:30 AM Revision e1fce44c (git): iseq.c: fix build error when VM_CHECK_MODE is enabled
- Follow up of r61534. Sorry.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:16 AM Revision fd950df7 (git): vm_core.h: refactoring of insns_info
- This factors rb_iseq_constant_body#insns_info and #insns_info_size to
struct iseq_insn_info.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61534 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:04 AM Revision d4764ef6 (git): parse.y: highlight yyerror
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61533 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
12:13 AM Revision da0c6035 (git): [DOC] doc/NEWS-2.5.0: remove trailing comma [ci skip]
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61532 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
12/31/2017
-
11:29 PM Revision 447fdd42 (git): Removed debug code. It is inconsistency in rubygems upsteream.
- Revert r58657, r58660, r58692, r58723.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61531 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
09:59 PM Bug #14263 (Closed): Array Intersection does not seem to use hash
- According to the documentation for Array#&, comparison is done using hash and eql? However, this does not seem to be the case in 2.5.0.
If two instances are .eql? but their hashes are not, an array & should be empty:
~~~ ruby
([Va... -
04:28 PM Bug #14260: test failure related with proc arity on 32-bit environment (e.g. Solaris 10 with 32-bit compile)
- >> ビットフィールドのデフォルトは unsigned int というのがCの規格にて定められていますが、
> ...
ご指摘のとおり、元の記述は間違いでした。
正しくは implementation-defined でしたので訂正します。ご指摘ありがとうございました。
原本は私も手元には無いのですが、C99 では 6.7.2.1 に書かれているとのことです。
参考にしたページ: http://en.cppreference.com/w/c/lang... -
01:22 PM Bug #14260: test failure related with proc arity on 32-bit environment (e.g. Solaris 10 with 32-bit compile)
- > ビットフィールドのデフォルトは unsigned int というのがCの規格にて定められていますが、
ごめんなさい、いま家にいてCの規格にアクセスできないのですが、そのような規定があった記憶がないです。どこのセクションに書いてありましたでしょうか? -
11:46 AM Bug #14260: test failure related with proc arity on 32-bit environment (e.g. Solaris 10 with 32-bit compile)
- 問題の bit field は r59358 で(2017-07-18)導入されていたものなので 2.5 のみ REQUIRED にしておきます。
-
03:05 PM Revision 5ceb1370 (git): parse.y: yyerror1
- * parse.y (yyerror1): pass location to parser_yyerror.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e - 03:00 PM Revision 374e7c79 (git): * 2018-01-01
- git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-
03:00 PM Revision 862189c7 (git): parse.y: yylloc at yyerror
- * parse.y (parser_yyerror): consider the case first_loc and
last_loc point different lines.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:15 PM Revision c5f4c44f (git): error.c: limit depth
- * error.c (rb_warn_m): limit backtrace depth to reduce objects to
be created but not used.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:12 PM Revision 487efc80 (git): test_exception.rb: more assertions
- [ruby-core:84568] [Bug #14262]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:01 PM Bug #14262 (Closed): ArgumentError (negative level (-1)) when `warn "test message", uplevel: -2`
- Applied in changeset trunk|r61525.
----------
error.c: negative uplevel
* error.c (rb_warn_m): negative uplevel is not allowed.
[ruby-core:84568] [Bug #14262] -
10:33 AM Bug #14262 (Closed): ArgumentError (negative level (-1)) when `warn "test message", uplevel: -2`
- When `uplevel: -2`, error message says `negative level (-1)`.
When `uplevel: -1`, no exception occur.
What is expected behavior?
```
% irb -r irb/completion --simple-prompt
>> warn("test", uplevel: -1)
(irb):1: warning: test
=> ... -
01:01 PM Revision fa2e4a20 (git): error.c: negative uplevel
- * error.c (rb_warn_m): negative uplevel is not allowed.
[ruby-core:84568] [Bug #14262]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
12:21 PM Revision d0afbff3 (git): prelude.c.tmpl: get rid of warnings on old gcc
- * template/prelude.c.tmpl: ignore missing-field-initializers on
old gcc, e.g. 4.4, which does not support pushing/popping
diagnostics.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
11:50 AM Bug #14261: invalid syntax segfaults: "x, true"
- I can reproduce SEGV with 2.5.0.
I cannot reproduce with 2.4.3 but I cannot say with confidence that the recent changes cause the SEGV.
I'd like to do `bisect` when I have a time. -
11:25 AM Bug #14261 (Closed): invalid syntax segfaults: "x, true"
- Applied in changeset trunk|r61523.
----------
parse.y: assignable_error
* parse.y (assignable_gen): should return valid NODE always even
on errors. [ruby-core:84565] [Bug #14261] -
11:25 AM Revision 45752157 (git): parse.y: assignable_error
- * parse.y (assignable_gen): should return valid NODE always even
on errors. [ruby-core:84565] [Bug #14261]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
06:53 AM Revision 59845bd4 (git): parse.y: yylloc at yyerror
- * parse.y (parser_yyerror): utilize the location given by bison.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61522 b2dd03c8-39d4-4d8f-98ff-823fe69b080e -
01:40 AM Bug #14226: Revert line number of "return", "b-return" and "end" events
- > I propose you create a new feature for this
Thanks Martin.
I will create it. -
12:06 AM Revision fb112a8c (git): fix reset order.
- * lib/rdoc/test_case.rb (setup): call `RDoc::Markup::PreProcess.reset`
at the end of `setup` method.
`RDoc::RDoc.new` requires `rdoc/generator/darkfish`
and requires `rdoc/tom_doc.rb` at last. It add post_proecssor
(at `add_post_...