Age | Commit message (Collapse) | Author |
|
The deleted function was to destructively overwrite existing method
entries, which is now considered to be a bad idea. Delete it, and
assign a newly created method entry instead.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
Instead of destructively write fields of method entries, create a
new entry and let it overwrite its owner.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
Before this changeset rb_method_definition_create only allocated a
memory region and we had to destructively initialize it later.
That is not a good design so we change the API to return a complete
struct instead.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
No longer used.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
Did you know that C functions can return structs? That has been
true since the beginning, but not that very useful until C99. Now
that we can write compound literals, this feature is much easier
to use. By allowing struct-returning functions, some formerly big
functions can be split into smaller ones, like this changeset.
At least GCC is smart enough to inline the split functions back
into one. No performance penalty is observed.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
Most (if not all) of the fields of rb_method_definition_t are never
meant to be modified once after they are stored. Marking them const
makes it possible for compilers to warn on unintended modifications.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
This is a pure refactoring to reduce copy & paste. Also the new
function is made visible from other parts of the interpreter, to
be used later.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
Not used from anywhere.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
Because rb_method_definition_t tracks its own complemented_count,
we no longer have to check it in rb_method_entry_t side.
Notes:
Merged: https://github.com/ruby/ruby/pull/2486
|
|
VM_NO_KEYWORDS was introduced first in vm_core.h, but it is best
to only use a single definition for this.
|
|
In general RB_PASS_CALLED_KEYWORDS should only be set if we are
sure the arguments passed come directly from Ruby. For direct calls
to these C functions, we should not assume that keywords are passed.
Add static *_internal versions of these functions that
Kernel#instance_{eval,exec} and Module#{class,module}_{eval,exec}
call that set RB_PASS_CALLED_KEYWORDS.
Also, change struct.c back to calling rb_mod_module_eval, now that
the call is safe.
Notes:
Merged: https://github.com/ruby/ruby/pull/2505
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/2506
|
|
* See https://github.com/test-unit/test-unit/issues/165
Notes:
Merged: https://github.com/ruby/ruby/pull/2506
|
|
|
|
Some warnings are because the @o.rb_scan_args call doesn't
include keyword arguments, but the first argument is passed to
rb_scan_args may have a last hash treated as keywords. Those
should be handled using rb_scan_args_kw on Ruby 2.7.
Other warnings are for the deprecated rb_scan_args behavior to
split option hashes or treat a nil argument as an option hash.
Those warnings should just be suppressed.
Notes:
Merged: https://github.com/ruby/ruby/pull/2504
|
|
|
|
|
|
|
|
* numeric.c (num_step): pass the extracted argument from keyword
argument, not the last argument itself which should have been
warned already.
|
|
|
|
|
|
|
|
|
|
|
|
miniruby
Notes:
Merged: https://github.com/ruby/ruby/pull/2503
|
|
* Writing shell scripts in a Makefile is very error-prone.
* TEST_BUNDLED_GEMS_ALLOW_FAILURES seemed to not work before.
Notes:
Merged: https://github.com/ruby/ruby/pull/2503
|
|
Time#inspect change
* See https://github.com/test-unit/test-unit/issues/165
Notes:
Merged: https://github.com/ruby/ruby/pull/2503
|
|
* Otherwise, it takes a very long time to notice those tests broke.
Notes:
Merged: https://github.com/ruby/ruby/pull/2503
|
|
https://github.com/ruby/stringio/commit/f0e5027279
|
|
https://github.com/ruby/stringio/commit/5892663e32
|
|
https://github.com/ruby/stringio/commit/a37ab7c419
|
|
https://github.com/ruby/stringio/commit/e8065153b8
|
|
https://github.com/ruby/stringio/commit/4dfd997e0a
|
|
https://github.com/ruby/zlib/commit/00ead8cb2c
|
|
https://github.com/ruby/zlib/commit/8f43b264cd
|
|
|
|
[ruby-list:50826]
|
|
|
|
|
|
|
|
RDoc cannot know if bare words are method name or not.
|
|
This is due to calling rb_mod_module_eval directly instead of using
rb_funcall_passing_block.
The problem with calling directly is it does not create a new VM
frame, so rb_mod_module_eval was called with no arguments, but with
the keyword given VM frame flag set, which causes problems
internally.
Notes:
Merged: https://github.com/ruby/ruby/pull/2500
|
|
If a method accepts no keywords and was called with a keyword, an
ArgumentError was not always issued previously. Force methods that
accept no keywords to go through setup_parameters_complex so that
an ArgumentError is raised if keywords are provided.
Notes:
Merged: https://github.com/ruby/ruby/pull/2501
|
|
This may be too verbose, if so, maybe it should be moved lower in
the document, or to a separate document.
|
|
|
|
* Optimize Array#flatten and flatten! for already flattened arrays
* Add benchmark for Array#flatten and Array#flatten!
[Bug #16119]
|
|
The verbose mode warning has been present for almost 10 years.
If we ever plan to remove these methods, we should make the warning
a regular deprecation warning so that people are aware.
Implements [Feature #15961]
Notes:
Merged: https://github.com/ruby/ruby/pull/2494
|
|
Patch from Matthew Kerwin.
Fixes [Bug #14358]
Notes:
Merged: https://github.com/ruby/ruby/pull/2494
|
|
+ is not a character that requires escaping in Bourne sh.
Fixes [Bug #14429]
Notes:
Merged: https://github.com/ruby/ruby/pull/2494
|
|
An EPIPE when sending the request should be ignored. Even if you
cannot write more data, you may still be able to read the server's
response.
Fixes [Bug #14466]
Notes:
Merged: https://github.com/ruby/ruby/pull/2494
|