Thu Jul 3 14:22:46 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_values_at): extract common procedure from
rb_ary_values_at. follow DRY principle.
* re.c (match_values_at): values_at should understand ranges.
* struct.c (rb_struct_values_at): ditto.
* struct.c (inspect_struct): inspect format changed; add "struct "
at the top.
* sprintf.c (rb_f_sprintf): "%p" specifier for inspect output.
(RCR#68)
* eval.c (rb_mod_undef_method): allow "undef_method" to accept
multiple arguments. (RCR#146)
* lib/timeout.rb: put timeout in Timeout module. (RCR#121)
[ruby-talk:61028]
* re.c (match_groups): new method added. (RCR#139)
* variable.c (rb_mod_const_of): should exclude constant defined
in Object, unless retrieving constants of Object.
Thu Jul 3 12:13:05 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/mkmf.rb (VPATH): convert from Windows form to Unix form on
MinGW. This fixes the build with GNU make 3.80-1 for Cygwin.
Wed Jul 2 23:27:34 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_new4): do not allocate new string if original
is frozen or already have copy-on-write entry. [ruby-talk:74940]
Wed Jul 2 13:22:39 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_new4):
* string.c (rb_str_shared_replace): clear flags before copy.
* string.c (rb_str_replace): ditto.
* eval.c (rb_yield_0): override visibility mode for module_eval
etc. (ruby-bugs-ja PR#505)
Wed Jul 2 11:45:34 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: synchronize document with source code.
* lib/net/pop.rb: ditto.
Wed Jul 2 11:39:50 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: unify SMTP and SMTPCommand.
* lib/net/smtp.rb: new exception class SMTPError.
* lib/net/smtp.rb: new exception class SMTPAuthenticationError.
* lib/net/smtp.rb: new exception class SMTPServerBusy.
* lib/net/smtp.rb: new exception class SMTPSyntaxError.
* lib/net/smtp.rb: new exception class SMTPFatalError.
* lib/net/smtp.rb: new exception class SMTPUnknownError.
* lib/net/smtp.rb: change critical section protect algorithm.
* lib/net/smtp.rb (SMTP#do_start): check authentication args
before all.
* lib/net/smtp.rb: new method send_message (alias send_mail).
* lib/net/smtp.rb: new method open_message_stream (alias ready).
* lib/net/pop.rb: POPBadResponse is a POPError.
* lib/net/pop.rb (POPMail#pop): ban ReadAdapter.
* lib/net/pop.rb (POPMail#top): ditto.
* lib/net/pop.rb (POP3Command): change critical section protect
algorithm.
* lib/net/pop.rb (POP3Command#auth): USER and PASS should be one
critical block.
* lib/net/pop.rb (POP3Command#retr): ban `dest' argument using
iterator.
* lib/net/pop.rb (POP3Command#top): ditto.
* lib/net/protocol.rb: #read_message_to -> #each_message_chunk
* lib/net/protocol.rb: #D -> #LOG
* lib/net/protocol.rb: #D_off -> #LOG_off
* lib/net/protocol.rb: #D_on -> #LOG_on
Wed Jul 2 11:10:47 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: set old class aliases for backward
compatibility. [ruby-talk:74863]
* lib/net/protocol.rb: ditto.
Wed Jul 2 01:32:40 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/net/pop.rb (Net::POP3#start): typofix.
Tue Jul 1 19:02:12 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* parse.y (rb_intern): should use mbclen instead of mblen.
Tue Jul 1 10:36:19 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* class.c (rb_define_class, rb_define_module): also set constant under
Object. [ruby-dev:20445]
* object.c (boot_defclass): ditto.
* variable.c (rb_const_get_at, rb_const_get_0, rb_mod_const_at,
rb_const_defined, mod_av_set, rb_const_assign): toplevel constants
are now under Object, rb_class_tbl remains for GC.
Mon Jun 30 17:53:06 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (mnew): ignore metaclasses have no influence, for rklass.
[ruby-talk:74706]
Sun Jun 29 06:59:07 2003 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb/drb.rb, lib/drb/invokemethod.rb: import drb-2.0.4
(use LocalJumpError#reason)
Sat Jun 28 12:28:54 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (rb_cv_stack_grow_dir): check stack growing direction.
* eval.c (rb_thread_restore_context): prior configuration macro.
* gc.c (ruby_stack_length): always return the address of lower edge.
* gc.c (rb_gc_mark_locations): remove margin. [ruby-dev:20462]
* gc.c (rb_gc, Init_stack): prior configuration macro.
* gc.c (Init_stack): add safety margin.
Fri Jun 27 14:41:22 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* string.c (rb_str_split_m): remove white spaces on the head of
the last element, when limit is specified. [ruby-talk:74506]
Fri Jun 27 03:24:54 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (io_fflush): need to check if closed after thread switch.
[ruby-dev:20351]
* io.c (fptr_finalize): ditto.
* string.c (rb_str_rindex_m): fixed wrong fix. should move backward
first only when matching from the end.
Thu Jun 26 21:34:49 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* class.c (class_instance_method_list): get rid of warning about
arguement type mismatch, and inline method_list().
[ruby-core:01198]
Wed Jun 25 12:52:58 2003 Matthew Dempsky <jivera@flame.org>
* class.c (rb_generic_class_instance_methods): merge argument
check (and warning) into one function; following DRY principle.
[ruby-core:01193]
Wed Jun 25 00:14:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (autoload_delete): should delete Qundef from iv_tbl.
(ruby-bugs-ja PR#504)
Tue Jun 24 14:22:41 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* lib/yaml/types.rb: replaced Kernel::Hash reference with Object::Hash
from [ruby-talk:74270]
Tue Jun 24 17:59:30 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_yield_0): show yielded block position not only yielding
point. [ruby-dev:20441]
Tue Jun 24 16:47:07 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb (HTTPHeader#proxy_basic_auth): missing `@'.
Thanks Douglas Koszerek. (ruby-bugs:PR975)
Tue Jun 24 14:31:17 2003 Minero Aoki <aamine@loveruby.net>
* config.guess: have wrongly returned "alphaev56-unknown-linux-"
on Linux/Alpha. [ruby-dev:20434]
Tue Jun 24 04:54:46 2003 Minero Aoki <aamine@loveruby.net>
* configure.in: always add -mieee for gcc/alpha. [ruby-dev:20429]
Tue Jun 24 02:40:09 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* array.c (rb_ary_unshift_m): need to check number of arguments.
[ruby-talk:74189]
Mon Jun 23 23:59:56 2003 Minero Aoki <aamine@loveruby.net>
* io.c (io_close): missing prototype. [ruby-dev:20422]
* ext/socket/socket.c (bsock_do_not_rev_lookup_set): ditto.
* ext/win32ole/win32ole.c (foletype_guid, foletype_progid): ditto.
* error.c (syserr_initialize): length argument of sprintf() is an
int.
Mon Jun 23 23:28:14 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* MANIFEST: add wince files.
* ext/tk/MANIFEST: add sample/tkmenubutton.rb.
Mon Jun 23 17:40:58 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* dir.c (find_dirsep): get rid of warnings.
* eval.c (error_print): temporary value might be disposed by GC.
* hash.c (env_has_value, env_index): should not increment NULL.
* io.c (io_read, rb_io_sysread): not read when length is 0.
* io.c (rb_io_reopen): ensure initialized IO.
* io.c (rb_io_init_copy): sychronize file pointer.
* io.c (rb_io_s_pipe): make exception proof.
* string.c (rb_str_rindex_m): Fixnum 0 matched end of string.
Mon Jun 23 16:18:12 2003 Tanaka Akira <akr@m17n.org>
* io.c (rb_open_file): initialize flags.
* time.c (time_arg): initialize v[6] even when argc is 10 to
avoid valgrind error.
Mon Jun 23 08:24:01 2003 Florian Frank <flori@nixe.ping.de>
* string.c (rb_str_upto): generate sequence according to "succ"
order. formerly check was done by dictionary order.
[ruby-talk:74138]
Mon Jun 23 00:27:32 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_string_value): fill constant empty string along
with setting ELTS_SHARED if str->ptr is NULL. [ruby-core:01179]
* string.c (rb_string_value_ptr): ditto.
* string.c (rb_check_string_type): ditto.
Sun Jun 22 23:42:20 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* string.c (str_gsub): move END(0) check before mbclen2().
* string.c (scan_once): reduce END(0) check.
* io.c (rb_io_initialize): accept fixnum mode.
* eval.c (error_print): replace strchr() by memchr(), einfo may
contain "\0".
* pack.c (pack_unpack): range check for "@" move; initialize check
for "m".
* error.c (syserr_initialize): avoid buffer overflow.
* file.c (rb_file_s_readlink): expand buffer until readlink
succeed.
Sat Jun 21 23:15:08 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (proc_invoke): should not propagate distination tag if
tag is already handled in this level. (ruby-bugs-ja PR#501)
* object.c (str_to_id): check for empty string before intern.
[ruby-talk:74006]
Sat Jun 21 13:56:09 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/Makefile.sub: undefine HAVE__SETJMP.
* wince/resource.rb: include winver.h in wince3.0.
Fri Jun 20 23:28:27 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (proc_invoke): should not propagate TAG_BREAK and
TAG_RETURN from orphan Proc object. [ruby-core:01148]
Fri Jun 20 15:04:28 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* defines.h (PATH_ENV): name of PATH environment. [new].
* defines.h (ENV_IGNORECASE): define for case insensitive platforms
to access environment variables.
* dln.c (dln_find_exe): use PATH_ENV instead of "PATH".
* hash.c (env_delete, rb_f_getenv, env_fetch, rb_env_path_tainted,
env_aset): ditto.
* ruby.c (proc_options): ditto.
Fri Jun 20 03:09:21 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (new_yield): distinguish "yield 1,2" and "yield [1,2]".
[ruby-dev:20360]
* eval.c (rb_eval): support new_yield() change.
* variable.c (rb_const_get_0): warn for Foo::BAR when BAR is a
toplevel constant (i.e. a constant defined under Object).
[ruby-list:36935]
* parse.y (no_blockarg): separate no block argument check and
ret_args argument processing.
Fri Jun 20 00:45:19 2003 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/csv.rb: Import csv module.
Thu Jun 19 22:51:41 2003 Masatoshi SEKI <m_seki@mva.biglobe.ne.jp>
* lib/drb.rb, lib/drb/drb.rb, lib/drb/eq.rb,
lib/drb/extserv.rb, lib/drb/extservm.rb, lib/drb/gw.rb,
lib/drb/invokemethod.rb, lib/drb/observer.rb,
lib/drb/timeridconv.rb, lib/drb/unix.rb: import drb-2.0.4b3
Thu Jun 19 16:13:54 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* rubytest.rb: add library path to include standard libraries.
Thu Jun 19 13:13:10 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* hash.c (env_delete, rb_f_getenv, env_fetch): case insensitive to
access environment variables on DOSISH platforms.
Thu Jun 19 00:51:47 2003 NAKAMURA Hiroshi <nakahiro@sarion.co.jp>
* range.c (rb_range_beg_len): out_of_range check after adjusting
end point. [ruby-dev:20370]
Wed Jun 18 23:59:11 2003 Guy Decoux <ts@moulon.inra.fr>
* parse.y (call_args): the first argument to arg_cancat() should
be NODE_LIST. [ruby-core:01151]
Wed Jun 18 23:41:27 2003 Marc Cartright <marc@isri.unlv.edu>
* ext/zlib/zlib.c (zstream_run): In a particular situation,
deflate/inflate will return Z_BUF_ERROR, even though another call
is required by the zlib library.
Wed Jun 18 13:50:06 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): should dispatch based on ID type.
Wed Jun 18 12:53:42 2003 Minero Aoki <aamine@loveruby.net>
* eval.c (rb_yield_0): should restore scope_vmode during yield.
[ruby-dev:20361]
Wed Jun 18 01:13:36 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c (rb_syck_load_handler): merge key implemented.
* ext/syck/rubyext.c (transfer_find_i): removed use of String#=~ in favor
of Regexp#match.
* lib/yaml.rb: YAML::try_implicit returns.
* lib/yaml/rubytypes.rb: Regexps added for type matching.
* lib/yaml/emitter.rb: fix String + nil error.
Tue Jun 17 17:01:08 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/gram.c: added grammar for certain empty sequence entries.
* ext/syck/handler.c, ext/syck/syck.c, ext/syck/syck.h: track bad anchors.
* ext/syck/token.c: added pause token, tag possible circular references.
* lib/yaml/rubytypes.rb: parsing YMD time as Date instance.
* ext/syck/rubyext.c: ditto. DomainType, PrivateType, BadAlias classes.
Tue Jun 17 21:28:27 2003 Ariff Abdullah <skywizard@time.net.my>
* win32/win32.c (rb_w32_opendir): need to set errno. [ruby-talk:73761]
Mon Jun 16 19:01:25 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c: remove rb_cBlock.
Mon Jun 16 18:06:33 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* numeric.c (rb_fix2uint): renamed from rb_fix2int on IA64.
Mon Jun 16 17:02:57 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (proc_invoke): format the message for localjump_error().
Mon Jun 16 16:23:56 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/dl/dl.c (rb_dl_callback): use rb_block_proc() instead of
rb_block_new().
* ext/win32ole/win32ole.c (ev_on_event): ditto.
Mon Jun 16 16:06:47 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (proc_alloc): re-unification of Block and Proc. Block
class is no longer available.
Mon Jun 16 14:43:14 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* bcc32/Makefile.sub: undefine HAVE_GETGROUPS.
Sat Jun 14 16:58:41 2003 Guy Decoux <ts@moulon.inra.fr>
* regex.c (calculate_must_string): should handle option_set
properly. [ruby-talk:73481]
* regex.c (re_compile_fastmap): a bug in flag manipulation.
[ruby-talk:73549]
Sat Jun 14 17:59:59 2003 Guy Decoux <ts@moulon.inra.fr>
* eval.c (method_arity): should handle NODE_BMETHOD and
NODE_DMETHOD. [ruby-core:01138]
Fri Jun 13 09:24:39 2003 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/ftp.rb (storebinary): seek correctly. Thanks, William Webber.
* lib/net/ftp.rb (putbinaryfile): rescue FTPPermError.
Tue Jun 10 14:26:30 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/token.c: preserve newlines prepended to a block.
* ext/syck/implicit.c (syck_match_implicit): added !merge and !default.
* lib/yaml/constants.rb: remove '\z' escape.
* lib/yaml/emitter.rb: ensure reset of @seq_map shortcut flag.
* lib/yaml/encoding.rb: remove Unicode translation methods.
* lib/yaml/rubytypes.rb: improved round-tripping of Strings.
[ruby-core:1134]
Tue Jun 10 01:07:54 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/irb.rb (IRB::Irb::eval_input): warn and exit if $SAFE >=3
after input evaluation.
* lib/irb.rb (IRB::Irb::eval_input): untaint input string. now
irb works for levels 1 and 2.
Mon Jun 9 19:02:33 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in: checks presence of grp.h and setgroups().
* process.c (proc_getgroups, proc_setgroups): raise
NotImplementedError unless available. [ruby-talk:73014]
Sun Jun 8 13:37:21 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/setup.mak: set SUBSYSTEM in each platform.
* wince/stdlib.c: fix mblen() bug.
Sat Jun 7 22:22:03 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/syck/rubyext.c (syck_loader_transfer): should not use
rb_cProc directly, since type_proc may be Proc, Block, or
Method.
* parse.y (value_expr0): class and module statements should not be
warned for "void value expression". [ruby-talk:72989]
Sat Jun 7 01:46:41 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (add_final): should determine type by respond_to?
* gc.c (define_final): ditto.
* io.c (rb_io_ctl): should not depend on respond_to?
* range.c (range_step): rb_check_string_type().
Fri Jun 6 20:29:14 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (error_print): needs to be exception proof.
* eval.c (error_handle, rb_longjmp): bails out when exception
reentered. (ruby-bugs-ja:PR#487), [ruby-core:01119],
[ruby-core:01122]
* eval.c (Init_Proc): pre-allocates critical error objects.
Fri Jun 6 20:29:14 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (cmd_brace_block, do_block, brace_block): initialize block
variables at the beginning of the block. [ruby-talk:72521]
Fri Jun 6 18:49:11 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* process.c (proc_setgroups): new functions.
Fri Jun 6 18:33:27 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (define_final): eliminate rb_f_lambda() call.
* class.c (rb_scan_args): ditto.
* signal.c (sig_trap): ditto.
* hash.c (rb_hash_initialize): ditto.
* variable.c (rb_f_trace_var): ditto.
* ext/dl/dl.c (rb_dl_callback): ditto.
* ext/win32ole/win32ole.c (ev_on_event): ditto.
Fri Jun 6 16:10:01 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: define Net::HTTPResponse#to_ary for backward
compatibility. [ruby-talk:72927]
* lib/net/protocol.rb: add warning.
Fri Jun 6 13:30:57 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (ruby_cleanup): $SAFE is turned off in the finalization.
Each END proc should preserve its own $SAFE level. [ruby-core:01119]
* marshal.c (marshal_load): remove unused variable "hash".
[ruby-core:01120]
* hash.c (env_str_new): freeze strings from ENV. [ruby-talk:72860]
* array.c (rb_ary_first): optional argument to retrieve first n
elements.
* array.c (rb_ary_last): optional argument to retrieve last n
elements.
Thu Jun 5 21:31:55 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/stdlib.c: add mblen().
Thu Jun 5 18:33:46 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/curses/curses.c (window_s_allocate,curses_finalize):
avoid VC++ warnings.
Thu Jun 5 17:44:11 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c (syck_parser_mark): was a bit heavy on the GC.
* lib/yaml.rb (YAML::transfer): added.
Thu Jun 5 16:11:50 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
(MISSING): link with missing/erf.c.
* missing.h (erf, erfc): fix prototype.
* missing/erf.c: new. [ruby-list:37753]
Thu Jun 5 15:09:06 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* math.c (math_erf,math_erfc): new function. [ruby-list:37753]
Thu Jun 5 14:49:43 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c: using GC nodes caused segfault. [ruby-core:1071]
Thu Jun 5 13:48:57 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/token.c: directives choked on a period.
* ext/syck/gram.y: anchors work above a collection. [ruby-core:1071]
* ext/syck/handler.c, ext/syck/syck.c: ensure a fresh strtable between
parser iterations.
Wed Jun 4 12:06:59 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (ruby_finalize): no longer need to turn off $DEBUG in the
finalizer. (ruby-bugs-ja PR#473)
Tue Jun 3 22:20:49 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call_super): should search superclass method based on
orig_func, not last_func.
Tue Jun 3 09:59:27 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call_super): inheritance line adjustment moved from
rb_call(). [ruby-core:01113]
* eval.c (rb_eval): use rb_call_super() to follow DRY principle.
Mon Jun 2 02:20:52 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (push_values_at): Array#values_at should work with
ranges too.
* range.c (rb_range_beg_len): length calculation was wrong.
* eval.c (rb_call): should set T_ICLASS in the frame->last_class.
[ruby-core:01110]
Sun Jun 1 21:50:01 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: should not use def file, use ld with
--export-all-symbols option on Cygwin/MinGW.
* defines.h: ditto.
* cygwin/GNUmakefile.in: ditto.
* ext/digest/defs.h: avoid warnings on Cygwin.
Sun Jun 01 13:33:49 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/string_wce.c: add strpbrk() for hpcpro support.
* wince/setup.mak: add hpcpro(CE2.11) & armv4t(CE.NET) support.
* wince/resource.rb: ditto.
* wince/Makefile.sub: ditto.
Sun Jun 1 10:38:28 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* variable.c (rb_autoload_load): autoloaded constants under a module
belong to the module. [ruby-core:01094], [ruby-dev:20309]
Sat May 31 04:36:54 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (rb_intern): should handle multibyte name.
Fri May 30 23:18:01 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c (rb_syck_mktime): seconds calculated wrong.
* ext/syck/gram.c: flexibility to anchors and transfer methods on
collections.
* ext/syck/token.c: hex escapes.
* lib/yaml/basenode.rb: YamlNode references changed to YAML::BaseNode.
Fri May 30 22:28:04 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* numeric.c (rb_num2uint, rb_fix2int): new function to convert
values over INT_MAX. [ruby-core:01099]
* ruby.h (NUM2UINT, FIX2INT): ditto.
Fri May 30 15:01:05 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/token.c: preserve any indentation past an explicit
indentation.
Fri May 30 14:55:44 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_Array): exclude Kernel#to_a instead of Object#to_a.
(ruby-bugs-ja:PR#483)
* lib/optparse.rb (OptionParser::Switch#parse_arg): not splat.
* lib/optparse.rb (OptionParser::Switch#conv_arg): splat if no
conversion supplied.
* lib/optparse.rb (OptionParser::Switch::PlacedArgument#parse):
override next switch after argument conversion.
Fri May 30 14:41:34 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/handler.c, ext/syck/syck.h: removed syck_fold_format().
* ext/syck/gram.c: flexibility for aliases and anchors.
* ext/syck/token.c: folding now handled in the tokenizer.
Fri May 30 06:21:18 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* variable.c (rb_autoload_load): should delete autoloaded
symbol itself before load. [ruby-core:01097]
* variable.c (rb_mod_remove_const): must not return Qundef.
Thu May 29 14:59:10 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* win32/win32.c (_CRTIMP): redefine _CRTIMP on MinGW.
* configure.in: remove '-D__USE_CRTIMP' from XCFLAGS on MinGW.
* win32/win32.c (NtMakeCmdVector): handle quotes only if not instring.
Thu May 29 09:11:01 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (ev_const_defined, ev_const_get), variable.c
(rb_const_get_at, rb_const_get, rb_mod_remove_const): use Qundef
as autoload marker. [ruby-dev:18103], [ruby-dev:18184]
* eval.c (rb_mod_autoload, rb_mod_autoload_p): new method;
Module#autoload, Module#autoload?.
* variable.c (rb_autoload, rb_autoload_load, rb_autoload_p):
manage autoload constants per classes/modules.
* variable.c (rb_const_defined_at, rb_const_defined): return false
for autoloading constants.
* class.c (rb_define_class, rb_define_module), eval.c (rb_eval),
variable.c (rb_mod_const_at, rb_const_assign): removed autoload
stuff.
* intern.h: prototypes; rb_autoload, rb_autoload_load,
rb_autoload_p.
* lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
do not treat unmatched argument as an option.
Wed May 28 08:44:26 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_f_syscall): type dispatch should be based on
rb_check_string_type(), not FIXNUM_P(), because values may be a
bignum. [ruby-talk:72257]
Tue May 27 20:33:18 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c, util.c: removed duplicated includes/defines.
* ext/socket/socket.c (sock_addrinfo): get rid of SEGV at NULL ptr
String. increase buffer size for 64bit platforms.
Tue May 27 02:34:14 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call0): should pass the current klass value to
block_invoke, which may be called via "super". [ruby-core:01077]
* eval.c (block_invoke): now takes 4th argument "klass".
* eval.c (block_alloc): should propagate BLOCK_PROC to
ruby_block.
Mon May 26 23:51:38 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* marshal.c (r_object0): should not use "yield" method, use "call"
instead. (ruby-bugs-ja PR#476)
Mon May 26 21:39:46 2003 MoonWolf <moonwolf@moonwolf.com>
* lib/mkmf.rb, lib/optparse.rb, lib/tracer.rb: use Method#to_block
instead of deprecated Method#to_proc. (ruby-bugs-ja:PR#477)
Mon May 26 21:21:20 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/optparse.rb (OptionParser::Switch::parse,
OptionParser::order): use {Block,Proc}#call instead of deprecated
#yield.
Mon May 26 16:39:10 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (Init_Proc): Block/Proc separation. [huge change]
* eval.c (block_arity): returns exact arity number for Procs out
of methods. also gives 1 for {|a|..}.
* string.c (rb_str_match): revert use of String#index for
invocation like string =~ string.
* eval.c (rb_Array): move Object#to_a exclusion hack from
splat_value(). need to be in eval.c for a while.
Sun May 25 23:48:21 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bignum.c (rb_quad_pack): should negate negative bignum.
(ruby-bugs-ja:PR#474)
Sun May 25 03:27:25 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: support LOGIN authentication, based on
the patch by Kazuhiko Izawa. [ruby-talk:78981]
Sat May 24 18:19:51 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/Makefile.sub: add eMbedded Visual C++ 4.0 support.
* wince/resource.rb: ditto.
* wince/setup.mak: ditto.
* wince/configure.bat: ditto.
* wince/mkexports.rb: delete japanese comments.
Fri May 23 18:34:05 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_longjmp): get rid of reentering while debug warning.
(ruby-bugs-ja:PR473)
Fri May 23 15:16:16 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* pack.c (pack_unpack): sign-extend if sizeof long is bigger than
32. (ruby-bugs-ja:PR#472)
Fri May 23 14:19:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (ruby_finalize): turn off ruby_debug flag before calling
at_exit procs and finalizers. (ruby-bugs-ja:PR473)
* ext/tcltklib/tcltklib.c (lib_mainloop_core): OK to block if
there's no other thread. (ruby-bugs:PR#861)
Thu May 22 18:07:46 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/token.c: single- and double-quoted root-level fix.
* lib/yaml.rb (YAML::object_maker): can create object attributes (such as
found in Exception class)
* lib/yaml/rubytypes.rb: roundtripping of Exception and subclasses.
Fri May 23 01:26:26 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_obj_clone): defer copying freezing state after
calling initialize_copy(). [ruby-dev:20276]
Thu May 22 17:12:10 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (run_final): use rb_thread_critical instead of DEFER_INTS.
[ruby-dev:20272]
* marshal.c: try to make ArgumentError and TypeError consistent.
[ruby-core:01068]
Thu May 22 15:46:37 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_define_alloc_func): need not to disable
rb_call_super() for allocation functions. [ruby-core:1065]
Thu May 22 06:21:33 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c (rb_syck_err_handler): raise ArgumentError on
malformed YAML.
* lib/yaml/rubytypes.rb: String#to_yaml was missing space indicators at
the end of a line.
Thu May 22 05:43:24 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c (syck_parser_load): root-level false was returning
nil.
* ext/syck/token.c: root-level transfer method bug.
* ext/syck/gram.c: root-level empty gave a parse error.
* lib/yaml/rubytypes.rb: Symbol#to_yaml generating method call error.
Thu May 22 02:46:38 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_eval): splat NODE_RESTARY. [ruby-dev:20268]
* eval.c (rb_thread_fd_close): raise for writing threads.
[ruby-dev:20269]
* io.c (rb_io_close, io_reopen): ditto.
* io.c (io_reopen): keep stdio objects for stdin, stdout,
and stderr. [ruby-dev:19442]
Thu May 22 01:11:15 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (strings, word_list): must create new instance always.
http://yowaken.dip.jp/tdiary/20030521.html#p02
* parse.y (yylex): slight optimization.
Wed May 21 23:07:08 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* error.c (rb_sys_fail): should not specify errno explicitly.
[ruby-dev:20264]
Wed May 21 20:51:47 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
wince/Makefile.sub: update dependencies.
Wed May 21 17:44:16 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* error.c (syserr_initialize): prohibit specifying errno for
subclasses of SystemCallError. in addition, if initialize is
called for SystenCallError instance, its class be changed.
[ruby-dev:20257]
* gc.c (run_final): to protect thread context switch, finalizers
are wrapped in DEFER_INTS/ENABLE_INTS.
Wed May 21 13:26:08 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/optparse.rb: get rid of warnings.
Tue May 20 18:59:54 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_thread_save_context): prohibit rb_gc_force_recycle()
on thread saved ruby_dyna_vars. [ruby-dev:20236]
Tue May 20 17:39:15 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (init_copy): call initialize_copy at the end of copy
process.
Tue May 20 17:15:55 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* error.c (syserr_initialize): use Errno constants as default
errno for subclasses. [ruby-dev:20241]
Tue May 20 15:26:25 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* st.h: define ST_DATA_T_DEFINED for portability.
* ext/syck/syck.h: add typedef, st_data_t for Ruby 1.6.
* ext/syck/syck.c (syck_st_free_nodes): return int.
* ext/syck/syck.c (syck_add_sym): cast the data to st_data_t
to avoid error on bcc32.
* ext/syck/syck.c (syck_lookup_sym): ditto.
* ext/syck/syck.c (syck_free_parser): NULL is not integer.
Tue May 20 13:29:04 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (kill): set errno after calling raise().
Tue May 20 10:51:26 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_f_missing): create exception instance by ordinal
method. [ruby-dev:20033]
* error.c (rb_name_error, rb_sys_fail): ditto.
* error.c (exc_to_s, exit_status, name_err_name,
nometh_err_args, syserr_errno, syserr_eqq): access
attributes.
* error.c (name_err_initialize, nometh_err_initialize,
syserr_initialize): initialize attributes.
Tue May 20 10:26:56 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_yield_0): give warning for multiple values for a
block parameter.
* eval.c (rb_yield_values): a function to yield multiple values.
* array.c (sort_1): use rb_yield_values.
* enum.c (min_ii, max_ii): ditto.
* hash.c (rb_hash_update_block_i, delete_if_i, select_i,
each_pair_i, env_each, env_reject_bang, env_select,
env_update_i): ditto.
* struct.c (rb_struct_each_pair): ditto.
* eval.c (top_include): should include module in the current self,
not ruby_top_self. [ruby-dev:20198]
* eval.c (top_include): stop inclusion to ruby_wrapper; give
warning.
Mon May 19 18:54:30 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/token.c, ext/syck/implicit.c: expanded character set to
allow UTF-8, other Ruby encodings.
Mon May 19 16:47:00 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/syck.c, ext/syck/syck.h, ext/syck/token.c, ext/syck/gram.c:
count line numbers only if line pointer has increased.
Tue May 20 00:45:40 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* dir.c (push_braces): do not push_braces() unless rbrace is found.
(ruby-bugs-ja:PR#469)
Tue May 20 00:09:41 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/pty/pty.c (pty_finalize_syswait): join (using Thread#value)
before detach pid. [ruby-talk:71519]
Mon May 19 23:02:10 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (PUSH_FRAME): save outer ruby_block. [ruby-list:37677],
[ruby-dev:20202]
* eval.c (BEGIN_CALLARGS): restore outer block by using
ruby_block->outer.
* eval.c (block_pass): do not alter block->prev, but block->outer.
* array.c (get_inspect_tbl): warning on wrong condition.
Mon May 19 16:13:57 2003 Minero Aoki <aamine@loveruby.net>
* class.c: add #include "version.h".
* hash.c: ditto.
* string.c: ditto.
Mon May 19 15:33:27 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (localjump_xvalue): renamed exitstatus to exit_value
since it's not exit "status" after all.
* eval.c (localjump_error): add reason to LocalJumpError.
* compar.c (rb_cmpint): raise error via rb_cmperr(), if cmp value
is nil. now take new 2 arguments.
* time.c (time_cmp): 2003-05-16 fix was incomplete.
(ruby-bugs-ja:PR#458)
Mon May 19 14:42:50 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_mod_cmp): stupid comparison fixed.
* io.c (Init_IO): ARGF.path added (alias to ARGF.filename).
[ruby-dev:20197]
Mon May 19 13:58:03 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (init_copy): rename copy_object as initialize_copy,
since it works as copy constructor.
* eval.c (rb_add_method): initialize_copy should always be
private, like initialize.
Mon May 19 13:51:50 2003 Minero Aoki <aamine@loveruby.net>
* re.c (rb_reg_quote): \n \r \f \v quoting was wrong.
[ruby-dev:20203]
* re.c (rb_reg_quote): rb_reg_quote(" ") should be "\\ ", not
"\\s".
Mon May 19 08:08:51 2003 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date.rb: use warn() instead of $stderr.puts().
* sample/cal.rb: ditto.
Sat May 17 12:02:25 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (get_inspect_tbl): check whether inspect_tbl value is a
valid array. (ruby-bugs-ja PR#65)
* array.c (inspect_ensure,rb_protect_inspect,rb_inspecting_p):
use get_inspect_tbl().
Sat May 17 11:50:26 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_f_abort): call exit(1) if exception is raised. This
patch was made by Nobuyoshi Nakada <nobu.nokada@softhome.net> on
2002-05-30. (ruby-bugs-ja PR#236)
* signal.c: disable Ruby's interrupt handler at the beginning.
(ruby-bugs-ja PR#236)
Sat May 17 02:17:42 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/rational.rb (Integer::denominator): fixed typo.
(ruby-bugs-ja:PR#466)
Sat May 17 00:18:11 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/socket/socket.c (ruby_connect): connect() after EINPROGRESS
returns EINVAL on some platforms, need to check true error
status. [ruby-core:01037]
Sat May 17 00:21:51 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_class_allocate_instance): singleton class check
moved to rb_obj_alloc(). (ruby-bugs-ja PR#345)
Fri May 16 23:55:50 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_reg_quote): should escape white space characters,
\t, \f, \n, \r. (ruby-bugs-ja PR#231)
Fri May 16 12:40:40 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (block_pass): chain previous block to the pushing block.
[ruby-list:37677]
* time.c (time_cmp): does not compare with numbers for
interchangeability. (ruby-bugs-ja:PR#458)
Thu May 15 21:55:54 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/gram.c: fixes to one-line documents and end of stream
documents.
* ext/syck/syck.c, ext/syck/syck.h: add root_on_error to parser
struct, specifying the symbol to be returned on a parse error.
Thu May 15 18:44:31 2003 Tanaka Akira <akr@m17n.org>
* lib/open-uri.rb (OpenURI::Redirect#initialize): call super to
initialize mesg.
* lib/open-uri.rb (OpenURI::Meta#charset): call block to guess charset
if block is given and charset is not given.
Thu May 15 16:55:16 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_mod_le): returns nil if two classes/modules are not
in class-superclass relationship.
* object.c (rb_mod_cmp): uses new rb_mod_le() behavior.
Thu May 15 07:45:30 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/rubyext.c, ext/syck/implicit.c: timestamp repairs to
timezone and milliseconds.
* ext/syck/syck.c (syck_parser_reset_levels): duplicate string literal
to avoid warning.
Thu May 15 13:26:48 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (rb_class_instance_methods): default will be changed in
1.8.1.
* io.c (set_stdio): better message.
Thu May 15 13:18:11 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (set_stdio): $stdin, $stdout, $stderr now became read-only.
* variable.c (readonly_setter): message changed.
Thu May 15 09:50:51 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/syck/syck.c (syck_parser_pop_level): add prototype.
* ext/syck/syck.c (syck_strndup): should return value.
Thu May 15 09:32:25 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (kill): fix typo and add signal 0 support.
Wed May 14 20:09:26 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/gram.c: sequence-in-map shortcut, transfer methods on
sequence-in-sequence, memory leak in mapping merge.
* ext/syck/syck.c: memory leak in domain anchoring.
* lib/yaml/rubytypes.rb, lib/yaml/types.rb: eliminated 1.6.x code.
Wed May 14 19:56:43 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/syck/rubyext.c: add prototypes to avoid VC++ warnings.
Wed May 14 12:23:46 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb (Net::HTTP#start): should check whether HTTP
session is opened before finishing. (ruby-bugs-ja:PR#463)
Wed May 14 09:12:55 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: reduce warning. (ruby-bugs-ja:PR#462)
Tue May 13 22:31:04 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* lib/yaml/rubytypes.rb, lib/yaml/types.rb: using Object#object_id
rather than deprecated Object#id.
* ext/syck/token.c: changed ASCII escapes to octal notation.
* ext/Setup*: added entries for static linking of Syck extension.
Tue May 13 20:31:58 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: add '--Wl,--enable-auto-import' to DLDFLAGS
on Cygwin/MinGW.
* configure.in: add '-D__USE_CRTIMP' to XCFLAGS on MinGW.
* ext/syck/handler.c: add proper casts.
* ext/syck/syck.c: ditto.
Tue May 13 17:58:08 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* configure.in, bcc32/Makefile.sub, win32/Makefile.sub: define
HAVE_FSYNC.
* win32/win32.h (fsync): define as _commit().
Tue May 13 15:35:35 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_match_exec): \Z changed to be consistent with new $
(endbuf) behavior.
Tue May 13 14:48:07 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (error_pos): use $deferr for output instead of stderr
directly.
* eval.c (error_print,error_handle,rb_longjmp,rb_thread_schedule):
ditto.
Tue May 13 06:34:19 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* lib/yaml/rubytypes.rb: object and struct loading
* lib/yaml.rb: YAML::detect_implicit will discover typing for a Ruby
string
* ext/syck/: Fixed portable comments, misuse of NULL and methods without
return VALUEs.
Mon May 12 18:08:21 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (Init_IO): new variable $deferr which is default output
port of error messages.
* io.c (rb_warn_m): new method "warn". [new]
* error.c (warn_print): use $deferr.
* error.c (rb_bug): ditto.
* error.c (err_append): ditto.
Sun May 11 13:50:12 2003 Tanaka Akira <akr@m17n.org>
* lib/pp.rb: refine to_s test.
* lib/pp.rb (PP::ObjectMixin#pretty_print): refine to_s handling.
Sun May 11 06:32:13 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/implicit.c, ext/syck/rubyext.c: transfer methods applied to
native loading
* ext/syck/token.c: fix for transfer methods on same indentation as nested
mapping
* lib/yaml/rubytypes.rb: all type names in lowercase
Sat May 10 19:55:18 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ext/syck/gram.c ext/syck/handler.c ext/syck/implicit.c
ext/syck/node.c ext/syck/rubyext.c ext/syck/syck.c
ext/syck/syck.h ext/syck/token.c: updated to Syck 0.27
* lib/yaml/loader.rb: new YAML::Loader class
* lib/yaml.rb: loading of type families leverages YAML::DefaultLoader
Sat May 10 19:00:08 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/string.c: file removed.
* wince/stdlib.c: file added.
Sat May 10 16:17:02 2003 Shugo Maeda <shugo@ruby-lang.org>
* lib/net/imap.rb (decode_utf7): new method.
* lib/net/imap.rb (encode_utf7): new method.
Fri May 9 21:25:50 2003 why the lucky stiff <ruby-cvs@whytheluckystiff.net>
* ruby/ext/syck, ruby/lib/yaml: Initial checkin of YAML substances.
Fri May 9 16:38:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_reopen): It should be possible to reopen closed IO.
[ruby-talk:70941]
* io.c (rb_io_reopen): inherit original file mode unless specified.
Thu May 8 18:44:09 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (rb_gc): check odd alignment stack on m68k machines.
Thu May 8 12:56:04 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* compar.c (rb_cmperr): raise comparison failure.
* intern.h: prototype; rb_cmperr
* numeric.c (flo_gt, flo_ge, flo_lt, flo_le, fix_gt, fix_ge,
fix_lt, fix_le): should fail unless the argument is comparable.
(ruby-bugs-ja:PR#456)
* numeric.c (int_upto, int_downto): should fail unless the
argument is comparable. (ruby-bugs-ja:PR#454)
Wed May 7 13:30:11 2003 Masahiro TANAKA <masa@ir.isas.ac.jp>
* numeric.c (num_step): better error treatment of float values.
Tue May 6 17:51:54 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/pop.rb: rename method: POP3#mail_size -> n_mails
* lib/net/pop.rb: rename method: POP3#bytes -> n_bytes
Tue May 6 17:21:01 2003 Minero Aoki <aamine@loveruby.net>
* ext/bigdecimal/.cvsignore: new file.
* ext/zlib/.cvsignore: new file.
Tue May 6 14:39:36 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_obj_methods): list singleton methods if recur
argument is false; list all methods otherwise.
Mon May 5 21:19:25 2003 Koji Arai <jca02266@nifty.ne.jp>
* ext/gdbm/gdbm.c (fgdbm_values_at): new method to replace
select(index..).
* ext/sdbm/init.c (fsdbm_values_at): ditto.
* ext/dbm/dbm.c (fdbm_values_at): ditto.
* ext/dbm/dbm.c (DBM::VERSION): defined.
* ext/gdbm/testgdbm.rb: replace select with values_at.
* ext/sdbm/testsdbm.rb: ditto.
* ext/dbm/testdbm.rb: ditto.
* ext/dbm/testdbm.rb (setup): DBM.open(path, 0400) cause EACCESS
on Berkeley DB[234].
Mon May 5 22:57:07 2003 Tadayoshi Funaba <tadf@dotrb.org>
* sample/cal.rb: use values_at instead of select.
* sample/biorhythm.rb: ditto.
Mon May 5 18:59:45 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* sample/test.rb: substitute 'select' with 'values_at'.
* lib/date.rb: ditto.
* lib/parsedate.rb: ditto.
Mon May 5 00:46:10 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_values_at): new method to replace select(index..).
* hash.c (rb_hash_values_at,env_values_at): ditto.
* re.c (match_values_at): ditto.
* struct.c (rb_struct_values_at): ditto.
* re.c (match_select): add iterator behavior.
Sun May 4 19:08:53 2003 Tadayoshi Funaba <tadf@dotrb.org>
* lib/date/format.rb: synchronized with date2 3.3.2.
Sun May 4 15:21:18 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: ESMTP -> SMTP transition wrongly fails.
Sun May 4 15:06:37 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/pop.rb: APOP did not work. [ruby-dev:20149]
Sat May 3 21:14:29 2003 Johan Holmberg <holmberg@iar.se>
* ext/curses/curses.c, ext/digest/sha2/sha2.c, ext/iconv/iconv.c,
ext/racc/cparse/cparse.c: include "ruby.h" at the top to shut up
"_FILE_OFFSET_BITS redefined" warning on Solaris.
Sat May 3 11:00:12 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (rb_class_protected_instance_methods): now gives
warnings to show migration path. The default will be reversed
on Jan 2004.
Sat May 3 00:58:53 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_obj_methods): now accepts recurse parameter.
* lib/delegate.rb (Delegator::initialize): instance_methods
etc. now recurse by default. need to specify false.
Sat May 3 00:22:00 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/protocol.rb: reintroduce Protocol.protocol_param.
* lib/net/http.rb: ditto.
* lib/net/pop.rb: ditto.
* lib/net/smtp.rb: ditto.
Fri May 2 23:29:53 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/protocol.rb: remove Protocol class.
* lib/net/smtp.rb (SMTP): ditto.
* lib/net/pop.rb (POP3): ditto.
* lib/net/http.rb (HTTP): ditto.
* lib/net/protocol.rb: remove Command class.
* lib/net/smtp.rb (SMTPCommand): ditto.
* lib/net/pop.rb (POP3Command): ditto.
* lib/net/pop.rb: remove APOPCommand class.
* lib/net/protocol.rb: remove Code class and its all subclasses.
* lib/net/protocol.rb: remove Response class and its all
subclasses.
* lib/net/pop.rb (POPMail): new method unique_id (alias uidl).
Fri May 2 18:17:37 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* compar.c (cmp_gt): raises ArgumentError when "<=>" give nil.
inspired by discussion on comp.lang.python.
Fri May 2 17:37:01 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi/session.rb (CGI::Session::initialize): updated to
support 2003-04-23 change in cgi.rb [ruby-core:1002]
Fri May 2 17:21:02 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (method_list): classify methods based on nearest
visibility. [ruby-dev:20127]
* class.c (rb_class_instance_methods): recurse by default. other
method listing methods as well.
Fri May 2 09:38:06 2003 Warren Brown <wkb@airmail.net>
* string.c (rb_str_ljust): now takes optional argument to specify
pad string. [ruby-talk:70482]
* string.c (rb_str_rjust): ditto.
* string.c (rb_str_center): ditto.
* string.c (rb_str_justify): utility function.
Fri May 2 04:10:59 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_add_method): call singleton_method_added or
method_added for every method definition (after ruby_running).
[ruby-talk:70471]
* array.c (rb_ary_reverse_bang): Array#reverse! should not return
nil even for arrays sized less than 2.
Thu May 1 23:18:01 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_eof): should not block after reading all argument
files. (ruby-bugs-ja PR#449)
Fri May 2 15:10:41 2003 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb: use hashes to pass options.
* lib/fileutils.rb: new option mkdir(:mode), mkdir_p(:mode).
* instruby.rb: follow fileutils.rb feature change.
Thu May 1 08:24:00 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_match_exec): $ _always_ matches at the end of string.
Wed Apr 30 14:12:00 2003 wanowa.kimura@nifty.ne.jp (kimura wataru)
* net/imap.rb: support THREAD extension.
Sun Apr 27 23:13:20 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* string.c (rb_str_to_i): disallow negative radix.
[ruby-dev:20087]
Sat Apr 26 23:34:42 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (open_args): warning message changed to "don't put space
before argument parentheses".
Sat Apr 26 14:25:00 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* wince/ : files removed.
(config, dll.mak, exe.mak, mswince-ruby17.def,
io.c, process.c, signal.c, string.c, time.c)
* wince/ : files added.
(assert.c, Makefile.sub, mkexports.rb, io_wce.c,
process_wce.c, signal_wce.c, string_wce.c,
time_wce.c)
* wince/configure.bat : like mswin32 style.
* wince/direct.c : remove "static" at _currentdir.
* wince/io.h : change definition.
* wince/stdio.c : _fdopen -> fdopen.
* wince/process.h : add _P_OVERLAY.
* wince/time.h : change definition.
* wince/wincemain.c : add wce_SetCurrentDir.
* wince/wince.c : add wce_SetCurrentDir and wce_fopen.
fix GetModuleFileNameA to return correct "lpFileName".
* wince/wince.h : remove #ifdef.
* wince/sys/utime.h, utime.c : rename _utime to utime.
* wince/sys/stat.c : expand relative directory in stat.
Sat Apr 26 06:33:04 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_read): ARGF.read() should read all argument files.
Fri Apr 25 18:46:00 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* gc.c: STACK_LEVEL_MAX=65535 on mswince.
Fri Apr 25 18:40:07 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_read): read should not span two files. [ruby-dev:20073]
Fri Apr 25 18:19:03 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (splat_value): split splat_value() and avalue_splat().
* io.c: there's no way to set non-IO value to current_file, thus
no need for argf_forward().
Fri Apr 25 02:03:25 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (proc_invoke): Proc#yield should pass through retry and
break like keyword yield. [ruby-talk:70034]
* eval.c (proc_invoke): orphan Proc now raises LocalJumpError for
break and retry again.
* eval.c (rb_eval): ARGSCAT should splat the argument.
* eval.c (splat_value): splat operation function.
Thu Apr 24 23:37:02 2003 Dave Thomas <dave@thomases.com>
* lib/matrix.rb (Matrix#minor): Used Range#size, which no longer
exists.
* lib/complex.rb (new!): Complex.new had been made private, but
Kernel#Complex called it. Re-exposed as new!.
* lib/matrix.rb (Matrix.row_vector): Fix method name typo
Thu Apr 24 19:40:02 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/extmk.rb: add -Wl,--no-undefined to LDSHARED only
if GNU ld is 2.11 or later.
Wed Apr 23 14:05:40 2003 Dave Thomas <dave@pragprog.com>
* lib/ipaddr.rb (include?): Support non-IPAddr parameters.
[ruby-core:00980]
Wed Apr 23 13:31:10 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/cgi.rb (CGI::QueryExtension::[]): always return Value
object.
Wed Apr 23 08:39:27 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/zlib/extconf.rb: bccwin32 is win32 too.
Tue Apr 22 20:58:00 2003 Takaaki Uematsu <uema2x@jcom.home.ne.jp>
* ruby.c: don't call VirtualQuery in ruby_init_loadpath()
on mswince.
Tue Apr 22 19:08:53 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c (save_mantissa, load_mantissa): for interoperability
should count cut-down bit from topmost.
Tue Apr 22 09:20:40 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (arg_ambiguous): hopefully better message.
* lib/cgi.rb (CGI::QueryExtension::initialize_query): to_ary
removed.
Tue Apr 22 06:06:22 2003 Tanaka Akira <akr@m17n.org>
* lib/resolv.rb (Resolv::DNS::Resource#hash): use XOR to accumulate
hash value.
* lib/tsort.rb (TSort#each_strongly_connected_component): don't use
block argument.
(each_strongly_connected_component_from): ditto.
Mon Apr 21 21:59:48 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c: one more digit for decimal point. [ruby-talk:69808]
Mon Apr 21 21:25:59 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* numeric.c (flo_is_finite_p): use finite() if available.
* win32/win32.h (isinf, isnan): define as macro.
[ruby-win32:00533]
* bcc32/Makefile.sub, win32/Makefile.sub: no longer use
missing/isinf.c, missing/isnan.c.
Mon Apr 21 18:36:28 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bignum.c (rb_cstr_to_inum): unnecessarily long buffer was used
for radix 9. [ruby-dev:20057]
Mon Apr 21 17:44:34 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (block_append, value_expr0, assign_in_cond,
warn_unless_e_option, warning_unless_e_option, range_op,
cond0): adjust line number in warning.
Mon Apr 21 00:47:42 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* sample/test.rb: avoid the MSVCRT *printf problem(float).
[ruby-dev:20037]
Mon Apr 21 00:11:15 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c (w_float): append least mantissa bits to get rid
of roundoff problem. [ruby-talk:69518]
* marshal.c (r_object0): load least mantissa bits.
Sun Apr 20 23:24:25 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* win32/win32.c (NtInitialize): set the floating-point control word
on bcc32.
* win32/win32.h, bcc32/Makefile.sub: use missing/isinf.c, should not
use _finite() because it returns 0 if NaN.
Sun Apr 20 03:09:30 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* parse.y (void_expr0): node might become NULL after calling
remove_begin().
Sat Apr 19 21:55:10 2003 Akinori MUSHA <knu@iDaemons.org>
* ext/Setup*: Add zlib and remove bogus and obsolete entries.
Sat Apr 19 14:47:07 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (rb_gc): use rb_gc_mark_maybe() to mark registered C
addresses. C variables may not hold valid reference to Ruby
objects. [ruby-core:00975]
Sat Apr 19 00:56:13 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* struct.c (rb_struct_eql): should compare values with "eql?".
Fri Apr 18 23:29:08 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c (range_check): <=> returns nil for invalid values;
should check.
Fri Apr 18 15:26:50 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* error.c (rb_raise): workaround for some implementations of
vsnprintf.
Fri Apr 18 02:23:42 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_compile_pattern): should not set RE_OPTIMIZE_ANCHOR,
if anychar_repeat is enclosed by parentheses.
Fri Apr 18 01:49:18 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* util.c (ruby_strtod): improved conversion accuracy.
Thu Apr 17 14:39:23 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/dbm/dbm.c (each_pair): add prototype to avoid VC++ warnings.
* ext/readline/readline.c (Init_readline): follow readline 4.2
prototype.
Thu Apr 17 14:22:36 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (cond0): warn only range literals whose both side are
literals. [ruby-core:00964]
Thu Apr 17 11:10:59 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/readline/readline.c: add the defined operator for bcc32.
Wed Apr 16 00:14:06 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-special-char-p): should test at the
point if no argument. fixed by Michael Scholz
<scholz-micha@gmx.de>.
Tue Apr 15 19:35:08 2003 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb: rm_r should raise Errno::ENOENT if file
does not exist ([ruby-core:958]). Thanks Johan Holmberg.
Tue Apr 15 19:12:21 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* struct.c (rb_struct_hash): new methods Struct#hash, Struct#eql?.
(ruby-bugs:PR#758)
Tue Apr 15 16:05:11 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* numeric.c (rb_fix2str): buffer was insufficient.
(ruby-bugs-ja:PR#431)
Mon Apr 14 19:45:56 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (file_expand_path): root must follow buf when
reallocated. [ruby-talk:69339], [ruby-dev:20025]
Mon Apr 14 03:22:33 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* rubyio.h (struct OpenFile): add noraise flag to finalizer.
* io.c (Init_IO): define $/, $-0, and $\ as string-only
variables.
* string.c (rb_str_split_m): does not generate empty string if
the receiver is empty.
* io.c (fptr_finalize): should raise error on EBADF for readable
IOs as well.
Mon Apr 14 15:54:18 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bignum.c (rb_cstr_to_inum, rb_big2str): allow 2-36 as radix.
* numeric.c (rb_fix2str): ditto.
* string.c (rb_str_to_i): ditto.
Sun Apr 13 03:20:31 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/mkmf.rb (try_func): remove COMMON_HEADERS at first for
performance.
Sat Apr 12 20:59:40 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-beginning-of-arg): substitute
ruby-backward-arg.
* misc/ruby-mode.el (ruby-calculate-indent): fixed wrong
indentation in brace block and parentheses.
* misc/ruby-mode.el (ruby-forward-sexp, ruby-backward-sexp):
support special char literal, and negative arguments.
Sat Apr 12 17:52:47 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (rb_stat): use rb_check_convert_type() to retrieve IO.
Fri Apr 11 19:00:14 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_stat): check arguments. [ruby-dev:20007]
[ruby-win32:535]
Fri Apr 11 15:56:08 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* numeric.c (coerce_rescue): prevent inspected String from GC.
* numeric.c (flo_eq, rb_dbl_cmp, flo_gt, flo_ge, flo_lt, flo_le,
flo_eql): correct NaN comparison. (ruby-bugs:PR#744)
* sample/test.rb: NaN comparison test.
Fri Apr 11 14:48:47 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (rb_stat): dereference using StringValuePtr().
* file.c (rb_file_s_stat): use rb_stat(). [ruby-dev:20007]
Fri Apr 11 10:51:08 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/benchmark.rb (Benchmark::bm): get rid of warning.
[ruby-talk:69124]
Fri Apr 11 02:41:35 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (set_stdin): assigned value must respond to "read" and
"getc".
* io.c (set_outfile): assigned value must respond to "write".
(ruby-bugs-ja:PR#425)
Thu Apr 10 21:12:19 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/pop.rb: Exception line was accidentaly removed.
[ruby-dev:19989]
Thu Apr 10 18:42:13 2003 Tadayoshi Funaba <tadf@dotrb.org>
* array.c (rb_ary_times): added some checks for request size.
Thu Apr 10 03:22:38 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_mod_name): always return empty string for
anonymous class/module. (ruby-bugs-ja PR#424)
* config.sub: stop forcing addition of -gnu to -linux.
* variable.c (classname): refactoring.
* variable.c (rb_class_path): __tmp__classpath__ handling moved
from classname().
Thu Apr 10 01:52:24 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_obj_is_method): indefinite return value.
Thu Apr 10 00:39:32 2003 Tanaka Akira <akr@m17n.org>
* regex.c (re_compile_pattern): /[\--\-]/ was warned. warn /]/.
* mkconfig.rb: escape `]' in regexp.
Thu Apr 10 00:27:07 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* time.c (time_strftime): RSTRING(format)->ptr might become NULL.
Wed Apr 9 23:54:50 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_obj_remove_instance_variable): better message.
[ruby-talk:68987]
* variable.c (rb_mod_remove_const): ditto.
* object.c (rb_obj_ivar_get): ditto.
* object.c (rb_obj_ivar_set): ditto.
* parse.y (yylex): ditto.
Wed Apr 9 21:51:20 2003 Dave Thomas <Dave@Thomases.com>
* eval.c (rb_mod_define_method): Allow UnboundMethod as
parameter.
Wed Apr 9 18:30:58 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (top_include): include module to wrapper module if
wrapper is present. experimental. [ruby-list:37539]
Wed Apr 9 17:24:21 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (rb_gc_mark_children): introduce this function again; this
is required when stack was very tight. [ruby-talk:68916]
Wed Apr 9 15:49:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (bigdivmod): small typo.
Wed Apr 9 15:35:04 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/readline/readline.c: include <unistd.h> only when
HAVE_UNISTD_H is defined.
Wed Apr 9 14:05:00 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c (w_object): preserve extended module on struct.
(ruby-bugs-ja:PR#422)
Wed Apr 9 03:43:14 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (BIGZEROP): macro to determine if x is a bignum zero.
Tue Apr 8 11:49:31 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (Init_Proc): make Method and UnboundMethod independent.
They are like instance and its class. [ruby-core:00941]
* parse.y (yylex): disallow global variables like "$1ve".
[ruby-core:00945]
* marshal.c (marshal_dump): Marshal.dump(0, false) should cause an
error. (ruby-bugs-ja PR#421)
* regex.c (re_compile_pattern): warn if '-' is the edge of
character range.
Mon Apr 7 15:49:09 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* ext/socket/socket.c (sock_s_unpack_sockaddr_in): remove struct
size check. getnameinfo(3) can handle. [ruby-dev:19967]
Mon Apr 7 01:33:31 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (io_read): do not call rb_sys_fail() when required data
length is zero. (ruby-bugs-ja PR#420)
* eval.c (umethod_proc): should raise TypeError, instead of
returning error causing Proc. Following the principle of "fail
early". [ruby-core:00927]
Sun Apr 6 18:29:21 2003 UENO Katsuhiro <katsu@blue.sky.or.jp>
* ext/zlib/zlib.c: the return value of GzipReader#getc must be
unsigned.
Sun Apr 6 00:35:37 2003 Tanaka Akira <akr@m17n.org>
* sample/exyacc.rb: use Regexp in gsub!.
Sat Apr 5 23:41:28 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* pack.c (pack_pack): small but serious typo.
Sat Apr 5 04:23:05 2003 Warren Brown <wkb@airmail.net>
* sprintf.c (rb_f_sprintf): was decrementing width even if there
is no sign character.
Sat Apr 5 01:41:28 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (backtrace): skip internal allocator frame.
(ruby-bugs-ja PR#416)
Fri Apr 4 10:53:22 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (assign): should prepare mrhs by svalue_to_mrhs().
Wed Apr 2 15:11:23 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* README.EXT, README.EXT.ja (3.3): clarified -1 as free for
Data_Wrap_Struct(). [ruby-dev:19881]
Mon Mar 31 11:11:36 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_f_missing): use "inspect" for T_OBJECT as well.
Mon Mar 31 10:50:48 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (env_reject_bang): untaint key string.
* hash.c (env_delete_m): execute block only if deleting key does
not exist.
Sat Mar 29 17:54:46 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* pack.c (pack_pack): do not call rb_str_buf_cat() with NULL ptr,
which causes SEGV; jump to grow instead. [ruby-dev:19944]
Sat Mar 29 15:19:48 2003 Tanaka Akira <akr@m17n.org>
* instruby.rb, ext/extmk.rb, lib/benchmark.rb, lib/cgi.rb,
lib/debug.rb, lib/getoptlong.rb, lib/optparse.rb, lib/time.rb,
lib/date/format.rb, lib/irb/ruby-lex.rb lib/uri/common.rb: revert
escape for `-' in character class.
Sat Mar 29 09:48:35 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (avalue_to_svalue): use rb_check_array_type() again.
Clarify how "to_ary" and "to_a" work. [ruby-talk:68155]
* eval.c (svalue_to_avalue): ditto.
* eval.c (svalue_to_mrhs): ditto.
* eval.c (rb_eval): unary splat to use to_a, but we need a hack to
exclude Object#to_a until it's removed.
* object.c (rb_Array): check obj.respond_to?("to_a"). Currently
all object respond_to "to_a", but Object#to_a will be removed.
* range.c (Init_Range): undefine to_ary.
* re.c (Init_Regexp): ditto.
Sat Mar 29 09:47:52 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* MANIFEST (ext/aix_mksym.rb): remove obsolete file.
Fri Mar 29 06:21:24 2003 UENO Katsuhiro <katsu@blue.sky.or.jp>
* ext/zlib: merge from rough.
Fri Mar 28 19:33:39 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* variable.c (rb_class_path): hold temporary class path in a
instance variable to get rid of GC. [ruby-dev:19932]
* variable.c (classname): remove temporary class path when exact
name found.
Fri Mar 28 18:29:23 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_compile_pattern): do not warn if "-" is at the top
or last of character class.
Thu Mar 27 12:10:15 2003 Tanaka Akira <akr@m17n.org>
* regex.c (re_compile_pattern): fix [:name:] handling.
/[\[:digit:]]/ was treated as /[[:digit:]]/.
/[[:-@]/ was treated as /[\[:\-@]/.
/[%-[:digit:]]/ was treated as /[%-\[:digit:]\]/.
Thu Mar 27 03:26:40 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* string.c (rb_str_capitalize_bang): check length before upcase
first character. (ruby-bugs:PR#697)
Wed Mar 26 20:25:10 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* dln.c (dln_find_1): break if path list end, even for too long
path names. (ruby-bugs-ja:PR#412)
Wed Mar 26 13:19:32 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (avalue_splat): new function to do unary * (splat)
operator.
* eval.c (avalue_to_svalue,svalue_to_avalue,svalue_to_mrhs): do
not use implicit "to_ary" conversion.
* ext/curses/curses.c (GetWINDOW,GetMOUSE): add taint check.
* ext/curses/curses.c (curses_init_screen): ditto.
* ext/curses/curses.c (window_initialize): ditto.
* gc.c (os_each_obj): prohibit ObjectSpace#each_object in safe
mode ($SAFE >= 4).
Tue Mar 25 23:26:02 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* signal.c (trap): return "DEFAULT" and "IGNORE" respectively for
previous sighandler SIG_DFL and SIG_IGN. [ruby-talk:67860]
Tue Mar 25 12:24:15 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_yield_0): call avalue_to_mrhs() to assign block
parameter |a|. [ruby-dev:19897]
* ruby.c (ruby_set_argv): freeze argument strings.
Tue Mar 25 12:01:54 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_initialize): should check rb_secure(4).
* dir.c (dir_s_getwd): should check rb_secure(4).
* object.c (rb_obj_infect): function version of OBJ_INFECT().
* eval.c (rb_secure_update): new function to check object update.
Tue Mar 25 10:18:05 2003 Minero Aoki <aamine@loveruby.net>
* ext/strscan/strscan.c: should infect also return values of
#inspect.
* ext/strscan/strscan.c: use snprintf() instead of sprintf().
Mon Mar 24 16:55:04 2003 Takaaki Tateishi <ttate@ttsky.net>
* ext/dl/dl.c: added rb_secure(4). (Thanks to Minero Aoki)
* ext/dl/sym.c: ditto.
* ext/dl/ptr.c: ditto.
Mon Mar 24 00:09:02 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (block_append): warn unused literal.
Sun Mar 23 22:22:04 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/jcode.rb (tr!, delete!, szueeze!): add empty string checking.
Sun Mar 23 19:54:53 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* gc.c (rb_gc_call_finalizer_at_exit): use free() if dfree is -1.
Sat Mar 22 15:50:29 2003 Tanaka Akira <akr@m17n.org>
* time.c (make_time_t): try search_time_t if mktime/timegm is failed.
Sat Mar 22 13:26:33 2003 Tanaka Akira <akr@m17n.org>
* lib/optparse.rb, lib/jcode.rb, ext/tk/lib/tk.rb: reorder character
class /[\]\[]/ to /[\[\]]/ for readability.
Sat Mar 22 12:44:15 2003 Tanaka Akira <akr@m17n.org>
* lib/date/format.rb, lib/uri/common.rb: escape `[', `]', `-' in
character class in regexp to avoid warning.
Sat Mar 22 07:39:32 2003 Ulf Betlehem <flu@iki.fi>
* io.c (rb_io_fread): may lose data on nonblocking read.
Fri Mar 21 23:40:41 2003 Tanaka Akira <akr@m17n.org>
* regex.c (re_compile_pattern): fix previous change.
* instruby.rb, ext/extmk.rb, ext/tk/lib/tk.rb, lib/benchmark.rb,
lib/cgi.rb, lib/debug.rb, lib/getoptlong.rb, lib/jcode.rb,
lib/optparse.rb, lib/time.rb, lib/date/format.rb,
lib/irb/ruby-lex.rb: escape `[', `]', `-' in character class in
regexp to avoid warning.
Fri Mar 21 23:23:45 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_compile_pattern): give warning for unescaped square
brackets and minus in character class. [ruby-dev:19868]
Fri Mar 21 18:12:20 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (bmcall): missing type.
Fri Mar 21 01:29:35 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (rb_f_sprintf): copy sign bits only if value is
negative.
* missing.h: include <stdarg.h> or <varargs.h> if HAVE_VSNPRINTF
is not defined.
Thu Mar 20 18:31:37 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/optparse.rb (OptionParser#order!): follow recent change
of proc argument.
Thu Mar 20 16:12:53 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (flo_to_s): change format specifier to "%.15g" to
avoid unnecessary 9s (e.g. 99.59999999999999). (ruby-bugs-ja PR#406)
Thu Mar 20 16:03:18 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (stmt, primary): get rid of SEGV at empty or invalid
condition. (ruby-bugs-ja:PR#410)
* parse.y (cond_negative): negate condition node when NODE_NOT.
Thu Mar 20 10:45:29 2003 Tanaka Akira <akr@m17n.org>
* eval.c (bmcall): add volatile to avoid GC problem.
Thu Mar 20 10:10:49 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (load_dyna): clear ruby_errinfo. (ruby-bugs-ja PR#409)
Wed Mar 19 23:05:30 2003 NAKAMURA, Hiroshi <nahi@ruby-lang.org>
* lib/tracer.rb (trace_func): save and recover Thread.critical state.
Fixed by Fukumoto Atsushi <fukumoto@imasy.or.jp> [ruby-dev:19830]
Wed Mar 19 02:55:46 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (read_all): make str empty if given. (ruby-bugs-ja PR#408)
* io.c (io_read): ditto.
* io.c (rb_io_sysread): ditto.
Tue Mar 18 18:24:03 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c: do not override min and max.
Sun Mar 16 12:29:55 2003 Tanaka Akira <akr@m17n.org>
* lib/pp.rb (object_address_group): use to_s instead of name
to get name of class.
Fri Mar 14 08:53:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (remove_sign_bits): octal left most digit for negative
numbers may be '3'. (ruby-bugs-ja PR#407)
* sprintf.c (rb_f_sprintf): should prefix sign bits if bignum is
negative, using sign_bits().
Wed Mar 12 16:48:19 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* io.c (prep_stdio): set binmode only if the file descriptor
is not connected to a terminal on Cygwin.
Wed Mar 12 11:23:49 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (avalue_to_mrhs): split argument passing and assignment
conversion.
* eval.c (svalue_to_mrhs): ditto.
* eval.c (avalue_to_svalue): avalue_to_svalue([[1,2]]) should be
[[1,2]], not [1,2] to wrap-around.
Tue Mar 11 21:00:59 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: Digest string wrongly included '\n' when user
name is too long (ruby-bugs-ja:PR#404).
Tue Mar 11 20:07:01 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: speeding up by avoiding extra flush.
(suggested by Brian Candler <B.Candler@pobox.com> [ruby-talk:66516])
Tue Mar 11 04:30:12 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (massign): remove unnecessary array unpacking; it should
be handled before massign() by svalue_to_mrhs().
* eval.c (svalue_to_mrhs): '*a = v' value conversion to avalue
(i.e. [1] => [[1]], [1,2] => [1,2]).
* eval.c (rb_eval): use svalue_to_mrhs.
* eval.c (rb_yield_0): ditto.
* eval.c (proc_invoke): break from "Proc#yield" is legal.
Mon Mar 10 23:19:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (rb_find_file): need world writable directory check for
relative paths too.
Mon Mar 10 11:23:00 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (rb_find_file): world writable directory check if
$SAFE >= 1 (was $SAFE >= 2).
Mon Mar 10 01:59:47 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/pop.rb: do not dispatch LIST when a mailbox is empty.
* lib/net/pop.rb: merge the 'STAT' patch from Frank S.Fejes
<frank@oopdreams.com>, with modifications (listed below).
* lib/net/pop.rb: new method Net::POP#mail_size.
* lib/net/pop.rb: new method Net::POP#bytes.
* lib/net/pop.rb: new method Net::POPCommand#stat.
Sun Mar 9 19:30:25 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/fileutils.rb (mkdir, mkdir_p): revert.
* instruby.rb (umask): umask 0022, not 0.
Sun Mar 9 17:09:40 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/fileutils.rb (mkdir, mkdir_p): set mode to 0755.
* Makefile.in (fake.rb): set ALT_SEPARATOR to the default value.
Sat Mar 8 11:30:59 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (massign): fix a bug not to expand in assignment to sole
lhs. [ruby-dev:19766]
Fri Mar 7 21:57:25 2003 Tanaka Akira <akr@m17n.org>
* lib/pp.rb (Kernel.pp): module function.
(MatchData#pretty_print): new method.
Fri Mar 7 20:27:19 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/tcltklib/extconf.rb (find_tcl, find_tk): return true if
non-versioned found. [ruby-dev:19759]
Fri Mar 7 15:05:35 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/dbm/extconf.rb: add QDBM support.
Fri Mar 7 12:59:39 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (massign): deal with sole lhs, assign rest args from
converted array. [ruby-dev:19751]
Fri Mar 7 03:31:36 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (dsym): :"symbol string" style should not contain `\0'.
* process.c (proc_detach): new method Process.detach(pid) which
create background watcher thread to issue waitpid. [new]
* process.c (rb_detach_process): utility function to detach
process from C code.
* ext/pty/pty.c (pty_finalize_syswait): terminate watcher thread,
and detach child process (by creating new idle waitpid watcher
thread).
* ext/pty/pty.c (pty_syswait): may lost signal stopped child.
Fri Mar 7 00:30:33 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/Win32API/Win32API.c: no longer use inline-asms.
* ext/Win32API/extconf.rb: no need to add gcc options.
Thu Mar 6 13:02:10 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (reswords): fix reswords list.
Wed Mar 5 12:13:21 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: better YACC support on HP-UX.
Wed Mar 5 05:55:20 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_cat): remove ptr NULL check and MEMZERO(). ptr
must be non NULL.
Tue Mar 4 23:12:07 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in, bcc32/Makefile.sub, win32/Makefile.sub: define
RUBY_EXPORT to export symbols.
* defines.h: use RUBY_EXTERN instead of EXTERN.
* intern.h, re.h, ruby.h, rubysig.h: ditto.
* win32/win32.h: remove EXTERN definition.
Tue Mar 4 17:54:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_aref): raise TypeError if index is a symbol.
[ruby-list:37217]
* array.c (rb_ary_aset): ditto.
Tue Nov 13 14:39:11 2001 WATANABE Tetsuya <tetsu@jpn.hp.com>
* missing/strftime.c: HP-UX support.
Tue Mar 4 15:08:08 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: better HP-UX support.
* missing/strftime.c: ditto.
Tue Mar 4 10:11:32 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_popen): do not call rb_io_close() directly, call
"close" method instead. [ruby-dev:19717]
* io.c (rb_io_s_open): ditto.
* hash.c (rb_any_hash): remove DEFER_INTS. all do_hash() calls in
st.c are at the top of functions. No reentrant problem.
Tue Mar 4 01:19:21 2003 Akinori MUSHA <knu@iDaemons.org>
* ext/dl/MANIFEST: Exclude .cvsignore. [found by: eban]
Tue Mar 4 01:17:08 2003 Akinori MUSHA <knu@iDaemons.org>
* ext/Win32API/MANIFEST: Belatedly add lib/win32/registry.rb.
[found by: eban]
Tue Mar 4 00:33:04 2003 Akinori MUSHA <knu@iDaemons.org>
* MANIFEST: Belatedly add Test::Unit files. D'oh!
Sun Mar 2 09:51:47 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c (w_nbyte): should output always via rb_io_write().
* marshal.c (dump_ensure): ditto.
* marshal.c (marshal_dump): should call "binmode" method, if it
responds to.
* marshal.c (r_byte): should input always via "getc" method.
* marshal.c (r_bytes0): should input always via "read" method.
* marshal.c (marshal_load): need not to set up FILE* fp;
Mon Mar 3 11:29:04 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (arg): parse 'lhs = a rescue b' as 'lhs=(a rescue b)'.
Mon Mar 3 02:53:52 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (rb_io_fread): should not clearerr() if there's no filled
buffer (i.e. rb_io_fread() returning zero).
Mon Mar 3 01:42:35 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-expr-beg): escaped char syntax.
* misc/ruby-mode.el (ruby-parse-partial): ditto.
* misc/ruby-mode.el (ruby-parse-partial): no deep indent for
block.
* misc/ruby-mode.el (ruby-backward-arg): skip arguments backward.
* misc/ruby-mode.el (ruby-calculate-indent): too deep indentation.
Fri Feb 28 23:50:32 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (map_errno): map OS error to errno. [new]
* win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime): use
map_errno() instead of using GetLastError() directly.
* win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
rb_w32_fclose, rb_w32_close): map winsock error to errno.
Fri Feb 28 22:54:10 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (flock): supports larger files, and maps error
code.
* win32/win32.c (rb_w32_asynchronize): returns errno from child
thread.
* win32/win32.c (rb_w32_fclose, rb_w32_close): ensures unlocked.
Wed Feb 26 17:38:16 2003 Tanaka Akira <akr@m17n.org>
* lib/open-uri.rb: replace Kernel.open as well.
Tue Feb 25 23:03:08 2003 NAKAMURA Hiroshi <nahi@ruby-lang.org>
* lib/debug.rb (DEBUGGER__::Context#debug_command): bp filename must
be the basename of it. [ruby-talk:65644]
Mon Feb 24 17:49:35 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (yycompile): zero clear ruby_eval_tree_begin if
compilation failed.
Mon Feb 24 08:06:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (str_new): need no MEMZERO().
Sun Feb 23 17:57:06 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/fileutils (fu_stream_blksize): wrong logical condition.
(and -> or).
Sat Feb 22 03:12:56 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (fix_gt): use rb_num_coerce_cmp() instead of
rb_num_coerce_bin.
* numeric.c (fix_ge, fix_lt, fix_le): ditto.
* numeric.c (flo_gt, flo_ge, flo_lt, flo_le): ditto.
Sat Feb 22 02:45:20 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_thread_create): may called from place higher than
rb_gc_stack_start.
* gc.c (Init_stack): update rb_gc_stack_start if it is lower (or
higher if stack grows down) than the previous value.
Fri Feb 21 21:03:41 2003 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb: new method FileUtils#copy_stream.
* lib/fileutils.rb: new method FileUtils#compare_file.
* lib/fileutils.rb: new method FileUtils#compare_stream.
* lib/fileutils.rb: new method FileUtils#rmtree (alias of rm_rf).
Fri Feb 21 17:19:27 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* eval.c (rb_f_require): do not need to abort if a DLEXT file
is not found.
Fri Feb 21 13:39:25 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_cmp_m): should use LONG2NUM().
Fri Feb 21 12:45:50 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_cmp_m): two small bugs fixed.
Fri Feb 21 08:03:09 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (rb_gc_mark): inline rb_gc_mark_children().
* gc.c (gc_sweep): new tactics to increase malloc_limit mildly.
Fri Feb 21 05:16:14 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_cmp_m): return nil if str2 does not respond to
both "to_str" and "<=>".
* compar.c (cmp_gt): return nil if "<=>" returns nil (means
incomparable).
* compar.c (cmp_ge, cmp_lt, cmp_le): ditto.
* compar.c (cmp_between): use RTEST(), since cmp_lt and cmp_gt may
return nil.
Thu Feb 20 19:05:51 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_thread_start_0): main thread swapped by fork() may
terminate rb_thread_start_0() successfully. call ruby_stop(0);
this change was suggested by Rudi Cilibrasi
<cilibrar@drachma.ugcs.caltech.edu>.
Thu Feb 20 18:44:51 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (file_expand_path): fix wrong behavior for root file.
expand_path("..", "//machine/share") => "//machine/share"
expand_path("..", "c:/a") => "c:/"
expand_path("..", "/a") => "/"
Thu Feb 20 18:11:01 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (file_expand_path): should not upward beyond share name.
Thu Feb 20 15:45:33 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* missing.h (strtoul): fix prototype of strtoul.
Thu Feb 20 10:11:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (clhs): allow "Foo::Bar = x".
Thu Feb 20 04:07:06 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (primary): "self[n]=x" can be legal even when "[]=" is
private. changes submitted in [ruby-talk:63982]
* parse.y (aryset): ditto.
* parse.y (attrset): "self.foo=x" can be legal even when "foo="
is private.
* eval.c (is_defined): private "[]=" and "foo=" support.
* eval.c (rb_eval, assign): ditto.
Thu Feb 20 03:58:34 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): "foo=" should not always be public.
Thu Feb 20 01:23:59 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_thread_restore_context): inhibit interrupts in
critical section while context switching. [ruby-talk:64785]
Wed Feb 19 18:27:42 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* node.h (nd_cpath): nested class/module declaration.
[EXPERIMENTAL]
* eval.c (rb_eval): ditto.
* gc.c (rb_gc_mark_children): ditto.
* parse.y (cpath): ditto.
Tue Feb 18 21:39:27 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call0): should not report uninitialized warning by
attribute reader method.
* variable.c (rb_attr_get): new function to get instance variable
without uninitialized warning.
* io.c (argf_to_io): should prefetch argv.
Tue Feb 18 00:13:50 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-comment-column): customize comment
column. [new]
* misc/ruby-mode.el (ruby-deep-indent-paren): deep indentation
parentheses. [new]
* misc/ruby-mode.el (ruby-expr-beg): fix for / after $?.
* misc/ruby-mode.el (ruby-parse-partial, ruby-calculate-indent):
deep indentation support.
* misc/ruby-mode.el (ruby-forward-sexp, ruby-backward-sexp):
move forward/backward across one balanced expression. [new]
* misc/ruby-mode.el (ruby-indent-exp): indent balanced
expression. [new]
* misc/ruby-mode.el (ruby-electric-brace): indent before
show matching parenthesis. (contributed by NABEYA Kenichi)
Mon Feb 17 14:36:56 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_opendir, rb_w32_utime): need parens.
Mon Feb 17 14:13:25 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (link): implement with CreateHardLink().
* win32/win32.c, win32/win32.h (rb_w32_utime): enable utime() to
directory if on NT. [new] (ruby-bugs-ja:PR#393)
Mon Feb 17 13:28:51 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (file_expand_path): strip last slash when path is
root.
Sun Feb 16 19:22:31 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (file_expand_path): buffer might be reallocated while
expanding default directory.
* file.c (file_expand_path): default directory was being
ignored if path was full path with no drive letter, under
DOSISH.
Sun Feb 16 03:14:33 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* io.c (prep_stdio, Init_io): always set binmode on Cygwin.
Sat Feb 15 01:01:45 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (file_expand_path): fix surplus path separators while
expanding at root directory. [ruby-dev:19572]
Fri Feb 14 14:25:24 2003 akira yamada <akira@arika.org>
* lib/uri/generic.rb, lib/uri/ldap.rb, lib/uri/mailto.ldap: all foo=()
returns arguments passed by caller.
* lib/uri/generic.rb (Generic#to_str, Generic#to_s): removed to_str.
Suggested by Tanaka Akira <akr@m17n.org> at [ruby-dev:19475].
* lib/uri/generic.rb (Generic#==): should not generate an URI object
from argument. Suggested by Tanaka Akira <akr@m17n.org> at
[ruby-dev:19475].
Thu Feb 13 11:54:50 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ruby.c (ruby_init_loadpath): ensures buffer terminated
before use strncpy().
* ruby.c (proc_options): avoid SEGV at -S with no arguments.
script argument is in effect only when -e is not given.
(ruby-bugs-ja:PR#391)
Thu Feb 13 01:30:10 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_thread_schedule): current thread may be dead when
deadlock. (ruby-bugs:PR#588)
Thu Feb 13 00:28:52 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c (range_step): step might be float 0 < x < 1.
* eval.c (rb_thread_schedule): pause if no runnable thread when
there's only one thread.
Thu Feb 13 00:09:47 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (strrdirsep): ignore trailing directory separators.
* file.c (rb_file_s_expand_path): File.expand_path(".","/") should
return "/". (ruby-bugs-ja:PR#389)
* file.c (rb_file_s_basename): also ignore trailing directory
separators, in compliance with SUSv3. (ruby-bugs-ja:PR#390)
* file.c (rb_file_s_dirname, rb_file_s_extname): ditto.
* file.c (rb_file_s_dirname): append "." if drive only.
* file.c (rb_file_s_split): get rid of converting twice.
Mon Feb 10 20:55:15 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/extmk.rb (parse_args): add '-n' to $mflags BEFORE "--".
do not add DESTDIR if already included in $mflags.
Mon Feb 10 19:54:30 2003 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb (FileUtils#uptodate?): use mtime for
comparison.
Mon Feb 10 10:14:26 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_to_a): return value should be an Array if the
receiver is an instance of subclass of Array.
* string.c (rb_str_to_s): return value should be a String if the
receiver is an instance of subclass of String.
Mon Feb 10 03:33:42 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* io.c (rb_file_sysopen): rb_file_sysopen_internal() needs four
arguments.
Sun Feb 9 15:16:04 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* intern.h (HAVE_RB_DEFINE_ALLOC_FUNC, RB_CVAR_SET_4ARGS):
define to 1.
* ruby.h (NORETURN_STYLE_NEW): ditto.
Sun Feb 9 12:28:18 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/mkmf.rb (init_mkmf): add libdir to LIBPATH unless cross
compiling.
Sun Feb 9 08:34:45 2003 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: 4xx raises Net::ProtoServerError, 5xx raises
Net::ProtoFatalError (for backward compatibility).
Sun Feb 9 07:07:26 2003 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb: new method FileUtils.pwd (really).
* lib/fileutils.rb: FileUtils.pwd, cmp, identical?, uptodate? does
not accept any option.
Sat Feb 8 18:35:30 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-forward-string): fixed void variable
error.
Sat Feb 8 16:23:11 2003 NABEYA Kenichi <kenichi@nabeya.com>
* misc/ruby-mode.el (ruby-font-lock-keywords): method name can
be delimited by tab.
Sat Feb 8 03:57:32 2003 Akinori MUSHA <knu@iDaemons.org>
* lib/irb/workspace.rb, lib/irb/ext/math-mode.rb,
lib/irb/ext/multi-irb.rb, lib/irb/lc/error.rb,
lib/irb/lc/help-message, lib/irb/lc/ja/error.rb,
lib/shell/command-processor.rb, lib/shell/error.rb,
lib/shell/filter.rb: Fix typos and grammos. [approved by: keiju]
Sat Feb 8 03:34:28 2003 Akinori MUSHA <knu@iDaemons.org>
* intern.h (HAVE_RB_DEFINE_ALLOC_FUNC): New boolean macro to make
it easier to write extensions that work with both ~1.6 and 1.8~.
* intern.h (RB_CVAR_SET_4ARGS): Ditto.
* ruby.h (NORETURN_STYLE_NEW): Ditto.
Sat Feb 8 00:47:24 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_call): calls method_missing when superclass method
does not exist.
* eval.c (rb_f_missing): now handles "no super" case.
* object.c (rb_obj_ivar_get): Object#instance_variable_get: new
method to get instance variable value without eval(). [new]
* object.c (rb_obj_ivar_set): Object#instance_variable_set: new
method to set instance variable value without eval(). [new]
Fri Feb 7 15:35:21 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* intern.h, re.c (rb_memsearch): returns long.
* string.c (rb_str_index): should return offset position.
Fri Feb 7 15:30:15 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (proc_invoke): should propagate self to super
methods. [ruby-dev:19510]
Thu Feb 6 19:04:32 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_reg_initialize_m): should not preset "kcode" unless
encoding is explicitly specified.
Thu Feb 6 19:01:32 2003 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb: new method FileUtils.pwd.
* lib/fileutils.rb: default label is ''.
* lib/fileutils.rb: using module_eval again, to avoid ruby's bug.
* lib/fileutils.rb: fix wrong examples in rdoc.
Thu Feb 6 17:43:56 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/complex.rb (Complex#==): should not raise error by type
mismatch.
* lib/rational.rb (Rational#==): ditto.
Thu Feb 6 11:44:40 2003 MoonWolf <moonwolf@moonwolf.com>
* re.c (rb_reg_initialize_m): 3rd argument was ignored.
Thu Feb 6 01:09:05 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_count): return 0 for empty string (was
returning nil).
Wed Feb 5 19:41:37 2003 Tanaka Akira <akr@m17n.org>
* lib/open-uri.rb: dispatch code restructured to make it openable
that has `open' method.
* lib/open-uri.rb: Location: field may has a relative URI.
pointed out by erik eriksson <ee@opera.com>.
Wed Feb 5 17:11:02 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (yylex): no .<digit> float literal anymore.
Tue Feb 4 16:11:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_equal): a == b is true when b is non T_ARRAY
object, if b has "to_ary" and b == a.
* hash.c (rb_hash_equal): a == b is true when b is non T_HASH
object, if b has "to_hash" and b == a.
* string.c (rb_str_equal): a == b is true when b is non T_STRING
object, if b has "to_str" and b == a.
Mon Feb 3 23:46:48 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (argf_getline): should not increment lineno at EOF.
Mon Feb 3 16:49:19 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (Init_Object): default Object#=== now calls "=="
internally.
* re.c (rb_reg_initialize_m): should honor option status of
original regexp.
* array.c (rb_ary_equal): ary2 should be T_ARRAY (no to_ary
conversion).
* array.c (rb_ary_eql): ditto.
* string.c (rb_str_equal): str2 should be T_STRING (no to_str
conversion).
Mon Feb 3 16:32:52 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* re.c (rb_memsearch): a little improvement.
Mon Feb 3 13:18:05 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_memsearch): algorithm body of String#index.
* error.c (Init_Exception): "to_str" removed.
* eval.c (eval): should not rely on Exception#to_str
* eval.c (compile_error): ditto.
* error.c (err_append): ditto.
Sat Feb 1 23:56:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_merge): Hash#merge, non destructive "update".
now there's also Hash#merge! which is an alias to "update".
Fri Jan 31 14:16:59 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* string.c (rb_str_index): search using Karp-Rabin algorithm.
Fri Jan 31 12:45:11 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (rb_obj_classname): new function.
* string.c (rb_str_dup): should preserve original's class (but not
hidden singleton class).
* string.c (rb_str_substr): ditto.
* parse.y: backout EXPR_CMDARG removal.
Fri Jan 31 09:40:07 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/optparse.rb (OptionParser::List::accept): default
pattern must not be nil.
* lib/optparse.rb (OptionParser::make_switch): NoArgument doesn't
override other styles.
Thu Jan 30 16:46:43 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/optparse.rb (OptionParser::Switch::PlacedArgument): added.
if the next argument doesn't start with '-', use it as the
value.
* lib/optparse.rb (OptionParser::make_switch): fixed a bug of
pattern.
* lib/optparse.rb (Array): no need to guard.
Thu Jan 30 08:27:19 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (rb_file_s_expand_path): removed a sludge.
Wed Jan 29 03:24:39 2003 Michal Rokos <michal@rokos.homeip.net>
* dir.c (glob_helper): memory leak fixed.
Tue Jan 28 04:45:03 2003 Akinori MUSHA <knu@iDaemons.org>
* instruby.rb (parse_args), ext/extmk.rb (parse_args): Prepend a
hyphen to the first argument of MAKEFLAGS only if appropriate.
Remove wrong comments.
Mon Jan 27 03:30:06 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* error.c (get_syserror): use snprintf() instead of sprintf(). pointed
out by knu.
Mon Jan 27 02:06:38 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* error.c (get_syserror): some Windows' errno have 5 digits. pointed
out by znz.
Sun Jan 26 19:23:10 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* instruby.rb ($mflags.set?): Check $make instead of $nmake, since
there is no such a variable.
* instruby.rb ($mflags.set?), ext/extmk.rb ($mflags.set?): Return
false if unmatched.
Sun Jan 26 19:08:30 2003 Akinori MUSHA <knu@iDaemons.org>
* lib/shellwords.rb: Embed rdoc style comments.
* lib/shellwords.rb (shellwords): Use String#lstrip!.
* lib/shellwords.rb (shellwords): Recognize an object that
responds to to_str() by using String.new().
Sun Jan 26 17:53:04 2003 Akinori MUSHA <knu@iDaemons.org>
* instruby.rb (parse_args), ext/extmk.rb (parse_args): Detect -n
and emulate a dry run. Use 'make' in case no --make argument is
given.
Sun Jan 26 07:18:42 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* instruby.rb: re-define individual methods verbosely rather than
including FileUtils::Verbose, in order to suppress messages from
FileUtils#cmp.
* instruby.rb (makedirs): make same directory only once even if
dryrun.
* lib/fileutils.rb (FileUtils::Verbose, FileUtils::NoWrite):
re-define methods with define_method instead of module_eval.
Sun Jan 26 03:37:18 2003 Akinori MUSHA <knu@iDaemons.org>
* instruby.rb, ext/extmk.rb, Makefile.in, win32/Makefile.sub,
bcc32/Makefile.sub: Replace the complicated MFLAGS/MAKEFLAGS
parser with something plain and comprehensible. This fixes a
bug where make flags were wrongly reordered and the resulted
command line often did not make sense especially when BSD make
is used with extra arguments given. Tested with FreeBSD and
Linux by me and mswin32, bccwin32 and mingw by usa.
Fri Jan 24 18:15:33 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y: tMINUS should have lower precedence than tPOW.
Fri Jan 24 05:12:55 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): deal
with escaped $ and ? at the end of strings. [ruby-talk:62297]
* misc/ruby-mode.el (ruby-font-lock-keywords): added defined?.
Thu Jan 23 17:25:04 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): do not warn discarding already undefined
method.
* lib/rational.rb: undef quo before replacing.
Thu Jan 23 15:49:57 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (arg): missing arguments.
Thu Jan 23 14:56:52 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/rational.rb: modified to support "quo".
* numeric.c (num_quo): should return most exact quotient value,
i.e. float by default, rational if available.
* numeric.c (num_div): "div" should return x.divmod(x)[0].
Thu Jan 23 13:24:18 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_arg): was accessing garbage argv value.
Thu Jan 23 06:37:01 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* instruby.rb: should not contain destdir in shebang line.
Wed Jan 22 23:19:57 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (pipe_exec): remove unnecessary SetStdHandle().
Wed Jan 22 20:20:59 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (arg): syntaxify tPOW negative number hack.
* parse.y (negate_lit): new function to negate literal numeric
values in compile time.
Wed Jan 22 15:36:54 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_match_exec): charset info may be stored in MBC
region when $KCODE != NONE.
Wed Jan 22 14:22:53 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* error.c (set_syserr): should preserve duplicated error names.
Tue Jan 21 20:29:31 2003 Michal Rokos <michal@rokos.homeip.net>
* mkmf.rb: make possible to add files to clean and distclean targets
Tue Jan 21 18:05:25 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bcc32/Makefile.sub (LIBRUBY_A): link dmyext.
Tue Jan 21 16:59:18 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* instruby.rb: use real interpreter pathname at shebang line.
[ruby-dev:19370]
Tue Jan 21 16:22:32 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (arg): put back old ** behavior for negative number
right operand.
Tue Jan 21 14:46:12 2003 Tanaka Akira <akr@m17n.org>
* lib/pp.rb: Use Test::Unit.
* lib/prettyprint.rb: Ditto
* lib/time.rb: Ditto
* lib/tsort.rb: Ditto
Tue Jan 21 04:15:50 2003 Tanaka Akira <akr@m17n.org>
* lib/pp.rb: Use redefined `to_s' as well as `inspect'.
Useless `pretty_print' methods removed.
(PP::ObjectMixin#pretty_print_inspect): new method.
Mon Jan 20 21:48:43 2003 Akinori MUSHA <knu@iDaemons.org>
* configure.in (MANTYPE): Detect if the system's nroff(1) groks
mdoc. Provide a new option --with-mantype={doc|man} in case the
check does not work as expected.
* Makefile.in (MANTYPE): Define MANTYPE and pass it to
instruby.rb.
* instruby.rb: Convert mdoc manpages to man for systems which
nroff(1) does not grok mdoc.
Mon Jan 20 21:25:18 2003 Akinori MUSHA <knu@iDaemons.org>
* lib/tempfile.rb (self.open): If a block is given, call it with
tempfile as an argument and automatically close the tempfile
when the block terminates.
Mon Jan 20 21:02:50 2003 Akinori MUSHA <knu@iDaemons.org>
* mdoc2man.rb: Properly put nested braces, parentheses and angles.
* mdoc2man.rb: Add support for .An and .Aq/.Ao/.Ac.
* mdoc2man.rb: Add support for .Dl.
* mdoc2man.rb: Make .Pf macro actually work.
* mdoc2man.rb: Properly handle .Os.
* mdoc2man.rb: Correctly omit spaces around punctuation
characters.
Mon Jan 20 19:43:41 2003 Akinori MUSHA <knu@iDaemons.org>
* mdoc2man.rb: Make this work as a library.
Mon Jan 20 18:22:40 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_f_require): purge too many goto's.
Mon Jan 20 17:50:05 2003 Akinori MUSHA <knu@iDaemons.org>
* mdoc2man.rb (parse_macro): Understand .Ux.
Mon Jan 20 17:32:56 2003 Akinori MUSHA <knu@iDaemons.org>
* mdoc2man.rb: New file. A mdoc to man converter ported from
Perl.
Mon Jan 20 15:40:15 2003 Akinori MUSHA <knu@iDaemons.org>
* ruby.1: Properly close .Bl with .El.
Mon Jan 20 04:14:17 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/mkmf.rb (egrep_cpp): use inspect to show options.
* lib/mkmf.rb (dir_config): prior configured directories to
defaults.
* lib/mkmf.rb (dir_config): extract first word to determine
make command type.
Mon Jan 20 02:15:53 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/aix_mksym.rb: no longer used.
Mon Jan 20 00:17:16 2003 Matt Armstrong <matt@lickey.com>
* file.c (eaccess): under windows, make eaccess() just call
access(). [ruby-core:716], [ruby-bugs:PR#556]
Sun Jan 19 23:08:18 2003 Akinori MUSHA <knu@iDaemons.org>
* lib/shellwords.rb (shellwords): A backslash ('\') in single
quotes should not be regarded as meta character. This bug or
maybe feature was inherited from Perl's shellwords.pl.
Sun Jan 19 14:01:12 2003 UENO Katsuhiro <unnie@blue.sky.or.jp>
* regex.c (is_in_list): should work well with UTF-8.
* regex.c (re_match_exec): ditto.
Sat Jan 18 14:53:49 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bignum.c (rb_cstr_to_inum): should not erase all 0s, but
squeeze into one. [ruby-dev:19377]
Fri Jan 17 03:33:42 2003 Akinori MUSHA <knu@iDaemons.org>
* sprintf.c (rb_f_sprintf): Fix a bug caused by an uninitialized
variable v, that a bignum unexpectedly gets converted into a
string with its higher figures all filled with ./f/7/1,
depending on the base. This bug seems to have been introduced
in rev.1.27.
* sprintf.c (rb_f_sprintf): Use switch instead of a sequence of
else-if's.
Wed Jan 15 15:18:38 2003 moumar <moumar@netcourrier.com>
* configure.in (ARCHFILE): set even unless --enable-shared on
AIX. [ruby-talk:61466]
* marshal.c (math.h): should be included after ruby.h on AIX.
[ruby-talk:61366]
Tue Jan 14 21:47:56 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_f_require): do not search adding .rb/.so suffixes if
the suffix specified. [ruby-dev:18702]
http://moonrock.jp/~don/d/200211.html#d08_t1
Tue Jan 14 18:36:41 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_all): now works without block.
* enum.c (enum_any): ditto.
Tue Jan 14 01:21:32 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (next_argv): not always set binmode.
Mon Jan 13 20:45:19 2003 Guy Decoux <ts@moulon.inra.fr>
* parse.y (list_append): avoid O(n) search using node->nd_next->nd_end.
* parse.y (list_concat): ditto.
* eval.c (rb_eval): NODE_ARRY nd_end adoption.
Mon Jan 13 02:22:11 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/dl/lib/dl/win32.rb: eliminate unnecessary "A" adding.
Sun Jan 12 16:07:17 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* io.c (next_argv): inherit binmode from $defout.
Sat Jan 11 22:50:47 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/dl/lib/dl/win32.rb: compatibility improvement.
Sat Jan 11 01:44:16 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (RUBY_CHECK_IO_NEED): added more tests.
* io.c (rb_io_check_readable): seek after synchronized write.
Fri Jan 10 01:23:45 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): syntax
classes are not allowed inside character classes.
[ruby-talk:60996]
Thu Jan 9 23:28:01 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in: AC_MSG_FAILURE is a new macro in 2.54b or later.
Thu Jan 9 17:05:24 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (RUBY_CHECK_IO_NEED): check whether fseek() and
fflush() are needed.
* io.c (flush_before_seek): flush write stream only.
* io.c (rb_io_check_readable): seek instead of flush if the last
operation was write.
* io.c (rb_io_check_writable): seek instead of flush if the last
operation was read.
* bcc32/Makefile.sub, win32/Makefile.sub: needs to seek between
R/W.
Thu Jan 9 16:31:51 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): should not discard nested NODE_BLOCK.
Thu Jan 9 15:12:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (stmt): NODE_NOT elimination for if/unless/while/until node.
* parse.y (primary): ditto.
Thu Jan 9 13:26:18 2003 Akinori MUSHA <knu@iDaemons.org>
* st.h, st.c: Back out the introduction of st_*_func_t. Some
compilers complain about function type mismatch.
Thu Jan 9 02:10:44 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): reduce recursive rb_eval() call by using sort
of continuation passing style.
Wed Jan 8 17:10:32 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/Win32API/lib/win32/registry.rb: added. [new]
Wed Jan 8 15:54:05 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c: remove ruby_last_node and assignments seems to be
unnecessary
* intern.h: debug does not run if ID_ALLOCATOR is zero.
Wed Jan 8 15:04:11 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c (range_each): treat fixnums specially to boost.
* numeric.c (num_step): remove rb_scan_args() for small speedup.
Tue Jan 7 17:56:08 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (svalue_to_avalue): should return converted array.
Tue Jan 7 07:48:01 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_f_local_variables): skip $_, $~ and flip states in
dynamic variables. [ruby-core:00681]
Tue Jan 7 02:46:29 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (env_clear): new Hash compatible method.
* hash.c (env_shift, env_invert, env_replace, env_update): ditto.
Mon Jan 6 23:36:29 2003 Akinori MUSHA <knu@iDaemons.org>
* st.h, st.c: Introduce new conventional typedef's, st_data_t,
st_compare_func_t, st_hash_func_t and st_each_func_t.
* st.h, st.c: Do explicit function declarations and do not rely on
implicit declarations.
* class.c, eval.c, gc.c, hash.c, marshal.c, parse.y, variable.c:
Add proper casts to avoid warnings.
Mon Jan 6 20:44:43 2003 Akinori MUSHA <knu@iDaemons.org>
* intern.h (rb_check_array_type): Declare rb_check_array_type().
* ext/digest/md5/md5ossl.c: Include stdio.h for sprintf() and
string.h for memcmp().
* ext/dl/ptr.c: Include ctype.h for isdigit().
Mon Jan 6 18:43:17 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c: improve DOSISH drive letter support.
Mon Jan 6 18:31:45 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/fileutils.rb (ln): add ' -f' in the verbose message.
* lib/fileutils.rb (cp_r): add 'p' in the verbose message.
Mon Jan 6 16:44:52 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_join): dispatch based on "to_str".
* array.c (rb_ary_times, rb_ary_equal): ditto.
Mon Jan 6 13:26:35 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* process.c (proc_exec_v): follow to proc_spawn_v(). call do_aspawn()
on Win32.
* process.c (rb_proc_exec): call do_spawn() on Win32.
* win32/win32.c, win32/win32.h (do_spawn, do_aspawn): add mode flag.
* process.c (proc_spawn_v, rb_f_system): follow above change.
Mon Jan 6 05:11:15 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/extmk.rb: make $0 normal variable.
Mon Jan 6 02:32:46 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* struct.c (make_struct): needs meta class.
Sun Jan 5 22:54:05 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/fileutils.rb (ln): `argv' is not a argument.
Sun Jan 5 17:44:37 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/extmk.rb (extmake): set $0 temporarily while loading
extconf.rb.
Sun Jan 5 14:46:46 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* instruby.rb: need paren in regexp(make -n install).
* ext/extmk.rb (sysquote): do not need to quote on mswin/bccwin/mingw.
* ext/extmk.rb ($mflags): uniq items and remove '-' and '--'.
move options to the lead.
* lib/fileutils.rb (install): model on the real install
command(message).
Sun Jan 5 09:36:46 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ruby.c (ruby_init_loadpath): under Windows, get the module
path from an internal address instead of hard coded library
name.
* cygwin/GNUmakefile.in, bcc32/Makefile.sub,
win32/Makefile.sub (CPPFLAGS): removed LIBRUBY_SO macro.
* bcc32/Makefile.sub, win32/Makefile.sub (config.h): no longer
depends on makefiles.
Sun Jan 5 04:17:05 2003 Akinori MUSHA <knu@iDaemons.org>
* gc.c (SET_STACK_END): Issue a FLUSH_REGISTER_WINDOWS here too.
This fixes make test on FreeBSD/sparc64.
Sun Jan 5 03:43:47 2003 Akinori MUSHA <knu@iDaemons.org>
* defines.h (FLUSH_REGISTER_WINDOWS): Make the flushw call an
inline function so it can be used as an expression.
* eval.c (EXEC_TAG, THREAD_SAVE_CONTEXT): Consistently call
FLUSH_REGISTER_WINDOWS before calling setjmp(). (I suspect that
every setjmp() implementation should take care of register
windows, though)
Sun Jan 5 03:12:32 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (utimbuf): use utimbuf instead of _utimbuf if defined _WIN32.
* win32/Makefile.sub (LIBS): use oldnames.lib.
* win32/win32.c (rb_w32_getcwd): follow above change.
* win32/win32.h: ditto.
* wince/direct.c, wince/direct.h (getcwd): ditto.
* wince/io.h: ditto.
* wince/string.c, wince/wince.h (stricmp, strnicmp): ditto.
Sat Jan 4 15:18:50 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* process.c (rb_proc_exec): use same logic as DJGPP on win32 ports.
* process.c (rb_f_system): ditto.
* win32/win32.c, win32/win32.h (do_aspawn): [new]. for arrayed
arguments.
* win32/win32.c (CreateChild): add new argument for real filename of
executing process.
* win32/win32.c (NtHasRedirection, pipe_exec): follow above change.
Sat Jan 4 14:29:52 2003 NAKAMURA Usaku <usa@ruby-lang.org>
* configure.in: set rb_cv_need_io_flush_between_seek=yes.
* win32/Makefile.sub (config.h): define NEED_IO_FLUSH_BETWEE_SEEK.
(pointed out by moriq [ruby-dev:19299])
Sat Jan 4 03:12:14 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (umethod_bind): exact class match is not required. relax
the restriction to subclasses.
Sat Jan 4 01:33:40 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* file.c (rb_file_s_lchmod): get rid of gcc-3 -O3 warning.
Fri Jan 3 22:26:07 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* process.c (rb_proc_times): need to initialize first.
Fri Jan 3 01:10:17 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): call "inherited" before executing class body.
* class.c (rb_define_class): call "inherited" after defining the
constant.
* class.c (rb_define_class_under): ditto.
Thu Jan 2 19:37:30 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (massign): expand first element if RHS is an array and
its size is 1, and LHS has concrete assignment target (i.e. LHS
has target(s) other than *var).
* eval.c (massign): avoid unnecessary avalue/svalue conversion.
* eval.c (rb_yield_0): ditto
* array.c (rb_ary_update): do not allocate unused array if rpl is
nil (i.e. merely removing elements).
Thu Jan 2 13:55:08 2003 Mathieu Bouchard <matju@sympatico.ca>
* io.c (io_read): should resize supplied string if it's shorter
than expected.
Thu Jan 2 11:01:20 2003 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (bmcall): arguments should be an array.
Wed Jan 1 18:18:45 2003 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: better DJGPP support. add GNUmakefile.
* djgpp/GNUmakefile: new.
Wed Jan 1 04:16:18 2003 Akinori MUSHA <knu@iDaemons.org>
* node.h (struct RNode): Change argc from int to long. Otherwise
NEW_CFUNC() sets argc to a wrong value on platforms where
sizeof(int) != sizeof(long) and the byte order is big-endian.
This fixes breakage on FreeBSD/sparc64.
Tue Dec 31 23:22:50 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (massign): removed awkward conversion between yvalue,
mvalue, etc.
* eval.c (rb_yield_0): new parameter added to tell whether val is
an array value or not.
* parse.y (yield_args): restructuring: new nodes: NODE_RESTARY2,
NODE_SVALUE; removed node: NODE_RESTARGS.
Tue Dec 31 21:13:51 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* Makefile.in, {win32,bcc32}/Makefile.sub: add new target:
what-where, no-install.
* mkconfig.rb: add const: CROSS_COMPILING.
* ext/extmk.rb: no-install support. add MAKEDIRS macro.
* lib/mkmf.rb: add !ifdef .. !endif for Borland make.
* process.c: improve DJGPP support. system "ls", "-l".
Tue Dec 31 20:16:37 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/socket/addrinfo.h (NI_MAXHOST): Define NI_MAXHOST and
NI_MAXSERV only if they are not defined yet. This fixes build
on such platforms as OpenBSD.
Tue Dec 31 20:07:49 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/tcltklib/extconf.rb (find_tcl, find_tk): Look for both
lib{tcl,tk}M.N and lib{tcl,tk}MN on all platforms. *BSD have
Tcl/Tk libraries named this way.
Tue Dec 31 19:48:21 2002 Akinori MUSHA <knu@iDaemons.org>
* configure.in: Improve OpenBSD support. [obtained from: OpenBSD
ports]
* dln.c (FUNCNAME_PATTERN): Ditto.
Tue Dec 31 19:21:02 2002 Akinori MUSHA <knu@iDaemons.org>
* array.c (rb_ary_transpose): Properly declare ary as a VALUE.
* file.c (rb_file_s_chmod): Do not directly cast an int to void *
to avoid a warning.
* defines.h (FLUSH_REGISTER_WINDOWS): Add support for
FreeBSD/sparc64. miniruby still coredumps in a different place,
though.
Tue Dec 31 07:47:15 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (parse_string): readjusted.
* parse.y (heredoc_identifier): readjusted.
* parse.y (here_document): make EOL codes of single-quoted
here-documents consistent.
* parse.y (yylex): reduced unnecessary conditionals.
Tue Dec 31 04:49:51 2002 Akinori MUSHA <knu@iDaemons.org>
* ruby.1: mdoc'ify.
Tue Dec 31 01:30:29 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* parse.y (yylex): do not accept " __END__\n". ([ruby-dev:19245])
Mon Dec 30 21:10:59 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* parse.y (yylex): use strncmp instead of strcmp.
accept "__END__\r\n". ([ruby-dev:19241])
Mon Dec 30 20:32:14 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (rb_gc_mark_frame): should mark frame->node.
Mon Dec 30 19:10:30 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/extmk.rb: split --make argument contains options, assume
the first word of --make-flags is always options even unless
preceded by -, and ignore letter-case of options if nmake.
* instruby.rb: extract -n option also from --make and
--make-flags.
* bcc32/Makefile.sub, win32/Makefile.sub: not prepend - to
$(MFLAGS)
Mon Dec 30 16:44:14 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* string.c (rb_str_substr): should share the shared string if
present, instead of the original string. (ruby-bugs:PR#528)
Mon Dec 30 05:10:00 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/socket/socket.c (tcp_svr_init): local host to
init_inetsock() is VALUE but not pointer.
* ext/socket/socket.c (sock_s_unpack_sockaddr_in): get rid of
gcc-3 -O3 warning.
Sun Dec 29 23:45:53 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* gc.c (gc_sweep): adjust GC trigger.
* dln.c (init_funcname_len): get rid of gcc-3 -O3 warning.
* eval.c (copy_node_scope): ditto.
* hash.c (rb_hash_foreach, delete_if_i, select_i, each_value_i,
each_key_i, each_pair_i, envix): ditto.
* range.c (range_each_func): ditto.
* file.c (rb_file_s_chmod): ditto.
Sun Dec 29 15:30:37 2002 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb (fu_parseargs): should not inherit ftools.rb's
misfeature.
Sun Dec 29 05:08:13 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* lib/fileutils.rb (cmp): return false if file size differs.
Sat Dec 28 19:21:24 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* instruby.rb: remove junk args.
* lib/mkmf.rb (create_makefile): remove a trouble library
before making a shared library.
* win32/Makefile.sub: invoke instruby.rb with the --make-flags option.
Sat Dec 28 03:09:58 2002 Wakou Aoyama <wakou@ruby-lang.org>
* lib/cgi.rb (CGI#[]): improvement. thanks to Kazuhiro NISHIYAMA
<zn@mbf.nifty.com>
Sat Dec 28 00:34:03 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* {win32,bcc32}/Makefile.sub: remove `=' from --make-flags options.
nmake quotes args if included `=' in args.
* instruby.rb: use getopts.rb.
* ext/dbm/extconf.rb (-DDBM_HDR): substitute ' with " to avoid
a error on Win32.
* ext/gdbm/gdbm.c: add prototypes to avoid VC++ warnings.
Fri Dec 27 21:41:57 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bcc32/setup.mak, win32/setup.mak(-prologue-): move srcdir from
CPP input or UNC path will be removed as a comment.
Fri Dec 27 17:55:00 2002 Takaaki Uematsu <mail@uema2.cjb.net>
* wince/config, wince/configure.bat: replace 1.7 with 1.8
in macros.
Fri Dec 27 13:28:14 2002 Minero Aoki <aamine@loveruby.net>
* instruby.rb: fileutils.rb accepts only one argument.
Fri Dec 27 13:23:29 2002 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb (fu_parseargs): reject illegal options
correctly.
* lib/fileutils.rb (uptodate?): parameter declaration was wrong.
* lib/fileutils.rb: change coding styles.
Fri Dec 27 09:25:22 2002 ABE Shigeru <shiger-a@nifty.com>
* process.c (rb_proc_times): avoid WindowsXP crash using volatile
variables.
Fri Dec 27 02:56:58 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* instruby.rb: check only `-' option, and use fileutils instead of
ftools.
Fri Dec 27 02:45:17 2002 Wakou Aoyama <wakou@ruby-lang.org>
* lib/net/telnet.rb: Telnet#print not add "\n".
* lib/cgi.rb: cgi['key'] is equal cgi['key'][0]
Thu Dec 26 22:33:18 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/extmk.rb (create_makefile): check only `-' option.
* configure.in: cleanups for MinGW. remove -D__NO_ISOCEXT in $CFLAGS.
* win32/win32.h: prototypes for isinf, isnan are not needed on MinGW.
Thu Dec 26 19:22:00 2002 YOSHIDA Kazuhiro <moriq@moriq.com>
* win32/setup.mak (-prologue-): moved srcdir macro definition.
[ruby-win32:420].
Wed Dec 25 18:26:44 2002 K.Kosako <kosako@sofnec.co.jp>
* regex.c (re_match): fixed wrong \G behavior. (ruby-bugs-ja:PR#377)
Wed Dec 25 16:41:16 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_match_exec): fix odd \G behavior based on the patch
from Nobu.
Wed Dec 25 11:05:11 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bcc32/setup.mak (-generic-): removed garbages.
Wed Dec 25 10:36:20 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* bcc32/Makefile.sub, win32/Makefile.sub (RUBY_SO_NAME, config.h):
use $(MAJOR) and $(MINOR). based on Nobu's patch. [ruby-win32:413]
* bcc32/setup.mak, win32/setup.mak (-prologue-): define MAJOR, MINOR
and TEENY from version.h. based on Nobu's patch. [ruby-win32:413]
* win32/Makefile.sub (config.h): add HAVE_FLOAT_H.
* win32/Makefile.sub (parse.obj): depend on win32/win32.h.
Tue Dec 24 23:49:16 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/irb/completion.rb: Use Object#class rather than Object#type.
Tue Dec 24 23:37:40 2002 TADA Tadashi <sho@spc.gr.jp>
* lib/cgi.rb (Cookie::parse), lib/cgi-lib.rb (initialize): Do not
pass to split() a bare string longer than 2 characters as
separator.
Tue Dec 24 19:19:24 2002 Tietew <tietew@tietew.net>
* numeric.c (DBL_MAX_10_EXP): fix typo. [ruby-dev:19175]
Tue Dec 24 17:02:46 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_undefined): use NoMethodError instead of fatal.
Tue Dec 24 02:12:45 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/README: Synchronize with reality.
Tue Dec 24 02:05:51 2002 Akinori MUSHA <knu@iDaemons.org>
* MANIFEST, lib/README, lib/ipaddr.rb: Add ipaddr.rb from rough.
Sun Dec 22 04:07:47 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* ext/dbm/dbm.c (fdbm_alloc): allocator takes only one argument.
Sun Dec 22 02:49:25 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* array.c (ary_alloc), dir.c (dir_s_alloc), eval.c (thgroup_s_alloc),
file.c (rb_stat_s_alloc), hash.c (hash_alloc), io.c (io_alloc),
object.c (rb_module_s_alloc, rb_class_allocate_instance),
re.c (match_alloc, rb_reg_s_alloc), string.c (str_alloc),
time.c (time_s_alloc), ext/digest/digest.c (rb_digest_base_alloc),
ext/tcltklib/tcltklib.c (ip_alloc),
ext/win32ole/win32ole.c (fole_s_allocate, fev_s_allocate)
: add prototype to get rid of VC++ warnings.
* ext/sdbm/init.c (fsdbm_alloc): allocator takes only one argument.
Sun Dec 22 00:36:43 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/mkmf.rb (create_makefile): accept pure ruby libraries.
Sat Dec 21 23:59:42 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (ins_methods_i): should not show ID_ALLOCATOR.
* class.c (ins_methods_prot_i): ditto.
* class.c (ins_methods_priv_i): ditto.
* class.c (ins_methods_pub_i): ditto.
* eval.c (call_trace_func): ditto.
* eval.c (rb_undefined): ditto.
Sat Dec 21 07:27:24 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* misc/ruby-mode.el (ruby-parse-partial): keywords must not be
preceded by @ or $.
Fri Dec 20 20:29:04 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c,
ext/dl/handle.c, ext/dl/ptr.c, ext/dl/sym.c, ext/gdbm/gdbm.c,
ext/iconv/iconv.c, ext/sdbm/init.c, ext/stringio/stringio.c,
ext/strscan/strscan.c, ext/tcltklib/tcltklib.c,
ext/win32ole/win32ole.c: use rb_define_alloc_func().
Fri Dec 20 18:29:04 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (rb_io_fwrite): separated from io_write().
* marshal.c (w_byten): use rb_io_fwrite() to support non-blocking
IO, and added error check.
* rubyio.h: prototypes; rb_io_fwrite
Fri Dec 20 17:40:59 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (Init_Object): should not remove Class#allocate.
* lib/profiler.rb: separate profiling functions, without
trace_func and at_exit setting.
Fri Dec 20 16:20:04 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (do_block): split "do" block and tLBRACE_ARG block.
* parse.y (cmd_brace_block): new tLBRACE_ARG block rule
* parse.y (command): can take optional cmd_brace_block; use %prec
to resolve shift/reduce conflict. (ruby-bugs-ja PR#372)
* eval.c (ruby_finalize): trace_func should be cleared here (after
executing exit procs and finalizers).
* eval.c (rb_define_alloc_func): new allocation framework, based
on Nobu's work [ruby-dev:19116]. "allocate" method is no longer
used for object allocation.
Fri Dec 20 05:06:49 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/README, lib/cgi/ftplib.rb, lib/telnet.rb: Delete ftplib.rb
and telnet.rb. It has been quite some time sinc they were
obsoleted and made to emit warnings.
Fri Dec 20 04:58:22 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/tempfile.rb: Embed Rdoc style comments.
* lib/tempfile.rb: Add length as an alias for size.
Fri Dec 20 03:57:32 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/tempfile.rb: Add Tempfile#close!() as a shorthand for
Tempfile#close(true).
* lib/tempfile.rb: Add Tempfile#{unlink,delete}().
Fri Dec 20 03:53:01 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/README, lib/cgi/final.rb, lib/cgi/session.rb: Delete
final.rb, which was obsoleted long ago.
Fri Dec 20 00:16:06 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* re.c (rb_reg_match_pre, rb_reg_match_post, match_to_a,
match_select): return instances of same class as the original
string. [ruby-dev:19119]
Thu Dec 19 22:55:49 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* numeric.c (DBL_EPSILON): fix typo.
Thu Dec 19 22:35:20 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (assign): avoid [BUG] at multiple attribute assignment.
Thu Dec 19 01:00:09 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (num_step): use DBL_EPSILON.
* array.c (rb_check_array_type): new function: return an array
(convert if possible), or nil.
* string.c (rb_check_string_type): new function: return a string
(convert if possible), or nil.
* numeric.c (rb_dbl_cmp): returns nil if values are not
comparable.
* numeric.c (fix_cmp,flo_cmp): use rb_num_coerce_cmp()
* bignum.c (rb_big_cmp): ditto.
* numeric.c (rb_num_coerce_cmp): new coercing function for "<=>",
which does not raise TypeError.
* numeric.c (do_coerce): can be suppress exception now.
* object.c (rb_mod_cmp): should return nil for non class/module
objects.
Thu Dec 19 04:21:10 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/open-uri.rb: add a missing ||. (found by: ruby -wc)
Wed Dec 18 17:53:05 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_reg_eqq): return false if the argument is not a
string. now returns boolean value.
* class.c (rb_include_module): argument should be T_MODULE, not
T_class, nor T_ICLASS.
Wed Dec 18 03:52:55 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* string.c (rb_str_new4): handle tail shared string.
(ruby-bugs-ja:PR#370)
* string.c (rb_str_dup_frozen): ditto.
Tue Dec 17 21:08:29 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* node.h (NODE_ATTRASGN): new node, assignment to attribute.
[ruby-core:00637].
* eval.c (is_defined, rb_eval): ditto.
* parse.y (attrset, node_assign): ditto.
* string.c (rb_str_substr): tail sharing. [ruby-core:00650]
* re.c (rb_reg_nth_match): ditto.
Tue Dec 17 16:52:38 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (is_defined): "defined?" should return "assignment" for
attribute assignment (e.g. a.foo=b) and indexed assignment
(e.g. a[2] = 44).
* parse.y (aryset): use NODE_ATTRASGN.
Tue Dec 17 04:03:45 2002 Tanaka Akira <akr@m17n.org>
* lib/open-uri.rb: new file.
Tue Dec 17 00:28:19 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* file.c (utimbuf): need to define for VC++.
Mon Dec 16 15:53:20 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (nextc): get rid of overrun. (pointed out by akr
[ruby-list:36773])
Sun Dec 15 21:16:44 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/mkmf.rb (init_mkmf): add $(topdir) to $LIBPATH if $extmk.
remove adding $(archdir) to $LIBPATH.
Sat Dec 15 12:15:00 2002 Takaaki Uematsu <mail@uema2.cjb.net>
* configure.in, defines.h, dir.c, dir.h, dln.c, error.c,
eval.c, file.c, hash.c, io.c, main.c, missing.c,
process.c, ruby.c, rubysig.h, signal.c, st.c, util.c, util.h,
bcc/Makefile.sub, win32/Makefile.sub, win32/win32.h,
ext/Win32API/Win32API.c, ext/socket/getaddrinfo.c,
ext/socket/getnameinfo.c, ext/socket/socket.c,
ext/tcltklib/stubs.c
: replace "NT" with "_WIN32", add DOSISH_DRIVE_LETTER
* wince/exe.mak : delete \r at the end of lines.
* wince/mswince-ruby17.def : delete rb_obj_become
Sun Dec 15 11:43:26 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (dispose_string): dispose String object.
* parse.y (heredoc_restore, here_document): fix memory leak.
Sat Dec 14 14:25:00 2002 Takaaki Uematsu <mail@uema2.cjb.net>
* wince/sys : add stat.c, stat.h, timeb.c, timeb.h,
types.h, utime.c, utime.h
* wince/dll.mak : object file name changed.
* wince/io.c : add empty dup2().
* wince/io.h : add dup2 definition.
Sat Dec 14 01:51:29 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/dbm/extconf.rb (rb_check): support for GNU dbm 1.8.3.
(-with-dbm-type=gdbm_compat). link against -lgdbm_compat
and -lgdbm.
Fri Dec 13 23:42:16 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/dbm/extconf.rb (db_check): check existence of the function
in the specified library before checking it in libc.
Fri Dec 13 17:15:49 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* variable.c (generic_ivar_get): should always warn uninitialized
instance variables.
Fri Dec 13 12:33:22 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (expr): rescue clause was ignored.
Thu Dec 12 18:19:14 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (RUBY_PROG_GNU_LD): add $CFLAGS, $CPPFLAGS, $LDFLAGS
to the option of $CC.
* configure.in: set LIBRUBYARG to '-l$(RUBY_SO_NAME)' if the
target os is cygwin and --disable-shared option is supplied.
* lib/mkmf.rb (init_mkmf): expand config["LIBRUBY"] and
config["LIBRUBY_A"]. don't link $LIBRUBYARG_STATIC if
--disable-shared option is supplied.
* configure.in (RUBY_CPPOUTFILE): should be a better message.
* ext/Win32API/extconf.rb: join with a space.
Thu Dec 12 17:27:19 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* re.c (rb_reg_hash): define Regexp#hash to make regexps to be
hash keys.
* re.c (Init_Regexp): define Regexp#eql? (alias to Regexp#==).
Thu Dec 12 16:26:31 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c (r_object0): singleton class instance can't be loaded.
(ruby-bugs-ja:PR#366)
Wed Dec 11 23:35:43 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/extmk.rb (create_makefile): -no-undefined -> --no-undefined.
Wed Dec 11 17:54:59 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* io.c (io_read): takes optional second argument to specify a
string to be written. the string should not be frozen.
* io.c (rb_io_sysread): ditto.
Wed Dec 11 11:30:28 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/digest/digest.c (rb_digest_base_copy): renamed "become".
* ext/stringio/stringio.c (strio_copy): ditto.
Wed Dec 11 00:45:00 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* lib/getoptlong.rb (GetoptLong::Error): provide a common ancestor
for GetoptLong error classes (RCR#129).
Tue Dec 10 17:42:39 2002 K.Kosako <kosako@sofnec.co.jp>
* re.c (rb_reg_copy_object): fixed memory leak.
Tue Dec 10 17:30:35 2002 Tanaka Akira <akr@m17n.org>
* pack.c (utf8_limits): fix the limit of 4 bytes UTF-8 sequence.
Tue Dec 10 12:01:15 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (mnew): original class of method defined in module should
be the module not intermediate class. [ruby-dev:19040]
Tue Dec 10 01:16:52 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (rb_f_sprintf): preceding ".." for negative numbers
still left; removed.
* sprintf.c (rb_f_sprintf): should not prepend '0' if width > prec
for example "%5.3d".
Sat Dec 7 18:14:23 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* process.c (Init_process): add Process.exit and Process.abort
* pack.c (utf8_to_uv): raise ArgumentError for malformed/redundant
UTF-8 sequences.
Fri Dec 6 03:46:00 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* process.c (last_status_set): add pid attribute to Process::Status.
Wed Dec 4 17:31:42 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* pack.c (uv_to_utf8): limit maximum length of the encoded string
to 6 bytes, even when the platform supports 8 bytes long integers.
* pack.c (utf8_to_uv): do not decode sequences longer than 6 bytes.
* object.c (copy_object): use "copy_object" method, not "become".
Wed Dec 4 16:37:11 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (copy_object): copy finalizers as well if any.
* gc.c (rb_gc_copy_finalizer): new function to copy finalizers.
Tue Dec 3 01:13:41 2002 Tanaka Akira <akr@m17n.org>
* lib/pp.rb (PP.singleline_pp): new method.
Sun Dec 1 23:04:03 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/optparse.rb (OptionParser::new): same as OptionParser#on but
returns new OptionParser::switch.
Sun Dec 1 22:43:29 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_stat): empty path is invalid, and return
ENOENT rather than EBADF in such case. [ruby-talk:57177]
Fri Nov 29 18:01:48 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* pack.c (utf8_to_uv): added checks for malformed or redundant
UTF-8 sequences.
Thu Nov 28 12:08:30 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/mkmf.rb: Avoid the use of "clean::" in favor of "clean:" in
order not to let make(1) choke if there is another dependency on
the target added in a depend file.
Thu Nov 28 02:40:42 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/mkmf.rb: Make sure to dig the destination directory before
installing a file there. Formerly "make install" could fail
depending on make(1)'s mood of the moment, especially when -jN
is given.
Wed Nov 27 17:39:38 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/syslog/syslog.c: Cut redundancy.
* ext/syslog/syslog.c: Do not leak ident.
Wed Nov 27 17:25:29 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/syslog/syslog.c, ext/syslog/test.rb: Syslog.close should
raise RuntimeError when not opened.
* ext/syslog/syslog.c, ext/syslog/test.rb:
Syslog.{ident,options,facility,mask} should all return nil when
not opened.
* ext/syslog/syslog.c, ext/syslog/test.rb: Change back the output
format of inspect().
Wed Nov 27 16:25:43 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/test.rb: Switch from RUnit to Test::Unit.
Wed Nov 27 16:14:12 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/syslog/syslog.c: Fix a problem where Syslog.ident was not
marked and could thus be GC'd.
Wed Nov 27 16:11:53 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/syslog/test.rb: Switch from RUnit to Test::Unit.
* ext/syslog/test.rb: The output format of inspect() is slightly
altered.
Wed Nov 27 06:43:26 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* error.c (exit_initialize): add SystemExit#initialize to set
instance variable status. (ruby-bugs-ja:PR#362)
Now accepts status as optional first argument.
* eval.c (error_handle): now SystemExit have status always.
* eval.c (system_exit): just instantiate SystemExit without raise.
* eval.c (rb_thread_start_0): initialize SystemExit properly.
Tue Nov 26 10:17:04 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* dln.c (init_funcname_len): remove MAXPATHLEN dependency.
Mon Nov 25 19:55:38 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/extmk.rb (extmake): return true if not dynamic and not static.
Mon Nov 25 01:08:40 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* dln.c: revert and add the MAXPATHLEN definition on mswin32/mingw32.
Sun Nov 24 20:36:53 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* dln.c: move the MAXPATHLEN definition in front.
Fri Nov 22 22:55:01 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* sprintf.c (rb_f_sprintf): preceding ".." for negative
hexadecimal numbers should not appear if prec (e.g. %.4) is
specified.
* pack.c (NUM2I32): support platforms which does not have 32bit
integers (e.g. Cray).
Fri Nov 22 19:20:36 2002 Akinori MUSHA <knu@iDaemons.org>
* instruby.rb: Install batch files on Windows. [Submitted by usa]
Fri Nov 22 18:31:46 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_add_method): node may be NULL.
Thu Nov 21 20:53:06 2002 Minero Aoki <aamine@loveruby.net>
* lib/net/smtp.rb: changes coding style.
* lib/net/pop.rb: ditto.
* lib/net/protocol.rb: ditto.
Thu Nov 21 20:17:08 2002 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: changes coding style.
Thu Nov 21 20:04:06 2002 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: should not overwrite Host: header.
(This patch is contributed by sean@ruby-lang.org)
Thu Nov 21 20:01:33 2002 Minero Aoki <aamine@loveruby.net>
* lib/net/http.rb: support Proxy-Authorization.
(This patch is contributed by Alexander Bokovoy)
Thu Nov 21 11:03:39 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* file.c (rb_find_file_ext): should not terminate searching with
empty path, just ignore.
* dir.c: remove <sys/parm.h> inclusion.
Wed Nov 20 02:07:12 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* compar.c (cmp_eq,cmp_gt,cmp_ge,cmp_lt,cmp_le): check using
rb_cmpint().
* error.c (init_syserr): remove sys_nerr dependency.
Wed Nov 20 01:52:21 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* numeric.c (num_cmp): added to satisfy Comparable assumption.
* eval.c (rb_add_method): "initialize" should be public if it is a
singleton method.
Tue Nov 19 22:37:23 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_match): avoid dereferencing if size == 0.
(ruby-bugs-ja:PR#360)
Tue Nov 19 20:40:39 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* time.c (time_cmp): should return nil if an operand is not a
number nor time. (ruby-bugs-ja:PR#359)
* file.c (rb_stat_cmp): should return nil if an operand is not
File::Stat.
Tue Nov 19 14:35:09 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* array.c (rb_ary_zip): iterates over items in the receiver.
zipped with nil if argument arrays are shorter. if arrays are
longer, left items are ignored. now works with blocks.
* enum.c (zip_i): changed for new behavior.
* array.c (rb_ary_transpose): added. [new]
Tue Nov 19 05:12:21 2002 Akinori MUSHA <knu@iDaemons.org>
* instruby.rb: Do not install various working files under bin/.
Tue Nov 19 05:07:39 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* instruby.rb: not rewrite installed scripts when dry-run mode.
* lib/ostruct.rb (OpenStruct::initialize): should symbolize keys
instead of values.
Tue Nov 19 02:24:10 2002 Akinori MUSHA <knu@iDaemons.org>
* instruby.rb: Rewrite installed scripts' shebang lines.
* instruby.rb: Use File.join() where appropriate.
Tue Nov 19 01:53:35 2002 Akinori MUSHA <knu@iDaemons.org>
* bin/irb: Moved from sample/irb.rb.
* instruby.rb: Install script files under bin/ with ruby's program
prefix and suffix.
Mon Nov 18 02:13:36 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/tempfile.rb: Make this library thread safe.
* lib/tempfile.rb: Do not pick a name which was once used and is
still scheduled for removal.
* lib/tempfile.rb: A lock file need not and must not be scheduled
for removal.
* lib/tempfile.rb: Compare Max_try with the number of mkdir
failures instead of the suffix counter.
* lib/tempfile.rb: Overall cleanup and add some important notices.
Sun Nov 17 22:57:31 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (dsym): garbage returned. (ruby-bugs-ja:PR#358)
Fri Nov 15 07:40:08 2002 NAKAMURA Hiroshi <nakahiro@sarion.co.jp>
* observer.rb: raise NoMethodError instead of NameError.
[ruby-dev:18788]
* ostruct.rb: ditto. fix a bug in inspect which called String#+ with
Symbol. [ruby-dev:18788]
* profile.rb: illegal use of Array#sort!. replaced it with non-bang
method. [ruby-dev:18792]
Thu Nov 14 22:40:29 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (LIBRUBY_A): append -static. [ruby-dev:18689]
* configure.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): linker
argument to link static/shared library respectively.
* Makefile.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): added.
* bcc32/Makefile.sub, win32/Makefile.sub: ditto.
* instruby.rb (LIBRUBY_A): install to libdir.
* lib/mkmf.rb (link_command): link static library of ruby, or
try_run fails unless LIBRUBY_SO is installed. [ruby-dev:18646]
* eval.c (call_trace_func): toplevel caller was missing.
[ruby-dev:18754]
* eval.c (proc_to_s): adjust created line number.
* parse.y (primary, do_block, brace_block): adjust line number of
block to beginning line, instead of the first statement inside
the block.
Thu Nov 14 08:23:42 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* math.c (math_acos): check errno after operation. ditto for
asin, acosh, atanh, log, log10 and sqrt.
* eval.c (rb_add_method): initialize should always be private.
* parse.y (expr): add rescue modifier rule.
* parse.y (command_call): return, break and next with argument is
now part of this rule.
Wed Nov 13 16:22:38 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (DLDFLAGS): removed -Wl,-no-undefined to
ext/extmk.rb, in order to allow references to symbols in other
extension libraries for mkmf.rb. [ruby-dev:18724]
* ext/extmk.rb (extmake): ditto.
* ext/extmk.rb (extmake): exit when make failed.
Sun Nov 10 03:46:18 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/set.rb: retire contain?() and add superset?(),
proper_superset?() subset?(), and proper_subset?().
[obtained from: Jason Voegele's set.rb]
* lib/set.rb: define several aliases: union() for |(),
difference() for -(), and intersection() for &().
[obtained from: Jason Voegele's set.rb]
* lib/set.rb: deal with a s/id/object_id/ leftover.
Sat Nov 9 16:06:57 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/tcltklib/stubs.c: should include "util.h" for ruby_strdup.
Sat Nov 9 11:39:45 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c: remove ENABLE_TRACE/DISABLE_TRACE to trace child nodes of
c-call. [ruby-dev:18699]
Fri Nov 8 04:16:55 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (yylex): "a" in "a /5" should be considered as a local
variable. [experimental]
Thu Nov 7 09:51:37 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_yield_0): should enable trace for non-cfunc nodes.
[ruby-dev:18645]
* eval.c (blk_orphan): a block created in a different thread is
orphan. [ruby-dev:17471]
Wed Nov 6 16:57:06 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* class.c (rb_define_method): do not set NOEX_CFUNC if klass is
really a module, whose methods must be safe for reciever's type.
* eval.c (rb_eval): nosuper should not be inherited unless the
overwritten method is an undef placeholder.
Tue Nov 5 00:46:04 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/extmk.rb: Properly pass the given target to
make(1). [pointed out by eban]
Mon Nov 4 20:03:53 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* instruby.rb, lib/mkmf.rb: use CONFIG["ENABLE_SHARED"] instead of
checking whether CONFIG["configure-args"] includes "--enable-shared".
Mon Nov 4 16:49:14 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (primary): allow 'when'-less case statement; persuaded
by Sean Chittenden.
Mon Nov 4 06:28:09 2002 Akinori MUSHA <knu@iDaemons.org>
* Makefile.in, ext/extmk.rb, bcc32/Makefile.sub,
win32/Makefile.sub: Introduce better command line syntax
(--make/--make-flags/--extstatic) to extmk.rb and instruby.rb.
Previously such command as 'make -j3 install' with pmake doesn't
fail. Formerly extmk.rb was receiving "make -j 3 -j 3" via the
command line arguments and just ended up recognizing the first
"3" as destdir. [with help of usa]
Mon Nov 4 03:59:51 2002 Akinori MUSHA <knu@iDaemons.org>
* lib/getopts.rb: Do not choke on characters that cannot be used
in a variable name. Replace them with `_'. Define a hash named
$OPT for convenience.
Sat Nov 2 00:38:55 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (Init_Object): added Object#object_id, new name for
Object#id. [new]
* object.c (rb_obj_id_obsolete): give warning for Object#id.
* numeric.c (fix_intern): added Fixnum#to_sym. [new]
* object.c (sym_to_sym): rename from Symbol#intern
Fri Nov 1 14:21:06 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* enum.c (enum_zip): added Enumerable#zip. [new]
* array.c (rb_ary_zip): added Array#zip.
Thu Oct 31 20:10:18 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* error.c (init_syserr): remove sys_nerr dependency.
Thu Oct 31 09:31:51 2002 K.Kosako <kosako@sofnec.co.jp>
* eval.c (rb_export_method): undef'ed method visibility should not
be changed.
Wed Oct 30 17:00:47 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_mod_public_method_defined, etc.): new methods:
public_method_defined?, private_method_defined?,
protected_method_defined?
* object.c (rb_obj_public_methods): new method
Object#public_methods.
* class.c (ins_methods_i): Object#methods should list both public
and protected methods.
* class.c (rb_class_public_instance_methods): new method
Module#public_instance_methods.
Wed Oct 30 06:29:00 2002 Akinori MUSHA <knu@iDaemons.org>
* eval.c, file.c, gc.c, io.c, object.c, ruby.c, ruby.h, struct.c,
ext/socket/socket.c: differentiate long and int; use proper
printf type specifiers and do casts where appropriate.
Wed Oct 30 04:07:33 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (error_print, rb_longjmp, rb_thread_schedule): flush
error message. [ruby-dev:18582]
* eval.c (ruby_cleanup): added. just clean up without exit.
[ruby-dev:18582]
* eval.c (ruby_exec): added. execute main evaluation tree without
exit. [ruby-dev:18582]
* intern.h: prototypes; ruby_cleanup, ruby_exec
Tue Oct 29 02:00:08 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/extmk.rb (extmake): use dummy_makefile to create dummy
Makefile.
* lib/mkmf.rb (find_executable0): EXEEXT is optional.
* lib/mkmf.rb (dummy_makefile): make dummy Makefile content.
* lib/mkmf.rb (create_makefile): define EXTLIB replacing -l.
* lib/mkmf.rb ($bccwin): detect Borland make by help message.
* lib/mkmf.rb (CLEANINGS): common rules to clean.
Mon Oct 28 01:27:17 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* djgpp/config.sed (@program_transform_name@): use `%', not `,'.
Sun Oct 27 22:59:50 2002 KONISHI Hiromasa <konishih@fd6.so-net.ne.jp>
* ext/extmk.rb(78) : The unnecessary error when installing by bccwin32
is controlled.
* lib/mkmf.rb(773) : Also in the case of bccwin32, the path was added.
Sun Oct 27 17:07:25 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* djgpp/*: sync with the latest.
* ext/extmk.rb, lib/mkmf.rb: flush $stdout.
* io.c (READ_DATA_PENDING_COUNT, READ_DATA_PENDING_PTR):
undef these macros on DJGPP.
Sat Oct 26 10:11:47 2002 Akinori MUSHA <knu@iDaemons.org>
* node.h (nd_type): cast the value to int.
Sat Oct 26 04:27:35 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/dbm/dbm.c (fdbm_indexes, fdbm_select): add a missing
argument and prevent coredump when a nonexistent key is
specified.
* ext/sdbm/init.c (fsdbm_indexes, fsdbm_select): ditto.
Sat Oct 26 03:28:43 2002 Akinori MUSHA <knu@iDaemons.org>
* eval.c, gc.c: use a common set of alloca() #ifdef's. This fixes
the build with Intel C Compiler for Linux.
* eval.c (rb_f_require): declare old_func with a real type, not
just type modifiers.
Fri Oct 25 02:55:01 2002 Minero Aoki <aamine@loveruby.net>
* string.c (rb_str_split_m): RSTRING(str)->ptr might become NULL.
[ruby-dev:18581]
Thu Oct 24 21:57:02 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (LIBPATHFLAG): avoid $ substitution.
[ruby-dev:18577]
* ext/extmk.rb (extmake): expand $srcdir.
* ext/win32ole/extconf.rb: should not override $CFLAGS, but
append.
* lib/mkmf.rb (config_string): use given config hash.
* bcc32/Makefile.sub (.rc.res): directory part may be empty in
Borland make.
Thu Oct 24 03:38:07 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/mkmf.rb (create_makefile): site-install target for backward
compatibility.
* lib/mkmf.rb (init_mkmf): libdir prior to topdir.
* configure.in (LIBPATHFLAG): should escape $. [ruby-dev:18572]
* mkconfig.rb: never substitute escaped $$.
* instruby.rb: not install LIBRUBY_SO unless enable-shared.
[ruby-dev:18569]
Wed Oct 23 19:16:06 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_eval): added NODE_DSYM, symbol literal with
interpolation.
* node.h: ditto.
* intern.h: prototypes; rb_is_junk_id, rb_str_dump, rb_str_intern
* object.c (sym_inspect): escape and quote for non-alphanumeric
symbols.
* parse.y (dsym, tokadd_string, yylex): extended symbol literals.
* parse.y (rb_is_junk_id): added.
* string.c (rb_str_dump, rb_str_intern) : make extern.
* lib/mkmf.rb (create_makefile): deffile should be removed by
distclean, not clean.
Tue Oct 22 23:56:41 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* lib/mkmf.rb (init_mkmf): add dir_config("opt").
Tue Oct 22 19:44:03 2002 KONISHI Hiromasa <konishih@fd6.so-net.ne.jp>
* bcc32/configure.bat : The command line when calling setup.mak is
corrected.
* bcc32/readme.bcc32 : It follows up about the option of configure.bat.
Tue Oct 22 15:23:19 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* instruby.rb: add dryrun mode.
* ext/extmk.rb (extmake): add install: target to dummy Makefile.
* ext/extmk.rb (extmake): avoid Borland make's quirk behavior.
* lib/mkmf.rb (link_command): opt is not a makefile macro.
* bcc32/Makefile.sub ($(LIBRUBY_SO) $(LIBRUBY)): EXTOBJS were not
linked.
* bcc32/Makefile.sub (ext/extinit.obj): missing.
* bcc32/Makefile.sub (TRY_LINK): options have to place before any
non-option arguments.
* win32/Makefile.sub (TRY_LINK): need -link and -libpath options.
* bcc32/Makefile.sub, win32/Makefile.sub (RANLIB): logical
operator never work with command.com.
Tue Oct 22 00:59:59 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (RUBY_CPPOUTFILE): fix cache file bug.
* lib/mkmf.rb (link_command): put 'opt' after conftest.c for
static linking.
Mon Oct 21 22:53:02 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (XCFLAGS): CFLAGS to compile ruby itself.
* configure.in (LIBEXT): suffix for static libraries.
* configure.in (LIBPATHFLAG): switch template to specify library
path.
* configure.in (LINK_SO): command to link shared objects.
* configure.in (DEFFILE, ARCHFILE): miscellaneous system dependent
files.
* configure.in (EXPORT_PREFIX): prefix to exported symbols on
Windows.
* configure.in (COMMON_LIBS, COMMON_MACROS, COMMON_HEADERS):
libraries, macros and headers used in common.
* configure.in (RUBYW_INSTALL_NAME, rubyw_install_name): GUI mode
executable name.
* Makefile.in (CFLAGS): append XCFLAGS.
* Makefile.in (PREP): miscellaneous system dependent files.
* Makefile.in (ruby.imp, ext/extinit.o): moved from ext/extmk.rb.
* Makefile.in (fake.rb): CROSS_COMPILING keeps building platform.
* Makefile.in (MAKEFILES): depend on *.in and config.status.
* Makefile.in (parse.c): replace "y.tab.c" with actual name for
byacc.
* ext/extmk.rb, lib/mkmf.rb: integrated.
* ext/extmk.rb: propagate MFLAGS.
* ext/extmk.rb (extmake): make dummy Makefile to clean even if no
Makefile is made.
* lib/mkmf.rb (older): accept multiple file names and Time
objects.
* lib/mkmf.rb (xsystem): split and quote.
* lib/mkmf.rb (cpp_include): make include directives.
* lib/mkmf.rb (try_func): try whether specified function is
available.
* lib/mkmf.rb (install_files): default to site-install.
* lib/mkmf.rb (checking_for): added.
* lib/mkmf.rb (find_executable0): just find executable file with
no message.
* lib/mkmf.rb (create_header): output header file is variable.
* lib/mkmf.rb (create_makefile): separate sections.
* lib/mkmf.rb (init_mkmf): initialize global variables.
* win32/Makefile.sub, bcc32/Makefile.sub (CPP, AR): added.
* bcc32/Makefile.sub (ARCH): fixed to i386.
* win32/Makefile.sub, bcc32/Makefile.sub (miniruby): should not
link EXTOBJS.
* ext/dl/extconf.rb: use try_cpp to cross compile.
* ext/dl/extconf.rb: not modify files in source directory.
Fri Oct 18 23:11:21 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* parse.y (value_expr0): allow return/break/next/redo/retry in rhs
of logical operator. [ruby-dev:18534]
* parse.y (remove_begin): eliminate useless NODE_BEGIN.
[ruby-dev:18535]
Fri Oct 18 01:02:44 2002 Akinori MUSHA <knu@iDaemons.org>
* hash.c, eval.c: Use (*_NSGetEnviron()) instead of environ on
Darwin for namespace cleanness. [ruby-core:00537]
* dln.c (dln_load): Fix Darwin support that has been disabled and
switch to using it on Darwin instead of the system dlopen().
[ruby-core:00541]
Thu Oct 17 19:17:56 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* marshal.c (w_byten): added; write n bytes from s to arg.
* marshal.c (dump): flush buffered data.
* marshal.c (marshal_dump, r_byte, r_bytes0, marshal_load): unify
marshaling I/O. [ruby-talk:53368]
Thu Oct 17 12:58:24 2002 Minero Aoki <aamine@loveruby.net>
* lib/fileutils.rb: stat.blksize might be 0/nil.
* lib/fileutils.rb: change coding style.
Wed Oct 16 22:35:53 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* sprintf.c (rb_f_sprintf): disallow mixed usage of numbered and
unnumbered arguments. [ruby-dev:18531]
get rid of memory leak at exception. [ruby-core:00460]
Wed Oct 16 13:36:29 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* variable.c (rb_global_entry): not add global entry until
initialized to avoid accessing it while GC. [ruby-dev:18514]
* variable.c (rb_alias_variable): ditto.
Wed Oct 16 01:03:54 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* object.c (rb_str_to_dbl): RString ptr might be NULL.
* object.c (rb_cstr_to_dbl): p pointer might be NULL.
* bignum.c (rb_str_to_inum): RString ptr might be NULL.
* bignum.c (rb_cstr_to_inum): str pointer might be NULL.
Sat Oct 12 23:44:11 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_putc): wrong condition to fill or flush on
bccwin32. [ruby-win32:408]
Fri Oct 11 15:58:06 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (arg): rescue modifier is now an operator with
precedence right below assignments. i.e. "a = b rescue c" now
parsed as "a = (b rescue c)", not as "(a = b) rescue c". [new]
[experimental]
Fri Oct 11 06:05:30 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_fclose, rb_w32_close): use closesocket()
for socket. [ruby-win32:382]
* win32/win32.c (StartSockets): set NtSocketsInitialized.
* win32/win32.h: prototypes; rb_w32_fclose, rb_w32_close
Fri Oct 11 00:24:57 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* gc.c (ruby_xmalloc, ruby_xrealloc): restrict total allocation
size according to memories consumed by live objects.
[ruby-dev:18482]
* gc.c (gc_sweep): estimate how live objects consume memories.
Thu Oct 10 17:26:12 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* ext/tcltklib/stubs.c (ruby_tcltk_stubs): fix memory leak.
[ruby-dev:18478]
Thu Oct 10 15:20:18 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/weakref.rb (WeakRef::@@final): use Hash#delete.
* lib/weakref.rb (WeakRef::__getobj__): examine if alive or not by
ID_REV_MAP to deal with recycled object. [ruby-dev:18472]
* lib/weakref.rb (WeakRef::weakref_alive?): ditto.
Wed Oct 9 07:11:25 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* gc.c (gc_sweep): also adjust heaps_limits when free unused heap
page. [ruby-core:00526]
* io.c (io_fflush): condition to retry can occur.
* io.c (io_write): returned 0 wrongly if no error occurred.
Tue Oct 8 14:19:07 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (io_write): must check returned value from fwrite() before
test with ferror(). (ruby-bugs-ja:PR#350)
Tue Oct 8 10:55:23 2002 Tanaka Akira <akr@m17n.org>
* lib/prettyprint.rb (PrettyPrint.singleline_format): new method.
Mon Oct 7 16:43:07 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (bigdivrem): bignum zero's len should not be 0.
Mon Oct 7 15:36:42 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (bigdivmod): wrong condition check for Bignum zero.
* bignum.c (Init_Bignum): need to add Bignum#div.
Sun Oct 6 00:49:15 2002 Minero Aoki <aamine@loveruby.net>
* eval.c (rb_load): should not pass blocks to the loaded file.
[ruby-dev:18458]
Fri Oct 4 20:25:38 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_thread_interrupt, rb_thread_signal_raise): no need to
save dead thread context. (same as [ruby-dev:18322])
(ruby-bugs-ja:PR#349)
Fri Oct 4 13:05:58 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in (RUBY_PROG_GNU_LD): check whether the linker is GNU ld.
* ext/extmk.rb (create_makefile): add -Wl,-no-undefined to $DLDFLAGS
on Linux if GNU ld is used and --enable-shared is specified.
Fri Oct 4 02:21:16 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* bignum.c (rb_big_rshift): num should be initialized by carry
bits if x is negative.
* bignum.c (bigdivmod): len for bignum zero is 1, not 0.
Thu Oct 3 20:22:11 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* bcc32/mkexports.rb: to work on cygwin via telnet.
[ruby-win32:358]
* ext/tcltklib/tcltklib.c (ip_invoke): requires command name
argument. [ruby-dev:18438]
* eval.c (ruby_init, ruby_options): Init_stack() with local
location. (ruby-bugs-ja:PR#277)
* eval.c (rb_call0): disable trace call. [ruby-dev:18074]
* eval.c (eval, rb_load): enable trace call. [ruby-dev:18074]
* eval.c (rb_f_require): set source file name for extension
libraries. [ruby-dev:18445]
* gc.c (Init_stack): prefer address of argument rather than local
variable to initialize rb_gc_stack_start.
* ruby.c (translate_char): translate a character in a string;
DOSISH only. [ruby-dev:18274]
* ruby.c (ruby_init_loadpath): added argv[0] handling under
Human68K. [ruby-dev:18274]
* ruby.c (proc_options): translate directory separator in $0 to
'/'. [ruby-dev:18274]
Thu Oct 3 00:27:26 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* lib/delegate.rb (Delegator::initialize): use Object#class
instead of deprecated Object#type.
Wed Oct 2 23:32:48 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* configure.in (RUBY_CHECK_IO_NEED_FLUSH): check whether fflush()
is needed.
* io.c (flush_before_seek): flush before seek if buffered data
may remain.
* io.c (rb_io_check_readable): flush if the last operation was
write.
* io.c (rb_io_check_writable): flush if the last operation was
read.
* rubyio.h (FMODE_RBUF): added.
Wed Oct 2 23:09:20 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (rb_io_wait_readable): handle retryable errors.
* io.c (rb_io_wait_writable): ditto.
* ext/socket/socket.c (bsock_send): ditto.
* ext/socket/socket.c (s_recvfrom): ditto.
* ext/socket/socket.c (s_accept): ditto.
* ext/socket/socket.c (udp_send): ditto.
* ext/socket/getaddrinfo.c (afdl): made private structures constant.
* rubyio.h: prototype; rb_io_wait_readable(), rb_io_wait_writable().
Wed Oct 2 13:03:58 2002 WATANABE Hirofumi <eban@ruby-lang.org>
* configure.in: set ac_cv_func_setitimer to "no" on Cygwin.
Wed Oct 2 10:59:29 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* gc.c (gc_sweep): free unused heap page to reduce process size if
possible.
* object.c (rb_obj_type): deprecated Object#type; use Object#class.
Tue Oct 1 23:48:32 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* ext/socket/socket.c (init_sock): no need for special finalizer,
socket descriptor is no longer duplicated in 1.7.
[ruby-talk:50732]
* win32/win32.c, win32/win32.h (rb_w32_fddup, rb_w32_fdclose):
delete.
Mon Sep 30 20:29:10 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* io.c (rb_io_inspect): not need to raise IOError for closed
stream. [ruby-talk:51871]
Mon Sep 30 03:48:15 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* range.c (range_check): need no Fixnum check.
Sun Sep 29 18:30:24 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* win32/win32.c (rb_w32_open_osfhandle): adjust
rb_w32_open_osfhandle() with _open_osfhandle().
* win32/win32.c (rb_w32_accept, rb_w32_socket): return -1 on
error.
* win32/win32.h: should use file descriptor instead of SOCKET.
Sun Sep 29 06:33:03 2002 NAKAMURA Usaku <usa@ruby-lang.org>
* win32/win32.c (is_socket, rb_w32_select, rb_w32_accept, rb_w32_bind,
rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport):
need to protect WSAGetLastError() by RUBY_CRITICAL. [ruby-talk:51778]
Sat Sep 28 20:06:36 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* keywords: add braces around initializers.
Sat Sep 28 13:19:29 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* hash.c (rb_hash_become): should check self-assignment after
conversion.
Sat Sep 28 10:40:44 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* hash.c (rb_hash_become): Hash#become should check added
self-assignment.
* class.c (rb_make_metaclass): metaclass of a superclass may be
NULL at boot time.
Sat Sep 28 09:50:03 2002 KONISHI Hiromasa <konishih@fd6.so-net.ne.jp>
* ext/extmk.rb: The condition judgment without necessity was deleted.
Fri Sep 27 18:40:42 2002 Nobuyoshi Nakada <nobu.nokada@softhome.net>
* eval.c (rb_thread_deadlock): more verbose message at deadlock.
* eval.c (rb_thread_schedule): ditto.
* eval.c (rb_thread_join): ditto.
Fri Sep 27 13:24:35 2002 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (rb_eval): Class#inherited should be called after the
execution of the class body.
Fri Sep 27 02:41:53 2002 Akinori MUSHA <knu@iDaemons.org>
* ext/digest/sha1: Use OpenSSL's SHA1 engine if avail
|