Commit graph

1650 commits

Author SHA1 Message Date
matz
fa16110326 * bignum.c (rb_big_fdiv): flo.fdiv(NaN) should result NaN.
* numeric.c (num_quo): renamed and moved from bignum.c.
  [ruby-dev:34582]

* bignum.c (rb_big_fdiv): update RDoc description

* rational.c (nurat_s_new_m): small refactoring.

* bignum.c (rb_big2dbl): no need for forceful warning when
  converting to float.  overflow is a nature of float values.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16308 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-07 04:14:57 +00:00
akr
4500a5207d File#lchmod test removed because the method is not exist.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16303 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-06 00:02:01 +00:00
akr
786e7aba7f * test/io/nonblock/test_flush.rb: don't set Thread.abort_on_exception.
* test/net/imap/test_imap.rb: ensure disconnecting imap to terminate
  receiver thread..


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16302 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-05 17:18:09 +00:00
akr
04752225a7 * time.c (obj2nsec): fix string argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16286 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-04 07:05:26 +00:00
akr
f587eab23c * eval.c (rb_obj_respond_to): check the result of respond_to? method
by RTEST.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16285 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-04 05:30:08 +00:00
akr
091333f9ea * test/ruby/envutil.rb (Test::Unit::Assertions#assert_normal_exit):
new method.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16279 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-03 11:57:55 +00:00
akr
724d6ffd54 add a test for [ruby-dev:34581].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16278 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-03 10:54:43 +00:00
akr
3330ec6cff add tests for [ruby-dev:34557] and [ruby-dev:34558].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-02 07:52:01 +00:00
matz
78008d342e * test/ruby/test_parse.rb (TestParse::test_void_expr_stmts_value):
shut up warning.

* rational.c (nurat_to_f): no need for forceful warning when
  converting to float.  overflow is a nature of float values.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-01 12:47:07 +00:00
akr
a60856f010 add tests for [ruby-dev:34556] and [ruby-dev:34555].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-01 09:12:09 +00:00
akr
3943e48fcc add a test for [ruby-dev:34553].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-01 05:11:29 +00:00
akr
577cb7c53c split combinational blackbox tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-01 02:02:49 +00:00
akr
e4dda7015a 0**-1 test updated. [ruby-dev:34547]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 14:29:58 +00:00
seki
b72ef21cd3 [ruby-dev:34497] ERB::Util#url_encode bug fix. Reported by rubikitch.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 12:40:52 +00:00
akr
b104173c4c add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 12:38:47 +00:00
akr
5adabb4010 don't use fork method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 06:17:28 +00:00
akr
36cb003300 * process.c (check_exec_redirect_fd): prohibit duplex IO.
(check_exec_fds): record maxhint even if close_others is not
  specified.
  (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-30 05:40:19 +00:00
akr
01e712d786 add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16234 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-29 02:24:26 +00:00
akr
3341152da8 more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-28 05:45:37 +00:00
akr
c4eb7b916f more tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-28 05:42:34 +00:00
akr
6daf556345 * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
FIXNUM_MAX to make it possible to convert to double accurately.
  It assumes FLT_RADIX is 2.
  fix RubyForge bug #14102.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-28 05:25:03 +00:00
matz
3d751cde0f * proc.c (method_name): should return symbols instead of strings.
[ruby-dev:34531]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-28 02:12:21 +00:00
akr
80b1f7b50e add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-27 06:10:35 +00:00
drbrain
c42a631063 Import RDoc 2.0.0 r56.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26 16:14:19 +00:00
akr
2142a5af51 don't use Unix commands such as true, env, etc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26 15:39:09 +00:00
akr
514715250a * include/ruby/intern.h (rb_hash_dup): declared.
* hash.c (rb_hash_dup): new function.

* process.c (rb_spawn_internal): don't modify option hash.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-26 12:52:25 +00:00
akr
fe9b92f149 * process.c (rb_spawn_internal): new function to specify
default_close_others.
  (rb_spawn): specify default_close_others true.
  (rb_f_system): call rb_spawn_internal with default_close_others as
  false.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-25 15:50:24 +00:00
akr
b50eaa73b3 FreeBSD ash doesn't fail with echo >&4 where 4 is not opened.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-24 15:57:44 +00:00
akr
34bb79c031 * process.c: include sys/stat.h for umask.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-24 15:16:38 +00:00
akr
278b63a3e4 * include/ruby/intern.h (rb_env_clear): declared.
(rb_io_mode_modenum): declared.
  (rb_close_before_exec): declared.
  (struct rb_exec_arg): add options and redirect_fds field.
  (rb_check_argv): removed.
  (rb_exec_initarg): declared.
  (rb_exec_getargs): declared.
  (rb_exec_initarg2): declared.
  (rb_fork): add third argument: fds.

* io.c (max_file_descriptor): new static variable to record maximum
  file descriptor ruby used.
  (UPDATE_MAXFD): new macro.
  (UPDATE_MAXFD_PIPE): new macro.
  (rb_io_mode_modenum): externed.
  (rb_sysopen): update max_file_descriptor.
  (rb_close_before_exec): new function.
  (popen_exec): redirection removed because it is done by extended
  spawn mechanism.
  (pipe_open): generate a hash for spawn options to specify
  redirections.
  (pipe_open_v): use rb_exec_getargs.
  (pipe_open_s): use rb_exec_getargs.
  (rb_io_initialize): update max_file_descriptor..

* process.c (hide_obj): new function.
  (check_exec_redirect_fd): new function.
  (check_exec_redirect): new function.
  (check_exec_options_i): new function.
  (check_exec_fds): new function.
  (rb_check_exec_options): new function.
  (check_exec_env_i): new function.
  (rb_check_exec_env): new function.
  (rb_exec_getargs): new function.
  (rb_exec_initarg2): new function.
  (rb_exec_initarg): new function.
  (rb_f_exec): use rb_exec_initarg.
  (intcmp): new function.
  (run_exec_dup2): new function.
  (run_exec_close): new function.
  (run_exec_open): new function.
  (run_exec_pgroup): new function.
  (run_exec_rlimit): new function.
  (run_exec_options): new function.
  (rb_exec): call run_exec_options.
  (move_fds_to_avoid_crash): new function.
  (pipe_nocrash): new function.
  (rb_fork): use pipe_nocrash to avoid file descriptor conflicts.
  (rb_spawn): use rb_exec_initarg.
  (rlimit_resource_name2int): extracted from rlimit_resource_type.
  (rlimit_type_by_hname): new function.
  (rlimit_type_by_lname): new function.
  (rlimit_resource_type): use rlimit_type_by_hname.
  (proc_daemon): add fds argument for rb_fork.

* hash.c (rb_env_clear): renamed from env_clear and externed.

[ruby-dev:34086]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-24 14:46:39 +00:00
mame
9b694aaa85 * test/ruby/test_thread.rb: fix typos.
* test/ruby/envutil.rb (rubyexec): move Open3.popen3 call into timeout
  block.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-24 14:02:15 +00:00
mame
c8d27afcd6 * test/ruby/test_comparable.rb: new tests for Comparable, to achieve
100% test coverage of compar.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-24 13:38:01 +00:00
mame
f7ef694a71 * test/ruby/test_settracefunc.rb: add a test for set_trace_func.
* test/ruby/envutil.rb: move "rubyexec" method from test_rubyoptions.rb.

* test/ruby/test_rubyoptions.rb: use rubyexec in envutil.rb.

* test/ruby/test_thread.rb: add tests to achieve over 90% test coverage
  of thread.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-23 15:22:13 +00:00
kazu
c0d8e6cbf9 * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
notice moved from comment to assertion message. [ruby-dev:29127]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16172 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-23 06:32:16 +00:00
mame
67acbe3954 * test/openssl/test_ssl.rb (start_server): add timeout to server.join.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22 15:36:36 +00:00
kazu
77f987376c * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve tests of Symbol#to_proc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22 15:23:01 +00:00
matz
4bf25bbe20 test/ruby/test_enumerator.rb: updated
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22 14:41:07 +00:00
kazu
29934eed9d add a test of Symbol#to_proc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22 13:04:10 +00:00
akr
b1166a0469 * io.c (copy_stream_body): call rb_io_check_readable and
rb_io_check_writable.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-21 10:09:33 +00:00
technorama
45acd59d2d * ext/openssl/ossl_ssl.c: Switch stats hash key from string to symbol.
New method SSLContext#setup to aid C extension writers.
* test/openssl/test_ssl.rb: Add tests for new method and sessions.
  Use threads for ssl server instead of forking.
* ext/openssl/ossl_version.h: Bump version.
* ext/openssl/ossl_x509ext.c: Fix warnings.
* test/openssl/utils.rb: Fix warnings.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16111 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 22:32:06 +00:00
akr
935933d0d3 fix deadlock.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16105 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 11:30:43 +00:00
akr
ae2921ae67 * io.c (copy_stream_rbuf_to_dst): removed.
(copy_stream_fallback_body): don't bypass write method.
  (copy_stream_body): simplified.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16097 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 06:13:17 +00:00
akr
01c433b58c * io.c (copy_stream_fallback): write directly (bypassing write method)
if possible.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16090 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 04:59:04 +00:00
akr
a16e0c29db * io.c (copy_stream_fallback): read directly (bypassing readpartial)
if possible.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16088 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20 03:51:57 +00:00
akr
9579647fe1 * io.c (copy_stream_body): use readpartial and write method for
non-IOs such as StringIO and ARGF.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-19 19:47:16 +00:00
akr
24197c48d2 fix setup method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-19 19:09:22 +00:00
mame
3e9af6da10 * test/ruby/test_array.rb: add tests to achieve over 95% test coverage
of array.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-18 11:58:30 +00:00
mame
0a2053713b * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add
parentheses to remove warnings of gcc.

* io.c (rb_io_getc): remove unused variables.

* compile.c (NODE_NEXT, NODE_REDO): remove unused labels.

* ext/nkf/nkf.c (rb_nkf_convert): remove unused variables.

* ext/syck/rubyext.c (syck_resolver_initialize,
  syck_resolver_detect_implicit, syck_emitter_emit): remove unused
  variables.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-17 13:22:40 +00:00
mame
6f4fb0981d * test/ruby/test_rubyoptions.rb (test_search): enable some assertions.
* test/ruby/test_rubyoptions.rb: flunk message in win32.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-17 11:13:34 +00:00
nobu
f23828fa12 * test/ruby/test_rubyoptions.rb (ruby): run in C locale.
* test/ruby/test_rubyoptions.rb (test_encoding): --encoding does not
  affect source code.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-17 07:07:14 +00:00