Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

25517 lines (15490 sloc) 852.926 kB
Wed Dec 28 21:34:23 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* string.c (rb_str_hash): randomize hash to avoid algorithmic
complexity attacks. CVE-2011-4815
* st.c (strhash): ditto.
* string.c (Init_String): initialization of hash_seed to be at the
beginning of the process.
* st.c (Init_st): ditto.
Thu Dec 8 11:57:04 2011 Tanaka Akira <akr@fsij.org>
* inits.c (rb_call_inits): call Init_RandomSeed at first.
* random.c (seed_initialized): defined.
(fill_random_seed): extracted from random_seed.
(make_seed_value): extracted from random_seed.
(rb_f_rand): initialize random seed at first.
(initial_seed): defined.
(Init_RandomSeed): defined.
(Init_RandomSeed2): defined.
(rb_reset_random_seed): defined.
(Init_Random): call Init_RandomSeed2.
Sat Dec 10 20:44:23 2011 Tanaka Akira <akr@fsij.org>
* lib/securerandom.rb: call OpenSSL::Random.seed at the
SecureRandom.random_bytes call.
insert separators for array join.
patch by Masahiro Tomita. [ruby-dev:44270]
Mon Oct 17 04:20:22 2011 Nobuyoshi Nakada <nobu@ruby-lang.org>
* mkconfig.rb: fix for continued lines. based on a patch from
Marcus Rueckert <darix AT opensu.se> at [ruby-core:20420].
Mon Oct 17 04:19:39 2011 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (flo_cmp): Infinity is greater than any bignum
number. [ruby-dev:38672]
* bignum.c (rb_big_cmp): ditto.
Mon Oct 17 03:56:12 2011 Yusuke Endoh <mame@tsg.ne.jp>
* ext/openssl/ossl_x509store.c (ossl_x509store_initialize): initialize
store->ex_data.sk. [ruby-core:28907] [ruby-core:23971]
[ruby-core:18121]
Thu Jun 30 12:52:56 2011 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/tk/extconf.rb (intptr_t, uintptr_t): support for the latest ActiveTcl with mingw.
Sun Jun 26 17:52:32 2011 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* ext/openssl/ossl_ssl.c: By trunk@31346, function check of SSLv2 is executed.
However, the problem is not revised in this.
This adds the control of using function of SSLv2 in made macro by function check.
Sun Jun 26 17:52:32 2011 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
* ext/openssl/extconf.rb: Should check SSLv2_*method.
openssl compiled with "no-ssl2" the extconf don't fail
when running `make' having this compilation errors.
Patched by Laurent Arnoud. fixes #4562, #4556
Sun Jun 26 17:46:43 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* ext/tk/extconf.rb: copy from trunk, as requested by Hidetoshi NAGAI.
Thu Jun 23 18:38:43 2011 Hiroshi Nakamura <nahi@ruby-lang.org>
backported r26281 from ruby_1_8
* lib/webrick/accesslog.rb (WEBrick::AccessLog.format): log parameter
embedding did not work. See #4913.
* test/webrick/test_accesslog.rb: Add for test it.
Thu Jun 16 22:55:02 2011 Hiroshi Nakamura <nahi@ruby-lang.org>
* test/test_securerandom.rb: Add testcase. This testcase does NOT aim
to test cryptographically strongness and randomness. It includes
the test for PID recycle issue of OpenSSL described in #4579 but
it's disabled by default.
Mon Jun 13 18:33:04 2011 Tanaka Akira <akr@fsij.org>
* lib/securerandom.rb (SecureRandom.random_bytes): modify PRNG state
to prevent random number sequence repeatation at forked
child process which has same pid.
reported by Eric Wong. [ruby-core:35765]
Thu Jun 2 18:33:51 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* variable.c (rb_const_get_0): Fix previous change. There were
possibilities when an autoload-specified library lacks
definition of the constant it was bound to. Once after such
library had already beed loaded, the autoload engine shall not
reload it. Instead the interpreter have to consider such
constant nonexistent. It results in a const_missing situation.
* variable.c (rb_autoload_load): ditto.
* variable.c (autoload_node): ditto.
Thu Jun 2 18:28:58 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* variable.c (rb_autoload_load): There is a race condition while
autoloading. When two or more threads touch a single autoloaded
constant at a time, one of them does the require, but others
behave oddly. To fix this situation we now refrain from
deleting the autoload table while someone is doing the autoload.
That deletion is deferred to a point where a require ended
successfully. Doing so make it possible for multiple threads to
enter autoloading at the same time but the require is protected
against multiple simultaneous entrance anyway so all but one
thread gets blocked at that point. So with it, touching a
constant that gets autoloaded cause those threads to block until
there is another one that does the same thing.
[ruby-core:36308] (#921)
* variable.c (rb_const_get_0): ditto.
* variable.c (autoload_node): ditto.
* variable.c (autoload_delete): ditto.
Mon May 30 10:58:17 2011 Hiroshi Nakamura <nahi@ruby-lang.org>
* lib/logger.rb (Logger::ProgName): do not depend on subversion
keyword ($Id$). ProgName with revision number was written in the
header line of each logfile for ease of tracking what version user
is using in troubleshooting. Logger is already stable enough.
Sat May 21 07:33:54 2011 Yusuke Endoh <mame@tsg.ne.jp>
* ext/zlib/zlib.c (zstream_append_input2): add RB_GC_GUARD.
This caused failure when test/csv is executed with GC.stress = true.
Sat May 21 05:43:03 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* eval.c (rb_thread_atfork): When a ruby process forks, its random
seed shall be reinitialized to prevent CVE-2003-0900 situation.
This bug affects for 1.8 and earlier series, but not for 1.9.
fixed [ruby-core:34944].
* io.c (pipe_open): ditto.
* random.c (rb_reset_random_seed): ditto.
* intern.h (rb_reset_random_seed): ditto.
Sat May 21 04:55:15 2011 Akinori MUSHA <knu@iDaemons.org>
* lib/uri/generic.rb (#route_from_path): Fix a bug where
URI('http://h/b/').route_to('http://h/b') wrongly returned './'
(should be '../b'). [Bug #4476]
Sat May 21 04:54:20 2011 Akinori MUSHA <knu@iDaemons.org>
* lib/fileutils.rb (FileUtils#touch): Fix corrupted output.
ref [ruby-dev:43401]
Sat May 21 02:10:09 2011 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.h (RMATCH_REGS): parenthesize cast expression. suggested
from Nikolai Weibull in [ruby-core:35825].
Sat May 21 01:32:08 2011 NAKAMURA Usaku <usa@ruby-lang.org>
backported r31286 from trunk
* numeric.c (ruby_float_step): wrong loop condition.
fixes [ruby-core:35753], reported by Joey Zhou.
* test/ruby/test_range.rb (TestRange#test_step_ruby_core_35753):
test above change.
Sat May 21 00:55:21 2011 NARUSE, Yui <naruse@ruby-lang.org>
* ext/zlib/zlib.c (gzfile_check_footer): ISIZE (Input SIZE) in gzip's
header is the size of uncompressed input data modulo 2^32.
[ruby-core:34481] http://www.ietf.org/rfc/rfc1952.txt
Fri May 20 23:46:44 2011 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/socket/{getaddrinfo,getnameinfo}.c: include winsock2.h only when
specified to use winsock2 by user.
this problem is reported by kosaki.
Fri May 20 23:23:45 2011 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/socket/socket.c (make_addrinfo): skip IPv6 addresses when ruby
doesn't support IPv6 but system supports it.
[ruby-dev:42944] (#4230)
Fri May 20 23:10:07 2011 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/README.win32: note to need NT based OS to build ruby.
* win32/{configure.bat,setup.mak}: backport current build method from
trunk. [ruby-dev:42893] (#4206)
Fri May 20 23:06:31 2011 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* Backported the fix at
Mon Sep 13 09:23:58 2010 NARUSE, Yui <naruse@ruby-lang.org>
* ext/openssl/ossl_bn.c (ossl_bn_is_prime): fix comparison
with rb_scan_args. Before this fix, OpenSSL::BN#prime?
is fully broken.
Fri May 20 23:06:31 2011 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* Backported the fix at
Mon Oct 4 09:30:42 2010 NARUSE, Yui <naruse@ruby-lang.org>
* ext/openssl/lib/openssl/bn.rb (Integer#to_bn): OpenSSL::BN.new
accepts only Strings, so call Integer#to_s(16).
16 is for an optimization. [ruby-dev:42336]
Fri Feb 18 21:18:55 2011 Shugo Maeda <shugo@ruby-lang.org>
* test/ruby/test_exception.rb (TestException::test_to_s_taintness_propagation):
Test for below.
Fri Feb 18 21:18:55 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* error.c (exc_to_s): untainted strings can be tainted via
Exception#to_s, which enables attackers to overwrite sane strings.
Reported by: Yusuke Endoh <mame at tsg.ne.jp>.
* error.c (name_err_to_s): ditto.
Fri Feb 18 21:17:22 2011 Shugo Maeda <shugo@ruby-lang.org>
* lib/fileutils.rb (FileUtils::remove_entry_secure): there is a
race condition in the case where the given path is a directory,
and some other user can move that directory, and create a
symlink while this method is executing.
Reported by: Nicholas Jefferson <nicholas at pythonic.com.au>
Fri Feb 18 19:46:46 2011 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (init_stdhandle): backport mistake of r29382.
some code are needless in ruby 1.8.
[ruby-core:34579]
Fri Feb 18 19:22:17 2011 URABE Shyouhei <shyouhei@ruby-lang.org>
* configure.in: revert revision r29854. This revision introduced
binary incompatibilities on some circumstances. The bug that
revision was fixing gets reopened by this reversion.
[ruby-dev:43152] cf. [Bug #2553]
Thu Dec 23 12:22:35 2010 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb (Resolv::IPv4::Regex): make it only accept 0 to 255.
[ruby-core:29501]
Tue Dec 21 01:43:01 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/webrick/https.rb: uninitialized instance variables.
Backport a part of r20864 for ruby_1_8.
Sat Dec 4 11:35:15 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (init_mkmf): needs default library path even if
cross compiling.
Sat Dec 4 11:25:02 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* re.c (rb_reg_regcomp): should succeed the taint status from the
origin. [ruby-core:33338]
Thu Dec 2 21:13:42 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* Makefile.in (fake.rb): need to expand the topdir in case of it
being relative, a patch from Luis Lavena <luislavena at gmail.com>.
[ruby-core:33466]
Wed Nov 24 18:24:26 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/socket/extconf.rb: backported entirely from ruby_1_8, with small
modifications for the difference of mkmf.rb.
Wed Nov 24 16:24:24 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* mkconfig.rb (patchlevel): config.status may not contain
PATCHLEVEL even if other version numbers exist.
Wed Nov 24 16:18:02 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* win32/Makefile.sub ($(RCFILES)): no revision.h in this
branch, a patch from Luis Lavena <luislavena at gmail.com>.
[ruby-core:33310]
* cygwin/GNUmakefile.in ($(RCFILES)): ditto.
Wed Nov 24 15:44:11 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/socket/extconf.rb (getaddrinfo): should initialize winsock on
windows.
Wed Nov 24 13:55:21 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/setup.mak: use findstr.exe instead of find.exe, because all
target build platforms should have findstr.exe, and, find.exe often
means another command such as cygwin's.
Wed Nov 24 13:27:34 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/stringio/stringio.c (strio_getline): fix for "" as separator.
[ruby-dev:34591] (Backport r17739 by Yusuke Endoh from trunk).
Wed Nov 24 13:27:20 2010 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* lib/net/pop.rb (Net::POP3#set_all_uids): speed
up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]
Tue Nov 23 20:48:10 2010 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (initialize): sets sync_close to true.
Thanks, Hiroshi NAKAMURA. [ruby-core:31753]
Tue Nov 23 17:09:14 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/pathname.rb (relative_path_from): backport r23093 and r25440
from ruby_1_9_2. [ruby-core:32415]
Mon Nov 22 14:13:45 2010 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: fix checking version of GCC.
Mon Nov 22 14:13:45 2010 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: NONAMELESSUNION defined only if gcc
version is older than 3.4.4. [ruby-core:31567] [Bug #3637]
* ext/win32ole/extconf.rb: ditto.
Fri Nov 19 19:28:00 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* Makefile.in (fake.rb): hook needed to fake mkmf.rb.
#2531 [ruby-core:27327]
Mon Oct 18 10:21:01 2010 NARUSE, Yui <naruse@ruby-lang.org>
* lib/net/http.rb (transport_request): @socket may be nil.
patched by Egbert Eich [ruby-core:32829]
Fri Oct 8 10:51:56 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (RBCONFIG): depends on version.h due to
RUBY_PATCHLEVEL. [ruby-core:32709]
Thu Oct 7 18:10:35 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* cygwin/GNUmakefile.in, win32/Makefile.sub (RCFILES): depend on
real config.rb file. [ruby-core:32709]
Sun Oct 3 18:30:23 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_intern): should check symbol table overflow.
#3900 [ruby-dev:42330]
Fri Oct 1 15:12:05 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
backport r11362 from trunk. [ruby-core:31445]
Mon Aug 23 11:42:41 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_asn1.c (obj_to_asn1bool): fixed ASN1::Boolean
encoding issue for OpenSSL 1.0.0 compatibility.
ASN1::Boolean.new(false).to_der wrongly generated "\1\1\377" which
means 'true'. [BUG:3735]
ASN1_TYPE_set of OpenSSL <= 0.9.8 treats value 0x100 as 'false' but
OpenSSL >= 1.0.0 treats it as 'true'. ruby-ossl was using 0x100 for
'false' for backward compatibility. Just use 0x0 for the case
OpenSSL >= OpenSSL 0.9.7.
* test/openssl/test_asn1.rb: test added.
Tue Aug 10 17:35:49 2010 NARUSE, Yui <naruse@ruby-lang.org>
* lib/webrick/httprequest.rb (WEBrick::HTTPRequest::parse_uri):
rollup leading slashes. [ruby-core:31657]
patched by Jamison Wilde
NOTE: //authority/path is valid relative URI both RFC2396 and
RFC3986. So when give a relative URI-like string to URI lib,
users must care leading slashes.
Fri Jul 30 08:51:51 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_expand_path): home directory must be absolute.
[ruby-core:31537]
Fri Jul 30 08:33:20 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_expand_path): should check if could find user.
[ruby-core:31538]
Thu Jul 29 22:43:57 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/webrick/ssl.rb (WEBrick::Utils.create_self_signed_cert): wrongly
created dummy SSL certificate with version == 3 (no such version) and
serial == 0 (must be >0).
Sat Jul 24 15:44:29 2010 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (fev_initialize): initialize pTypeInfo.
[ruby-core:31304][Bug #3576].
Tue Jul 13 21:46:38 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_config.c, ext/openssl/lib/openssl/config.rb,
ext/openssl/lib/openssl.rb: reimplement OpenSSL::Config in Ruby. Now
it should work on windows.
* test/openssl/test_config.rb: added tests for OpenSSL::Config#dup.
Mon Jul 12 22:26:00 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_config.c (ossl_config_copy): wrongly updating the
given object with uninitialized CONF data. now
OpenSSL::Config#clone works as expected; cloning the config instead of
SEGV or empty definition.
* test/openssl/test_config.rb: added tests for Config#clone.
Thu Jul 8 13:43:13 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* test/openssl/test_config.c: added tests for all Config methods.
Wed Jul 7 13:24:24 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (ruby_find_basename): set correct baselen.
Fri Jul 2 23:34:45 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (ruby_find_basename, ruby_find_extname): split from
rb_file_s_basename() and rb_file_s_extname().
* util.c (ruby_add_suffix): support arbitrary length of the suffix
to get rid of the potential buffer overflow.
reported by tarui.
Sat Jul 10 10:51:29 2010 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* configure.in: fix use_context condition inversion.
[Bug #2553][ruby-core:31164]. Thanks, Andre Nathan.
Wed Jun 23 21:36:45 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: avoid getcontext() overhead if possible.
[ruby-core:27380][Bug #2553]
Thanks, Joe Damato, Dan Peterson and Patrick Mohr.
Wed Jan 13 06:54:44 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: check for if struct timezone is defined.
* missing.h (struct timezone): define if not defined.
* win32/win32.h (struct timezone): defined in the newer w32api.
[ruby-core:27515]
Sun Aug 15 19:59:58 2010 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#set_error):
Fix for possible cross-site scripting (CVE-2010-0541).
Found by Apple, reported by Hideki Yamane.
Patch by Hirokazu Nishio <nishio.hirokazu AT gmail.com>.
Sat Jul 17 15:19:58 2010 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* configure.in: Change AC_PREREQ from 2.58 to 2.60 because
AC_CASE macro require 2.60 or later. Thanks, Mitsuru SHIMAMURA.
[Bug #3579] [ruby-dev:41856]
Wed Jun 23 22:22:42 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/optparse/test_summary.rb: fixed superclass so that it run
solely.
Wed Jun 23 21:54:17 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* marshal.c, test/ruby/test_marshal.rb: Revert r25230. This test
is troublesome.
Mon Jun 21 18:12:15 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/extconf.rb: check some functions added at OpenSSL 1.0.0.
* ext/openssl/ossl_engine.c (ossl_engine_s_load): use engines which
exists.
Mon Jun 21 18:12:15 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_config.c: defined own IMPLEMENT_LHASH_DOALL_ARG_FN_098
macro according to IMPLEMENT_LHASH_DOALL_ARG_FN in OpenSSL 0.9.8m.
OpenSSL 1.0.0beta5 has a slightly different definiton so it could
be a temporal workaround for 0.9.8 and 1.0.0 dual support.
* ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): follows function
definition in OpenSSL 1.0.0beta5. PKCS5_PBKDF2_HMAC is from 1.0.0
(0.9.8 only has PKCS5_PBKDF2_HMAC_SHA1)
* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_eq): do not use
SSL_SESSION_cmp and implement equality func by ousrself. See the
comment.
Mon Jun 21 18:12:15 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_ssl_session.c
(ossl_ssl_session_{get,set}_time{,out}): fixed a bug introduced by
backporting. (see [ruby-dev:40573]) use long in according to
OpenSSL API. (SSL_SESSION_{get,set}_time{,out})
Mon Jun 21 18:12:15 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_x509name.c: added X509::Name#hash_old as a wrapper
for X509_NAME_hash_old in OpenSSL 1.0.0.
* test/openssl/test_x509name.rb (test_hash): make test pass with
OpenSSL 1.0.0.
Mon Jun 21 18:12:15 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* test/openssl/test_x509*: make tests pass with OpenSSL 1.0.0b5.
* PKey::PKey#verify raises an exception when a given PKey does not
match with signature.
* PKey::DSA#sign accepts SHA1, SHA256 other than DSS1.
Mon Jun 21 18:12:15 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* backport the commit from trunk:
Sun Feb 28 11:49:35 2010 NARUSE, Yui <naruse@ruby-lang.org>
* openssl/ossl.c (OSSL_IMPL_SK2ARY): for OpenSSL 1.0.
patched by Jeroen van Meeuwen at [ruby-core:25210]
fixed by Nobuyoshi Nakada [ruby-core:25238],
Hongli Lai [ruby-core:27417],
and Motohiro KOSAKI [ruby-core:28063]
* ext/openssl/ossl_ssl.c (ossl_ssl_method_tab),
(ossl_ssl_cipher_to_ary): constified.
* ext/openssl/ossl_pkcs7.c (pkcs7_get_certs, pkcs7_get_crls):
split pkcs7_get_certs_or_crls.
Mon Jun 21 18:12:15 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* test/openssl/test_ec.rb: added test_dsa_sign_asn1_FIPS186_3. dgst is
truncated with ec_key.group.order.size after openssl 0.9.8m for
FIPS 186-3 compliance.
WARNING: ruby-openssl aims to wrap an OpenSSL so when you're using
openssl 0.9.8l or earlier version, EC.dsa_sign_asn1 raises
OpenSSL::PKey::ECError as before and EC.dsa_verify_asn1 just returns
false when you pass dgst longer than expected (no truncation
performed).
* ext/openssl/ossl_pkey_ec.c: rdoc typo fixed.
Wed Jun 16 16:01:42 2010 Tanaka Akira <akr@fsij.org>
* lib/pathname.rb (Pathname#sub): suppress a warning.
[ruby-dev:38488]
Wed Jun 16 15:21:12 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/webrick/utils.rb (TestWEBrick#start_server): add log for
test_filehandler.rb
Wed Jun 16 15:21:12 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/net/http.rb (Net::HTTPHeader#{content_range,range_length}):
use inclusive range same as the header representation.
Thu Jun 10 14:39:35 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/iconv/test_option.rb: removed particular implementation specific tests.
[ruby-dev:40078]
Thu Jun 10 14:22:09 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::Status::initialize):
accept 0 or more arguments. [ruby-core:28692]
Thu Jun 10 13:37:35 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_load): initialize orig_func. [ruby-core:27296]
Tue Jun 8 18:57:48 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (config.status): no need to embbed manifest if not exist.
Tue Jun 8 18:38:36 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* include/ruby/win32.h: include errno.h before defining errnos.
* include/ruby/win32.h: check definition existance before defining
errno macros.
* win32/win32.c (errmap): define winsock errors mappings.
these are VC++10 support, merge from trunk (r27236, r27258).
Tue Jun 8 18:31:02 2010 NARUSE, Yui <naruse@ruby-lang.org>
* regexp.c (re_compile_pattern): allow zero times match for
non-greedy range repeatation. [ruby-core:30613]
Tue Jun 8 18:08:18 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* Makefile.in (fake.rb): double the backslash.
Tue Jun 8 18:08:15 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* configure.in: should replace COMMON_HEADERS if --with-winsock2 is
specified. [ruby-dev:41521]
Tue Jun 8 17:49:18 2010 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
* io.c, eval.c, process.c: remove all condition of r26371.
now, all platform use the same way. [Bug #3278][ruby-core:30167]
Tue Jun 8 17:45:36 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/iconv/iconv.c (rb_iconv_sys_fail): fix number of arguments.
a patch by Masaya TARUI <tarui AT prx.jp>.
Tue Jun 8 17:45:36 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/iconv/iconv.c (rb_iconv_sys_fail): raise BrokenLibrary if
errno is not set. [ruby-dev:41317]
Tue Jun 8 17:32:37 2010 Tanaka Akira <akr@fsij.org>
* pack.c (pack_pack): call rb_quad_pack to preserve RangeError.
Tue Jun 8 17:32:37 2010 Tanaka Akira <akr@fsij.org>
* pack.c: backport integer pack/unpack from 1.9 for [ruby-core:21937].
* configure.in: backport RUBY_DEFINT and fixed size integer checks.
* ruby.h: include stdint.h if available.
* bignum.c (rb_big_pack): defined..
(rb_big_unpack): defined.
* intern.h (rb_big_pack): declared.
(rb_big_unpack): declared.
Tue Jun 8 16:52:35 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* regex.c (read_special): get rid of overrun.
Tue Jun 8 16:51:48 2010 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb: backported exception handling from trunk.
[ruby-core:29745]
Tue Jun 8 16:42:48 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (VpAlloc): ensure buf does not get
collected. based on a patch masaya tarui at [ruby-dev:41213].
Tue Jun 8 16:08:00 2010 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (fetch_internal): do not quote message data item
names. Thanks, Eric Hodel. [ruby-core:23508] backported form
trunk.
Tue Jun 8 15:45:52 2010 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap (encode_utf7): encode & properly. Thanks, Kengo
Matsuyama. [ruby-dev:38063] backported from trunk.
Tue Jun 8 15:43:43 2010 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_val2variant): fix the core dump
when converting Array object to VT_ARRAY variant. [ruby-core:28446]
[Bug #2836]
Tue Jun 8 15:34:15 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_extname): skip last directory separators.
[ruby-core:29627]
Tue Jun 8 15:33:30 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* lib/fileutils.rb (FileUtils::cp_r): dup needed here; options are
destroyed otherwise.
Tue Jun 8 15:27:00 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (search_required): expand home relative path first.
[ruby-core:29610]
Tue Jun 8 15:23:10 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/timeout.rb (Timeout#timeout): propagate errors to the
caller. [ruby-dev:41010]'
Tue Jun 8 15:15:18 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/net/smtp.rb (Net::SMTP#rcptto_list): fixed typo.
[ruby-core:29809]
Tue Jun 8 15:15:18 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/net/smtp.rb (Net::SMTP#rcptto_list): continue when at least
one RCPT is accepted. based on a patch from Kero van Gelder at
[ruby-core:26190].
Tue Jun 8 15:14:11 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* LEGAL: separated the section for parse.c. contributed by Paul
Betteridge in [ruby-core:29472].
Tue Jun 8 14:00:33 2010 Keiju Ishitsuka <keiju@ruby-lang.org>
* ext/rational/lib/rational.rb: fix [Bug #1397].
Tue Jun 8 13:40:04 2010 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb (Date#>>): fixed. [ruby-core:28011]
Tue Jun 8 12:37:56 2010 NARUSE, Yui <naruse@ruby-lang.org>
* io.c, eval.c, process.c: add linux to r26371's condition.
patched by Motohiro KOSAKI [ruby-core:28151]
Tue Jun 8 12:37:56 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* eval.c (thread_timer, rb_thread_stop_timer): check the timing of
stopping timer. patch from KOSAKI Motohiro <kosaki.motohiro _AT_
jp.fujitsu.com> via IRC.
* eval.c (rb_thread_start_timer): NetBSD5 seems to be hung when calling
pthread_create() from pthread_atfork()'s parent handler.
* io.c (pipe_open): workaround for NetBSD5. stop timer thread before
fork(), and restart it after fork() on parent, and on child if
needed.
* process.c (rb_f_fork, rb_f_system): ditto.
these changes are tested by naruse. fixed [ruby-dev:40074]
Mon Jun 7 19:23:04 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/nkf/nkf-utf8/nkf.c (numchar_getc): get rid of buffer
overflow. [ruby-dev:40606]
Mon Jun 7 18:57:02 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl/ossl_ssl_session.c
(ossl_ssl_session_{get,set}_time{,out}): fixed a bug introduced by
backporting. (see [ruby-dev:40573]) use long in according to
OpenSSL API. (SSL_SESSION_{get,set}_time{,out})
Tue May 25 08:42:42 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/openssl: backport fixes in 1.9.
* r25019 by marcandre
* ossl_ocsp.c (ossl_ocspres_to_der): Bug fix in Response#to_def.
Patch by Chris Chandler [ruby-core:18411]
* r25017 by marcandre
* ossl_config.c (ossl_config_add_value_m,
ossl_config_set_section): Check if frozen (or untrusted for
$SECURE >= 4) [ruby-core:18377]
* r22925 by nobu
* ext/openssl/openssl_missing.h (i2d_of_void): cast for callbacks.
[ruby-core:22860]
* ext/openssl/ossl_engine.c (ossl_engine_s_by_id): suppress a
warning.
* ext/openssl/ossl_ssl.c (ossl_sslctx_flush_sessions): time_t may
be larger than long.
* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_get_time),
(ossl_ssl_session_get_timeout): use TIMET2NUM() to convert
time_t.
* r22924 by nobu
* ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): should use
OPENSSL_free instead of free. a patch from Charlie Savage at
[ruby-core:22858].
* r22918 by akr
* ext/openssl: suppress warnings.
* ext/openssl/ossl.h (OSSL_Debug): don't use gcc extention for
variadic macro.
* r22666 by akr
* ext/openssl/lib/openssl/buffering.rb: define Buffering module
under OpenSSL. [ruby-dev:37906]
* r22440 by nobu
* ext/openssl/ossl_ocsp.c (ossl_ocspbres_verify): OCSP_basic_verify
returns positive value on success, not non-zero.
[ruby-core:21762]
* r22378 by akr
* ext/openssl: avoid cyclic require.
* ext/openssl/lib/openssl/ssl-internal.rb: renamed from ssl.rb
* ext/openssl/lib/openssl/x509-internal.rb: renamed from x509.rb.
[ruby-dev:38018]
* r22101 by nobu
* ext/openssl/ossl_cipher.c (add_cipher_name_to_ary): used
conditionally.
* r21510 by akr
* ext/openssl/ossl.c (ossl_raise): abolish a warning.
* r21208 by akr
* ext/openssl/ossl_digest.c (GetDigestPtr): use StringValueCStr
instead of STR2CSTR.
* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_initialize): ditto.
(ossl_ec_group_initialize): ditto.
* r19420 by mame
* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_to_string): comment out
fragments of unused code.
* r18975 by nobu
* ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): fix for
initialization of r18168.
* r18971 by nobu
* ext/openssl/ossl_config.c (Init_ossl_config): removed C99ism.
* r18944 by matz
* ext/openssl/ossl_config.c (Init_ossl_config): memory leak fixed.
a patch <shinichiro.hamaji at gmail.com> in [ruby-dev:35880].
* ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.
* r18917 by nobu
* ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): fix for
initialization of r18168.
* ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): ditto.
* ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
* r18283 by nobu
* ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): suppress
warnings on platforms which int size differs from pointer size.
* r18181 by nobu
* ext/openssl/openssl_missing.h (d2i_of_void): define for older
versions. [ruby-dev:35637]
* r18168 by nobu
* ext/openssl: suppress warnings.
Sat May 22 22:31:36 2010 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb: fix [ruby-core:28320] reported by Paul Clegg.
(Resolv::DNS::Requester#request): raise ResolvTimeout consistently
for timeout.
Sat May 22 22:14:11 2010 NARUSE, Yui <naruse@ruby-lang.org>
* ext/readline/readline.c (Init_readline): initialize
check rl_catch_signals and rl_catch_sigwinch.
[ruby-core:28238] [ruby-core:28242]
* ext/readline/extconf.rb: check rl_catch_signals and
rl_catch_sigwinch.
Sat May 22 21:54:58 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* test/net/http/test_connection.rb (TestHTTP::HTTPConnectionTest#test_connection_refused_in_request):
Wrong exception to assert.
Sat May 22 21:03:16 2010 Tanaka Akira <akr@fsij.org>
* io.c (rb_io_modenum_mode): return "r" for O_RDONLY|O_APPEND.
[ruby-dev:40379]
Sat May 22 20:51:39 2010 URABE Shyouhei <shyouhei@ruby-lang.org>
* lib/resolv.rb (Resolv::DNS::Config#nameserver_port): 1.8.7
specific tweaks
Sat May 22 20:51:09 2010 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb: fix [ruby-core:28144] reported by Hans de Graaff.
(Resolv::DNS#make_requester): pass nameserver_port to
UnconnectedUDP.new.
(Resolv::DNS.bind_random_port): change the is_ipv6 argument to
bind_host.
(Resolv::DNS::Requester#initialize): change instance variable to
store multiple sockets.
(Resolv::DNS::Requester#request): pass readable sockets to
recv_reply.
(Resolv::DNS::Requester#close): close all sockets.
(Resolv::DNS::Requester::UnconnectedUDP#initialize): allocate
a socket for each address family of name servers.
(Resolv::DNS::Requester::UnconnectedUDP#recv_reply): read from the
passwd readable socket.
(Resolv::DNS::Requester::UnconnectedUDP#sender): use appropriate
socket for the target nameserver.
(Resolv::DNS::Requester::ConnectedUDP): follow the instance variable
change.
(Resolv::DNS::Requester::TCP#sender): ditto.
(Resolv::DNS::Config#nameserver_port): new method.
Sat May 22 19:46:27 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/net/http.rb (Net::HTTP#request): close @socket only after
started. [ruby-core:28028]
Sat May 22 19:36:38 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (proc_invoke): reverted r25975. [ruby-dev:39931]
[ruby-dev:40059]
* eval.c (rb_mod_define_method): return original block but not
bound block. [ruby-core:26984]
Thu May 20 16:28:17 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/webrick/httpservlet/filehandler.rb (make_partial_content):
add bytes-unit. [ruby-dev:40030]
Thu May 20 16:17:37 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* ext/zlib/zlib.c: backport r18029 and r21861 from trunk.
* r18029 ext/zlib/zlib.c (rb_deflate_params): flush before
deflateParams. [ruby-core:17675] (by mame)
* r21861 ext/zlib/zlib.c (zstream_run): desperately guard the
variable. [ruby-core:20576] (by usa)
* test/zlib/test_zlib.rb: backport deflate tests from trunk.
Thu May 20 15:59:14 2010 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/maker/base.rb, test/rss/test_maker_0.9.rb:
accept any time format in maker. [ruby-core:26923]
Thu May 20 15:54:08 2010 Akinori MUSHA <knu@iDaemons.org>
* eval.c (recursive_push): Taint internal hash to prevent
unexpected SecurityError; fixes #1864.
Thu May 20 15:39:26 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (io_fwrite): preserve errno. [ruby-core:27425]
Tue Apr 20 08:04:37 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_io_s_read): close the IO if an exception is raised on
seeking. [ruby-core:27429]
Mon Apr 19 22:43:28 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.h (RB_GC_GUARD_PTR): workaround for gcc optimization.
[ruby-core:27402]
Tue Apr 20 06:40:53 2010 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/uri/generic.rb (URI::Generic::eql): Check the class of the
compared object. Based on a patch by Peter McLain [ruby-core:27019]
Fri Apr 2 03:27:22 2010 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/net/http.rb (HTTPGenericRequest#send_request_with_body_stream):
increased encoding chunk size for POST request with body_stream
(1K -> 16K). patched by Brian Candler. #1284.
* test/net/http/test_post_io.rb: added for the patch. It's good if a
patch comes with a test.
Thu Apr 1 05:32:17 2010 NAKAMURA Usaku <usa@ruby-lang.org>
* string.c (rb_str_inspect): wrong result of UTF-8 inspect because of
the mistake of calculation. reported by eban via IRC.
Sun Jan 10 19:00:31 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/webrick/accesslog.rb : Escape needed.
* lib/webrick/httpstatus.rb : ditto.
* lib/webrick/httprequest.rb : ditto.
* lib/webrick/httputils.rb : ditto.
Thu Dec 24 18:04:27 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: default ac_cv_prog_CC to CC.
Thu Dec 24 17:56:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb: MINIRUBY is given via make-flag.
Thu Dec 24 17:56:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (EXTMK_ARGS): needs MINIRUBY for cross-compile.
[ruby-core:20131]
Thu Dec 24 17:56:32 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* common.mk (EXTMK_ARGS): shouldn't use ``\"'' because cmd.exe eat
''\'' in such quotes.
Thu Dec 24 17:56:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (EXTMK_ARGS): needs MINIRUBY for cross-compile.
[ruby-core:20131]
Thu Dec 24 17:56:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* mkconfig.rb (patchlevel): config.status may not contain
PATCHLEVEL even if other version numbers exist.
Thu Dec 24 17:50:35 2009 Yusuke Endoh <mame@tsg.ne.jp>
* ext/stringio/stringio.c (strio_init): rewind when reopened.
Thu Dec 24 17:06:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (run_final): runs finalizers with the object terminated.
* gc.c (rb_gc_call_finalizer_at_exit): ObjectSpace::finalizers needs
to scan whole object space, although deprecated.
Thu Dec 24 17:06:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (chain_finalized_object): deletes finalizers to be invoked from
finalizer_table.
* gc.c (rb_gc_call_finalizer_at_exit): warns when could not invoke
finalizers.
Mon Dec 21 16:09:09 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (LD_SHARED1): typo.
Wed Dec 16 20:17:40 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (CreateChild): allocate temporary buffer and use it
instead of directly modify the passed string. [ruby-dev:39635]
Wed Dec 16 19:49:47 2009 URABE Shyouhei <shyouhei@ruby-lang.org>
* instruby.rb (with_destdir): revert. [ruby-dev:39885]
Mon Dec 14 13:28:48 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/test/unit.rb (Test::Unit.run=, Test::Unit.run?): fixed rdoc.
[ruby-core:25034]
Mon Dec 14 13:21:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/open3.rb (Open3#popen3): fixed and improved rdoc. [ruby-core:25658]
Mon Dec 14 13:09:01 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (LIBPATHFLAG): use numbered specifier if RPATHFLAG
is set. [ruby-talk:322136]
Mon Dec 14 12:53:56 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/bigdecimal.rb: fix comparison operators [ruby-core:26646]
Mon Dec 14 12:40:10 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* object.c (rb_Float): Allow results of to_f to be NaN
[ruby-core:26733]
Mon Dec 14 12:35:21 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (proc_invoke): unbound block created by define_method
cannot call super. [ruby-core:26984]
Mon Dec 14 12:06:39 2009 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (rb_digest_instance_method_unimpl): Do not
call rb_inspect() on an object that does not implement necessary
methods; reported by NaHi.
Mon Dec 14 11:47:31 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_method_missing): adjusted format and argument number.
* eval.c (rb_call): fixed for super in cached method.
[ruby-dev:39757]
Mon Dec 14 11:40:35 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (ruby_setenv): get rid of crash in Solaris 8 and 10.
[ruby-core:26668]
Mon Dec 14 11:31:58 2009 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
* lib/cgi.rb: fix command-line option of
non-interactive terminal. [ruby-core:23016]
Mon Dec 14 03:36:20 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* eval.c (method_inspect, method_name, mnew): Bug fix when
method created from an alias.
Based on a patch by Peter Vanbroekhoven [ruby-core:22040]
Mon Dec 14 02:27:32 2009 Yusuke Endoh <mame@tsg.ne.jp>
* hash.c (rb_hash): always return a fixnum value because a return
value of rb_hash may be used as a hash value itself and bignums have
no unique VALUE.
* test/ruby/test_hash.rb: add a test for above.
Mon Dec 14 00:42:55 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_inspect): get rid of adding garbage to shor
UTF-8 string. [ruby-dev:39550]
Sun Dec 13 23:54:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (marshal_load): should set taintness. [ruby-dev:39723]
Sun Dec 13 23:54:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (struct {dump,load}_arg): manage with dfree, instead
of using local variable which may be moved by context switch.
[ruby-dev:39425]
Wed Nov 25 17:42:33 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (io_fwrite): adjust stdio file position after direct write on
BSDish platforms. [ruby-core:26300]
Wed Nov 25 17:39:28 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ostruct/test_ostruct.rb (test_frozen): added assertions.
Wed Nov 25 16:43:24 2009 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/monitor.rb (MonitorMixin.mon_release): ensure the scheduled
thread to be alive when a thread is releasing a monitor. #2240
Wed Nov 25 16:28:11 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/rexml/element.rb (text=): false should be converted to string.
A patch by Teruo Oshida [ruby-dev:38351]
Wed Nov 25 16:18:37 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_clear_cache_for_undef): clear entries for inherited
methods. [ruby-core:26074]
Tue Nov 24 16:15:18 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/iconv/iconv.c (iconv_create): cannot retry with given block.
[ruby-dev:39487]
Tue Nov 24 16:12:33 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (resp_text_code): accepts response codes without
text. backported from trunk. [ruby-core:24194]
Tue Nov 24 16:09:41 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (getaddress): rescue exceptions. [ruby-dev:39451]
Tue Nov 24 15:51:07 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* ext/curses/curses.c: Many functions of module Curses could cause a
crash if the ncurses library was not properly initialized.
Fix pointed out by Alexander Beisig [ruby-core:22592]
Functions fixed: attroff, attron, attrset, bkgd, bkgdset,
can_change_color, close_screen, closed, color_content, curs_set,
def_prog_mode, delch, deleteln, getmouse, getstr, has_colors,
init_color, init_pair, insertln, keyname, mouseinterval, mousemask,
pair_content, pair_number, reset_prog_mode, resizeterm, scrl,
setscrreg, standend, standout, start_color, timeout, ungetmouse
Fri Nov 20 15:49:59 2009 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb (Resolv::DNS.bind_random_port): bind to "::" for IPv6.
(Resolv::DNS::ConnectedUDP#initialize): specify is_ipv6 argument of
bind_random_port.
[ruby-core:25970]
Thu Nov 19 18:03:31 2009 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
* lib/cgi.rb (CGI.unescapeHTML): fix for hex values 80-FF,
single-byte hex entity encodings from 80-FF are valid HTML.
[ruby-core:25702]
Thu Nov 19 15:34:40 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_fptr_finalize): free fptr to avoid memory leaks.
fixed: #2009 [ruby-core:25173] [ruby-dev:39410]
Thu Nov 19 15:27:17 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/net/http.rb (transport_request): Handle timeout error by
closing socket if exception raised. [ruby-core:20976]
Wed Nov 18 14:14:38 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* ext/openssl/ossl_config.c (ossl_config_add_value_m,
ossl_config_set_section): Check if frozen (or untainted for $SECURE >=
4) [ruby-core:18377]
Wed Nov 18 14:13:14 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* instruby.rb: win32/win32.h exists in srcdir.
reported by arton ( http://www.artonx.org/diary/20090919.html#p01 )
Wed Nov 18 14:13:14 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (subtract): if the parameters are same value, should
return zero.
Wed Nov 18 14:13:14 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_select): of course, need to initialize rest.
Wed Nov 18 14:13:14 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_select): wait specified time on select.
Wed Nov 18 14:13:14 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_select): on 1.8, we don't need to poll sockets,
because our select is never called from multiple threads.
Tue Nov 17 16:22:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_start_0, rb_thread_start_1): should call star
timer after added new thread to thread list. [ruby-core:25613]
Tue Nov 17 16:22:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_start_timer): start to catch SIGVTALRM together
with timer thread. [ruby-core:25606]
* eval.c (rb_thread_atfork): stop timer thread.
Tue Nov 17 16:04:02 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/cgi/cookie.rb (value): Keep CGI::Cookie#value in sync with the
cookie itself. A patch by Arthur Schreiber [ruby-core:17634]
Tue Nov 17 15:49:00 2009 Marc-Andre Lafortune <ruby-core@marc-andre.ca>
* lib/irb/ext/multi-irb.rb: Fix arguments handling for shell commands
in irb; a patch by Yusuke Endoh [ruby-dev:35075]
Tue Nov 17 15:32:27 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_binmode): check if closed regardless platforms.
[ruby-core:25363]
Tue Nov 17 15:31:09 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (round): added declaration. [ruby-dev:39222]
Mon Nov 16 19:58:02 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (gc_sweep): makes new room if object space is full of
finalized objects and has no free objects. [ruby-dev:39201]
Mon Nov 16 19:45:27 2009 Tanaka Akira <akr@fsij.org>
* util.c: suppress strict-aliasing warning with gcc-4.4.0 -O2 to fix
infinite loop by ruby -e "1.402e-45" .
Mon Nov 16 19:28:23 2009 URABE Shyouhei <shyouhei@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_i): revert a part of
r23645, which was not a bug fix. [ruby-dev:39474]
Fri Sep 11 11:56:53 2009 Akinori MUSHA <knu@iDaemons.org>
* class.c (rb_singleton_class_clone): Qnil must be used for a null
class reference when we use NIL_P() to check class reference
validity. The bug was exposed by the spec test of Sequel.
* eval.c (ruby_init): Use NEW_CREF().
Thu Sep 10 10:53:03 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_sysopen): workaround for MSVCRT's bug.
[ruby-core:24838]
Mon Sep 7 19:52:44 2009 Tanaka Akira <akr@fsij.org>
* eval.c (rb_thread_schedule): need select for WAIT_SELECT, even if
already timeout. [ruby-dev:38971]
(WAIT_DONE): defined for mark threads which can be runnable.
Mon Sep 7 19:52:44 2009 Tanaka Akira <akr@fsij.org>
* eval.c (rb_thread_schedule): refine previous change.
Mon Sep 7 19:52:44 2009 Tanaka Akira <akr@fsij.org>
* eval.c (rb_thread_schedule): fix condition for making thread
runnable. [ruby-core:23515]
Sun Sep 6 19:47:10 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_exc_raise, rb_exc_fatal): require exception object.
[ruby-core:24767]
Sun Sep 6 01:34:03 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_connect): return value was broken when some
error occurred.
[ruby-core:24234]
Fri Sep 4 10:03:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (argf_eof): go to the next file if called after ARGF.close
or ARGF.skip. a patch from Mike Kasick at [ruby-core:24561].
Sun Aug 9 17:43:44 2009 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/irb.rb, lib/irb/init.rb, lib/irb/ext/save-history.rb: add
IRB::irb_at_exit. no use finalizer saving history. [ruby-dev-38563]
Wed Aug 5 15:29:54 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_io_flush): fsync() after buffer is flushed on win32.
backported from trunk. [ruby-core:20043]
Tue Aug 4 11:00:30 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.h (RMATCH_REGS): added for compatibility.
Mon Aug 3 14:46:53 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/complex.rb (Numeric#arg): should return NaN for NaN.
[ruby-core:24116]
Thu Jul 30 09:27:44 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (big_lshift, big_rshift): return Bignum always withou
normalization. [ruby-dev:38680]
Wed Jul 29 11:19:47 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_close): always call #close method. [ruby-core:23853]
* io.c (argf_skip): should close only when current_file is available.
Sat Jul 25 21:26:18 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (first_i): Enumerator#first should consume only what is
needed. a patch from Marc-Andre Lafortune. [ruby-core:23661]
* enum.c (take_i): ditto.
* enum.c (enum_first): call to_int once for an argument. a patch
from Marc-Andre Lafortune.
Fri Jul 24 17:19:40 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (HTTP_STATUS): typo fixed. [ruby-dev:38538]
Wed Jul 22 23:39:34 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/rexml/text.rb (REXML::Text.normalize): call to_s for input.
[ruby-talk:337069]
Tue Jul 21 18:21:47 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (SRC_EXT): should be flat.
http://twitter.com/_tad_/status/1825862632
Sat Jul 18 00:44:43 2009 URABE Shyouhei <shyouhei@ruby-lang.org>
* gc.c (rb_gc_call_finalizer_at_exit): finalizer_table can be NULL.
[ruby-core:24395]
Thu Jul 16 09:35:06 2009 Akinori MUSHA <knu@iDaemons.org>
* lib/delegate.rb (Delegator#method_missing)
(DelegateClass()#method_missing): Properly pass a given block
through. [ruby-dev:38390]
Wed Jul 15 11:40:34 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_join): recursive array has no meaning as path
name. [ruby-core:23329]
Tue Jul 14 19:57:28 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (get_ts): use readtime clock. [ruby-dev:38354]
* eval.c (rb_thread_stop_timer): clear thread_init while locking.
Tue Jul 14 19:57:28 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_start_timer): guard condition was inverted.
[ruby-dev:38319]
Tue Jul 14 19:57:28 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (safe_mutex_lock): pthread_cleanup_push() must not be
inside parens.
Mon Jul 13 01:36:54 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_timeval): rounds subsecond toward zero.
Mon Jul 13 01:36:54 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_timeval): check out-of-range. [ruby-core:23282]
[Bug #1396]
Thu Jul 9 17:58:03 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (proc_invoke): shares dmethod scope local variables.
a patch from coderrr at [ruby-core:23050]
* gc.c (obj_free): do not free cloned scope local variables.
Wed Jul 8 19:28:03 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_remove): stops timer thread unless other
threads exist. [ruby-core:18444]
Mon Jul 6 16:01:38 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_eval): checks for interrupt, stack and finalizers too.
[ruby-dev:38208], [Bug #1329]
* eval.c (eval): replaces the message if frozen.
Sun Jul 5 03:50:52 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/test/unit.rb: use Kernel.exit to get rid of using
IRB::ExtendCommandBundle#exit. a patch from Dmitry Vazhov by
[ruby-core:22986].
Fri Jul 3 09:05:38 2009 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb/drb.rb (open_server_inaddr_any): fixed multiple network
families problem. a patch from Charl Matthee at [ruby-core:21033].
Wed Jul 1 15:46:30 2009 Tanaka Akira <akr@fsij.org>
* lib/pathname.rb (Pathname#sub): set $~ in block.binding.
[ruby-dev:38173]
Mon Jun 29 13:18:42 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/fileutils.rb (FileUtils#fu_get_gid): stringify group
argument before making regexp match. [ruby-dev:38155]
Fri Jun 12 16:36:44 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (VpToString): fixed a bug introduced
in r23613. [ruby-talk:338957]
Mon Jun 8 10:58:41 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* eval.c (rb_thread_schedule): mswin32 doesn't have F_GETFD, so check
with another method.
Mon Jun 8 08:15:36 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (VpAlloc): avoid ALLOCA_N() to avoid
segmentation fault caused by (insanely) long decimal values.
backported from 1.9. CVE-2009-1904
* ext/bigdecimal/bigdecimal.c (BigDecimal_dump, BigDecimal_to_i,
BigDecimal_to_f, BigDecimal_to_s, BigDecimal_split,
BigDecimal_inspect): ditto.
Mon Jun 8 08:15:36 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): returns Inf if
exp is bigger than DBL_MANT_DIG.
Wed Jun 3 21:16:30 2009 Tanaka Akira <akr@fsij.org>
* file.c: include fcntl.h for O_RDONLY on Solaris.
Wed Jun 3 21:09:56 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* util.c (rv_strdup): macro to duplicate nul-terminated string.
[ruby-core:22852]
* util.c (ruby_dtoa): allocates one more byte to get rid of buffer
overrun. a patch from Charlie Savage at [ruby-core:22604].
Wed Jun 3 21:09:56 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* util.c (ruby_dtoa): allocates one more byte to get rid of buffer
overrun. a patch from Charlie Savage at [ruby-core:22604].
Wed Jun 3 21:05:44 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (gfDebug): uncommented out.
[ruby-core:22600]
Wed Jun 3 20:54:23 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_eval): needs to guard intermediate string objects.
based on a patch from Brent Roman <brent AT mbari.org> a
[ruby-core:22584].
Tue May 26 21:24:01 2009 URABE Shyouhei <shyouhei@ruby-lang.org>
* Makefile.in (update-rubyspec, test-rubyspec): Catch up to
rubyspec merge. A patch by Brian Ford at [ruby-core:21032]
Tue May 26 21:21:49 2009 Akinori MUSHA <knu@iDaemons.org>
* lib/soap/mimemessage.rb (MIMEMessage#to_s): Fix a fatal
method name typo. [Bug #1173]
Tue May 26 21:16:55 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_extname): fix for spaces before extention.
[ruby-dev:38044]
Tue May 26 21:09:21 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (_CrtDbgReportW): prevent from false positive
assertions in msvcrtd. [ruby-core:22116]
Tue May 26 21:02:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/ostruct.rb (OpenStruct#new_ostruct_member): checks if frozen.
[ruby-talk:328195], [ruby-core:22142]
Tue May 26 21:00:08 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/ostruct.rb (OpenStruct#inspect): fixed the recursion check.
Patch by Kornelius Kalnbach. [ruby-core:20992].
* test/ostruct/test_ostruct.rb: test for inspect.
Patch by Kornelius Kalnbach. [ruby-core:20992].
Tue May 26 20:50:32 2009 Tanaka Akira <akr@fsij.org>
* eval.c (rb_thread_schedule): handle EBADF of select as well.
[ruby-core:21264]
Wed Apr 8 18:59:52 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (subtruct): check tv_sec.
Thu Apr 2 16:06:17 2009 URABE Shyouhei <shyouhei@ruby-lang.org>
* test/rss/test_atom.rb (RSS::TestAtomCore::assert_atom_content_inline_other_base64_to_s):
ditto. [ruby-dev:38248]
Thu Apr 2 15:43:46 2009 Kouhei Sutou <kou@cozmixng.org>
* test/rss/rss-assertions.rb (RSS::Assertions::assert_atom_content_inline_other_text):
newlines are valid for Base64 data. [ruby-dev:38248]
Thu Apr 2 14:17:09 2009 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* test/openssl/test_ssl.rb (OpenSSL#test_client_session):
Debian's openssl 0.9.8g-13 failed at assert(ssl.session_reused?),
when use default SSLContext. [ruby-dev:36167]
backported r19268 from trunk. [ruby-core:22843]
Thu Mar 31 18:18:18 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (mkintpath): new function which converts native path
to format acceptable in Makefile.
* lib/mkmf.rb (configuration): leaves PATH_SEPARATOR unchanged.
* lib/mkmf.rb (configuration): convers srcdir, topdir and hdrdir.
a patch by Alexey Borzenkov <snaury AT gmail.com> at
[ruby-core:21448].
Fri Mar 27 19:22:02 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (run_final): frees zombies only. [ruby-dev:38171]
Fri Mar 27 19:22:02 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (rb_gc_call_finalizer_at_exit): leave Thread objects
unfinalized. [ruby-dev:38168]
Fri Mar 27 19:22:02 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (run_final): calls free function. [ruby-core:22578]
Mon Mar 23 19:17:06 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/thread/thread.c (rb_queue_pop, rb_queue_push): should not lock
mutex if got an exception while waiting, and should ensure unlocked
after signaled. [ruby-dev:37545]
Mon Mar 23 18:26:57 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_value): missed to change at r17874. [ruby-core:17595]
Mon Mar 23 18:26:57 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_join): new API.
* ext/thread/thread.c (wait_mutex, lock_mutex): wait until the locking
thread exits. [ruby-dev:34856]
Mon Mar 23 17:41:49 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_load_ok): checks if regular file, except for the
platform disallows to open directories, e.g. dosish.
[ruby-dev:38097], [Bug #1221]
Mon Mar 9 20:59:24 2009 Shugo Maeda <shugo@ruby-lang.org>
* ext/openssl/ossl_ocsp.c (ossl_ocspbres_verify): OCSP_basic_verify
returns positive value on success, not non-zero. [ruby-core:21762]
backported r22440 from trunk.
Mon Mar 9 10:02:15 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (match_check): check if MatchData is initialized.
[ruby-core:18749]
Mon Mar 9 09:56:34 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/rexml/rexml.rb: incremented Ruby::VERSION. Thanks, Jeremy
Kemper. [ruby-core:20113]
Mon Mar 9 09:52:53 2009 Tanaka Akira <akr@fsij.org>
* io.c (io_getpartial): fflush after read for updating pos in FILE.
not portable, I guess. [ruby-core:21561]
Mon Mar 9 09:04:39 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (define_final): cannot define finalizer for immediate
values. [ruby-core:21500]
* gc.c (define_final): freezes or hides internal values.
Mon Mar 9 08:54:47 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (IS_BEG): EXPR_CLASS should be treated like EXPR_BEG.
[ruby-core:21453]
Wed Feb 25 15:15:52 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* node.h (rb_thread_raised_clear): should not clear flags other than
raised flags. a patch by Tomoyuki Chikanaga <chikanag AT
nippon-control-system.co.jp> at [ruby-dev:37794]. [ruby-dev:37776]
Wed Feb 25 15:05:48 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/extconf.rb (gai_strerror): checks if available and if
returns const pointer.
* ext/socket/getaddrinfo.c (gai_strerror): defines only if non
available. [ruby-core:21328]
Wed Feb 25 14:57:18 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (open_dir_handle): extracted from rb_w32_opendir.
* win32/win32.c (winnt_stat): gets rid of strange behavior of
GetFileAttributes(). [ruby-core:21269]
Tue Feb 24 02:44:39 2009 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/erb.rb (PercentScanner): remove PercentScanner. fixed % after
%> bug. [ruby-dev:37751] [Bug #997]
* test/erb/test_erb.rb: ditto
Tue Feb 24 02:35:29 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_hash_s_create): set nil as the value if assoc length
is not enough. [ruby-core:21249]
Sun Feb 22 22:08:45 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (stack_extend): streamlined rb_thread_restore_context()
to ensure O(1) time. based on a patch by Brent Roman <brent AT
mbari.org>.
Sun Feb 22 22:03:40 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (cc_mark): frees the continuation's stack if its thread
is dead to avoid recursive gc that segfaults. [ruby-core:13889]
a patch by Brent Roman <brent AT mbari.org>.
* eval.c (rb_cont_check): checks for valid continuation instance.
* eval.c (rb_callcc): assigns th->thread before scope_dup() to
avoid segfaults if this scope_dup() triggers a gc pass.
a patch by Brent Roman <brent AT mbari.org>.
Sun Feb 22 21:43:34 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (ruby_float_step): extracted from num_step().
* range.c (range_step): uses ruby_float_step() for float range.
[ruby-dev:37691]
Sun Feb 22 00:49:36 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb (extmake): does not use both of makefile.rb and
extconf.rb at the same time.
* lib/mkmf.rb (DLLIB): depends on Makefile. [ruby-core:21096]
Sun Feb 22 00:19:05 2009 Tanaka Akira <akr@fsij.org>
* eval.c (rb_thread_schedule): Don't change status of threads which
don't run next even if select notify readability/writability.
[ruby-core:20446]
Fri Feb 20 20:43:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (OptionParser::List#summarize): gives priority
to latter switches. [ruby-dev:36692]
* lib/optparse.rb (OptionParser#summarize): do not append
unnecessary line terminator.
Fri Feb 20 19:35:08 2009 Takeyuki FUJIOKA <xibbar@ruby-lang.org>
* lib/cgi/session.rb: ignore session_id options fixed.[Bug #605]
Fri Feb 20 18:06:40 2009 James Edward Gray II <jeg2@ruby-lang.org>
Merged 20854 from trunk.
* lib/xmlrpc/server.rb: Restricting method inspection to show only
non-inherited public methods. [ruby-core:20603]
* lib/xmlrpc/server.rb: Fixing method inspection so it doesn't
trigger XMLRPC::FaultException when used. [ruby-core:20604]
Fri Feb 20 01:41:08 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/sync.rb (Sync_m#sync_try_lock): wrong variable name fixed.
a patch from [ruby-core:20561]
* lib/sync.rb (Sync_m::Err.Fail): turn off Thread.critical before
exit.
Thu Feb 19 18:02:10 2009 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* pack.c (pack_pack): fixed odd act of 'm*', 'M*', and 'P*'.
just ignores '*' in these cases.
[ruby-dev:37289]
Thu Feb 19 17:26:11 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* pack.c (pack_pack): fixed length for odd length string.
[ruby-dev:37283]
Thu Feb 19 17:13:13 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_yield_0): Qundef means no argument. [ruby-Bugs-22525]
Wed Feb 18 22:28:00 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_isatty): check whether fd is valid.
Wed Feb 18 22:24:23 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (waitpid): fix bug of checking child slot.
* win32/win32.c (FindChildSlotByHandle): new.
Wed Feb 18 22:17:04 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* pack.c (pack_pack): propagate taint status from format string to
result string.
Wed Feb 18 22:07:44 2009 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* ext/gdbm/gdbm.c: do not set members of RSTRING(str) directly.
[ruby-dev:37182]
* ext/gdbm/gdbm.c (rb_gdbm_nextkey): fix memory leak.
Tue Feb 17 11:58:58 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (str_independent): no independent string points null_str.
[ruby-core:20082]
Mon Feb 16 23:30:24 2009 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tkextlib/blt.rb, ext/tk/lib/tkextlib/blt/vector.rb:
fix NameError bug.
Mon Feb 16 23:08:22 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_s_alloc, rb_str_replace): use null_str as well as
rb_string_value so that extension libraries do not segfault.
[ruby-core:19971]
* string.c (rb_str_replace): reduced unnecessary malloc and copy.
Mon Feb 16 22:45:41 2009 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* test/rinda/test_rinda.rb: fixed fails occasionally [ruby-dev:37119].
thanks, shinichiro.h.
Mon Feb 16 22:36:37 2009 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb/drb.rb (DRbConn::alive?): fixed NoMethodError problem
from NaHi [ruby-dev:37110].
Sun Feb 15 04:21:42 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/net/ftp.rb (Net::FTP#open_socket): SOCKSsocket is obsolete.
a patch from Alan Johnson <alan.wayne.johnson at gmail.com> in
[ruby-core:19982].
Fri Feb 13 19:18:42 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/logger.rb (ProgName): fixed for svn, based on a patch from
Nobuhiro IMAI at [ruby-dev:37108].
Sun Feb 15 04:17:40 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/webrick/httprequest.rb (WEBrick::HTTPRequest#read_request_line):
use non-greedy match for path retrieval to avoid huge recursion
for insanely long path.
Fri Feb 13 19:04:54 2009 Keiju Ishitsuka <keiju@ruby-lang.org>
* shell/command-processor.rb: undefined method `top_level_test' in
Shell#test. [ruby-list:45634]
Tue Feb 10 20:00:52 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (load_lock): makes circular require deadlock.
[ruby-core:19821]
Tue Feb 10 19:40:58 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_feature_p): returns found feature name if loading.
[ruby-core:19798]
* eval.c (search_required): ditto.
Wed Feb 11 23:37:35 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/bigdecimal/bigdecimal.c (VpMidRound): Round method bug
pointed by Ryan Platte fixed(Patch to the patch from "NATORI
Shin"). [ruby-talk:273360]
back ported from 1.9. fix [ruby-core:19791]
Mon Feb 9 17:35:38 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_accept): secure fd before accept because if
error causes in securing, cannot restore the state of accepted
socket.
fixed [ruby-core:19728]
Mon Feb 9 13:42:15 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (ifs_open_socket): should retry without proto_buffer
if cannot find the suitable protocol. a patch from Heesob Park.
fixed [ruby-core:19713]
Mon Feb 9 13:40:21 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/stringio/stringio.c (strio_ungetc): should allow ungetc at
the top of the buffer. ref #701
Thu Feb 5 09:38:48 2009 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-utf8/nkf.c (h_conv): can't guess UTF-8 input in
conversion. [ruby-list:45609]
Thu Feb 5 09:03:21 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/rexml/entity.rb (unnormalized): do not call
document.record_entity_expansion if document is nil.
see <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=502535>.
Thanks, Naohisa Goto. backported from trunk.
* test/rexml/test_document.rb: ditto.
Thu Feb 5 08:55:24 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_join): do not repeat self in a recursive array.
[ruby-dev:37019]
Wed Feb 4 14:26:58 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* dir.c (dir_globs): need taint check. reported by steve
<oksteev at gmail.com>
Tue Feb 3 14:35:26 2009 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* lib/net/pop.rb: check for invalid APOP timestamp. (CVE-2007-1558)
[ruby-dev:36631]
* test/net/pop/test_pop.rb: ditto.
Mon Feb 2 20:03:58 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_mdump, time_mload): preserves GMT status.
[ruby-core:19252]
Mon Feb 2 11:34:51 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (autoload_delete, autoload_file): should not delete
autoload table, since it may be shared with duplicated modules.
[ruby-core:19181]
Thu Jan 29 11:54:22 2009 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb (today,now): should produce own instances.
[ruby-talk:317020]
Wed Jan 28 22:51:55 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_mod_modfunc): method undefined in included module
may not have nd_body. [ruby-core:18738]
Wed Jan 28 20:53:27 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (marshal_dump): fixed for check_dump_arg.
Tue Jan 27 17:30:11 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (marshal_dump): initializes dump_arg before any funcall.
[ruby-dev:36648]
Tue Jan 27 15:17:35 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/socket/socket.c (host_str): numeric address should be unsigned.
[ruby-core:18971]
Mon Jan 26 11:12:03 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/tmpdir.rb: setup buffer with nul characters instead of spaces.
fixed [ruby-dev:36493]
Sun Jan 25 00:07:23 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/rexml/formatters/pretty.rb (REXML::Formatters::Pretty#wrap):
abandon wrapping if the line contains no space. [ruby-dev:36045]
fix: #342
Sun Jan 25 00:02:23 2009 Yuki Sonoda (Yugui) <yugui@yugui.jp>
* lib/matrix.rb (Vector#eql?): typo of the method name as "eqn?".
(Vector#eqn?): removed. Defined by mistake.
Fixes [ruby-dev:36294]. Reported by weda <weda AT
issp.u-tokyo.ac.jp> and an anonymous user.
* test/matrix/test_matrix.rb: added.
* test/matrix/test_vector.rb: added.
Fri Jan 23 11:49:45 2009 Shugo Maeda <shugo@ruby-lang.org>
* NEWS: added an entry for REXML.
* lib/rexml/document.rb: fixed typo.
Fri Jan 23 11:49:45 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/rexml/document.rb: limit entity expansion. Thanks, Luka
Treiber, Mitja Kolsek, and Michael Koziarski. backported from
trunk r19033, r19317, r19318.
* lib/rexml/entity.rb: ditto.
* test/rexml/test_document.rb: ditto.
Thu Jan 22 15:19:39 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (marshal_load): arg.data is no longer a VALUE but a
st_table, and freed in load_ensure. pointed out by pegacorn.
[ruby-dev:37008]
Thu Jan 22 15:19:39 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (rb_mark_set): new function to mark keys.
* marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
data entries. backport from trunk r13527,r13528,r13961,r16533.
[ruby-dev:36082]
Wed Jan 21 11:12:55 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (filetime_to_timeval): new function, split from
gettimeofday().
* win32/win32.c (gettimeofday): use above function.
* win32/win32.c (filetime_to_unixtime): ditto. [ruby-dev:36135]
Wed Jan 21 11:12:55 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (gettimeofday): tv_usec is usec, not msec.
[ruby-dev:36094]
Wed Jan 21 11:12:55 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (gettimeofday): calc tv_sec and tv_usec from system
time by myself. [ruby-dev:36084]
Wed Jan 21 11:12:55 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (gettimeofday): shouldn't use mktime(2) because it's
buggy about handling summer time.
reported by Yoshikawa <yoshixool AT gmail.com> at [ruby-dev:36071]
Tue Jan 20 12:23:38 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/scanf.rb (Scanf::FormatSpecifier#initialize): %i should accept
single digit decimal. [ruby-core:18355]
Mon Jan 19 18:25:28 2009 Tanaka Akira <akr@fsij.org>
* configure.in (rb_cv_broken_glibc_ia64_erfc): renamed from
rb_broken_glibc_ia64_erfc.
[ruby-core:18228]
Sat Jan 17 12:16:10 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* random.c (Init_Random): always initialize seed.
Fri Jan 16 10:59:31 2009 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (clone_method): should copy cbase in cref as well.
[ruby-dev:35116]
* node.h (NEW_CREF): new NEW_ macro.
* eval.c (PUSH_CREF): use NEW_CREF().
Thu Jan 15 14:34:32 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
[ruby-core:18207]
Wed Jan 14 10:39:56 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* stable/ext/socket/socket.c (NI_MAXHOST, NI_MAXSERV): fixed invalid
preprocessor directives. a patch from Peter Bowen at
[ruby-core:18211].
Tue Jan 13 04:40:30 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (login): raise FTPReplyError if passwd or acct
is not supplied. backported from trunk. fixed [ruby-core:18058].
Mon Jan 12 00:23:37 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
Data. [ruby-dev:35578]
* gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
cannot be invoked. [ruby-dev:35681]
Sun Jan 11 11:33:27 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (chdir): handle 5xx errors correctly.
backported from trunk. fixed [ruby-core:18057].
Fri Jan 9 19:25:25 2009 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (disconnect): do not refer SSL::SSLSocket for
environments without OpenSSL. backported from trunk.
fixed [ruby-dev:35755].
Thu Jan 8 13:24:23 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (deferred_nodes, compstmt, arg, fixup_nodes, range_op): fix
up fixnum range literal in conditional as automagical line number
comparison. [ruby-core:12124], [ruby-dev:35731]
Wed Jan 7 10:09:46 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (timeofday): use monotonic clock. based on a patch
from zimbatm <zimbatm@oree.ch> in [ruby-core:16627].
Tue Jan 6 09:03:35 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (yylex): 8 and 9 in octal integer should cause compile
error. [ruby-dev:35729]
Mon Jan 5 11:14:39 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_thread_schedule): runs deferred finalizers.
* gc.c (gc_sweep): sets rb_thread_pending to run deferred finalizers.
* rubysig.h (CHECK_INTS): now checks rb_thread_pending even on
platforms where setitimer is not available. [ruby-core:18045]
Mon Jan 5 11:14:39 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* rubysig.h (CHECK_INTS): gives the chance to perform to deferred
finalizers before explicit GC.start or the process termination.
[ruby-core:18045]
Sun Jan 4 04:49:01 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_telldir): just returns loc.
* win32/win32.c (rb_w32_rewinddir): needs to intialize loc.
[ruby-core:18041]
Sun Jan 4 04:45:26 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_select): recalc the rest of timeout for each
iterations. [ruby-core:18015]
Fri Jan 2 03:08:47 2009 Kouhei Sutou <kou@cozmixng.org>
* test/rss/: use PNG instead of zlib as binary data. [ruby-dev:35666]
Tue Nov 11 01:07:32 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* configure.in: fix SEGV on Mac OS X 10.5.3 with --enable-pthread.
a patch from Wataru Kimura in Bug #193 [ruby-core:17333].
Mon Aug 11 09:37:17 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/dl/dl.c (rb_str_to_ptr): should propagate taint to dlptr.
* ext/dl/dl.c (rb_ary_to_ptr): ditto.
* ext/dl/sym.c (rb_dlsym_call): should check taint of DLPtrData as
well.
Fri Aug 8 10:53:52 2008 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb: randomize source port and transaction id.
CVE-2008-1447.
* lib/resolv-replace.rb (UDPSocket#bind): don't resolv host if host is
"".
Mon Aug 4 14:49:35 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
* lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
Masao Takaku <masao at nii.ac.jp>
fix [ruby-dev:35489].
Mon Aug 4 14:13:15 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* regex.c (xmalloc, xrealloc, xfree): not to use ruby managed memory.
* regex.c (DOUBLE_STACK, re_compile_fastmap0, re_adjust_startpos),
(re_search, re_match_exec): check if failed to allocate memory.
Mon Aug 4 13:53:42 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big2str0, bigsqr): made interruptible. [ruby-Bugs-20622]
Mon Aug 4 13:31:41 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* numeric.c (check_uint, rb_num2uint, rb_fix2uint): fixed wrong check
about 64bit positive value.
Mon Aug 4 13:31:41 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* numeric.c (check_uint, rb_num2uint, rb_fix2uint): strict check.
fixed [ruby-dev:33683]
Thu Jul 17 21:42:07 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
* lib/net/smtp.rb (Net::SMTP::start): revert to avoid RFC2821
violation. [ruby-dev:35487]
Thu Jul 17 21:32:49 2008 Tanaka Akira <akr@fsij.org>
* string.c (rb_str_format_m): make tmp volatile to avoid possible GC
problem.
Thu Jul 17 21:30:55 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (OptionParser#environment): requires shellwords.
[ruby-dev:35466]
Thu Jul 17 02:05:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): requires
webrick/cookie. [ ruby-Bugs-21139 ]
Thu Jul 17 01:38:31 2008 Yusuke Endoh <mame@tsg.ne.jp>
* ext/zlib/zlib.c (rb_gzfile_set_mtime): fix typo. [ruby-core:17713]
Sun Jul 13 00:08:16 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/ipaddr.rb (IPAddr#initialize): get rid of ArgumentError in
IPAddr#to_range. a patch from okkez <okkez000 AT gmail.com> in
[ruby-dev:35091].
Sun Jul 13 00:04:38 2008 Tanaka Akira <akr@fsij.org>
* configure.in (erfc): erfc of glibc comes with Debian GNU/Linux Etch
on IA64 is broken. erfc(10000.0) aborts.
use missing/erf.c instead.
http://sources.redhat.com/ml/libc-hacker/2005-08/msg00008.html
Thu Jul 10 18:50:48 2008 Tanaka Akira <akr@fsij.org>
* common.mk (SPEC_GIT_BASE): update RubySpec GIT URL.
Thu Jul 10 18:46:28 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_extname): fix for file name with spaces.
[ruby-talk:307404]
Thu Jul 10 18:42:37 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/erb.rb (PercentScanner#scan): fix %% line bug. [ruby-core:17491]
* test/erb/test_erb.rb (test_percent): ditto.
Thu Jul 10 18:40:22 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/net/ftp.rb (Net::FTP#sendport): use divmod. [ruby-core:17557]
Thu Jul 10 18:36:53 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* ruby.c: Mac OS X needs origargc times of '\0' in
origargv. [ruby-dev:35308]
Thu Jul 10 13:53:08 2008 Tanaka Akira <akr@fsij.org>
* 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.
backported from 1.9.
Mon Jul 7 16:21:38 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
'localhost.localdomain'. [ruby-dev:35333]
* lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.
Mon Jul 7 15:02:13 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
if it was frozen. clear all raised flags.
* eval.c (stack_check): leave clearing flag to rb_longjmp.
* eval.c (rb_thread_set_raised, rb_thread_reset_raised): use generic
flags.
* eval.c (Init_Proc), gc.c (Init_GC): freeze preallocated special exceptions.
* gc.c (rb_memerror): use thread raised flag instead of static flag,
and raise nomem_error without backtrace if failed to make backtrace.
[ruby-dev:34724]
* gc.c (ruby_xmalloc): increase malloc_increase only if malloc
succeeds. failed malloc size can be huge. it may increase
malloc_limit too big which cause less GC and memory full.
(ruby_xrealloc): ditto.
Mon Jul 7 12:23:05 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: avoid creating Ruby object during
GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]
* ext/win32ole/tests: add test_win32ole_event.rb, remove
testOLEEVENT.rb
* ext/win32ole/tests/testWIN32OLE.rb(test_convert_bignum):
fix test.
Mon Jul 7 12:23:05 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* gc.c: add rb_during_gc(). based on a patch from arton <artonx AT
yahoo.co.jp> at [ruby-dev:35313].
* intern.h: ditto.
Thu Jul 3 20:13:20 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
public methods only. [ruby-core:17283]
* object.c (convert_type): ditto.
* lib/singleton.rb (Singleton#_dump): conversion method should be
public.
Wed Jul 2 19:06:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
double quotes are allowed. [ruby-list:45140]
Wed Jul 2 19:03:37 2008 Tanaka Akira <akr@fsij.org>
* numeric.c (num_coerce): call rb_Float(x) first. don't depend on
evaluation order of function arguments.
Wed Jul 2 18:57:19 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/syslog/syslog.c (syslog_write): syslog operations should be
protected from $SAFE level 4. a patch from Keita Yamaguchi
<keita.yamaguchi at gmail.com>.
* ext/syslog/syslog.c (mSyslog_close): ditto.
* ext/syslog/syslog.c (mSyslog_set_mask): ditto.
Wed Jul 2 18:26:20 2008 Tanaka Akira <akr@fsij.org>
* math.c (domain_check): fix preprocess condition.
Wed Jul 2 18:22:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
should be clean. based on a patch from arton <artonx AT
yahoo.co.jp> at [ruby-dev:35269]
Wed Jul 2 18:16:19 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (date2time_str): fix the overflow in
some situation. [ruby-bugs-20793]
Tue Jul 1 15:11:14 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_fill): check if beg is too big.
Mon Jun 30 20:35:32 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (str_buf_cat): check for self concatenation.
Sun Jun 29 21:39:54 2008 Tanaka Akira <akr@fsij.org>
* eval.c (rb_obj_respond_to): use RTEST to test the result of
respond_to? method.
Sun Jun 29 21:20:17 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
* array.c (rb_ary_fill): (compatibility) do not raise
ArgumentError on negative length. This behaviour shall change
in a future release.
Sun Jun 29 20:08:11 2008 Tanaka Akira <akr@fsij.org>
* time.c (time_timeval): fix rounding negative float.
Sun Jun 29 19:19:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
$0. [ruby-dev:35261]
* lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.
Sun Jun 29 19:19:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (set_arg0, ruby_prog_init): freeze $0. a patch from Keita
Yamaguchi <keita.yamaguchi at gmail.com>.
Sun Jun 29 18:33:33 2008 Tanaka Akira <akr@fsij.org>
* process.c: include sys/resource.h if HAVE_SYS_RESOURCE_H is defined.
pointed by TOYOFUKU Chikanobu. [ruby-dev:35258]
Sun Jun 29 18:26:01 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_f_trace_var): should not be allowed at safe level 4.
a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
* eval.c (rb_call0): wrong condition to check insecure method.
a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
Sun Jun 29 18:22:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_fill): not depend on unspecified behavior at integer
overflow. reported by Vincenzo Iozzo <snagg AT openssl.it>.
Sun Jun 29 18:22:06 2008 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
[ruby-bugs-20792]
Sun Jun 29 18:19:11 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (PUSH_FRAME, PUSH_CLASS): Add volatile to avoid a
possible optimization bug on OS X/PPC. This at least makes
build with gcc -O1 and `make test' pass.
Sun Jun 29 17:24:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
magic comment.
Sun Jun 29 17:22:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/stringio/stringio.c (strio_each, strio_readlines): IO#each and
IO#readlines do not affect $_. [ruby-core:17277]
Sun Jun 29 17:19:59 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/stringio/stringio.c (strio_readline, strio_each)
(strio_readlines): set lastline. [ruby-core:17257]
Sun Jun 29 17:15:49 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/ossl.h: include winsock.h if USE_WINSOCK2 is not defined.
a patch from arton <artonx at yahoo.co.jp> in [ruby-dev:35078]
Sun Jun 29 17:09:48 2008 wanabe <s.wanabe@gmail.com>
* util.c (ruby_strtod): ruby_strtod don't allow a trailing
decimal point like "7.". [ruby-dev:34835] [ruby-dev:35009]
Sat Jun 28 19:23:40 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
* class.c (clone_method): use rb_copy_node_scope.
fixed [ruby-list:45102]
fixed [ruby-core:17393]
Sat Jun 28 18:49:50 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
* class.c: revert to r15855.
Fri Jun 20 18:25:18 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_buf_append): should infect.
Fri Jun 20 16:33:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_store, rb_ary_splice): not depend on unspecified
behavior at integer overflow.
* string.c (str_buf_cat): ditto.
Wed Jun 18 22:24:46 2008 URABE Shyouhei <shyouhei@ruby-lang.org>
* array.c (ary_new, rb_ary_initialize, rb_ary_store,
rb_ary_aplice, rb_ary_times): integer overflows should be
checked. based on patches from Drew Yao <ayao at apple.com>
fixed CVE-2008-2726
* string.c (rb_str_buf_append): fixed unsafe use of alloca,
which led memory corruption. based on a patch from Drew Yao
<ayao at apple.com> fixed CVE-2008-2726
* sprintf.c (rb_str_format): backported from trunk.
* intern.h: ditto.
Tue Jun 17 15:09:46 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_expand_path): no need to expand root path which has no
short file name. [ruby-dev:35095]
Sun Jun 15 19:27:40 2008 Akinori MUSHA <knu@iDaemons.org>
* configure.in: Fix $LOAD_PATH. Properly expand vendor_ruby
directories; submitted by Takahiro Kambe <taca at
back-street.net> in [ruby-dev:35099].
Mon Jun 9 17:56:30 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/set.rb (Set#delete_if): Call to_a.
(SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
yield elements in sorted order; [ruby-core:17144] by Arthur
Schreiber.
(SortedSet#each, SortedSet#each, TC_Set#test_each)
(TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
Arthur Schreiber.
Mon Jun 9 03:28:05 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
initialize_copy; [ruby-list:45016], [ruby-list:45018].
Mon Jun 9 03:26:03 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* NEWS: Mention new constants.
Mon Jun 9 03:24:18 2008 Tanaka Akira <akr@fsij.org>
* hash.c (hash_i): make Hash#hash order insensitive.
Mon Jun 9 03:22:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (VENDOR_DIR): use LIBDIR instead of PREFIX as well as
SITE_DIR. a patch from Richard Brown <rbrown AT exherbo.org> in
[ruby-core:17129].
Mon Jun 9 03:21:20 2008 Tanaka Akira <akr@fsij.org>
* gc.c (os_obj_of): assure to not free the scanning heap.
Mon Jun 9 03:20:12 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* io.c (rb_open_file, rb_io_s_sysopen): fmode should be unsigned int.
fixed [ruby-dev:34979]
Fri Jun 6 21:16:55 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
* ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
freehostent, freeaddrinfo): undef before define because these are
macros in some versions of Windows SDK.
* win32/setup.mak: maybe commit miss.
Fri Jun 6 19:34:22 2008 Akinori MUSHA <knu@iDaemons.org>
* mkconfig.rb: hide build path from rbconfig.rb.
* util.c (ruby_strtod, dtoa): initialize more variables for error
handling.
* io.c (rscheck), marshal.c (w_nbyte, w_bytes, w_unique),
(path2class, path2module): constified.
* pack.c (pack_unpack), process.c (rb_syswait): suppress warnings.
* suppress warnings on cygwin, mingw and mswin.
Fri Jun 6 19:23:53 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_expand_path): fix for non-existent files and SFN of
symlinks. [ruby-talk:303736]
Fri Jun 6 18:25:43 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/iconv: Tests fixed.
Fri Jun 6 17:04:56 2008 Akinori MUSHA <knu@iDaemons.org>
* win32/win32.h: include ws2tcpip.h. fixed [ruby-Bugs-20528]
* lib/time.rb (Time.xmlschema): don't use float. fix
http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504
* object.c (rb_obj_alloc): RDoc updated. a patch from Gaston
Ramos <ramos.gaston at gmail.com> in [ruby-core:17073].
* lib/rdoc.rb: massive spelling correction patch from Evan Farrar
<evanfarrar at gmail.com> in [ruby-doc:1382] applied.
* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
Add a null check for ssl; submitted by akira yamada
in [ruby-dev:34950].
* ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
SSL_OP_NO_TICKET is present; submitted by akira yamada
in [ruby-dev:34944].
* test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
workaround for the case where OpenSSL is configured with
--enable-tlsext; submitted by akira yamada in [ruby-dev:34944].
Fri Jun 6 16:58:23 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/iconv/iconv.c (iconv_iconv): fix for length argument and now
allows range. [ruby-core:17092] [ruby-core:17115]
Wed Jun 4 17:22:30 2008 Akinori MUSHA <knu@iDaemons.org>
* NEWS: Fix typos and move misplaced entries.
NEWS: Somehow optflags and warnflags were not actually included
in this release.
Tue Jun 3 19:33:22 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c (enumerator_init_copy): Take care of
initialize_copy as well as initialize.
* test/ruby/test_enumerator.rb: Pull in the test suite for
enumerator from trunk.
Tue Jun 3 12:51:57 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c (enumerator_allocate, enumerator_ptr): Properly
detect if the object is initialized and raise error when
appropriate.
(enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052]
Tue Jun 3 10:16:40 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Fix a bug
where tokens are not yilelded one by one.
(ERB::Compiler::TrimScanner#explicit_trim_line): Fix without-
strscan problems. [ruby_core:17028].
* test/erb/test_erb.rb (TestERBCore#_test_01)
(TestERBCore#test_02_safe_04): The expected value should come
first for assert_equal().
(TestERBCoreWOStrScan): Add test class for without-strscan.
Mon Jun 2 19:47:16 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/delegate.rb (DelegateClass, Delegator#respond_to?):
respond_to? must take optional second argument. This was a
latent bug exposed by a recent internal change of marshal.c to
call respond_to? with a second argument; submitted by Jeremy
Kemper <jeremy at bitsweat.net> in [ruby-core:17045].
Sat May 31 23:53:35 2008 Akinori MUSHA <knu@iDaemons.org>
* .: Release as Ruby 1.8.7.
Sat May 31 23:33:34 2008 Akinori MUSHA <knu@iDaemons.org>
* README, README.ja: Add a note about default C flags.
Sat May 31 22:11:15 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* version.c (ruby_description, ruby_copyright): backported from
1.9. bug#19002, [ruby-dev:34883]
* error.c (report_bug): uses ruby_description.
Sat May 31 20:56:04 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_delete_if): should return enumerator if no block
is given. [ruby-dev:34901]
Sat May 31 18:28:17 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* suppress warnings with -Wwrite-string.
Sat May 31 15:58:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, configure.in (warnflags): defaulted to -Wall
-Wno-parentheses with gcc. [ruby-dev:34810]
Fri May 30 05:28:18 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* enum.c (count_i, count_iter_i, count_all_i): add prototypes for VC.
Fri May 30 04:32:07 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c (count_i, count_iter_i): Sync with trunk.
enum.c (enum_count, count_all_i, Init_Enumerable),
array.c (rb_ary_count): Sync with trunk. If no argument or
block is given, count the number of all elements.
Fri May 30 03:12:18 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
Int should be enough here.
Fri May 30 02:35:00 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
(ossl_dh_initialize),
ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
ext/openssl/ossl_rand.c (ossl_rand_bytes)
(ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
use FIX2INT() without checking the value type. Use NUM2INT()
instead; found by akr in [ruby-dev:34890].
Thu May 29 20:07:45 2008 Akinori MUSHA <knu@iDaemons.org>
* configure.in, win32/Makefile.sub, mkconfig.rb, instruby.rb,
ruby.c, lib/mkmf.rb, README.EXT, README.EXT.ja: Backport the
vendor_ruby directory support.
Thu May 29 17:52:31 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/zlib/extconf.rb: search zlib1, and regard mswin32 later than VC6
as WIN32. [ruby-core:16984]
Wed May 28 17:54:29 2008 Akinori MUSHA <knu@iDaemons.org>
* string.c (rb_str_start_with): Remove an unused variable.
(rb_str_upto_m): Fix a prototype.
Wed May 28 17:48:28 2008 Akinori MUSHA <knu@iDaemons.org>
* range.c (range_step): Fix brokenness when a non-integer numeric
value is specified as step. [rubyspec]
(range_step): Make use of String#step internally if a string (or
string-alike) range is given.
* string.c (rb_str_upto_m, Init_String): Add an optional second
argument to specify if the last value should be included.
Wed May 28 16:53:39 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_slice_bang): Call rb_ary_modify_check() at the
beginning. [rubyspec]
Wed May 28 16:12:44 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
Set the HTTP status code to 302 if a Location header field is
present and the status code is not valid as a client
redirection. cf. RFC 3875 6.2.3, 6.2.4.
Wed May 28 15:18:16 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/singleton.rb (SingletonClassMethods): _load should be public.
Wed May 28 12:52:41 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
private methods too. [ruby-dev:34671]
* object.c (convert_type): ditto.
Tue May 27 23:26:49 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* error.c (rb_bug): description from rb_bug() should include
patchlevel. [ruby-dev:34826]
Tue May 27 20:19:22 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_slice_bang): Return an empty array instead of
nil when pos is valid and len is adjusted from a valid value to
zero; caught by RubySpec.
Tue May 27 19:45:20 2008 Akinori MUSHA <knu@iDaemons.org>
* numeric.c (flo_divmod): Revert the behavior change; do not
suppress an exception when div is NaN or Inf. [ruby-dev:34857]
Tue May 27 19:24:40 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c (enum_to_a): Pass arguments through to #each().
(enum_sort): Follow the enum_to_a signature change.
(enum_reverse_each): Add #reverse_each().
Tue May 27 18:54:02 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/stringio/stringio.c (strio_each_char, Init_stringio): Add
StringIO#{each_char,chars}.
Tue May 27 17:59:34 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/stringio/stringio.c (strio_each): Return an enumerator if no
block is given.
(strio_each_byte): Return an enumerator if no block is given,
and return self if one is given as the rdoc says.
* io.c (rb_io_each_byte): Fix rdoc. IO#each_byte returns self,
not nil.
Tue May 27 16:02:58 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_mod_module_exec, Init_eval): Add
Module#{module_exec,class_exec}.
Tue May 27 15:36:37 2008 Akinori MUSHA <knu@iDaemons.org>
* io.c (rb_io_each_char, argf_each_char, Init_IO):
Add {IO#,ARGF.}{each_char,chars}.
Tue May 27 13:46:52 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/stringio/stringio.c (Init_stringio): Define
StringIO#{getbyte,readbyte}.
Tue May 27 13:38:51 2008 Akinori MUSHA <knu@iDaemons.org>
* io.c (Init_IO): Define {IO#,ARGF.}{getbyte,readbyte}.
Tue May 27 13:26:15 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/stringio/stringio.c (Init_stringio): Define #bytes and
#lines.
Tue May 27 13:20:35 2008 Akinori MUSHA <knu@iDaemons.org>
* io.c: (rb_io_lines, rb_io_bytes, Init_IO): Define
IO#{lines,bytes} and ARGF.{lines,bytes}.
Tue May 27 12:13:17 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (BUFCHECK): wrong condition. [ruby-core:16921]
* file.c (file_expand_buf): shouldn't use buflen for length of string.
Mon May 26 18:24:48 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (BUFCHECK): no resize if enough room.
* file.c (file_expand_path): use BUFCHECK.
Mon May 26 16:46:19 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (ntfs_tail): filename which starts with '.' is valid.
* file.c (file_expand_path): cygwin symlink support.
Mon May 26 12:16:43 2008 Akinori MUSHA <knu@iDaemons.org>
* .: Release as Ruby 1.8.7-preview4.
Mon May 26 12:12:26 2008 Akinori MUSHA <knu@iDaemons.org>
* marshal.c (dump_ensure, load_ensure): should return values.
* eval.c (yield_under, yield_under_i, yield_args_under_i)
(specific_eval, rb_obj_instance_exec, Init_eval): Implement
Object#instance_exec(), a 1.9 feature.
Mon May 26 11:53:21 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a
block to a Proc. [ruby-dev:23533]; by nobu; backported from
1.9. This implementation in current shape is known to be
buggy/broken, especially with nested block invocation. Take
this as an experimental feature.
* parse.y (block_par, block_var): ditto.
Mon May 26 08:00:52 2008 Akinori MUSHA <knu@iDaemons.org>
* marshal.c (r_object0, Init_marshal): Fix the garbled s_call
definition; fixes [ruby-dev:34843].
Mon May 26 03:16:20 2008 Akinori MUSHA <knu@iDaemons.org>
* hash.c (rb_hash_default): Fix rdoc.
(rb_hash_each, env_each_value, env_each_pair): Return an
enumerator if no block is given.
(rb_hash_update): Update rdoc.
(envix): Conditionalize the definition itself.
(rb_f_getenv, env_fetch, env_keys, env_values, env_values_at)
(env_select, env_inspect, env_to_a, env_empty_p, env_has_key)
(env_has_value, env_index, env_indexes, env_to_hash, env_shift)
(env_update): Require secure level 4.
(env_each_value, env_each_i): Delay variable initialization.
(env_each_key, env_each_value, env_reject_bang)
(env_clear, env_replace): Omit duplicated secure level check.
(env_has_value): Do to_str conversion.
Sun May 25 19:48:12 2008 Akinori MUSHA <knu@iDaemons.org>
* hash.c (env_delete_if): Return an enumerator if no block is
given.
(env_each_key): Delay a variable initialization after
RETURN_ENUMERATOR().
Sun May 25 05:07:19 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_slice_bang): Be consistent with Array#slice()
and String#slice!(). Just return nil when a negative length or
out of boundary index is given instead of raising an exception
via internal functions.
(rb_ary_slice_bang): should not use rb_ary_subseq() which shares
internal pointer. splice modifies the receiver right after
subseq. [ruby-dev:34005]
(rb_ary_slice_bang): should adjust length before making
sub-array.
* enumerator.c (Init_Enumerator): Override
Enumerable::Enumerator#each_with_index with #with_index.
Sun May 25 03:13:09 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (Init_Thread): Initialize recursive_key.
Sun May 25 02:45:49 2008 Akinori MUSHA <knu@iDaemons.org>
* error.c (syserr_eqq): Use en.
Sat May 24 22:32:49 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_cstr_to_dbl): should clear errno before calling
strtod(3). [ruby-dev:34834]
Sat May 24 22:27:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (marshal_load): should initialize arg.data used for
reentrant check. [ruby-dev:34837]
Sat May 24 00:34:59 2008 Tanaka Akira <akr@fsij.org>
* lib/rational.rb (Rational#to_i): fix rdoc. Rational(-7,4).to_i
should be -1.
Fri May 23 20:22:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (reentrant_check): check reentrance via callcc.
[ruby-dev:34802]
Fri May 23 16:46:28 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c (proc_call): Remove an unused static function.
Fri May 23 13:46:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (cflags): commit miss.
Fri May 23 09:52:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
[ruby-core:16642]
* ext/extmk.rb: load purelib.rb only when not cross compiling.
Fri May 23 08:47:02 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* error.c (syserr_eqq): === should be able to handle delegated
objects as well.
Fri May 23 04:22:19 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: fix memory leak.
* ext/tk/lib/tk.rb: avoid trouble when finalize TclTkIp.
* ext/tk/lib/tk.rb, ext/tk/lib/tk/*: help to fix troubles when
use Ttk widgets on old Tk scripts.
* ext/tk/sample/*: update and add demo scripts. some of them are
introduction about new features of Tcl/Tk8.5.
Fri May 23 03:48:10 2008 Akinori MUSHA <knu@iDaemons.org>
* class.c (clone_method): Just use ruby_cref as cref.
Fri May 23 01:03:23 2008 Akinori MUSHA <knu@iDaemons.org>
* class.c (rb_singleton_class_clone): Pass Qnil, not 0.
Fri May 23 00:51:48 2008 Akinori MUSHA <knu@iDaemons.org>
* class.c (clone_method): Totally revamp the previous fix which
was incorrect.
(rb_mod_init_copy): Ditto.
(singleton_class_clone_int): Ditto.
Fri May 23 00:48:10 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_copy_node_scope), node.h: Rename from copy_node_scope
and export.
Thu May 22 21:24:15 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (top_local_setup): fixed memory leak bug based on a
patch from Roger Pack <rogerpack2005 at gmail.com> in
[ruby-core:16610].
Thu May 22 14:20:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (flatten): check if reentered. [ruby-dev:34798]
Thu May 22 08:28:49 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (flatten): free memo hash table before raising exception.
[ruby-dev:34789]
Thu May 22 06:30:10 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* array.c (flatten): fix memory leak.
Thu May 22 05:45:30 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* proc.c (proc_dup): should copy safe_level from src proc
properly. a patch from Keita Yamaguchi
<keita.yamaguchi at gmail.com>
Wed May 21 23:31:44 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_get_method_body, rb_alias, rb_eval): should not cache
uninitialized value, since search_method doesn't set origin if the
method wasn't found.
* eval.c (search_method, remove_method, error_print, rb_alias)
(rb_eval, rb_rescue2, search_required, Init_eval, rb_thread_create),
gc.c (rb_source_filename, Init_stack), io.c (rb_io_getline),
parse.y (rb_id2name, rb_parser_free): suppress warnings.
Wed May 21 12:34:51 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_hash_delete): rdoc fix based on a patch from Gaston Ramos
<ramos.gaston AT gmail.com>. [ruby-core:16825]
Tue May 20 13:15:46 2008 Akinori MUSHA <knu@iDaemons.org>
* file.c (lchmod_internal): Remove a compiler warning.
Mon May 19 18:22:35 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
of md; pointed out by Takahiro Kambe <taca at back-street.net>
in [ruby-dev:34748].
Mon May 19 14:20:13 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* sprintf.c (rb_f_sprintf): fixed SEGV on win32 with "% 0e" % 1.0/0.0.
Mon May 19 13:29:58 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* process.c (rb_f_system): set last_status when status == -1 because
there is no path to set it on win32. this patch is derived from
[ruby-core:16787], submitted by Luis Lavena <luislavena at gmail.com>
Mon May 19 13:01:05 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk ({MSPEC,RUBYSPEC}_GIT_URL): moved from Makefine.in.
* {win32,bcc32}/Makefile.sub (update-rubyspec): added.
Mon May 19 11:53:45 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
prototype change in openssl bundled with newer OpenBSD.
a patch from Takahiro Kambe <taca at back-street.net> in
[ruby-dev:34691].
Mon May 19 06:36:37 2008 Akinori MUSHA <knu@iDaemons.org>
* .: Release as Ruby 1.8.7-preview3.
Sun May 18 22:26:51 2008 GOTOU Yuuzou <gotoyuzo@notwork.org>
* lib/webrick/httpservlet/filehandler.rb: should normalize path
name in path_info to prevent script disclosure vulnerability on
DOSISH filesystems. (fix: CVE-2008-1891)
Note: NTFS/FAT filesystem should not be published by the platforms
other than Windows. Pathname interpretation (including short
filename) is less than perfect.
* lib/webrick/httpservlet/abstract.rb
(WEBrick::HTTPServlet::AbstracServlet#redirect_to_directory_uri):
should escape the value of Location: header.
* lib/webrick/httpservlet/cgi_runner.rb: accept interpreter
command line arguments.
Sat May 17 23:53:57 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_expand_path): fix for short file name on Cygwin.
Sat May 17 11:29:11 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_extname): first dot is not an extension name.
Sat May 17 10:18:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_reg_search): need to free allocated buffer in re_register.
Fri May 16 17:01:44 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (test-rubyspec): added.
Fri May 16 16:22:40 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/tcltklib.c: sometimes freeze when receive Interrupt signal.
Fri May 16 14:54:56 2008 Tanaka Akira <akr@fsij.org>
* Makefile.in (update-rubyspec): move rubyspec to srcdir.
(test-rubyspec): ditto.
Fri May 16 14:25:22 2008 Tanaka Akira <akr@fsij.org>
* Makefile.in (test-rubyspec): use RUNRUBY. suggested by nobu.
Fri May 16 13:01:43 2008 Tanaka Akira <akr@fsij.org>
* Makefile.in (update-rubyspec): new target to download rubyspec.
(test-rubyspec): new target to run rubyspec. this doesn't work
before install.
Fri May 16 08:15:52 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk.rb: fix memory (object) leak bug.
* ext/tk/sample/demos-jp/aniwave.rb, ext/tk/sample/demos-en/aniwave.rb:
bug fix.
Thu May 15 17:00:22 2008 Akinori MUSHA <knu@iDaemons.org>
* string.c (Init_String): Define #bytesize as an alias for #size
for compatibility with 1.9.
Thu May 15 15:33:59 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (file_expand_path): support for alternative data stream
and ignored trailing garbages of NTFS.
* file.c (rb_file_s_basename): ditto.
* file.c (rb_file_s_extname): ditto.
Wed May 14 19:24:59 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_count): Override Enumerable#count for better
performance.
(rb_ary_nitems): Undo the backport. Use #count {} instead.
* enumerator.c (enumerator_iter_i): Remove an unused function.
(enumerator_with_index, enumerator_each): Remove unused
variables.
Wed May 14 17:15:11 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/tk/tkutil/extronf.rb: check stdndup() because it's not standard
function of C.
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): use malloc() and
strncpy() instead of strndup() if not available.
Wed May 14 09:52:02 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/tkutil/tkutil.c: improve handling callback-subst-keys.
Now, support longnam-keys (e.g. '%CTT' on tkdnd-2.0; however, still
not support tkdnd-2.0 on tkextlib), and symbols of parameters (e.g.
:widget=>'%W', :keycode=>'%k', '%x'=>:x, '%X'=>:root_x, and so on;
those are attributes of event object). It means that Ruby/Tk accepts
not only "widget.bind(ev, '%W', '%k', ...){|w, k, ...| ... }", but
also "widget.bind(ev, :widget, :keycode, ...){|w, k, ...| ... }".
It is potentially incompatible, when user passes symbols to the
arguments of the callback block (the block receives the symbols as
strings). I think that is very rare case (probably, used by Ruby/Tk
experts only). When causes such trouble, please give strings instead
of such symbol parameters (e.g. call Symbol#to_s method).
* ext/tk/lib/tk/event.rb, ext/tk/lib/tk/validation.rb,
ext/tk/lib/tkextlib/blt/treeview.rb,
ext/tk/lib/tkextlib/winico/winico.rb: ditto.
* ext/tk/tkutil/tkutil.c: strings are available on subst_tables on
TkUtil::CallbackSubst class (it is useful on Ruby 1.9).
* ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tkextlib/iwidgets/hierarchy.rb,
ext/tk/lib/tkextlib/iwidgets/spinner.rb,
ext/tk/lib/tkextlib/iwidgets/entryfield.rb,
ext/tk/lib/tkextlib/iwidgets/calendar.rb,
ext/tk/lib/tkextlib/blt/dragdrop.rb,
ext/tk/lib/tkextlib/tkDND/tkdnd.rb,
ext/tk/lib/tkextlib/treectrl/tktreectrl.rb,
ext/tk/lib/tkextlib/tktable/tktable.rb: disable code piece became
unnecessary by reason of the changes of ext/tk/tkutil/tkutil.c.
Tue May 13 15:10:50 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c: Update rdoc.
(enumerator_initialize): Discourage the use.
(enum_each_slice, enum_each_cons, enumerator_each)
(enumerator_with_index): Add a note about a call without a block.
* NEWS: Intentionally omit enum_slice and enum_cons, which are
removed in 1.9.
Tue May 13 07:56:36 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_cat): fixed buffer overrun reported by
Christopher Thompson <cthompson at nexopia.com> in [ruby-core:16746]
Mon May 12 13:57:19 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (is_defined): add NODE_OP_ASGN_{OR,AND}. "defined?(a||=1)"
should not operate assignment. [ruby-dev:34645]
Mon May 12 12:59:23 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/wm.rb: Wm#overrideredirect overwrites arguemnt to
an invalid value.
* ext/tk/sample/ttk_wrapper.rb: support "if __FILE__ == $0" idiom.
Mon May 12 12:36:55 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_select): backport from trunk.
[ruby-talk:300743]
Mon May 12 12:33:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (RUBYLIB, RUBYOPT): clear.
Mon May 12 10:41:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/delegate.rb (SimpleDelegator::dup): removed needless argument.
[ruby-list:44910]
* lib/delegate.rb (clone, dup): keep relationship with the target
object.
Sun May 11 23:19:39 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enum.c (all_iter_i, any_iter_i): reduced duplicated code.
Sun May 11 17:57:36 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (MINIRUBY): should not include extension library path.
Sun May 11 10:36:10 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* eval.c (method_name, method_owner): New methods; backported
from 1.9. (UnboundMethod#name, UnboundMethod#owner)
Sun May 11 02:48:13 2008 <nagai@orca16.orcabay.ddo.jp>
* ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: fail to do pack/grid
without options.
* ext/tk/lib/tk.rb: add TkWindow#grid_anchor, grid_column, grid_row.
Sat May 10 18:19:16 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_each_line): RDoc updated. [ruby-dev:34586]
Sat May 10 13:17:56 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: increase supported
parameter patterns of configure method.
Sat May 10 09:16:13 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* util.c (ruby_strtod): backported from 1.9. a patch from Satoshi
Nakagawa <psychs at limechat.net> in [ruby-dev:34625].
fixed: [ruby-dev:34623]
Fri May 9 23:33:25 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
pass the given block to methods of Tk::Wm module.
* ext/tk/lib/tk/grid.rb: lack of module-method definitions.
* ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.
* ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8)
characters for headings.
* ext/tk/tcltklib.c: maybe a little more stable about @encoding value
of TclTkIp object.
Wed May 7 08:46:44 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* struct.c (rb_struct_s_def): to_str should be called only once.
[ruby-core:16647]
Wed May 7 00:54:25 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/zlib/zlib.c (gzreader_gets): may cause infinite loop.
a patch from Kouya <kouyataifu4 at gmail.com> in
[ruby-reference-manual:762].
Sun May 4 09:35:51 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* sample/erb/erb4html.rb (ERB4Html) : add example of ERB#set_eoutvar.
ERB4Html is an auto-quote ERB.
Sat May 3 22:52:48 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
ext/tk/sample/ttk_wrapper.rb: improve treating and control themes.
add Tk::Tile.themes and Tk::Tile.set_theme(theme).
Fri May 2 14:52:33 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* misc/ruby-mode.el: move fontifying code from hook. a patch from
Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
Fri May 2 13:47:51 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (match_select): restore previous behavior of MatchData#select.
RDoc updated as well, mentioning the plan to remove this method
in the future. [ruby-dev:34556]
Fri May 2 13:04:04 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/dbm/dbm.c (Init_dbm): defines DBM::VERSION even when
DB_VERSION_STRING is not available. [ruby-dev:34569]
Thu May 1 23:57:06 2008 James Edward Gray II <jeg2@ruby-lang.org>
Merged 16257 from trunk.
* lib/net/telnet.rb: This patch from Brian Candler adds a FailEOF mode which
can be activated to have net/telnet raise EOFError exceptions when the
remote connection is closed. The default behavior remains unchanged though.
Thu May 1 23:43:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* range.c (range_step): check if step can be converted to an integer.
[ruby-dev:34558]
* range.c (range_step): allow float step bigger than zero but less
than one. [ruby-dev:34557]
Wed Apr 30 20:22:40 2008 James Edward Gray II <jeg2@ruby-lang.org>
Merged 16241 from trunk.
* lib/net/telnet.rb: Fixing a bug where line endings would not be properly
escaped when the two character ending was broken up into separate TCP
packets. Issue reported and patched by Brian Candler.
Wed Apr 30 17:47:21 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* re.c (rb_reg_search): use local variable. a patch from wanabe
<s.wanabe AT gmail.com> in [ruby-dev:34537]. [ruby-dev:34492]
Sat Apr 26 19:40:34 2008 Guy Decoux <decoux@moulon.inra.fr>
* class.c (struct clone_method_data): Add cref.
(clone_method): Properly handle NODE_BMETHOD and NODE_DMETHOD.
(rb_singleton_class_clone, singleton_class_clone_int): Set a
proper value to klass and propagate cref. [ruby-core:16238]
* eval.c (rb_block_dup, rb_method_dup), intern.h: Add duplicator
methods for use from class.c#clone_method().
Fri Apr 25 15:46:37 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk.rb, ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/scale.rb:
improve unknonw-option check when create a widget.
* ext/tk/lib/tkextlib/blt/unix_dnd.rb, ext/tk/lib/tkextlib/blt/ted.rb,
ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix on 'cget'.
* ext/tk/lib/tk/menuspec.rb: option check will fail when
TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__ is true.
* ext/tk/lib/tk/palette.rb: bug fix.
Fri Apr 25 12:37:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (flatten): returns an instance of same class.
[ruby-core:16554]
Thu Apr 24 23:47:50 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* lib/net/pop.rb: backported from 1.9. bug#19003
* ext/openssl/lib/openssl/ssl.rb: set_params; backported from 1.9.
bug#19552, [ruby-dev:34402]
* ext/openssl/ossl_ssl.c: ditto.
* test/openssl/test_ssl.rb: ditto.
Thu Apr 24 17:06:34 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (THREAD_SAVE_CONTEXT): remove unnecessary
FLUSH_REGISTER_WINDOWS before calling setjmp(). [ruby-core:16285]
Thu Apr 24 14:15:11 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dln.c (dln_find_1): prior files with extensions to files sans
extensions. [ruby-core:16517]
Wed Apr 23 15:39:31 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (bind_eval): Add Binding#eval, a shorthand method for
eval(str, binding, ..); backported from 1.9.
Wed Apr 23 15:28:52 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
notice moved from comment to assertion message. [ruby-dev:29127]
Wed Apr 23 14:00:05 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/mkmf.rb (create_makefile): Add a missing dependency on the
target directory for each .rb file. This will hopefully fix
parallel make (-jN). Tested on FreeBSD.
Wed Apr 23 11:49:54 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
an enumerator if no block is given.
Wed Apr 23 00:42:49 2008 Tanaka Akira <akr@fsij.org>
* eval.c (error_print): show full stack grace except SystemStackError.
backport from 1.9. [ruby-dev:31014]
Wed Apr 23 00:18:45 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
tests of Symbol#to_proc.
Tue Apr 22 22:43:05 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_proc_new, YIELD_FUNC_LAMBDA): Add a new nd_state
YIELD_FUNC_LAMBDA which avoids automatic `avalue' conversion for
arguments. This fixes a bug where [1,[2,3]].map(&:object_id)
fails.
* intern.h, object.c: Hide rb_proc_new() from intern.h. It should
not be considered an official API function yet.
Tue Apr 22 21:24:32 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_proc_new): Turn the BLOCK_LAMBDA flag on.
* object.c (sym_to_proc), test/ruby/test_symbol.rb: Add back
Symbol#to_proc, now that it passes the tests.
Tue Apr 22 19:35:03 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c (enumerator_initialize): Remove an undocumented
feature (passing a block to the constructor) that's broken.
This is not what I intended.
Tue Apr 22 17:49:46 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (rb_f_sprintf): should protect temporary string from
GC. [ruby-dev:34480]
Tue Apr 22 17:12:05 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_search): string might be NULL. [ruby-core:16478]
Tue Apr 22 16:44:00 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* object.c (rb_obj_tap): Correct documentation; pointed out by
okkez in [ruby-dev:34472].
Tue Apr 22 10:05:51 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (eaccess): workaround for recent msvcrt's behavior.
[ruby-core:16460]
Mon Apr 21 16:06:47 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enumerator_init): preserve the method name in ID.
* enumerator.c (enumerator_each): need not to call rb_to_id().
* enumerator.c (enumerator_with_index): ditto.
Mon Apr 21 17:19:52 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_f_method_name): New gloval function: __method__;
backported from matzruby / 1.9.
* eval.c (rb_frame_this_func), intern.h: New internal function.
* intern.h (RETURN_ENUMERATOR): Use rb_frame_this_func() instead
of rb_frame_last_func(), to accommodate the behavior to that of
1.9.
Mon Apr 21 15:54:48 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/tempfile.rb (Tempfile::_close): check @data before modifying
it; backported from 1.9. [ruby-dev:34094]
* lib/tempfile.rb (Tempfile::close): clear @data and @tmpname.
Mon Apr 21 10:17:17 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* time.c: should include <errno.h> to refer errno.
Mon Apr 21 10:02:43 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* hash.c (recursive_hash): prototype.
Mon Apr 21 10:00:51 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* time.c (rb_strftime): check errno to detect strftime(3)'s error.
this is workaround for recent version of MSVCRT.
[ruby-dev:34456]
Sun Apr 20 21:10:04 2008 Akinori MUSHA <knu@iDaemons.org>
* .: Release as Ruby 1.8.7-preview2.
Sun Apr 20 21:02:06 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c: Resolve the method every time an enumeration
method is run, not once when the enumerator is initialized as it
was before, so that method_missing() and method (re)definition
afterwards are both in effect; pointed out in: [ruby-core:16441]
Sun Apr 20 17:59:25 2008 Akinori MUSHA <knu@iDaemons.org>
* object.c, NEWS, test/ruby/test_symbol.rb: Revert Symbol#to_proc
since it does not pass the tests.
Sun Apr 20 14:29:35 2008 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_ssl.c: initialize session class.
Sat Apr 19 20:54:42 2008 akira yamada <akira@arika.org>
* lib/uri/ftp.rb, lib/uri/generic.rb, test/uri/test_common.rb,
test/uri/test_ftp.rb, test/uri/test_generic.rb: backported from 1.9.
[ruby-dev:31318]
Sat Apr 19 20:35:02 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/yaml/baseemitter.rb, lib/yaml/encoding.rb: performance
tuning around String#gsub.
* lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
documented.
* lib/yaml/store.rb (YAML::load): modified to support empty
database.
* lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?):
add a method to support faster PStore.
Sat Apr 19 20:16:52 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit;
merged from 1.9.
* lib/yaml.rb (quick_emit): use combination of object_id and hash to
identify repeated object references, since GC will reuse memory of
objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698];
merged from 1.9.
Sat Apr 19 20:05:39 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_equal, rb_ary_eql, rb_ary_hash, rb_ary_cmp):
Make Array#eql?, #hash, #== and #<=> use rb_exec_recursive() and
handle recursive data properly.
* hash.c (hash_equal, rb_hash_hash): Make Hash#eql?, #hash and #==
use rb_exec_recursive() and handle recursive data properly.
Sat Apr 19 19:26:09 2008 Akinori MUSHA <knu@iDaemons.org>
* intern.h, eval.c (rb_exec_recursive): New internal function to
help perform recursive operation; backported from 1.9.
Sat Apr 19 18:42:04 2008 Akinori MUSHA <knu@iDaemons.org>
* intern.h, hash.c (rb_hash_lookup): New internal function to
check if a key exists in a hash, ignoring #default; backported
from 1.9.
Fri Apr 18 18:56:57 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/syck/rubyext.c (syck_genericresolver_node_import): should
not set instance variable "@kind" before initializing it.
[ruby-dev:32677]
* ext/syck/rubyext.c (syck_resolver_initialize,
syck_resolver_detect_implicit, syck_emitter_emit): remove unused
variables.
Fri Apr 18 18:54:57 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/syck/rubyext.c: Node#value defined twice.
* lib/yaml/: several method redefinitions causing warnings.
Fri Apr 18 16:36:16 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/rexml/node.rb (REXML::Node::indent): should initialize rv
variable. a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
[ruby-dev:32783].
Fri Apr 18 16:01:37 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/rexml: Merge fixes since 1.8.6 made solely on the ruby_1_8_6
branch.
Wed Apr 16 06:11:49 2008 Akinori MUSHA <knu@iDaemons.org>
* test/ruby/test_settracefunc.rb (TestSetTraceFunc#test_event):
Fix tests to reflect the following changes: r15833, r15759.
Wed Apr 16 05:03:48 2008 Akinori MUSHA <knu@iDaemons.org>
* .: Release as Ruby 1.8.7-preview1.
Wed Apr 16 02:09:14 2008 Kouhei Sutou <kou@cozmixng.org>
* lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
* test/xmlrpc/test_cookie.rb: add a test for the above fix.
Tue Apr 15 23:48:28 2008 Akinori MUSHA <knu@iDaemons.org>
* version.h: Branch off ruby_1_8_7 from ruby_1_8 in preparation
for the forthcoming 1.8.7 release.
Tue Apr 15 23:40:39 2008 Akinori MUSHA <knu@iDaemons.org>
* ext/syck/rubyext.c (rb_syck_mktime): Avoid buffer overflow.
Tue Apr 15 20:32:03 2008 Tanaka Akira <akr@fsij.org>
* re.c (match_inspect): backported from 1.9.
Tue Apr 15 19:03:28 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* eval.c (method_receiver, method_name, method_owner): New
methods; backported from 1.9. bug#19007
Tue Apr 15 18:39:14 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
scheme; backported from 1.9. bug#19015, [ruby-dev:31896]
Tue Apr 15 17:45:43 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* lib/net/smtp.rb: backported from 1.9. bug#19003
Tue Apr 15 17:06:12 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
Tue Apr 15 16:58:55 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/menuspec.rb: option check will fail when
TkConfigMethod.__IGNORE_UNKNOWN_CONFIGURE_OPTION__ is true.
* ext/tk/lib/tk/palette.rb: bug fix.
Tue Apr 15 16:47:48 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* signal.c, gc.c: New methods: GC.stress, GC.stress=;
backported from 1.9. a patch from Tadashi Saito
in [ruby-dev:34394] and bug#19000
Tue Apr 15 12:35:44 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* rubyio.h (rb_io_t): renamed from OpenFile.
* ruby.h (struct RHash), file.c, gc.c, io.c, ext/dl/dl.c,
ext/io/wait/wait.c, ext/pty/pty.c, ext/readline/readline.c,
ext/socket/socket.c: ditto.
* win32/win32.h: removed workaround for OpenFile.
Tue Apr 15 00:15:29 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/text.rb: typo. call a wrong method.
* ext/tk/lib/tk/itemconfig.rb: ditto.
* ext/tk/sample/ttk_wrapper.rb: bug fix.
* ext/tk/sample/tktextio.rb: add binding for 'Ctrl-u' at console mode.
* ext/tk/lib/tk.rb, ext/tk/lib/tk/itemfont.rb, ext/tk/lib/font.rb:
support __IGNORE_UNKNOWN_CONFIGURE_OPTION__ about font options.
* ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb,
ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb,
ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: bug fix.
* ext/tk/lib/tkextlib/tile/tpaned.rb: improve TPaned#add.
* ext/tk/lib/tk/timer.rb: add TkTimer#at_end(proc) to register the
procedure which called at end of the timer.
Mon Apr 14 19:54:21 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_flatten, rb_ary_flatten_bang): Take an optional
argument that determines the level of recursion to flatten;
backported from 1.9.
* array.c (rb_ary_shuffle_bang, rb_ary_shuffle, rb_ary_choice,
rb_ary_cycle, rb_ary_permutation, rb_ary_combination,
rb_ary_product, rb_ary_take, rb_ary_take_while, rb_ary_drop,
rb_ary_drop_while): New methods: Array#shuffle, #shuffle!,
#choice, #cycle, #permutation, #combination, #product, #take,
#take_while, #drop, #drop_while; backported from 1.9.
Mon Apr 14 19:52:35 2008 Akinori MUSHA <knu@iDaemons.org>
* ruby.h: New macro: RB_GC_GUARD().
Mon Apr 14 19:49:35 2008 Akinori MUSHA <knu@iDaemons.org>
* random.c (rb_genrand_int32, rb_genrand_real), intern.h: Export.
* string.c (rb_str_tmp_new), intern.h: New function.
Mon Apr 14 19:18:55 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* enum.c (inject_i, inject_op_i): prototype.
Mon Apr 14 19:10:47 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c New methods: Enumerable#take, #take_while, #drop and
#drop_while; backported from 1.9.
Mon Apr 14 18:50:15 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c: New methods: Enumerable#one?, #none?, #minmax, #min_by,
#max_by, #minmax_by and #cycle; backported from 1.9.
* enum.c (enum_find_index): Add support for find_index(obj);
[ruby-dev:34313]; backported from 1.9.
* enum.c (enum_inject): Add support for Enumerable#inject(:binop);
backported from 1.9.
* enum.c: Alias Enumerable#reject to #inject; backported from 1.9.
Mon Apr 14 18:14:19 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c (enum_find, enum_reject): Return an enumerator if no
block is given; backported from 1.9.
* io.c (rb_io_each_line, rb_io_each_byte, rb_io_s_foreach,
argf_each_line, argf_each_byte): Ditto.
* string.c (str_gsub): Ditto.
Mon Apr 14 18:10:05 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* enum.c (find_index_i, find_index_iter_i): add prototype for VC.
Mon Apr 14 17:55:30 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_collect_bang, rb_ary_select): Return an
enumerator if no block is given; backported from 1.9.
* dir.c (dir_each, dir_foreach): Ditto.
* enum.c (enum_partition, enum_sort_by): Ditto.
* gc.c (os_each_obj): Ditto.
* hash.c (rb_hash_delete_if, rb_hash_reject_bang, rb_hash_select,
rb_hash_each_value, rb_hash_each_key, rb_hash_each_pair,
env_each_key, env_each_value, env_each, env_each_pair,
env_reject_bang, env_delete_if, env_select): Ditto.
* numeric.c (num_step, int_upto, int_downto, int_dotimes): Ditto.
Mon Apr 14 16:42:53 2008 Akinori MUSHA <knu@iDaemons.org>
* ruby.h (rb_block_call_func): Fix prototype.
* enumerator.c (enumerator_iter_i, enumerator_each_i): Ditto.
Mon Apr 14 15:49:05 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c (enum_count, enum_find_index): New methods:
Enumerable#count and #find_index; backported from 1.9.
Mon Apr 14 14:16:08 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* enumerator.c (enumerator_mark, enumerator_iter_i, enumerator_each_i,
enumerator_allocate): add prototype.
* enumerator.c (enumerator_each_i): declare unused two arguments.
Mon Apr 14 13:58:32 2008 Akinori MUSHA <knu@iDaemons.org>
* string.c (rb_str_each_char): New methods: String#chars and
#each_char; backported from 1.9.
Mon Apr 14 13:42:20 2008 Akinori MUSHA <knu@iDaemons.org>
* string.c (rb_str_each_line, rb_str_each_byte): Reflect
enumerator integration. #lines and #bytes are now aliases to
#each_line and #each_byte, respectively.
Mon Apr 14 13:19:36 2008 Akinori MUSHA <knu@iDaemons.org>
* range.c (range_each, range_step): Return an enumerator if no
block is given; backported from 1.9.
* struct.c (rb_struct_each, rb_struct_each_pair): Ditto.
Mon Apr 14 13:07:59 2008 Akinori MUSHA <knu@iDaemons.org>
* string.c (rb_str_partition, rb_str_rpartition,
rb_str_start_with, rb_str_end_with): New methods:
String#partition, #rpartition, #start_with? and #end_with?;
backported from 1.9. These methods are $KCODE aware unlike
#index, #rindex and #include?.
Sun Apr 13 15:55:52 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* object.c (sym_to_proc): new method Symbol#to_proc; backported
from 1.9. bug#19012
Fri Apr 11 19:14:30 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* object.c (rb_obj_tap): new method Object#tap; backported from
1.9. bug#19008
Fri Apr 11 18:58:09 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* process.c: new method Process.exec; backported from 1.9. bug#19006
Fri Apr 11 12:43:56 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb,
ext/tk/sample/tkextlib/tile/demo.rb: previous patch is not complete.
Fri Apr 11 10:22:54 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tkextlib/tile.rb:
__define_LoadImages_proc_for_compatibility__! do nothing when the
Tcl command exists.
* ext/tk/lib/tkextlib/tile/style.rb:
__define_wrapper_proc_for_compatibility__! do nothing when the Tcl
command exists.
* ext/tk/sample/tkextlib/tile/demo.rb: don't create 'step' theme if
it already exists.
Fri Apr 11 08:05:12 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (w_object): add volatile to avoid potential GC bug. a
patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
in [ruby-dev:34311].
Thu Apr 10 20:29:13 2008 Akinori MUSHA <knu@iDaemons.org>
* misc/rdebug.el, misc/README: Remove rdebug.el as per request
from the maintainer and mention the ruby-debug project at
RubyForge in README; bug#19043.
Thu Apr 10 20:08:37 2008 Akinori MUSHA <knu@iDaemons.org>
* enum.c (enum_first, enum_group_by): New methods:
Enumerable#first and #group_by; backported from 1.9.
Thu Apr 10 19:49:10 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c (rb_eStopIteration), eval.c (rb_f_loop), ruby.h:
Add a new exception class StopIteration, which breaks Kernel#loop
iteration when raised; backported from 1.9.
* enumerator.c (enumerator_next, enumerator_rewind): Implement
#next and #rewind using the "generator" library.
* lib/generator.rb: Implement Enumerable::Enumerator#next and
#rewind.
Thu Apr 10 19:29:48 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_first, rb_ary_last): Return a shared array when
possible.
* array.c (rb_ary_pop, rb_ary_pop_m, rb_ary_shift, rb_ary_shift_m):
Array#pop and Array#shift can take an optional argument
specifying the number of elements to remove and return;
backported from 1.9.
Thu Apr 10 14:00:44 2008 Tanaka Akira <akr@fsij.org>
* lib/resolv.rb (Resolv::DNS#each_address): backport from 1.9 for
CNAME. [ruby-dev:34200]
Thu Apr 10 01:42:25 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* enum.c (iterate_method): add prototype to avoid warning on VC++.
Wed Apr 9 23:12:41 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/tcltklib.c: SEGV when tcltk-stubs is enabled.
* ext/tk/tcltklib.c: avoid error on a shared object.
* ext/tk/extconf.rb: support --with-tcltkversion
* ext/tk/README.tcltklib: add document about --with-tcltkversion
* ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget,
ext/tk/sample/demos-jp/style.rb, ext/tk/sample/demos-en/style.rb,
ext/tk/sample/demos-jp/bind.rb, ext/tk/sample/demos-en/bind.rb:
bug fix.
Wed Apr 9 21:54:45 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_pop): Do not reallocate too often; backported
from 1.9.
Wed Apr 9 21:13:05 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_each, rb_ary_each_index, rb_ary_reverse_each,
rb_ary_reject, rb_ary_reject_bang): Array#each, #each_index,
#reverse_each, #reject, #reject! and #delete_if return an
enumerator if no block is given; backported from 1.9.
Wed Apr 9 20:47:16 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_index, rb_ary_index): Array#index and #rindex
can take a block instead of an argument; backported from 1.9.
Wed Apr 9 19:58:31 2008 Akinori MUSHA <knu@iDaemons.org>
* enumerator.c, inits.c (rb_call_inits), ruby.h, intern.h,
ext/enumerator, common.mk (OBJS, enumerator.$(OBJEXT)): Make the
enumerator module built-in.
* enumerator.c: New method: Enumerable::Enumerator#with_index.
* enum.c (enum_each_with_index): Enumerable#each_with_index now
returns an enumerator instead of raising an exception if no
block is given. Enumerable#enum_with_index, formerly defined in
the enumerator module, is kept as an alias to each_with_index
for backward compatibility.
Wed Apr 9 19:43:51 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_obj_method, rb_proc_call), intern.h: Export.
Tue Apr 8 11:11:28 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (EXEC_TAG): remove unnecessary FLUSH_REGISTER_WINDOWS for
better performance on SPARC. [ruby-core:16159]
Tue Apr 8 10:49:54 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_reg_quote): should always copy the quoting string.
[ruby-core:16235]
Mon Apr 7 21:35:08 2008 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_nitems): Backport Array#nitems with a block;
suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
[ruby-talk:134083].
Sun Apr 6 09:45:00 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (dir_tell): check if closed. [ruby-core:16223]
Sat Apr 5 10:05:00 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* object.c (rb_check_to_integer): backported for range_step.
Fri Apr 4 05:57:11 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
@n_bytes as well. [ruby-core:16144]
Fri Apr 4 02:17:06 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c (range_step): should not round step into integer if
begin and end are numeric. [ruby-core:15990]
Tue Apr 1 14:43:38 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: get rid of empty expansion.
* {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
Tue Apr 1 11:36:19 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: _setjmp is available but _longjmp is not on mingw.
Tue Apr 1 03:20:40 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_SETJMP, RUBY_LONGJMP, RUBY_JMP_BUF): prefers
_setjmp over setjmp and sigsetjmp. [ruby-core:16023]
__builtin_setjmp cannot handle a variable.
* configure.in (--with-setjmp-type): new option to override the
default rule in the above.
* eval_intern.h (ruby_setjmp, ruby_longjmp), gc.c (rb_setjmp),
vm_core.h (rb_jmpbuf_t): use RUBY_SETJMP, RUBY_LONGJMP and
RUBY_JMP_BUF.
Tue Apr 1 01:55:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/resolv.rb (Resolv::Config.default_config_hash): requires
win32/resolv to use Win32::Resolv. [ruby-dev:34138]
Mon Mar 31 14:51:11 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big_div): Bignum#div should return integer for
floating number operand.
Sun Mar 30 07:00:32 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/tk/tcltklib.c: rb_hash_lookup has not been backported yet.
Sat Mar 29 14:18:41 2008 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
* ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets'
instate/state/identify method to avoid the conflict with standard
widget options. Those methods are renamed to ttk_instate/ttk_state/
ttk_identify (tile_instate/tile_state/tile_identify are available
too). Although I don't recommend, if you realy need old methods,
please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before
"require 'tkextlib/tile'".
* ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
is obsolete. It outputs warning. To control default widget set,
use "Tk.default_widget_set = :Ttk".
* ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and
__set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defind
as module methods of TkConfigMethod. It may help users to wrap old
Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
Ttk widgets don't have some options of standard widgets which are
control the view of widgets. When set ignore-mode true, configure
method tries to ignoure such unknown options with no exception.
Of course, it may raise other troubles on the GUI design.
So, those are a little danger methods.
* ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__
method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method
are defind as module methods of TkItemConfigMethod as the same
purpose as TkConfigMethod's ones.
* ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for
wrapping old Ruby/Tk scripts (which use standard widgets) to use
Ttk (Tile) widgets as default.
* ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state
method instead of instate/state method.
* ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's
are replaced to "instance_exec(self)".
* ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not
a character code on Ruby1.9).
* ext/tk/lib/tk/variable.rb: support new style of operation argument
on Tcl/Tk's 'trace' command for variables.
* ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix
* ext/tk/sammple/demos-jp/textpeer.rb,
ext/tk/sammple/demos-en/textpeer.rb: new widget demo.
* ext/tk/tcltklib.c: decrase SEGV troubles (probably)
* ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9
* ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)
* ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command
to make Tcl/Tk theme sources (based on different version of Tile
extension) available.
(Tk::Tile::__define_LoadImages_proc_for_comaptibility__)
* ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
(Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets
as toplevel widgets.
* ext/tk/lib/tkextlib/tile/style.rb: ditto.
(Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)
* ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get
properties as a hash. metrics_hash method returns a boolean value
for 'fixed' option. But metrics method returns numeric value
(0 or 1) for 'fixed' option, because of backward compatibility.
* ext/tk/lib/tk/timer.rb: somtimes fail to set callback procedure.
* ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep
doesn't block the eventloop. It will be better to use the method
in event callbacks.
* ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.
Sat Mar 29 04:08:59 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (clone_method): should copy cref as well.
[ruby-core:15833]
Mon Mar 24 20:07:42 2008 Akinori MUSHA <knu@iDaemons.org>
* eval.c (rb_eval): Call trace hook for if expression after the
condition has been evaluated, not before; submitted by Rocky
Bernstein in #18722.
Mon Mar 24 19:44:53 2008 Akinori MUSHA <knu@iDaemons.org>
* parse.y (yycompile): Always prepare a new array for each file's
SCRIPT_LINES__ storage, instead of appending source lines every
time a file is re-loaded; submitted by Rocky Bernstein in
#18517.
Mon Mar 24 10:25:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: sitearch should use target_cpu. [ruby-core:15986]
Mon Mar 24 01:24:24 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/erb.rb (result): use proc instead of Thread. [ruby-dev:33692]
Fri Mar 21 21:26:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
[ruby-dev:29945], [ruby-dev:34095]
* lib/win32/registry.rb (Win32::Registry.expand_environ): try upcased
name too for cygwin. [ruby-dev:29945]
* lib/win32/resolv.rb (Win32::Resolv.get_hosts_path): use expand_path.
Fri Mar 21 21:10:00 2008 Akinori MUSHA <knu@iDaemons.org>
* lib/ipaddr.rb: Say that I am the current maintainer.
* lib/set.rb: Ditto.
* lib/shellwords.rb: Ditto.
* ext/syslog/syslog.txt: Ditto.
Fri Mar 21 09:24:28 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (open_for_install): write block result and rewrite only
if changed from existing file.
Wed Mar 19 21:01:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (dir_inspect, dir_path, dir_tell): check for frozen and closed
is not needed. [ruby-dev:32640]
Wed Mar 19 20:25:40 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (Init_Dir): define inspect method. [ruby-core:15960]
Wed Mar 19 14:59:12 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* misc/ruby-style.el (ruby-style-{case,label}-indent): fix for labels
inside blocks in switch and function top level.
Wed Mar 19 14:36:40 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_cstr_to_inum): treat successive underscores as
nondigit. [ruby-dev:34089]
Wed Mar 19 00:01:23 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/erb.rb (ERB::Compiler): Make some minor code optimization.
Mon Mar 17 17:11:13 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* misc/ruby-mode.el (ruby-mode): should use `run-mode-hooks' instead
of calling `run-hooks' directly to run the mode hook. patch from
Chiyuan Zhang <pluskid AT gmail.com> in [ruby-core:15915]
Mon Mar 17 16:41:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in: unset GREP_OPTIONS. [ruby-core:15918]
Fri Mar 14 16:59:23 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_LIB_PREFIX): fix for prefix.
Fri Mar 14 16:35:11 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::Cookie::initialize): performance patch from
Makoto Kuwata <kwa@kuwata-lab.com> in [ruby-dev:34048].
Fri Mar 14 15:49:05 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_LIB_PREFIX): use libdir.
Fri Mar 14 10:12:29 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_CHECK_VARTYPE): should not indent preprocessor
directives.
Thu Mar 13 00:37:20 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_call0): yields the last executed node line number at
return event. [ruby-core:15855]
Wed Mar 12 02:12:20 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* lib/delegate.rb: check $@ to avoid NoMethodError.
Tue Mar 11 19:48:09 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (fix_coerce): try conversion before type check.
[ruby-core:15838]
Tue Mar 11 17:03:23 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/delegate.rb (Delegator#initialize, DelegateClass): skip correct
backtrace. [ruby-dev:34019]
Tue Mar 11 16:43:53 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_cmdvector): terminate shrunken command line.
Tue Mar 11 12:39:03 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (clean-local): removes MINOBJS.
Sat Mar 8 18:50:57 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (isdirsep): backslash is valid path separator on cygwin too.
Fri Mar 7 19:56:10 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb: rdoc added. [ruby-Patches-9762]
Thu Mar 6 15:10:21 2008 NAKAMURA Usaku <usa@ruby-lang.org>
* {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
ruby$(EXEEXT).
suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
[ruby-dev:34000]
Thu Mar 6 12:15:06 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (opt_block_param): command can start just after block param
definition. [ruby-list:44479]
Thu Mar 6 00:34:11 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/erb.rb: update RDoc. Thanks Makoto Kuwata [ruby-dev:33702]
Mon Mar 3 23:28:34 2008 GOTOU Yuuzou <gotoyuzo@notwork.org>
* lib/webrick/httpservlet/filehandler.rb: should normalize path
separators in path_info to prevent directory traversal attacks
on DOSISH platforms.
reported by Digital Security Research Group [DSECRG-08-026].
* lib/webrick/httpservlet/filehandler.rb: pathnames which have
not to be published should be checked case-insensitively.
Mon Mar 3 16:14:24 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_any_hash): shrinks all results in Fixnum range.
[ruby-core:15713]
Sat Mar 1 02:35:08 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (big2str_find_n1): check integer overflow.
Tue Feb 26 16:06:00 2008 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_pkey_{ec,dh,dsa,rsa}.c: Remove useless warnings.
* ext/openssl/ossl_asn1.c: Simplify code.
* ext/openssl/ossl_ssl_session.c Fix compiler warnings.
Undefine #id if SSL_SESSION_get_id is not supported.
Tue Feb 26 15:43:42 2008 Tanaka Akira <akr@fsij.org>
* parse.y (tokadd_escape): refactored. [ruby-core:15657]
Mon Feb 25 17:30:29 2008 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
Commit patch #9280 from Akinori MUSHA.
Simplify the OpenSSL::Digest class and make use of the
existing Digest framework.
Enhance performance.
Mon Feb 25 13:40:03 2008 Tanaka Akira <akr@fsij.org>
* process.c (Init_process): share bignum objects for RLIM_INFINITY,
RLIM_SAVED_MAX and RLIM_SAVED_CUR if they are equal.
Sun Feb 24 23:29:48 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
intermediate files.
Sun Feb 24 03:52:58 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* util.c (valid_filename): use O_EXCL to get rid of clobbering
existing files in race conditions.
Fri Feb 22 19:50:19 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (BIGZEROP): fix for longer Bignum zeros. [ruby-Bugs-17454]
Fri Feb 22 16:09:53 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_lshift, rb_big_rshift, rb_big_aref): removed excess
arguments.
Thu Feb 21 00:01:34 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RPATHFLAG): -R option of HP-UX ld is not for runtime
load path. [ruby-list:44600]
Wed Feb 20 23:55:19 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_map_errno): exported.
Wed Feb 20 13:08:52 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (parse_args): added --dir-mode, --script-mode and
--cmd-type options. [ruby-dev:33816]
* instruby.rb (parse_args): added bin-arch and bin-comm to install
type, for compiled files and script files.
* instruby.rb (parse_args): deal with make style command line macros,
and count as long syle options if prefixed with INSTALL_.
* instruby.rb (makedirs): use $dir_mode. [ruby-dev:33805]
* instruby.rb (open_for_install): set file mode, which is now
permission mode instead of access mode.
* instruby.rb (bin-comm): installs scripts with replacing shebang
lines.
Tue Feb 19 18:34:32 2008 Tanaka Akira <akr@fsij.org>
* gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed. [ruby-dev:33857]
Tue Feb 19 14:27:32 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/readline/readline.c (readline_event): prevent polling. based on
a patch from error errorsson in [ruby-Bugs-17675].
Tue Feb 19 12:08:29 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (yycompile): clear ruby_eval_tree_begin if parse failed.
Mon Feb 18 16:23:45 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (yycompile): clear ruby_eval_tree_begin too before parse.
Mon Feb 18 10:17:42 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/pty/lib/expect.rb (IO#expect): check if peer is closed.
[ruby-Bugs-17940]
Fri Feb 15 20:37:06 2008 Tadayoshi Funaba <tadf@dotrb.org>
* lib/rational.rb (floor, ceil, truncate, round): do not use
definitions of Numeric.
* lib/rational.rb (to_i): should returns truncated self.
* lib/complex.rb (numerator): requires
Integer#{numerator,denominator}.
* lib/complex.rb (quo): do not use definition of Numeric.
* lib/complex.rb (div, divmod, floor, ceil, truncate, round):
undef'ed.
Fri Feb 15 15:23:12 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/iconv/iconv.c (iconv_convert): check upper bound. a patch from
Daniel Luz at [ruby-Bugs-17910].
Fri Feb 15 02:42:25 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (ftruncate): check if available.
* file.c (rb_file_truncate): check if ftruncate instead of truncate.
Fri Feb 15 02:40:54 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (sigsetmask): check when signal semantics is not POSIX.
* signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is
available.
Thu Feb 14 17:44:32 2008 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/dl/ptr.c (dlmem_each_i): typo fixed. a patch from IKOMA
Yoshiki <ikoma AT mb.i-chubu.ne.jp> in [ruby-dev:33776].
Thu Feb 14 16:02:51 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
Thu Feb 14 01:43:16 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/timeout.rb (Timeout::timeout): made sensitive to location on the
stack. [ruby-core:15458]
Thu Feb 14 00:49:53 2008 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (INSTRUBY_ARGS): pass mode to install. [ruby-dev:33766]
* instruby.rb (parse_args): added --data-mode and --prog-mode options.
Tue Feb 12 11:33:26 2008 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* test/erb/test_erb.rb(TestERBCore): import from erb-2.0.4.
* test/erb/hello.erb: ditto
Mon Feb 11 17:25:21 2008 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/rss.rb (RSS::VERSION), test/rss/test_version.rb, NEWS:
0.2.3 -> 0.2.4.
* lib/rss/maker.rb, lib/rss/maker/, test/rss/test_maker_2.0.rb:
fixed a bug that RSS::Maker.make("0.9")'s item doesn't make some
elements if description is missed.
Reported by Michael Auzenne. Thanks!!!
* lib/rss/maker/0.9.rb, test/rss/test_maker_0.9.rb:
RSS::Maker.make("0.9") generates RSS 0.92 not RSS 0.91.
Mon Feb 11 16:57:00 2008 Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
* ChangeLog: format-time-string under C locale. [ruby-dev:33261]
Mon Feb 11 16:31:47 2008 URABE Shyouhei <shyouhei@ice.uec.ac.jp>
* gc.c (rb_newobj): prohibit call of rb_newobj() during gc.
Submitted by Sylvain Joyeux [ruby-core:12099].
* ext/dl/ptr.c: do not use LONG2NUM() inside dlptr_free().