| Age | Commit message (Collapse) | Author |
|
* test/lib/test/unit/assertions.rb (assert_cpu_usage_low): apply
the timeout scale to measuring period. this assertion is very
runtime environment dependent.
|
|
|
|
https://hackerone.com/reports/605262
|
|
|
|
|
|
[Bug #15906]
|
|
|
|
|
|
FrozenError#receiver was added recently for getting the related
object programmatically. However, there are cases where FrozenError
is raised and not handled, and in those cases the resulting error
messages lack detail, which makes debugging the error more difficult,
especially in cases where the error is not easily reproducible.
This includes the inspect value of the frozen object in FrozenError
messages, which should make debugging simpler.
|
|
* parse.y (tok_hex): flush token after dispatching the "invalid
hex escape" parse error.
|
|
Fixes [Bug #15889]
|
|
Skip the webrick httpauth tests that use crypt when testing on
OpenBSD.
Fixes [Bug #11363]
|
|
|
|
|
|
|
|
* variable.c (set_namespace_path): modules/classes can get named
by assignment to constant, even if frozen. [Bug #15891]
|
|
`vm->orig_progname` can be different from `vm->progname` when user
code assigns to `$0`. While `vm->progname` is kept alive by the
global table, nothing marked `vm->orig_progname`.
[Bug #15887]
|
|
* parse.y: continue parsing the rest of the here-document starting
line, after the terminator was not found.
|
|
* parse.y (warn_space_char_code): warn whitespace characters
escaped with meta/control prefix.
|
|
* parse.y (parse_atmark): numbered parameter name is not allowed
as a symbol regardless the context.
|
|
Similar to NameError#receiver, this returns the object on which
the modification was attempted. This is useful as it can pinpoint
exactly what is frozen. In many cases when a FrozenError is
raised, you cannot determine from the context which object is
frozen that you attempted to modify.
Users of the current rb_error_frozen C function will have to switch
to using rb_error_frozen_object or the new rb_frozen_error_raise
in order to set the receiver of the FrozenError.
To allow the receiver to be set from Ruby, support an optional
second argument to FrozenError#initialize.
Implements [Feature #15751]
|
|
* parse.y (here_document): broke the terminator condition down
into each piece, the positional condition, resetting the
dedented here-document indentation, and matching identifier.
suppress a false warning by icc.
|
|
* parse.y (parser_yylex): adjust the error indicator of unexpected
fraction part.
before:
~~~
1.2.3
^~~
~~~
after:
~~~
1.2.3
^~
~~~
|
|
|
|
https://rubyci.org/logs/rubyci.s3.amazonaws.com/solaris11s-sunc/ruby-master/log/20190526T052508Z.fail.html.gz
|
|
It is a wrapper for Timeout.timeout with the scale factor applied.
|
|
* parse.y (parser_yyerror, parser_compile_error): revert
r67224 (e5d10cda07b23682e5e4e64d1324e4d3247d4785) "Flush erred
token".
|
|
for Solaris.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable10s/ruby-master/log/20190525T131909Z.fail.html.gz
|
|
|
|
|
|
It fails on some CI environments.
https://rubyci.org/logs/rubyci.s3.amazonaws.com/debian8/ruby-trunk/log/20190524T003006Z.fail.html.gz
https://rubyci.org/logs/rubyci.s3.amazonaws.com/unstable11s/ruby-trunk/log/20190523T002505Z.fail.html.gz
|
|
|
|
Closes: https://github.com/ruby/ruby/pull/2133
|
|
[Feature #15323]
Closes: https://github.com/ruby/ruby/pull/2017
|
|
Heredocs are parsed line-by-line, so we need to keep track of the
temporary encoding of the string. Previously, a heredoc would
only detect mixed encoding errors if they were on the same line,
this changes things so they will be caught on different lines.
Fixes [Bug #15839]
|
|
rb_gc() kicks gc_finalize_deferred(), which invokes finalizers.
This means that any Ruby program can be run this point and
it may be thread switching points and so on.
However, it is difficult to think it invokes any Ruby programs.
For example, `GC.compact` use `rb_gc()` to implement it, howver,
any Ruby program must not be run on this timing.
For this reason (it is difficult to image it run any Ruby program),
I removed `gc_finalize_deferred()` line in rb_gc().
This patch solves GC.compact issue.
[Bug #15809] and re-enable GC.compact test.
|
|
except the special case `(nil..nil)`.
```
(1..).inspect #=> "1.."
(..5).inspect #=> "..5"
(nil..nil).inspect #=> "nil..nil"
```
[Bug #15745]
|
|
The behavior of `Hash[[nil]] #=> {}` was a bug until 1.9.3, but had been
remained with a warning because some programs depended upon it.
Now, six years passed. We can remove the compatibility behavior.
[Bug #7300]
|
|
|
|
|
|
[Bug #15821]
|
|
|
|
I'm debugging [Bug #15821] but my patch introduces another issue.
So I simply skip this test and re-enable it later.
|
|
|
|
|
|
Now, GC.compact has issues which makes rubyci RED, so I skip this test
and debug soon.
|
|
Examples why ASCII-only optimization cannot apply multi-byte
encodings which have 7-bit trailing bytes.
Suggested by @duerst at https://github.com/ruby/ruby/pull/2187#issuecomment-492949218
|
|
This commit adds an alternative packing strategy for compaction.
Instead of packing towards "most pinned" pages, we can pack towards
"most empty" pages. The idea is that we can double the heap size, then
pack all objects towards the empty side of the heap. This will ensure
maximum chaos for testing / verification.
|
|
[Bug #15780]
|
|
This allows cases such as:
```ruby
m ->(a = ->{@1}) {a}
m.call.call(1)
m2 ->(a: ->{@1}) {a}
m2.call.call(2)
```
Previously, this would cause a syntax error.
[Bug#15789]
|