aboutsummaryrefslogtreecommitdiffstats
path: root/ChangeLog
Commit message (Collapse)AuthorAgeFilesLines
* fix win32 compile error.kosaki2011-05-061-0/+7
| | | | | | | | | | * thread_win32.c (RB_CONDATTR_CLOCK_MONOTONIC): define RB_CONDATTR_CLOCK_MONOTONIC always. * thread_pthread.c (RB_CONDATTR_CLOCK_MONOTONIC): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mutex: deadlock check timeout use monotonic time.kosaki2011-05-061-0/+15
| | | | | | | | | | | | | | | | | * thread_pthread.c (native_cond_timeout): new internal api. it calculate a proper time for argument of native_cond_timedwait(). * thread_win32.c (native_cond_timeout): ditto. * thread_pthread.c (thread_timer): use native_cond_timeout() instead of get_ts. * thread.c (lock_func): ditto. * thread_pthread.c (get_ts): removed. use native_cond_timeout(). * thread.c (init_lock_timeout): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_pthread.c (get_ts): add monotonic clock capability.kosaki2011-05-061-0/+6
| | | | | | | | | * thread_pthread.c (rb_thread_create_timer_thread): use monotonic clock if possible. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_pthread.h (rb_thread_cond_t): add clockid field. it'skosaki2011-05-061-0/+10
| | | | | | | | | | | | | no longer an alias of pthread_cond_t. * thread_pthread.c: adapt new rb_thread_cond_t type. * thread.c (mutex_alloc): ditto. * thread_win32.c (native_cond_initialize): ditto. * configure.in: add check for pthread_cond_attr_setclock() and clockid_t type. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_wait_for_single_fd): use ppoll() instead of poll()kosaki2011-05-061-0/+5
| | | | | | | | if possible. based on a patch from Eric Wong. [ruby-core:36003]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in: remove nanosleep check. we no longer use it.kosaki2011-05-061-0/+5
| | | | | | | | r20124 removed last usage. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31449 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/syck/rubyext.c (mktime_do): extra digits are not used.nobu2011-05-061-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31447 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/syck/rubyext.c (mktime_do): remove unused variable offset.naruse2011-05-061-0/+6
| | | | | | * ext/syck/syck.h: use #ifdef instead of #if DEBUG. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/date/date_core.c (DAY_IN_NANOSECONDS): refix: 31438.naruse2011-05-061-0/+6
| | | | | | | check with LONG_MAX and cast as long; without this the calculation will be done as int and overflow. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31445 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/syck/rubyext.c (mktime_do): avoid buffer overrun, byshyouhei2011-05-061-0/+14
| | | | | | | | | | | | | | | | | | silently ignoring lesser significant digits. Required buffer length can be computable so you might at first think of allocating enough memory space on the fly using alloca(). That is a wrong idea because when using alloca there is always risk of integer overflow. A function that accepts outer-process resources like this should not blindly trust its inputs. In this particular case we just want to generate miliseconds resolution by strtod() so the string in question needs no more length than what we originally have. Ignoring lesser significant digits should suffice I believe. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31443 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ChangeLog for itshyouhei2011-05-061-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31442 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/ruby/test_io.rb (TestIO#test_O_CLOEXEC): fix false positivekosaki2011-05-051-0/+5
| | | | | | | | detection. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread_pthread.c (native_mutex_reinitialize_atfork): removedkosaki2011-05-051-0/+6
| | | | | | | | | unused macro. * thread_win32.c (native_mutex_reinitialize_atfork): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/date/date_core.c (DAY_IN_NANOSECONDS): long long int is notnobu2011-05-051-0/+5
| | | | | | available on all platforms. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (frame_func_id): store result of method_entry_of_iseq() tonagachika2011-05-051-0/+5
| | | | | | cfp->me because method_entry_of_iseq() might become expensive. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * eval.c (frame_func_id): __method__ return different name fromnagachika2011-05-051-0/+9
| | | | | | | | | | methods defined by Module#define_method with a same block. [ruby-core:35386] fixes #4606 * eval (method_entry_of_iseq): new helper function. search control frame stack for a method entry which has given iseq. * test/ruby/test_method.rb: add tests for #4696 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * benchmark/bm_vm4_pipe.rb: Reduced iterations. Too slow benchmarkkosaki2011-05-041-0/+6
| | | | | | | | | is bad. * benchmark/bm_vm4_thread_pass.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31433 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/date/test_date_base.rb: don't use no message skip().kosaki2011-05-041-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * benchmark/bm_io_select2.rb: reduce number of using filekosaki2011-05-041-0/+5
| | | | | | | | descriptors. because gdb need some fds. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31431 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (Init_IO): Added File::CLOEXEC constant. [ruby-core:22893] [Feature ↵kosaki2011-05-041-0/+6
| | | | | | | | | | #1291] * test/ruby/test_io.rb (TestIO#test_o_cloexec): test for File::CLOEXEC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31430 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_wait_for_single_fd): Fix wrong return value.kosaki2011-05-041-0/+6
| | | | | | | | | * test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb (TestWaitForSingleFD#test_wait_for_closed_pipe): test for it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31429 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/-test-/wait_for_single_fd: New. for testingkosaki2011-05-041-0/+8
| | | | | | | | | | | rb_wait_for_single_fd() internal function. The patch was written by Eric Wong. [ruby-core:35991] * test/-ext-/wait_for_single_fd/test_wait_for_single_fd.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31428 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix a typokazu2011-05-041-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31427 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_wait_for_single_fd): Added POLLNVAL check.kosaki2011-05-041-0/+5
| | | | | | | | based on a patch from Eric Wong at [ruby-core:35991]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (rb_f_select): remove useless ifdef.kosaki2011-05-041-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/init.c (wait_connectable): fix error handling code.kosaki2011-05-041-0/+5
| | | | | | | | RB_WAITFD_OUT is turned on even though an error occur. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31424 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/readline/readline.c (readline_event): use rb_wait_for_single_fd().kosaki2011-05-041-0/+5
| | | | | | | | The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31423 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/init.c (wait_connectable): use rb_wait_for_single_fd().kosaki2011-05-041-0/+8
| | | | | | | | | | | The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] * ext/socket/init.c (try_wait_connectable, wait_connectable_ensure): removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31422 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/io/wait/wait.c (io_wait): use rb_wait_for_single_fd().kosaki2011-05-041-0/+5
| | | | | | | | The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31421 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_wait_for_single_fd): new. poll(2) based backend for ↵kosaki2011-05-041-0/+7
| | | | | | | | | | | | rb_wait_for_single_fd(). Now only Linux uses it. The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31420 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_wait_for_single_fd): new.kosaki2011-05-041-0/+17
| | | | | | | | | | | | | | | | | | | | * thread.c (select_single): select(2) based backend for rb_wait_for_single_fd(). * io.c (make_writeconv): use rb_wait_for_single_fd() instaed of rb_thread_fd_select(). * io.c (rb_io_wait_readable): ditto. * thread.c (rb_thread_wait_fd_rw): ditto. * io.c (wait_readable): removed. * thread.c (init_set_fd): new helper function. * include/ruby/io.h (RB_WAITFD_IN, RB_WAITFD_PRI, RB_WAITFD_OUT): new constant for rb_single_wait_fd(). The patch was written by Eric Wong. [Ruby 1.9 - Feature #4531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31419 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/psych/lib/psych/visitors/yaml_tree.rb: fix time dumping so thattenderlove2011-05-031-0/+5
| | | | | | Syck can load UTC times that Psych dumps. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_fd_copy): fix wrong argument.This issue was pointedkosaki2011-05-031-0/+5
| | | | | | | | out by Eric Wong. [ruby-core:35982] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/fileutils/test_fileutils.rb (TestFileUtils#test_chmod_symbol_mode):kosaki2011-05-031-0/+6
| | | | | | | | | Skip sticky bit test if the platform is FreeBSD. It doesn't allow to change sticky bit if a target is regular file. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/date/test_date.rb (TestDate#test_coerce):yugui2011-05-031-0/+5
| | | | | | test for [ruby-core:35127]. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typos and remove some whitespaceskazu2011-05-031-6/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_thread_select): preserve errno if no errornobu2011-05-021-0/+5
| | | | | | occurred. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h (rb_w32_fdcopy): add prototype. fixesnobu2011-05-021-0/+5
| | | | | | #4640 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/fileutils.rb (FileUtils#chmod): accept symbolic mode argument.kosaki2011-05-011-0/+14
| | | | | | | | | | | | | | | | | The patch was written by takkanm. [ruby-core:26029][Feature #2190] * lib/fileutils.rb (FileUtils#fu_mode): new helper function. * lib/fileutils.rb (FileUtils#symbolic_modes_to_i): ditto. * lib/fileutils.rb (FileUtils#mode_mask): ditto. * lib/fileutils.rb (FileUtils#user_mask): ditto. * test/fileutils/test_fileutils.rb (TestFileUtils#test_chmod_symbol_mode): new test for the above symbolic mode. * test/fileutils/test_fileutils.rb (TestFileUtils#test_chmod_R): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/init.c (rsock_connect): add to care EINTR. basedkosaki2011-05-011-0/+5
| | | | | | | | on a patch from Eric Wong at [ruby-core:35621][Bug #4555] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_thread_select): release GVL while waiting select().kosaki2011-04-301-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/win32.c (rb_w32_fdcopy): New. This can copy even thoughkosaki2011-04-301-0/+6
| | | | | | | | | fdset size exceed FD_SETSIZE. * include/ruby/intern.h (rb_fd_copy): use rb_w32_fdcopy() git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (do_select): Change arugment type to rb_fdset_t.kosaki2011-04-301-0/+11
| | | | | | | | | | | | | | Now do_select() is free from unexpected hangup if HAVE_RB_FD_INIT=1 [Bug #4636] * thread.c (rb_thread_fd_select, rb_thread_wait_fd_rw): adapt new argument type. * thread.c (rb_thread_select): make dummy implementation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (rb_fd_copy): Change function argument. Nowkosaki2011-04-301-0/+6
| | | | | | | | | rb_fd_copy() has fully copy semantics. * include/ruby/intern.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31395 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/intern.h (rb_thread_select): mark as deprecated.kosaki2011-04-301-0/+11
| | | | | | | | | | | | | * ext/io/wait/wait.c (wait_readable): use rb_thread_fd_select instead of rb_thread_select. * ext/socket/init.c (wait_connectable0): ditto. * ext/readline/readline.c (readline_event): ditto. * io.c (rb_io_wait_readable, wait_readable, rb_io_wait_writable, wait_writable): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31394 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * thread.c (do_select): remove useless ifdef. time calculationkosaki2011-04-301-0/+5
| | | | | | | | is not heavy weight. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31393 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * benchmark/bm_io_select3.rb: New.kosaki2011-04-301-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * io.c (copy_stream_body, rb_io_s_copy_stream): move rb_fd_init()kosaki2011-04-301-0/+6
| | | | | | | | | from copy_stream_body to rb_io_s_copy_stream. fds of passing rb_fd_term() have to be guaranteed initialized. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31391 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * benchmark/bm_io_select.rb, benchmark/bm_io_select2.rb: New.kosaki2011-04-301-0/+5
| | | | | | | | based on a patch from Eric Wong at [Feature #4531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test/io/wait/test_io_wait.rb: New. for testing ext/io/wait.kosaki2011-04-291-0/+5
| | | | | | | | the patch was written by Eric Wong. [Feature #4531] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e