summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2012-02-09merge revision(s) 34409,34412,34417:naruse
* io.c (argf_close): skip stdin, which should be readable again. [ruby-dev:45160] [Bug #5952] * io.c (argf_readlines): reinitialize after all read to be readable again. * io.c (argf_next_argv): reset ARGF.next_p on ARGV.replace. r34409 breaks replacing ARGV. [ruby-dev:45160] [Bug #5952] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09* backport r34482 from trunkemboss
* ext/openssl/ossl_ssl.c: Add SSL constants and allow to unset SSL option to prevent BEAST attack. See [Bug #5353]. In OpenSSL, OP_DONT_INSERT_EMPTY_FRAGMENTS is used to prevent TLS-CBC-IV vulunerability described at http://www.openssl.org/~bodo/tls-cbc.txt It's known issue of TLSv1/SSLv3 but it attracts lots of attention these days as BEAST attack. (CVE-2011-3389) Until now ossl sets OP_ALL at SSLContext allocation and call SSL_CTX_set_options at connection. SSL_CTX_set_options updates the value by using |= so bits set by OP_ALL cannot be unset afterwards. This commit changes to call SSL_CTX_set_options only 1 time for each SSLContext. It sets the specified value if SSLContext#options= are called and sets OP_ALL if not. To help users to unset bits in OP_ALL, this commit also adds several constant to SSL such as OpenSSL::SSL::OP_DONT_INSERT_EMPTY_FRAGMENTS. These constants were not exposed in Ruby because there's no way to unset bits in OP_ALL before. Following is an example to enable 0/n split for BEAST prevention. ctx.options = OP_ALL & ~OP_DONT_INSERT_EMPTY_FRAGMENTS * test/openssl/test_ssl.rb: Test above option exists. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09* ChangeLog: remove duplicated entries.nagachika
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34515 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09merge revision(s) 33410:naruse
* cont.c (cont_mark): mark original Thread object from saved_thread. [ruby-dev:44567] [Bug #5386] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09merge revision(s) 32875:naruse
* cont.c (HAVE_GETCONTEXT): see getcontext(3) because DragonFly BSD x64 port doesn't have it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09merge revision(s) 34504,34506,34507,34508:naruse
* ext/dl/lib/types.rb: Win64 support. * ext/fiddle/conversions.c (value_to_generic): src is not guranteed as a Bignum if the type is LONG_LONG. it may be a Fixnum if the value is small. * ext/dl/lib/value.rb (DL::ValueUtil.{unsigned_value,signed_value}): currenly pack/unpack does not accept "q!" and "Q!". * test/ruby/memory_status.rb (Memory::Win32): 64bit support. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-09merge revision(s) 33959,33963,34265:naruse
* ext/dbm/extconf.rb: detect gdbm_version in libgdbm. * ext/dbm/dbm.c: make DBM::VERSION more informative for gdbm, qdbm and Berkeley DB 1.x. [ruby-dev:44944] * ext/dbm/dbm.c: use db_version() instead of DB_VERSION_STRING to detect runtime Berkeley DB version. use dpversion instead of _QDBM_VERSION to detect runtime QDBM version. [ruby-dev:44948] * ext/dbm/dbm.c (Init_dbm): fix a build error on mswin32. use `extern __declspec(dllimport)` for dll link with VC. [ruby-core:41996] [Bug #5869] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34236: [Backport #5890]naruse
* numeric.c (rb_enc_uint_char): raise RangeError when added codepoint is invalid. [Feature #5855] [Bug #5863] [Bug #5864] * string.c (rb_str_concat): ditto. * string.c (rb_str_concat): set encoding as ASCII-8BIT when the string is US-ASCII and the argument is an integer greater than 127. * regenc.c (onigenc_mb2_code_to_mbclen): rearrange error code. * enc/euc_jp.c (code_to_mbclen): ditto. * enc/shift_jis.c (code_to_mbclen): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34499:naruse
* test/pathname/test_pathname.rb: not read but binread. patched by Benoit Daloze, [ruby-core:42440] [Bug #5984] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08* string.c (rb_str_modify_expand): fix memory leak.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34391:naruse
* ext/readline/readline.c (readline_attempted_completion_function): respect encodings. [Bug #5941] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34254,34256:naruse
* ext/readline/readline.c (readline_attempted_completion_function): empty completion result does not mean memory error. * ext/readline/readline.c (readline_attempted_completion_function): fix compile error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34116:naruse
* ext/readline/readline.c (readline_readline): check if outstream is closed to get rid of a bug of readline 6. [ruby-dev:45043] [Bug #5803] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33626:naruse
* ext/readline/readline.c (Init_readline): like r18313, libedit's replace_history_entry may use offset instead of which. so introduce history_replace_offset_func and initialize it. * ext/readline/readline.c (hist_set): use history_replace_offset_func. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33625:naruse
* ext/readline/readline.c (Init_readline): fix wrong condition. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33049:naruse
* test/ruby/test_rubyoptions.rb (test_script_from_stdin): slave pty should be manipulated because master pty may not be a tty on some environment (e.g. Solaris). [Bug:#5222] [ruby-dev:44420] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33934: [Backport #5975]naruse
* Makefile.in (CFLAGS): append ARCH_FLAG. * configure.in (ARCH_FLAG): exclude from CFLAGS. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34123,34126,34127,34463: [Backport #5981]naruse
* ext/openssl/ossl_cipher.c: Update and complete documentation. * ext/openssl/ossl_cipher.c: Add warning about key as IV. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34469: [Backport #5982]naruse
* ext/openssl/ossl_asn1.c: Call INT2NUM only once for GeneralString. Thanks to Mantas Mikulenas for noticing and providing a patch! [ruby-core:42358] [Bug #5972] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34109:naruse
* ext/readline/readline.c (readline_attempted_completion_function): in Readline module with GNU Readline 6 case, Readline module resets completion_append_character to " ", after it executes completion. So, Readline module stores completion_append_character, and Readline module always sets it after Readline module executes completion. [ruby-dev:43456] [Feature #4635] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33762:naruse
* test/ruby/test_sleep.rb (test_sleep_5sec): 0.1sec tolerance is too small for busy environment. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33673:naruse
* test/dbm/test_dbm.rb: split tests for read only database. * test/gdbm/test_gdbm.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 34028,34030:naruse
* error.c (name_err_mesg_to_str): clear rb_thread_t::errinfo when ignore exception under rb_protect(). * test/ruby/test_exception.rb (test_exception_in_name_error_to_str): add a corresponding test. ignore exception under rb_protect(). [ruby-core:41612] [Bug #5755] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-08merge revision(s) 33201,33249,33328: [Backport #5564]naruse
* encoding.c (load_encoding): predefined encoding names are safe. [ruby-dev:44469] [Bug #5279] * transcode.c (load_transcoder_entry): ditto. * encoding.c (require_enc): reject only loading from untrusted load paths. [ruby-dev:44541] [Bug #5279] * transcode.c (load_transcoder_entry): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-07* removed trailing spaces.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-07* st.c (st_foreach): should not yield same pair when checkingnobu
after unpacking. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34456 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-07merge revision(s) 34252:ayumin
* lib/tempfile.rb (Tempfile#_close): clear @tempfile and @data[1] even when exception is raised at @tempfile.close. [ruby-dev:45113] * lib/tempfile.rb (Tempfile#unlink): fix a typo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34455 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-07merge revision(s) 34253:ayumin
* test/ruby/test_io.rb (test_autoclose_true_closed_by_finalizer, test_autoclose_true_closed_by_finalizer): skip if IO objects are not recycled yet. [ruby-dev:45098] [Bug #5850] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34454 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-07merge revision(s) 34250:ayumin
* gc.c (run_finalizer): clear rb_thread_t::errinfo when ignore an exception under rb_protect(). [ruby-dev:45113] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33567,33573:kosaki
* ruby.c (fill_standard_fds): new function to open closed standard file descriptors. (ruby_sysinit): call fill_standard_fds. * ruby.c (fill_standard_fds): use fstat() instead of fcntl(F_GETFD) for MinGW. reported by Luis Lavena. [ruby-core:40526] [Bug #5516] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34452 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) r33826:kosaki
* io.c (rb_io_fsync,rb_io_fdatasync): release GVL during fsync(). fsync() and fdatasync() may take a long time on slow disks and/or if there is much dirty data. Patch by Eric Wong. [Feature #5665] [ruby-core:41247] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) r34399:kosaki
* vm_eval.c (vm_call0): should pass block to enumerators. patched by Kazuki Tsujimoto. [ruby-dev:44961][Bug #5731] * vm_eval.c (method_missing), vm_insnhelper.c (vm_call_method): ditto. patched by satoshi shiba. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33886: [Backport #5682]naruse
* common.mk (INSTRUBY_ARGS): added --mantype to apply mdoc2man.rb to man pages. Fixes #5598. (do-install-nodoc, do-install-local, do-install-man, dont-install-nodoc, dont-install-local, dont-install-man): No longer needs --mantype. Reported by Rainer Orth <ro AT cebitec.uni-bielefeld.de>, patch by George Koehler <xkernigh AT netscape.net>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33784:naruse
* test/unit/assertions.rb (MINI_DIR): quick dirty hack to get rid of warnings when using assert/assert_respond_to. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34444 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33603: [Backport #5533] [Backport #5911]naruse
* file.c (file_expand_path): reset coderange after expanding path. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34441 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 34335,34337: [Backport #5907]naruse
* ext/date/date_parse.c: [ruby-core:42173]. * ext/date/date_strptime.c: moved detector of leftover. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 34072,34075,34082:naruse
* ext/date/date_core.c: [ruby-dev:45008]. * ext/date/date_core.c (wholenum): fix the type of the return value. * ext/date/date_core.c: uses to_integer instead. * test/date/test_switch_hitter.rb: added a test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34439 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge rivision(s) 33685:usa
* win32/win32.c (unixtime_to_filetime): should check the return value of localtime(). reported by snowjail at gmail.com. [ruby-dev:44838] [Bug #5596] [Backport #5596] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33691,33692usa
* io.c (rb_update_max_fd): fstat(2) can fail with other than EBADF. [ruby-dev:44837] [Bug #5593]. Cf. http://pubs.opengroup.org/onlinepubs/9699919799/functions/fstat.html [Backport #5593] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33667:usa
* io.c (io_fwrite): call rb_w32_write_console() only if FMODE_TTY is set. this is the one of the reason of IO writing slowness of Windows in 1.9.3 or later. [Backport #5592] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34436 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-06merge revision(s) 33603:usa
* file.c (file_expand_path): reset coderange after expanding path. [Backport #5601] [Backport #5629] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34435 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-05merge revision(s) 34306:naruse
* ext/json/parser/parser.rl (json_string_unescape): workaround fix for over optimization of GCC 4.7. [ruby-core:42085] [Bug #5888] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51862 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34432 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-03merge revision(s) 34040,34051,34063,34389,34402,34403:naruse
------------------------------------------------------------------------ r34040 | naruse | 2011-12-14 14:42:34 +0900 (Wed, 14 Dec 2011) | 1 line Use pipe instead of $stdin.read. ------------------------------------------------------------------------ * test/ruby/envutil.rb (invoke_ruby): remove :timeout option before pass it to Kernel#spawn. * test/ruby/test_thread.rb (TestThreadGroup#test_thread_timer_and_interrupt): skip exit status assertion because we cannot get signal status on Windows. * win32/win32.c (CreateChild): create process group to receive the signal by GenerateConsoleCtrlEvent(). * win32/win32.c (kill): use CTRL_BREAK_EVENT instead of CTRL_C_EVENT if a process group is specified. CTRL_C_EVENT signal cannot be generated for process groups for the specification. [ruby-dev:45149] [Bug #5812] * test/ruby/envutil.rb (EnvUtil.invoke_ruby): yield also child pid in block form. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-03merge revision(s) r34038,34099:naruse
* thread_pthread.c (ubf_select): call rb_thread_wakeup_timer_thread() only when it is not timer_thread. [Bug #5757] [ruby-dev:44985] patched by Tomoyuki Chikanaga. * thread_pthread.c (ping_signal_thread_list): remove return value. * thread_pthread.c (check_signal_thread_list): add a new function to check if signal thread list is empty. * thread_pthread.c (thread_timer): check signal thread list after timer_thread_function(). main thread might be added into signal thread list during timer_thread_function(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34425 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-02-01* doc/re.rdoc (Repetition): fix typo. reported by Ori Avtalionnobu
and patched by Zachary Scott. [Bug #5947] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-31merging r34364 from trunk to ruby_1_9_3tenderlove
-- * lib/uri/common.rb (URI.encode_www_form_component): initialize on requiring to support JRuby, which runs parallel multithreads. [ruby-core:42222] [Bug #5925] * lib/uri/common.rb (URI.decode_www_form_component): initialize on git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-27* lib/irb/completion.rb (IRB::InputCompletor::CompletionProc):nobu
ignore non-string name modules. [ruby-core:42244][Bug #5938] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-23merge revision(s) r34350:naruse
* encoding.c (rb_enc_compatible): fix segv on symbols. [ruby-core:42204] [Bug #5921] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-17* configure.in (SPT_TYPE): enable as SPT_REUSEARGV on Darwin.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34327 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-01-17* missing/setproctitle.c (ruby_init_setproctitle): changed prefix.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@34326 b2dd03c8-39d4-4d8f-98ff-823fe69b080e