Thu Sep 6 21:36:33 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* include/ruby/oniguruma.h (OnigEncodingTypeST): add end parameter
to mbc_enc_len.
* euc_jp.c (mbc_enc_len), sjis.c (mbc_enc_len),
utf8.c (utf8_mbc_enc_len): ditto.
* encoding.c (rb_enc_mbclen): add end parameter.
Thu Sep 6 21:31:49 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_cycle): typo in rdoc. a patch from Yugui
<yugui@yugui.sakura.ne.jp>. [ruby-dev:31748]
Thu Sep 6 12:42:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
[ruby-dev:31734]
Wed Sep 5 22:02:27 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_subseq): need integer overflow check.
[ruby-dev:31736]
* array.c (rb_ary_splice): ditto. [ruby-dev:31737]
* array.c (rb_ary_fill): ditto. [ruby-dev:31738]
* string.c (rb_str_splice): integer overflow for length.
[ruby-dev:31739]
Tue Sep 4 20:43:44 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
* test/win32ole/test_win32ole_event.rb: ditto.
Mon Sep 3 15:37:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (vm.o): depends on st.h too.
Sun Sep 2 23:38:29 2007 Tanaka Akira <akr@fsij.org>
* include/ruby/st.h (struct st_table): make num_entries bitfield
instead of num_bins for speed. num_entries has less access.
Sun Sep 2 00:37:57 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb (_parse): improved parsing of ordinal dates.
* lib/date/format.rb (_parse): use named character classes in some
regular expressions.
Sat Sep 1 23:44:26 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval_jump.ci (rb_f_throw): wrap tag and TAG_THROW in a NODE_MEMO
node to make throw instruction to work well.
Sat Sep 1 20:56:07 2007 Tanaka Akira <akr@fsij.org>
* include/ruby/ruby.h (struct RBignum): embed digits in RBignum for
small bignums.
* bignum.c: RBignum embeded digits implemented.
* include/ruby/intern.h: declare rb_big_resize.
* gc.c: don't free embedded digits.
* numeric.c: replace direct bignum field accessor by abstract field
accessor such as RBIGNUM(val)->sign to RBIGNUM_SIGN(val).
* sprintf.c: ditto.
* compar.c: ditto.
* marshal.c: ditto.
* random.c: ditto.
* .gdbinit: support embedded small bignums.
Sat Sep 1 19:59:43 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
released.
* ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
released.
* ext/win32ole/win32ole.c (fev_initialize): refactoring.
Sat Sep 1 16:26:09 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* test/socket/test_tcp.rb (test_recvfrom): same as mswin32 on mswin64.
Sat Sep 1 14:24:23 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
the former may be larger than the latter.
* include/ruby/st.h (CHAR_BIT): get rid of magic number.
* include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
is larger than int.
Sat Sep 1 10:43:30 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval_jump.ci (rb_f_catch): generate new tag object if no argument is
given. backported from MatzRuby. [ruby-dev:31609]
* eval_jump.ci (rb_catch): call #catch without arguments if tag
string is NULL.
* eval_jump.ci (rb_f_throw): allow throwing non-symbol object.
* eval_jump.ci (rb_catch_obj): new function to wait throw with arbitrary
object.
* eval_jump.ci (rb_throw_obj): new function to throw arbitrary object.
* variable.c (check_autoload_table): prevent multiple calls from
RSTRING_PTR().
Fri Aug 31 07:12:24 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* numeric.c (SQRT_LONG_MAX): use SIZEOF_LONG instead of SIZEOF_VALUE
because SIZEOF_VALUE > SIZEOF_LONG on some platforms.
Fri Aug 31 04:18:03 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_norm_arg, f_arg_item): not croak already erred names.
[ruby-dev:31687]
* parse.y (assignable_gen): ignore already erred names.
* parse.y (shadowing_lvar_gen): always make new block local variable
when shadowing outer local variable. [ruby-dev:31507]
Thu Aug 30 19:40:33 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* regenc.h: check RUBY_EXTERN before including config.h and defines.h
* common.mk: update header dependency.
Thu Aug 30 14:06:50 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (rb_obj_define_method): reverted. [ruby-talk:266637]
Thu Aug 30 13:49:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb: initialize $top_srcdir always. [ruby-dev:31682]
* lib/mkmf.rb (try_const, have_const): check for a const is defined.
[ruby-core:04422]
Thu Aug 30 08:00:12 2007 Tanaka Akira <akr@fsij.org>
* include/ruby/intern.h: declare rb_hash_tbl.
* include/ruby/ruby.h (RHash): delay st_table allocation.
rename tbl field to ntbl to detect direct reference to the st_table
as a compile error.
(RHASH_TBL): abstract accessor defined.
(RHASH_ITER_LEV): ditto.
(RHASH_IFNONE): ditto.
(RHASH_SIZE): ditto.
(RHASH_EMPTY_P): ditto.
(hash_alloc0, hash_alloc): unified because hash_alloc doesn't
allocate st_table now.
* hash.c: delay st_table allocation.
* gc.c: replace tbl by ntbl.
* array.c: replace direct field accessor by abstract field accessor
such as RHASH(hash)->tbl to RHASH_TBL(hash).
* marshal.c: ditto.
* insns.def: ditto.
* ext/iconv/iconv.c: ditto.
* ext/json/ext/generator/generator.c: ditto.
* ext/json/ext/parser/parser.c: ditto.
* ext/json/ext/parser/parser.rl: ditto.
* ext/syck/rubyext.c: ditto.
* ext/tk/tkutil/tkutil.c: ditto.
Wed Aug 29 18:36:06 2007 Tanaka Akira <akr@fsij.org>
* lib/open-uri.rb: add :ftp_active_mode option.
Wed Aug 29 14:55:28 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (str_gsub): should not use mbclen2() which has broken API.
* re.c: remove rb_reg_mbclen2().
Wed Aug 29 12:48:17 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (aref_args): args may not be a list. [ruby-dev:31592]
Wed Aug 29 11:30:10 2007 Tanaka Akira <akr@fsij.org>
* include/ruby/st.h (struct st_table): add entries_packed 1-bit
bitfield. decrease num_bins 1-bit.
* st.c: pack numhash which have 5 or less entries in bins.
(st_init_table_with_size): setup entries_packed flag.
(st_clear): support packed mode.
(st_lookup): ditto.
(st_insert): ditto.
(st_add_direct): ditto.
(st_copy): ditto.
(st_delete): ditto.
(st_foreach): ditto.
(st_reverse_foreach): ditto.
(unpack_entries): new function for converting to unpacked mode.
Wed Aug 29 10:46:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* include/ruby/defines.h (flush_register_windows): call "ta 0x03"
even on Linux/Sparc. [ruby-dev:31674]
Tue Aug 28 19:16:00 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_type_progid): progid getted by
ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.
* test/win32ole/test_win32ole.rb (test_raise_message): set negative
compareMode value to raise WIN32OLERuntimeError.
* test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
support some environment which returns IShellDispatch5 instead
of IShellDispatch.
Tue Aug 28 15:42:09 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_subseq): retrieve substring based on byte offset.
* string.c (rb_str_rindex_m): was confusing character offset and
byte offset.
Tue Aug 28 14:23:31 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_splice_0): should check to modify. [ruby-dev:31665]
Tue Aug 28 14:21:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_prepare): set parser encode too when BOM exists.
Tue Aug 28 00:51:22 2007 Koichi Sasada <ko1@atdot.net>
* thread.c: fix Mutex to be interruptable lock.
* thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
prepare native_cond_*() which are based on pthread_cond_*() spec.
* prelude.rb: fix Mutex#synchronize method.
* vm_core.h, include/ruby/intern.h: change unblock function interface
(to pass some user data).
* file.c, process.c: ditto.
* benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
* benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
with contension.
* benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
* test/ruby/test_thread.rb: add a test.
* common.mk: fix benchmark options.
Mon Aug 27 23:14:02 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_rstrip_bang): wrong strip point. [ruby-dev:31652]
* string.c (rb_str_each_line): should swallow sequence of newlines
if rs (optional argument) is an empty string. [ruby-dev:31652]
Mon Aug 27 22:39:08 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* encoding.c (rb_enc_codelen): raises invalid sequence exception
if ONIGENC_CODE_TO_MBCLEN() returns zero. [ruby-dev:31661]
* encoding.c (rb_enc_mbclen): check invalid sequence.
Mon Aug 27 20:27:59 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
[ruby-dev:31576]
* test/win32ole/test_win32ole_type.rb (test_initialize):
remove duplicate assertions.
Mon Aug 27 19:10:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/etc/etc.c (etc_getlogin): update documentation to note
security issue. [ruby-Bugs-11821]
Mon Aug 27 15:56:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (sym_encoding): return the encoding of a Symbol.
Mon Aug 27 15:33:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* util.c (IEEE_BIG_ENDIAN): use configured value. [ruby-dev:31623]
* util.c (Llong): set to LONG_LONG if available.
Mon Aug 27 13:11:56 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (tr_trans): wrong condition for mbmaxlen==1 strings.
[ruby-dev:31652]
Mon Aug 27 00:41:13 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_each_byte): caused infinite loop. [ruby-dev:31652]
* io.c (rb_io_getc): should return nil at EOF, not EOFError.
* lib/delegate.rb (SimpleDelegator::__setobj__): use raise
argument to specify backtrace.
* test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test):
String#include? no longer works for Fixnum. use #chr.
[ruby-dev:31652]
Sun Aug 26 12:27:14 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: fix to remove Fiber.new until fiber.so is not loaded.
* test/ruby/test_continuation.rb: fix to use resume.
Sun Aug 26 06:51:46 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
buffer should be NULL terminated.
Sun Aug 26 06:04:13 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_setup_method): reorder code for branch prediction.
Sun Aug 26 05:54:49 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_call_method): fix to relaxant safe level check
($SAFE > 2). [ruby-core:11998]
* bootstraptest/test_method.rb: add tests for above.
Sun Aug 26 05:52:08 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_fiber.rb: fix to require 'continuation'.
Sat Aug 25 23:52:14 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enumerator_next): message changed.
Sat Aug 25 23:22:14 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* include/ruby/encoding.h: remove unused rb_enc_ismbchar().
Sat Aug 25 22:50:14 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
fev_initialize): remove the connection ole_event_free and
EVENTSINK_Destructor.
Sat Aug 25 17:52:06 2007 Koichi Sasada <ko1@atdot.net>
* string.c, include/ruby/intern.h: export rb_str_length().
* insns.def: use rb_str_lengt() in opt_length.
Sat Aug 25 17:48:51 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: rename FIBER_STACK_SIZE to FIBER_VM_STACK_SIZE.
Sat Aug 25 17:05:05 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (swallow): removed condition using an unset variable.
* parse.y, re.c: re-applied revision 13092.
* string.c (rb_str_splice): return from void funtion.
* include/ruby/encoding.h (rb_enc_str_new): prototype added.
Sat Aug 25 11:45:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* encoding.c: provide basic features for M17N.
* parse.y: encoding aware parsing.
* parse.y (pragma_encoding): encoding specification pragma.
* parse.y (rb_intern3): encoding specified symbols.
* string.c (rb_str_length): length based on characters.
for older behavior, bytesize method added.
* string.c (rb_str_index_m): index based on characters. rindex as
well.
* string.c (succ_char): encoding aware succeeding string.
* string.c (rb_str_reverse): reverse based on characters.
* string.c (rb_str_inspect): encoding aware string description.
* string.c (rb_str_upcase_bang): encoding aware case conversion.
downcase, capitalize, swapcase as well.
* string.c (rb_str_tr_bang): tr based on characters. delete,
squeeze, tr_s, count as well.
* string.c (rb_str_split_m): split based on characters.
* string.c (rb_str_each_line): encoding aware each_line.
* string.c (rb_str_each_char): added. iteration based on
characters.
* string.c (rb_str_strip_bang): encoding aware whitespace
stripping. lstrip, rstrip as well.
* string.c (rb_str_justify): encoding aware justifying (ljust,
rjust, center).
* string.c (str_encoding): get encoding attribute from a string.
* re.c (rb_reg_initialize): encoding aware regular expression
* sprintf.c (rb_str_format): formatting (i.e. length count) based
on characters.
* io.c (rb_io_getc): getc to return one-character string.
for older behavior, getbyte method added.
* ext/stringio/stringio.c (strio_getc): ditto.
* io.c (rb_io_ungetc): allow pushing arbitrary string at the
current reading point.
* ext/stringio/stringio.c (strio_ungetc): ditto.
* ext/strscan/strscan.c: encoding support.
Sat Aug 25 10:59:19 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: separate Continuation and Fiber from core.
* ext/continuation/*, ext/fiber/*: ditto.
* include/ruby/ruby.h: remove rb_cFiber.
* include/ruby/intern.h: add the rb_fiber_new() declaration.
* enumerator.c (next_init): fix to use rb_fiber_new().
* test/ruby/test_enumerator.rb: remove next? tests.
* test/ruby/test_continuation.rb: add a require 'continuation'.
* test/ruby/test_fiber.rb: add a require 'fiber'.
Sat Aug 25 10:20:28 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (prelude.o): depends on vm_core.h now.
* common.mk (prelude.c): depends on tool/compile_prelude.rb too.
* common.mk (prereq): updates all auto-generated sources.
* tool/compile_prelude.rb: separated dynamic and static portions.
Sat Aug 25 10:05:17 2007 Koichi Sasada <ko1@atdot.net>
* prelude.rb: add Thread.exclusive. This class method
is different from 1.8's. Thread.exclusive only does
synchronize with VM global mutex.
Sat Aug 25 09:39:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_s_try_convert): more document description.
* re.c (rb_reg_s_try_convert): typo fixed.
Sat Aug 25 08:54:12 2007 Koichi Sasada <ko1@atdot.net>
* id.h, id.c: remove idFuncall.
* compile.c (iseq_specialized_instruction): ditto.
Sat Aug 25 08:47:28 2007 Koichi Sasada <ko1@atdot.net>
* tool/compile_prelude.rb: fix to include "vm_core.h".
Sat Aug 25 03:49:14 2007 Tanaka Akira <akr@fsij.org>
* test/ruby/sentence.rb (Sentence): include Enumerable.
(Sentence#each): defined.
* test/ruby/test_assignment.rb: use Sentence#expand.
Sat Aug 25 03:08:57 2007 Koichi Sasada <ko1@atdot.net>
* prelude.rb: fix Mutex#synchronize definition.
Sat Aug 25 02:08:45 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_s_try_convert): a new class method to convert
object or nil if it's not target-type. this mechanism is used
to convert types in the C implemented methods.
* hash.c (rb_hash_s_try_convert): ditto.
* io.c (rb_io_s_try_convert): ditto.
* re.c (rb_reg_s_try_convert): ditto.
* string.c (rb_str_s_try_convert): ditto.
Sat Aug 25 00:49:44 2007 Koichi Sasada <ko1@atdot.net>
* benchmark/bm_loop_generator.rb: added.
Sat Aug 25 00:22:31 2007 Koichi Sasada <ko1@atdot.net>
* prelude.rb: added. run this script on startup.
* tool/compile_prelude.rb: compile prelude.rb to C string.
(prelude.rb -> prelude.c)
* common.mk: fix to build with prelude.c.
* inits.c (rb_call_inits): ditto.
* thread.c (Init_Thread): move definition of Mutex#synchronize
to prelude.rb.
Sat Aug 25 00:08:43 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (compile_massign_opt): fix to skip massign optimization
with global variables.
* bootstraptest/test_massign.rb: add some tests for above.
Fri Aug 24 18:42:03 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
* lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::initialize):
initialize @workdir to stop warning.
Fri Aug 24 18:30:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform_without_block):
replace funcall by send!. other files in the distribution as well.
Fri Aug 24 17:06:56 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_f_send_bang): abandon the name funcall for private
aware method call.
Fri Aug 24 15:27:12 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enumerator_next): stop pre-fetching.
* enumerator.c (Init_Enumerator): remove next? method.
Fri Aug 24 15:14:57 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_f_loop): now handles StopIteration exception.
Thu Aug 23 20:31:31 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: optimize simple massign.
Thu Aug 23 20:02:25 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
of RegQueryValueEx.
* ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
that the function always returns Qnil.
* test/win32ole/test_win32ole_type.rb (test_initialize): add some test.
Thu Aug 23 17:25:05 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (group_member): check if presents.
* configure.in (XCFLAGS): add _GNU_SOURCE on linux.
* file.c (group_member): use system routine if available.
* process.c: moved _GNU_SOURCE macro to Makefile.
Thu Aug 23 16:59:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (compile_massign), insnhelper.ci (vm_throw): not use C99
comment.
* cont.c (rb_cont_call, fiber_switch, rb_fiber_resume, rb_fiber_yield):
suppress warnings.
* cont.c (rb_fiber_start): change on non-volatile variable between
setjmp and longjmp may not has an effect.
* enumerator.c (sym_call): initialize first.
* enumerator.c (enum_iter): typedefed.
* enumerator.c (next_i): suppress a warning.
Thu Aug 23 16:04:11 2007 Koichi Sasada <ko1@atdot.net>
* compile.c, insns.def, parse.y: fix massign order. This change
causes performance problem. Try vm1_swap benchmark.
[ruby-dev:31522]
* insns.def, insnhelper.ci: move process body of expandarray insn to
vm_expandarray().
* bootstraptest/test_knownbug.rb, bootstraptest/test_massign.rb:
move a solved test.
Thu Aug 23 15:51:19 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_norm_arg): ripper has no shadowing check.
* parse.y (f_block_arg): dispatch blkarg_mark.
Thu Aug 23 15:48:26 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (make_masgn_lhs, iseq_compile_each): fixed indent.
* compile.c (iseq_translate_threaded_code),
vm_evalbody.ci (get_insns_address_table),
template/vmtc.inc.tmpl (insns_address_table): constified.
* vm_evalbody.ci (vm_eval),
template/insns_info.inc.tmpl (insn_stack_increase, insn_ret_num):
suppress warnings.
Thu Aug 23 13:19:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_norm_arg): check also nested arguments. [ruby-dev:31502]
Thu Aug 23 00:06:48 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* util.c: updated for ANSI C only. applied a patch from
<snakagawa AT infoteria.co.jp>. [ruby-dev:31591]
Thu Aug 23 00:04:45 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* missing/strtod.c: removed. [ruby-dev:31588]
* LEGAL: updated.
Wed Aug 22 15:59:44 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/test_knownbug.rb:
fix typo of filename (test_knwonbug.rb).
Wed Aug 22 14:04:53 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/test_knwonbug.rb: added. This file will contain
test cases which point out known bug. If bug is fixed, tests
should move to the suitable place.
* bootstraptest/test_massign.rb: move a test which show known bug
to test_knownbug.rb.
Wed Aug 22 13:02:26 2007 Tanaka Akira <akr@fsij.org>
* bootstraptest/runner.rb (in_temporary_working_directory):
don't remove the directory specified by --dir.
Wed Aug 22 05:51:23 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* util.c (ruby_strtod): replaced by the implementation by David
M. Gay inspired by William D. Clinger's paper "How to Read Floating
Point Numbers Accurately" [Proc. ACM SIGPLAN '90, pp. 92-101].
a patch from Satoshi Nakagawa <snakagawa AT infoteria.co.jp>.
[ruby-dev:31582]
* test/ruby/test_float.rb (TestFloat::test_float): add test for
precision.
Wed Aug 22 03:51:07 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: add Fiber#resume and Fiber.yield.
and Fiber::Core class to realize Coroutine.
* include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume().
* enumerator.c: use above api.
* test/ruby/test_fiber.rb: fix and add tests for above changes.
Tue Aug 21 21:09:48 2007 Tanaka Akira <akr@fsij.org>
* lib/tmpdir.rb (Dir.mktmpdir): make directory suffix specifiable.
Tue Aug 21 15:00:23 2007 Koichi Sasada <ko1@atdot.net>
* st.c (st_clear): reset num_entries too.
Tue Aug 21 13:57:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (st_foreach_func, rb_foreach_func): typedefed.
* hash.c (rb_hash_clear): use st_clear() unless iterating.
* st.c (struct st_table_entry): add new members, fore and back, to
iterate in inserted order.
* include/ruby/st.h (struct st_table): ditto.
Tue Aug 21 04:09:06 2007 Koichi Sasada <ko1@atdot.net>
* benchmark/bm_vm2_case.rb: add a new benchmark.
YARV optimize case/when syntax. If every conditions
are literal (such as Symbol, Fixnum, String), dispatch
calc order will be O(1).
Tue Aug 21 04:08:07 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_enumerator.rb: fix last commit.
Tue Aug 21 03:59:32 2007 Koichi Sasada <ko1@atdot.net>
* test_enumerator.rb (enum_test): fix to return sorted
array (for Hash test).
Tue Aug 21 03:55:20 2007 Koichi Sasada <ko1@atdot.net>
* enumerator.c (next_i): fix to return with Fiber#yield at
the end of each block. [ruby-dev:31470]
* enumerator.c (enumerator_next_p): call init_next if not
initialized. [ruby-dev:31514]
* test/ruby/test_enumerator.rb: add tests for Enumerator.
Mon Aug 20 23:28:39 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (Init_String): remove Symbol.intern and Symbol#dump.
[ruby-dev:31525]
* dir.c (dir_foreach): return Enumerator if no block given.
[ruby-dev:31525]
* io.c (rb_io_s_foreach): argument count check before making
Enumerator. [ruby-dev:31525]
Mon Aug 20 23:17:14 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_core.h (struct rb_thread_struct): removed first_func_arg and
reuse first_args instead.
Sun Aug 19 13:31:40 2007 Tanaka Akira <akr@fsij.org>
* gc.c: use VALGRIND_MAKE_MEM_UNDEFINED to detect use of collected
objects if valgrind is available. It cannot detect first 2 words
because they are used as the free list.
Sun Aug 19 13:13:52 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each/NODE_RESBODY): fix to add
additional nop to prevent tailcall optimization.
* vm_opts.h: clean up comments.
Sun Aug 19 12:58:39 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_call_bmethod): fix to propagate information
that this proc is "from Method". [ruby-dev:31490]
* proc.c (method_proc, rb_mod_define_method): ditto.
* vm.c (vm_invoke_proc_core): removed.
* vm_core.h: ditto.
Sun Aug 19 12:36:11 2007 Tanaka Akira <akr@fsij.org>
* test/ruby/sentence.rb: new method Sentence().
Sun Aug 19 12:32:39 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_callee_setup_arg): fix to mark enough VM stack.
[ruby-dev:31492]
Sat Aug 18 19:02:34 2007 Tanaka Akira <akr@fsij.org>
* test/ruby/test_yield.rb (TestYieldGen): relax array size check
in nested parameters.
[ruby-dev:31485]
Sat Aug 18 17:44:42 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/tk/tcltklib.c (Init_tcltklib): use rb_set_end_proc().
Sat Aug 18 17:40:11 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (is_ruby_native_thread): check properly. [ruby-dev:31166]
Sat Aug 18 16:44:15 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_call_bmethod),
vm.c (vm_invoke_proc_core): fix to do not restore
$SAFE when proc invoked by bmethod.
* vm_core.h: ditto.
Sat Aug 18 16:44:49 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_error.ci (ruby_error_print): call error_print.
* eval_jump.ci, process.c (rb_exit, rb_f_exit, rb_f_abort): moved.
Sat Aug 18 15:59:52 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (detach_process_watcher): should not pass the pointer
to an auto variable to the thread to be created. pointed and
fix by KUBO Takehiro <kubo at jiubao.org> [ruby-dev:30618]
Sat Aug 18 15:52:50 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insnhelper.ci (vm_send_optimize): use MEMMOVE to shift values inside
an array.
Sat Aug 18 15:45:34 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insnhelper.ci (vm_yield_setup_args): rsize and psize should not be
negative.
Sat Aug 18 14:35:00 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insnhelper.ci (vm_callee_setup_arg, vm_send_optimize,
vm_yield_setup_args): bulk copy for arguments.
Sat Aug 18 13:55:58 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix to allow self.x=
if x= is private.
* bootstraptest/test_method.rb: add a test for above.
Sat Aug 18 14:05:34 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (reg_compile_gen): obtain error info from errinfo.
* re.c (rb_reg_error_desc): make RegexpError for initialization error.
* re.c (rb_reg_compile): return nil and set errinfo if error.
Sat Aug 18 13:23:01 2007 Koichi Sasada <ko1@atdot.net>
* eval.c: $! should not be writable.
* eval.c (rb_rubylevel_errinfo): added. rb_errinfo() returns
rb_threa_t#errinfo. rb_rubylevel_errinfo() returns $! value.
Sat Aug 18 13:14:40 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_callee_setup_arg): fix to check arguments
correctly. [ruby-dev:31472]
Sat Aug 18 13:13:06 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/test_exception.rb: add escape character ("\") for
editors.
Sat Aug 18 12:42:50 2007 Tanaka Akira <akr@fsij.org>
* test/ruby/test_yield.rb (TestYieldGen): add test for yielding to
lambda using lambda parameter passing emulator.
Sat Aug 18 12:24:30 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
comment lines first.
Sat Aug 18 11:44:59 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_set_arguments), insnhelper.ci
(vm_callee_setup_arg, vm_yield_setup_args):
fix to cause raise on "lambda{|a|}.call(1, 2)".
[ruby-dev:31464]
* bootstraptest/test_block.rb: add tests for above.
Sat Aug 18 01:12:01 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (frame_func_id): return proper method ID.
Fri Aug 17 22:43:11 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): massign should return rvalue(s).
Fri Aug 17 22:10:19 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_basicinstructions.rb: fix old tests.
class variables should be inherited.
Fri Aug 17 21:20:44 2007 Koichi Sasada <ko1@atdot.net>
* eval.c (rb_call), eval_method.ci (rb_add_method, rb_alias),
insnhelper.ci (vm_call_method): fix to save safelevel for
method node.
* include/ruby/node.h: ditto.
* bootstraptest/test_method.rb: add a test for above.
Fri Aug 17 16:02:50 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (rb_thread_terminate_all): fix to ignore
exceptions.
* thread.c (thread_start_func_2): fix
abort_on_exception process. [ruby-dev:31394]
Fri Aug 17 14:38:36 2007 Tanaka Akira <akr@fsij.org>
* bootstraptest/runner.rb (in_temporary_working_directory): use
Dir.mktmpdir to create and remove temporary directory.
(Dir.mktmpdir): define if not available.
[ruby-dev:31431]
Fri Aug 17 03:07:37 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix thorw insn option of next.
Fri Aug 17 01:25:23 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_set_arguments), insnhelper.ci
(vm_callee_setup_arg, vm_yield_setup_args): fix
block parameter problems. [ruby-dev:31437], [ruby-dev:31440]
* bootstraptest/test_block.rb: add a test of [ruby-dev:31440].
Fri Aug 17 01:24:12 2007 Koichi Sasada <ko1@atdot.net>
* iseq.c (ruby_iseq_disasm): fix to show arg_simple value.
Fri Aug 17 01:21:29 2007 Koichi Sasada <ko1@atdot.net>
* insns.def (throw): insert a RUBY_VM_CHECK_INTS(). [ruby-dev:31361]
Thu Aug 16 20:40:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (bigtrunc): RBIGNUM(x)->len may be zero. out of bound
access. [ruby-dev:31404]
* sprintf.c (rb_str_format): small float should not call
rb_dbl2big().
Thu Aug 16 22:10:06 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix next/redo stack consistency.
[ruby-dev:31373]
* bootstraptest/test_syntax.rb: add tests for above.
* sample/test.rb: fix to use __FILE__ instead of $0 to know basedir.
Thu Aug 16 21:14:06 2007 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (BASERUBY): need AC_SUBST. [ruby-dev:31438]
Thu Aug 16 19:18:26 2007 Tanaka Akira <akr@fsij.org>
* test/ruby/sentence.rb: Sentence class implemented
based on sentgen.rb
* test/ruby/sentgen.rb: removed.
* test/ruby/test_assignment.rb: use sentence.rb.
* test/ruby/test_yield.rb: block parameter passing emulator
implemented.
Thu Aug 16 16:48:47 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (BASERUBY): check if base ruby is runnable first.
[ruby-core:11900]
Thu Aug 16 16:46:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (aix): enable shared by default.
* configure.in (aix): for 64bit-mode AIX. [ruby-dev:31401]
+ use CC for LDSHARED if non-gcc,
+ moved -G option from *LDFLAGS to LDSHARED,
+ set -brtl only in XLDFLAGS.
Thu Aug 16 13:06:08 2007 Tanaka Akira <akr@fsij.org>
* bignum.c (big_lshift): make shift offset long type.
(big_rshift): ditto.
(rb_big_lshift): ditto.
(big_rshift): ditto.
[ruby-dev:31434]
Thu Aug 16 06:29:08 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (argf_readpartial): argf_forward needs argc and argv.
Thu Aug 16 02:47:39 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_fiber_m_yield): added. use this function
for Fiber#yield instead of rb_fiber_yield.
Thu Aug 16 00:36:52 2007 Tanaka Akira <akr@fsij.org>
* lib/tmpdir.rb (Dir.mktmpdir): new method. [ruby-dev:31416]
Wed Aug 15 18:57:30 2007 Koichi Sasada <ko1@atdot.net>
* gc.c (os_live_obj): fix to skip T_VALUES.
* sample/test.rb: add an ObjectSpace test.
Wed Aug 15 16:49:04 2007 Koichi Sasada <ko1@atdot.net>
* inits.c (rb_call_inits): change initializing order.
[ruby-dev:31420]
Wed Aug 15 16:44:15 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (ARGF_FORWARD): wrongly compares with current_file with
rb_stdout. should be rb_stdin. [ruby-cvs:20177]
Wed Aug 15 14:59:21 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppress
warnings.
Wed Aug 15 14:22:05 2007 Koichi Sasada <ko1@atdot.net>
* parse.y: remove "//" type comment.
Wed Aug 15 13:42:15 2007 Koichi Sasada <ko1@atdot.net>
* parse.y: fix rules around f_margs. "make test" passes all tests.
* bootstraptest/test_block.rb: add some tests for above.
Wed Aug 15 13:50:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_hash_delete_key): delete the entry without calling block.
* hash.c (rb_hash_shift): should consider iter_lev too.
* hash.c (delete_if_i): use rb_hash_delete_key() so that the block
isn't called twice. [ruby-core:11556]
Wed Aug 15 13:39:25 2007 Koichi Sasada <ko1@atdot.net>
* process.c (proc_geteuid): fix strange conversion. [ruby-dev:31417]
Wed Aug 15 01:05:55 2007 Tanaka Akira <akr@fsij.org>
* bootstraptest/runner.rb (assert_check): don't call newtest.
(assert_equal): call newtest.
(assert_match): ditto.
Tue Aug 14 21:43:39 2007 Tanaka Akira <akr@fsij.org>
* bootstraptest/runner.rb (assert_check): new method.
(assert_match): new method.
(assert_equal): use assert_check.
(pretty): give failure description as an argument.
* bootstraptest/test_exception.rb: use assert_match to describe the
test for [ruby-dev:31407]. [ruby-dev:31412]
Tue Aug 14 19:53:15 2007 Koichi Sasada <ko1@atdot.net>
* proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
init place of exception_error.
* inits.c: ditto.
* eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
[ruby-dev:31407]
* bootstraptest/test_exception.rb: add a test for above.
Tue Aug 14 19:51:20 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: change test order (test -> btest).
Tue Aug 14 00:04:27 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/rss.rb: 0.1.8 -> 0.1.9.
* test/rss/test_version.rb: followed the above change.
* lib/rss/parser.rb: fixed a bug that handles unintended elements.
Thanks to Takuo Yonezawa. [ruby-list:43841]
Mon Aug 13 17:23:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_clear_trace_func, rb_thread_stop_timer_thread):
declarations for forward refernces.
* eval.c (rb_longjmp, eval): use local variable.
* eval.c (rb_longjmp): string object not to be optimized.
Mon Aug 13 13:21:58 2007 Tanaka Akira <akr@fsij.org>
* lib/open-uri.rb: make ftp passive mode to avoid NAT problem.
[ruby-dev:31377]
Mon Aug 13 09:18:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/stringio/stringio.c (strio_getc): should returns
one-character string.
* ext/stringio/stringio.c: remove unnecessary prototypes.
* ext/stringio/stringio.c (strio_getbyte): new method.
* ext/stringio/stringio.c (strio_readbyte): new method.
* ext/stringio/stringio.c (strio_ungetc): should take a string as
an input.
Mon Aug 13 08:19:43 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_close): always close via method.
* io.c (Init_IO): remove obsolete Kernel#getc.
Mon Aug 13 05:03:53 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (rb_thread_raise): check if target thread is
thrown by another thread or not. [ruby-dev:31371]
* bootstraptest/test_thread.rb: add a test for above.
Mon Aug 13 04:35:30 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_peephole_optimize): fix peephole optimization
bug. [ruby-dev:31360]
* bootstraptest/test_syntax.rb: add a test for above.
Mon Aug 13 04:02:29 2007 Koichi Sasada <ko1@atdot.net>
* vm_dump.c (debug_print_pre): fix to show control frame count.
* insns.def (opt_call_c_function): fix operand type.
* lib/vm/instruction.rb: ditto.
* insnhelper.ci (vm_push_frame, vm_pop_frame): fix to show
control stack status on if VMDEBUG == 2.
* vm.h: add a comment about VMDEBUG.
* iseq.c (find_prev_line_no): fix to skip bug report if
line is not found.
* lib/vm/instruction.rb: fix to use build_string() on
source code generators.
Mon Aug 13 03:57:32 2007 Koichi Sasada <ko1@atdot.net>
* template/yasmdata.rb.tmpl: fix type and name.
Sat Aug 11 23:27:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_each_line): should use #each_line, not #each.
* io.c (argf_each_line): simplified.
* io.c (argf_getline): should handle non T_FILE object in ARGV.
* io.c (argf_each_byte): each_byte should yield bytes not
one-character strings. [ruby-dev:31374]
Sat Aug 11 07:24:55 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: reverted some wrongly erased "o" options
(pointed out by nobu).
Sat Aug 11 00:01:12 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (thread_start_func_2): not re-raise to main thread if it is
joining the current thread.
Fri Aug 10 23:54:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (thread_create_core): inherit the priority of creating
thread. submitted at [ruby-core:11873] by David Flanagan <david AT
davidflanagan.com>. [ruby-core:11876]
Fri Aug 10 05:12:19 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (thread_start_func_2): let abort_on_exception work.
[ruby-core:11873]
Fri Aug 10 04:47:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (internal_id_gen): internal ID must be bigger than
tLAST_TOKEN.
Thu Aug 9 16:04:55 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (stmt): check if rhs has value before assignment instead
inside node_assign_gen(). [ruby-dev:31293]
* parse.y (call_bin_op_gen, call_uni_op_gen): split call_op_gen.
Thu Aug 9 14:01:36 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_marg_list): renamed from f_marg_head.
* parse.y (f_margs): allow multiple mandatory arguments after a splat.
[ruby-dev:31153]
Thu Aug 9 02:02:02 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_cycle): typo fixed. a patch from Kazuhiro
NISHIYAMA <zn AT mbf.nifty.com>. [ruby-dev:31362]
Wed Aug 8 19:17:40 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/dl/cptr.c (rb_dlptr_s_to_ptr): no longer check
HAVE_RB_IO_STDIO_FILE.
Wed Aug 8 15:52:01 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enumerator_next_p): should check correctly even when
e.next has not been called before.
* enumerator.c (enumerator_next): raise StopIteration (name taken
from Python) instead of IndexError.
* enum.c (enum_zip): catch StopIteration exception.
* enumerator.c (enumerator_with_index): return Enumerator if no
block is given.
* test/ruby/test_iterator.rb (TestIterator::test_enumerator): add
test for enumerators.
Wed Aug 8 11:48:37 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big2str0): should not use RTEST for non-VALUE.
Wed Aug 8 11:25:25 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* bignum.c (rb_big2str0): should preserve sign mark.
Wed Aug 8 11:02:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (btest-miniruby, test-sample): split the test target
so that -k option works.
Tue Aug 7 14:58:39 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/pty/pty.c (establishShell): handshaking before close slave
device. [ruby-talk:263410]
* ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): constified.
* ext/pty/pty.c (SlaveName): removed static buffer.
* ext/pty/expect_sample.rb: support for autologin.
Tue Aug 7 13:58:03 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/ruby.h (ruby_special_consts): added RUBY_SPECIAL_SHIFT.
* .gdbinit: some improvements.
Tue Aug 7 13:28:32 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (node_name.inc): use $? instead of $< for nmake.
[ruby-dev:31356]
Tue Aug 7 12:45:13 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (ac_cv_func_isinf): set yes also on OpenSolaris.
[ruby-Bugs-12859]
Tue Aug 7 12:31:51 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (pipe_open): fix for win32 platforms.
Tue Aug 7 02:58:33 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big2str0): make Bignum#to_s even faster. a patch
from Kenta Murata <muraken AT gmail.com>. [ruby-dev:31354]
Tue Aug 7 01:42:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_zip): zip no longer converts arguments into
arrays, uses enumerators.
Tue Aug 7 01:27:47 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* cont.c (rb_fiber_yield): change argument ordering. export.
* cont.c (rb_fiber_current): export
* include/ruby/intern.h: export several functions from cont.c.
* enumerator.c (enumerator_next): new method to implement external
iterator (generator) using fiber.
* enumerator.c (enumerator_next_p): new method to check whether
any element is left in the generator sequence.
* enumerator.c (enumerator_rewind): a new method to rewind the
generator sequence.
Tue Aug 7 01:15:24 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_cycle): new method to cycle enumerable forever.
Tue Aug 7 00:05:38 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* irb/ruby-lex.rb: support for '\c'. [ruby-talk:263508]
Mon Aug 6 20:29:22 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci, insns.def: move some statements to functions.
* vm.c, vm.h, vm_evalbody.ci: fix include/typedef places.
Mon Aug 6 18:41:12 2007 Koichi Sasada <ko1@atdot.net>
* lib/vm/instruction.rb (make_header_analysys): fix last commit.
Mon Aug 6 18:33:22 2007 Koichi Sasada <ko1@atdot.net>
* lib/vm/instruction.rb (make_header_analysys): add to separate
header addition process.
Mon Aug 6 17:36:29 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax.
Mon Aug 6 16:57:08 2007 Koichi Sasada <ko1@atdot.net>
* sample/test.rb: fix to output file name if it contains
invalid syntax.
Mon Aug 6 16:41:22 2007 Koichi Sasada <ko1@atdot.net>
* parse.y (value_expr_gen): fix to cause "void value expression"
when jump expression such as "next" are shown on value_expr().
[ruby-dev:31119]
* bootstraptest/test_syntax.rb: fix to above change.
Mon Aug 6 14:36:30 2007 Koichi Sasada <ko1@atdot.net>
* parse.y: fix a f_marg rule. [ruby-dev:31160]
Mon Aug 6 14:29:30 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/runner.rb (assert_equal): add additional
message parameter.
Mon Aug 6 13:34:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (INSNS): not chdir to srcdir.
* common.mk (node_name.inc): auto-generate node name list.
* iseq.c (ruby_node_name): ditto.
* iseq.c (iseq_s_compile_option_get, Init_ISeq): added a new
method VM::InstructionSequence::compile_option.
* lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
option.
* tool/node_name.rb: to auto-generate node name list.
Sun Aug 5 11:51:39 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss, sample/rss, test/rss:
- 0.1.7 -> 0.1.8.
- supported <itunes:XXX>.
- reverted backward incompatibility API changes introduced 0.1.7.
Sun Aug 5 04:56:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (pipe_open_v, pipe_open_s): separate array and string
cases. [ruby-dev:31344]
Fri Aug 3 11:05:54 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb (extmake): save all CONFIG values.
* ext/extmk.rb (extmake): remove mkmf.log at clean, and extconf.h at
distclean, respectively.
* ext/extmk.rb: remove rdoc at clean, and installed list file at
distclean, respectively.
Fri Aug 3 07:09:05 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb: more verbose message. [ruby-Bugs-12766]
* lib/mkmf.rb (have_type): suppress a warning with -Wall.
* lib/mkmf.rb (find_type): new method.
Fri Aug 3 00:00:20 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (big2str_table): base cannot be 0 or 1.
Thu Aug 2 23:42:57 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (reg_compile_gen): set error if failed to compile regexp
literal. [ruby-dev:31336]
* re.c (option_to_str, arg_kcode, opt_kcode): options conversion
between int and string.
* re.c (rb_reg_compile): should not use regexp which could not get
initialized. [ruby-dev:31333]
return error message to let the parser know it.
* re.c (rb_reg_compile): append regexp options to error message.
[ruby-dev:31334]
Thu Aug 2 22:05:32 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big2str0): faster Bugnum#to_s using Karatsuba
algorithm. a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
in [ruby-dev:31312], slightly modified by Kenta Murata
<muraken AT gmail.com> in [ruby-dev:31339].
Thu Aug 2 13:46:39 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sprintf.c (rb_f_sprintf): should not check positional number as
width. [ruby-core:11838]
Wed Aug 1 12:40:05 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* generic.rb (URI::Generic::merge_path): behave as RFC 3986.
[ruby-talk:252052]
Tue Jul 31 23:38:09 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb (_parse): now interprets slashed numerical
dates as a big endian (except dd/mm/yyyy). [experimental]
Mon Jul 30 11:16:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_aref): check for Bignum index range.
[ruby-dev:31271]
Sat Jul 28 09:35:41 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
infinite recursive const_missing call. [ruby-talk:262193]
Thu Jul 26 20:40:25 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c (range_eqq): call_super() in === does not work well
since Enumerable#=== has different behavior. [ruby-dev:31296]
Thu Jul 26 13:57:45 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dln.c (load_1, dln_find_1): constified.
* dln.c (conv_to_posix_path): removed.
* ruby.c (usage): constified.
* ruby.c (rubylib_mangled_path, rubylib_mangled_path2): return
VALUE instead of a pointer to static buffer.
* ruby.c (push_include_cygwin): fixed buffer overflow.
[ruby-dev:31297]
* ruby.c (ruby_init_loadpath): not convert built-in paths.
Tue Jul 24 10:37:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_f_p): return nil if no argument. [ruby-dev:31285]
Tue Jul 24 01:05:07 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* regint.h (USE_MATCH_RANGE_IS_COMPLETE_RANGE): undef to achieve old
rindex behavior. [ruby-dev:31265]
Mon Jul 23 18:37:14 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* include/ruby/oniguruma.h: upgrade to Oniguruma 5.9.0. fixes
some memory violation. [ruby-dev:31070]
Sun Jul 22 20:09:49 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb (Date._parse): now accepts some new
hints. [experimental]
* lib/parsedate.rb: followed the changes on
lib/date/format.rb. [experimental]
Sun Jul 22 16:06:56 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (is_ruby_native_thread): made an int function as
well as version 1.8.
* include/ruby/ruby.h (is_ruby_native_thread): moved prototype
from intern.h as well as version 1.8.
Sun Jul 22 14:33:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_rename): deleted code to get rid of a bug of
old Cygwin.
* file.c (rb_file_truncate): added prototype of GetLastError()
on cygwin. [ruby-dev:31239]
* include/ruby/intern.h (is_ruby_native_thread): prototype.
* missing/strftime.c (strftime): fix printf format and actual
arguments.
* ext/Win32API/Win32API.c (Win32API_initialize): ditto.
* ext/tk/tcltklib.c (ip_finalize): ditto.
* ext/win32ole/win32ole.c (lcid_installed): ditto.
* ext/socket/getnameinfo.c: include stdio.h always.
Sat Jul 21 21:39:12 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb (Date._parse): now can take some
hints (its aim must be mainly determination of endianness of
date). [experimental]
* lib/date.rb, lib/date/format.rb (Date._parse): now completes
truncated year as default action. [experimental]
* lib/date.rb, lib/date/format.rb: added ::iso8601, ::rfc3339,
::xmlschema, ::rfc2822, ::httpdate, ::jisx0301, #xmlschema,
#httpdate. [experimental]
Sat Jul 21 17:48:26 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk: inverted rules order.
* thread_win32.ci (w32_create_thread): bcc does not have
_beginthreadex().
* lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
only if extconf.h is created.
* bcc32/Makefile.sub: headers have moved.
* bcc32/{Makefile.sub,configure.bat,setup.mak: configure_args
support.
* bcc32/setup.mak: check runtime version.
* win32/win32.c (rb_w32_open_osfhandle): prototype has changed
in bcc 5.82.
* {win32,wince,bcc32}/setup.mak (-version-): no RUBY_EXTERN magic.
* win32/resource.rb: include patchlevel number.
Sat Jul 21 12:06:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
Sat Jul 21 01:45:03 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb (Date._parse): completes calendar week based year.
* lib/date/format.rb (Date._parse): detects year of ordinal date in
extended format.
Fri Jul 20 16:30:31 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (iseq_set_sequence): raise SyntaxError instead of rb_bug
since this function can be called from VM::InstructionSequence.load.
* compile.c (insn_set_sc_state, iseq_set_sequence_stackcaching): ditto.
Fri Jul 20 16:11:33 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
initialize aggregations with dynamic values. [ruby-talk:259306]
* eval.c (rb_protect): not to initialize aggregations with dynamic
values. [ruby-talk:259306]
* gc.c (mark_current_machine_context): ditto.
* thread.c (thgroup_list, call_trace_func): ditto.
* vm.c (vm_init_redefined_flag): ditto.
Fri Jul 20 15:22:51 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/openssl/ossl_config.c (ossl_config_set_section): do not
initialize aggregations with dynamic values. [ruby-talk:259306]
Fri Jul 20 10:39:28 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (stmt, mlhs_node, lhs, arg, var_ref): return dummy
NODE_BEGIN after errors. [ruby-dev:31100], [ruby-dev:31118]
* parse.y (remove_begin): keep empty NODE_BEGIN, instead of null.
[ruby-dev:31252], [ruby-dev:31263]
Fri Jul 20 09:50:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bootstraptest/runner.rb (get_result_string): check $?.coredump?
first.
* bootstraptest/runner.rb (cleanup_coredump, check_coredump): see
stackdump file too.
Thu Jul 19 20:39:30 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (value_expr_gen): warn for empty expression ().
[ruby-dev:31252]
Thu Jul 19 19:24:14 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_error.ci (get_backtrace): check the result more.
[ruby-dev:31261] [ruby-bugs-12398]
Thu Jul 19 14:38:45 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_lshift, rb_big_rshift): separated functions
to get rid of infinite recursion. fixed calculation in edge
cases. [ruby-dev:31244]
* numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
Wed Jul 18 16:57:41 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_pow): refine overflow check. [ruby-dev:31242]
Wed Jul 18 09:19:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
for node to the head.
* ruby.c (proc_options): do nothing for -p/-n options if tree is null.
submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
Wed Jul 18 08:47:09 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_succ): Time#succ should return a time object in the
same timezone mode to the original. [ruby-talk:260256]
Mon Jul 16 23:07:51 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/base64.rb (Base64::b64encode): should not specify /o option
for regular expression. [ruby-dev:31221]
Mon Jul 16 22:57:53 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (rb_str_format): make %u behave like %d for negative
values, since decimal format does not work with preceding dots.
[ruby-core:11575]
Mon Jul 16 18:29:33 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_rindex_m): accept string-like object convertible
with #to_str method, as well as rb_str_index_m. [ruby-core:11692]
Mon Jul 16 07:17:28 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insns.def (getspecial): lfp_svar_get() requires int for special
global variables.
Mon Jul 16 05:45:53 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* sprintf.c (rb_f_sprintf): more checks for format argument.
[ruby-core:11569], [ruby-core:11570], [ruby-core:11571],
[ruby-core:11573]
Mon Jul 16 00:26:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_pow): removed invariant variable. [ruby-dev:31236]
Sun Jul 15 22:24:37 2007 pegacorn <subscriber.jp AT gmail.com>
* ext/dl/cfunc.c (rb_dlcfunc_call): adjust format. [ruby-dev:31222]
* ext/digest/digest.c (rb_digest_instance_update,
rb_digest_instance_finish, rb_digest_instance_reset,
rb_digest_instance_block_length): %s in rb_raise() expects char*.
[ruby-dev:31222]
* ext/openssl/ossl.h: include ossl_pkcs5.h. [ruby-dev:31231]
* ext/openssl/ossl_pkcs5.h: new file for PKCS5. [ruby-dev:31231]
* ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
instead of rb_raise(). [ruby-dev:31222]
* ext/sdbm/_sdbm.c: DOSISH platforms need io.h. [ruby-dev:31232]
* ext/syck/syck.h: include stdlib.h for malloc() and free().
[ruby-dev:31232]
* ext/syck/syck.h (syck_parser_set_input_type): prototype added.
[ruby-dev:31231]
* win32/win32.c: include mbstring.h for _mbspbrk(). [ruby-dev:31232]
* include/ruby/win32.h (rb_w32_getcwd): prototype added.
[ruby-dev:31232]
Sun Jul 15 21:07:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (bigtrunc): do not empty Bignum. [ruby-dev:31229]
Sun Jul 15 19:05:28 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_cstr_to_inum): check leading non-digits.
[ruby-core:11691]
Sun Jul 15 04:42:20 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (get2comp): do nothing for empty Bignum. [ruby-dev:31225]
Sat Jul 14 22:49:30 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (fix_pow): integer power calculation: 0**n => 0,
1**n => 1, -1**n => 1 (n: even) / -1 (n: odd).
* test/ruby/test_fixnum.rb (TestFixnum::test_pow): update test
suite. pow(-3, 2^64) gives NaN when pow(3, 2^64) gives Inf.
Sat Jul 14 18:46:35 2007 Tanaka Akira <akr@fsij.org>
* configure.in: add --with-valgrind.
* gc.h (SET_MACHINE_STACK_END): new macro to replace
rb_gc_set_stack_end. it find out accurate stack boundary by
asm using gcc on x86.
* thread.c (rb_gc_set_stack_end): don't define if asm-version
SET_MACHINE_STACK_END is available.
* gc.c (mark_current_machine_context): extracted from garbage_collect.
it use SET_MACHINE_STACK_END to not scan out of stack area.
it notify conservative GC information to valgrind if
--with-valgrind.
Sat Jul 14 14:04:06 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enum.c (sort_by_cmp): check if reentered. [ruby-dev:24291]
Sat Jul 14 11:08:28 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/json/ext/generator/generator.c (check_max_nesting): wrong
format specifier. a patch from pegacorn <subscriber.jp AT gmail.com>.
[ruby-dev:31217]
Sat Jul 14 02:27:43 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (int_pow): overflow detection using FIT_SQRT_LONG().
[ruby-dev:31215]
Sat Jul 14 02:05:53 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* insns.def (opt_div): LONG2FIX() may not work for corner cases,
use LONG2NUM() instead. [ruby-dev:31210]
Sat Jul 14 00:34:01 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (int_round): should not return false, but self.
[ruby-dev:31212]
Fri Jul 13 18:31:27 2007 Koichi Sasada <ko1@atdot.net>
* include/ruby/intern.h: remove unused function declarations.
* include/ruby/ruby.h: ditto.
Fri Jul 13 17:32:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* vm.c (vm_free): clear free'ed living_threads field.
[ruby-dev:31163]
* insns.def (opt_succ): use cast to shut a warning up.
Fri Jul 13 16:10:00 2007 Tanaka Akira <akr@fsij.org>
* lib/open-uri.rb (URI::Generic#find_proxy): use ENV.to_hash to access
http_proxy environment variable to avoid case insensitive
environment search.
Fri Jul 13 15:02:15 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (CreateChild): enclose command line except for
command.com which can not handle quotes. [ruby-talk:258939]
Fri Jul 13 11:33:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* range.c (range_max, range_min): return nil for empty set as well as
1.8 and Enumerable. [ruby-dev:31198]
Fri Jul 13 11:28:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (bvar): semicolon was lost for ripper description.
[ruby-dev:31140]
Fri Jul 13 11:25:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (program, stmt, primary): reduced duplicated code.
* parse.y (dsym): convert also literals containing NUL to
symbol.
* parse.y (debug_lines): use rb_hash_lookup() to get rid of
call of Hash#default.
* parse.y (ripper_warningS): unused in ripper right now.
Fri Jul 13 10:33:29 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_flatten_bang): check argument if valid
integer. [ruby-dev:31197]
Fri Jul 13 10:10:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
::CONFIG which is an alias of MAKEFILE_CONFIG.
Thu Jul 12 21:38:02 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
[ruby-dev:31199]
Thu Jul 12 18:42:18 2007 Tanaka Akira <akr@fsij.org>
* range.c (range_max): use FIX2LONG instead of FIX2INT to avoid
RangeError by ((-0x80000001)...(-0x80000001)).max on LP64.
* insns.def (opt_plus): use FIX2LONG instead of FIX2INT to avoid
RangeError by 0x3fffffffffffffff+1 on LP64.
* insns.def (opt_succ): don't use 0x80000000 which assumes 32bit VALUE.
use FIX2LONG instead of FIX2INT.
[ruby-dev:31190]
Thu Jul 12 17:03:15 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* struct.c (rb_struct_init_copy): disallow changing the size.
[ruby-dev:31168]
Thu Jul 12 12:58:21 2007 Koichi Sasada <ko1@atdot.net>
* blockinlining.c: remove "yarv" prefix.
* array.c, numeric.c: ditto.
* insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
* yarvcore.c: removed.
* yarvcore.h: renamed to core.h.
* cont.c, debug.c, error.c, process.c, signal.c : ditto.
* ext/probeprofiler/probeprofiler.c: ditto.
* id.c, id.h: added.
* inits.c: ditto.
* compile.c: rename internal functions.
* compile.h: fix debug flag.
* eval.c, object.c, vm.c: remove ruby_top_self.
use rb_vm_top_self() instead.
* eval_intern.h, eval_load: ditto.
* gc.c: rename yarv_machine_stack_mark() to
rb_gc_mark_machine_stack().
* insnhelper.h: remove unused macros.
* iseq.c: add iseq_compile() to create iseq object
from source string.
* proc.c: rename a internal function.
* template/insns.inc.tmpl: remove YARV prefix.
* thread.c: use rb_iseq_eval() and rb_str_new2().
* vm.c (rb_iseq_eval): added.
* vm.c: move some functions from yarvcore.c.
* vm_dump.c: fix to remove compiler warning.
Thu Jul 12 12:24:29 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insns.def (opt_succ): fixed typo. [ruby-dev:31189]
Thu Jul 12 10:30:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (thread_start_func_2): moved prototye from thread_*.ci.
* thread_pthread.ci (thread_start_func_2): not use a directive
inside a macro argument. [ruby-talk:258763]
* thread.c (thread_join): pthread_t may not be pointer.
* thread_pthread.ci (ubf_select_each): ditto.
Thu Jul 12 05:32:28 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
Tue Jul 10 19:34:45 2007 Koichi Sasada <ko1@atdot.net>
* hash.c (rb_hash_lookup): added. this function is similar to
rb_hash_aref(), but doesn't call Hash#default when no entry
exists.
* include/ruby/intern.h: ditto.
* insnhelper.ci (lfp_svar_get): use rb_hash_lookup().
Tue Jul 10 19:16:28 2007 Koichi Sasada <ko1@atdot.net>
* eval.c, insnhelper.ci, vm.c: change cref index (-1 -> 2).
Tue Jul 10 18:49:56 2007 Koichi Sasada <ko1@atdot.net>
* eval.c (exec_under): add proper casts.
Tue Jul 10 16:58:16 2007 Koichi Sasada <ko1@atdot.net>
* vm.c, insnhelper.ci: fix svar interface.
* compile.c (iseq_compile_each), yarvcore.h: fix to use new
svar interface for flip flop.
* eval.c: ditto.
* insns.def: ditto.
* include/ruby/intern.h: remove "rb_svar()" declaration.
Tue Jul 10 16:52:01 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (rb_iseq_compile): formatted if/else to switch statement.
Tue Jul 10 15:57:53 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bootstraptest/test_flip.rb: new test for flip-flop operator.
Tue Jul 10 14:50:01 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
Mon Jul 9 02:17:36 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* cont.c (cont_restore_1): workaround for x64-mswin64's SEH.
Sun Jul 8 02:08:53 2007 NARUSE, Yui <naruse@ruby-lang.org>
* lib/json.rb, lib/json/, ext/json/: import JSON 1.1.1
Sat Jul 7 21:59:29 2007 Tanaka Akira <akr@fsij.org>
* lib/pp.rb (PP::PPMethods#pp_hash): sort condition changed:
all keys have a same class which is kind of Comparable.
Sat Jul 7 17:12:37 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: use rb_bug() instead of rb_compile_error().
Sat Jul 7 16:12:48 2007 Koichi Sasada <ko1@atdot.net>
* parse.y: fix node construction (around f_margs).
[ruby-dev:31143]
* bootstraptest/test_block.rb: add a test for above.
* insnhelper.ci: fix indent.
Sat Jul 7 15:36:50 2007 Tanaka Akira <akr@fsij.org>
* lib/pp.rb (PP::PPMethods#pp_hash): sort if
all keys are strings, symbols or integers.
Sat Jul 7 15:30:05 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
fix to pass nil as block parameter to yielded block.
[ruby-dev:31147]
* bootstraptest/test_block.rb: add a test for above.
Fri Jul 6 19:55:10 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/irb.rb: typo. Thanks, Giles Bowkett.
* lib/irb/completion.rb: support Ruby1.9 changing return value
String to Symbol for Object#methods, etc. [ruby-dev:31148].
Fri Jul 6 18:20:50 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/runner.rb: fix load path.
* common.mk: fix "test" rule to run with "btest".
* rubytest.rb, sample/test.rb: fix to show tests progress.
Fri Jul 6 15:37:48 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_iterator.rb: fix test to 1.9 spec.
Fri Jul 6 15:21:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_interrupt): suppress a gcc's officious warning.
Fri Jul 6 14:57:12 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (keyword_to_name): constified.
* ext/ripper/eventids2.c (token_to_eventid): ditto.
Fri Jul 6 14:50:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bootstraptest/runner.rb: added --quiet option.
Fri Jul 6 14:35:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (f_marg): wrap f_norm_arg assignment node with NODE_LIST.
[ruby-dev:31141]
Fri Jul 6 12:15:01 2007 Tanaka Akira <akr@fsij.org>
* test/ruby/sentgen.rb: new file.
* test/ruby/test_assignment.rb: tests implemeneted using assignment
generator and emulator.
Fri Jul 6 03:06:58 2007 Koichi Sasada <ko1@atdot.net>
* insns.def: remove unused code.
* compile.c (compile_massign): fix to invoke to_splat on
splat rhs (example: *a = *nil). [ruby-dev:31136]
* bootstraptest/test_massign.rb: add tests for above.
* compile.c (iseq_compile_each): disable excess optimization.
[ruby-dev:31126]
Fri Jul 6 02:08:25 2007 Koichi Sasada <ko1@atdot.net>
* insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
[ruby-dev:31138].
* bootstraptest/test_literal.rb: add tests for above.
Thu Jul 5 19:45:55 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h: rename rb_control_frame_t#magic to flag.
* vm.h: add VM_FRAME_TYPE() and VM_FRAME_FLAG().
* cont.c, insnhelper.ci, insns.def, vm.c, vm_dump.c,
vm_evalbody.ci, yarvcore.c: apply above changes.
Thu Jul 5 19:16:14 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_basicinstructions.rb: remove an assertion using
unsupported hash literal (such as {1, 2}).
* test/ruby/test_hash.rb: ditto.
Thu Jul 5 19:12:22 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ruby.c: Qfalse is VALUE, not pointer.
Thu Jul 5 18:42:01 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): add break catch point.
* insns.def (throw): support correct "break" and "return".
this commit achieve that "make test" passes all tests.
* vm.c: ditto.
Thu Jul 5 18:44:12 2007 Tanaka Akira <akr@fsij.org>
* parse.y (mlhs_basic): use mlhs_post after tSTAR.
[ruby-dev:31109]
Thu Jul 5 18:27:58 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
ruby_nerrs): purge global variables.
* ruby.c (proc_options): moved do_print and do_loop options
handling from ruby_process_options().
Thu Jul 5 16:37:34 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* numeric.c (int_pow): fix previous nubu's commit.
* test/ruby/test_fixnum.rb: new test.
Thu Jul 5 15:56:06 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (int_pow): even number multiplication never be negative.
Thu Jul 5 10:42:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby/{node,ruby}.h, ruby.c: added enum constants for gdb
support. [ruby-dev:31066]
* .gdbinit: some improvements.
Thu Jul 5 10:13:08 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (global_symbols.last_id): reduce unused ID numbers.
* include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
constified.
Wed Jul 4 23:36:27 2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/webrick/httpauth/authenticator.rb
(WEBrick::HTTPAuth::Authenticator#check_scheme): auth-scheme must be
treated as a case-insensitive token according to RFC 2617 section 1.2.
Wed Jul 4 18:30:04 2007 Tanaka Akira <akr@fsij.org>
* parse.y (mlhs_inner): new rule. [ruby-dev:31132]
Wed Jul 4 05:11:57 2007 Koichi Sasada <ko1@atdot.net>
* iseq.c (set_relation): added.
Wed Jul 4 04:58:30 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (caller_setup_args): fix to show correct class
on an error message (ex: m(&1)). [ruby-dev:31101]
Wed Jul 4 04:30:32 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (compile_array, iseq_compile_each): fix about array
generation in void context. [ruby-dev:31102]
* bootstraptest/test_literal.rb: add a test for above.
Wed Jul 4 04:07:00 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (compile_array): ignore NODE_ZARRAY.
[ruby-dev:31110]
* bootstraptest/test_method.rb: add a test for above.
Wed Jul 4 04:04:02 2007 Koichi Sasada <ko1@atdot.net>
* compile.h: fix debug print level.
Wed Jul 4 03:52:55 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): support v[&b]= type method call.
[ruby-dev:31094]
* bootstraptest/test_method.rb: add a test for above.
Wed Jul 4 03:43:29 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (compile_massign): fix massign compilation
(example: a, *v, (*x) = ...). [ruby-dev:31107]
* bootstraptest/test_massign.rb: add tests for above.
Tue Jul 3 23:12:29 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* include/ruby/onigiruma.h (ONIG_EXTERN): use RUBY_EXTERN if defined.
* regenc.h: include ruby/defines.h.
* regint.h: x64-mswin64 support.
Tue Jul 3 13:47:44 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
Mon Jul 2 21:45:53 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: rename iseq_translate_direct_threaded_code()
to iseq_translate_threaded_code().
* eval_intern.h, yarvcore.h: mv EXEC_EVENT_HOOK() and
exec_event_hooks() to yarvcore.h.
* insnhelper.ci, vm.c: mv yarv_finish_insn_seq to vm.c.
* insns.def (opt_call_c_function): fix to use RESTORE_REGS().
* iseq.c (rb_iseq_build_for_ruby2cext): fix to allocate iseq.
Mon Jul 2 11:59:34 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insns.def (defineclass): suppress a warning.
* insns.def (opt_call_c_function): should raise the thrown exception
instead of returning it.
Mon Jul 2 08:53:47 2007 Koichi Sasada <ko1@atdot.net>
* eval_intern.h, yarvcore.h: move declaration of sysstack_error
to yarvcore.h.
* iseq.c: fix symbol name (:toplevel -> :top).
* lib/vm/instruction.rb, template/vm.inc.tmpl: replacable
current file name.
Mon Jul 2 05:29:07 2007 Koichi Sasada <ko1@atdot.net>
* compile.c, iseq.c: fix iseq some of load/store process.
Mon Jul 2 03:09:36 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
rename structure names and field names.
* insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
* iseq.c: add rb_iseq_build_for_ruby2cext().
* yarvcore.h, vm.h: move declaration of rb_insn_func_t
to yarvcore.h.
Sun Jul 1 03:25:53 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.h, vm.h: some refactoring.
remove useless comments, etc.
Sun Jul 1 03:02:29 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h: some refactoring on rb_iseq_t.
rename some variable names, add comments, etc.
* compile.c, iseq.c, proc.c, vm.c: ditto.
Sun Jul 1 02:57:57 2007 Koichi Sasada <ko1@atdot.net>
* vm.h: rename insn_func_type to rb_insn_func_type.
* vm_evalbody.ci: ditt.
* insns.def: add opt_call_native_compiled instruction
instead of opt_call_native_compiled.
Sat Jun 30 00:17:00 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex): return non-valid token for an invalid
instance/class variable name. a patch from Yusuke ENDOH
<mame AT tsg.ne.jp>. [ruby-dev:31095]
Fri Jun 29 23:38:06 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (stmts): fix for ripper.
Fri Jun 29 21:55:48 2007 Koichi Sasada <ko1@atdot.net>
* parse.y: fix to show line number of blank block.
[ruby-dev:31093]
Fri Jun 29 20:51:04 2007 Tanaka Akira <akr@fsij.org>
* lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
follow Ruby 1.8.
Fri Jun 29 17:10:14 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* debug.h: constified.
* debug.c (ruby_set_debug_option): separated from main.c.
* gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed.
Fri Jun 29 16:39:06 2007 Koichi Sasada <ko1@atdot.net>
* proc.c (proc_new): fix to return a proc object
which block is contained ([ruby-dev:31056]).
Fri Jun 29 15:43:59 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (fix_pow): get rid of division by zero. reported by
Yusuke ENDOH <mame AT tsg.ne.jp> [ruby-dev:31040]
* numeric.c (int_round): do nothing when rounding by zeroth digit.
check underflow. [ruby-dev:31043]
Fri Jun 29 15:32:00 2007 Koichi Sasada <ko1@atdot.net>
* configure.in: add fastcall attribute check.
Fri Jun 29 14:51:24 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (assoc_list): remove expanded hash literal (no splat).
* lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::EOFError): adapt
to new syntax.
Fri Jun 29 14:48:18 2007 Koichi Sasada <ko1@atdot.net>
* tool/insns2vm.rb, lib/vm/instruction.rb: move process body
to lib/vm/instruction.rb.
* common.mk: fix aotc rule.
experimental. bin/ruby2cext is not added yet.
Fri Jun 29 11:23:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (dsym): return non-null NODE even if yyerror(). based on a
patch from Yusuke ENDOH <mame AT tsg.ne.jp>. [ruby-dev:31085]
Thu Jun 28 23:29:30 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (assoc_list): odd number check only for NODE_ARRAY.
[ruby-dev:31082]
Thu Jun 28 22:24:33 2007 Koichi Sasada <ko1@atdot.net>
* win32/Makefile.sub: define FUNC_FASTCALL macro.
* vm.h: fix to use FUNC_FASTCALL macro.
TODO: add FUNC_FASTCALL macro by configure.
Thu Jun 28 19:38:53 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: fix to remove -Wall warnings on gcc.
* compile.c (make_name_with_str): removed. use rb_sprintf() instead.
Thu Jun 28 18:53:01 2007 Tanaka Akira <akr@fsij.org>
* bignum.c (rb_big_hash): fix hash area.
Thu Jun 28 15:00:06 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/stringio/stringio.c (strio_getline): local variable to be
initialized. [ruby-dev:31077]
Thu Jun 28 11:30:39 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* gc.c (rb_obj_id): use SIGNED_VALUE instead of long.
Thu Jun 28 05:01:56 2007 Koichi Sasada <ko1@atdot.net>
* common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
* vm.c (rb_vm_set_finish_env): add a cast.
* vm.h: support __fastcall for MSVC.
Thu Jun 28 02:12:08 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/runner.rb: fix to untouch $:.
Thu Jun 28 02:03:07 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (setup_args): change parameter type.
Thu Jun 28 02:03:39 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* parse.y (rb_intern2): unconstify cast.
Thu Jun 28 01:44:31 2007 Tanaka Akira <akr@fsij.org>
* parse.y (rb_intern2): don't allocate a string object at first.
[ruby-dev:31064]
Thu Jun 28 01:24:02 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/runner.rb: fix to show file name.
* bootstraptest/test_*.rb: add bootstarp tests.
Thu Jun 28 01:22:15 2007 Koichi Sasada <ko1@atdot.net>
* include/ruby/node.h, parse.y, gc.c, iseq.c: remove NODE_CREF.
Thu Jun 28 01:19:43 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix popped backref and others.
([ruby-dev:31068]).
* compile.c (iseq_compile_each): remove needless statements.
Wed Jun 27 23:51:33 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c: remove unused functions.
Wed Jun 27 20:46:05 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
x64-mswin64 port.
Wed Jun 27 20:31:07 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_translate_direct_threaded_code): fix prototype
function name.
* vm.h: add correct cast.
Wed Jun 27 17:08:42 2007 Koichi Sasada <ko1@atdot.net>
* vm_evalbody.ci: support OPT_CALL_THREADED_CODE.
* insns.def, vm.c, vm.h: ditto.
* vm.h: add VM_CFP_CNT() and VM_SP_CNT().
Wed Jun 27 04:23:47 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix type error.
Wed Jun 27 03:26:15 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (compile_massign), insns.def (expandarray): support
postarg with massign (a, *b, c = ...).
* bootstraptest/test_massign.rb: add tests for above.
* compile.h: fix debug macro names.
Wed Jun 27 00:18:41 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_clear): need to check STR_EMBED_P() before
free()ing memory. a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
[ruby-dev:31062]
Tue Jun 26 16:39:01 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (proc_getgroups): use GIDT2NUM for rb_gid_t.
Tue Jun 26 16:28:24 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (rb_thread_wait_fd_rw): terminate fdset.
Tue Jun 26 16:26:58 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* regint.h: IL32LLP64 support.
Tue Jun 26 16:22:45 2007 Koichi Sasada <ko1@atdot.net>
* iseq.c (ruby_node_name): update node names.
Tue Jun 26 15:21:20 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* include/ruby/ruby.h: IL32LLP64 support.
* bignum.c (bigfixize, rb_cstr_to_inum): ditto.
* insns.def (opt_plus, opt_minus, opt_mult): ditto.
Tue Jun 26 15:04:06 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_fiber_s_new): revert initializing VM stack.
* yarvcore.c (th_init2): ditto.
* vm.c, vm.h: fix to stop using Qundef on VM stack. According to
this change, VM stack should not include Qundef value.
* insns.def (putundef): removed.
* compile.c (iseq_compile_each): ditto.
* eval.c (eval): fix spacing.
Tue Jun 26 04:03:50 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (vm_yield_with_cfunc), proc.c: fix Method#to_proc
to return lamba Proc ([ruby-dev:31021], [ruby-dev:31037]).
Tue Jun 26 03:46:08 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_fiber_s_new): fix to clear rb_thread_t#tag.
[ruby-dev:30995]
Tue Jun 26 03:38:31 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_fiber_s_new), yarvcore.c (th_init2): fix to clear
VM stack ([ruby-dev:31046]).
Tue Jun 26 03:15:27 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: rename setup_arg() to setup_args().
fix to use setup_args() at processing NODE_YIELD.
Tue Jun 26 02:50:24 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (setup_arg): support kind of "m(*ary, x)" method call.
([ruby-dev:31048]).
Tue Jun 26 00:28:44 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci, vm.c: complete block parameter support.
post arguments, optional arguments, block argument.
* compile.c, parse.y: fix {|a|} parameter.
* insnshelper.ci, insns.def: revert caller_setup_args() option
(need_block_check) parameter.
Mon Jun 25 20:18:44 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* gc.c (RVALUE): in RVALUE and RBasic, flags must be the same type.
Mon Jun 25 18:02:55 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/pty/extconf.rb: skip wince and win64.
Mon Jun 25 17:59:32 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* include/ruby/node.h (NODE_LMASK, nd_line): shouldn't use int and/or
long carelessly.
Mon Jun 25 11:36:35 2007 Koichi Sasada <ko1@atdot.net>
* gc.h: add RUBY_ prefix to debug macros.
* cont.c, proc.c, yarvcore.c,
* gc.c: define ruby_gc_debug_indent variable to debug mark/free.
* vm.c, insnhelper.ci: rename some functions to vm_* or rb_vm_*.
move some functions, definitions, declarations to suitable files.
* eval.c, yarvcore.h, eval_error.ci, insnhelper.ci: ditto.
Mon Jun 25 09:45:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_error.ci, eval_jump.ci, eval_method.ci, eval_safe.ci: c-mode.
Mon Jun 25 05:27:54 2007 Koichi Sasada <ko1@atdot.net>
* eval.c: remove ruby_current_node and change eval() prototype.
fix to use rb_sourcefile/line() instead of ruby_sourcefile/line.
* error.c, eval_error.ci, eval_load.c, eval_safe.ci, gc.c,
include/ruby/intern.h, parse.y, process.c, ruby.c: ditto.
* vm.c: fix spaces.
Mon Jun 25 04:20:14 2007 Koichi Sasada <ko1@atdot.net>
* eval_*.h: rename to eval_*.ci.
* common.mk: ditto.
* eval_error.ci: remove ruby_set_current_source().
* error.c, eval.c, ruby.c: ditto.
* eval_safe.c, proc.c: remove unused macros.
Mon Jun 25 03:37:20 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.ci (caller_setup_args): add need_block_check option.
* insns.def: ditto.
* yarvcore.h: add GetCoreDataFromValue().
Mon Jun 25 02:14:30 2007 Koichi Sasada <ko1@atdot.net>
* call_cfunc.ci: removed.
* insnhelper.ci: added. this function includes all functions that
vm insns need.
* common.mk: ditto.
* insnhelper.h, vm.h, vm.c: move some declaration.
* gc.h: remove GC_CHECK() macro because GC.stress is more useful.
* compile.c, iseq.c, vm_dump: ditto.
* gc.h, thread.c: move a prototype decalaration.
* debug.c, debug.h: rename some functions.
* compile.h: ditto.
Mon Jun 25 00:45:02 2007 Koichi Sasada <ko1@atdot.net>
* insns.def (invokesuper): fix error message.
Mon Jun 25 00:14:13 2007 Koichi Sasada <ko1@atdot.net>
* vm.c: some refactoring.
* rename th_* to vm_*.
* remove unused variables functions.
* add prototypes.
* blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
Sun Jun 24 22:32:00 2007 Koichi Sasada <ko1@atdot.net>
* eval_method.h (rb_add_method): fix to check 0.
Sun Jun 24 22:00:17 2007 Koichi Sasada <ko1@atdot.net>
* insn_send.ci: removed.
* common.mk: ditto.
* vm.c (vm_call_bmethod), isnsn.def: added. fix to use this
function instead of using goto.
* vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
* vm.c (vm_method_missing): renamed from eval_methdo_missing().
* vm_evalbody.ci: remove tmp_* variables.
* insnhelper.h: add some macros.
* insns.def: forbid zsuper from method defined by define_method().
* test/ruby/test_super.rb: ditto.
Sun Jun 24 20:01:08 2007 Koichi Sasada <ko1@atdot.net>
* vm_macro.def: removed.
* insn_send.ci: added. this file includes send instruction body.
* common.mk: ditto.
* insns.def: ditto.
* tool/insns2vm.rb: ditto.
* vm.c: ditto.
Sun Jun 24 19:30:37 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.h (RESTORE_REGS): add do/while(0) around macro.
* vm.c, vm_macro.def: remove macro_eval_invoke_func() and
add vm_setup_method(). use it instead.
Sun Jun 24 19:02:33 2007 Koichi Sasada <ko1@atdot.net>
* vm.c, vm_macro.def : remove macro_eval_invoke_cfunc() and
add vm_call_cfunc().
Sun Jun 24 17:54:13 2007 Koichi Sasada <ko1@atdot.net>
* insns.def, vm.c: add/fix stack overflow check.
Sun Jun 24 17:28:52 2007 Koichi Sasada <ko1@atdot.net>
* insnhelper.h: change CHECK_STACK_OVERFLOW() to throw exception.
* vm.c (caller_setup_arg), vm_macro.def: remove
macro_eval_setup_send_arguments and add caller_setup_arg().
* insns.def: ditto.
* bootstraptest/test_method.rb: add splat arg tests.
Sun Jun 24 16:35:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (proc_to_s): used a variable before initialized.
Sun Jun 24 16:05:45 2007 Koichi Sasada <ko1@atdot.net>
* vm.c (callee_setup_arg): added. support correct post arg.
* vm_macro.def (macro_eval_invoke_func): fix to use
callee_setup_arg.
* compile.c (set_arguments): adjust for above changes.
* compile.c (iseq_compile_each): ditto.
* iseq.c (ruby_iseq_disasm): ditto.
* yarvcore.h: add rb_iseq_t#post_arg_start and arg_size.
* bootstraptest/test_method.rb: add post arg tests.
Sun Jun 24 16:10:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* proc.c (proc_to_s): suppress warning, and reduced duplicated code.
Sun Jun 24 15:33:47 2007 Koichi Sasada <ko1@atdot.net>
* bootstraptest/runner.rb: set default directory to
'/tmp/bootstraptest.tmpwd' and add --dir option.
fix to output driver and target information.
* common.mk: fix to run btest on BASERUBY and
add OPTS to pass option ("make btest OPTS=...").
Sun Jun 24 03:05:00 2007 Tanaka Akira <akr@fsij.org>
* enum.c (enum_minmax): fix SEGV by [].minmax.
Sat Jun 23 17:18:19 2007 Tanaka Akira <akr@fsij.org>
* re.c (match_inspect): MatchData#inspect implemented.
Sat Jun 23 15:00:16 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_minmax): new method to get the minimum and maximum
values from the enumerable at once.
* enum.c (enum_minmax_by): ditto.
Sat Jun 23 01:25:40 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_assoc): new method.
* hash.c (rb_hash_rassoc): ditto.
* hash.c (rb_hash_flatten): ditto.
Fri Jun 22 23:55:59 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_upto): add optional argument to specify
exclusiveness.
* range.c (range_step): use String#upto with optional argument.
* range.c (range_each): ditto.
Fri Jun 22 19:55:51 2007 Tanaka Akira <akr@fsij.org>
* proc.c (proc_to_s): revert the change from %p to %lx at YARV
merge time.
Fri Jun 22 19:33:49 2007 Tanaka Akira <akr@fsij.org>
* proc.c (proc_to_s): show is_lambda.
Thu Jun 21 20:36:12 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_sort): remove hash specific implementation.
Thu Jun 21 20:28:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_select): returns new hash, not assoc array.
[ruby-core:11504]
* hash.c (env_select): ditto.
Thu Jun 21 23:08:19 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (rb_intern2): ID_JUNK test based on len, not by NUL.
Thu Jun 21 19:42:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* yarvcore.c (rb_thread_mark): mark also thrown_errinfo.
Thu Jun 21 17:13:44 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_intern2): name may not be NUL-terminated.
Wed Jun 20 08:27:57 2007 Tanaka Akira <akr@fsij.org>
* eval_error.h (error_print): show full stacktrace on
non-SystemStackError.
Wed Jun 20 04:45:39 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_intern2): use rb_intern2 to intern without trailing
equal sign.
* parse.y (rb_intern2, ripper_id2sym): fixed indent.
Tue Jun 19 10:55:05 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
pointer. [ruby-Bugs-11659]
Mon Jun 18 08:47:54 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/{extconf.rb,ossl_ssl_session.c}:
Fix ruby-Bugs-11513.
* ext/openssl/ossl_pkey_ec.c
New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
By default output the same key form as the openssl command.
* ext/openssl/ossl_rand.c
New method Random.status?
* test/openssl/test_ec.rb
New tests.
Mon Jun 18 17:04:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_load.c (rb_require_safe, ruby_init_ext): load with ruby level
cfp. [ruby-core:10779]
* eval_intern.h, vm.c (rb_vm_call_cfunc): new function to call a
function with ruby level cfp.
Mon Jun 18 16:57:24 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (yycompile): disable trace while creating ruby_debug_lines.
[ruby-talk:253586]
* thread.c (ruby_suppress_tracing): new function to call a function
with suppressing trace.
* lib/debug.rb, lib/tracer.rb: for YARV.
Mon Jun 18 13:54:36 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_cleanup): return EXIT_FAILURE if any exceptions occured
in at_exit blocks. [ruby-core:11263]
Mon Jun 18 02:49:16 2007 Koichi Sasada <ko1@atdot.net>
* vm.c (env_mark): fix to mark block.proc.
* vm.c (th_make_proc_from_block): set created proc to block->proc.
Mon Jun 18 02:48:12 2007 Koichi Sasada <ko1@atdot.net>
* vm_dump.c (vm_stack_dump_raw): hide VM stack trace.
Mon Jun 18 02:43:53 2007 Koichi Sasada <ko1@atdot.net>
* signal.c (sigsegv): clear gc_stress flag on SEGV.
Mon Jun 18 01:14:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* variable.c (rb_path2class): get rid of dangling pointer caused by
optimized out value.
* variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,
rb_generic_ivar_table, generic_ivar_get, generic_ivar_set,
generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar,
rb_free_generic_ivar, rb_copy_generic_ivar,
rb_obj_instance_variables): suppress warnings.
Sun Jun 17 11:11:07 2007 Tanaka Akira <akr@fsij.org>
* eval.c (rb_method_missing): avoid a warning "too many arguments
for format string" on "./ruby -ve 'def m() super end; m'".
Sat Jun 16 22:24:17 2007 Tanaka Akira <akr@fsij.org>
* gc.c (garbage_collect): re-introduce ruby_current_node marking code.
[ruby-dev:31005]
Sat Jun 16 21:37:43 2007 Tanaka Akira <akr@fsij.org>
* gc.c (gc_sweep): re-introduce heap extension strategy change.
[ruby-dev:31005]
Fri Jun 15 22:59:37 2007 Tanaka Akira <akr@fsij.org>
* .gdbinit: new file to ease debugging using gdb.
Fri Jun 15 22:33:55 2007 Tanaka Akira <akr@fsij.org>
* signal.c (default_handler): func argument removed.
(trap_handler): support SYSTEM_DEFAULT. call default_handler
internally.
(sig_trap): don't call default_handler.
[ruby-dev:30999]
Fri Jun 15 22:33:29 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (realclean): separate local and ext.
* ext/extmk.rb: not remove unrelated directories.
Fri Jun 15 20:50:02 2007 Tanaka Akira <akr@fsij.org>
* keywords: enclose C code in declaration section by %{ and %} to
avoid extra semicolon after #ifdef RIPPER.
pointed by eban.
Fri Jun 15 18:56:52 2007 Tanaka Akira <akr@fsij.org>
* signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrong
trap error because SIG_DFL may be zero.
Fri Jun 15 15:55:55 2007 Koichi Sasada <ko1@atdot.net>
* insns.def (setconstant, toregexp): fix to mark object correctly.
Fri Jun 15 13:24:18 2007 Koichi Sasada <ko1@atdot.net>
* hash.c: exchange semantics of Hash#each and Hash#each_pair.
pointed out by [ruby-dev:30997].
* test/ruby/test_iterator.rb: ditto.
* test/ruby/test_yield.rb: ditto.
Fri Jun 15 12:38:29 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_iterator.rb: remove debug code (GC.stress=true).
Fri Jun 15 12:25:33 2007 Koichi Sasada <ko1@atdot.net>
* vm.c (th_yield_setup_args): |v| should work as |v,|.
ex) def m;yield 1, 2; end; m{|v| p v} #=> 1
* parse.y: apply above change for "for" statement.
* test/ruby/test_assignment.rb: ditto
* test/ruby/test_basicinstructions.rb: ditto.
* test/ruby/test_iterator.rb: ditto.
* test/ruby/test_yield.rb: ditto.
* compile.c (iseq_compile_each): fix debug.
Fri Jun 15 12:22:10 2007 Koichi Sasada <ko1@atdot.net>
* eval.c (ruby_finalize_1): rb_thread_t#errinfo should be clear with
Qnil.
Fri Jun 15 12:20:11 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_cont_call): forbid cross fiber continuation call.
* test/ruby/test_fiber.rb: ditto.
Fri Jun 15 12:14:07 2007 Koichi Sasada <ko1@atdot.net>
* sample/test.rb: fix to show line information whether test succeeds.
Thu Jun 14 17:16:05 2007 Tanaka Akira <akr@fsij.org>
* eval_load.c (Init_load): delay allocating an array for rb_load_path
to avoid GC problem in very early stage.
(RUBY_GC_STRESS causes GC in such stage.)
* variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in
very early stage.
* thread.c (thread_cleanup_func) [IA64]: clear register stack position.
(thread_start_func_2) [IA64]: record the beginning of register
stack using extra argument.
(rb_gc_save_machine_context) [IA64]: record the end of register
stack.
* gc.c [IA64] (SET_STACK_END): record the end of register stack.
(garbage_collect) [IA64]: use recorded register stack area for
GC marking.
(yarv_machine_stack_mark) [IA64]: GC mark from the register stack
area.
* yarvcore.c [IA64] (rb_gc_register_stack_start): defined.
(Init_VM): store th->self on stack to fix GC problem.
(Init_yarv) [IA64]: initialize the beginning of register stack.
* yarvcore.h (struct rb_thread_struct) [IA64]: new members for
register stack area.
* thread_pthread.ci (thread_start_func_1) [IA64]: call
thread_start_func_2 with the end of register stack.
* cont.c (struct rb_context_struct) [IA64]: new members for register
stack area.
(cont_mark) [IA64]: GC mark from register stack area.
(cont_free) [IA64]: free saved register stack.
(cont_save_machine_stack) [IA64]: record the position and contents
of the register stack.
(cont_capture): store cont->self on stack to fix GC problem.
(cont_restore_1) [IA64]: restore the register stack.
[IA64] (register_stack_extend): new function.
(cont_restore_0) [IA64]: call register_stack_extend instead of
cont_restore_1.
[ruby-dev:30982]
Thu Jun 14 17:09:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser): handle more
extensions. [ruby-dev:30972]
Thu Jun 14 14:40:42 2007 Tanaka Akira <akr@fsij.org>
* lib/securerandom.rb: document updated.
suggested by NaHi. [ruby-dev:30966]
Wed Jun 13 22:42:06 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (garbage_collect): update IA64 register stack code.
[ruby-dev:30971]
Wed Jun 13 06:05:12 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (darwin): prohibit loading extension libraries to
miniruby.
Tue Jun 12 21:50:51 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (call_args): no allow splat after assocs. takes
consistency over compatibility.
* parse.y (call_args2): ditto
Tue Jun 12 14:53:51 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
use it. [ruby-core:10909]
* lib/mkmf.rb (find_header): use header names in the message.
Sun Jun 10 18:37:13 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/probeprofiler/probeprofiler.c: clean warnings.
Sun Jun 10 18:32:24 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* missing/isinf.c, missing/dup2.c, missing/strtod.c, missing/x68.c,
missing/alloca.c: use "ruby/config.h".
Sun Jun 10 17:49:20 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (install_recursive): should check parent directories of
the destination. [ruby-dev:30947]
Sun Jun 10 16:59:39 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (do_block, brace_block): fix line numbers. [ruby-dev:30831]
Sun Jun 10 16:57:20 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (install_recursive): add :glob option rather than
using FNM_DOTMACH.
* instruby.rb (ext-comm): make header directory first.
Sun Jun 10 16:10:58 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* test/ruby/test_beginendblock.rb: typo.
Sun Jun 10 16:07:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (install_recursive): skip .svn directories.
Sun Jun 10 15:44:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/Makefile.sub (config.status): rubyhdrdir was missing.
Sun Jun 10 15:26:36 2007 Tanaka Akira <akr@fsij.org>
* Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
Sun Jun 10 15:11:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
* ext/extmk.rb: prepend also topdir to mflags at last.
Sun Jun 10 13:47:36 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
get rid of invoking shell. [ruby-dev:30942]
Sun Jun 10 12:56:46 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* include/ruby: moved public headers.
* instruby.rb (install_recursive): skip backup files.
* instruby.rb (ext-comm): install only current platform headers.
Sun Jun 10 10:42:04 2007 Tanaka Akira <akr@fsij.org>
* lib/securerandom.rb: renamed from lib/secrand.rb.
suggested by NaHi. [ruby-dev:30934]
Sat Jun 9 06:40:05 2007 Tanaka Akira <akr@fsij.org>
* lib/secrand.rb: rename SecRand() to SecRand.random_number.
suggested by NaHi. [ruby-dev:30934]
Fri Jun 8 16:34:20 2007 Tanaka Akira <akr@fsij.org>
* ext/zlib/zlib.c (gzfile_s_open): use FilePathValue to support
to_path.
Fri Jun 8 16:11:00 2007 Koichi Sasada <ko1@atdot.net>
* eval_jump.h: th->errinfo should clear with nil.
Fri Jun 8 14:53:28 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (call_args): allow splat argument after unpacked
assocs like 1.8 does.
* parse.y (call_args): ditto.
Fri Jun 8 14:26:18 2007 Tanaka Akira <akr@fsij.org>
* lib/secrand.rb: new file for secure random interface.
* lib/cgi/session.rb: use secrand for generating cookies.
Fri Jun 8 12:44:37 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* {win32,wince}/Makefile.sub: add lex.c rule.
Fri Jun 8 11:54:18 2007 Tanaka Akira <akr@fsij.org>
* lex.c.blt: moved from lex.c.
* Makefile.in: use lex.c.blt if gperf is not available.
[ruby-list:8212], [ruby-list:8214], [ruby-list:24667],
[ruby-talk:120857], [ruby-dev:28102]
Thu Jun 7 21:38:39 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (rb_thread_execute_interrupts): invoke ensure when
main thread exits.
Thu Jun 7 19:02:48 2007 Tanaka Akira <akr@fsij.org>
* lib/pp.rb: call original "method" method instead of redefined one.
Thu Jun 7 17:20:57 2007 Koichi Sasada <ko1@atdot.net>
* iseq.c (prepare_iseq_build): freeze filename and name string.
* variable.c: freeze class name string.
Thu Jun 7 12:48:33 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (cont_restore_1): fix to check root fiber [ruby-dev:30911].
* test/ruby/test_fiber.rb: add a test.
Thu Jun 07 07:24:36 2007 NARUSE, Yui <naruse@ruby-lang.org>
* lib/json/common.rb: Ponder offering parse! method.
* lib/json/editor.rb: be a bit more robust while loading data.
* ext/json/ext/{generator,parser}/extconf.rb:
add a have_header directive for st.h
* test/json: fix some tests.
Thu Jun 7 03:29:18 2007 Koichi Sasada <ko1@atdot.net>
* test_fiber.rb: add a test (Continuation and Fiber).
Thu Jun 7 03:17:24 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (cont_new): add debug message.
* cont.c (cont_restore_1): copy stack information from fiber.
* cont.c (rb_fiber_s_new): fix to mark created fiber.
* test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
* yarvcore.c (thread_free): fix to skip freeing stack if root fiber
is available.
Thu Jun 7 01:03:20 2007 Koichi Sasada <ko1@atdot.net>
* eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
* cont.c (rb_fiber_start): remove zero-clearing tag.
Wed Jun 6 20:23:46 2007 Koichi Sasada <ko1@atdot.net>
* insns.def (invokeblock): fix of splat argument.
(splat same as normal method dispatch)
Wed Jun 6 16:27:25 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* insns.def: fixed indentation.
Wed Jun 6 10:58:23 2007 Koichi Sasada <ko1@atdot.net>
* eval.c (rb_yield): fix to check Qundef.
Wed Jun 6 10:57:45 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_continuation.rb: add a test for last commit.
Wed Jun 6 10:55:42 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_cont_call): forbid calling dead fiber with
Continuation#call.
Wed Jun 6 10:50:01 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix around yield arguments
(with NODE_ARGSCAT).
Wed Jun 6 02:50:53 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (rb_fiber_start): clear th->tag and check error to fix
[ruby-dev:30888] and [ruby-dev:30889].
* eval_intern.h: fix rb_fiber_start() prototype.
* test/ruby/test_fiber.rb: add tests for above.
Wed Jun 6 02:40:20 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* insnhelper.h, insns.def (DEC_SP): shouldn't use unary minus operator
in pointer operation. some compilers (such as VC++8 x64) cannot deal
it with expected way.
Wed Jun 6 02:19:48 2007 Koichi Sasada <ko1@atdot.net>
* parse.y (new_yield), compile.c (iseq_compile_each): fix
passing parameter.
* eval.c, eval_jump.h: simplify rb_yield*.
* proc.c (proc_mark): fix to mark proc->block.proc.
* proc.c (Init_Proc): add Proc#lambda?
* test/ruby/test_lambda.rb: add some tests.
* vm.c (invoke_block): fix to check lambda block or not.
* vm.c (th_yield_setup_args): fix to check arguments size
when lambda block.
Tue Jun 5 16:30:38 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_f_p): returns arguments to intervene. [ruby-dev:29736]
Tue Jun 5 14:07:55 2007 Koichi Sasada <ko1@atdot.net>
* insns.def (invokeblock): check block is created by lambda
or Proc.new.
* vm.c (block_proc_is_lambda): added.
Tue Jun 5 14:47:52 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/pp.rb (PP::PPMethods::seplist): revert last change to work
around wrapper bug. [ruby-dev:30840]
Tue Jun 5 14:11:15 2007 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-utf8/nkf.c (kanji_convert): Fix guess fallback.
Tue Jun 5 13:32:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
thread_pthread.ci, thread_win32.ci: fixed indentation.
* call_cfunc.ci: protoized.
* thread_win32.ci: fixed typo.
Tue Jun 5 13:17:11 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* call_cfunc.ci, compile.c, dir.c, eval.c, eval_jump.h, numeric.c,
pack.c, re.c, thread.c, thread_win32.ci, vm.c, vm_dump.c: fixed
indentation.
Mon Jun 4 21:15:45 2007 NARUSE, Yui <naruse@ruby-lang.org>
* lib/json.rb, lib/json, ext/json, test/json:
import JSON library.
* ext/nkf: import nkf.c rev:1.124
Support CP10001.
Mon Jun 4 20:52:58 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (int_round): should not just truncate.
Sat Jun 2 16:48:55 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (Fiber#pass): rename to Fiber#yield. Block parameter
of fiber body receive first yield values.
e.g.: Fiber.new{|x| p x}.yield(:ok) #=> :ok
* cont.c: rename rb_context_t#retval to rb_context_t#value.
* test/ruby/test_fiber.rb: ditto.
Sat Jun 2 16:45:21 2007 Koichi Sasada <ko1@atdot.net>
* proc.c (Init_Proc): remove a line break.
Sat Jun 2 01:27:27 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (int_round): small optimization to handle bignums.
Fri Jun 1 13:02:35 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* insnhelper.h (INC_SP): shouldn't cast ``x'' to unsigned type because
it might be a negative value.
* insnhelper.h, insns.def: shouldn't use unary minus operator in index
operator. some compilers (such as VC++8 x64) cannot deal it with
expected way.
Fri Jun 1 11:33:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (num_round): should convert self to Float.
[ruby-dev:30860]
Fri Jun 1 02:01:13 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (flo_round): now takes optional argument to specify
number of digits, like round() in Python/PHP.
* numeric.c (num_round): ditto.
Fri Jun 1 01:58:33 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (each_with_index_i): should work well with continuation.
a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
[ruby-dev:30846]
Thu May 31 17:27:53 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
argument unintentionally. [ruby-talk:253676]
Wed May 30 14:43:00 2007 Koichi Sasada <ko1@atdot.net>
* cont.c (cont_capture): store all local variables in heap
([ruby-dev:30832]).
* vm.c (th_stack_to_heap): added.
* test/ruby/test_continuation.rb: add a test for above.
* eval_intern.h (th_get_ruby_level_cfp): fix to clean code.
Wed May 30 13:32:34 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (ResponseParser#next_token): fixed
error message.
* lib/net/imap.rb (ResponseParser#parse_error): fixed
the condition not to refer @token.symbol unexpectedly.
Thanks, Dick Monahan.
Wed May 30 13:24:33 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (Net::FTP#transfercmd): skip 2XX
responses for some FTP servers.
Wed May 30 04:18:37 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_eval_cmd): just return if no exceptions.
[ruby-dev:30820]
Wed May 30 02:14:25 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* signal.c (interrupt_init): needs to pass nil for Interrupt.
[ruby-core:11038]
* signal.c (trap): fixed segfaults. [ruby-dev:30830]
Wed May 30 00:50:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* gc.c (rb_source_filename, obj_free): suppress warnings.
* gc.c (garbage_collect, yarv_machine_stack_mark): fixed typo.
http://bugs.debian.org/426267
Wed May 30 00:24:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (open_args, arg_ambiguous, parser_warning): should not use
rb_warning in the parser.
Tue May 29 12:31:33 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_opendir): removed duplicated code.
Tue May 29 10:55:24 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: fix bug around Continuation and Fiber.
* test/ruby/test_continuation.rb: add tests for Continuation.
Tue May 29 10:54:34 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
numbers.
Mon May 28 10:27:14 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* cont.c: fixed a function name.
Mon May 28 03:56:44 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: support Fiber. Check test/ruby/test_fiber.rb for detail.
Fiber is known as "Micro Thread", "Coroutine", and other terms.
At this time, only Fiber#pass is supported to change context.
I want to know more suitable method name/API for Fiber (... do you
know more suitable class name instead of Fiber?) as "suspend/resume",
"call", "yield", "start/kick/stop/restart", ....
* eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
Sat May 26 00:38:21 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_exec_internal): do nothing if no code.
* compile.c (rb_iseq_compile): check node if NULL before check
nd_type. [ruby-talk:252956]
Sat May 26 00:05:22 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
skip tests for exitstatus and termsig on the platforms where
signals not supported.
Fri May 25 16:04:47 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* yarvcore.c (Init_VM): wrap already initialized structs to use
it directly.
Fri May 25 11:09:47 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* regint.h (include): on some platform, defines.h redefines
SIZE_OF_LONG_LONG so shouldn't re-include config.h after included
defines.h.
* regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
Thu May 24 12:07:27 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: check across trap violation.
* eval.c, yarvcore.h: ditto.
Thu May 24 11:46:55 2007 Koichi Sasada <ko1@atdot.net>
* gc.c, yarvcore.c: fix to mark VM structure on startup.
* yarvcore.h: disable USE_CACHED_VALUE.
Thu May 24 01:54:53 2007 Koichi Sasada <ko1@atdot.net>
* cont.c: support callcc which everyone love.
incomplete. please give me bug reports.
* common.mk, inits.c, thread.c: ditto.
* yarvcore.c: export thread_mark().
* yarvcore.h: disable value cache option.
* eval_intern.h: set th_get_ruby_level_cfp to inline.
Wed May 23 15:39:02 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* common.mk: add a rule for regsyntax.c.
Wed May 23 10:31:53 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* oniguruma.h: updated to Oniguruma 5.7.0.
* regsyntax.c, unicode.c: new files along with Oniguruma 5.x.
Wed May 23 06:51:46 2007 URABE Shyouhei <shyouhei@ruby-lang.org>
* lib/cgi.rb (CGI#[]): get rid of exceptions being raised.
[ruby-dev:30740], Thanks Kentaro KAWAMOTO.
Wed May 23 05:49:49 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
load path to get rid of load pre-installed extensions/libraries.
[ruby-core:11017]
Tue May 22 16:37:36 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.c (set_arg0): support RSTRING_LEN on HP-UX. a patch from
WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>. [ruby-dev:30806]
Mon May 21 13:40:00 2007 Koichi Sasada <ko1@atdot.net>
* compile.c, vm_macro.def: support tail call optimization
(on default, this feature is not enabled).
* iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
option.
* sample/test.rb (test_ok): fix to adjust tailcall stack layout.
* insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
add opt_gt, opt_le instructions.
Mon May 21 03:34:06 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: CRAM-MD5 authentication did not work.
[ruby-dev:30770]
Sat May 19 10:26:01 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb (Date._parse): detects some OFX dates
(Of course not fully).
Sat May 19 03:08:05 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* enum.c (enum_inject): minor improvement. [ruby-dev:30792]
* enum.c (one_i): no needs to iterate once the result became false.
* enum.c (enum_one): fix for an example.
* enum.c (one_iter_i, none_iter_i): DRY.;
Sat May 19 01:07:42 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_inject): it is now can work without block. you
have to specify two argument method name as the first argument.
* enum.c (Init_Enumerable): reduce is new alias to inject.
Sat May 19 01:05:33 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (Init_File): method definition mismatch.
Fri May 18 16:44:04 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (Init_File): add to_path method to File objects.
Fri May 18 11:12:39 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
to DllMain instead of VirtualQuery so that loadpath becomes relative
from the DLL on WinCE too.
Thu May 17 17:03:11 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
Thu May 17 13:30:27 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (f_arg): remove typo from ripper description.
Thu May 17 13:23:38 2007 Koichi Sasada <ko1@atdot.net>
* parse.y, compile.c (set_arguments): fix to support in-paren
parameter (ex: def foo((a, b))).
Thu May 17 13:01:52 2007 Koichi Sasada <ko1@atdot.net>
* iseq.c (ruby_iseq_disasm): fix to show post arg info.
Thu May 17 12:56:52 2007 Koichi Sasada <ko1@atdot.net>
* debug.c (ruby_debug_node): fix to show node line.
Wed May 16 21:48:44 2007 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/logger.rb (Logger::Application): remove meaningless logdev
attribute and added logger attribute instead. [ruby-core:11143]
also added Logger#formatter rdoc comment.
Tue May 15 16:40:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/ruby/test_beginendblock.rb (test_endblockwarn): now parser
warnings emit source names and line numbers.
Tue May 15 15:01:38 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (init_stdhandle): stderr should be without buffering,
but mswin32 use buffering when stderr is not connected to tty.
Mon May 14 02:12:07 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_zip): a.zip(b,c) should return an array, not
enumerator.
* array.c (rb_ary_zip): a.zip(b,c) should return array with size
truncated to the size of its shortest argument array.
[incompatible]
Mon May 14 01:54:15 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_choice): should return nil when the array is
empty.
Sat May 12 18:26:36 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb (tokens): forgot to add strip. [ruby-core:11120]
* test/net/http/test_http.rb: test Net::HTTP.post_form.
Fri May 11 15:27:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* iseq.c (iseq_data_to_ary): internal IDs must not be exposed.
[ruby-core:11073]
* parse.y (internal_id_gen): now returns scope local ID instead of
global one.
Thu May 10 15:15:53 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* test/ruby/test_super.rb: add tests.
Thu May 10 15:14:05 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/iconv/iconv.c (iconv_s_conv): rdoc fix.
Thu May 10 15:09:23 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (POINTER_P): pointer may be larger than long.
* parse.y (vtable_size, vtable_included, vtable_tblcpy,
vtable_to_tbl): constified.
Thu May 10 10:13:14 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (rb_thread_priority): rdoc fix; the initial value is
inherited from the creating thread. [ruby-core:10607]
Wed May 9 12:28:57 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
aliases of quo. [ruby-dev:30771]
Tue May 8 23:39:09 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb (Date._parse): revised treatment of
hyphened/separatorless dates.
* lib/date/format.rb: some trivial adjustments.
Tue May 8 20:23:07 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: reverted.
Tue May 8 19:32:18 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/rational.rb: fix high-precision Rationals cannot be
converted to Floats. [ruby-Bugs:10502], [ruby-core:11069],
[ruby-dev:30743]
Mon May 7 10:59:55 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/image.rb, test/rss/test_image.rb: fixed Image module
namespace URI. reported by Dmitry Borodaenko. Thanks.
Sun May 6 18:44:11 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb (Net::HTTP.post_form): allow an Array of String
for pairs argument. [ruby-Bugs:10340]
* lib/net/http.rb (Net::HTTP#set_form_data): ditto.
Sun May 6 17:54:36 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: Connection header field might include both of
"keep-alive" token and "close" token. [ruby-core:10818]
Sat May 5 16:26:33 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/date/format.rb (Format::Bag#method_missing): get rid of
modifying original argument. [ruby-core:11090]
Thu May 3 22:20:08 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in, defines.h, eval_load.c (rb_feature_p, rb_provided,
search_required, rb_require_safe), ext/extmk.rb: Fix
a bug where a statically linked extension cannot be autoloaded.
[ruby-dev:30023] / [ruby-dev:30239]
* thread.c: added an internal class, Barrier.
* thread.c: copied rdocs from fastthread.
* yarvcore.h (struct rb_vm_struct): moved loading_table from global.
Thu May 3 18:10:12 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
renamed to get rid of name clash. [ruby-dev:30504]
* yarvcore.c (ruby_thread_init): ditto.
Wed May 2 18:52:58 2007 Koichi Sasada <ko1@atdot.net>
* vm.c, yarvcore.h, yarvcore.c, insns.def: fix to mark VM stack
in correct range.
Wed May 2 17:13:26 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_quo): now calculate in integer. [ruby-dev:30753]
Wed May 2 15:14:56 2007 Koichi Sasada <ko1@atdot.net>
* eval_method.h: add redefine checks ([ruby-dev:30751]).
Wed May 2 11:22:52 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: use Qtrue instead of 2.
* vm.c, insns.def: support "lambda" calling convention.
Wed May 2 06:46:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* error.c, parse.y, ruby.h (rb_compile_warn, rb_compile_warning): warn
for compilation. the parser should no longer use rb_warn() and
rb_warning(). [ruby-dev:30121]
Wed May 2 05:45:21 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (assoc): result of assoc_new needs to be an assoc.
Wed May 2 05:40:43 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_pow): improvement by calculating from MSB and using
factorization. <http://yowaken.dip.jp/tdiary/20070426.html#p01>
Tue May 1 18:45:45 2007 Koichi Sasada <ko1@atdot.net>
* sample/test.rb: import matzruby's sample/test.rb.
Tue May 1 17:46:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_choice): a new method to choose an element
randomly from an array.
* array.c (rb_ary_choice): fixed mistake from RDoc.
Tue May 1 13:59:18 2007 Koichi Sasada <ko1@atdot.net>
* proc.c (proc_arity): fix an arity bug ([ruby-core:11060]).
Tue May 1 13:12:49 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h, compile.c (set_arguments): support post arguments.
* test/ruby/test_method.rb: add tests for above.
* test/ruby/test_proc.rb: ditto.
* proc.c: fix an arity bug ([ruby-core:11029]).
* vm.c, vm.h, insns.def, vm_dump.h: fix bmethod process.
* vm.c: support block argument on block parameter.
Fri Apr 27 17:05:41 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (int_pow): bugfix of overflow detection.
* numeric.c (int_pow): rb_big_pow() may return other than Bignum.
Fri Apr 27 01:51:50 2007 Koichi Sasada <ko1@atdot.net>
* compile.c: support multiple splat (e.g, [a, *b, *c, e, *f]).
Fri Apr 27 00:03:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
Thu Apr 26 17:31:00 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big_pow): reduce multiplying for even number.
* numeric.c (int_pow): calculate power in Fixnum as possible.
[ruby-dev:30726]
Thu Apr 26 17:18:51 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y: fixes for ripper.
* parse.y (primary): reduced duplicated code.
* parse.y (f_arg_item): should not override by meaningless value.
* parse.y (f_arg, assocs): should not use $$ before assigned.
* parse.y (assoc_list): dispatch assoclist_from_args for assocs as
well as args.
* parse.y (assoc): return assoc if dispatched result is $1.
Thu Apr 26 13:54:51 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* misc/ruby-style.el: new file. C/C++ style for ruby source code.
Wed Apr 25 19:49:16 2007 Tanaka Akira <akr@fsij.org>
* ext/socket/socket.c (unix_send_io, unix_recv_io): use CMSG_DATA to
align file descriptor appropriately.
Wed Apr 25 15:23:29 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (NtInitialize, exit_handler): add initializing and
cleanup of critical section object for select.
* win32/win32.c (do_select): block reentrance.
* win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
workaround because winsock cannot do select at same socket at the
same time by two or more threads.
Wed Apr 25 14:10:47 2007 Koichi Sasada <ko1@atdot.net>
* ext/probeprofiler/probeprofiler.c: fix function name and
return value.
Wed Apr 25 12:42:40 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h: remove rb_control_frame_t#callee_id.
* vm_macro.def: ditto.
* eval_intern.h (exec_event_hooks): fix to check event flags
* eval_intern.h (EXEC_EVENT_HOOK): fix to re-check event flags.
* ext/probeprofiler : added. this profiler is sampling based
profiler.
* vm.c: add rb_thread_current_status() API for probeprofiler.
* thread.c (rb_thread_execute_interrupts): add comments.
Wed Apr 25 10:36:03 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_intern.h (PUSH_TAG): no argument now.
* eval.c, eval_error.h, eval_jump.h, eval_load.c, proc.c, thread.c:
ditto.
* thread.c (alloc_event_fook, rb_thread_remove_event_hook): should
return value.
Tue Apr 24 09:33:57 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* dir.c (do_stat, do_lstat, do_opendir): should not warn ENOTDIR.
[ruby-talk:248288]
Mon Apr 23 22:14:42 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb ($ruby): add extout directory to include path.
[ruby-core:11003]
* lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
directory.
* lib/mkmf.rb (init_mkmf): add current directory to default
library path with highest priority. [ruby-core:10960]
* lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.
Fri Apr 20 16:05:22 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (LIBPATHFLAG, RPATHFLAG): no needs to be quoted,
it is done by libpathflag in mkmf.rb.
Fri Apr 20 12:27:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb: fix to override conv proc.
Fri Apr 20 12:21:28 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_cleanup): fixed access to out of bound, and inverted
the order of errinfos.
Fri Apr 20 10:33:23 2007 Koichi Sasada <ko1@atdot.net>
* eval_intern.h: add prototypes of rb_sourceline() and
rb_sourcefile().
Fri Apr 20 02:37:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_cleanup): re-send signal. [ruby-dev:30516]
* eval_error.h (error_handle): no message when exiting by signal.
* intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes.
* signal.c (esignal_init): takes a signal number and an optional
signal name.
* signal.c (interrupt_init): pass SIGINT always.
* signal.c (ruby_default_signal): invoke system default signal
handler.
* signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT.
* signal.c (rb_signal_exec, trap): handle SIGTERM. [ruby-dev:30505]
* thread.c (rb_thread_signal_raise): now takes signal number instead
of signal name.
* thread.c (rb_thread_signal_exit): since rb_make_exception() calls
#exception method, rb_class_new_instance() is not needed here.
* yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process):
exit_code is no longer stored in VM.
Thu Apr 19 18:37:49 2007 Koichi Sasada <ko1@atdot.net>
* eval.c, node.h, thread.c, yarvcore.[ch], eval_intern.h:
support set_trace_func (incomplete. id and klass
don't be passed). And support Thread#set_trace_func
which hook only specified thread and Thread#add_trace_func
which add new trace func instead of replace old one.
C level API was modified. See thread.c (logic) and
yarvcore.h (data structures).
* vm.c, vm_macro.def: add hook points.
* compile.c, insns.def: fix "trace" instruction.
* iseq.c, vm_macro.h: add compile option "trace_instruction".
* test/ruby/test_settracefunc.rb: hook "c-return" of set_trace_func.
Thu Apr 19 20:57:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (symbol): symbols should be followed by EXPR_ENDARG.
* parse.y (dsym): ditto.
* parse.y (parser_yylex): strings should be followed by
EXPR_ENDARG.
* parse.y (parser_yylex): ditto for numbers.
* parse.y (parser_yylex): EXPR_ENDARG after ']' and '}'.
Thu Apr 19 17:46:36 2007 Koichi Sasada <ko1@atdot.net>
* lib/optparse.rb: fix to override conv proc.
Wed Apr 18 10:41:21 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* util.c (ruby_strtod): exponent is radix 10. [ruby-talk:248272]
Wed Apr 18 02:50:50 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* yarvcore.c (th_init2): push initial blockptr value for
rb_block_given_p() outside ruby_exec(). [ruby-core:10923]
Wed Apr 18 02:30:24 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (LDFLAGS): prepend -L. instead appending it to
XLDFLAGS. [ruby-core:10933]
* configure.in (Makefile): remove $U for automake from MISSING.
[ruby-talk:248171]
Mon Apr 16 22:56:01 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/pty/expect_sample.rb: avoid symbolic link representation for
expect. a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
[ruby-dev:30714]
Mon Apr 16 22:51:11 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* sample: replace TRUE, FALSE with true, false respectively.
a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
[ruby-dev:30713]
Mon Apr 16 17:08:02 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (make_switch): do not clobber converter if pattern
has no convert method. reported by sheepman in [ruby-dev:30709].
Mon Apr 16 16:49:32 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/stringio/stringio.c (strio_seek): consistent behavior with
IO#seek. patch by sheepman in [ruby-dev:30710].
Mon Apr 16 16:34:08 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (parser_yylex): should set command_start after block
starting "do"s and braces. [ruby-core:10916]
Mon Apr 16 10:51:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_each_with_index): each_with_index to forward
arguments to each. [ruby-core:10921]
Mon Apr 16 10:43:10 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_arg): should allow to specify 24:00.
[ruby-core:10915]
Sun Apr 15 09:12:54 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: added some zone names.
* lib/date/format.rb (_parse): now interprets doted numerical
dates as a big endian (except dd.mm.yyyy).
Thu Apr 12 17:13:22 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (mutex_try_lock): check and set owner thread.
* thread_pthread.ci: fix to show error code in error message.
Thu Apr 12 17:11:54 2007 Koichi Sasada <ko1@atdot.net>
* eval.c (rb_rescue2): restore cfp ([ruby-dev:30582]).
Thu Apr 12 16:06:48 2007 Koichi Sasada <ko1@atdot.net>
* eval.c (rb_protect): restore cfp ([ruby-dev:30671]).
Thu Apr 12 16:04:31 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): check node->nd_state == 1, not !0.
Wed Apr 11 16:35:16 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
need to reject reentrance. removed.
* rubysig.h (RUBY_CRITICAL): follow above changes.
* rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.
Tue Apr 10 17:02:17 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
before calling original fclose()/close().
Tue Apr 10 16:14:22 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* thread_win32.ci (w32_wait_events): check whether interrupt_event is
valid handle or not.
* thread_win32.ci (native_thread_destroy): clear interrupt_event when
close it.
Tue Apr 10 15:53:17 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* thread_pthread.ci (native_thread_create): initialize sleep_cond.
fixed: [ruby-dev:30675]
Mon Apr 9 18:48:57 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (do_select): ubf_select() is not necessary. interrupt is
checked in the loop.
Mon Apr 9 18:27:26 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (do_select): use ubf_select() as UBF on windows.
* win32/win32.c (do_select): shouldn't call catch_interrupt() here.
fixed: [ruby-dev:30674], reported by wanabe.
Mon Apr 9 09:24:32 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (disconnect): call shutdown for
SSLSocket. Thanks, Technorama Ltd.
Sun Apr 8 13:28:17 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (defined_expr): test arguments of NODE_CALL and so
on as well as NODE_ATTRASGN. [ruby-core:10886]
Fri Apr 6 10:56:29 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/ossl_pkey_ec.c (ossl_ec_key_get_group): get rid of
warning. we are aware of it.
Fri Apr 6 04:00:24 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_{bn,x509{attr,cert,name,store}}.c:
Add documentation.
Thu Apr 5 17:59:19 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* compile.c (defined_expr): support for assignment.
[ruby-core:10867]
* compile.h (ADD_CATCH_ENTRY): removed temporary variable.
Thu Apr 5 15:13:34 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/ossl_ssl_session.c (ossl_ssl_session_alloc): should
return value.
Thu Apr 5 14:58:49 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_pkcs5.c: New module.
* ext/openssl/ossl_{cipher,digest,pkcs7,pkcs12}.c:
Remove redundant module namespace.
* ext/openssl/lib/openssl/{cipher,digest}.rb
Add backwards compatible classes for rearranged classes.
* ext/openssl/ossl_{pkcs7,pkcs12}.c: Add documentation.
Thu Apr 5 00:42:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* error.c (rb_notimplement), io.c (pipe_open): removed definite
articles and UNIX manual section from messages. [ruby-dev:30690]
Wed Apr 4 17:09:17 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (pipe_open): refined the message of NotImplementedError.
[ruby-dev:30685]
Wed Apr 4 12:29:02 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* error.c (rb_notimplement): should show the name of this func,
not callee.
Wed Apr 4 10:18:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (popen_exec): should not close close-on-exec FDs.
[ruby-dev:30679]
* io.c (pipe_open): raise NotImplementedError for command "-" on
platforms where fork(2) is not available. [ruby-dev:30681]
Tue Apr 4 04:17:18 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_ssl.c: Add documentation.
Tue Apr 3 16:22:24 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/openssl/extconf.rb: check for functions added in 1.9.
* ext/openssl/ruby_missing.h: check per features instead by
checking version code. [ruby-core:10845]
Tue Apr 3 16:02:44 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_bn.c: More documentation.
* ext/openssl/lib/ossl_{pkey,pkey_ec}.[ch]: Add elliptic curves.
Tue Apr 3 15:50:41 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/socket/socket.c (s_recv, s_recvfrom): some systems (such as
windows) doesn't set fromlen if the socket is connection-oriented.
reported by Bram Whillock in [ruby-core:10512] [ruby-Bugs#9061]
Tue Apr 3 09:36:55 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/ruby_missing.h: need to include version.h to check
RUBY_VERSION_CODE.
Mon Apr 3 07:10:12 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/ossl_{ssl.[ch],ssl_session.c},
ext/openssl/lib/openssl/lib/openssl/ssl.rb:
New SSL::Session class. Add session cb's, getter/setters,
config, and statistics methods.
Mon Apr 3 04:00:23 2007 Technorama Ltd. <oss-ruby@technorama.net>
* ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
* ext/openssl/ossl_hmac.c Add reset method.
* ext/openssl/ossl_cipher.c (Cipher#update) Take additional
buffer argument.
* ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h}
compatibility with 1.8.
Mon Apr 2 21:55:12 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* insns.def (throw), thread.c, yarvcore.h (throwed_errinfo): fixed
typo.
Fri Mar 30 11:46:51 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
wanabe [ruby-dev:30672]
* win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]
Fri Mar 30 02:29:04 2007 Technorama <oss-ruby@technorama.net>
* ext/openssl/ossl_{bn,cipher,digest,hmac,rand,pkey_{dh,dsa,rsa}}.c:
Add Documentation for various methods.
* ext/openssl/lib/openssl/cipher.rb: Ditto
* ext/openssl/ossl_bn.c: add lshift! and rshift! methods.
* ext/openssl/ossl_digest.c: GetDigestPtr() also accept a string.
Fri Mar 23 11:28:24 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
rb_w32_get_environ): use strlcpy() and strlcat().
* win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().
* win32/win32.c (rb_w32_closedir): check NULL before free pointers.
Fri Mar 23 00:24:52 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/shell: commit miss(support for ruby 1.9(YARV) thread model).
Thu Mar 22 13:32:17 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/Makefile.sub (LIBS): remove an unnecessary library.
Thu Mar 22 10:27:58 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* test/ruby/test_bignum.rb (test_to_s): add tests for Bignum#to_s.
Wed Mar 21 20:38:06 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* marshal.c (w_short, w_long, w_object): get rid of VC++ warnings.
Wed Mar 21 20:05:07 2007 Koichi Sasada <ko1@atdot.net>
* compile.c, parse.y, eval.c, intern.h, iseq.c, lex.c, node.h,
proc.c, vm.c, vm_macro.def, vm_macro.def, yarvcore.c, yarvcore.h,
debug.c, debug.h: merge half-baked-1.9 changes. The biggest change
is to change node structure around NODE_SCOPE, NODE_ARGS. Every
scope (method/class/block) has own NODE_SCOPE node and NODE_ARGS
represents more details of arguments information. I'll write a
document about detail of node structure.
Wed Mar 21 17:04:30 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bignum.c (rb_big2str0): round up for the most significant digit.
[ruby-core:10686]
Tue Mar 21 08:20:00 2007 Nathaniel Talbott <ntalbott@ruby-lang.org>
* test/testunit/collector/test_dir.rb: Fixed test/unit tests that
were breaking due to Module#public_instance_methods now
returning a Symbol instead of a String.
* test/testunit/collector/test_objectspace.rb: Ditto.
Tue Mar 20 22:54:50 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (w_extended): erroneous check condition when dump
method is defined. [ruby-core:10646]
Tue Mar 20 21:36:47 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/shell.rb, lib/shell: support for ruby 1.9(YARV) thread model.
Tue Mar 20 16:36:08 2007 URABE Shyouhei <shyouhei@ruby-lang.org>
* distruby.rb: Add zip generation.
Tue Mar 20 16:20:49 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_f_callee_name): add __method__ and __callee__ again.
__callee__ need to rework to adopt YARV. [ruby-core:10671]
Tue Mar 20 11:09:00 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/set.rb: Revise rdoc.
* lib/set.rb (Set#freeze, Set#taint, Set#untaint): Implement
Set#freeze, Set#taint, and Set#untaint; requested by: Dan
Hutchings <dan AT moltoagitato.com> in [ruby-bugs:PR#9359].
Tue Mar 20 09:13:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* process.c (rb_fork): flush stdouts always before fork(2).
fixed: [ruby-dev:30612]
Tue Mar 20 01:38:48 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* thread.c (thread_start_func_2): store the result of first_func
as well as first_proc.
* thread.c (thread_create_core): block is not used if first_func
is given.
Mon Mar 19 16:58:52 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* missing/{strlcat,strlcpy}.c, missing.h: new functions.
* LEGAL: add copyright notice about above files.
* configure.in: check whether strlcat and strlcpy are exist or not.
* {bcc32,win32,wince}/Makefile.sub: use above files.
Mon Mar 19 14:12:25 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/matrix.rb (Matrix::inverse_from): adding partial pivoting to
the Gauss-Jordan algorithm, making it stable. a patch from
Peter Vanbroekhoven. [ruby-core:10641]
Mon Mar 19 12:13:36 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* regparse.c, etc.: K&R to ANSI code cleanup patch from Stefan
Huehner <stefan at huehner.org>. [ruby-core:10543]
Mon Mar 19 11:27:13 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/protocol.rb (rbuf_read): extend buffer size for speed.
Sun Mar 18 08:31:51 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
rb_w32_closedir): get rid of possible buffer-overflows.
Sat Mar 17 19:10:39 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss, test/rss:
- supported Atom.
- bumped version 0.1.6 to 0.1.7.
* sample/rss/convert.rb: added new sample.
Fri Mar 16 22:32:20 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/pop.rb: change default verification mode from
VERIFY_PEER to VERIFY_NONE because most POPS server does not have
true certification.
Fri Mar 16 22:19:24 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
a little bit supporting ActiveX control. [ruby-talk:241188]
Fri Mar 16 22:16:58 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: merge Ruby-SSPI patch contributed by Justin
Bailey.
* ext/Win32API/lib/win32/sspi.rb: new file.
Wed Mar 14 12:30:00 2007 Shigeo Kobayashi <shigeo@tinyforest.jp>
* ext/bigdecimal/bigdecimal.c: BigDecimal("-.31") is now
treated as ("-0.31") not as ("0.31").
Tue Mar 13 19:04:30 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/sync.rb: support for ruby 1.9(YARV) thread model.
Tue Mar 13 09:25:10 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (clear-installed-list): separated from install-prereq.
Tue Mar 13 07:23:20 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/monitor.rb (mon_try_enter): call @mon_muetx.try_lock.
Thanks, Keiju ISHITSUKA. [ruby-dev:30507]
Tue Mar 13 02:42:58 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/cgi.rb (CGI::header): IIS >= 5.0 does not need the nph
assumption any more; submitted by MIYASAKA Masaru <alkaid AT
coral.ocn.ne.jp> in [ruby-dev:30537].
Mon Mar 12 10:53:28 2007 Akinori MUSHA <knu@iDaemons.org>
* ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
externally defined modules; submitted by Technorama
Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].
* ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.
* ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.
* ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.
* ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.
* ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.
* ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.
* ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.
* ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.
* ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.
* ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.
Sun Mar 11 18:42:01 2007 Akinori MUSHA <knu@iDaemons.org>
* misc/ruby-mode.el (ruby-block-end-re): Support for the
experimental ';;' terminator had been dropped.
Sun Mar 11 05:45:46 2007 Akinori MUSHA <knu@iDaemons.org>
* misc/README, misc/rdebug.el: Add rdebug.el, Emacs ruby-debug
interface based on rubydb3x.el; submitted by Martin Nordholts
<enselic AT gmail.com> in [ruby-bugs:PR#9023].
Sat Mar 10 07:20:28 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
WIN32OLE_TYPELIB#visible?.
* test/win32ole/test_win32ole_typelib.rb: ditto.
Thu Mar 8 09:17:59 2007 Minero Aoki <aamine@loveruby.net>
* compile.c: iseq_compile -> rb_iseq_compile.
* iseq.c: ditto.
* intern.h: provide function prototype of Init_jump.
* eval_jump.h (Init_jump): declare function type.
* thread.c: platform-dependent functions should be surrounded by #ifdef.
* iseq.c (iseq_data_to_ary): remove unused variable.
* compile.c (set_arguments): ditto.
* thread.c (set_unblock_function): ditto.
* thread_pthread.ci: reduce printf warning.
* vm_dump.c: ditto.
Tue Mar 6 16:35:04 2007 Keiju Ishitsuka <keiju@ruby-lang.org>
* lib/shell/process-controller.rb: fix thread synchronization problem for [ruby-dev:30477].
Tue Mar 6 11:53:25 2007 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/sample/irbtkw.rbw: fails to exit process.
Tue Mar 6 10:23:09 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* runruby.rb: added --pure (turned on by default) and --debugger
options.
Mon Mar 5 09:19:33 2007 Minero Aoki <aamine@loveruby.net>
* lib/timeout.rb (Timeout.timeout): should return the block value
always.
* lib/timeout.rb (Timeout.timeout): should yield sec argument
always.
* lib/timeout.rb (Timeout.timeout): fix document.
Mon Mar 5 09:16:40 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: support automatic STARTTLS.
* lib/net/smtp.rb: check server advertisement.
* lib/net/smtp.rb: introduce new class SMTP::Response.
* lib/net/smtp.rb (getok): should not use sprintf.
* lib/net/smtp.rb (get_response): ditto.
* lib/net/protocol.rb: reduce syntax warning on 1.9.
Mon Mar 5 07:13:28 2007 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: reconstruct SMTPS/STARTTLS interface. New
interface is incompatible from current 1.9 interface at all.
* lib/net/smtp.rb: All SSL-related class methods are removed; use
instance methods instead.
* lib/net/smtp.rb: rename methods: *ssl -> *tls (with alias
"ssl").
* lib/net/smtp.rb: rename methods: *tls -> *starttls.
Mon Mar 5 01:36:41 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
indentation broken at YARV merger.
Sun Mar 4 23:41:14 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
rb_gid_t instead of int.
* file.c (rb_stat_s_utime): fixed a commit miss for the platforms
where utimes() does not exist.
* lib/fileutils.rb (touch): ditto.
Sun Mar 4 14:46:56 2007 WATANABE Hirofumi <eban@ruby-lang.org>
* util.c (push_element): should return a int value.
Sun Mar 4 01:01:25 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/set.rb (Set#^, Set#&): Correct documentation. Those methods
return sets, not arrays; noted by Oliver Frank Wittich <nietz AT
mangabrain.de>.
Sat Mar 3 22:54:33 2007 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb (touch): last #touch change causes error when
:mtime option was not given.
Sat Mar 3 22:51:29 2007 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb (mv): could not move directory between
different file systems. [ruby-dev:30411]
Sat Mar 3 22:37:02 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_file_s_utime): allow nil to set the current time.
* lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
options. fixed: [ruby-talk:219037]
Sat Mar 3 15:52:26 2007 Akinori MUSHA <knu@iDaemons.org>
* object.c (instance_variable_get): Restore rdoc markups lost in
the last commit.
Fri Mar 2 21:17:14 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
): fix some bugs of WIN32OLE_VARIANT.new when variant type is
VT_ARRAY|VT_BSTR or VT_BYREF.
* ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
is defined as instance method of WIN32OLE_VARIANT.
* test/win32ole/test_win32ole_variant.rb: add some test for
VT_ARRAY, VT_BYREF variant type.
Fri Mar 2 07:58:24 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_obj_ivar_set): RDoc updated according to a
suggestion from Brian Candler <B.Candler AT pobox.com>.
[ruby-core:10469]
Thu Mar 1 21:38:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (stmt, arg): should not omit lhs of OP_ASGN1 even if
empty. [ruby-dev:30455]
Thu Mar 1 02:55:25 2007 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
Digest::Base subclasses, which was unintentionally made
impossible while restructuring Digest classes.
Thu Mar 1 02:05:17 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* mkconfig.rb (patchlevel): read from version.h.
Wed Feb 28 21:15:00 2007 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (ac_cv_func_fcntl): fcntl support for MinGW.
* missing/flock.c: workaround for MinGW.
Wed Feb 28 20:51:32 2007 URABE Shyouhei <shyouhei@ruby-lang.org>
* pack.c (pack_unpack): properly ignore non-base64 octets such as
UTF-8 encoded BOMs; submitted by SOUMA Yutaka <holon@radastery.jp>
to fix [ruby-core:10437]
Wed Feb 28 18:31:51 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
they are already checked at configure.
reported by KOBAYASHI Yasuhiro [ruby-list:43225]
Wed Feb 28 18:23:43 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
should be the first elements of library paths list.
reported by KOBAYASHI Yasuhiro [ruby-list:43225]
Wed Feb 28 10:33:58 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
specific thread model.
* compile.h, regint.h, vm.h, array.c: removed unnecessary #include.
Wed Feb 28 04:03:03 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (take_i): small cosmetic / documentation patch from
Tadashi Saito <shiba AT mail2.accsnet.ne.jp>. [ruby-dev:30446]
Wed Feb 28 01:20:18 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* test/{dbm,gdbm}/test_{dbm,gdbm}.rb: shouldn't use host_os. use
target_os instead. reported by KOBAYASHI Yasuhiro [ruby-list:43225]
Wed Feb 28 00:08:11 2007 URABE Shyouhei <shyouhei@ice.uec.ac.jp>
* mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
* common.mk: new target dist
* distruby.rb: new file
Tue Feb 27 22:18:45 2007 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (--enable-auto-image-base): avoid the neccessity to
rebase the shared libs as much as possible;
submitted by Corinna Vinschen <spam at vinschen.de> in
[ruby-talk:240964].
Tue Feb 27 21:36:47 2007 WATANABE Hirofumi <eban@ruby-lang.org>
* util.c (__crt0_glob_function): use ruby_glob() instead of rb_globi().
Tue Feb 27 21:33:04 2007 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (ac_cv_func_setrlimit): workaround for djgpp.
Tue Feb 27 20:35:28 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
Tue Feb 27 19:26:31 2007 Akinori MUSHA <knu@iDaemons.org>
* ext/nkf/nkf.c (rb_str_resize, rb_nkf_kconv, rb_nkf_guess1,
rb_nkf_guess2): Silence warnings regarding char * vs. unsigned
char * mismatch; submitted by Lyle Johnson
<lyle.johnson@gmail.com> in [ruby-core:10416].
Tue Feb 27 19:15:01 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/base64.rb (Base64::b64encode): Fix documentation; submitted
by David Symonds <dsymonds@gmail.com> in [ruby-core:10432].
Tue Feb 27 18:59:42 2007 Akinori MUSHA <knu@iDaemons.org>
* ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
regarding char * vs. unsigned char * mismatch; submitted by Lyle
Johnson <lyle.johnson@gmail.com> in [ruby-core:10416].
* ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto.
* ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto.
* ext/digest/digest.c (rb_digest_base_finish,
rb_digest_base_update): Ditto.
Tue Feb 27 18:12:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_take): new method. [ruby-dev:30407]
* enum.c (enum_drop): ditto.
Tue Feb 27 07:47:24 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h, vm.h: rename th_invoke_yield() to th_yield().
* blockinlining.c: ditto.
* eval.c: ditto.
* vm.c, insns.def: rename th_invoke_yield_cfunc()
to th_yield_with_cfunc().
* yarvcore.h, yarvcore.c: rename theYarvVM to ruby_current_vm and
yarvCurrentThread to ruby_current_thread. remove yarvVMArray.
Tue Feb 27 00:45:23 2007 Minero Aoki <aamine@loveruby.net>
* test/ruby/test_optimization.rb: restore method before calling
assert_equal.
Mon Feb 26 00:58:39 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h: add rb_thread_t#top_wrapper, top_self.
* eval_load.c (rb_load): support eval in wrapper module
(load(file, true)).
* eval.c: ditto.
* eval_jump.h: ditto.
* iseq.c: ditto.
* vm.c: ditto.
* yarvcore.c: ditto.
* insns.def: add a empty line.
Mon Feb 26 00:54:36 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: change "gdb" rule. You can debug miniruby with
$(srcdir)/test.rb on gdb by this rule (type "make gdb").
If you write break points to "breakpoints.gdb" on $srcdir,
gdb runs with this file.
Sun Feb 25 11:46:58 2007 Koichi Sasada <ko1@atdot.net>
* win32/Makefile.sub: enable -Zi (debug) option.
Sun Feb 25 11:38:40 2007 Koichi Sasada <ko1@atdot.net>
* ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.
* intern.h: ditto.
* signal.c (posix_signal): remove unused function
posix_nativethread_signal().
Sun Feb 25 11:31:13 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (rb_thread_run): fix to ANSI style.
Sun Feb 25 11:09:16 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest/runner.rb: show source code in error message.
Sun Feb 25 09:39:50 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h:
rename:
rb_iseq_t#file_name -> filename
rb_iseq_t#local_tbl -> local_table
add:
rb_iseq_t#local_table_size
* compile.c: separate local_table_size and local_size
(local variable size)
* blockinlining.c: apply above rename.
* compile.h: ditto.
* eval.c: ditto.
* iseq.c: ditto.
* proc.c: ditto.
* vm.c: ditto.
* vm_dump.c: ditto.
Sun Feb 25 10:27:17 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest/runner.rb: add lib/ to load path.
Sat Feb 25 10:16:50 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* rubyio.h (HAVE_RB_IO_T): macro to tell if rb_io_t is defined.
Sat Feb 24 19:39:16 2007 Minero Aoki <aamine@loveruby.net>
* common.mk: new target "btest", to run bootstraptests.
Sat Feb 24 19:30:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
renamed from OpenFile.
* ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
ext/readline/readline.c, ext/socket/socket.c: ditto.
Sat Feb 24 19:28:23 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest/runner.rb: new option -v,--verbose.
Sat Feb 24 18:55:50 2007 Minero Aoki <aamine@loveruby.net>
* yarvtest/test_method.rb: removed (merged to bootstraptest).
* yarvtest/test_class.rb: ditto.
Sat Feb 24 18:44:39 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest/test_class.rb: new file.
* bootstraptest/test_method.rb: add tests.
Sat Feb 24 18:44:30 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* intern.h (rb_thread_blocking_region): add prototype.
* file.c (rb_thread_flock, rb_file_flock): use UBF feature.
* process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
* thread.c (rb_thread_debug): added runtime debugging flag.
* thread.c (BLOCKING_REGION): restore previous UBF.
* thread.c (rb_thread_blocking_region): default UBF to interrupt
in system dependent way by RB_UBF_DFL.
+ ubf_select() on posix system
+ ubf_handle() on Win32
+ none on cygwin
* thread_win32.ci (rb_w32_wait_events_blocking): blocking version.
* win32/win32.c (waitpid): use rb_w32_wait_events_blocking().
Sat Feb 24 17:45:48 2007 Minero Aoki <aamine@loveruby.net>
* parse.y (f_arg, opt_f_block_arg): ripper should export VALUE.
Sat Feb 24 16:52:55 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest/runner.rb: fix syntax error.
Sat Feb 24 16:51:09 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest/runner.rb: new option --help.
Sat Feb 24 16:47:33 2007 Minero Aoki <aamine@loveruby.net>
* bootstraptest: new test suite.
* bootstraptest/runner.rb: new file.
* bootstraptest/test_literal.rb: new file.
* bootstraptest/test_method.rb: new file.
Sat Feb 24 16:29:15 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (StartSocket): remove unnecessary code.
Sat Feb 24 16:04:30 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (struct local_vars): remove unused nofree member from
struct.
* parse.y (parser_free): ditto.
Sat Feb 24 15:57:19 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/thread.rb (ConditionVariable#broadcast): use Mutex
instead of Thread.exclusive.
* lib/monitor.rb (MonitorMixin#mon_exit): unset @mon_owner
before calling Mutex#unlock.
Sat Feb 24 15:51:45 2007 Minero Aoki <aamine@loveruby.net>
* parse.y (program): remove useless assignment to reduce warning.
Sat Feb 24 15:41:51 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (lambda): remove unused clause from the rule to stop
warning.
Sat Feb 24 15:41:22 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/thread.rb: do not redefine Mutex#synchronize.
Sat Feb 24 15:14:02 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/monitor.rb: rewritten using Mutex/ConditionVariable.
Sat Feb 24 13:25:32 2007 Koichi Sasada <ko1@atdot.net>
* lib/soap/mapping/factory.rb: catch up with spec changes (return
Symbols instead of Strings).
* lib/soap/mapping/mapping.rb: ditto.
Sat Feb 24 10:49:55 2007 Koichi Sasada <ko1@atdot.net>
* parse.y, node.h, compile.c: change node tree structure. a purpose
of this change is to unify argument structure of method and block.
this change prohibits duplicate block parameter name.
new argument infromation:
NODE_ARGS [m: int, o: NODE_OPT_ARG, ->]
NODE_ARGS_AUX [r: ID, b: ID, ->]
NODE_ARGS_AUX [Pst: id, Plen: int, init: NODE*]
optarg information:
NODE_OPT_ARGS [idx, expr, ->]
* vm_macro.def: ditto.
* gc.c: ditto.
* iseq.c: ditto.
* compile.h: fix debug function name.
* test/ripper/test_scanner_events.rb: |_,_,foo| -> |_1,_2,foo|
* test/ruby/test_lambda.rb: disalbe test temporarily.
Sat Feb 24 10:46:28 2007 Koichi Sasada <ko1@atdot.net>
* test/testunit/test_testcase.rb: catch up with current instance
variable spec.
Sat Feb 24 10:32:59 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: change vm_macro.def rule.
Sat Feb 24 10:38:05 2007 Minero Aoki <aamine@loveruby.net>
* ext/racc/cparse/cparse.c (cparse_params_mark): remove useless
rb_gc_mark. Thanks Tomoyuki Chikanaga. [ruby-dev:30405]
Sat Feb 24 07:31:35 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
WIN32OLE_VARIANT#value=, refactoring.
* test/win32ole/test_win32ole_variant.rb: add some test for
WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.
Fri Feb 23 18:37:55 2007 Minero Aoki <aamine@loveruby.net>
* test/ruby/test_yield.rb: new test.
* yarvtest/test_yield.rb: removed (moved to test_yield.rb).
Fri Feb 23 18:27:17 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* thread.c (rb_thread_polling): check interrupts here.
* thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
now receive multiple event handles.
* win32/win32.c (wait_events, rb_w32_main_context): removed.
* thread_win32.ci (rb_w32_wait_events): new function.
* thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
from win32/win32.c to thread_win32.ci, and use w32_wait_events().
Fri Feb 23 18:13:22 2007 Minero Aoki <aamine@loveruby.net>
* test/ruby/test_optimization.rb: new test (merges test_opts.rb).
* yarvtest/test_opts.rb: removed.
Fri Feb 23 16:59:39 2007 Minero Aoki <aamine@loveruby.net>
* test/ruby/test_assignment.rb: merge yarvtest/test_massign.
* yarvtest/test_massign.rb: removed (merged to
test_assignment.rb).
Fri Feb 23 15:58:20 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* signal.c (sighandler): need to re-install sighandler on some
platforms.
Fri Feb 23 15:05:57 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (set_pioinfo_extra): simplified.
Fri Feb 23 14:23:20 2007 Minero Aoki <aamine@loveruby.net>
* test/ruby/test_literal.rb: new test.
Fri Feb 23 12:40:12 2007 James Edward Gray II <james@grayproductions.net>
* lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): Make the
Content-Length parameter optional for responses in
xmlrpc/client.rb; suggested by Daniel Berger
<Daniel.Berger@qwest.com> and approved by the maintainer.
* lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Add DateTime
support to xmlrpc; approved by the maintainer.
Fri Feb 23 12:24:46 2007 Minero Aoki <aamine@loveruby.net>
* parse.y (lambda): add ripper event. This fixes bus error on
"make test-all".
* ext/ripper/extconf.rb: do not stop build.
Fri Feb 23 12:16:05 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y: remove dyna_check_gen() prototype.
Fri Feb 23 11:41:21 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,
object.c, string.c, variable.c, vm_macro.def: revert private
instance variable feature, which is postponed until next major
release.
* marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to
8th version.
Fri Feb 23 10:53:21 2007 Shugo Maeda <shugo@ruby-lang.org>
* thread_pthread.ci (native_mutex_lock): do not call
pthread_mutex_trylock().
Fri Feb 23 10:31:16 2007 Minero Aoki <aamine@loveruby.net>
* dln.c: use dlopen on Mac OS X 10.3 or later.
Fri Feb 23 10:03:49 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_ord): need not to check string length; ord
returns a codepoint for the first character in the string.
Wed Feb 21 22:29:45 2007 Akinori MUSHA <knu@iDaemons.org>
* numeric.c (fix_equal): A bit more optimization.
Wed Feb 21 17:40:37 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (fix_equal): remove FIX2LONG() to optimize. suggested
in http://t-a-w.blogspot.com/2007/02/making-ruby-faster.html.
[ruby-talk:240223]
* numeric.c (fix_cmp): ditto.
Wed Feb 21 09:14:04 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval_load.c (rb_require_safe): should restore safe level.
Tue Feb 20 21:19:29 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (installed_code_page_proc,
ole_variant2val): small refactoring.
Tue Feb 20 15:11:42 2007 Koichi Sasada <ko1@atdot.net>
* eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
vm.c from eval.c. change th_call_super() to static function.
Tue Feb 20 15:08:25 2007 Koichi Sasada <ko1@atdot.net>
* test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
another thread close IO object which current thread is blocking with.
Tue Feb 20 15:03:29 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (do_select, rb_thread_wait_fd_rw): raise sys error if
errno is not 0 and EBADF.
Mon Feb 19 22:15:31 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_REPLACE_TYPE): cache convertible type info.
* intern.h (rb_detach_process): use rb_pid_t instead of pid_t.
* ruby.h (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM, NUM2GIDT):
defaulted to conversion using long.
Mon Feb 19 17:14:28 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/socket/socket.c (unix_peeraddr): wrong syscall name in error
message for #peeraddr. a patch from Sam Roberts
<sroberts at uniserve.com>. [ruby-core:10366]
Sun Feb 18 22:56:07 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/etc/etc.c (etc_getgrgid): missed to replace a macro.
Sun Feb 18 19:33:00 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: updated based on date2 4.0.3.
Sun Feb 18 13:11:51 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (pid_t, uid_t, gid_t): check if defined.
* intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
rb_{pid,uid,gid}_t instead of plain int. [ruby-dev:30376]
* ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
NUM2GIDT): moved to configure.in.
Fri Feb 16 21:34:33 2007 Koichi Sasada <ko1@atdot.net>
* object.c (rb_obj_ivar_set/get/defined): fix to check :@_v/C id.
* test/testunit/test_testcase.rb: fix to use instance_variable_get()
to access @_result.
Fri Feb 16 20:59:10 2007 Koichi Sasada <ko1@atdot.net>
* intern.h: add a prototype of rb_sym_to_s().
Fri Feb 16 19:24:22 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* math.c (math_log): update document to mention second optional
argument for logarithm base.
Fri Feb 16 19:19:21 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (mrhs): need to append by arg_append().
[ruby-talk:239385]
Fri Feb 16 11:18:21 2007 Eric Hodel <drbrain@segment7.net>
* lib/.document: Apply patch for irb, e2mmap and README by Hugh Sasse
<hgs at dmu.ac.uk> from [ruby-core:10135]
* lib/prettyprint.rb: Suppress RDoc for PrettyPrint test suite.
Thu Feb 15 20:48:36 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (set_pioinfo_extra): new function for VC++8 SP1
workaround. [ruby-core:10259]
* win32/win32.c (NtInitialize): call above function.
Thu Feb 15 16:25:54 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/uri/generic.rb (URI::Generic::userinfo): Considering how
`scheme://user:@...', `scheme://:password@...' and
`scheme://:@...' are parsed, an empty user name or password
should be allowed and represented as it is.
Thu Feb 15 01:52:53 2007 Koichi Sasada <ko1@atdot.net>
* vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to
ruby_vm_global_state_version.
Thu Feb 15 01:50:26 2007 Koichi Sasada <ko1@atdot.net>
* test/fileutils/test_fileutils.rb (check_singleton): fix to use
symbole instead of string.
* test/io/nonblock/test_flush.rb: enable tests.
* test/xmlrpc/test_webrick_server.rb: ditto.
Thu Feb 15 01:43:45 2007 Koichi Sasada <ko1@atdot.net>
* lib/delegate.rb: catch up with class local variable (@_v) spec.
* lib/singleton.rb: ditto.
Wed Feb 14 22:52:43 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
support VT_I8, VT_UI8.
Wed Feb 14 22:10:21 2007 Koichi Sasada <ko1@atdot.net>
* configure.in: change stack limit to 2MB from 32MB.
* win32/Makefile.sub: ditto.
Wed Feb 14 21:39:36 2007 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
autoloads for sha2 classes in favor of handling in
const_missing(), to work around a problem exposed on OS X.
Wed Feb 14 21:19:47 2007 Koichi Sasada <ko1@atdot.net>
* thread_pthread.ci (native_thread_create): adjust 4KB (page size)
alignment.
Wed Feb 14 21:12:36 2007 Koichi Sasada <ko1@atdot.net>
* thread_pthread.ci (CHECK_ERR): call rb_bug()
instead of printf() and exit().
Wed Feb 14 16:48:56 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/date/format.rb (Date::Format::Bag::method_missing): need not
to use instance variables corresponding each method; use Hash
instead.
Wed Feb 14 13:12:06 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (reg_operand): allow symbols to be operands for regular
expression matches.
* string.c (Init_String): allow Symbol#===.
* lib/date/format.rb (Date::Format::Bag::to_hash): string
added prefixes.
Wed Feb 14 12:58:38 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (do_select): fix to iterate select().
on cygwin/mswin32, iterate in unblocking region.
* thread.c (rb_thread_select): don't iterate on this function.
(iterate in do_select).
Wed Feb 14 11:39:18 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (set_unblock_function): fix function interface.
Wed Feb 14 11:12:02 2007 Koichi Sasada <ko1@atdot.net>
* eval_load.c, yarvcore.h: use rb_vm_t#loaded_features instead of
rb_features (global variable).
* yarvcore.c: mark rb_vm_t#loaded_features.
Wed Feb 14 08:46:25 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* compile.c (defined_expr): no longer distinguish ordinary local
variables and in-block local variables in defined? value.
Wed Feb 14 03:14:42 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/uri/generic.rb (URI::Generic::userinfo): should support
empty password. [ruby-core:10290]
* lib/uri/generic.rb (URI::Generic::set_password): password can be
cleared by nil. [ruby-core:10290]
Wed Feb 14 03:10:33 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (struct local_vars): no need to warn out-of-scope
variables; remove dnames member from struct.
Wed Feb 14 03:04:10 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y: RVarmap no longer used as yytype; removed.
* parse.y (dyna_push_gen): no longer need return value.
* parse.y (dyna_pop_gen): no longer need argument.
* parse.y (local_push_gen): initialize nofree.
Wed Feb 14 00:30:07 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/socket/socket.c (init_unixsock): path may contain NUL for
abstract unix sockets. [ruby-core:10288]
Tue Feb 13 02:21:12 2007 Sam Roberts <sroberts@uniserve.com>
* io.c (rb_f_syscall): Fix buffer overflow with syscall
arguments. [ruby-bugs:PR#8541]
Mon Feb 12 13:57:30 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
Mon Feb 12 11:48:52 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/dublincore.rb, lib/rss/maker/dublincore.rb: dc_rightses
-> dc_rights_list. dc_rightses still exists for backward
compatibility. [ruby-core:8350]
* test/rss/test_maker_dc.rb: added tests for dc_rights_list.
Sun Feb 11 22:40:17 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
should not return "VARIANT,VARIANT".
Sun Feb 11 22:11:05 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#initialize):
kept backward compatibility.
Sun Feb 11 22:10:08 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/parser.rb (RSS::ListenerMixin#start_else_element): used
const_defined? instead of constants.include?.
Sun Feb 11 18:47:14 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_val2olevariantdata):
WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.
* test/win32ole/test_win32ole_variant.rb: ditto.
* ext/win32ole/win32ole.c: small refactoring.
Sun Feb 11 07:42:25 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/cgi.rb (CGI::QueryExtension::read_multipart): Properly parse
a quoted-string in a Content-Disposition value.
Sat Feb 10 20:21:29 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
thanks to Mikael Pahmp.
* test/win32ole/test_win32ole.rb: ditto.
Sat Feb 10 17:46:52 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk: targets which depend on yarvcore.h now depend on
rubysig.h too.
* yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.
Sat Feb 10 00:13:11 2007 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk.rb: fix typo (TkConfigMethod::__confinfo_cmd,
__conv_keyonly_opts).
Fri Feb 9 12:33:40 2007 Koichi Sasada <ko1@atdot.net>
* thread_win32.ci (w32_show_error_message): renamed to w32_error.
this function do rb_bug().
* thread_win32.ci (w32_set_event, w32_reset_event, w32_close_handle,
w32_resume_thread): added. fix to use these functions instead calling
win32api directly.
* thread_win32.ci (w32_create_thread): create suspend thread
(caller must call w32_resume_thread()).
Fri Feb 9 11:03:40 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_readpartial.rb: tests are working on mswin32/cygwin.
Fri Feb 9 05:08:17 2007 Koichi Sasada <ko1@atdot.net>
* thread.c, thread_pthread.ci, thread_win32.ci (thread_start_func_1):
move cleanup function to thread_start_func_2().
* thread.c, thread_pthread.ci, thread_win32.ci:
add more destruct functions.
(native_thread_destroy() and native_mutex_destroy())
* thread_pthread.ci, thread_pthread.h: make native_mutex_* functions
(check error, etc), it's not macro any more.
* thread_win32.ci (thread_start_func_1): store some values before
running thread (to release these after running thread).
* thread_win32.ci (native_thread_create): fix spaces.
Thu Feb 8 22:44:04 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
1st argument is empty array, and when 2nd argument is
VT_ARRAY|VT_BYREF.
* test/win32ole/test_win32ole_variant.rb: ditto.
Thu Feb 8 22:39:09 2007 Koichi Sasada <ko1@atdot.net>
* yarvtest/yarvtest.rb: check target command names.
Thu Feb 8 22:31:45 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_clone.rb: fix to current spec
(Module should not be occur many times in ancestors).
Thu Feb 8 22:26:14 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_string.rb: ("foo" == :foo) and ("foo" === :foo)
should be false.
* ChangeLog: fix last messages.
Thu Feb 8 22:24:06 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/test_module.rb: fix to use Symbol instead of String.
* test/ruby/test_module.rb: remove space before argument parentheses.
Thu Feb 8 22:02:14 2007 Koichi Sasada <ko1@atdot.net>
* test/ruby/marshaltestlib.rb: eval(sym) -> eval(sym.to_s)
Thu Feb 8 21:35:16 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* test/win32ole/test_propertyputref.rb (setup): fix typo.
* test/win32ole/test_win32ole_event.rb: should not use
InternetExplorer.gohome to test.
Thu Feb 8 21:02:07 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
* thread.c (rb_thread_run_parallel): rename to
rb_thread_blocking_region().
Thu Feb 8 15:48:44 2007 Koichi Sasada <ko1@atdot.net>
* yarvcore.h, thread.c: fix to use pthread on cygwin.
* yarvcore.h, thread.c: move GVL_UNLOCK_BEGIN() and GVL_UNLOCK_END()
from yarvcore.h to thread.c.
* thread.c: change GVL_UNLOCK_RANGE() arguments
(adding ubf as 2nd argument).
* thread.c: fix to use polling in select on cygwin and mswin32.
* thread.c, thread_pthread.ci, thread_win32.ci, yarvcore.h:
rename:
* rb_thread_t#interrupt_function -> unblock_function
* rb_interrupt_function_t -> rb_unblock_function
* some interrupt function name -> ubf_*
* yarv_* -> *
Thu Feb 8 16:08:02 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
* common.mk ($(INSNS) rule): remove $(PROGRAM) first.
Thu Feb 8 15:43:05 2007 Koichi Sasada <ko1@atdot.net>
* process.c: fix to use rb_status_line_set/get/clear().
* eval_intern.h: fix line break.
Thu Feb 8 15:00:14 2007 Koichi Sasada <ko1@atdot.net>
* blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
fix typo (rb_thead_t -> rb_thread_t).
* eval_intern.h: remove unused definitions.
* common.mk: fix around vm_opts.h path
and remove harmful argument passed to insns2vm.rb.
Thu Feb 8 03:11:47 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::unescapeHTML): invalid decoding for single
unescaped ampersand. a patch from Tietew
<tietew+ruby-dev at tietew.net> in [ruby-dev:30292].
fixed: [ruby-dev:30289]
Wed Feb 7 23:25:31 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (specific_eval): suppress warning.
* thread_win32.h: undefine _WIN32 on cygwin. [ruby-dev:30303]
Wed Feb 7 22:41:34 2007 Koichi Sasada <ko1@atdot.net>
* eval_intern.h: remove UNSUPPORTED() macro.
* thread.c: fix to define Continuation methods
(they only do rb_notimplement()).
Wed Feb 7 22:33:58 2007 Koichi Sasada <ko1@atdot.net>
* eval_intern.h, yarvcore.h: remove unused macro definition.
Wed Feb 7 22:30:28 2007 Koichi Sasada <ko1@atdot.net>
* eval.c: fixed to use ANSI function style.
Wed Feb 7 09:35:32 2007 Koichi Sasada <ko1@atdot.net>
* this commit is a result of refactoring. only renaming functions,
moving definitions place, add/remove prototypes, deleting
unused variables and removing yarv.h.
This commit doesn't change any behavior of ruby/vm.
* yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
* error.c, eval_intern.h: include yarvcore.h instead yarv.h
* rename some functions:
* debug.[ch]: debug_*() -> ruby_debug_*()
* iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
* iseq.c: node_name() -> ruby_node_name()
* vm.c: yarv_check_redefinition_opt_method() ->
rb_vm_check_redefinition_opt_method()
* some refactoring with checking -Wall.
* array.c: remove rb_ary_ptr() (unused) and remove unused
local variables.
* object.c: add a prototype of rb_mod_module_exec().
* eval_intern.h (ruby_cref): set it inline.
* eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
* parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
* process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
* thread.c: remove raw_gets() function (unused) and fix some format
mismatch (format mismatchs have remained yet. this is todo).
* thread.c (rb_thread_wait_fd_rw): fix typo on label name.
* thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
* vm.c (rb_svar, rb_backref_get, rb_backref_get,
rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
* vm.c (yarv_init_redefined_flag): add a prototype and rename
yarv_opt_method_table to vm_opt_method_table.
* vm.c (rb_thread_eval): moved from yarvcore.c.
* yarvcore.c: remove unused global variables and fix to use nsdr().
Wed Feb 7 03:39:32 2007 Koichi Sasada <ko1@atdot.net>
* blockinlining.c, compile.c, compile.h, error.c, eval.c,
eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
* yarv_*_t -> rb_*_t
* yarv_*_struct -> rb_*_struct
* yarv_tag -> rb_vm_tag
* YARV_* -> RUBY_VM_*
* proc.c, vm.c: move functions about env object creation
from proc.c to vm.c.
* proc.c, yarvcore.c: fix rb_cVM initialization place.
* inits.c: change Init_ISeq() order (after Init_VM).
* ruby.h, proc.c: change declaration place of rb_cEnv
from proc.c to ruby.c.
Tue Feb 06 22:06:45 2007 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c}:
imported nkf 2007-01-28.
* Fixed: can't decode MIME encode JIS string.
* Fixed: Fullwitdh-halfwidth conversion.
* Support DoCoMo's and Softbank's EMOJI
* Support CP932, CP5022x, eucJP-ms UDC
* Support UTF-32 encoding
* Support beyond BMP
[ruby-dev:29700] [ruby-dev:29922] [ruby-dev:30144]
Tue Feb 6 20:36:19 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/rss.rb, lib/rss/parser.rb: followed current Ruby
specification. [ruby-dev:30274]
Tue Feb 6 20:29:44 2007 Kouhei Sutou <kou@cozmixng.org>
* lib/rss/rss.rb, lib/rss/parser.rb: removed needless code for
backward compatibility.
Tue Feb 6 18:43:17 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb: moved fixes for EPIPE to the correct
place. [ruby-core:10204]
Tue Feb 6 16:38:08 2007 Koichi Sasada <ko1@atdot.net>
* vm_opts.h: set properties:
svn:keywords: Author Date Id Revision
svn:eol-style: native
Tue Feb 6 15:55:46 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (ivar_i): need to support class local instance
variables.
Tue Feb 6 15:44:11 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each): fix setting is_local flag.
* yarvtest/test_class.rb: add a test for class local isntance variable.
Tue Feb 6 14:15:34 2007 Koichi Sasada <ko1@atdot.net>
* compile.c, insns.def: remove (get|set)instancevariable2 and add a
operand is_local to (get|set)instancevariable.
* yarvtest/test_class.rb: add a test for class local instance variable.
* parse.y (rb_decompose_ivar2): remove unused variable oid.
* tool/insns2vm.rb: remove needless require.
Tue Feb 6 11:18:41 2007 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb: check the control connection on EPIPE.
Thanks, Simon Williams. [ruby-core:9547]
Tue Feb 6 11:03:27 2007 Koichi Sasada <ko1@atdot.net>
* complement last commit.
* common.mk (*.inc): use VPATH.
* vm_opts.h: renamed from vm_opts.h.base.
Tue Feb 6 10:02:41 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* tool/insns2vm.rb: use vm_opts.h in VPATH.
Tue Feb 6 03:47:58 2007 Koichi Sasada <ko1@atdot.net>
* proc.c: support Binding#eval.
* yarvtest/test_eval.rb: add a test for above change.
Tue Feb 6 03:13:33 2007 Koichi Sasada <ko1@atdot.net>
* proc.c: refactoring (remove K&R style, move Binding stuffs from
Init_Proc() to Init_Binding()).
Tue Feb 6 01:07:14 2007 Koichi Sasada <ko1@atdot.net>
* intern.h: prepare rb_last_status_get() and rb_last_status_set().
Use these functions instead of rb_last_status ([ruby-dev:30264]).
* process.c: define above functions.
* ext/pty/pty.c: use above functins.
* io.c (pipe_finalize): ditto.
* process.c: ditto.
Mon Feb 5 21:26:56 2007 Koichi Sasada <ko1@atdot.net>
* ruby.h: add a prototype of rb_id2str().
Mon Feb 5 21:06:50 2007 Koichi Sasada <ko1@atdot.net>
* eval_thread.c, common.mk: remove eval_thread.c.
* yarvcore.c: rename cYarvThread to rb_cThread.
* gc.c: remove YARV_* prefix.
* gc.h: add an include guard and prototype of rb_gc_set_stack_end().
* inits.c: fix to ANSI prototype style and reorder Init_*().
* io.c (pipe_finalize): TODO: comment out last_status.
* process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
rb_last_status and make last_status_get() to access $?.
* yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
* ruby.h: add declarations of rb_cISeq and rb_cVM.
* thread.c: move eval_thread.c codes to thread.c and remove yarv_*
function prefix.
* thread.c (thread_start_func_2): use yarv_thread_t#first_func if
it is not null.
* vm.c: fix copyright year.
* yarvcore.c (Init_vm): rename to Init_VM().
Mon Feb 5 04:09:48 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_frame_callee): check if prev_cfp can be accessible.
a patch from Yoshinori Sano <yoshinori.sano at gmail.com> in
[ruby-dev:30252]. solves [ruby-dev:30200] and [ruby-core:9856].
Sun Feb 4 20:34:41 2007 Kouhei Sutou <kou@cozmixng.org>
* test/rss/rss-assertions.rb: removed needless code for backward
compatibility.
Sun Feb 4 02:22:59 2007 Akinori MUSHA <knu@iDaemons.org>
* lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
print.
Sat Feb 3 23:51:58 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (rb_compose_ivar2): function to create a new ivar2
symbol from a symbol and a class. back-ported from matzruby.
* parse.y (rb_decompose_ivar2): reverse function of
rb_compose_ivar2().
* marshal.c (w_symbol): support class local instance variables.
* marshal.c (r_object0): ditto.
* compile.c (defined_expr): ditto.
* compile.c (iseq_compile_each): ditto.
* insns.def: add two new instructions: getinstancevariable2 and
setinstancevariable2.
Sat Feb 3 23:21:13 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* insns.def (setclassvariable): remove unnecessary operand.
* compile.c (iseq_compile_each): ditto.
* common.mk (insns_info.inc): add dependency for insns_info.inc.
Sat Feb 3 14:32:58 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
fix the bug of WIN32OLE_VARIANT.new when variant type is
VT_ARRAY.
* ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.
* test/win32ole/test_win32ole.rb: add some test.
* test/win32ole/test_win32ole_variant.rb: ditto.
Sat Feb 3 03:35:20 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
* common.mk (runruby, benchmark, benchmark-each, tbench): use
PROGRAM for the file to be built.
* proc.c (yarv_proc_alloc): needs return.
* call_cfunc.ci, compile.c, compile.h, debug.h, eval.c,
eval_error.h, eval_jump.h, eval_load.c, eval_thread.c, gc.c,
insnhelper.h, insns.def, iseq.c, main.c, numeric.c, parse.y,
range.c, ruby.h, signal.c, thread.c, thread_win32.ci, vm.c,
vm.h, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
fixed indents and non-C90 comments.
* regenc.h: revert to before YARV.
* lib/mkmf.rb (create_makefile): make object files depend on
extconf.h even if depend file exists.
Fri Feb 2 23:39:42 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* common.mk (bin): add more dependency. a patch from Tadashi
Saito <shiba at mail2.accsnet.ne.jp>. [ruby-dev:30245]
Fri Feb 2 18:44:31 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* insns.def (setclassvariable): remove warn argument.
Fri Feb 2 18:36:40 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* common.mk (compile.$(OBJEXT)): add config.h to vm.c and
compile.c.
Fri Feb 2 18:27:54 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c: remove duplicated global variables rb_cProc and
rb_cBinding. [ruby-dev:30242]
Fri Feb 2 00:13:44 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.h (SYMBOL_P): make Symbol immediate again for performance.
* string.c: redesign symbol methods.
Thu Feb 1 23:25:21 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (rb_id2str): store Strings for operator symbols.
[ruby-dev:30235]
Thu Feb 1 21:04:39 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (assignable_gen): no need to generate NODE_CVDECL.
* compile.c (iseq_compile_each): no NODE_CVDECL.
Thu Feb 1 20:53:32 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* vm.c (eval_get_cvar_base): destination for class variable access
is now strictly innermost surrounding class or module. warned
if accessed from toplevel.
* variable.c (rb_cvar_get): new class variable look-up scheme:
1) look up in the class. 2) if the class is singleton attached
to a class (i.e. metaclass) then start look up in the attached
class and its ancestors. 3) otherwise, look-up in ancestors of
the class.
* eval.c (cvar_cbase): destination for class variable access is
the class/module that holds the method, or cbase outside of
methods.
Thu Feb 1 20:31:41 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_cvar_set): remove warn argument.
Wed Jan 31 14:52:09 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* test/ruby/test_iterator.rb (TestIterator::test_block_given_within_iterator):
add new test. [ruby-core:10125]
Tue Jan 30 17:01:21 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* string.c (rb_str_sub_bang): calling rb_str_modify() should be just
before actually modifying the string.
fixed: [ruby-dev:30211] (originally reported by zunda)
Tue Jan 30 13:24:06 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (int_pred): add Integer#pred corresponding
Integer#succ. [RCR#5]
Tue Jan 30 12:05:35 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* mkconfig.rb: autoconf 2.61 support. [ruby-core:10016]
Mon Jan 29 23:52:32 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* tool/compile.rb: replace YARVCore by VM class.
Mon Jan 29 17:52:44 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/date/format.rb (Date::Format::Bag::method_missing): add
prefix to avoid making t class-local instance variable.
Mon Jan 29 21:32:37 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
WIN32OLE_VARIANT#vartype.
* test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
WIN32OLE.locale.
* test/win32ole/test_win32ole_variant.rb: add test for
WIN32OLE_VARIANT#vartype.
Mon Jan 29 14:14:35 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* tool/parse.rb: replace YARVCore by VM class.
http://d.hatena.ne.jp/ysano2005/20070128
Sun Jan 28 08:41:49 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: refactoring.
Sat Jan 27 18:36:33 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
when variant type is VT_ARRAY.
* test/win32ole/test_win32ole_variant.rb: add some test.
Fri Jan 26 23:55:56 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: bug fix of WIN32OLE_VARIANT when variant
type is VT_BYREF|VT_VARIANT.
* test/win32ole/test_win32ole_variant_with_ie.rb: ditto.
Fri Jan 26 12:03:39 2007 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk.rb (TkConfigMethod#__confinfo_cmd,
__conv_keyonly_optkeys): make them private [ruby-dev:30074].
* ext/tk/lib/tk/txtwin_abst.rb: fix typo [ruby-dev:30073].
* ext/tk/lib/tk/canvas.rb (TkCanvas#scan_dragto): lack of an argument.
* ext/tk/lib/tk/canvas.rb: clarify the including module name
[ruby-dev:30080].
* ext/tk/lib/tk/scrollable.rb: change primary name of modules
[ruby-dev:30080].
Fri Jan 26 07:48:57 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enumerator_init_copy): need to copy internal
structure on clone and dup. [ruby-dev:30192]
Wed Jan 24 20:34:51 2007 Kouhei Sutou <kou@cozmixng.org>
* test/ruby/test_iterator.rb: removed a needless workaround.
Wed Jan 24 18:05:39 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): fix
regexp font-lock bug. [ruby-talk:235758]
Tue Jan 23 18:26:12 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::QueryExtension::read_multipart): use == instead
of ===. [ruby-dev:30176]
Tue Jan 23 15:39:25 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
setup.mak}: add --with-baseruby configure option.
Mon Jan 22 14:57:25 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/socket/socket.c: fix errors in socket sample code.
[ruby-core:09992]
Sat Jan 20 21:05:18 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (fole_s_set_code_page): WIN32OLE.codepage=
accepts installed codepage.
* test/win32ole/test_win32ole.rb (test_s_codepage_changed): ditto.
Sat Jan 20 11:18:49 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_invoke, ole_invoke2, ole_propertyput):
modify WIN32OLERuntimeError message.
* test/win32ole/test_win32ole.rb: ditto.
Sat Jan 20 06:45:21 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval_proc.c (method_receiver): add new method to get the bound
receiver of the method object. [ruby-talk:234949]
* eval_proc.c (method_name): new method to get the name of a
method.
* eval_proc.c (method_owner): a new method to get the class or
module that defines the method.
Fri Jan 19 17:12:23 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_VARIANT::Empty,
WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
* test/win32ole/test_win32ole_variant.rb: ditto.
* test/win32ole/test_nil2vtempty.rb(test_openSchema): ditto.
Fri Jan 19 06:53:38 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (olevariant_free): fix memory leak.
* ext/win32ole/win32ole.c (ole_val2olevariantdata):
WIN32OLE_VARIANT.new accepts nil as first argument for some VARIANT
TYPE.
* test/win32ole/test_win32ole_variant.rb: ditto.
Wed Jan 17 17:31:28 2007 Koichi Sasada <ko1@atdot.net>
* some refactoring around yarvcore and proc.
* eval_proc.c: renamed to proc.c.
* common.mk: ditto.
* yarvcore.h, yarvcore.c: rename or remove some global variables
removed: mYarvCore, mYarvInsns
renamed: cYarvISeq -> rb_cISeq,
cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
And change/remove some functions which added with YARV.
* compile.c: ditto.
* eval.c: ditto.
* iseq.c: ditto.
* vm.c: ditto.
* inits.c: rename Init_yarvcore to Init_vm.
* yarvcore.c, proc.c: move some functions and initialization
from yarvcore.c to proc.c.
* intern.h, proc.c: add global function rb_binding_new(void).
Tue Jan 16 17:49:29 2007 Koichi Sasada <ko1@atdot.net>
* vm.c (eval_search_super_klass): rename to search_super_klass() and
use it by th_call_super().
* insns.def: ditto.
Tue Jan 16 17:48:11 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: fix ruby script path.
Tue Jan 16 17:39:44 2007 Koichi Sasada <ko1@atdot.net>
* vm.c (invoke_block): fix to specify self.
Tue Jan 16 12:12:27 2007 Koichi Sasada <ko1@atdot.net>
* env.h: removed
Tue Jan 16 12:00:06 2007 Koichi Sasada <ko1@atdot.net>
* eval_proc.c (rb_proc_new): added.
* string.c (sym_to_proc): supported.
* vm.c (invoke_block, th_invoke_yield, th_invoke_proc): fix to support
rb_proc_new.
* yarvcore.c: add a test code.
Sat Jan 13 23:24:59 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (ole_free, ole_type_free,
olemethod_free, olevariable_free, oleparam_free,
ole_event_free): fix memory leak. [ruby-core:09846]
Wed Jan 10 00:10:23 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_replace): use ptr and len of orig instead of
shared. fixed: [ruby-dev:30116]
Tue Jan 9 17:48:38 2007 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (rb_find_file): should not call fpath_check() with NULL.
fixed: [ruby-core:09867]
Tue Jan 9 12:29:20 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/etc/etc.c (etc_getpwuid, etc_getgrgid): fix to correctly
convert uid/gid from VALUE.
* ext/etc/etc.c (etc_getpwuid): ditto.
Tue Jan 9 03:54:38 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_upto): String#upto from empty string makes
inifinite loop. [ruby-core:09864]
* string.c (rb_str_upto): use RSTRING_LEN().
Sun Jan 7 18:36:05 2007 Koichi Sasada <ko1@atdot.net>
* thread.c (rb_thread_stop_timer_thread(), rb_thread_reset_timer_thread(),
rb_thread_start_timer_thread()): added.
* thread_pthread.ci: add a native_thread_join() and move
rb_thread_reset_timer_thread() definition to thread.c.
* thread_win32.ci: ditto
* process.c: fix before_exec(), after_exec() to stop timer thread
(and restart timer thread if exec failed). and fix to reset
timer thread information when forked child process starts
(to fix [ruby-core:09822]).
Sun Jan 7 18:28:17 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: add a "compare" rule and fix MATZRUBY variable
Sun Jan 7 17:47:16 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* test/win32ole/test_win32ole.rb: add test for WIN32OLE#[],
WIN32OLE#[]=.
* ext/win32ole/win32ole.c: update comment for rdoc of
WIN32OLE#[] and WIN32OLE#[]=.
Sun Jan 7 12:13:26 2007 Eric Hodel <drbrain@segment7.net>
* lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_class_comment):
Look for class and module comments above rb_define_class and
rb_define_module. Patch by Daniel Berger <djberg96 at gmail.com>
Sun Jan 7 10:32:12 2007 Eric Hodel <drbrain@segment7.net>
* lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
Properly handle escaping of : in comments.
* test/rdoc/parsers/test_parse_c.rb:
Test RDoc::C_Parser#do_classes and Rdoc::C_Parser#find_class_comment.
Sun Jan 7 09:31:18 2007 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: updated based on date2 4.0.1.
Sat Jan 6 18:46:34 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_getline_fast, rb_io_getline): increase lineno
when met the delimiter or EOF. fixed: [ruby-dev:30081]
* io.c (prepare_getline_args, rb_io_getline_1): split
preparation of arguments and reading. [ruby-dev:30085]
Sat Jan 6 13:48:36 2007 Koichi Sasada <ko1@atdot.net>
* insns.def (send): fix to optimize send() with Symbol.
* yarvtest/test_method.rb: add another test.
Sat Jan 6 13:43:55 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: add PHONY dependency to some rules
Sat Jan 6 11:50:33 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_read): fix wrong replacement. [ruby-dev:30070]
Sat Jan 6 09:10:52 2007 Koichi Sasada <ko1@atdot.net>
* insns.def: support direct method dispatch with "send" or "funcall".
This means that "obj.send :m" skips "BasicObject#send" invocation
(method frame creation, etc) and "obj.m" invokes directly.
If you make backtrace, there are no enties of "send" method.
* compile.c (iseq_specialized_instruction): fix to support above
* eval.c: ditto (remove "static" from rb_f_send and rb_f_funcall
* yarvcore.c: ditto (add a external IDs for compiler)
* yarvcore.h: ditto (add a VM_CALL_SEND_BIT macro)
* yarvtest/test_method.rb: add tests for above changes
* eval.c: remove unused "Kernel#send" declaration
Sat Jan 6 08:29:17 2007 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c (Init_win32ole): add
WIN32OLE::VARIANT::VT_EMPTY, WIN32OLE::VARIANT::VT_NULL
* test/win32ole/test_win32ole_variant_m.rb (test_variant): ditto.
Sat Jan 6 03:49:22 2007 Koichi Sasada <ko1@atdot.net>
* benchmark/run.rb: change option format
* common.mk: ditto
Fri Jan 5 22:21:08 2007 Koichi Sasada <ko1@atdot.net>
* benchmark/bm_app_pentomino.rb: use Array#dup instead of
Array#clone
* benchmark/bmx_temp.rb: removed
* benchmark/run.rb: use run.rb instead of run_rite.rb
* common.mk: ditto
* benchmark/run_rite.rb: removed
* common.mk: use $(srcdir)/test.rb to run a test program
with "make run"
* benchmark/bmx_temp.rb: removed and
set svn:ignore (bmx_*.rb) to benchmark/
* test.rb: set svn:ignore
Fri Jan 5 21:03:08 2007 Koichi Sasada <ko1@atdot.net>
* yarvtest/yarvtest.rb: fix to compare results
Fri Jan 5 20:52:56 2007 Koichi Sasada <ko1@atdot.net>
* compile.c, compile.h: add ADD_CALL_RECEIVER() macro.
* insns.def (send): use GET_SELF() direct if FCALL.
* eval.c (rb_f_send): check method dispatch type to permit
invoking private method when dispatch type is FCALL/VCALL
* insns.def (opt_ltlt): remove useless statement.
* vm.h: remove unused macros.
Fri Jan 5 20:50:31 2007 Koichi Sasada <ko1@atdot.net>
* benchmark/run_rite.rb: fix to use readlines instead of
read(...).lines (because 1.8 doesn't have String#lines).
Fri Jan 5 20:28:19 2007 Koichi Sasada <ko1@atdot.net>
* thread_win32.ci (rb_thread_reset_timer_thread):
added ([ruby-dev:30086]).
Fri Jan 5 20:20:36 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: add .SUFFIXES rule
Fri Jan 5 15:58:15 2007 Koichi Sasada <ko1@atdot.net>
* eval_method.h (rb_alias): fix to check search result
Fri Jan 5 13:59:53 2007 Koichi Sasada <ko1@atdot.net>
* eval_method.h (rb_add_method): fix to check old_node
Fri Jan 5 12:03:07 2007 Koichi Sasada <ko1@atdot.net>
* compile.c (iseq_compile_each, set_block_local_tbl):
support NODE_LAMBDA (partly).
* sample/test.rb: restore test of NODE_LAMBDA
* test/ruby/test_lambda.rb: ditto
Fri Jan 5 12:31:23 2007 GOTOU Yuuzou <gotoyuzo@notwork.org>
* thread_pthread.ci (native_sleep): fix tv_nsec overflow.
Thu Jan 4 20:01:29 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: rename yarv-test-[all/each] to compare-test[/-each].
purpose of "compare-test" rule is to compare ruby (trunk) and
matzruby (branches/matzruby) binary in miniruby level. MATZRUBY
parameter means an path to miniruby of matzruby binary. to do this
comparison test, you should build matzruby branch.
* yarvtest/yarvtest.rb: fix to use command line option as
command names to be compared.
* yarvtest/runner.rb: remove a debug output.
Thu Jan 4 19:12:27 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: fix to use test.rb script in build directory.
($(srcdir)/test.rb -> test.rb)
Thu Jan 4 17:28:05 2007 GOTOU Yuuzou <gotoyuzo@notwork.org>
* lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler#initialize):
Arrays could not be modified in its each block. [ruby-dev:30063]
Thu Jan 4 16:57:14 2007 Koichi Sasada <ko1@atdot.net>
* yarv_version.h: removed.
* common.mk: remove yarv_version.h from rules
* yarvcore.h (Init_yarvcore): remove useless constants
Thu Jan 4 17:00:06 2007 GOTOU Yuuzou <gotoyuzo@notwork.org>
* ext/openssl/ossl_asn1.c (Init_ossl_asn1):
OpenSSL::ASN1::ASN1Data#value,#tag,#tag_class and
OpenSSL::ASN1::BitString#unused_bits should be public.
Thu Jan 04 13:45:10 2007 Koichi Sasada <ko1@atdot.net>
* thread_pthread.ci: fix last changes around PTHREAD_STACK_MIN.
Thu Jan 04 13:42:47 2007 Koichi Sasada <ko1@atdot.net>
* common.mk: restore changes.
Thu Jan 04 10:33:54 2007 Koichi Sasada <ko1@atdot.net>
* thread_pthread.ci: fix to skip using PTHREAD_STACK_MIN.
[ruby-dev:30063]
Thu Jan 04 10:30:11 2007 Koichi Sasada <ko1@atdot.net>
* benchmark/run_rite.rb (bm): fix to use lines.
Wed Jan 3 18:49:15 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_getline): lineno update condition was wrong.
[ruby-dev:30065]
* io.c (rb_io_getline_fast): ditto.
Wed Jan 3 11:36:51 2007 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (ruby_dup): start GC on ENOMEM as well.
Tue Jan 2 10:29:54 2007 Eric Hodel <drbrain@segment7.net>
* ext/zlib/zlib.c: fix to compile on YARV
ruby_errinfo -> rb_errinfo()
Mon Jan 01 08:07:06 2007 Koichi Sasada <ko1@atdot.net>
* ext/tk/tcltklib.c: fix to compile on YARV
ruby_errinfo -> rb_errinfo(),
ruby_safe_level -> rb_safe_level().
Mon Jan 01 07:57:17 2007 Koichi Sasada <ko1@atdot.net>
* test/drb/test_drbssl.rb: fix to skip drb tests.
Mon Jan 1 06:13:11 2007 Eric Hodel <drbrain@segment7.net>
* lib/rdoc/parsers/c_parser.rb: Make Rdoc accessible. Update constant
value information.
Mon Jan 1 06:13:11 2007 Eric Hodel <drbrain@segment7.net>
* ext/bigdecimal/bigdecimal.c: Update constant comments to provide
values for RDoc.
Mon Jan 1 06:05:55 2007 Eric Hodel <drbrain@segment7.net>
* lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constansts):
Allow RDoc comment to give friendly value for rb_define_const. Patch
by Daniel Berger <djberg96 at gmail.com>, [ruby-patches-7499].
* lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constansts): Fix
whitespace handling in constant comments.
Mon Jan 01 00:00:00 2007 Koichi Sasada <ko1@atdot.net>
* Merge YARV
Sun Dec 31 16:22:48 2006 Eric Hodel <drbrain@segment7.net>
* array.c: Fix Array#reject.
Sun Dec 31 00:46:25 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date2.rb: removed.
Sun Dec 31 00:15:13 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb: updated based on date2 4.0.
Sat Dec 30 04:38:23 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_each_with_index): reuse array for yield parameters.
* enum.c (enum_min, enum_max): ditto.
Sat Dec 30 04:25:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_inject): reuse array for yield parameters.
Sat Dec 30 02:54:22 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/stringio/stringio.c (strio_gets): accepts limit argument.
* ext/stringio/stringio.c (strio_readline, strio_each,
strio_readlines): ditto.
Sat Dec 30 02:22:32 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/stringio/stringio.c (strio_getline): add limit capability.
* io.c (rb_io_gets_m): accepts limit argument. [ruby-talk:231563]
* io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline):
ditto.
* io.c (appendline): add limit capability.
* io.c (rb_io_getline_fast, rb_io_getline): ditto.
* io.c (rb_io_getline): small refactoring for DRY.
* io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring.
Thu Dec 28 15:27:38 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::Cookie::initialize): use Array() again.
[ruby-core:09781]
Wed Dec 27 20:52:32 2006 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* ext/win32ole/win32ole.c: remove WIN32OLE::PROPERTY class.
* ext/win32ole/tests/testWIN32OLE.rb: ditto.
Wed Dec 27 10:04:11 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_Array): returns 1-element array if the argument
does not have to_ary nor to_a.
Tue Dec 26 21:02:14 2006 Masaki Suketa <masaki.suketa@nifty.ne.jp>
* test/win32ole/test_folderitem2_invokeverb.rb: The argument
of Shell.NameSpace should not be file path.
Tue Dec 26 06:13:08 2006 Minero Aoki <aamine@loveruby.net>
* ext/bigdecimal/bigdecimal.c: remove useless method
BigDecimal#!=. [ruby-dev:30050]
Thu Dec 21 15:37:17 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_slice_bang): rdoc description bug fixed.
[ruby-core:09754]
Wed Dec 20 12:54:31 2006 Koichi Sasada <ko1@atdot.net>
* Convert CVS repository to Subversion repository.
Mon Dec 18 08:36:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::Cookie::initialize): Array(string) no longer
works. [ruby-core:09738]
Fri Dec 15 00:19:53 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
* lib/mkmf.rb (create_makefile): remove static library before update,
to get rid of sludge of Borland tlib.exe.
Thu Dec 14 18:29:13 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/readline/readline.c: NetBSD editline does not have
rl_username_completion_function() and rl_completion_matches().
a patch from Takahiro Kambe <taca at back-street.net>.
[ruby-dev:30008]
Thu Dec 14 18:20:43 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/irb/locale.rb (IRB::Locale::puts): typo fixed. a patch from
NAKAMURA Usaku <usa@ruby-lang.org>. [ruby-dev:30012]
Tue Dec 12 23:33:53 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (Switch#parse_arg, Switch#conv_arg): splat failures.
Mon Dec 11 11:51:10 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/sha2/lib/sha2.rb: Moved one level up from under
the superfluous subdirectory digest/.
Mon Dec 11 11:46:18 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_define_const): typo fixed.
Mon Dec 11 09:36:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_aset): index double decode problem.
[ruby-core:09695]
Sat Dec 9 21:39:24 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_cleanup): keep the exception till after END blocks.
[ruby-core:09675]
Sat Dec 9 11:22:00 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/irb/locale.rb (IRB::Locale::search_file): ues File.exist?
instead of File.exists?. a patch from Yutaka Kanemoto
<kinpoco at gmail.com> in [ruby-dev:30000].
Fri Dec 8 18:11:18 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/optparse.rb: cannot put :nodoc: before method definition.
put after it.
Fri Dec 8 17:00:13 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* bin/rdoc: ues File.exist? instead of File.exists?.
Thu Dec 7 23:50:21 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (Init_Object): new method Dir.exist?(path).
[ruby-core:09663]
* file.c (Init_File): remove File.exists?; use File.exist?
instead.
* file.c: rename functions to test_* to rb_file_*_p.
Thu Dec 7 09:29:02 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/weakref.rb (WeakRef::__setobj__): should support
marshaling. [ruby-talk:228508]
Wed Dec 6 23:58:36 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, common.mk (NULLCMD): moved for platforms that empty
command does not run. fixed: [ruby-dev:29994]
* win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
[ruby-core:09572]
Tue Dec 5 19:01:42 2006 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (SITE_DIR): fixed to emtpy RUBY_SITE_LIB in config.h on
NetBSD. fixed: [ruby-dev:29358]
Tue Dec 5 18:38:21 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/matrix.rb (Matrix::rank): use quo method to avoid integer
division problem. [ruby-core:09644]
* lib/matrix.rb (Matrix::rank_e): ditto.
Tue Dec 5 00:59:05 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* misc/ruby-mode.el (ruby-parse-partial): need to parse "/=" as
self assignment operator, not regex. [ruby-talk:227324]
Tue Dec 5 00:19:14 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* intern.h, object.c, variable.c (rb_mod_constants): added an optional
flag to search ancestors, which is defaulted to true, as well as
const_defined? and const_get. [ruby-dev:29989]
Mon Dec 4 23:49:28 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (install_recursive): get rid of warning.
* lib/optparse.rb (CompletingHash#match): get rid of splat failure.
Mon Dec 4 19:16:39 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest/hmac.rb: Do alias << update.
Mon Dec 4 10:48:03 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.h (OFFT2NUM): use LONG2NUM() if sizeof(long) equals to
sizeof(off_t).
Mon Dec 4 08:32:25 2006 Shugo Maeda <shugo@ruby-lang.org>
* lib/cgi.rb (CGI::QueryExtension::read_multipart): should quote
boundary. JVN#84798830
Sun Dec 3 16:16:53 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest/hmac.rb: Fix problems with update
timing. [Reported by: oss-ruby@technorama.net]
Sat Dec 2 07:33:53 2006 GOTOU Yuuzou <gotoyuzo@notwork.org>
* lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):
HTTPUtils::parse_header() takes a string. [ruby-dev:29931]
* lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header):
String does no longer have each method.
* lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data):
ditto.
Sat Dec 2 07:09:04 2006 GOTOU Yuuzou <gotoyuzo@notwork.org>
* ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]
Fri Dec 1 16:31:53 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
[ruby-talk: 227408]
Tue Nov 28 17:25:11 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (ary_iter_check): should check modification (size
change) during iteration.
* array.c (rb_ary_initialize, rb_ary_shift, rb_ary_unshift,
rb_ary_splice, rb_ary_reverse, rb_ary_sort, rb_ary_delete,
rb_ary_delete_at, rb_ary_reject_bang, rb_ary_replace,
rb_ary_clear, rb_ary_fill, rb_ary_uniq_bang, rb_ary_compact,
rb_ary_shuffle): add iteration check.
Mon Nov 27 09:00:15 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_ord): typo fixed. reported from Kornelius
Kalnbach <murphy@rubychan.de>. [ruby-core:09621]
Sun Nov 26 16:36:46 2006 URABE Shyouhei <shyouhei@ruby-lang.org>
* version.h: addition of RUBY_PATCHLEVEL.
* version.c: ditto.
Wed Nov 22 16:00:49 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/extconf.rb: support --with-X11/--without-X11 option.
* ext/tk/README.tcltklib: add description about --with-X11-* option
[ruby-talk:225166] and --with-X11/--without-X11 option.
* ext/tk/tkutil/extconf.rb: able to be called manually
[ruby-talk:225950].
Sat Nov 18 23:39:20 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_obj_tap): a new method. [ruby-talk:224013]
Wed Nov 15 23:22:54 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (test_grpowned, rb_stat_grpowned): should honor
supplementary group IDs. [ruby-core:09546]
Tue Nov 7 18:35:18 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (formal_assign): need to pack rest arg information in
argc.
Tue Nov 7 18:05:01 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/itemconfig.rb: minor bug fix.
Tue Nov 7 17:52:08 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (rb_include_module): revert duplicate inclusion of
modules. [ruby-dev:29793]
Tue Nov 7 17:18:11 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (method_missing): update old argument adjustment.
Tue Nov 7 16:41:21 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (when_check): need to splat for NODE_ARGSCAT as well.
[ruby-dev:29860]
Mon Nov 6 22:23:52 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (Init_String): remove duplicated definition of
Symbol#to_s.
Mon Nov 6 18:54:13 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (svalue_to_avalue): need to splat but no error.
* eval.c: new macros - YIELD_CALL, YIELD_VALUES.
* eval.c (rb_yield_values): specify YIELD_VALUES.
* eval.c (rb_yield_0): use new macros.
* eval.c (proc_invoke): slightly modified to separate YIELD_CALL
and YIELD_VALUES from YIELD_ARY_ARGS.
* object.c (Init_Object): add nil.to_splat => [].
Mon Nov 6 15:41:55 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/itemconfig.rb: ext/tk/lib/tk/itemconfig.rb: bug
fix on 'itemconfiginfo' method, and modify to make it easy to
override 'itemconfiginfo' method.
* ext/tk/lib/tkextlib/tile/treeview.rb: support Tile 0.7.8.
* ext/tk/lib/tkextlib/version.rb: [new] add Tk::Tkextlib_RELEASE_DATE
to get the information from scripts.
* ext/tk/lib/tk.rb: load 'tkextlib/version.rb', and update RELEASE_DATE
* ext/tk/lib/tkextlib/SUPPORT_STATUS: update.
* ext/tk/sample/editable_listbox.rb: [new] the listbox with editable
items. It's one of the example about usage of Place geometry manager.
* ext/tk/sample/tktextio.rb: improve the functions of TkTextIO class.
Those are required by 'irbtkw.rbw'.
* ext/tk/sample/irbtkw.rbw: [new] IRB on Ruby/Tk. It doesn't need any
real console. IRB works on a text widget without I/O blocking. That
is, thread switching on IRB will work properly, even if on Windows.
Mon Nov 6 00:42:05 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (arg_dup_check): vid may be nameless internal id.
Sun Nov 5 19:52:19 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb: updated based on date2 3.9.7.
Sat Nov 4 13:09:31 2006 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb: accept NOMODSEQ. [ruby-core:9002]
Fri Nov 3 00:16:37 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/socket/socket.c (ruby_getnameinfo__aix): AF_INET6 workaround
for AIX. a patch from Yutaka Kanemoto <kinpoco AT gmail.com>.
[ruby-dev:29744]
Thu Nov 2 14:19:44 2006 Akinori MUSHA <knu@iDaemons.org>
* lib/set.rb (Set#^): Fix XOR operation against a container that
holds duplicate values. [ruby-core:9372]
Thu Nov 2 10:00:06 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c: class Symbol is no longer subclass of String. also
covers [ruby-core:09366]
Thu Nov 2 08:21:07 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol should
come earlier than String.
* lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap):
ditto.
* lib/set.rb (TC_Set::test_s_new): strings are no longer
Enumerable
* lib/soap/property.rb (Property::load): ditto.
* lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto.
* lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto.
Thu Nov 2 09:08:04 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c: revert lfree shift/unshift boost patch to avoid unknown
memory error.
Wed Nov 1 23:24:42 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.h (struct RArray): revert embedding ptr in RVALUE.
* array.c: ditto.
Wed Nov 1 23:01:55 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (hash): use Bob Jenkins' hash algorithm.
Wed Nov 1 02:22:31 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
optimization.
* ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
a digest instance with another of a different class.
Wed Nov 1 01:05:13 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
fixed: [ruby-list:42928]
Tue Oct 31 17:03:21 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_dup): duplicate the class of original time.
[ruby-core:09357]
* lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
should respect subclasses. [ruby-core:09357]
Tue Oct 31 16:25:22 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (ary_shared_first): should address offset after
ary_shared_array(). [ruby-core:09358]
Mon Oct 30 23:40:52 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in (miniruby): add XLDFLAGS.
* configure.in (aix): use -bE option for miniruby. [ruby-dev:29698]
* dir.c (glob_helper): get rid of possible memory leak.
* win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
rb_w32_get_environ): not to use GC before initialization.
Mon Oct 30 19:28:02 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* bignum.c (rb_big2str0): use better approximation.
Mon Oct 30 18:35:33 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big2str0): wrong allocation length. a patch from
U.Nakamura <usa at garbagecollect.jp> [ruby-dev:29710]
Mon Oct 30 12:34:02 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): fix commit miss. [ruby-dev:29707]
Mon Oct 30 11:15:40 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (rb_str_format): should preserve leading zero
information for negative %b and %x. [ruby-talk:221347]
Sun Oct 29 19:51:31 2006 K.Kosako <sndgk393 AT ybb.ne.jp>
* regexec.c: invalid offset value was used in STATE_CHECK_BUFF_INIT().
Sat Oct 28 20:13:18 2006 K.Kosako <sndgk393 AT ybb.ne.jp>
* oniguruma.h: Version 4.4.5
* regint.h: ditto.
* regerror.c: ditto.
* regexec.c: ditto.
* regcomp.c ditto.
* regparse.c ditto.
Sat Oct 28 07:56:13 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (r_object0): missing break. [ruby-core:09345]
Fri Oct 27 17:30:31 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enum_each_cons): move RETURN_ENUMERATOR() after
argument check.
Thu Oct 26 21:05:48 2006 GOTOU Yuuzou <gotoyuzo@notwork.org>
* ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
(fix http://bugs.debian.org/394336)
* ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.
Thu Oct 26 15:23:47 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c: remove by_slice and by_cons.
Thu Oct 26 15:12:12 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/digest/digest.c (Init_digest): typo.
Wed Oct 25 17:16:05 2006 Akinori MUSHA <knu@iDaemons.org>
* test/digest/test_digest_hmac.rb: added.
Wed Oct 25 16:34:31 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/test.sh: make this script work again.
Wed Oct 25 07:59:42 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: updated based on date2 3.9.6.
[ruby-core:09323]
Wed Oct 25 00:58:19 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/mkexports.rb, win32/resource.rb: use unique variable names.
Tue Oct 24 19:18:53 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enumerator_by_slice): new method added.
* enumerator.c (enumerator_by_cons): ditto.
Tue Oct 24 18:56:13 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enumerator.c (enum_each_slice, enum_each_cons): returns
Enumerable::Enumerator if no block is given. [ruby-dev:29246]
* enumerator.c: remove methods: enum_with_index, enum_slice,
enum_cons. [ruby-dev:29246]
Tue Oct 24 18:51:27 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_zip): add RETURN_ENUMERATOR() to zip method.
Mon Oct 23 04:30:04 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (r_object0): use return value from proc given as the
second argument to Marshal#load() to allow value replacement in
the restoring data.
Sun Oct 22 14:48:31 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* signal.c (Init_signal): avoid duplicated installation of SIGCHLD
handler.
Sun Oct 22 16:47:56 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* string.c (rb_str_substr): should be infected with only original
string, but not the shared string. fixed: [ruby-core:09152]
* string.c (rb_str_new4): keep shared string untainted when orignal
string is tainted. fixed: [ruby-dev:29672]
Sun Oct 22 07:55:11 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_upcase, rb_str_downcase, rb_str_downcase,
rb_str_upcase_bang, rb_str_downcase_bang, rb_str_swapcase_bang):
add RDoc description that case conversion to be effective only
in ASCII region.
Sun Oct 22 05:20:34 2006 URABE Shyouhei <shyouhei@ice.uec.ac.jp>
* configure.in: alloca is broken; use C_ALLOCA instead.
[ruby-dev:29416]
Sat Oct 21 17:50:40 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest.rb: Follow the framework updates.
Fri Oct 20 22:00:43 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
* ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
Fri Oct 20 20:28:37 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest: Prefix C constants with RUBY_ and C type names with
rb_ to avoid name clash in writing extensions.
* ext/digest: Introduce Digest::Class and Digest::Instance for
ease of implementing subclasses and add-ons, inspried by
gotoyuzo.
* ext/digest: The Digest::Instance module now requires and assumes
that any instance be resettable and clonable, and add some
convenient instance methods such as "new()", for creating a new
copy, parameter taking "digest()" and "hexdigest()", for instant
calculation. These methods make digest instances work just like
digest classes.
* ext/digest/sha2/lib/digest/sha2.rb:
Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256,
SHA384 and SHA512, hoping this module would make a decent
example of a digest subclass written in Ruby.
* ext/digest/lib/digest.rb: Adjust autoload entries for SHA2
classes.
* ext/digest/lib/digest/hmac.rb: Follow the framework updates.
Fri Oct 20 10:47:43 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
Fri Oct 20 08:42:38 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (NULLCMD): dummy command.
* bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
command-less double-colon rules. [ruby-dev:29676]
Fri Oct 20 00:37:07 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
* ext/extmk.rb: workaround for Borland make.
Wed Oct 18 23:02:40 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* array.c (rb_ary_shift): shorten copy size. fixed: [ruby-list:42907]
* signal.c (Init_signal): handle SIGTERM. fixed: [ruby-list:42895]
* win32/win32.c (rb_w32_utime): allow NULL to set the current time.
[ruby-talk:219248]
Wed Oct 18 13:25:50 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_each_line): String#lines now works when a block
is given. in other words, lines become an alias to each_line.
[ruby-core:09218]
* string.c (rb_str_each_byte): ditto for bytes in place of lines.
Wed Oct 18 00:55:33 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (parser_yylex): use particular enums. [ruby-core:09221]
Tue Oct 17 22:03:08 2006 Minero Aoki <aamine@loveruby.net>
* lib/erb.rb: String#each was removed, use #each_line instead.
Tue Oct 17 12:27:32 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (ary_shared_array): should set NOEMBED flag for a copied
array.
Tue Oct 17 08:04:31 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_lines): now takes optional argument for the
line separator.
* io.c (rb_io_lines, rb_io_bytes): new methods.
Mon Oct 16 23:33:18 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_unshift_m): a bug in lfree shift length
calculation.
Mon Oct 16 08:30:43 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* mkconfig.rb: *OBJS are not needed for extension libraries.
* {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
missing comma.
Mon Oct 16 00:44:26 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* pack.c (pack_unpack): execute block if given with unpacked value
instead of creating an array. an idea from Tim Bray.
Sun Oct 15 01:03:08 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/test/unit/collector/dir.rb (Collector::Dir#collect): append base
directory but not prepend.
* lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): do not
join with dot. fixed: [ruby-core:09179]
Sat Oct 14 23:39:50 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (singleton): no need to re-create NODE_SELF() again.
[ruby-core:09177]
Sat Oct 14 23:25:31 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (parser_warning, parser_warn): some error message may
contain format specifiers. a patch from Akinori MUSHA <knu at
iDaemons.org>. [ruby-dev:29657]
* regparse.c (onig_rb_warning, onig_rb_warn): ditto.
* ext/bigdecimal/bigdecimal.c (VpException): ditto.
* ext/dl/handle.c (rb_dlhandle_initialize): ditto.
* ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.
Sat Oct 14 08:15:42 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c, ext/digest/digest.h,
ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c:
Introduce API versioning.
* ext/digest/digest.c, ext/digest/digest.h,
ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove
the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into
instance methods digest_length() and block_length(). Class
methods with the same names are also provided, which take extra
parameters for a digest method.
* ext/digest/lib/digest/hmac.rb: Completely redesign the somewhat
bizarre API, now that Digest classes can take hashing
parameters.
Sat Oct 14 05:54:05 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c: Improve RDoc documentation further more.
Sat Oct 14 04:33:33 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c: Improve RDoc documentation.
* ext/digest/digest.c (Init_digest, rb_digest_base_s_digest,
rb_digest_base_s_hexdigest): Make Digest::Base::digest() and
Digest::Base::hexdigest() take extra arguments, which are passed
through to the constructor in an internal call.
* ext/digest/bubblebabble/bubblebabble.c
(rb_digest_base_s_bubblebabble): Ditto for
Digest::Base::bubblebabble().
Sat Oct 14 00:55:08 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* bcc32/Makefile.sub (post-install-ext): no longer needed.
* bcc32/configure.bat: get rid of a quirk of Borland make, which
sets empty macro in command line to "1".
Fri Oct 13 22:49:02 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb: updated based on date2 3.9.5.
Fri Oct 13 21:00:01 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
digest modules when a specified digest class is missing.
* ext/digest/lib/digest.rb: Define Digest(name) for ease of
dynamically selecting a hashing algorithm.
Fri Oct 13 20:53:37 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (Init_digest): Digest::Base.new() does no
longer take an initial string to feed. This change allows
subclasses to take hashing parameters. A statement such as
``md = Digest::MD5.new(s)'' can be easily rewritten as
``md = Digest::MD5.new << s'' or
``md = Digest::MD5.new.update(s)''.
Fri Oct 13 20:51:55 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c, ext/digest/md5/md5init.c,
ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c,
ext/digest/sha2/sha2init.c: Add RDoc documentation.
* ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in
favor of embedded RDoc documentation.
Fri Oct 13 20:38:12 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
support out of the base class and have a separate module named
digest/bubblebabble.
Fri Oct 13 19:53:59 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (rb_digest_base_equal): Again, should call
digest() of a subclass instead of the one defined in the base
class.
Fri Oct 13 18:19:31 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c: Class#inherited RDoc added. a patch from Daniel
Berger <djberg96 at gmail.com> [ruby-core:08942]
Fri Oct 13 02:42:00 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (rb_digest_base_equal): Should call digest()
of a subclass instead of the one defined in the base class.
Fri Oct 13 02:30:12 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/test/unit/collector/dir.rb (Collector::Dir#collect): prepend
base directory to load path.
* lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): should
use the given File-like interface, but not File directly.
* test/testunit/collector/test_dir.rb (TestDir::FileSystem): implement
File-like methods correctly.
Fri Oct 13 01:48:42 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/date.rb (Date::self.complete_hash): need to check if g is
nil before dereference. [ruby-core:09116]
Fri Oct 13 01:05:58 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_partition): RDoc update. a patch from
Mauricio Fernandez <mfp at acm.org>. [ruby-core:09160]
* hash.c (rb_hash_compare_by_id): ditto.
Fri Oct 13 00:34:26 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_mod_cvar_defined): wrong id check. a patch from
Mauricio Fernandez <mfp at acm.org>. [ruby-core:09158]
* object.c (rb_mod_cvar_get): typo fixed. [ruby-core:09168]
* object.c (rb_mod_cvar_set): ditto.
Thu Oct 12 22:58:11 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_compare_by_id): somehow we lost renaming from
Hash#identical. [ruby-core:09163]
Thu Oct 12 18:25:40 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
character literal (1 char string).
* lib/mkmf.rb: shut up some warnings from tk's extconf.rb.
Thu Oct 12 02:15:24 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
Thu Oct 12 02:12:31 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (get_digest_base_metadata): Use an instance
variable of a class object instead of a class variable for
metadata. This change is only crucial for ruby 1.8 because
class variables are inherited to subclasses prior to 1.9, but
applying it also to 1.9 will assure compatibilities.
* ext/digest/md5/md5init.c (Init_md5): Ditto.
* ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
* ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
* ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
Wed Oct 11 21:36:47 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (rb_digest_base_alloc,
rb_digest_base_equal): Simplify the equality check and just
compare resulted digests since state-level equality should
not be so significant.
* ext/digest/digest.h: Ditto.
* ext/digest/*/*.[ch]: Ditto.
Wed Oct 11 17:11:03 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_obj_define_method): add half boiled RDoc document.
Wed Oct 11 16:57:46 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_replace): should shift lfree pointer before
calling xfree.
Wed Oct 11 15:07:42 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
HMAC keyed-hashing algorithm.
Wed Oct 11 15:03:55 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (rb_digest_base_reset): Do not make
recursive calls, but call initialize() when reset() is not
defined in a subclass.
Wed Oct 11 14:56:10 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
SHA_BLOCK_LENGTH.
Wed Oct 11 14:03:31 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
Digest::Base#reset.
* ext/digest/digest.h: Update the header comment.
* ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5):
Define DIGEST_LENGTH and BLOCK_LENGTH.
* ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
* ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
* ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
* ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES
rather than adding make targets. [Pointed out by: nobu]
Tue Oct 10 16:39:08 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
Perform StringValue() checks properly.
Tue Oct 10 13:21:21 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
dependencies.
Mon Oct 9 23:46:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/parsedate.rb: documentation patch from Konrad Meyer
<konrad.meyer@gmail.com>. [ruby-doc:1238]
* lib/open3.rb, lib/ping.rb: ditto.
Mon Oct 9 23:40:58 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
lib/shellwords.rb: get rid of shadowing outer local variable.
Mon Oct 9 22:56:12 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/rexml/encoding.rb (REXML::Encoding::check_encoding): spaces
are allowed around equal sign. [ruby-core:09032]
* lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser): ditto.
Mon Oct 9 01:56:34 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_obj_define_method): add new method
Kernel#define_singleton_method. [ruby-list:42851]
Sat Oct 7 23:53:08 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_scan): small documentation fix.
[ruby-core:09007]
Sat Oct 7 23:44:33 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big_rshift): a bug in right shift of negative
bignums. [ruby-core:09020]
Sat Oct 7 23:33:02 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (formal_assign): packed post splat arguments may conflict
with normal arguments. [ruby-core:09021]
* eval.c (rb_call0): ditto.
Sat Oct 7 11:53:04 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* object.c (rb_mod_initialize): since module_eval no longer passes
self, use module_exec instead. fixed: [ruby-dev:29637]
Sat Oct 7 00:27:58 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (rb_include_module): remove unnecessary check.
[ruby-talk:218402]
Fri Oct 6 15:19:59 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/depend: Fix header installation when the build
directory is different from srcdir. [Pointed out by: eban]
Fri Oct 6 09:56:31 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
copy command instead of install. use -run install.
Fri Oct 6 06:53:46 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_yield_0): small refactoring.
* parse.y (bparam_item): fixed bugs in handling parenthesized LHS.
Fri Oct 6 04:47:07 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/depend: Install digest.h.
Fri Oct 6 04:27:40 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
compatibility stub libraries.
* sample/openssl/c_rehash.rb: Use digest/md5 instead of obsolete md5.
Fri Oct 6 04:09:51 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c: Make hexdigest() always call digest() internally.
* ext/digest/digest.c: Add bubblebabble().
Fri Oct 6 02:38:42 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c: Allow subclassing in Ruby.
Fri Oct 6 02:06:10 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.c (hexdigest_str_new): Add a string size check.
Thu Oct 5 19:28:35 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/digest.[ch]: Since the argument order of
hash_final_func_t was inconsistent with others, change it and
rename to hash_finish_func_t to avoid confusion.
* ext/digest/digest.[ch]: Remove and eliminate the use of
hash_end_func_t. Implement hexdigest conversion in the base
class.
* ext/digest/md5/md5.c, ext/digest/md5/md5.h,
ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c,
ext/digest/md5/md5ossl.h: Remove MD5_End() and change
MD5_Final() to MD5_Finish().
* ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb,
ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h,
ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c,
ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h:
Remove unused functions RMD160_End(), RMD160_File(),
RMD160_Data() and change RMD160_Final() to RMD160_Finish().
* ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c,
ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c,
ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c,
ext/digest/sha1/sha1ossl.h: Likewise.
* ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c,
ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c,
ext/digest/sha2/sha2init.c: Likewise.
Wed Oct 4 18:47:25 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tkextlib/*: bugfix and update
(see ext/tk/ChangeLog.tkextlib).
Wed Oct 4 17:25:14 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call): check protected visibility based on real self,
not ruby_frame->self. [ruby-talk:217822]
Wed Oct 4 15:46:32 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (block_param): should interpret single parenthesized
left hand side expression.
Wed Oct 4 08:52:30 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* test/optparse/test_getopts.rb: changed the class name of test case
to get rid of conflict with test_optparse.rb.
Tue Oct 3 21:04:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (dyna_in_block): inline using macro.
* parse.y (mlhs): simplifies the rule a bit.
* parse.y (block_param): restrict block parameters to be local
variables only.
* test/ruby/test_iterator.rb (TestIterator::test_nested_iterator):
update test suite to conform the last change.
Tue Oct 3 02:31:13 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (splat_value): use "to_splat" instead of "to_ary" to
prepare splat values as an array.
* array.c (Init_Array): define to_splat.
* range.c (range_to_splat): new method.
* enumerator.c (enumerator_to_splat): ditto.
Tue Oct 3 01:36:47 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_lines): returns an Enumerator instead of an
array of lines.
* string.c (rb_str_bytes): a new method.
Mon Oct 2 23:47:55 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::COLLECTORS):
base directory should be lower precedence. fixed: [ruby-dev:29622]
* lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): typo.
* lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
load expanded path. fixed: [ruby-dev:29621]
Mon Oct 2 15:47:55 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* instruby.rb: batfile should be CRLF'ed.
Mon Oct 2 01:24:26 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (test-all): separate directory where running test cases
from source tree.
* lib/test/unit/autorunner.rb (options): added --basedir, --workdir
and --load-path options.
* lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
base directory support.
Sun Oct 1 23:56:52 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
LIBRUBY_SO unless need to be removed.
Sun Oct 1 23:12:19 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (OptionParser#make_switch): pass arguments directly.
Sat Sep 30 15:11:26 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb: updated based on date2 3.9.4.
Fri Sep 29 13:18:24 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
breakage. Point out by NAKAMURA Usaku in [ruby-dev:29619].
Fri Sep 29 12:11:04 2006 WATANABE Hirofumi <eban@ruby-lang.org>
* jcode.rb (succ!): call original succ! if $KCODE == 'n'.
fixed: [ruby-talk:216845]
Fri Sep 29 11:43:40 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (try_func): revert fallback checking undeclared function.
fixed: [ruby-core:08949]
Fri Sep 29 09:56:56 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/extmk.rb: extout is needed for also clean.
fixed: [ruby-core:08944]
* lib/optparse.rb (OptionParser::Switch#conv_arg): unsplat by
Proc#call if no conversion is given.
Thu Sep 28 23:59:31 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* node.h (struct thread): declare win32_exception_list on cygwin and
win32 regardless if it is implemented. Provisional fix for
[ruby-core:08917].
Thu Sep 28 20:49:20 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/tmpdir.rb: use return value of getdir.call for length.
Wed Sep 27 22:08:16 2006 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
require "digest" rather than "digest.so".
* ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
* ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
* ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
Wed Sep 27 21:21:08 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_startwith): rename startwith? to start_with?,
endwith? to endwith?, respectively. [ruby-talk:216685]
Wed Sep 27 13:29:01 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::TagMaker::nOE_element_def): replace to_s by
join. some other methods as well. [ruby-dev:29613]
Wed Sep 27 01:04:49 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (try_func): check function pointer first and macro next.
* lib/mkmf.rb (have_type): simplified with typedef and sizeof.
Wed Sep 27 00:08:12 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_shift): shift/unshift performance boost patch,
based on the patch from Eric Mahurin <eric_mahurin at yahoo.com>.
[ruby-core:05861]
* array.c (rb_ary_unshift_m): ditto.
* array.c (ary_make_shared): ditto.
* array.c (RESIZE_CAPA): ditto.
* array.c (rb_ary_free): new function to free memory. code moved
from gc.c.
* string.c (rb_str_free): ditto.
Tue Sep 26 23:57:03 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (OptionParser#getopts): use strings as key.
fixed: [ruby-dev:29614]
Tue Sep 26 15:29:55 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* {win32,wince}/Makefile.sub (CPP): check predefined value.
Tue Sep 26 07:55:16 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_shift): should not move memory region if array
body is shared. a patch from Kent Sibilev <ksruby at gmail.com>.
[ruby-core:08922]
Mon Sep 25 23:10:46 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* dir.c (rb_push_glob): need not to check by FilePathValue().
[ruby-dev:29599]
* dir.c (dir_globs): ditto.
Mon Sep 25 22:26:26 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (rb_path_end): skip root directory. fixed: [ruby-core:08913]
* lib/mkmf.rb (rm_f): get rid of NUL.
* lib/mkmf.rb (init_mkmf): set default $LDFLAGS. Patch by Michal
Suchanek <hramrach at centrum.cz>. [ruby-talk:216256]
Mon Sep 25 15:06:18 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* sample/test.rb: "print nil" now prints empty string.
* test/ruby/test_system.rb (TestSystem::test_system): ditto.
Mon Sep 25 11:26:25 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (recursive_hash): remove unused local variable.
* parse.y (parser_yylex): ditto.
* parse.y (rb_gc_mark_symbols): fix unmatched prototype .
* file.c (rb_get_path): check NUL byte in the path string.
Mon Sep 25 08:14:43 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_shift): should clear shifting top element.
[ruby-talk:216055]
* array.c (rb_ary_shift): avoid creating shared object if array
size is small.
Mon Sep 25 08:11:35 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* random.c (rb_f_rand): RDoc typo fix. a patch from Frederick
Cheung <fred at 82ask.com>. [ruby-talk:216047]
Sun Sep 24 21:19:24 2006 Guy Decoux <ts@moulon.inra.fr>
* gc.c (gc_mark_children): NODE_POSTEXE holds Ruby VALUE.
[ruby-core:08912]
Sun Sep 24 22:28:20 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* runruby.rb: extension library scripts moved into common directory.
Sun Sep 24 12:10:04 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb: updated based on date2 3.9.3.
Sun Sep 24 06:55:36 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_print): no special handling for nil as well as puts.
fixed: [ruby-dev:29586]
Sun Sep 24 06:25:53 2006 why the lucky stiff <why@ruby-lang.org>
* eval.c (rb_thread_save_context, rb_thread_restore_context):
sandbox hook to save and restore sandbox state.
* eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
* eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
to circumvent ensure, in order to prevent endless loops.
contributed by MenTaLguY. [ruby-core:08768]
* eval.c (rb_thread_kill): fix Thread#kill docs, which returns
the thread object in all cases.
* node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
with the thread flags. used by the sandbox extension.
* ruby.h: extern rb_eThreadError, so sandbox can swap it.
Sat Sep 23 21:34:15 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
may be empty. a patch from Jamis Buck <jamis at 37signals.com>.
Sat Sep 23 20:54:28 2006 K.Kosako <sndgk393 AT ybb.ne.jp>
* oniguruma.h: Version 4.4.4
* regexec.c: ditto.
* regcomp.c ditto.
Sat Sep 23 08:35:53 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/rdoc/ri/ri_options.rb: prevent NameError. [ruby-dev:29597]
Sat Sep 23 01:02:57 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb: updated based on date2 3.9.2.
Fri Sep 22 18:07:17 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_partition): no need to call rb_call_super(),
since String is no longer includes Enumerable.
Fri Sep 22 17:33:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_eql): new method to be used by Hash.
* hash.c (rb_hash_hash): ditto.
Fri Sep 22 06:53:22 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big_hash): use rb_memhash().
* numeric.c (flo_hash): simplified. klass need not to affect
resulting hash value.
Fri Sep 22 02:06:26 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* .cvsignore: ignore timestamp files and installed list file.
Fri Sep 22 01:36:34 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb: include FileUtils unconditionally.
Fri Sep 22 00:36:05 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (Init_Numeric): fix_odd_p and fix_even_p are for Fixnum.
patch from Ondrej Bilka <neleai at seznam.cz>. [ruby-core:08904]
Thu Sep 21 22:56:20 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (no-install): not install rdoc actually.
* common.mk (install-doc, no-install-doc): use instruby.rb.
* instruby.rb: rdoc installation.
* ext/extmk.rb: expand ruby executable names.
Thu Sep 21 20:19:22 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (str_new3): embed shorter strings more eagerly.
Thu Sep 21 17:44:49 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_startwith): a new method to check if a string
starts with given prefix.
* string.c (rb_str_endwith): the opposite of String#startwith?.
Thu Sep 21 16:29:02 2006 WATANABE Hirofumi <eban@ruby-lang.org>
* rubytest.rb: use each_line instead of each.
Thu Sep 21 15:06:24 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (int_odd_p): a new method to check even or odd.
[RCR#337]
* numeric.c (int_even_p): ditto.
Thu Sep 21 13:55:07 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/etc/etc.c (etc_getpwuid): uid integer should be wraped in
uid_t value. [ruby-core:08897]
* ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
'int' type.
Thu Sep 21 10:07:09 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_partition): RDoc typo fixed. [ruby-core:08898]
* string.c (rb_str_rpartition): fixed separation seek bug.
Thu Sep 21 09:38:12 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_lines): new method to split a string into lines.
* string.c (Init_String): Strings are no longer Enumerable. use
each_line or lines method explicitly.
* string.c (Init_String): remove each method. use each_lines.
Wed Sep 20 23:17:41 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (pre-install-doc): create data directory before install.
* lib/mkmf.rb (dir_re): fixed typo.
* lib/mkmf.rb (install_dirs): remove extra slash.
Wed Sep 20 22:41:45 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (fix_mul): typo again. patch from Tadashi Saito
<shiba at mail2.accsnet.ne.jp>. fixed: [ruby-core:08893]
Wed Sep 20 19:32:06 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_partition): a new method to separate the string
by a separator. taken from Python 2.5.
* string.c (rb_str_rpartition): ditto.
Wed Sep 20 09:49:40 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
this macro to install.
Wed Sep 20 09:43:10 2006 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb: allow extra spaces in responses.
Thanks, Tom Soderlund.
Wed Sep 20 09:25:39 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
Adolphs <futzilogik at users dot sourceforge dot net>.
[ruby-doc:1223]
Tue Sep 19 00:42:15 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* object.c (rb_obj_ivar_defined, rb_mod_cvar_defined): new methods,
Kernel#instance_variable_defined? and Module#class_variable_defined?.
[ruby-dev:29587]
* lib/date/format.rb (Date::Bag#method_missing): use new method,
instance_variable_defined? to check if an instance variable is
defined. fixed: [ruby-dev:29554]
-- This didn't fix anything.
Tue Sep 19 00:07:17 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (sym_eql): fail early to gain performance.
* string.c (sym_hash): cache hash value in aux.shared if possible.
* gc.c (rb_obj_id): no need to treat symbols specially.
* lib/fileutils.rb (FileUtils::FileUtils): singleton_methods() no
longer return an array of strings, but of symbols.
* lib/delegate.rb (DelegateClass): ditto.
Mon Sep 18 15:29:21 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* dir.c (dir_s_glob): restore GC protection volatile variable.
[ruby-dev:29588]
* re.c (rb_reg_regcomp): ditto.
Mon Sep 18 12:16:48 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (fix_mul): get rid of shift overflow.
Mon Sep 18 10:47:49 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* dir.c (dir_s_glob): remove unused variable.
* math.c (math_log): ditto.
* re.c (rb_reg_regcomp): ditto.
* eval.c (break_jump): ditto.
* eval.c (rb_thread_yield_0): remove unused function.
Sun Sep 17 23:44:58 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/rdoc/rdoc.rb (RDoc::RDoc#document): scan only files modified
after the previous generation.
Sun Sep 17 17:42:13 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* common.mk (install-doc): reverted.
* instruby.rb: stores file name list without destdir prefix.
* lib/rdoc/generators/ri_generator.rb: do not chdir twice.
Sun Sep 17 10:42:10 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (fix_mul): fixed typo. fixed: [ruby-core:08885]
Sat Sep 16 19:47:16 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* README.EXT: should mention new macros: RSTRING_PTR, RSTRING_LEN,
RARRAY_PTR, RARRAY_LEN.
* README.EXT.ja: ditto.
Sat Sep 16 16:39:23 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
use instruby.rb to install extensions instead of ext/extmk.rb.
* instruby.rb: store installed list into the file.
* ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
* ext/io/wait/extconf.rb: suspicious checking_for.
* ext/pty/pty.c (establishShell): parent pid is not used.
* ext/pty/pty.c (freeDevice): not used.
* lib/mkmf.rb (checking_for): improved the messages.
Sat Sep 16 11:03:49 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (ary_shared_first): should create embedded copies
instead of sharing memory region for smaller arrays.
Sat Sep 16 09:37:39 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* struct.c (inspect_struct): do not display a class name for
anonymous struct. The member fields are sufficient.
Fri Sep 15 20:22:15 2006 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 rev.110.
* Fix: check_bom cuts \xfe\xff\xXX\xXX of UTF-32LE.
* Add support --ic=UTF-32.
* Fix: can't guess UTF-16 and UTF-32.
* Fix: can't decode beyond BMP of UTF-16LE.
* ext/nkf/nkf.c (guess): Support UTF-32.
* ext/nkf/lib/kconv.rb (kconv): Support UTF-32.
* ext/nkf/lib/kconv.rb (to_utf32): new method.
Fri Sep 15 05:23:24 2006 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 2006-09-15.
Add support for U+10000 - U+10FFFF
Add support UTF-32
Fri Sep 15 00:03:07 2006 Tanaka Akira <akr@fsij.org>
* ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
mode. suggested by Kazuhiro NISHIYAMA. [ruby-dev:29579]
Thu Sep 14 17:21:07 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (fix_mul): avoid bignum multiplication as far as
possible. a patch from Ondrej Bilka <neleai at seznam.cz>.
[ruby-core:08825]
Thu Sep 14 16:34:55 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_intern): allow zero length symbols.
[ruby-core:08861]
Thu Sep 14 16:11:15 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_intern): raise SecurityError only when $SAFE
level is greater than zero. [ruby-core:08862]
* parse.y (rb_interned_p): new function to check if a string is
already interned.
* string.c (str_to_id): use rb_str_intern().
Thu Sep 14 14:37:45 2006 Tanaka Akira <akr@fsij.org>
* ext/digest/lib/digest.rb (Digest::Base.file): new method.
[ruby-dev:29572]
Thu Sep 14 08:30:02 2006 Tanaka Akira <akr@fsij.org>
* ext/digest/digest.c (rb_digest_base_inspect): new method.
[ruby-dev:29573]
Thu Sep 14 01:13:56 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* gc.c (ruby_init_stack): decrease "stack level too deep" in Windows.
[ruby-dev:29569]
Thu Sep 14 01:02:25 2006 Tanaka Akira <akr@fsij.org>
* ext/digest/lib/digest.rb: new file.
[ruby-dev:28689]
Wed Sep 13 18:43:05 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* README.EXT: English adjustment. [ruby-core:08851] and
[ruby-core:08852]
Wed Sep 13 18:25:18 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* misc/ruby-mode.el (ruby-parse-partial): better here-doc support.
a patch from Marshall T. Vandegrift <llasram at gmail.com>.
[ruby-core:08804]
Wed Sep 13 16:43:36 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_intern): prohibit interning tainted string.
Wed Sep 13 01:14:02 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb (OptionParser#getopts): works with pre-registered
options. [ruby-core:08826]
Tue Sep 12 03:58:39 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_compare_by_identity): rename Hash#identical to
Hash#compare_by_identity.
Mon Sep 11 16:52:37 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_identical): a new method to make a hash to
compare keys by their identity.
* hash.c (rb_hash_identical_p): new method to tell if a hash is
identical or not.
* st.c (st_numcmp, st_numhash): export hash type functions.
Mon Sep 11 11:42:21 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/rexml/source.rb (REXML::Source::encoding): should not
convert the body twice. [ruby-core:08828]
* lib/rexml/encoding.rb (REXML::Encoding::encoding):
Encoding#encoding= to return boolean value to tell if the body
is really converted or not.
* lib/rexml/encoding.rb (REXML::Encoding::encoding): Specific
conversion library (e.g. rexml/encodings/UTF-16.rb) to have
higher preceding.
* lib/rexml/encodings/UTF-16.rb (REXML::Encoding::decode_utf16):
UTF-16#decode_utf16 should work strings without BOM.
Mon Sep 11 07:39:44 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (sym_equal): "sym == str" should compare them as
strings. [ruby-dev:29554]
Sun Sep 10 22:59:43 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* instruby.rb (parse_args): remove splat.
Sun Sep 10 20:25:30 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb: updated based on date2 3.9.1.
Sun Sep 10 09:41:29 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c: ISPRINT() needs ctype.h
Sun Sep 10 09:19:47 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb: splat parsed arguments.
Tue Jan 10 09:18:03 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_require_safe): prevent extension from loading twice.
fixed: [ruby-dev:29523]
Sat Sep 9 23:55:28 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (rb_f_test): test(0) should not have any special
meaning. [ruby-dev:29425]
* file.c (rb_f_test): properer error message.
Sat Sep 9 14:08:38 2006 Eric Hodel <drbrain@segment7.net>
* lib/test/unit/testcase.rb (Test::Unit::TestCase#run): Rescue
Exception in Test::Unit::TestCase#run. [ruby-core:08783]
Sat Sep 9 04:55:59 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/pstore.rb: open all in binary mode, and get rid of the quirk of
msvcrt. fixed: [ruby-dev:29518]
Sat Sep 9 04:47:45 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
* mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
warnings with $VERBOSE.
* win32/resource.rb: only file which has more than one icon is DLL.
Fri Sep 8 16:53:30 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (str_alloc): should allocate a String object, even when
asked to allocate a Symbol object. [ruby-dev:29529]
Fri Sep 8 16:36:27 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/extmk.rb (extmake): follow Array#to_s.
* lib/mkmf.rb (create_makefile): ditto.
* win32/resource.rb: ditto.
Fri Sep 8 10:00:12 2006 GOTOU Yuuzou <gotoyuzo@notwork.org>
* lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookies): new
method to parse multiple cookies per Set-Cookie header.
Thanks to Aaron Patterson <aaron_patterson at speakeasy.net>.
[ruby-core:08802]
Fri Sep 8 08:59:30 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
name transform.
Fri Sep 8 08:25:39 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/optparse.rb: suppress `assigning void value' warning.
Fri Sep 8 01:16:34 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (Init_Array): #to_s to be an alias to #inspect.
[ruby-dev:29520]
* hash.c (Init_Hash): ditto.
* lib/mkmf.rb (create_makefile): replace "print array" by
"print *array".
* mkconfig.rb: ditto.
Thu Sep 7 21:02:56 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (nil_to_s): returns the empty string again.
[ruby-dev:29520]
Thu Sep 7 23:27:05 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (path_check_0, fpath_check): disable path check on cygwin.
[ruby-talk:213074]
Thu Sep 7 02:03:45 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_to_s): adopt new date format using digits
e.g. "2006-09-07 02:03:45 +9000".
Thu Sep 7 01:54:22 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (sym_equal): override. check equivalence.
Wed Sep 6 13:25:04 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (symbols_i): need to initialize early-created symbols.
[ruby-dev:29496]
Wed Sep 06 12:05:19 2006 NARUSE, Yui <naruse@ruby-lang.org>
* ext/nkf/lib/kconv.rb (Kconv::toeuc): remove -m0 [ruby-dev:29505]
Tue Sep 5 22:06:43 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/tk/tcltklib.c: use rb_ary_new3() since RARRAY_LEN() is not l-value.
* ext/tk/tkutil/tkutil.c: use RARRAY_PTR() and RARRAY_LEN() and etc.
fixed: [ruby-dev:29473]
Tue Sep 5 06:47:22 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_to_s): variable declaration after an execution
statement.
Tue Sep 5 05:49:41 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* file.c (path_check_0): check if sticky bit is set on parent
directories for executable path. fixed: [ruby-dev:29415]
Tue Sep 5 05:03:46 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (fix_plus): addition in Fixnum will never overflow
long. a patch from Ondrej Bilka <neleai at seznam.cz>.
[ruby-core:08794]
* numeric.c (fix_minus): ditto.
* bignum.c (rb_big_pow): eagerly truncate resulting bignum.
[ruby-core:08794]
Mon Sep 4 23:15:34 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_to_s): make it conform to RFC2822 date format.
[ruby-dev:29467]
Mon Sep 4 21:43:57 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ext/dbm/extconf.rb: create makefile according to the result of check
for dbm header. fixed: [ruby-dev:29445]
Mon Sep 4 21:39:42 2006 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb, lib/date/format.rb: updated based on date2 3.9.
Mon Sep 4 21:14:20 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* time.c (time_strftime): include nul character. fixed: [ruby-dev:29422]
Mon Sep 4 16:39:11 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::out): specify -x option for nkf.
* lib/cgi.rb (CGI::out): should not convert utf-8 implicitly using
NKF. it is too Japanese centric.
Mon Sep 4 14:23:10 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/dbm/extconf.rb (db_check): remove debug print.
Mon Sep 4 06:46:08 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (rb_id2sym): intern if id is attrset_id.
[ruby-dev:29420] [ruby-dev:29447]
Mon Sep 4 01:25:16 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_f_local_variables): list symbols.
* struct.c (rb_struct_s_members_m): ditto.
* variable.c (ivar_i): ditto.
* variable.c (gvar_i): ditto.
* variable.c (cv_i): ditto.
Sun Sep 3 20:47:02 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* ruby.h (SYMBOL_P): Qnil and Qfalse are not Symbol.
Sun Sep 3 15:32:44 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb: get rid of nil.to_s.
Sun Sep 3 06:24:38 2006 Tanaka Akira <akr@fsij.org>
* ext/socket/socket.c (ruby_connect): sockerrlen should be socklen_t.
Sun Sep 3 04:40:42 2006 Tanaka Akira <akr@fsij.org>
* ext/socket/extconf.rb: check arpa/inet.h for ntohs.
* ext/socket/socket.c: include arpa/inet.h if available.
Sat Sep 2 23:59:58 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (Init_String): undef Symbol#new.
* struct.c (rb_struct_s_def): wrong symbol detection.
Sat Sep 2 23:59:37 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (str_to_id): a bug caused by premature optimization.
Sat Sep 2 23:53:28 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (Init_Object): move symbol related code to string.c
* string.c (Init_String): Symbol as subclass of String.
* parse.y (rb_intern2): handle symbol as strings.
* string.c (str_new): substring of symbols are mere strings, not
symbols.
Sat Sep 2 23:37:29 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.h (struct RArray): embed small arrays.
(RARRAY_LEN): defined for accessing array members.
(RARRAY_PTR): ditto.
* array.c: use RARRAY_LEN and RARRAY_PTR.
Sat Sep 2 13:23:01 2006 Tanaka Akira <akr@fsij.org>
* common.mk (ia64.o): use the compiler driver to assemble ia64.s
to use appropriate ABI.
Sat Sep 2 12:06:35 2006 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/soap/generator.rb (SOAP::SOAPGenerator#encode_tag): do not dump
XML attribute which value is nil. value "" and nil both were dumped
as 'attr="value"'. [ruby-dev:29395]
Sat Sep 2 11:47:58 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): should handle when in else clause. a patch
from Eric Hodel <drbrain at segment7.net>. [ruby-core:08662]
* parse.y (primary): wrap with NODE_CASE. [ruby-core:08663]
Sat Sep 2 12:00:32 2006 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/csv.rb (CSV::IOReader#initialize): use String#[](pos, len)
instead of String#[](idx) to check utf BOM. follows String#[](idx)
behavior change of 1.9.
Sat Sep 2 11:47:58 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): should handle when in else clause. a patch
from Eric Hodel <drbrain at segment7.net>. [ruby-core:08662]
* parse.y (primary): wrap with NODE_CASE. [ruby-core:08663]
Fri Sep 1 22:07:04 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.h (RSTRING_EMBED_LEN_MASK): uses 5 bits to support 64bit
environment. [ruby-dev:29369]
Fri Sep 1 22:02:08 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_resize): should copy embedded string to
malloc'ed buffer. a patch from <nobu at ruby-lang.org> in
[ruby-dev:29369]. fixed: [ruby-dev:29368]
* string.c (rb_str_ord): use %ld specifier since STRING_LEN() is a
long. [ruby-dev:29369]
Fri Sep 1 21:41:12 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/socket/socket.c (socks_init): typo fixed. a patch from Sven
Klemm <sven at c3d2.de>. [ruby-core:08770]
Fri Sep 1 14:22:42 2006 WATANABE Hirofumi <eban@ruby-lang.org>
* array.c (rb_ary_shuffle): RDoc fixed.
Fri Sep 1 13:52:57 2006 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp>
* ext/tk/lib/tk/font.rb: TkFont#current_configinfo() doesn't work
on Tcl/Tk8.x.
Fri Sep 1 09:32:55 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/irb/ruby-lex.rb (RubyLex::getc): should not push nil into
reading buffer (@readed). reported in
<http://jarp.does.notwork.org/diary/200608c.html#200608311>.
Thu Aug 31 23:59:03 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* lib/mkmf.rb (configuration): follow nil.to_s.
Thu Aug 31 20:50:46 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/mkmf.rb (create_makefile): follow nil.to_s.
* win32/resource.rb: ditto.
Thu Aug 31 20:21:47 2006 NAKAMURA Usaku <usa@ruby-lang.org>
* eval.c (search_required): use RSTRING_PTR and RSTRING_STR.
* file.c (test_identical, rb_file_s_truncate): ditto.
* io.c (pipe_open, rb_io_reopen): ditto.
* object.c (nil_plus): ditto.
* process.c (proc_spawn_n, rb_spawn): ditto.
* util.c (ruby_add_suffix): ditto.
* ext/Win32API/Win32API.c (Win32API_initialize): ditto.
* ext/dl/cptr.c (rb_dlptr_s_to_ptr): ditto.
* ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): ditto.
* ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.
* ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.
Thu Aug 31 18:23:00 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* ruby.h (struct RString): embed small strings.
(RSTRING_LEN): defined for accessing string members.
(RSTRING_PTR): ditto.
* string.c: use RSTRING_LEN and RSTRING_PTR.
Thu Aug 31 17:16:19 2006 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_shuffle_bang): new method.
* array.c (rb_ary_shuffle): ditto.
* random.c (genrand_real): ditto.
* random.c (genrand_int32): export the function.
* random.c (Init_Random): initialize random seed at the
beginning.
Thu Aug 31 13:12:06 2006 why the lucky stiff <why@ruby-lang.org>
* eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
along with ruby_cref, for use by the sandbox. [ruby-core:08762]
* node.h: ditto.
Wed Aug 30 12:01:57 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* numeric.c (flo_hash): improve collision.
* string.c (rb_memhash): new generic function to calculate hash value
for memory chunk.
Tue Aug 29 19:10:10 2006 Nobuyoshi Nakada <nobu@ruby-lang.org>
* hash.c (rb_hash_s_create): fixed memory leak, based on the patch
by Kent Sibilev <ksruby at gmail.com>. fixed: [ruby-talk:211233]
Mon Aug 28 11:29:46 2006 Eric Hodel <drbrain@segment7.net>
* eval.c, parse.y: Revert.
* ext/.document: Add digest.c.
* ext/digest/digest.c: Make RDoc show up.
* ext/io/wait.c: Fix call-seq in RDoc.
Mon Aug 28 08:03:20 2006 Eric Hodel <drbrain@segment7.net>
* ext/.document: Add C files with RDoc.
* ext/digest/digest.c: Convert to RDoc.
* ext/io/wait.c: ditto.
* lib/rdoc/parsers/parse_rb.rb: Fix typo. Submitted by
<calamitas at gmail.com>. [ruby-core:08724]
Mon Aug 28 07:21:47 2006 Eric Hodel <drbrain@segment7.net>
|