shugo
d18dc74698
* enumerator.c (lazy_cycle): add Enumerable::Lazy#cycle.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-15 02:00:30 +00:00
nobu
9f9201b85d
* test/ruby/test_arity.rb (TestArity#err_mess): use assert_raise.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-15 01:31:43 +00:00
drbrain
724e683e86
* vm_eval.c (check_funcall): Raise ArgumentError if respond_to?
...
requires more than three arguments. [Bug #6000 ]
* test/ruby/test_object.rb (class TestObject): Test for respond_to?
requiring more than three arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 22:12:53 +00:00
marcandre
7316302483
* include/ruby/intern.h: Add rb_check_arity, rb_error_arity [ #6085 ]
...
* array.c: Use rb_check_arity / rb_error_arity
* class.c: ditto
* enumerator.c: ditto
* eval.c: ditto
* file.c: ditto
* hash.c: ditto
* numeric.c: ditto
* proc.c: ditto
* process.c: ditto
* random.c: ditto
* re.c: ditto
* signal.c: ditto
* string.c: ditto
* struct.c: ditto
* transcode.c: ditto
* vm_eval.c: ditto
* vm_insnhelper.c: ditto & implementation of rb_error_arity
* test/ruby/test_arity.rb: tests for above
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 21:10:34 +00:00
marcandre
35c356ea72
* vm_insnhelper.c: improve number of arguments error in case of
...
optional parameters (issue #6085 )
* include/ruby/intern.h: define UNLIMITED_ARGUMENTS
* test/ruby/test_arity.rb: test for above
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 21:10:16 +00:00
shugo
c8860b504e
* enumerator.c (lazy_init_iterator): break when Qundef is returned
...
to make obj.drop(3).take(2) work properly.
* enumerator.c (lazy_take_while): add Enumerable::Lazy#take_while.
* enumerator.c (lazy_drop): add Enumerable::Lazy#drop.
* enumerator.c (lazy_drop_while): add Enumerable::Lazy#drop_while.
* enumerator.c (InitVM_Enumerator): add Enumerable::Lazy#force as an
alias of to_a.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 13:04:18 +00:00
shugo
0b35e9e5dd
* enumerator.c (lazy_take): add Enumerable::Lazy#take.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 10:29:25 +00:00
usa
005953a17b
* test/test_tmpdir.rb (TestTmpdir#test_world_writable): skip on Windows.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 07:42:30 +00:00
marcandre
4c2e2d8bde
* numeric.c: fix flodivmod for cornercases [Bug #6044 ]
...
add ruby_float_mod
* insns.def (opt_mod): use ruby_float_mod
* internal.h: declare ruby_float_mod
* test/ruby/test_float.rb: tests for above
* test/ruby/envutil.rb: create helper assert_is_minus_zero
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 06:10:01 +00:00
nobu
4bce9fc7bd
more GCable
...
* test/test_weakref.rb (make_weakref): more GCable, probably.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 02:29:48 +00:00
nobu
cb1d290886
* enumerator.c (lazy_grep_func): should use === instead of =~, as
...
well as Enumerable#grep
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 01:44:37 +00:00
nobu
8cdfe403d3
Init_Enumerator
...
* enumerator.c (Init_Enumerator): initialize method IDs first.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-14 01:35:09 +00:00
shugo
6b4525912b
* enumerator.c (lazy_zip_func): use each for non-Array objects.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 23:16:37 +00:00
shugo
22434473c7
* enumerator.c (lazy_zip): add Enumerable::Lazy#flat_map.
...
* enumerator.c (lazy_lazy): just returns self.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 23:08:15 +00:00
nobu
8fe3fb4c0f
* compile.c (iseq_set_arguments): keyword rest arg without keyword args.
...
* node.c (dump_node): dump kw_rest_arg too.
* parse.y (block_param, f_arg): more kwrest patterns.
[ruby-core:42455][Bug #5989 ]
* parse.y (new_args_gen): no extra kw_rest_arg if no keyword rest arg.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 13:00:17 +00:00
nobu
d6a977f667
* parse.y (block_param, f_args): add rules for the case arguments
...
begin with kwrest. [ruby-core:42455][Bug #5989 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 06:17:08 +00:00
naruse
db83618d2c
* io.c (io_encoding_set): always warn if external encoding and internal
...
encoding are identical. [ruby-core:40727] [Bug #5568 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34997 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 04:03:06 +00:00
naruse
272d72efc0
Fix error and show given message and match message.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 04:03:03 +00:00
nobu
df058ea0e3
Bug #5350
...
* gc.c: add ObjectSpace::WeakMap. [ruby-dev:44565][Bug #5350 ]
* lib/weakref.rb: use WeakMap instead of _id2ref.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 03:37:06 +00:00
nobu
826cdd67a0
assert_warn, assert_warning
...
* test/ruby/envutil.rb (assert_warn): add optional message argument.
* test/ruby/envutil.rb (assert_warning): moved from test_io_m17n.rb
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-13 03:34:11 +00:00
naruse
7f199d12e0
Add missing assert_warning.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-12 15:17:27 +00:00
nobu
33ceea5cdb
* encoding.c (rb_find_encoding): new function find encoding from
...
arbitrary object as a pointer to rb_encoding, and return NULL if
not found.
* io.c (io_encoding_set): just warn unsupported encodings, but not
exception. [ruby-core:40726] [Bug #5567 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-12 10:23:17 +00:00
nobu
a2229db3e8
* vm_method.c (Init_eval_method): copy basic methods to Exception.
...
[ruby-core:40287][Bug #5473 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34983 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-12 03:44:40 +00:00
nobu
b19f3a8a15
* eval_jump.c (rb_exec_end_proc): remember the latest exit status.
...
[ruby-core:43173][Bug #5218 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-12 01:13:40 +00:00
naruse
90b7ddb89f
Exclude json/add/complex.rb.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34981 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-12 00:32:16 +00:00
nobu
bcb9e567c4
* lib/tmpdir.rb (Dir.tmpdir): should not use world-writable but
...
non-sticky directory.
* lib/tmpdir.rb (Dir.mktmpdir): check the parent directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-11 22:19:06 +00:00
nobu
b87f2fe1e4
* random.c (random_s_rand): ensure default PRNG is re-initialized
...
after fork. patched by Eric Wong. [ruby-core:41209][Bug #5661 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-11 22:03:36 +00:00
naruse
b7df3e9f4e
* pack.c (pack_unpack): when unpack('M') occurs an illegal byte
...
sequence, output the "=" character and the following character in
the decoded data without any transformation.
[ruby-dev:44875] [Bug #5635 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-11 14:59:42 +00:00
naruse
4d8d3184d1
* ext/json: Merge 164a75c8bd2007d32c4d7665d53140d8fc126dcd.
...
[ruby-core:41917] [Bug #5846 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-11 13:36:06 +00:00
nobu
a73d958c33
* st.c: add st_foreach_check for fixing iteration over packed table
...
and st_delete_safe. patched by Sokolov Yura at
https://github.com/ruby/ruby/pull/84
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-10 14:52:19 +00:00
nobu
efae619458
* st.c: fix packed num_entries on delete_safe. patched by Sokolov
...
Yura at https://github.com/ruby/ruby/pull/84
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-10 14:52:06 +00:00
naruse
3c45e3f1b7
Rescue even if it test_readpartial_locktmp RuntimeError. [Bug#6099]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-09 05:52:18 +00:00
shugo
a21d0f72c2
* enumerator.c (lazy_flat_map): add Enumerable::Lazy#flat_map.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34956 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-09 05:34:41 +00:00
nobu
5452b18f99
* test/ruby/test_lazy_enumerator.rb: tests for r34951 and r34952.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34955 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-09 01:13:59 +00:00
tenderlove
240c9acb5c
* ext/psych/lib/psych.rb (load, parse): stop parsing or loading after
...
the first document has been parsed.
* test/psych/test_stream.rb: pertinent tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-08 21:31:05 +00:00
tenderlove
a2e3de1b3f
* ext/psych/lib/psych.rb (parse_stream, load_stream): if a block is
...
given, documents will be yielded to the block as they are parsed.
[ruby-core:42404] [Bug #5978 ]
* ext/psych/lib/psych/handlers/document_stream.rb: add a handler that
yields documents as they are parsed
* test/psych/test_stream.rb: corresponding tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34953 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-08 21:21:52 +00:00
nobu
e160610200
* enumerator.c (enumerator_each, generator_each): pass arguments to
...
the block with yielder.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-08 15:26:01 +00:00
nagachika
0c8ae91651
* lib/xmlrpc/client.rb (module XMLRPC): fix typo.
...
* test/xmlrpc/test_client.rb (test_async_call): add test for
XMLRPC::Client#call_async to check above fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-07 13:45:04 +00:00
nobu
075d98c7dc
* error.c (rb_load_fail): should honor encoding.
...
* load.c (load_failed): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-07 07:30:31 +00:00
tenderlove
d576a25c26
* error.c (rb_loaderror_with_path): Adding the missing file as an
...
instance variable to the LoadError exception.
* load.c: call rb_loaderror_with_path so that the missing path is
added to the exception.
* ruby.c: call rb_loaderror rather than raising our own LoadError
exception.
* include/ruby/intern.h: add declaration for rb_loaderror_with_path.
* test/ruby/test_require.rb: add supporting test for LoadError#path
method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 23:38:33 +00:00
tenderlove
ce2f69862e
* lib/xmlrpc/parser.rb: support i8 types. Thanks Stas Kelvich!
...
[ruby-core:29246] [Feature #3090 ]
* test/xmlrpc/test_client.rb: supporting test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 23:30:03 +00:00
tenderlove
9e9264c8d5
* lib/xmlrpc/client.rb: assume servers that do not send a Content-Type
...
header are sending 'text/xml'. Thanks Nathan Leavitt!
[ruby-core:41204] [Bug #5660 ]
* test/xmlrpc/test_client.rb: supporting test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 22:45:43 +00:00
tenderlove
1ac1163f56
* test/xmlrpc/test_client.rb: adding a test for performing an XMLRPC
...
call.
* test/xmlrpc/data/blog.xml: supporting XML document for the response.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 22:40:38 +00:00
naruse
2fbc01fb56
Fix typo.
...
reported by Nobuhiro IMAI.$
https://twitter.com/no6v/status/176959588531314688
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 09:47:17 +00:00
nobu
bc6dde9420
* parse.y (parser_tokadd_string): escape simple regexp meta
...
character termninators.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 07:24:07 +00:00
nobu
dd9569ded8
* ext/io/console/console.c (set_rawmode): clear ECHOE and ECHOK
...
bits too.
* ext/io/console/console.c (echo_p): ignore ECHOE and ECHOK bits.
[ruby-dev:45309] [Bug #6116 ]
* ext/io/console/console.c (console_raw): fix rdoc.
* ext/io/console/console.c (console_set_echo): mentioned about
platform dependency.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-06 01:11:47 +00:00
tenderlove
8456c0603e
only run test_key
on ruby 2.0.0 or up
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-05 21:48:49 +00:00
nobu
c46bdadb84
* parse.y (block_call): rules for block_call after block_call.
...
based on a patch by pasberth https://github.com/ruby/ruby/pull/102
[ruby-dev:45308][Bug #6115 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-05 16:34:21 +00:00
nobu
0827c3848a
assert_valid_syntax
...
* test/ruby/test_syntax.rb (assert_valid_syntax): new assertion to
validate syntax.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-05 16:17:29 +00:00
kazu
bc4ef96c9e
fix typos
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-05 09:29:24 +00:00