Commit graph

5576 commits

Author SHA1 Message Date
shugo
a3e10f380a * object.c (rb_obj_singleton_class): new method
Kernel#singleton_class.  [ruby-core:21702]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-23 09:38:54 +00:00
tenderlove
094d03c5d3 * test/yaml/test_hash.rb (test_ref_append): adding a test for idref
append nodes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-22 20:18:57 +00:00
wanabe
91533255f8 add a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-22 11:44:17 +00:00
naruse
83c2f60b88 * lib/uri/common.rb (URI.encode_www_form_component):
convert strings of HTML5 ASCII incompatible encoding
  to UTF-8.

* lib/uri/common.rb (URI.encode_www_form_component):
  "\x83\x41" of Shift_JIS should be encoded as "%83A".
  This follows real implementations.

* lib/uri/common.rb (URI.decode_www_form_component):
  use given encoding for force_encoding. [ruby-dev:40721]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27001 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-21 12:36:14 +00:00
nobu
ed2dd5e3f4 * io.c (rb_io_initialize): add autoclose argument to control close
at finalization.  [ruby-core:26222]

* io.c (rb_io_autoclose_p, rb_io_set_autoclose): new methods.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-21 10:52:31 +00:00
wanabe
b7ed43e941 * test/dl/test_handle.rb: skip some tests on mswin/mingw.
because RTLD_DEFAULT and RTLD_NEXT don't work well on windows.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 09:47:07 +00:00
akr
4b6a7a46e8 add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26988 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 05:17:19 +00:00
akr
9ce419a45c * array.c (rb_ary_uniq_bang): the array is already unique if the
length is zero or one.
  (rb_ary_uniq): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26987 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-20 04:27:32 +00:00
