1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/test
Jeremy Evans 37a2c660aa Convert keyword argument to required positional hash argument for Class#new, Method#call, UnboundMethod#bind_call
Also add keyword argument separation warnings for Class#new and Method#call.

To allow for keyword argument to required positional hash converstion in
cfuncs, add a vm frame flag indicating the cfunc was called with an empty
keyword hash (which was removed before calling the cfunc).  The cfunc can
check this frame flag and add back an empty hash if it is passing its
arguments to another Ruby method.  Add rb_empty_keyword_given_p function
for checking if called with an empty keyword hash, and
rb_add_empty_keyword for adding back an empty hash to argv.

All of this empty keyword argument support is only for 2.7.  It will be
removed in 3.0 as Ruby 3 will not convert empty keyword arguments to
required positional hash arguments.  Comment all of the relevent code
to make it obvious this is expected to be removed.

Add rb_funcallv_kw as an public C-API function, just like rb_funcallv
but with a keyword flag.  This is used by rb_obj_call_init (internals
of Class#new).  This also required expected call_type enum with
CALL_FCALL_KW, similar to the recent addition of CALL_PUBLIC_KW.

Add rb_vm_call_kw as a internal function, used by call_method_data
(internals of Method#call and UnboundMethod#bind_call). Add tests
for UnboundMethod#bind_call keyword handling.
2019-09-06 19:41:23 -07:00
..
-ext- Warn instance variable E 2019-08-10 13:18:41 +09:00
base64
benchmark Aliases capture_output to capture_io for test-unit compatiblity. 2019-08-08 17:19:23 +09:00
bigdecimal
cgi change call CGI methods from :: to . 2019-08-04 09:19:30 +09:00
coverage
csv Fix remaining warning issues in the tests due to keyword argument separation 2019-08-30 12:39:31 -07:00
date date_parse.c: avoid copying 2019-08-12 20:41:11 +09:00
dbm
digest Restore support library for only test files that are digest and csv. 2019-07-09 21:16:49 +09:00
drb test/drb/drbtest.rb: Skip test_06_timeout on Solaris10s 2019-09-02 22:33:27 +09:00
dtrace
erb Suppress uninitialized instance variable warnings 2019-07-04 18:12:08 +09:00
etc
excludes Drop unstable Travis osx in favor of GitHub Actions 2019-09-03 01:01:48 +09:00
fiddle
fileutils Improve same directory detection in FileUtils 2019-08-06 09:01:04 +09:00
gdbm
io
irb Set IRB::Context#return_format on test clarify 2019-08-16 07:10:45 +09:00
json
lib Automatically detect missing symbols 2019-09-01 16:31:15 +09:00
logger Move helper file of logger to under the test/logger. 2019-07-15 14:43:08 +09:00
matrix Add abs to Matrix (#2199) 2019-08-21 16:36:39 -04:00
misc
mkmf Fix keyword argument separation warnings in test 2019-08-30 12:39:31 -07:00
monitor
net Add Net::FTP#features and Net::FTP#option 2019-09-02 14:43:51 +09:00
nkf
objspace
open-uri The default charset of text/* media type is UTF-8. 2019-07-15 09:36:52 +09:00
openssl
optparse
ostruct
pathname Delegates 3 arguments for Pathname.glob. 2019-07-14 17:42:58 +09:00
psych [ruby/psych] Suppress uninitialized instance variable warnings 2019-07-25 07:52:17 +09:00
racc Clean up temporary directory for racc 2019-07-02 15:02:16 +09:00
rdoc Remove Travis CI workaround 2019-08-17 20:20:04 +09:00
readline Fix use_lib_reline for test/readline 2019-08-27 01:42:41 +09:00
reline Add test with encoding. 2019-08-27 01:23:46 +09:00
resolv Use lowercase letters for IPv6 addresses. 2019-07-30 11:59:54 +09:00
rexml [ruby/rexml] xpath: add missing value conversions for equality and relational expressions 2019-08-04 11:55:55 +09:00
rinda Fix Leaked thread 2019-07-31 17:45:43 +09:00
ripper Make ripper support **nil syntax 2019-08-30 12:39:31 -07:00
rss
ruby Convert keyword argument to required positional hash argument for Class#new, Method#call, UnboundMethod#bind_call 2019-09-06 19:41:23 -07:00
rubygems [rubygems/rubygems] Bump rubocop to 0.74.0 and fix new offenses 2019-09-05 18:48:15 +09:00
scanf
sdbm
shell
socket Try extending timeout of IO.select 2019-09-03 20:34:52 +09:00
stringio [ruby/stringio] Supported BOM 2019-08-14 11:20:58 +09:00
strscan
syslog
uri Make portable for standalone test-unit gem. 2019-08-19 18:37:22 +09:00
webrick Adjust indent [ci skip] 2019-08-11 00:44:13 +09:00
win32ole Get rid of toplevel methods 2019-07-08 16:05:04 +09:00
yaml
zlib Suppress deflateParams() warnings 2019-07-24 22:07:10 +09:00
runner.rb Separated tool/test/runner.rb and test/runner.rb 2019-07-25 16:57:38 +09:00
test_abbrev.rb
test_cmath.rb
test_delegate.rb
test_extlibs.rb
test_find.rb
test_forwardable.rb Document and add spec for delegating to constants in Forwardable 2019-07-26 07:35:58 -07:00
test_ipaddr.rb
test_mutex_m.rb
test_observer.rb
test_open3.rb Restore support library for only test files. 2019-07-09 21:04:07 +09:00
test_pp.rb
test_prettyprint.rb
test_prime.rb
test_pstore.rb Expand the timeout of test_pstore_files_are_accessed_as_binary_files 2019-08-05 12:52:14 +09:00
test_pty.rb
test_rbconfig.rb
test_securerandom.rb Test SecureRandom.uuid format 2019-07-26 09:56:53 -07:00
test_set.rb
test_shellwords.rb
test_singleton.rb
test_sync.rb
test_syslog.rb
test_tempfile.rb
test_time.rb
test_timeout.rb
test_tmpdir.rb
test_tracer.rb
test_tsort.rb
test_unicode_normalize.rb
test_weakref.rb
test_win32api.rb