wanabe
7fde261963 * test/dl/test_cfunc.rb (test_to_s): a result of sprintf("%x", ptr)
may contain 0.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-19 16:39:16 +00:00
wanabe
e40c43a1bf * test/dl/test_dl2.rb (DL::TestDL#ptr2num): add for LLP64.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-19 16:18:05 +00:00
wanabe
c28b2b9be2 * test/dl/test_dl2.rb: require 'dl/func' to refer DL::Function.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-19 16:16:22 +00:00
akr
4f74adc503 add test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-18 23:11:12 +00:00
naruse
9eb68d7c44 * util.c (ruby_strtod): Add support for Hexadecimal
floating-point expression [ruby-dev:40650] #2969

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26965 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-17 16:21:45 +00:00
naruse
f626a17d8c * lib/uri/common.rb (URI#{en,de}code_www_form_component):
renamed from URI#{en,de}code_www_component. [ruby-dev:40672]

* lib/uri/common.rb (URI#encode_www_form_component): %-encoded
  element should have always two hex.

* lib/uri/common.rb (URI#encode_www_form_component):
  better treatment for ASCII incompatible encodings and
  encodings whose lead byte may use 7bit.

* lib/uri/common.rb (URI#decode_www_form_component): add %20.

* lib/uri/common.rb (URI#decode_www_form_component): add
  result's encoding as 2nd argument.

* lib/uri/common.rb (URI#decode_www_form): added.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-17 15:35:38 +00:00
mame
4f78e7fff4 * parse.y (rb_intern3): prohibit Symbol with an invalid encoding.
[ruby-core:24621]

* test/ruby/test_m17n_comb.rb: modify a test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-16 16:26:04 +00:00
matz
01657b51f8 * io.c (rb_io_print): RDoc update. a patch from Daniel Kelley
in [ruby-core:28643].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-15 08:43:45 +00:00
naruse
1bf3ca494f * random.c (rb_reset_random_seed): set seed in this. [ruby-core:28655]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-15 03:26:29 +00:00
nobu
6a1a02ae83 * file.c (realpath_internal): regulate separators in prefix.
[ruby-core:28653]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-14 22:39:25 +00:00
nobu
32ed00ab18 * io.c (rb_io_each_codepoint): read directly when readconv is
needed but internal encoding is not set.  [ruby-core:28650]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-14 19:41:32 +00:00
matz
8b55878d2a * enum.c (enum_join): remove Enumerable#join. [ruby-core:24786]
* array.c (ary_join_1): use #to_ary to detect recursive array.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-13 05:55:46 +00:00
nobu
0884036a0a * file.c (rb_file_s_basename): check encoding of suffix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-12 15:44:24 +00:00
akr
614619031b indented.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-12 14:08:36 +00:00
akr
f4f7c3db4f wrap tests by Emoji module.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-12 14:08:08 +00:00
naruse
8212cdf176 * lib/uri/common.rb (URI.encode_www_form): new method to
generate URL-encoded form data. [ruby-dev:39246]

* lib/uri/common.rb (URI.encode_www_component,
  URI.decode_www_component): new method for encode/decode
  a name/value of HTML form.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26888 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-12 09:00:48 +00:00
akr
09492b5ab2 add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-11 13:39:42 +00:00
akr
7c269e72ef * time.c (time_round): new method Time#round. [ruby-dev:40595]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26873 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-11 13:39:12 +00:00
shugo
e3c25091cd * iseq.c (rb_iseq_clone): sets local_iseq and klass properly.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26867 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-10 16:07:06 +00:00
mame
bbcb186ae6 * test/dl/test_method.rb: delete a residual test for dl on libffi.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26858 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-09 11:52:02 +00:00
muraken
62f8df2d3c * enc/trans/EMOJI/*.src, enc/trans/emoji*, enc/x-emoji.c, test/ruby/enc/test_emoji.rb, tool/enc-emoji-citrus-gen.rb, tool/enc-emoji4unicode.rb, tool/jisx0208.rb, tool/test/test_jisx0208.rb: new encodings to support emoji charsets, which are used by Japanese mobile phones [ruby-dev:40528]. Thanks Yoji Shidara for a lot of contribution.
* tool/transcode-tblgen.rb: modified for enc-emoji4unicode.rb.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26856 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-09 09:15:42 +00:00
akr
57d414a1c7 add a test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-07 06:54:29 +00:00
akr
785b31bed4 * file.c: add optional basedir argument for realpath/realdirpath.
(realpath_internal): handle basedir.
  (rb_file_s_realpath): extract basedir from argument list.
  (rb_file_s_realdirpath): extract basedir from argument list.

* lib/pathname.rb (realpath): pass basedir.
  (realdirpath): ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26841 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-07 04:55:34 +00:00
mame
e796e95ec8 * io.c (rb_io_s_write, rb_io_s_binwrite): delete File#write and
#binwrite.  It may take a long time to make them stable, so 1.9.2
  should not include them.  We need refactoring to implement them
  again.

* test/ruby/test_io.rb: delete tests for them.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26827 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-06 04:52:31 +00:00
mame
127cfd1174 * io.c (rb_io_s_binwrite): use mode "r+b" instead of "ab" to handle
offset correctly.  [ruby-core:28517]

* test/ruby/test_io.rb: use assert_equal instead of assert.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26826 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-06 01:06:57 +00:00
mame
ae2065a285 * io.c (io_s_write, io_s_binwrite): add File#write and #binwrite.
[ruby-core:21701]

* test/ruby/test_io.rb: add tests for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26816 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-04 13:48:20 +00:00
mame
9a026aec0a * test/ruby/test_env.rb (TestEnv#test_select_bang): add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26810 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-03 17:36:39 +00:00
kazu
43ad8929df * test/ruby/test_hash.rb (TestHash#test_keep_if): fix typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26809 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-03 17:33:45 +00:00
matz
871e9d175e * hash.c (rb_hash_select_bang): add #select! and keep_if to Hash.
* hash.c (env_select_bang): ..and to ENV.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26803 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-03 09:44:44 +00:00
matz
006a8ba77f * array.c (rb_ary_select_bang): select! removes all elements for
which block returns false.  [ruby-core:27286]

* array.c (rb_ary_keep_if): #keep_if, new method.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26800 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-03 05:35:08 +00:00
muraken
1c0dfeef41 * test/dl/test_closure.rb: forget to revert at r26764.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26795 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-02 05:48:05 +00:00
marcandre
b25434f6a9 * test/ruby/test_math.rb: Fix lgamma test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26793 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-02 04:55:04 +00:00
muraken
5073155a17 * math.c (rb_eMathDomainError): new exception class for representing mathematical domain error instead of Errno::EDOM.
* math.c (domain_check, infinity_check): removed, no longer needed.
* math.c (math_atan2, math_acos, math_asin, math_acosh, math_atanh, math_log, math_log2, math_log10, math_sqrt, math_gamma, math_lgamma): mathematical domain errors are checked and raised before calling libm's functions.
* test/ruby/test_math.rb: updated for changes of maht.c.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-28 10:08:22 +00:00
naruse
663a7488ce * test/openssl/{test_x509cert.rb,openssl,test_x509crl.rb,
test_x509req.rb}:
  fix false positive tests because of OpenSSL spec change.
  patched by originally Hongli Lai [ruby-core:27417],
  and fixed by Motohiro KOSAKI [ruby-core:28063]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-28 02:47:19 +00:00
naruse
bd7326c383 * test/openssl/{test_x509cert.rb,openssl,test_x509req.rb}:
remove false positive tests because of OpenSSL spec change.
  patched by Motohiro KOSAKI [ruby-core:28063]
  see also [ruby-dev:40077]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-28 02:40:31 +00:00
akr
e599c936d8 * pack.c: consider DYNAMIC_ENDIAN. refactored.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-25 14:00:48 +00:00
akr
d255503f3b fix assertion message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-24 16:52:09 +00:00
akr
e53e5edab2 * pack.c (pack_unpack): don't use OFF32 for gcc 4.5.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-24 15:32:06 +00:00
knu
fdb57d043d Add some more tests, revisited.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-23 17:36:12 +00:00
knu
d223734555 Back out the series of changes pending a due discussion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-23 17:33:39 +00:00
knu
28501bb6e5 Add some more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-23 17:01:08 +00:00
akr
6b11ee7288 call unix_server.close only if unix_server is not nil.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26733 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-02-23 11:41:44 +00:00