Mon Jun  4 17:57:56 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* stable version 1.6.4 released.

Mon Jun  4 04:14:53 2001  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/shellwords.rb: don't destroy argument.

Sat Jun  2 23:23:05 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c (re_compile_pattern): should push option modifier at the
	  right place.

Sat Jun  2 23:05:20 2001  Shugo Maeda <shugo@ruby-lang.org>

	* lib/cgi/session.rb: don't use module_function for Class.

Sat Jun  2 00:02:22 2001  Keiju Ishitsuka <keiju@ishitsuka.com>

	* irb messages: fix typos.

Fri Jun  1 17:26:24 2001  K.Kosako  <kosako@sofnec.co.jp>

	* hash.c (replace_i): ignore when key == Qundef.

Fri Jun  1 11:21:04 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in: use waitpid on mingw32.

Thu May 31 18:34:57 2001  K.Kosako  <kosako@sofnec.co.jp>

	* file.c (rb_file_s_unlink): should not allow if $SAFE >= 2.

Thu May 31 13:30:25 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* mkconfig.rb, ext/configsub.rb: VERSION -> RUBY_VERSION.

Thu May 31 08:31:22 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* dln.c: #define S_ISDIR if not defined.

Thu May 31 01:28:54 2001  Akinori MUSHA  <knu@iDaemons.org>

	* configure.in: default --with-libc_r to `no' until the problem is
	  fixed. (FreeBSD only)

Wed May 30 14:09:00 2001  K.Kosako  <kosako@sofnec.co.jp>

	* object.c (rb_obj_taint): backport from 1.7.

	* object.c (rb_obj_untaint): add frozen status check (backport from 1.7).

Tue May 29 17:24:23 2001  K.Kosako  <kosako@sofnec.co.jp>

	* ruby.c (proc_options): unexpected SecurityError happens when -T4.

Tue May 29 18:46:04 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c (re_compile_pattern): * \1 .. \9 should be
	  backreferences always.

	* regex.c (re_match): backreferences corresponding to
	  unclosed/unmatched parentheses should fail always.

Mon May 28 23:20:43 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in: remove unnecessary AC_CANONICAL_BUILD

	* defins.h: #define HAVE_SETITIMER on Cygwin(bug fixed).

	* ruby.c: use relative path from LIBRUBY_SO.

	* ruby.c: don't use -mwin32 option on Cygwin.

	* cygwin/GNUmakefile.in: ditto.

	* ext/sdbm/_sdbm: ditto.

	* ext/tcltklib/extconf.rb: ditto.

	* ext/tcltklib/stubs.c: ditto.

Mon May 28 22:12:01 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* ext/extconf.rb.in: make the priority of the make rule of .c
	  higher than .C .

Mon May 28 02:43:16 2001  Akinori MUSHA  <knu@iDaemons.org>

	* dir.c (rb_glob_helper): teach has_magic() to handle flags and
	  get rb_glob_helper to properly support FNM_NOESCAPE.

	* dir.c (fnmatch): fix a bug when FNM_PATHNAME and FNM_PERIOD are
	  specified at the same time.

Sat May 26 07:19:48 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* win32/win32.c (opendir): add const directive.

Sat May 26 07:00:05 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* MANIFEST: add win32/dir.h .

Sat May 26 00:15:57 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* win32/dir.h: replace missing/dir.h .

	* dir.c: ditto.

Fri May 25 14:19:25 2001  K.Kosako  <kosako@sofnec.co.jp>

	* string.c (rb_str_replace): add taint status infection
	  (OBJ_INFECT()).

	* string.c (rb_str_crypt): ditto.

	* string.c (rb_str_ljust): ditto.

	* string.c (rb_str_rjust): ditto.

	* string.c (rb_str_center): ditto.

Fri May 25 01:55:32 2001  Akinori MUSHA  <knu@iDaemons.org>

	* MANIFEST: Re-adjust the entries to coincide with HEAD.

Fri May 25 01:36:52 2001  Akinori MUSHA  <knu@iDaemons.org>

	* MANIFEST: update the entries I forgot to add or remove.

Thu May 24 16:08:21 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* mkconfig.rb: autoconf 2.50 support.

Thu May 24 14:23:35 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_yield_0): need argument adjustment for C defined
	  blocks too.

Tue May 22 17:10:35 2001  K.Kosako  <kosako@sofnec.co.jp>

	* variable.c (rb_alias_variable): should not allow variable
	  aliasing if $SAFE >= 4.

Mon May 21 15:26:05 JST 2001  Keiju Ishitsuka <keiju@ishitsuka.com>

	* lib/irb/multi-irb.rb: delete japanese messages.

Mon May 21 13:15:25 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_big2str): t should be protected from GC.

Sun May 20 00:28:43 2001  Akinori MUSHA  <knu@iDaemons.org>

	* ext/socket/extconf.rb: do not clobber $CFLAGS when setting
	  -DSOCKS.

Fri May 18 05:42:28 2001  Akinori MUSHA  <knu@iDaemons.org>

	* lib/thread.rb: rescue ThreadError in case the thread is dead
	  just before calling Thread#run.

Fri May 18 05:29:21 2001  Akinori MUSHA  <knu@iDaemons.org>

	* lib/mkmf.rb (xsystem): make a temporary fix to get $(...) macros
	  properly expanded on a command execution.

Fri May 18 03:49:55 2001  Brian F. Feldman  <green@FreeBSD.org>

	* lib/mkmf.rb: unbreak "make install".  lib/* must be installed
	  under $rubylibdir, not under $libdir.

Thu May 17 19:36:47 2001  Akinori MUSHA  <knu@iDaemons.org>

	* lib/shell.rb, lib/shell/process-controller.rb,
	  lib/shell/command-processor.rb: translate Japanese comments into
	  English.

	* doc/shell.rd.jp: RD'ify and make some fixes.

	* doc/shell.rd: RD'ify, delete Japanese leftovers, make overall
	  English fixes, and sync with doc/shell.rd.jp.

Thu May 17 19:34:11 2001  Akinori MUSHA  <knu@iDaemons.org>

	* doc/shell.rd*, lib/shell*: bring shell.rb 0.6 onto the ruby_1_6
	  branch.

Thu May 17 17:35:04 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_call0): address of local_vars might change during eval.

Thu May 17 07:30:15 2001  Akinori MUSHA  <knu@iDaemons.org>

	* ext/md5/md5.txt, ext/md5/md5.txt.jp: s/SuperClass/Superclass/.

Thu May 17 06:37:14 2001  Akinori MUSHA  <knu@iDaemons.org>

	* ext/md5/md5.txt: make wording fixes.

	* ext/md5/md5.txt.jp: ditto.

Thu May 17 05:23:52 2001  Keiju Ishitsuka <keiju@ishitsuka.com>
	* lib/irb.rb lib/irb/multi-irb.rb lib/irb/ruby-lex.rb lib/irb/version.rb
	  resolve ctrl-c problem

Tue May 15 17:46:37 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_and): should not push frozen key string.

	* array.c (rb_ary_or): ditto.

Mon May 14 13:50:22 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_schedule): should save context before raising
	  deadlock, saved context for current thread might be obsolete.

	* time.c (make_time_t): non DST timezone shift supported (hopefully).

Mon May 14 11:54:20 2001  Tanaka Akira  <akr@m17n.org>

	* signal.c: SIGINFO added.

Mon May 14 08:57:06 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_ensure): should not SEGV when prot_tag is NULL.

Sun May 13 23:49:25 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* win32/resource.rb: Modify copyright in resource script.

Fri May 11 23:51:54 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* process.c: silence VC++ warnings.

	* sprintf.c: ditto.

Fri May 11 03:38:11 2001  Akinori MUSHA  <knu@iDaemons.org>

	* README.EXT: Document find_library(), with_config() and
	  dir_config().

Fri May 11 03:37:53 2001  Akinori MUSHA  <knu@iDaemons.org>

	* README.EXT.jp: Remove the description of find_header() because
	  such a function does not actually exist.
    
	* README.EXT.jp: Update the description of dir_config().

Fri May 11 02:42:40 2001  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* README, README.jp: Fix CVS access and mailing lists info.

Fri May 11 02:00:44 2001  Ryo HAYASAKA  <ryoh@jaist.ac.jp>

	* bignum.c (bigdivrem): access boundary bug.

Wed May  9 14:38:33 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (rb_yield_0): preserve and restore ruby_cref as well.

Tue May  8 17:12:43 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (is_defined): core dumped during instance_eval for
	  special constants.

	* eval.c (rb_eval): ditto.

Tue May  8 08:59:01 2001  Akinori MUSHA  <knu@iDaemons.org>

	* doc/forwardable.rd, doc/forwardable.rd.jp: Hit `=begin' and
	  `=end' in proper places so rd2 can format them without a problem.

	* doc/irb/irb-tools.rd.jp, doc/irb/irb.rd, doc/irb/irb.rd.jp:
	  ditto.

Tue May  8 08:56:05 2001  Akinori MUSHA  <knu@iDaemons.org>

	* doc/forwardable.rd, doc/forwardable.rd.jp, lib/forwardable.rb:
	  Bring forwardable 1.1 onto the ruby_1_6 branch.

Tue May  8 08:35:09 2001  Akinori MUSHA  <knu@iDaemons.org>

	* doc/irb/irb-tools.rd.jp, doc/irb/irb.rd.jp: Convert from JIS to
	  EUC.

Tue May  8 03:46:24 2001  Akinori MUSHA  <knu@iDaemons.org>

	* sample/rbc.rb: Obsoleted by IRB.

Mon May  7 15:58:45 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (arg): "||=" should not warn for uninitialized instance
	  variables.

	* eval.c (rb_eval): ditto.

	* eval.c (eval): preserve and restore ruby_cref as well.

Mon May  7 15:45:48 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* lib/ftools.rb (syscopy): chmod destination file only if
	  it does not exist.

Thu May  3 03:41:01 2001  SHIROYAMA Takayuki <psi@fortune.nest.or.jp>

	* configure.in: get --enable-shared to work on MacOS X.

	* Makefile.in: make $(LIBRUBY_SO) depend on miniruby properly.
	  Now `make -jN' should work without a problem.

Wed May  2 20:39:35 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* dir.c (rb_glob, rb_iglob): remove unnecessary FNM_PATHNAME.

Wed May  2 11:46:13 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (block_pass): should not downgrade safe level.

Tue May  1 17:55:58 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (yylex): lex_state after RESCUE_MOD should be EXPR_BEG.

Tue May  1 03:36:50 2001  Akinori MUSHA  <knu@iDaemons.org>

	* sample/irb.rb, lib/irb.rb, lib/irb/*, doc/irb/*: Merge from irb
	  0.7.3 and irb-tools 0.7.1.

	* instruby.rb: Install help-message's too.

	* lib/irb/main.rb: This file is not needed anymore.

Thu Apr 26 22:36:11 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in:  don't use tzname on cygwin 1.3.1+.

	* configure.in: add -mieee/-ieee to CFLAGS on OSF1/Alpha
	  to disable "DIVISION BY ZERO" exception.

Thu Apr 26 22:30:43 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_eval): should preserve value of ruby_errinfo.

Thu Apr 26 10:36:09 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

       * eval.c (rb_thread_schedule): infinite sleep should not cause
	  dead lock.

Wed Apr 25 16:40:44 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_flatten_bang): proper recursive detection.

Wed Apr 25 15:36:15 2001  K.Kosako  <kosako@sofnec.co.jp>

       * eval.c (yield_under): need not to prohibit at safe level 4.

Tue Apr 24 16:03:25 2001  Hiroshi Igarashi  <iga@ruby-lang.org>

	* ext/extmk.rb.in: add target `distclean' in Makefile for extlib.
	  target `clean' doesn't remove Makefile.

Tue Apr 24 15:57:45 2001  Akinori MUSHA  <knu@iDaemons.org>

	* ext/extmk.rb.in, lib/mkmf.rb: (dir_config) do not add the
	  specified include directory if already included in $CPPFLAGS.

	* ext/extmk.rb.in, lib/mkmf.rb: (dir_config) return a more useful
	  value, [include_dir, lib_dir].

Tue Apr 24 15:35:32 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* ruby.c (set_arg0): wrong predicate when new $0 value is bigger
	  than original space.

Mon Apr 23 14:43:59 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (id2ref): should use NUM2ULONG()

	* object.c (rb_mod_const_get): check whether name is a class
	  variable name.

	* object.c (rb_mod_const_set): ditto.

	* object.c (rb_mod_const_defined): ditto.

Sun Apr 22 17:44:37 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in: add -mieee to CFLAGS on Linux/Alpha
	  to disable "DIVISION BY ZERO" exception.

	* configure.in: remove -ansi on OSF/1.

Sat Apr 21 22:33:26 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* marshal.c (w_float): precision changed to "%.16g"

Sat Apr 21 22:07:58 2001  Guy Decoux  <decoux@moulon.inra.fr>

	* eval.c (rb_call0): wrong retry behavior.

Fri Apr 20 19:12:20 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* numeric.c (fix_aref): a bug on long>int architecture.

Fri Apr 20 14:57:15 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (rb_eval_string_wrap): should restore ruby_wrapper.

Wed Apr 18 04:37:51 2001  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: CGI::Cookie: no use PATH_INFO.

Wed Apr 18 00:24:40 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c (re_compile_pattern): char class at either edge of range
	  should be invalid.

Tue Apr 17 16:54:39 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (safe_getter): should use INT2NUM().

Tue Apr 17 15:12:56 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_big2long): 2**31 cannot fit in 31 bit long.

Sat Apr 14 22:46:43 2001  Guy Decoux  <decoux@moulon.inra.fr>

	* regex.c (calculate_must_string): wrong length calculation.

Sat Apr 14 13:33:32 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* win32/config.status.in: no longer use missing/alloca.c.

	* win32/Makefile.sub: ditto.

Fri Apr 13 12:40:48 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (rb_thread_start_0): fixed memory leak.

Fri Apr 13 16:41:18 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (none): should clear cmdarg_stack too.

Fri Apr 13 06:19:29 2001  GOTOU YUUZOU  <gotoyuzo@notwork.org>

	* io.c (rb_fopen): use setvbuf() to avoid recursive malloc() on
	  some platforms.

Wed Apr 11 23:36:26 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* file.c (rb_stat_dev): device functions should honor stat field
	  types (except long long such as dev_t).

Wed Apr 11 18:07:53 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (rb_mod_nesting): should not push nil for nesting array.

	* eval.c (rb_mod_s_constants): should not search array by
	  rb_mod_const_at() for nil (happens for singleton class).

Wed Apr 11 13:29:26 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* class.c (rb_singleton_class_attached): should modify iv_tbl by
	  itself, no longer use rb_iv_set() to avoid freeze check error.

	* variable.c (rb_const_get): error message "uninitialized constant
	  Foo at Bar::Baz" instead of "uninitialized constant Bar::Baz::Foo".

Tue Apr 10 02:24:40 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* io.c (opt_i_set): should strdup() inplace_edit string.

Mon Apr  9 23:29:54 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (exec_under): need to push cref too.

Mon Apr  9 12:05:44 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* file.c (Init_File): should redifine "new" class method.

Mon Apr  9 11:56:52 2001  Shugo Maeda <shugo@ruby-lang.org>

	* lib/net/imap.rb: fix typo.

Thu Apr  5 22:40:12 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_const_get): no recursion to show full class path
	  for modules.

	* eval.c (rb_set_safe_level): should set safe level in curr_thread
	  as well.

	* eval.c (safe_setter): ditto.

Thu Apr  5 13:46:06 2001  K.Kosako  <kosako@sofnec.co.jp>

	* object.c (rb_obj_is_instance_of): nil belongs to false, not true.

Thu Apr  5 02:19:03 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* time.c (make_time_t): proper (I hope) daylight saving time
	  handling for both US and Europe.  I HATE SUMMER TIME!

	* eval.c (rb_thread_wait_for): non blocked signal interrupt should
	  stop the interval.

Wed Apr  4 03:47:03 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* class.c (rb_mod_clone): should copy method bodies too.

	* bignum.c (bigdivrem): should trim trailing zero bdigits of
	  remainder, even if dd == 0.

Tue Apr  3 15:29:10 2001  Akinori MUSHA  <knu@iDaemons.org>

	* Makefile.in: Introduce MAINLIBS.

	* configure.in: Link libc_r against the ruby executable on
	  FreeBSD, which is the first attempt to work around a certain
	  problem regarding pthread on FreeBSD.  It should make ruby/libruby
	  happy when it loads an extention to a library compiled and linked
	  with -pthread.  Note, however, that libruby is _not_ linked with
	  libc_r so as not to mess up pthread unfriendly stuff including
	  apache+mod_ruby and vim6+ruby_interp.

Tue Apr  3 09:56:20 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ext/extmk.rb.in (create_makefile): create def file only if
	  it does not yet exist.

	* lib/mkmf.rb: ditto.

Tue Apr  3 00:05:07 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* time.c (make_time_t): remove HAVE_TM_ZONE code since it
	  sometimes reports wrong time.

	* time.c (make_time_t): remove unnecessary range check for
	  platforms where negative time_t is available.

Mon Apr  2 14:25:49 2001  Shugo Maeda <shugo@ruby-lang.org>

	* lib/monitor.rb (wait): ensure reentrance.

	* lib/monitor.rb (wait): fix timeout support.

Mon Apr  2 12:44:53 2001  Shugo Maeda <shugo@ruby-lang.org>

	* lib/net/imap.rb: backport from ruby-1.7.

Mon Apr  2 01:16:24 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/win32.c: use ruby's opendir on mingw32.

	* missing/dir.h, dir.c, Makefile: ditto.

Sun Apr  1 23:26:14 2001  TOYOFUKU Chikanobu  <toyofuku@juice.or.jp>

	* numeric.c (flodivmod): a bug in no fmod case.

Sun Apr  1 18:36:14 2001  Koji Arai  <JCA02266@nifty.ne.jp>

	* process.c (pst_wifsignaled): should apply WIFSIGNALED for status
	  (int), not st (VALUE).

Sat Mar 31 03:24:10 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* class.c (rb_include_module): module inclusion should be check
	  taints.

Fri Mar 30 12:51:19 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* class.c (rb_include_module): freeze check at first.

Thu Mar 29 17:05:09 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_attr): sprintf() and rb_intern() moved into
	  conditional body.

Wed Mar 28 23:43:00 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C
	  rules for the mswin32 platforms.

Wed Mar 28 19:29:21 2001  Akinori MUSHA  <knu@iDaemons.org>

	* ext/extmk.rb.in, lib/mkmf.rb: move C++ rules to the right place.

Wed Mar 28 17:39:04 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* object.c (rb_str2cstr): warn if string contains \0 and length
	  value is ignored.

Wed Mar 28 15:00:31 2001  K.Kosako  <kosako@sofnec.co.jp>

	* class.c (rb_singleton_class_clone): should copy class constant
	  table as well.

Wed Mar 28 15:03:23 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* class.c (rb_include_module): sometimes cache was mistakenly left
	  uncleared - based on the patch by K.Kosako.

Wed Mar 28 09:52:33 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/Makefile.sub: disable global optimization.

Tue Mar 27 15:00:54 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (rb_mod_define_method): should have clear method cache.

	* eval.c (rb_mod_define_method): should have raised exception for
	  type error.

Tue Mar 27 14:48:17 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* ruby.h: changed "extern INLINE" to "static inline".

Mon Mar 26 23:19:33 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* time.c (rb_strftime): check whether strftime returns empty string.

Mon Mar 26 18:14:47 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* dir.c (rb_glob_helper): part of 1.7 globber backported to proper
	  following of symlinks.

Mon Mar 26 17:21:07 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c: remove TMP_PROTECT_END to prevent C_ALLOCA crash.

Mon Mar 26 14:04:41 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ext/Win32API/Win32API.c: remove Init_win32api().

Sat Mar 24 23:44:50 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (ev_const_defined): should ignore toplevel cbase (Object).

	* eval.c (ev_const_get): ditto.

Fri Mar 23 12:18:44 2001  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>

	* ext/curses/curses.c: curses on Mac OS X public beta does not
	  have _maxx etc.

Fri Mar 23 10:50:31 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* marshal.c (w_object): should truncate trailing zero short for
	  bignums.

Thu Mar 22 22:15:45 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ext/Win32API/extconf.rb: add -fno-omit-frame-pointer.

Thu Mar 22 17:43:44 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* ruby.h: better inline function support.

	* configure.in (NO_C_INLINE): check if inline is available for the
	  C compiler.

Wed Mar 21 23:07:45 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/win32.c (win32_stat): WinNT/2k "//host/share" support.

Wed Mar 21 01:26:14 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (id2ref): sometimes confused symbol and reference.

Tue Mar 20 23:09:33 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/win32.c (win32_stat): UNC support.

	* dir.c (extract_path): fix "./*" problem.

Mon Mar 19 19:14:47 2001  Guy Decoux  <decoux@moulon.inra.fr>

	* marshal.c (shortlen): shortlen should return number of bytes
	  written.

Mon Mar 19 18:56:55 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* stable version 1.6.3 released.

Mon Mar 19 16:52:23 2001  K.Kosako  <kosako@sofnec.co.jp>

	* eval.c (ev_const_defined): need not to check if cbase->nd_class
	  is rb_cObject.

	* eval.c (ev_const_get): ditto.

Mon Mar 19 16:27:32 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (THREAD_ALLOC): flags should be initialized.

	* signal.c (rb_f_kill): should use FIX2INT, not FIX2UINT.

Mon Mar 19 11:03:10 2001  Koji Arai  <JCA02266@nifty.ne.jp>

	* marshal.c (r_object): len calculation patch was wrong for
	  machines SIZEOF_BDIGITS == SIZEOF_SHORT.

	* gc.c: alloca prototype reorganized for C_ALLOCA machine.

Sun Mar 18 08:58:18 2001  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: // === '' --> //.match('')

	* lib/cgi.rb: cgi#header(): improvement for mod_ruby.

	* lib/cgi.rb: cgi#rfc1123date(): improvement.
	  thanks to TADA Tadashi <sho@spc.gr.jp>.

	* lib/cgi.rb: cgi#rfc1123date(): document bug fix.
	  thanks to Kazuhiro NISHIYAMA <zn@mbf.nifty.com>.

	* lib/cgi.rb: cgi#header(): bug fix.
	  thanks to IWATSUKI Hiroyuki <don@na.rim.or.jp>.

Fri Mar 16 17:21:25 2001  Akinori MUSHA  <knu@iDaemons.org>

	* configure.in: Set SOLIBS properly for all ELF and
	  FreeBSD/NetBSD/OpenBSD a.out platforms so that the shlib
	  dependencies are recorded in the libruby shlib.

Wed Mar 14 16:41:45 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_schedule): raise FATAL just once to
	  THREAD_TO_KILL.

Wed Mar 14 10:41:34 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_yield_0): 0 (= Qfalse) is a valid value, so that
	  default self should be checked by klass == 0.

	* bignum.c (rb_cstr2inum): should disallow '++1', '+-1', etc.

Tue Mar 13 17:51:09 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (ev_const_defined): add new parameter self for special
	  const fallback.

	* eval.c (ev_const_get): ditto.

Tue Mar 13 16:39:45 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* dir.c (rb_glob_helper): fix drive letter handling on DOSISH.

Tue Mar 13 15:01:12 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: add HTTPRequest#basic_auth.

	* lib/net/smtp.rb: raise if only account or password is given.

	* lib/net/protocol.rb: WriteAdapter#<< returns self.

Tue Mar 13 14:41:16 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (argf_seek): wrong calling sequence of rb_io_seek().

Mon Mar 12 18:59:38 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* lib/mkmf.rb (create_makefile): save/restore $libs and $LIBPATH.

Sun Mar 11 00:55:31 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* lib/mkmf.rb (install_rb): fix handling of destination path.

Sat Mar 10 02:34:18 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* math.c (math_log, math_log10): use nan() instead of 0.0/0.0 on Cygwin.

Thu Mar  8 17:43:59 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: one write(2) per one line.

Wed Mar  7 14:26:11 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* math.c (math_log, math_log10): should return NaN if x < 0.0
	  on Cygwin.

Thu Mar  7 10:31:26 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* parse.y (stmt): while/until modifier must work for empty body.

Tue Mar  6 22:53:58 2001  Kazuhiro Yoshida   <moriq.kazuhiro@nifty.ne.jp>

	* ruby.c (ruby_set_argv): clear ARGV contents before adding args.

Tue Mar  6 10:50:29 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (primary): rescue and ensure clauses should be allowed
	  to appear in singleton method body.

Mon Mar  5 17:25:13 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (proc_eq): compare Procs using blocktag equality.

	* eval.c (proc_to_s): stringify according to block tag address.

Mon Mar  5 17:19:56 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/win32.c (gettimeofday): use GetLocalTime() instead of ftime()
	  for high-resolution timing.

Sun Mar  4 20:45:20 2001  Akinori MUSHA  <knu@iDaemons.org>

	* ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C
	  rules.

Sun Mar  4 17:01:09 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* string.c (trnext): support backslash escape in String#tr.

Wed Feb 28 11:02:41 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_delete_bang): delete! should take at least 1
	  argument. 

Tue Feb 27 16:38:15 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (ev_const_get): retrieve Object's caonstat if no current
	  class is available (e.g. defining singleton class for Fixnums).

	* eval.c (ev_const_defined): check Object's constant if no current
	  class is available (e.g. defining singleton class for Fixnums).

	* eval.c (proc_call): ignore block to `call' always, despite of
	  being orphan or not.

Wed Feb 27 10:16:32 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* eval.c (rb_yield_0): should check based on rb_block_given_p()
	  and rb_f_block_given_p().

Mon Feb 26 16:20:27 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* ruby.c (proc_options): call ruby_show_version() just once.

Mon Feb 26 00:04:52 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (proc_call): should not modify ruby_block->frame.iter
	  based on ruby_frame->iter altered by PUSH_ITER().

Mon Feb 26 05:27:52 2001  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/net/telnet.rb: #telnetmode(), #binmode(): bug fix.
	  thanks to nobu.nakada@nifty.ne.jp.

Mon Feb 26 04:55:50 2001  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: CGI#form(): bug fix.
	  thanks to MoonWolf <moonwolf@moonwolf.com>.

	* lib/cgi.rb: CGI#rfc1123_date(): improvement.
	  thanks to Tomoyasu Akita <genzo-@dm4lab.to>.

	* lib/cgi.rb: CGI#header(): improvement for mod_ruby.
	  thanks to Shugo Maeda <shugo@ruby-lang.org>.

Sun Feb 25 02:45:30 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* file.c (rb_file_s_rename): avoid Cygwin's bug.

Sat Feb 24 23:32:55 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_fd_close): should save current context before
	  raising exception.

Sat Feb 24 22:14:00 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/win32.c (myrename): fix error handling.

Sat Feb 24 15:43:31 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: use net 1.2 for also ruby 1.6 branch.

	* lib/net/smtp.rb: ditto.

	* lib/net/pop.rb: ditto.

	* lib/net/http.rb: ditto.

Fri Feb 23 16:36:09 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: always close connection if body is not exist.

Fri Feb 23 13:27:05 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: keep-alive detection was incomplete.

Fri Feb 23 08:24:53 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: clear read buffer after reopen.

	* lib/net/http.rb: update RD document.

Tue Feb 20 16:37:58 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_big2long): should not raise RangeError for Bignum
	  LONG_MIN value.

Mon Feb 19 17:46:37 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_substr): "a"[1,2] should return ""; need
	  rubicon upgrade.

Mon Feb 19 01:55:43 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (secure_visibility): visibility check for untainted modules.

Mon Feb 19 00:29:29 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* signal.c (sigpipe): sighandler which does nothing.

	* signal.c (trap): set sigpipe function for SIGPIPE.

	* signal.c (Init_signal): default SIGPIPE handler should be
	  sigpipe function.

Sun Feb 18 15:42:38 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ext/curses/extconf.rb: add dir_config.

	* missing/flock.c: use fcntl(2) instead of lockf(2).

Sun Feb 18 13:02:03 2001  Yasushi Shoji  <yashi@yashi.com>

	* array.c (rb_ary_subseq): wrong boundary check.

Fri Feb 16 01:44:56 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (set_outfile): f should be the FILE* from the assigning value.

Thu Feb 15 11:33:49 2001  Shugo Maeda <shugo@ruby-lang.org>

	* lib/cgi/session.rb (close): fixed reversed condition.

Wed Feb 14 17:28:24 2001  Shugo Maeda <shugo@ruby-lang.org>

	* lib/net/imap.rb: supports unknown resp_text_code.

Wed Feb 14 00:44:17 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* dir.c (dir_s_glob): call rb_yield directly (via push_pattern) if
	  block is given to the method.

	* dir.c (push_pattern): do not call rb_ary_push; yield directly.

Tue Feb 13 23:05:38 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* dir.c (lstat): should use rb_sys_stat if lstat(2) is not
	  available.

Tue Feb 13 17:00:18 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: supports HTTP 1.0 server.

Tue Feb 13 01:13:43 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (primary): preserve and clear in_single and in_def using
	  stack to prevent nested method errors in singleton class bodies.

Sun Feb 11 16:00:30 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* eval.c (stack_length): use __builtin_frame_address() only if
	  GCC and i386 CPU.

	* gc.c (rb_gc, Init_stack): ditto.

	* configure.in: add ac_cv_func_getpgrp_void=yes on DJGPP.

Sat Feb 10 23:43:49 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* hash.c (rb_any_hash): dumped core on machines sizeof(int) != sizeof(long).

Sat Feb 10 23:07:15 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c (PREV_IS_A_LETTER): should not treat c>0x7f as a word
	  character if -Kn.

Sat Feb 10 00:06:28 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* win32/win32.c (win32_stat): replace stat for enable when pathname
	  ends with '/' or '\' for mswin32 on Win9X / Win2k.

	* win32/win32.h: ditto.

	* ruby.h: ditto.

	* dir.c (rb_glob_helper): ditto.

	* file.c (rb_stat, rb_file_s_stat, eaccess, check3rdbyte): ditto.

Fri Feb  9 22:54:57 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ruby.c (ruby_init_loadpath): convert '\\' to '/'
	  before finding executable file path.

Fri Feb  9 17:41:53 2001  Triet H. Lai  <thlai@mail.usyd.edu.au>

	* dir.c (rb_glob_helper): do not follow symbolic links.

Fri Feb  8 23:53:08 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* win32/config.h.in (inline): add inline definition.

Thu Feb  8 21:27:24 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* lib/mkmf.rb (install_rb): fix handling of relative path.

	* lib/mkmf.rb (create_makefile): add srcdir.

Wed Feb  7 16:05:22 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* parse.y (parse_quotedwords): %w should allow parenthesis escape.

Wed Feb  7 00:57:42 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (parse_qstring): %q should allow terminator escape.

Wed Feb  7 00:57:42 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* re.c (rb_reg_equal): all option flags should be same to be equal.

Tue Feb  6 21:01:29 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: ignore EOFError on only specified case.

	* lib/net/http.rb: take HTTP 1.0 server into account.

Mon Feb 5 00:39:06 2001  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>

	* dir.c: use ISXXX() instead of isxxx().

	* dln.c (aix_loaderror): ditto.

	* file.c (rb_file_s_expand_path): ditto.

	* string.c (rb_str_upcase_bang): ditto.

	* win32/win32.c (do_spawn): ditto.

	* win32/win32.c (NtMakeCmdVector): ditto.

	* win32/win32.c (opendir): ditto.

Fri Feb  3 00:48:50 2001  Usaku Nakamura  <usa@osb.att.ne.jp>

	* win32/win32.c (isInternalCmd): ignore case for shell's internal
	  command. (marge from HEAD)

Fri Feb  2 16:14:51 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (POP_VARS): propagate DVAR_DONT_RECYCLE, if
	  SCOPE_DONT_RECYCLE of ruby_scope is set.

Wed Jan 31 22:27:29 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in: gcc-2.95.2-7(cygwin) support.
	  add -mwin32 if available.

	* cygwin/GNUmakefile: ditto.

Mon Jan 29 17:36:19 2001  TOYOFUKU Chikanobu  <toyofuku@juice.or.jp>

	* eval.c (rb_eval): nd_iter evaluation should be wrapped by
	  BEGIN_CALLARGS and END_CALLARGS.

Mon Jan 29 01:40:27 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (str_independent): should not clear str->orig here.
	  it's too early.

Wed Jan 24 01:45:49 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (POP_BLOCK_TAG): call rb_gc_force_recycle() if block has
	  not been objectified.

	* eval.c (rb_callcc): should nail down block->tag history to avoid
	  rb_gc_force_recycle(). 

Tue Jan 23 18:51:57 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (rb_gc_call_finalizer_at_exit): should finalize objects in
	  deferred_final_list too.

Tue Jan 23 16:10:12 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (os_live_obj): do not list terminated object.

	* gc.c (os_obj_of): ditto.

	* gc.c (rb_gc_mark): support new T_BLKTAG tag.

	* gc.c (obj_free): ditto.

	* eval.c (new_blktag): creation of new block tag, which holds
	  destination of global jump and orphan status.

	* eval.c (block_pass): break from orphan Proc object will raise a
	  LocalJumpError exception.

Mon Jan 22 16:33:16 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* mkconfig.rb: autoconf 2.49 support.

Sat Jan 20 03:54:00 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (yylex): fixed serious syntax misbehavior.  do's
	  preceding was too high.  a block in `foo bar do .. end' should
	  be passed to `foo', not `bar'.

	* parse.y (block_call): syntax restructure.

Fri Jan 19 04:04:31 2001  Akinori MUSHA  <knu@iDaemons.org>

	* lib/irb/ruby-lex.rb: Merge from HEAD: rev.1.4

Wed Jan 17 13:28:26 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in: remove DEFS definition.

	* mkconfig.rb: ditto.

	* win32/config.status.in: ditto.

Tue Jan 16 16:59:14 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: ignore EOFError for read

Sun Jan 14 21:49:28 2001  Koji Arai  <JCA02266@nifty.ne.jp>

	* sprintf.c (rb_f_sprintf): simple typo.  binary base should be 2,
	  not '2'.

Sun Jan 14 02:49:57 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb (adding): too few "yield" in case of arg is
	  not String/File.

Sat Jan 13 19:18:18 2001  WATANABE Hirofumi  <eban@ruby-lang.org>

	* re.c (rb_reg_desc): separate RE_OPTION_MULTILINE

	* re.c (rb_reg_options): add RE_OPTION_{POSIXLINE,RE_OPTION_MULTILINE,
	  RE_OPTION_EXTENDED}

Thu Jan 11 06:45:55 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* object.c (rb_mod_dup): should propagate FL_SINGLETON.

	* object.c (inspect_obj): handles the case of no instance variable.

Wed Jan 10 01:50:45 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_reverse_bang): forgot to call rb_str_modify().

Tue Jan  9 17:41:40 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* object.c (rb_obj_taint): check frozen status before modifying
	  taint status.

	* object.c (rb_obj_untaint): ditto.

Mon Jan  8 21:35:10 2001  Guy Decoux  <decoux@moulon.inra.fr>

	* file.c (path_check_1): should restore modified path.

Mon Jan  8 21:24:37 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (bigdivrem): t2 might be too big for signed long; do
	  not use rb_int2big(), but rb_uint2big().

Mon Jan  8 03:09:58 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* error.c (rb_load_fail): new func to report LoadError.

	* ruby.c (load_file): use rb_load_fail.

Sat Jan  6 00:55:59 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* pack.c (pack_pack): template "m2" or "u2" caused inifinite loop.

Fri Jan  5 01:02:17 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (ruby_finalize): should enclosed by PUSH_TAG/POP_TAG.

Sun Dec 31 01:39:16 2000  Guy Decoux  <decoux@moulon.inra.fr>

	* eval.c (rb_mod_define_method): wrong comparison for blocks.

Sat Dec 30 19:28:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (id2ref): should handle Symbol too.

	* gc.c (id2ref): should print original ptr value

Sat Dec 30 03:14:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_iterate): NODE_CFUNC does not protect its data
	  (nd_tval), so create new node NODE_IFUNC for iteration C
	  function. 

	* eval.c (rb_yield_0): use NODE_IFUNC.

	* gc.c (rb_gc_mark): support NODE_IFUNC.

Fri Dec 29 11:41:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (mem_error): prohibit recursive mem_error().
	  (ruby-bugs-ja:PR#36)

Fri Dec 29 11:05:41 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_fd_writable): should not switch context if
	  rb_thread_critical is set.

	* eval.c (rb_thread_wait_fd): ditto.

	* eval.c (rb_thread_wait_for): ditto.

	* eval.c (rb_thread_select): ditto.

	* eval.c (rb_thread_join): join during critical section causes
	  deadlock. 

Tue Dec 26 18:46:41 2000  NAKAMURA Hiroshi  <nakahiro@sarion.co.jp>

	* lib/debug.rb: Avoid thread deadlock in debugging stopped thread.

	* lib/debug.rb: Uncleared 'finish' state.

Tue Dec 26 16:53:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_yield_0): remove dvar node by rb_gc_force_recycle()
	  more eagerly.

	* eval.c (rb_f_binding): recycling should be stopped for outer
	  scope too.

	* eval.c (proc_new): ditto.

Tue Dec 26 15:45:35 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_inspect): should treat multibyte chracters
	  properly.

Mon Dec 25 17:49:08 2000  K.Kosako  <kosako@sofnec.co.jp>

	* string.c (rb_str_replace_m): unexpected string share happens if
	  replace is done for associated (STR_NO_ORIG) string.

Tue Dec 26 15:01:53 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (rb_f_p): should not call rb_io_flush() if rb_defout is not
	  a IO (T_FILE).

Mon Dec 25 15:52:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* stable version 1.6.2 released.

Mon Dec 25 05:11:04 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: version 2.1.2 (some bug fixes).

	* lib/cgi.rb: Regexp::last_match[1] --> $1

	* lib/net/telnet.rb: ditto.

Mon Dec 25 04:43:02 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: does not send HEAD on closing socket.

Mon Dec 25 00:44:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* hash.c (rb_any_cmp): should use rb_str_cmp() if TYPE == T_STRING
	  and CLASS_OF == rb_cString.

	* string.c (rb_str_new4): should copy class of original too.

Mon Dec 25 00:04:54 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* eval.c (rb_thread_schedule): initial value of `max' changed to -1.

Mon Dec 25 00:16:14 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_replace_m): copy-on-write replace.

	* parse.y (yylex): should handle => after identifier as well as ==
	  and =~.

Sat Dec 23 23:55:57 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_cstr2inum): Integer("") should not return 0.

Sat Dec 23 11:55:57 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_and): Array#& should preverve original order.

Sat Dec 23 03:44:16 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: set @closed false in Socket#reopen.

	* lib/net/pop.rb: add POP3.foreach, delete_all.

	* lib/net/pop.rb: add POP3#delete_all.

	* lib/net/http.rb: add HTTP.version_1_1, version_1_2

	* lib/net/http.rb: refactoring.

Fri Dec 22 23:11:12 2000  Ueno Katsuhiro  <unnie@blue.sky.or.jp>

	* eval.c (rb_feature_p): ext might be null.

Fri Dec 22 17:04:12 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* win32/win32.c (myselect): avoid busy loop by adjusting fd_count.

Fri Dec 22 15:07:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_cstr2inum): prefix like '0x' had removed too much.

Thu Dec 21 13:01:46 2000  Tanaka Akira  <akr@m17n.org>

	* lib/net/ftp.rb (makeport): don't use TCPsocket.getaddress.

Wed Dec 20 12:00:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_big_lshift): should cast up to BDIGIT_DBL.

	* parse.y (yylex): disallow trailing '_' for numeric litrals.

	* bignum.c (rb_cstr2inum): allow `_' within converting string.

	* eval.c (specific_eval): should take no argument if block is
	  supplied.

Tue Dec 19 13:44:50 2000  K.Kosako  <kosako@sofnec.co.jp>

	* io.c (rb_f_p): should flush rb_defout, not stdout.

Tue Dec 19 00:57:10 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* time.c (time_minus): usec might overflow. (ruby-bugs-ja:PR#35)

	* eval.c (rb_obj_extend): Object#extend should take at least one
	  argument.

	* parse.y (mrhs_basic): should check value_expr($3), not $1.

Mon Dec 18 23:18:39 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* util.c (mblen, __crt0_glob_function): add for multibyte
	  on DJGPP 2.03.

Mon Dec 18 18:10:30 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* time.c (time_plus): usec might underflow (ruby-bugs-ja:#PR33).

Mon Dec 18 08:11:20 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* hash.c (rb_hash_set_default): should call rb_hash_modify().

Sat Dec 16 02:58:26 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* eval.c (rb_eval): should clear ruby_errinfo on retry.

	* eval.c (rb_rescue2): ditto.

Thu Dec 14 13:06:18 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* class.c (rb_include_module): prohibit fronzen class/module.

	* eval.c (rb_frozen_class_p): make external.

	* intern.h (rb_frozen_class_p): prototyped.

	* intern.h (rb_undef): prototyped not but rb_undef_method()
	  which is also in ruby.h.

Thu Dec 14 09:20:26 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: support -T1 on ruby 1.6.2

	* lib/cgi.rb: $1 --> Regexp::last_match[1]

	* lib/net/telnet.rb: ditto.

Wed Dec 13 23:27:06 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_eval): handles case statement without expr, which
	  looks for any TRUE (non nil, non false) when expression.

	* parse.y (primary): case expression should not be compstmt, but
	  mere expr.

	* parse.y (primary): case without following expression is now
	  separated rule.

Wed Dec 13 12:41:27 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ruby.c (proc_options): accept "--^M" for DOS line endings.

Tue Dec 12 15:45:42 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (newline_node): cancel newline unification.

Mon Dec 11 23:01:57 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (yylex): supports cases `?' precedes EOF and newline.

Mon Dec 11 12:11:25 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (call_end_proc): some frame members were left
	  uninitialized.

Mon Dec 11 01:14:58 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (rb_io_fptr_finalize): do not fclose stdin, stdout and
	  stderr at exit.

Sat Dec  9 17:34:48 2000  Tachino Nobuhiro <tachino@open.nm.fujitsu.co.jp>

	* time.c (time_cmp): should check with kind_of?, not instance_of?

	* time.c (time_eql): ditto.

	* time.c (time_minus): ditto.

Fri Dec  8 17:23:25 2000  Tachino Nobuhiro <tachino@open.nm.fujitsu.co.jp>

	* sprintf.c (rb_f_sprintf): proper string precision treat.

Fri Dec  8 10:44:05 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_mod_remove_cvar): Module#remove_class_variable
	  added.

Thu Dec  7 17:35:51 2000  Shugo Maeda  <shugo@ruby-lang.org>

	* eval.c (stack_length): don't use __builtin_frame_address() on alpha.

Wed Dec  6 18:07:13 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* djgpp/config.sed, win32/Makefile.sub: typo.

	* eval.c (rb_mod_define_method): avoid VC4.0 warnings.

Wed Dec  6 13:38:08 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_and): tuning, make hash from shorter operand.

Wed Dec  6 01:28:50 2000  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>

	* gc.c (rb_gc): __builtin_frame_address() should not be used on
	  MacOS X.

	* gc.c (Init_stack): ditto.

Mon Dec  4 13:44:01 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* lib/jcode.rb: consider multibyte. not /n.

Mon Dec  4 09:49:36 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_inspect): output whole string contents. no more `...'

	* string.c (rb_str_dump): should propagate taintness.

	* hash.c (env_inspect): hash like human readable output.

	* variable.c (rb_ivar_get): prohibiting instance variable access
	  is too much restriction.

	* class.c (method_list): retrieving information should not be
	  restricted where $SAFE=4.

	* class.c (rb_obj_singleton_methods): ditto.

	* eval.c (rb_thread_priority): ditto.

	* eval.c (rb_thread_local_aref): ditto.

	* variable.c (rb_obj_instance_variables): ditto.

	* variable.c (rb_mod_const_at): ditto.

	* variable.c (rb_mod_class_variables): ditto.

	* eval.c (rb_exec_end_proc): end_proc should be preserved.

Sat Dec  2 22:32:43 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_yield_0): || should accept exactly zero argument.

	* parse.y (stmt): multiple right hand side for single assignment
	  (e.g. a = 1,2) is allowed.

Wed Nov 29 07:55:29 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* marshal.c (w_long): dumping long should be smaller than 32bit max.

	* marshal.c (w_long): shorter long format for small integers(-123..122).

	* marshal.c (r_long): ditto.

Tue Nov 28 18:10:51 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_mod_define_method): quick hack to implement
	  on-the-fly method definition.  experimental.

Mon Nov 27 17:00:35 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_eval): should not redefine builtin classes/modules
	  from within wrapped load.

Mon Nov 27 08:57:33 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (call_end_proc): should be isolated from outer block.

Mon Nov 27 00:10:08 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (rb_io_ctl): call ioctl/fcntl for fptr->f2 too.

	* process.c (rb_f_fork): call rb_thread_atfork() after creating
	  child process.

	* eval.c (rb_thread_atfork): kill all other threads immediately,
	  then turn the current thread into the main thread.

Sat Nov 25 23:12:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (ruby_run): move calling point of rb_trap_exit after
	  cleaning up threads.

	* eval.c (ruby_finalize): new function to call EXIT trap, END
	  procs and GC finalizers.

	* eval.c (rb_exec_end_proc): prevent recursion.

	* gc.c (rb_gc_call_finalizer_at_exit): ditto.

	* signal.c (rb_trap_exit): ditto. made static.

	* process.c (rb_f_fork): should swallow all exceptions from block
	  execution.

	* process.c (fork_rescue): should call ruby_finalize().

	* parse.y (yycompile): rb_gc() removed.  I don't remember why I put
	  this here.  test code?

Fri Nov 24 22:03:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* range.c (EXCL): exclusive infomation is now stored in an
	  instance variable.  this enables proper marshal dump.

	* process.c (proc_waitpid): should clear rb_last_status ($?) if
	  no pid was given by waitpid(2).

Thu Nov 23 01:35:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* process.c (proc_waitpid2): returns nil if no pid found.

Wed Nov 22 23:45:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* range.c (range_eq): new method.  Compares start and end of range
	  respectively.

Wed Nov 22 11:01:32 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_mod_class_variables): should honor singleton
	  class variable rule defined yesterday.

Tue Nov 21 23:24:14 2000  Mitsuteru S Nakao  <nakao@kuicr.kyoto-u.ac.jp>

	* numeric.c (flodivmod): missing second operand (typo).

Tue Nov 21 03:39:41 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* marshal.c (marshal_load): marshal format compatibility check
	  revised.   greater minor revision is UPWARD compatibile;
	  downward compatibility is not assured.

	* eval.c (is_defined): clarify class variable behavior for
	  singleton classes.  class variables within singleton class
	  should be treated like within singleton method.

Mon Nov 20 13:45:21 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_eval): set ruby_sourceline before evaluating
	  exceptions.

	* gc.c (gc_sweep): defer finalization in GC during compilation or
	  interrupt prohibit section.

	* gc.c (gc_sweep): mark all nodes before sweeping if GC happened
	  during compilation.

	* eval.c (rb_eval): should treat class variables specially in a
	  method defined in the singleton class.

Mon Nov 20 10:20:21 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* dir.c, win32/win32.c, ruby.h: add rb_iglob().

Mon Nov 20 00:18:16 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_subseq): should return nil for outbound start
	  index.

	* marshal.c (marshal_load): show format versions explicitly when
	  format version mismatch happens.

Sun Nov 19 06:13:24 2000  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* marshal.c: use long for string/array length.

	* pack.c (swaps): use bit-or(|) instead of plus(+).

	* pack.c (swapl): ditto.

Sat Nov 18 15:18:16 2000  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* array.c (rb_ary_replace): array size should be in long.

	* array.c (rb_ary_concat): ditto.

	* array.c (rb_ary_hash): ditto.

Sat Nov 18 14:07:20 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: Socket#readline() reads until "\n", not "\r\n"

Fri Nov 17 14:55:18 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* string.c (rb_str_succ): output should be NUL terminated.

Fri Nov 17 02:54:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (rb_io_close): need not to flush before closing.

	* eval.c (rb_thread_join): should preserve last thread status when
	  THREAD_TO_KILL.

	* eval.c (rb_thread_stop): ditto.

	* io.c (io_fflush): wrap fflush by TRAP_BEG, TRAP_END.

	* eval.c (rb_eval): method defined within singleton class
	  definition should behave like singleton method about class
	  variables.

	* eval.c (is_defined): ditto.

Thu Nov 16 23:06:07 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: can call {old,new}_implementation any times.

	* lib/net/http.rb: HTTP#connecting, receive ->
	  common_oper, connecting.

	* lib/net/http.rb: output warning if u_header includes
	  duplicated header.

	* lib/net/http.rb: not check Connection:/Proxy-Connection;
	  always read until eof.

	* lib/net/protocol.rb: detects and catches "break" from block.

Thu Nov 16 16:32:45 2000  Masahiro Tanaka  <masa@stars.gsfc.nasa.gov>

	* bignum.c (bigdivrem): should have incremented ny first.

Thu Nov 16 14:58:00 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* ext/socket/socket.c (sock_new): duplicates file descriptor 
	  with myfddup() on mswin32/mingw32.

	* win32/win32.h: uses system original fdopen().

	* win32/win32.c (myfddup): newly added instead of myfdopen().

	* win32/win32.c (mybind, myconnect, mygetsockname, mygetsockopt, 
	  mylisten, mysetsockopt): now accept file descriptor only, not 
	  SOCKET.

	* win32/win32.c (myaccept, mysocket): return file descriptor, 
	  instead of SOCKET.

Thu Nov 16 10:23:24 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (massign): too strict check for nameless rest argument.

	* eval.c (method_arity): mere * should return -1.

	* eval.c (intersect_fds): should check all FDs in the fd_set.

Wed Nov 15 19:33:20 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* eval.c (rb_attr): should clear method cache before calling hook.

	* eval.c (rb_eval): ditto.

	* eval.c (rb_mod_modfunc): ditto.

Mon Nov 13 22:44:52 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* error.c (rb_bug): print version to stderr.

Mon Nov 13 19:02:08 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* win32/win32.c, io.c, process.c: the exit status of program must be
	  multiplied 256 on mswin32 and msdosdjgpp(system(), ``).

Sat Nov 11 22:57:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (arg): uniformed treatment of -a**b, where a is a
	  number literal;  hacky but behavior appears more consistent.

	* parse.y (newline_node): reduce newline node (one per line).

	* random.c (rb_f_srand): should be prohibited in safe level
	  greater than 4.

Sat Nov 11 22:37:36 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* rubysig.h: do not use rb_trap_immediate on win32.

	* rubysig.h: new macros, ATOMIC_TEST, ATOMIC_SET, ATOMIC_INC,
	  ATOMIC_DEC, RUBY_CRITICAL and new definition of TRAP_BEG,
	  TRAP_END.

	* gc.c (ruby_xmalloc): should wrap malloc() by RUBY_CRITICAL.

	* signal.c (sighandle): better win32 sig handling.

	* win32/win32.c (flock): better implementation.

	* win32/win32.c (myselect): ditto.

	* win32/win32.c (myaccept): ditto.

	* win32/win32.c (waitpid): ditto.

	* win32/win32.c (myrename): ditto.

	* win32/win32.c (wait_events): support function for win32 signal
	  handling.

Sat Nov 11 08:34:18 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.31.

	* lib/net/http.rb: initializes header in HTTP, not HTTPCommand.

	* lib/net/protocol.rb, http.rb: rewrites proxy code.

Fri Nov 10 16:15:53 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* numeric.c (rb_num2long): use to_int, not to_i.

	* error.c: T_SYMBOL was misplaced by T_UNDEF.

	* parse.y (yylex): eval("^") caused infinite loop.

Thu Nov  9 14:22:13 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (rb_io_taint_check): should check IO taintness; no
	  operation for untainted IO should be allowed in the sandbox.

	* rubyio.h (GetOpenFile): check IO taintness inside using
	  rb_io_taint_check().

Wed Nov  8 03:08:53 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (io_fflush): ensure fflush(3) would not block by calling
	  rb_thread_fd_writable(). 

Tue Nov  7 20:29:56 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.30.

	* lib/net/protocol.rb, smtp.rb: Command#critical_ok -> error_ok

	* lib/net/http.rb: reads header when also "100 Continue".

Tue Nov  7 04:32:19 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (bigdivrem): use bit shift to make y's MSB set.

Mon Nov  6  1:22:49 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* error.c (warn_print): do not use err_append(), to ensure output
	  to stderr.

	* error.c (rb_warn): use warn_print() instead of err_print().

	* error.c (rb_warning): ditto.

	* error.c (rb_bug): ditto.

	* eval.c (rb_load): re-raise exceptions during load.

	* time.c (make_time_t): remove useless adjust

Thu Nov  2 18:01:16 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* random.c (rb_f_rand): half-baked float support fixed.  This fix
	  was originally proposed by K.Kosako <kosako@sofnec.co.jp>.

Tue Oct 31 17:27:17 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c: change digit size to `long|int' if long long is
	  available.

	* marshal.c (w_object): support `long|int' digits.

	* marshal.c (r_object): ditto.

Sat Oct 28 23:54:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (yylex): allow =end at the end of file (without a
	  newline at the end).

Fri Oct 27 10:00:27 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_cstr2inum): should ignore trailing white spaces.

	* bignum.c (rb_str2inum): string may not have sentinel NUL.

Fri Oct 27 02:37:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_cstr2inum): wrongly assigned base to c before
	  badcheck check.

Thu Oct 26 02:42:50 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: Command#critical_ok

	* lib/net/smtp.rb: clear critical flag before go to SMTP

Wed Oct 25 12:30:19 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_concat): replacing array might be the receiver
	  itself.  do not call rb_ary_push_m.

	* array.c (rb_ary_replace): replacing array might be the receiver
	  itself.  use memmove.

Fri Oct 20 07:56:23 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_eval): ARGSPUSH should not modify args array.

Thu Oct 19 14:58:17 2000  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* pack.c (NUM2U32): should use NUM2ULONG().

Tue Oct 17 17:30:34 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* eval.c (error_print): ruby_sourcefile may be NULL.

Tue Oct 17 16:36:28 2000  Wes Nakamura  <wknaka@pobox.com>

	* pack.c (NATINT_U32): wrong use of sizeof.

Tue Oct 17 12:48:20 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* eval.c (rb_abort): nil check against ruby_errinfo.

	* eval.c (rb_thread_schedule): use FOREACH_THREAD_FROM instead of
	  FOREACH_THREAD, since curr_thread may be removed from thread ring.

	* eval.c (THREAD_ALLOC): errinfo should be Qnil.

	* eval.c (rb_callcc): th->prev,th->next are now already
	  initialized in THREAD_ALLOC.

Mon Oct 16 15:37:33 2000  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>

	* eval.c (rb_thread_inspect): tag size was shorter than required.

	* object.c (rb_obj_inspect): ditto.

Mon Oct 16 14:25:18 2000  Shugo Maeda  <shugo@ruby-lang.org>

	* object.c (sym_inspect): used `name' before initialization.

Mon Oct 16 14:06:00 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* pack.c (pack_pack): use NATINT_U32 for 'l', 'L', and 'N'.

	* pack.c (I32,U32): 32 bit sized integer.

	* pack.c (OFF16,OFF32B): big endian offset for network byteorder.

Mon Oct 16 06:39:32 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: hex-alpha is not [a-h] but [a-f].

Mon Oct 16 01:02:02 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_start_0): should not abort on exception if
	  $SAFE >= 4.

	* parse.y (sym): symbols for class variable names.

Sun Oct 15 01:49:18 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* file.c (rb_file_flock): should accept interrupt.

	* process.c (rb_waitpid): ditto.

	* process.c (rb_waitpid): ditto.

	* process.c (proc_wait): ditto.

	* process.c (proc_waitpid2): wrong recursion.

Sat Oct 14 03:32:13 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_alloc): should not link a new thread in the
	  live thread ring before initialization.

Fri Oct 13 17:08:09 2000  Shugo Maeda  <shugo@ruby-lang.org>

	* lib/net/imap.rb: new file.

Thu Oct 12 18:56:28 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/pop.rb: POP3#reset

	* lib/net/http.rb: a code for "Switch Protocol" was wrongly 100.

Thu Oct 12 01:23:38 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: bug fix: CGI::html(): PRETTY option didn't work.

Thu Oct 12 00:03:02 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* object.c (sym_inspect): should adjust string length.

	* struct.c (rb_struct_to_s): ditto.

	* struct.c (rb_struct_inspect): ditto.

Wed Oct 11 22:15:47 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* eval.c (rb_thread_inspect): should adjust string length.

	* object.c (rb_any_to_s): ditto.

	* object.c (rb_obj_inspect): ditto.

Wed Oct 11 18:13:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_start_0): should check insecure exit.

Wed Oct 11 14:29:51 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb: 2nd arg for ProtocolError#initialize is
	  optional.

	* lib/net/http.rb: code refining.

Wed Oct 11 11:13:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (primary): setter method (e.g. foo=) should always be
	  public.

	* eval.c (rb_thread_raise): should not raise SecurityError if
	  exception raised by the interpreter.

	* eval.c (rb_thread_cleanup): skip all THREAD_KILLED threads
	  before FOREACH_THREAD.

Tue Oct 10 16:11:54 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* dln.c (dln_load): remove unused code for cygwin.

Tue Oct 10 09:49:23 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* file.c (Init_File): FileTest.size should return 0 (not nil) for
	  empty files.

Sun Oct  8 13:20:26 2000  Guy Decoux  <decoux@moulon.inra.fr>

	* eval.c (POP_SCOPE): not just set SCOPE_DONT_RECYCLE, but do
	  scope_dup().

Sat Oct  7 15:10:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_reverse_bang): unnecessary ALLOCA_N() was
	  removed.

Fri Oct  6 14:50:24 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* ext/extmk.rb.in, lib/mkmf.rb: remove "DESTDIR =".

	* Makefile.in, win32/Makefile.sub, ruby.1: renamed -X to -C.

Fri Oct  6 12:50:52 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* array.c (rb_ary_plus): use to_ary(), not Check_Type().

	* array.c (rb_ary_concat): ditto.

	* gc.c (rb_gc): use __builtin_frame_address() for gcc.

	* eval.c (stack_length): ditto.

	* parse.y (assign_in_cond): stop warning till some better warning
	  condition will be found.

Thu Oct  5 18:02:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* object.c (rb_obj_dup): should have propagated taint flag.
	  (ruby-bugs:#PR64,65)

Wed Oct  4 00:26:11 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (proc_arity): proc{|a|}'s arity should be -1.

Mon Oct  2 05:28:58 2000  akira yamada  <akira@ruby-lang.org>

	* string.c (trnext): minus at the end of pattern.

Sun Oct  1 00:43:34 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* configure.in: exp-name was wrong on cygwin and mingw32.

Thu Sep 28 14:57:09 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c (re_compile_pattern): should try must_string calculation
	  every time.

Tue Sep 19 23:47:44 2000  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>

	* configure.in, config.guess, config.sub: MacOS X support.

Wed Sep 27 18:40:05 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* stable version 1.6.1 released.

Wed Sep 27 16:13:05 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* mkconfig.rb: variables should be expanded only if /\$\{?\w+\}?/.

Tue Sep 26 18:09:51 2000  WATANABE Hirofumi  <eban@ruby-lang.org>

	* string.c: include <math.h>

Tue Sep 26 15:59:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* object.c (rb_mod_dup): metaclasses of class/module should not be
	  cleared by rb_obj_dup.

Tue Sep 26 02:44:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (GC_MALLOC_LIMIT): size extended.

	* regex.c (DOUBLE_STACK): use machine's stack region for regex
	  stack if its size is small enough.

Mon Sep 25 18:13:07 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c: include <defines.h>.

	* eval.c (rb_add_method): cache mismatch by method
	  definition. need to clear_cache_by_id every time.

Mon Sep 25 13:31:45 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/win32.c (NtCmdGlob): substitute '\\' with '/'.

Mon Sep 25 00:35:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* defines.h: #undef HAVE_SETITIMER on cygwin.

Sun Sep 24 03:01:53 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, http.rb: typo.

Sat Sep 23 07:33:20 2000  Aleksi Niemela  <aleksi.niemela@cinnober.com>

	* regex.c (re_compile_pattern): nicer regexp error messages for
	  invalid patterns.

Sat Sep 23 03:06:25 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_autoload_load): should not require already
	  provided features. 

Fri Sep 22 15:46:21 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/http.rb: too early parameter expansion in string.

Fri Sep 22 13:58:51 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/extmk.rb.in: don't use default $:

Fri Sep 22 13:42:50 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* regex.c (PUSH_FAILURE_COUNT): avoid casting warning on alpha.

	* regex.c (PUSH_FAILURE_POINT): ditto.

Fri Sep 22 10:16:21 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/config.h.in: add HAVE_TELLDIR, HAVE_SEEKDIR

Thu Sep 21 19:04:34 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/extmk.rb, lib/mkmf.rb (install_rb): check whether libdir is
	  directory or not.

Thu Sep 21 17:23:05 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* file.c (rb_file_s_symlink): use HAVE_SYMLINK.

	* file.c (rb_file_s_readlink): use HAVE_READLINK.

	* dir.c (dir_tell): use HAVE_TELLDIR.

	* dir.c (dir_seek): use HAVE_SEEKDIR.

	* configure.in (AC_CHECK_FUNCS): lstat, symlink, readlink,
	  telldir, seekdir checks added.

	* file.c (lstat): should use stat(2) if lstat(2) is not
	  available.

Thu Sep 21 15:59:23 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.29.

	* lib/net/http.rb: HTTPReadAdapter -> HTTPResponseReceiver

	* lib/net/http.rb (connecting): response is got in receive()

Thu Sep 21 15:49:07 2000  Wayne Scott  <wscott@ichips.intel.com>

	* lib/find.rb (find): should not follow symbolic links;
	  tuned performance too.

Wed Sep 20 23:21:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* ruby.c (load_file): two Ctrl-D was required to stop ruby at the
	  beginning of stdin script read.

Wed Sep 20 14:01:45 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_provided): detect infinite load loop.

	* eval.c (rb_provided): too weak filename comparison.

	* eval.c (rb_thread_alloc): avoid recycling still referenced
	  dvar structures. 

	* eval.c (rb_callcc): ditto.

	* eval.c (THREAD_ALLOC): fiil dyna_vars field by ruby_dyna_vars.

Tue Sep 19 17:47:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* stable version 1.6.0 released.

Tue Sep 19 16:24:52 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* marshal.c (Init_marshal): provide marshal.so no more.

Tue Sep 19 14:01:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in, win32/setup.mak: include version number
	  in RUBY_SO_NAME.

Tue Sep 19 13:07:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (yylex): was confusing $~ and $_.

Tue Sep 19 13:06:53 2000  GOTOU YUUZOU  <gotoyuzo@notwork.org>

	* signal.c (rb_f_kill): signum may be a negative number, should be
	  treated by signed number.

Tue Sep 19 01:14:56 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_provide): better feature handling.

	* eval.c (rb_f_require): loading ruby library may be partial
	  state.  checks in rb_thread_loading is integrated.

	* eval.c (rb_provided): better thread awareness.

	* lib/irb/frame.rb: 6 (not 5) parameters for trace_func proc.

	* eval.c (error_print): should print error position even if
	  get_backtrace() failed.

Sat Sep 16 03:29:59 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_f_require): rb_provided() was called too early; does
	  not work well with threads.

	* parse.y (ensure): should distinguish empty ensure and non
	  existing ensure.

	* file.c (Init_File): extending File by class of FileTest was
	  serious mistake.

Thu Sep 14 02:46:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_yield): array strip should be done in this
	  function. 

Wed Sep 13 17:01:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* bignum.c (rb_big_eq): incomplete value comparison of bignums.

Wed Sep 13 06:39:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_mod_class_variables): Module#class_variables added.

Wed Sep 13 06:09:26 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: bug fix: CGI::header(): output status header.

Wed Sep 13 01:09:12 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (yylex): allow global variables like '$__a'.

Tue Sep 12 22:28:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/socket/extconf.rb: avoid using terrible <netinet/tcp.h>
	  on cygwin 1.1.5.

Tue Sep 12 16:01:58 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* array.c (rb_ary_unshift_m): typo.

Tue Sep 12 15:37:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_yield_0): stripped array too much, should remove just
	  for proc_call().

Tue Sep 12 07:05:24 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: version 2.0.0: require ruby1.5.4 or later.

	* lib/net/telnet.rb: version 1.6.0

Tue Sep 12 03:26:07 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (massign): use to_ary to get an array if available.

	* object.c (rb_Array): ditto.

Mon Sep 11 14:24:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* hash.c (ruby_setenv): should not free the element of
	  origenvironment.

	* parse.y (command_call): kYIELD moved to this rule to allow
	  'a = yield b'. (ruby-bugs-ja:#PR15) 

Mon Sep 11 01:27:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_yield_0): proc#call([]) should pass single value to
	  the block.

	* eval.c (callargs): reduce array allocation.

	* eval.c (massign): precise check for argument number.

Fri Sep  8 10:05:17 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (STR_NO_ORIG): should be FL_USER2.

Thu Sep  7 14:17:51 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* string.c (rb_str_cat): should work even for concatenating same
	  string.

Wed Sep  6 17:06:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_cvar_declare): should check superclass's class
	  variable first.

Wed Sep  6 10:42:02 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* misc/ruby-mode.el (ruby-calculate-indent): shift continuing line
	  if previous line ends with modifier keyword.

	* misc/ruby-mode.el (ruby-parse-region): should not give up if
	  modifiers are at the end of line.

	* misc/ruby-mode.el (ruby-expr-beg): indented wrongly if modified
	  statement was size 1.

Wed Sep  6 10:41:19 2000  Kenichi Komiya  <kom@mail1.accsnet.ne.jp>

	* misc/ruby-mode.el (ruby-parse-region): modifier was not handled
	  well on emacs19.

Tue Sep  5 17:10:12 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* time.c (time_to_s): fixed zone string UTC for utc time object.

Tue Sep  5 00:26:06 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* regex.c (re_search): range worked wrongly on bm_search().

Mon Sep  4 13:40:40 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: renamed libruby.a to libruby.{cygwin,mingw32}.a
	  on cygwin and mingw32.

Sun Sep  3 23:44:04 2000  Noriaki Harada  <tenmei@maoh.office.ne.jp>

	* io.c (NO_SAFE_RENAME): for BeOS too.

Sun Sep  3 11:31:53 2000  Takaaki Tateishi  <ttate@jaist.ac.jp>

	* parse.y (rescue): no assignment was done if rescue body was
	  empty.

Sat Sep  2 10:52:21 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (call_args,aref_args): block_call can be the last
	  argument.

	* parse.y (COND_PUSH,COND_POP): maintain condition stack to allow
	  kDO2 in parentheses in while/until/for conditions.

	* parse.y (yylex): generate kDO2 for EXPR_ARG outside of
	  while/until/for condition.

Fri Sep  1 10:36:29 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (aref_args,opt_call_args): add block_call to allow a
	  method without parentheses and with block as a last argument.

	* hash.c (rb_hash_sort): should not return nil.

	* re.c (match_aref): should use rb_reg_nth_match().

	* eval.c (POP_SCOPE): recycled scopes too much

	* eval.c (Init_eval): extend room for stack allowance.

	* eval.c (POP_SCOPE): frees scope too much.

Thu Aug 31 14:28:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* gc.c (rb_gc_mark): T_SCOPE condition must be more precise.

	* eval.c (scope_dup): should not make all duped scope orphan.

Thu Aug 31 10:11:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (stmt): allow stmt_rhs to be right hand side of multiple
	  assignment.

	* time.c (rb_time_timeval): type error should not mention the word
	  'interval'.

Wed Aug 30 23:21:20 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* numeric.c (rb_num2long): use rb_Integer() instead of independent
	  convert routine.

	* eval.c (rb_rescue2): now takes arbitrary number of exception types.

	* object.c (rb_convert_type): use rb_rescue2 now to handle NameError.

	* object.c (rb_convert_type): better error message.

Wed Aug 30 17:09:14 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/Win32API/Win32API.c (Win32API_initialize): AlphaNT support.

Wed Aug 30 14:19:07 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (node_assign): should support NODE_CVASGN2 too.

Wed Aug 30 11:31:47 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* ext/Win32API/Win32API.c (Win32API_initialize): add the
	  arguments checking.

	* ext/Win32API/Win32API.c (Win32API_initialize): add taint
	  checking. allow String object in the third argument.

Wed Aug 30 10:29:40 2000  Masahiro Tomita  <tommy@tmtm.org>

	* io.c (rb_f_p): flush output buffer.

Tue Aug 29 16:29:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* parse.y (assignable): remove NODE_CVASGN3.

	* parse.y (gettable): remove NODE_CVAR3.

Tue Aug 29 02:02:14 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* lib/mkmf.rb (create_makefile): handles create_makefile("a/b").

	* ext/extmk.rb.in (create_makefile): ditto

Mon Aug 28 18:43:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (is_defined): now handles class variables.

	* eval.c (rb_eval): class variable behavior revisited.

	* parse.y (assignable): ditto.

	* parse.y (gettable): ditto.

	* regex.c (PUSH_FAILURE_COUNT): push/pop interval count on failure
	  stack.  this fix is inspired by the Emacs21 patch from Stefan
	  Monnier <monnier@cs.yale.edu>.

Fri Aug 25 15:24:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* variable.c (rb_cvar_get): should not follow __attached__.

	* variable.c (rb_cvar_set): ditto.

	* variable.c (rb_cvar_declare): ditto.

	* variable.c (mod_av_set): second class variable assignment at the
	  toplevel should not give warning.

Fri Aug 25 01:18:36 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (next_argv): prepare path for open file.

	* string.c (rb_str_setter): moved from io.c.

	* io.c (next_argv): filename should be "-" for refreshed ARGF.

Thu Aug 24 15:27:39 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/socket/socketport.h: use `extern int h_errno' if needed.

Sat Aug 19 01:34:02 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/sdbm/_sdbm.c (sdbm_prep): flags should be or-ed by O_BINARY on
	  Win32 too.

	* ext/sdbm/_sdbm.c (makroom): fill hole with 0 on Win32 too.

Fri Aug 18 13:23:59 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_eval): should preserve and clear $! value before
	  compilation. 

	* eval.c (eval): ditto.

Fri Aug 18 11:06:19 2000  Shugo Maeda  <shugo@ruby-lang.org>

	* ext/socket/socket.c (s_accept): start GC on EMFILE/ENFILE.

Thu Aug 17 16:04:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (is_defined): should clear ruby_errinfo.

Thu Aug 17 04:26:31 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.27.

	* lib/net/protocol.rb: writing methods returns written byte size.

	* lib/net/smtp.rb: send_mail accepts many destinations.

Wed Aug 16 00:43:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* time.c (time_s_times): use CLK_TCK for HZ if it's defined.

Tue Aug 15 17:30:59 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (frame_dup): should set flag FRAME_MALLOC after
	  argv allocation.

	* eval.c (blk_free): should not free argv if GC was called before
	  frame_dup.

Tue Aug 15 16:08:40 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: add ac_cv_func_times=yes for mingw32.

	* win32/win32.c (mytimes): typo.

Tue Aug 15 01:45:28 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* io.c (argf_eof): should return true at the end of ARGF without
	  checking stdout if arguments are given.

Mon Aug 14 10:34:32 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_thread_status): status should return false for normal
	  termination, nil for termination by exception.

Fri Aug 11 15:43:46 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_undef): give warning for undefining __id__, __send__.

Thu Aug 10 08:05:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_callcc): returned current thread instead of
	  continuation wrongly.

Thu Aug 10 05:40:28 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/extmk.rb.in: $CPPFLAGS should be initialized.

	* ext/tcltklib/depend: add stubs.o.

	* ext/tcltklib/extconf.rb: use $CPPFLAGS instead of $CFLAGS.

Wed Aug  9 16:31:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* eval.c (rb_callcc): thread status for continuations must be
	  THREAD_KILLED, otherwise thread_free() breaks other threads.

Wed Aug  9 13:24:25 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/win32.[ch]: emulate rename(2).

Tue Aug  8 14:01:46 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/tcltklib/tcltklib.c: support --enable-tcltk_stubs

	* ext/tcltklib/extconf.rb: ditto.

	* ext/tcltklib/stubs.c: created. examine candidate shared libraries.

Mon Aug  7 13:59:12 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>

	* ruby.h (CLONESETUP): should copy flags before any potential
	  object allocation.

	* regex.c (re_match): check for stack depth was needed.

Sat Aug  5 16:43:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* djgpp/*: convert DOS line endings to UNIX style.

	* djgpp/config.status: rename to config.sed for SFN.

	* lib/ftools.rb (compare, safe_unlink, chmod): avoid warnings.

	* lib/ftools.rb (move): typo. not `tpath', but `to'.

Fri Aug  4 23:26:48 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (proc_call): gives warning if a block is supplied.

	* eval.c (rb_eval): no warning for discarding if an alias for the
	  method is already made.

Fri Aug  4 16:32:29 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_reject_bang): returns nil if no element removed.

	* hash.c (rb_hash_reject_bang): returns nil if no element removed.

Thu Aug  3 19:44:26 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_fd_writable): should return integer value.

	* array.c (rb_ary_assoc): search array element whose length is
	  longer than 0 (not 1).

Wed Aug  2 18:27:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_wait_fd): prohibit thread context switch
	  during compilation.

	* eval.c (rb_cont_call): prohibit Continuation#call across threads.

Wed Aug  2 08:22:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (rb_gc): clear malloc_memories to zero, to avoid potential
	  super frequent GC invocation. (ruby-bugs:#PR48)

	* gc.c (rb_gc): only add_heap() if GC trigger condition is
	  satisfied.

Tue Aug  1 16:41:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (proc_options): global load path setting moved from
	  ruby_prog_init().

	* ruby.c (incpush): renamed.  push path entry at the END of the
	  load path array.  This makes -I directories sorted in order in
	  the arguments.

Sat Jul 29 23:42:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (dir_each): should check whether dir is closed during the
	  block execution. (ruby-bugs:#PR47)

Sat Jul 29 21:57:30 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ruby.c (rubylib_mangle): provide another buffer for the result.

Wed Jul 26 10:09:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: set SOLIBS to LIBS on Cygwin.

	* configure.in: LIBRUBY_SO='$(RUBY_INSTALL_NAME)'.$target_os.dll
	  on cygwin and mingw32. ruby-cygwin.dll is bad. why?

Wed Jul 26 10:04:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (gc_sweep): avoid full scan during compilation.

	* gc.c (rb_gc): add heap during no gc period (including
	  compilation).

Tue Jul 25 19:03:04 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* cygwin/GNUmakefile: use puts instead of print, because
	  Cygwin DLL's behavior is changed(or bug?).

	* configure.in: LIBRUBY_SO='$(RUBY_INSTALL_NAME)'-$target_os.dll
	  on cygwin and mingw32.

	* cygwin/GNUmakefile: ditto.

	* Makefile.in: $(SOLIBS) should be put after dmyext.@OBJEXT@.

	* instruby.rb: install $(LIBRUBY) to libdir
	  if $(LIBRUBY) != $(LIBRUBY_A_).

Tue Jul 25 15:16:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_p): redirect to $defout.

Mon Jul 24 18:52:55 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/win32.c (win32_getenv): should remove `static'.

	* ruby.c (rubylib_mangle): support "/hoge;/foo"

Mon Jul 24 10:28:55 2000  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>

	* string.c (rb_str_count): raise exception if no argument is
	  given.

Sun Jul 23 12:55:04 2000  Dave Thomas  <Dave@Thomases.com>

	* string.c (rb_str_rindex): Support negative end position.

Fri Jul 21 17:35:01 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (aref_args): command_call now be permitted as
	  aref_args.

	* process.c (proc_getpriority): getpriority(2) may return valid
	  negative number.  use errno to detect error.

	* marshal.c (dump_ensure): dumped string should be tainted if
	  any among target objects is tainted.

	* marshal.c (r_regist): restored object should be tainted if and
	  only if the source is a file or a tainted string.

Wed Jul 19 15:14:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (bigdivrem): should use rb_int2big(), not rb_uint2big().

Tue Jul 18 14:58:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (ruby_options): should treat SystemExit etc. properly.

	* parse.y (yycompile): should check compile_for_eval, not
	  ruby_in_eval.

Mon Jul 17 04:29:50 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/mkmf.rb: converts extension of $objs into $OBJEXT.

Sun Jul 16 03:02:34 2000  Dave Thomas <dave@thomases.com>

	* lib/weakref.rb: Change to use new ObjectSpace calls.

Sat Jul 15 21:59:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): should not redefine __id__ nor __send__.

	* gc.c (define_final): integrate final.rb features into the
	  interpreter.  define_finalizer and undefine_finalizer was
	  added to ObjectSpace.  plus, add_finalizer, remove_finalizer,
	  and call_finalizer are deprecated now.

Sat Jul 15 01:32:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_mod_method): implements unbound method.

	* eval.c (Init_eval): should prohibit `module_function' for class
	  Class.

Fri Jul 14 17:19:59 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* cygwin/GNUmakefile.in: use miniruby instead of sed.

Fri Jul 14 12:49:50 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (argf_eof): need to check stdin, when next_p == -1.

	* io.c (read_all): use io_fread() instead of fread(3).

	* io.c (io_reopen): should clearerr FILE if fd < 3.

	* re.c (rb_reg_match_m): the result is exported, so it should be
	  declared as busy.

	* eval.c (rb_eval): should preserve errinfo even if return, break,
	  etc. is called in rescue clause.

	* instruby.rb: install irb too.

Wed Jul 12 15:32:57 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_const_get): constants for builtin classes must
	  have higher priority than constants from included modules at
	  Object class.

	* bignum.c (bigdivrem): small embarrassing typo.

Wed Jul 12 15:06:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): use rb_const_get_at().

	* variable.c (top_const_get): retrieve toplevel constants only,
	  not ones of Object (and its included modules) in general.

Wed Jul 12 15:04:11 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.26.

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb:
	  add module Net::NetPrivate and its inner classes
	  {Read,Write}Adapter, Command, Socket,
	  SMTPCommand, POP3Command, APOPCommand, HTTPCommand

Wed Jul 12 13:10:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (bigdivrem): defer bignorm().

	* bignum.c (bignorm): accepts accidental fixnums.

Tue Jul 11 16:54:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): `@<digit>' is no longer a valid instance
	  variable name.

Tue Jul 11 01:51:50 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (rb_big_divmod): should not use Integer(float) for
	  the right operand.

	* bignum.c (rb_big_remainder): ditto.

	* bignum.c (rb_big_modulo): ditto.

Mon Jul 10 15:27:16 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* io.c (pipe_finalize): should set rb_last_status when pclose().

Mon Jul 10 09:07:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* error.c (rb_bug): print version number and such too.

Sat Jul  8 23:08:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_start_0): should copy previous scopes to
	  prevent rb_gc_force_recycle().

Fri Jul  7 23:36:36 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/addrinfo.h: move IN_EXPERIMENTAL and IN_LOOPBACKNET
	  definitions to ext/socket/sockport.h.

	* ext/socket/extconf.rb: add getservbyport() and arpa/inet.h check.

	* ext/socket/getaddrinfo.c (getaddrinfo): SOCK_RAW may not be
	  defined (ex. BeOS, Palm OS 2.x or before).

	* ext/socket/getnameinfo.c (getnameinfo): getservbyport() may not
	  exist (ex. BeOS, Palm OS).

	* ext/socket/sockport.h: add IN_EXPERIMENTAL, IN_CLASSA_NSHIFT,
	  IN_LOOPBACKNET, AF_UNSPEC, PF_UNSPEC and PF_INET.

Fri Jul  7 03:30:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (aref_args): should allow Hash[:a=>2] etc.

	* numeric.c (fix_aref): convert index by NUM2INT, not FIX2INT. 
	  (ruby-bugs:#PR37)

	* time.c (time_localtime): should prohibit for frozen time.

	* time.c (time_gmtime): ditto.

Thu Jul  6 19:12:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_file_s_open): should not terminate fptr; just clear it.

	* ruby.c (proc_options): should not call require_libraries()
	  twice.

	* ruby.c (require_libraries): clear req_list_head.next after
	  execution. 

Thu Jul  6 13:51:57 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* object.c (rb_to_id): name may not be symbol nor fixnum.

	* struct.c (rb_struct_s_def): name may be nil.

Thu Jul  6 02:09:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (bigdivrem): new function to return remainder.

	* numeric.c (fixdivmod): now returns modulo, not remainder.

	* numeric.c (flodivmod): ditto.

	* bignum.c (bigdivmod): ditto.

	* numeric.c (num_modulo): new method; alias to '%'.

Thu Jul  6 00:51:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/win32.c (NtCmdGlob): patterns should be separated and
	  NUL terminated.

Wed Jul  5 22:27:56 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* cygwin/GNUmakefile: use ruby.def to make rubycw.dll.

	* ext/extmk.rb.in: create target.def.

	* lib/mkmf.rb: ditto.

Wed Jul  5 09:47:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_arg): Time::local, Time::gm now take 7th optional
	  argument for usec.

	* numeric.c (num_ceil, etc): default ceil, floor, round, truncate
	  implementation for Numeric, using `to_f'.

	* io.c (rb_io_reopen): clear fptr->path after free() to prevent
	  potential GC crash.

	* io.c (rb_file_s_open): terminate fptr unless null.

	* io.c (rb_file_initialize): ditto.

	* lib/tempfile.rb: specify FILE::CREAT|File::EXCL to open for
	  better security.

	* numeric.c (flo_truncate): new method.

Wed Jul  5 01:02:53 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/extmk.rb.in: join ' ' -> join(' ').

	* lib/mkmf.rb: ditto.

Tue Jul  4 13:51:29 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/dbm/dbm.c: add methods added to Hash in 1.5.x.

	* ext/gdbm/gdbm.c: ditto.

	* ext/sdbm/init.c: ditto.

	* eval.c (proc_call): args may be Qundef (means no argument), do
	  not call TYPE() for args.

Tue Jul  4 13:20:56 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/extmk.rb.in: make command line must be single-quoted.
	  $(RUBY_INSTALL_NAME) is command substitution in the POSIX sh.

Tue Jul  4 13:16:02 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* util.c (rb_type): should add T_UNDEF.

Tue Jul  4 09:30:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (here_document): supports EOF right after terminator.

	* random.c (rb_f_rand): argument is now optional (rand(max=0)). 

Tue Jul  4 01:50:49 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/ruby.def: remove ruby_mktemp.

Tue Jul  4 01:27:13 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_rescue2): new function to rescue arbitrary exception.

	* numeric.c (do_coerce): should catch NameError explicitly.

Tue Jul  4 00:15:23 2000  Dave Thomas  <Dave@thomases.com>

	* numeric.c (Init_Numeric): forgot to register Numeric#remainder.

Mon Jul  3 23:46:56 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (myselect, myaccept): disable interrupt while
	  executing accept() or select() to avoid Ctrl-C causes
	  "unknown software exception (0xc0000029)".

Mon Jul  3 18:35:41 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* lib/mkmf.rb: use null device if it exists for cross-compiling.

Mon Jul  3 18:19:51 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.26.

	* lib/net/protocol.rb (finish): do nothing unless active.

	* lib/net/http.rb: HTTP#{get,post}2 again (for new impl).

Mon Jul  3 16:47:22 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* cygwin/GNUmakefile: librubys.a -> lib$(RUBY_INSTALL_NAME)s.a

	* configure.in: use AC_CANONICAL_{HOST,TARGET,BUILD}.

Mon Jul  3 13:15:02 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (fix_divmod): x * d + m = y where d, m = x.divmod(y).

	* bignum.c (rb_big_divmod): ditto.

	* numeric.c (fixdivmod): does not depend C's undefined %
	  behavior.  adopt to fmod(3m) behavior.

	* numeric.c (flo_mod): modulo now reserves fmod(3m) behavior.

	* numeric.c (num_remainder): 'deprecated' warning.

Mon Jul  3 10:27:28 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: use AC_CANONICAL_SYSTEM.

Sun Jul  2 21:17:37 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: support without --enable-shared for cygwin/mingw32.

	* cygwin/GNUmakefile: ditto.

	* ext/extmk.rb.in: use null device if it exists for cross-compiling.

	* lib/mkmf.rb: ditto.

	* util.c (ruby_mktemp): remove unused ruby_mktemp().

Sun Jul  2 14:18:04 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* eval.c (TMP_PROTECT_END): tmp__protect_tmp may be NULL.

Sun Jul  2 03:37:50 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.25.

	* lib/net/protocol.rb (each_crlf_line): beg = 0 is needed in adding{}

	* lib/net/smtp.rb: allow String for to_addr of SMTP#sendmail

Sat Jul  1 15:22:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (fix_rshift): should handle shift value more than
	  sizeof(long). 

Sat Jul  1 15:22:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): the value from RTEST() is not valid Ruby
	  object.  result should be either true or false.

Sat Jul  1 09:30:06 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* re.c (rb_reg_initialize): was freeing invalid pointer.

Sat Jul  1 03:25:56 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (call_args): command_call can be the last argument of
	  call_args.  It had to be the only argument.

	* re.c (rb_reg_s_quote): should not dump core even for unsane mbc
	  string.

Fri Jun 30 01:36:20 2000  Aleksi Niemela  <aleksi.niemela@cinnober.com>

	* parse.y (f_norm_arg): better, nicer error message.

Thu Jun 29 07:45:33 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (udp_send): destination may be packed
	  struct sockaddr.

	* object.c (rb_Integer): Integer(nil) should be invalid, on the
	  other hand, nil.to_i is OK.

Wed Jun 28 17:26:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (ip_recvfrom): udp_recvfrom and tcp_recvfrom
	  is merged and moved to IPSocket#recvfrom.

	* ext/socket/socket.c (sock_s_getaddrinfo): family can be a
	  strings such as "AF_INET" etc.

	* ruby.c (require_libraries): . and RUBYLIB added to $load_path
	  just before -r procedure.

	* ruby.c (proc_options): -e, - did not exec -r.

Wed Jun 28 14:52:28 2000  Koga Youichirou <y-koga@mms.mt.nec.co.jp>

	* config.sub: NetBSD/hpcmips support.

Wed Jun 28 10:11:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c: gc trigger threshold changed; GC_NEWOBJ_LIMIT removed,
	  FREE_MIN is increased to 4096.

Tue Jun 27 22:39:28 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.24.

	* lib/net/protocol.rb: modified each_crlf_line again.

	* lib/net/protocol.rb: do_write_beg,do_write_end -> writing{}
	  do_write_do -> do_write

	* lib/net/http.rb: can make proxy connection by passing
	  addresses to HTTP.new, start.

	* lib/net/http.rb: HTTP.new_implementation, old_implementation:
	  can use 1.2 implementation of head, get, post, put.
	  (see document)

Tue Jun 27 12:05:10 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32.c (myfdclr): new function.

	* win32.h: add FD_CLR.

Mon Jun 26 23:41:41 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ruby.h: add cast for ANSI style.

	* gc.c (rb_data_object_alloc): use RUBY_DATA_FUNC.

Mon Jun 26 22:20:03 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (is_socket, extract_file_fd): New function.

	* win32/win32.c (myfdopen): use is_socket().

	* win32/win32.c (myselect): return non socket files immediately
	  if file and socket handles are mixed.

Mon Jun 26 16:21:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_schedule): wait_for cleared too early.

Mon Jun 26 09:15:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c: remove obsolete 'F', 'D' specifiers.

Sun Jun 25 00:55:03 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/socket.c (sock_s_getnameinfo): `res' would not
	  be assigned if TYPE(sa) == T_STRING.

Sat Jun 24 14:36:29 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* config*.dj, configure.bat, top.sed: move to djgpp/.

Sat Jun 24 02:34:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (load_file): call require_libraries() here to let
	  debug.rb work properly.

Fri Jun 23 22:34:51 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* bignum.c (rb_big_lshift): reorder xds assignment to avoid
	  reusing `x' as `len' by VC++ 6.0 SP3 compiler with -Ox switch.

Fri Jun 23 01:11:27 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_substr): should return empty string (""), 
	  if beg == str.size and len == zero, mostly for convenience and
	  backward compatibility.

	* parse.y (new_super): should tweak block_pass node for super too.

	* string.c (rb_str_split_m): last split element should not be nil,
	  but "" when limit is specified.

Thu Jun 22 17:27:46 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_substr): str[n,m] now returns nil when n equals
	  to str.size.

Thu Jun 22 13:49:02 2000  Uechi Yasumasa <uechi@ryucom.ne.jp>

	* lib/net/ftp.rb: support resuming.

Thu Jun 22 13:37:19 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* eval.c (rb_thread_sleep_forever): merge pause() macro.

Wed Jun 21 08:49:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): should not raise exception just by defining
	  singleton class.

Wed Jun 21 01:18:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.h: two macros RUBY_DATA_FUNC and RUBY_METHOD_FUNC are added
	  to make writing C++ extensions easier.

	* array.c (rb_ary_dup): internal classes should not be shared by dup.

	* hash.c (rb_hash_dup): ditto.

	* object.c (rb_obj_dup): ditto.

	* string.c (rb_str_dup): ditto.

	* error.c (Init_Exception): renamed NotImplementError to
	  NotImplementedError. 

Tue Jun 20 16:22:38 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (make_time_t): bug in DST boundary.

Tue Jun 20 10:54:19 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: add eval sitedir.

Tue Jun 20 06:14:43 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: change: version syntax. old: x.yz, now: x.y.z

	* lib/net/telnet.rb: ditto.

Tue Jun 20 00:37:45 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_kcode_m): Regexp#kcode returns nil for code unfixed
	  regexp object.

	* bignum.c (bigdivmod): bignum zero check was wrong.

Mon Jun 19 10:48:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_cvar_set): forgot to add security check for class
	  variable assignment.

Sun Jun 18 22:49:13 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: single quoted sitedir.

	* mkconfig.rb: add DESTDIR for cross-compiling.

	* lib/mkmf.rb: add DESTDIR.

	* ruby.c (load_file): force binmode if fname includes ".exe"
	  on DOSISH.

Sat Jun 17 23:22:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (rb_f_sprintf): should ignore negative precision given
	  by <%.*>.

	* sprintf.c (rb_f_sprintf): should allow zero precision.

Sat Jun 17 03:13:29 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_localtime): avoid unnecessary call of localtime.

	* time.c (time_gmtime): avoid unnecessary call of gmtime.

	* process.c (proc_wait2): new method.

	* process.c (proc_waitpid): second argument made optional.

	* process.c (proc_waitpid2): new method.

Sat Jun 17 00:05:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_clone): should initialize member fields.

Fri Jun 16 22:49:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_rewind): set lineno to zero.

Fri Jun 16 22:47:47 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.23.

	* lib/net/protocol.rb: too many CRLF in last line.

Fri Jun 16 21:23:59 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: add pause(2) checking.

	* eval.c: define pause() if missing.

Fri Jun 16 18:41:58 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* process.c (proc_setsid): BSD-style setpgrp() don't return 
	  process group ID, but 0 or -1.

Fri Jun 16 16:23:35 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* file.c (rb_stat_inspect): gives detailed information;
	  compatibility with ruby-1.4.x.

Fri Jun 16 05:18:45 2000  Yasuhiro Fukuma  <yasuf@bsdclub.org>

	* configure.in: FreeBSD: do not link dummy libxpg4 which was
	  merged into libc.

Fri Jun 16 03:17:36 2000  Satoshi Nojo  <nojo@t-samukawa.or.jp>

	* ext/dbm/dbm.c (fdbm_length): use GetDBM. empty?, [] too.

	* ext/gdbm/gdbm.c (fgdbm_length): ditto.

	* ext/sdbm/init.c (fsdbm_length): ditto.

Fri Jun 16 01:57:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_sleep_forever): pause(2) instead of sleep(3).

Thu Jun 15 10:46:36 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_sub_bang): should probagate taintness from
	  replacement string.

Wed Jun 14 17:01:41 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* rubytest.rb: add CONFIG['EXEEXT'] to the executable file name.

Wed Jun 14 14:50:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_f_sub): assign to $_ only if modification happens.

	* string.c (rb_f_gsub): ditto.

	* string.c (rb_f_chop): ditto.

	* string.c (rb_f_chomp): ditto.

	* io.c (io_reopen): preserve file position by ftell/fseek, if io
	  is a seekable.

	* eval.c (method_arity): wrong arity number for the methods with
	  optional arguments.

	* time.c (make_time_t): opposite timezone shift (should be negative).

Wed Jun 14 14:07:38 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* io.c: typo(ig/if).

	* re.c: typo(re/reg). add rb_reg_check().

	* time.c: remove unneeded declare(daylight, timezone).

	* configure.in: add include <time.h> when daylight checking.

Wed Jun 14 11:36:52 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* marshal.c (r_object): modified for symbols.

	* marshal.c (w_object): ditto.

Wed Jun 14 10:04:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_memcmp): should compare according to ruby_ignorecase.

	* string.c (rb_str_cmp): use rb_memcmp.

	* string.c (rb_str_index): ditto.

	* string.c (rb_str_rindex): ditto.

	* string.c (rb_str_each_line): ditto.

Wed Jun 14 04:58:53 2000  Dave Thomas  <dave@thomases.com>

	* io.c (rb_io_set_lineno): should have returned VALUE, not
	  integer.

Wed Jun 14 09:29:42 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_dup): dup should always propagate taintness.

Wed Jun 14 00:50:14 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: read_multipart(): if no content body then raise EOFError.

Tue Jun 13 11:46:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* process.c (proc_setsid): try implement it using setpgrp() and
	  ioctl(fd, TIOCNOTTY, NULL).

	* re.c (rb_reg_prepare_re): magic variable $= should affect regex
	  pattern match. 

	* time.c (make_time_t): use tm.tm_gmtoff if possible.

	* time.c (time_zone): use tm.tm_zone if available.

Tue Jun 13 01:50:57 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.22.

	* lib/net/http.rb: HTTPResponse#body returns body.

Mon Jun 12 23:41:54 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in (daylight): avoid GCC optimization.

Mon Jun 12 19:02:27 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: cygwin has strange timezone.

	* time.c (time_zone): use tzname and daylight.

Sat Jun 10 23:10:32 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_seek): whence is optional, default is SEEK_SET.

Fri Jun  9 17:00:29 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.21.

	* lib/net/http.rb: exception is raised with response object.

Fri Jun  9 15:11:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (make_time_t): supports daylight saving time.

	* eval.c (rb_thread_safe_level): should retrieve current $SAFE
	  value if a thread is the current thread.

Thu Jun  8 14:25:45 2000  Hiroshi Igarashi  <iga@ruby-lang.org>

	* lib/mkmf.rb: add target `distclean' in Makefile for extlib.
	  target `clean' doesn't remove Makefile.

Thu Jun  8 13:34:03 2000  Dave Thomas  <dave@thomases.com>

	* numeric.c: add nan?, infinite?, and finite? to Float

Thu Jun  8 00:31:04 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* regex.h: export re_mbctab properly on cygwin.

	* dln.c: use dlopen instead of LoadLibrary on cygwin.

Thu Jun  8 13:41:34 2000  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* file.c (rb_file_s_basename): might dump core.

Tue Jun  6 03:29:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (dir_foreach): now returns nil for consistency.

	* bignum.c (bigdivmod): modulo by small numbers was wrong.

Mon Jun  5 00:18:08 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* bignum.c: avoid conflict with USHORT on mingw32.

Mon Jun  5 00:13:35 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* eval.c (rb_thread_schedule): =/== typo.

Sun Jun  4 03:17:36 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: improve: CGI::pretty()

Sun Jun  4 02:01:10 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* lib/mkmf.rb: do not need to add -L$(topdir) in --enable-shared case.

Sat Jun  3 13:50:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (rb_id2name): should support constant attrset
	  identifiers. 

	* bignum.c (rb_big_eq): Bignum#== should not raise exception.

Fri Jun  2 11:24:48 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_popen): open with a block returns the value from the
	  block.  old behavior was back.

Fri Jun  2 00:42:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>


	* eval.c (rb_thread_cleanup): should clear priority for thread
	  termination.

Thu Jun 01 22:39:41 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.20.

	* lib/net/http.rb: wrongly closed the socket twice
	  when no Content-Length: was given.

Thu Jun  1 00:59:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_yield_0): convert Qundef to [].

Wed May 31 20:45:59 2000  Dave Thomas  <Dave@Thomases.com>

	* string.c (rb_str_slice_bang): wrong argument number.

Wed May 31 12:37:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_exec_end_proc): print error message from END procs.

Wed May 31 04:06:41 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: change: CGI#out() if "HEAD" == REQUEST_METHOD then
	  output only HTTP header.

Wed May 31 01:54:21 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_schedule): set main_thread->status to
	  THREAD_TO_KILL, before raising deadlock error.

	* eval.c (rb_thread_deadlock): if curr_thread == main_thread, do
	  not call rb_thread_restore_context()

Tue May 30 23:33:41 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* lib/mkmf.rb (create_makefile): add $(TARGET).ilk and *.pdb
	  to cleanup files for mswin32.

Mon May 29 10:41:10 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* file.c (rb_file_s_basename): should propagate taintness.

Sun May 28 21:37:13 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* eval.c: bug fix: DLEXT2.

Sun May 28 19:21:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* win32/win32.c: use ruby's glob.

	* dir.c: "glob" exported and renamed to "rb_glob".

	* ruby.h: ditto.

	* main.c: turn off command line mingw32's globbing.

Wed May 25 22:25:13 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/extmk.rb.in: use "ftools" instead of "rm -f".

	* lib/mkmf.rb: ditto.

Thu May 25 22:01:32 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* defines.h: mswin32: remove obsolete USHORT definition.

	* re.h: mswin32: use EXTERN instead of extern.

	* regex.h: mswin32: export re_mbctab properly.

	* win32/ruby.def: add ruby_ignorecase and regex.c's exports.

Thu May 25 21:28:44 2000  Minero Aoki <aamine@dp.u-netsurf.ne.jp>

	* re.c (rb_reg_expr_str): escape un-printable character.

Thu May 25 01:35:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (tokadd_escape): forgot to add `\x' to hexadecimal
	  escape sequences.

	* object.c (rb_obj_dup): dup for normal object (T_OBJECT) copies
	  instance variables only.

Wed May 24 23:49:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (rb_mod_initialize): should provide initialize.

Wed May 24 23:17:50 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/Makefile: remove unnecessary mv and rm command call.

Wed May 24 21:01:04 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/pty/pty.c: use "" instead of <> to include ruby.h and rubyio.h
	  for BeOS (PowerPC).

	* file.c (rb_find_file): should check dln_find_file() result.

	* win32/ruby.def: add rb_block_given_p.

Wed May 24 16:32:45 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_popen): popen does not take 3rd argument anymore.

	* re.c (rb_reg_desc): re may be zero, check before dereferencing.

Wed May 24 16:03:06 2000  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/cgi.rb: bug fix: CGI::escape(), CGI::Cookie::new()

	* lib/net/telnet.rb: improve: binmode(), telnetmode() interface

Wed May 24 13:12:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* misc/ruby-mode.el (ruby-parse-region): support `while .. do'
	  etc. But corresponding keywords must be at the beginning of
	  line. 

Tue May 23 23:50:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_initialize_m): wrong kcode value.

	* re.c (rb_reg_s_new): forgot to initialize re->ptr.

Tue May 23 08:36:24 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): forgot to restore old option
	  status by (?ix-ix).

	* regex.c (re_compile_fastmap): anychar may match newline if
	  RE_OPTION_MULTILINE or RE_OPTION_POSIXLINE is set.

Mon May 22 22:45:06 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.19.

	* lib/net/http.rb: do not use Regexp "p" option.

Mon May 22 21:56:43 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* struct.c (rb_struct_getmember): should use ID2SYM, not INT2NUM.

Mon May 22 15:07:37 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (rb_find_file): should check if the file really exists.

Mon May 22 09:08:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_popen): _exit(0) after processing block under the
	  child process.

	* io.c (rb_io_popen): flush stdout/stderr before subprocess
	  termination.

	* eval.c (rb_check_safe_str): insert rb_secure(4); operation
	  requires untainted string should be prohibited in level 4.

Sun May 21 21:17:00 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: add Setup.dj for djgpp cross-compiling.

	* Setup.dj: add readline.

	* instruby.rb: copy win32/win32.h to archlibdir on mingw32.

Sun May 21 20:58:08 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* pack.c: fix OFF16 and OFF32 definitions for Alpha and IRIX64.

Sun May 21 17:31:37 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* instruby.rb: support "make install" for cross-compiling.

	* ext/extmk.rb.in: ditto.

Sun May 21 14:22:49 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* Makefile.in: rename prep.rb to fake.rb.

	* configure.in: ditto.

Sat May 20 23:29:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (dir_s_new): does not take block; "open" does.

	* io.c (rb_io_s_new): ditto.

Fri May 19 07:44:26 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (dir_s_open): Dir#open does not returns closed Dir if a
	  block is given to the method.

	* re.c (rb_reg_initialize_m): Regexp::new calls initialize now.

	* string.c (Init_String): String#delete_at removed.

	* string.c (rb_str_aset_m): should have checked argc != 2.

	* eval.c (rb_thread_schedule): select(2) was called too many.

	* regex.c (re_compile_pattern): a bug in (?m) support.  Pointed
	  out by Dave Thomas <Dave@thomases.com>.

Thu May 18 23:55:26 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* dln.c (search_undef): st_lookup()'s 3rd parameter should be
	  a pointer of the variable which has the same size and alignment
	  as `char *'.

	* marshal.c (w_symbol, w_object): ditto.

	* parse.y (rb_intern): ditto.

Thu May 18 18:00:35 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.18.

	* lib/net/protocol.rb: Net::Version was removed.

	* lib/net/smtp.rb: use Socket.gethostname to get local host name.

Thu May 18 13:34:57 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (ruby_connect): should not have replaced
	  thread_write_select() by rb_thread_fd_writable().

Thu May 18 09:01:25 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* configure.in, ext/extmk.rb.in, lib/mkmf.rb: remove BeOS R3 support.
	  Make a shared library (libruby.so) only if the --enable-shared
	  option is specified.

	* instruby.rb: no longer use libruby.so.LIB and import.h.

	* io.c: fix READ_DATA_PENDING definition for BeOS (PowerPC).

Wed May 17 14:14:23 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_new_1): use /m instead of /p.

Wed May 17 02:22:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_polling): wait 0.06 second to let other
	  processes run.

	* process.c (rb_waitpid): avoid busy wait using rb_thread_polling.

	* file.c (rb_thread_flock): ditto.

	* parse.y (expr): avoid calling value_expr() twice.

Wed May 17 00:45:57 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* io.c (rb_io_binmode): should check PLATFORMs, not O_BINARY, sigh...

Wed May 17 00:40:15 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/config.h: add DLEXT2, now DLEXT on mswin32 is "so".

	* win32/config.status: ditto.

	* win32/ruby.def: add symbol "rb_big_divmod".

Tue May 16 19:45:32 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* intern.h: use EXTERN instead of extern.

	* win32/ruby.def: add rb_defout, rb_stdout, ruby_errinfo,
	  ruby_sourceline, ruby_sourcefile to work with eruby
	  reported by Hiroshi Saito <HiroshiSaito@pob.org>.
	  Export both ruby_xmalloc and xmalloc etc.

Tue May 16 17:00:05 2000  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>

	* eval.c (rb_thread_select): should check whether fds are null.

Tue May 16 11:51:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (pipe_open): synchronize subprocess stdout/stderr.

Mon May 15 15:38:09 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.h: exported symbols should be for xmalloc etc. are now
	  prefixed by 'ruby_', e.g. ruby_xmalloc().

	* eval.c (rb_thread_select): remove busy wait for select.

	* dir.c (glob): trailing path may be null, e.g. glob("**").

Mon May 15 14:48:41 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* io.c (rb_io_pid): new method; returns nil if no process attached
	  to the IO.

Mon May 15 01:18:20 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_s_popen): _exit after Proc execution.

Sun May 14 18:05:59 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* Makefile.in: missing/nt.c -> win32/win32.c

	* configure.in: bug fix; static linking on mingw32.

	* cygwin/GNUmakefile.in: remove VPATH.

	* ext/extmk.rb.in: Makefile set binmode with mingw32 on cygwin32.

	* lib/mkmf.rb: ditto.

	* win32/config.h: undef HAVE_SYS_FILE_H.

Sun May 14 02:02:48 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* lib/irb/ruby-lex.rb: '/' should be escaped in character class.

Sun May 14 00:54:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in, ...: support mingw32.

	* defines.h: ditto. undef EXTERN for tcl/tk on cygwin.

	* ext/*/extconf.rb: replace PLATFORM with RUBY_PLATFORM.

	* ext/socket/sockport.h: define IN_MULTICAST for missing IN_MULTICAST.

	* ext/tcltklib/tcltklib.c: remove declaration of rb_argv0.

	* file.c: should check S_IXGRP, S_ISGID, not NT.

	* io.c (rb_io_binmode): should check _IOBIN, O_BINARY, not PLATFORMs.

Sat May 13 14:21:15 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* io.c (rb_io_s_popen): should check whether a block is given.

Fri May 12 17:33:44 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): charset_not should not exclude
	  newline from matching set.

Thu May 11 22:51:05 2000  Ryunosuke Ohshima  <ryu@jaist.ac.jp>

	* pack.c (pack_pack): Bignum support.

	* pack.c (pack_unpack): ditto.

Thu May 11 21:19:29 2000  Hiroshi Igarashi  <iga@ruby-lang.org>

	* intern.h: add missing declarations of ruby API functions.

	* ruby.h: fix function name in declarations.

Thu May 11 22:29:25 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/md5/depend: add $(topdir)/config.h dependency to md5c.o.

	* ext/md5/extconf.rb: new file to add -DHAVE_CONFIG_H flag for Alpha.

Thu May 11 10:55:52 2000  Ryunosuke Ohshima  <ryu@jaist.ac.jp>

	* pack.c (pack_pack): packing BER compressed integer by `w'.

	* pack.c (pack_unpack): unpacking BER.

Thu May 11 00:37:55 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (parse_regx): remove in_brack.

Wed May 10 12:51:18 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (proc_options): move adding RUBYLIB and "." to the load
	  path after #! line parsing.

	* parse.y (parse_regx): should parse backslash escape like `\c['
	  here to avoid causing `unterminated regexp' error.

Wed May 10 00:19:53 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* MANIFEST, beos/GNUmakefile.in, configure.in: no longer need
	  beos/GNUmakefile.in to support BeOS R4.5.2 (Intel) as a result
	  of eban's Makefile.in change.

	* io.c: NOFILE is already defined on BeOS R4.5 (Intel) or later.

	* lib/matrix.rb: remove debug print.

	* regex.c: don't use nested comment.

Tue May  9 17:08:43 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (massign): no longer convert nil into empty array.

	* io.c (rb_io_s_popen): optional 3rd argument to give proc, which
	  will be executed in spawned child process.

Mon May  8 23:47:39 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* eval.c (rb_callcc): prev & next should be initialized to zero.

Mon May  8 23:17:36 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dln.c (dln_init): remove possible buffer overrun.  This is
	  suggested by Aleksi Niemela <aleksi.niemela@cinnober.com>.

	* dln.c (init_funcname): ditto.

Sat May  6 23:35:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (lhs): should allow `obj.Attr = 5' type expression.

Sat May  6 15:46:08 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/socket/extconf.rb: add a new configure option to force use
	  of the WIDE Project's getaddrinfo(): --enbale-wide-getaddrinfo.

Fri May  5 21:19:22 2000  MOROHOSHI Akihiko  <moro@remus.dti.ne.jp>

	* parse.y (yylex): allow '$1foo' and such.

Fri May  5 17:57:24 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.17.

	* lib/net/http.rb: write also port number in Host: field.

	* lib/net/http.rb: see Proxy-Connection: to decide socket connection.

Fri May  5 03:25:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_fastmap): charset_not for multibyte
	  characters excluded too many characters.

Tue May  2 13:23:43 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_schedule): little bit more impartial context
	  switching.

Tue May  2 09:50:03 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* configure.in: add DLDLIBS to set platform specific library
	  for extensions.

	* ext/extmk.rb.in: use @DLDLIBS@ instead of RUBY_PLATFORM choice.

	* lib/mkmf.rb: use CONFIG["DLDLIBS"] instead of RUBY_PLATFORM choice.

	* config_s.dj: add @DLDLIBS@.

	* win32/config.status: ditto.

	* win32/ruby.def: regular maintenance.

Mon May  1 23:42:44 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in, eval.c: add DLEXT2. now DLEXT on Cygwin is "so".

	* defines.h: use dllimport, dllexport for Cygwin 1.1.x.

	* ruby.h: ditto.

	* cygwin/GNUmakefile.in: ditto.

	* ext/Win32API/Win32API.c: directly "call" in asm statement for
	  gcc 2.95.x or newer.

Sat Apr 29 04:58:12 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* array.c (rb_ary_unshift_m): performance improvement.

Fri Apr 28 00:19:22 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* array.c (rb_ary_unshift_m): takes items to push.

Wed Apr 26 15:23:02 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_succ): insert carrying character just before
	  the leftmost alpha numeric character.

	* string.c (rb_str_succ): proper behavior for "".succ and "\377".succ.

	* string.c (rb_str_succ): use realloc and memmove.

Tue Apr 25 18:28:45 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.16.

	* lib/net/smtp.rb: add SMTP AUTH

Tue Apr 25 14:30:13 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_gets_internal): shortcut when rs == rb_default_rs.

Sat Apr 22 23:14:41 2000  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>

	* configure.in: MacOS X support.

Sat Apr 22 16:37:10 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.15.

	* lib/net/http.rb:  closing socket by watching both
	  user header and server response

Fri Apr 21 21:44:34 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* io.c (rb_io_s_pipe): should set FMODE_SYNC.

Thu Apr 20 16:59:22 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* eval.c (massign): `*lvalue = false' should assign `[false]' to
	  lvalue.

Wed Apr 19 08:35:08 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (rb_singleton_class): generate singleton class for
	  special constants: nil, true, false.

Wed Apr 19 02:09:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (rb_singleton_class): singleton method for nil, true,
	  false is possible now.

	* eval.c (rb_eval): ditto.

Tue Apr 18 18:54:25 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.14.

	* lib/net/http.rb: new method HTTP#head2.

	* lib/net/http.rb: get2/post2 does not raise exceptions.

Mon Apr 17 15:16:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_close): to detect some exceptional status, writable
	  IO should be flushed before close;

Sat Apr 15 18:29:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_collect_bang): Array#filter renamed.

Fri Apr 14 19:47:11 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.13.

	* lib/net/pop.rb: accept illegal timestamp

	* lib/net/http.rb: when body was chunked, does not set Content-Length:

Tue Apr 11 21:14:42 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* config_s.dj: add @sitedir@.
	* configure.in: add --with-sitedir=DIR option.
	* instruby.rb: use CONFIG["sitedir"].
	* lib/mkmf.rb: support 'make site-install'.
	* win32/config.status: add @sitedir@.

Tue Apr 11 16:25:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (rb_big_2comp): unnecessary lvalue cast removed.

Tue Apr 11 02:25:53 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (env_fetch): new method.

	* marshal.c (marshal_dump): accepts depth = nil for unlimited depth.

Sun Apr  9 20:49:19 2000  Dave Thomas  <Dave@Thomases.com>

	* parse.y (str_extend): Allow class variables to be expanded.

Fri Apr  7 02:03:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* error.c (rb_sys_fail): escape non-printable characters.

Thu Apr  6 20:10:47 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/extmk.rb.in (create_makefile): BeOS --program-suffix support.
	* lib/mkmf.rb (create_makefile): ditto.

Thu Apr  6 09:55:26 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* error.c (rb_sys_fail): need rb_exc_new2() call on BeOS.

Mon Apr  3 17:22:27 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_reopen): support tempfile.

	* eval.c (catch_i): should supply argument.

Sat Apr  1 22:50:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (r_object): wrong symbol restoration.

Sat Apr  1 21:30:53 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* io.c(rb_io_printf, rb_f_printf): should use rb_io_write.

Sat Apr  1 00:16:05 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (rb_gc_call_finalizer_at_exit): should be clear flags
	  before calling finalizers.

	* eval.c (specific_eval): can be called without SecurityError, if
	  $SAFE >= 4.

	* object.c (sym_inspect): inspect gives ":sym", to_s gives "sym".

Fri Mar 31 22:07:04 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.12.

	* lib/net/protocol.rb:  update Net::Protocol::Proxy#connect

	* lib/net/protocol.rb:  ReplyCode is not a class

	* lib/net/http.rb: header value format was change:
	  values do not include header name

	* lib/net/http.rb: header is not a Hash, but HTTPResponse

Thu Mar 30 12:19:44 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* enum.c (enum_find): rb_eval_cmd() should be called with array.

Tue Mar 28 13:57:05 2000  Clemens Hintze  <c.hintze@gmx.net>

	* ext/dbm/dbm.c (fdbm_invert): should return new hash.

	* ext/gdbm/gdbm.c (fgdbm_invert): ditto.

Tue Mar 28 00:58:03 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.11.

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: does not
	  dispatch any commands while dispatching command.

	* lib/net/protocol.rb: failed to get error class of
	  inherited ReplyCode

	* lib/net/http.rb: change feature of "get2", "post2"

Mon Mar 27 01:34:58 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.10.

	* lib/net/http.rb: return value of 'head' was wrong.

Sun Mar 26 17:47:35 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.9.

	* lib/net/smtp.rb: SMTP#do_ready wrongly took no arguments

Sat Mar 25 23:21:10 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (w_object): symbols should be converted to ID before
	  dumping out.

Sun Mar 25 16:52:48 2001  Koji Arai  <JCA02266@nifty.ne.jp>

	* file.c (rb_file_flock): do not trap EINTR.

	* missing/flock.c (flock): returns the value from lockf(2)
	  directly.

Fri Mar 24 18:26:51 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (test_check): should have checked exact number of arguments.

Fri Mar 24 21:02:11 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* signal.c (trap): should treat some symbols as the signal.

Fri Mar 24 06:58:03 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.8.

	* lib/net/http.rb:  post, get2, post2, get_body

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: separate
	  Command/Socket documentation.

Thu Mar 23 02:26:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_fptr_finalize): fptr may be null.

	* io.c (rb_io_s_new): now calls `initialize'.

	* io.c (rb_io_initialize): actual open done in this method.

	* io.c (rb_file_initialize): ditto.

	* eval.c (rb_eval): class variables in singleton class definition
	  is now handled properly (I hope).

Wed Mar 22 21:49:36 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* st.c (st_delete_safe): skip already deleted entry.

	* hash.c (rb_hash_delete): modify brace miss.

Wed Mar 22 08:53:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (exec_under): do not push cbase if ruby_cbase == under.

	* node.h (NEW_CREF0): preserve cbase nesting.

Tue Mar 21 12:57:50 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (rb_class_s_new): Class::new should call `inherited'.

Sat Mar 18 12:36:09 2000  Nobuyoshi Nakada  <nobu.nokada@softhome.net>

	* eval.c (rb_backtrace, make_backtrace): removed unused variable
	  `lev'.

	* eval.c (rb_attr): calls `method_added' at attribute definition.

	* eval.c (rb_mod_modfunc): calls `singleton_method_added' while
	  `module_function'.

	* eval.c (rb_eval): parameter to `method_added' and
	  `singleton_method_added' is Symbol.

	* eval.c (Init_eval): caches IDs for `method_added' and
	  `singleton_method_added'.

Sat Mar 18 11:25:10 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (rescue): allows `rescue Error in foo'.  experimental.
	  which is better this or preparing alias `exception' for `$!'?

Fri Mar 17 15:02:45 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_autoload_id): defining new autoload should be
	  prohibited for $SAFE > 4.

	* variable.c (rb_autoload_load): autoload should be possible for
	  $SAFE > 4.

	* eval.c (call_trace_func): should handle T_ICLASS properly.

Fri Mar 17 14:34:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_gsub): forgot to initialize str->orig.

Fri Mar 17 01:24:59 2000  Dave Thomas  <Dave@thomases.com>

	* string.c (rb_str_clone): forgot to copy str->orig if STR_NO_ORIG
	  is set by Array#pack.

Wed Mar 15 21:25:04 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* array.c (rb_ary_join): 'result' is always duplicated
	  before concat string.

Wed Mar 15 17:26:05 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_hash_s_create): unexpected recursive call removed.
	  this bug was found by Satoshi Nojo <nojo@t-samukawa.or.jp>.

Wed Mar 15 13:12:39 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (Init_Thread): Thread.join removed finally.

	* string.c (rb_str_chomp_bang): forgot to call rb_str_modify().

Mon Mar 13 16:12:13 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (block_pass): distinguish real orphan block and still
	  on-stack block passed by block argument.

Mon Mar 13 00:20:25 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (f_norm_arg): proper error message when constant comes
	  in formal argument list.  this message is suggested by Muvaw
	  Pnazte <bugathlon@yahoo.com>.

	* eval.c (rb_f_raise): proper error message when the first
	  argument is not an exception class/object.

	* string.c (rb_str_dup): dup now postpone buffer copy as long as
	  possible.  performance improved by lazy copying.

Sun Mar 12 13:58:52 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* signal.c (rb_f_kill): should treat some symbols as the signal.

Sat Mar 11 22:03:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_gsub): performance tune by avoiding buffer copy.

	* eval.c (rb_f_missing): check if argv[0] is ID.

Sat Mar 11 15:49:41 2000  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* struct.c (rb_struct_aref): struct aref by symbol.

Sat Mar 11 05:07:11 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* process.c (proc_setpriority): should return 0, not nil.

	* process.c (proc_setpgid): ditto.

Fri Mar 10 18:14:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (path_check_1): confusing buf and path.  this bug found
	  by <decoux@moulon.inra.fr>.

Fri Mar 10 09:37:49 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* MANIFEST: add beos/GNUmakefile.in.
	* configure.in: support BeOS R4.5.2 (Intel).
	* beos/GNUmakefile.in: new file to support BeOS R4.5.2 (Intel).

Thu Mar  9 11:13:32 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_fastmap): fixed embarrassing brace bug.

Thu Mar  9 01:36:32 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* missing/flock.c: emulate missing flock() with fcntl().

Thu Mar  9 00:29:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (sym_to_s): returns ":sym".

	* object.c (sym_id2name): separated from to_s; returns "sym".

Wed Mar  8 19:16:19 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.7.

	* lib/net/http.rb (connecting): returns header

Wed Mar  8 02:08:43 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y: escape expansion too early.

	* string.c (rb_f_scan): Kernel#scan added.

	* regex.c (re_compile_pattern): support \cX et al.

Tue Mar  7 01:44:27 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (set_stdin): simplified procedure, allows $stdin = DATA;
	  experimental.

	* io.c (set_outfile): ditto.

	* re.c (Init_Regexp): new method Regexp#last_match added; it's an
	  alternative for $~.

	* configure.in (DEFAULT_KCODE): KCODE_NONE should be the default.

	* dir.c (dir_s_rmdir): should return 0 on success.

	* signal.c: remove CWGUSI support.

Mon Mar  6 12:28:37 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (w_symbol): support symbol object.

	* util.c: make symbol as separated class.

	* error.c (Init_Exception): new exception RangeError.

	* ext/socket/socket.c (ip_addrsetup): should check length of hostname.

	* ext/socket/socket.c (ip_addrsetup): check newline at the end of
	  hostname.  These fixes suggested by Muvaw Pnazte <bugathlon@yahoo.com>.

Sun Mar  5 20:35:45 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/Win32API/Win32API.c (Win32API_initialize): should call
	  LoadLibrary() everytime and should assign the hdll to Win32API
	  object(protect the hdll from GC).

Sun Mar  5 18:49:06 2000  Nakada.Nobuyoshi  <nobu.nokada@softhome.net>

	* misc/ruby-mode.el (ruby-parse-region): not treat method `begin'
	  and `end' as reserved words.

	* misc/ruby-mode.el (ruby-font-lock-docs): ignore after `=begin'
	  and `=end'.

	* misc/ruby-mode.el (ruby-font-lock-keywords, hilit-set-mode-patterns):
	  added `yield' to keywords.

	* misc/ruby-mode.el (ruby-font-lock-keywords, hilit-set-mode-patterns):
	  matches keywords at end of buffer.

Sun Mar  5 18:08:53 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.6.

	* lib/net/http.rb:  allow to omit 'start'

Tue Feb 29 01:08:26 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* range.c (range_initialize): initialization done in `initialize';
	  `initialize' should not be called more than once.

	* object.c (Init_Object): default `initialize' should take zero
	  argument.

	* time.c (time_s_new): call `initialize' in Time::new.

Sat Feb 26 22:39:31 2000  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* string.c (rb_str_times): fix String#* with huge string.

Sat Feb 26 00:14:59 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (dir_s_new): call `initialize' in Dir::new.

Fri Feb 25 23:01:49 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ruby.h: export ruby_safe_level by EXTERN for mswin32.
	* win32/ruby.def: regular maintenance.

Fri Feb 25 22:12:46 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_reopen): IO#reopen should accept path as well.

	* string.c (rb_str_s_new): call `initialize' in String::new.

	* hash.c (rb_hash_s_new): call `initialize' in Hash::new.

	* array.c (rb_ary_s_new): call `initialize' in Array::new.

Fri Feb 25 12:50:20 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_start_timer): interval changed to 10ms from 50ms.

Fri Feb 25 06:42:26 2000  GOTOU YUUZOU  <gotoyuzo@notwork.org>

	* ext/socket/socket.c (ip_addrsetup): hostp should remain NULL if
	  host is nil.

Thu Feb 24 16:53:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_schedule): priority check for sleep expired
	  threads needed.

Wed Feb 23 14:22:32 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_join): forgot to initialize a local variable
	  `taint'.

Tue Feb 22 07:40:55 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (Init_Regexp): renamed to MatchData, old name MatchingData
	  remain as alias.

Tue Feb 22 00:20:21 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.5.

	* lib/net/session.rb: rename to protocol.rb

	* lib/net/protocol.rb: ProtocolSocket -> Net::Socket

	* lib/net/protocol.rb: Net::Socket#write, write_pendstr
	  can take block

	* lib/net/smtp.rb: new methods SMTP#ready SMTPCommand#write_mail

	* lib/net/pop.rb: POPMail#pop can take block

Sat Feb 19 23:58:51 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): pop_loop should not pop at forward jump.

Fri Feb 18 17:15:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (method_clone): method objects are now clonable.

Fri Feb 18 00:27:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_shared_variable_declare): shared variable (aka
	  class/module variable) introduced.  prefix `@@'. experimental.

	* class.c (rb_scan_args): new format char '&'.

Thu Feb 17 19:09:05 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (mypopen): don't close handle if it is not assigned.
	* win32/win32.c (my_open_osfhandle): support O_NOINHERIT flag.
	* win32/win32.c (win32_getcwd): rename getcwd to win32_getcwd
	  in order to avoid using the C/C++ runtime DLL's getcwd.
	  Use CharNext() to process directory name.
	* win32/win32.h: map getcwd to win32_getcwd.

Wed Feb 16 00:32:49 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (method_arity): nd_rest is -1 for no rest argument.

	* process.c (proc_waitpid): returns nil when waitpid(2) returns 0.

Tue Feb 15 01:47:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* process.c (rb_f_waitpid): pid_t should be signed.

Mon Feb 14 13:59:01 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): yylex yields wrong tokens for `:foo=~expr'.

	* ruby.c (load_file): exit if reading file is empty.

Mon Feb 14 03:34:52 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): `foo.bar=1' should be <foo><.><bar><=><1>,
	  not <foo><.><bar=><1>.

	* eval.c (rb_thread_restore_context): process according to
	  RESTORE_* is moved after longjmp().

	* eval.c (thread_switch): new function to process RESTORE_*.

Sun Feb 13 16:19:49 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ruby.c (require_libraries): don't access freed memory.

	* ruby.c (add_modules): ditto.

Fri Feb 11 12:06:22 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (parse_quotedwords): %w() need to split not only by mere
	  spaces, but by all whitespaces.

Thu Feb 10 02:12:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_index_m): did not support negative offset.

Wed Feb  9 21:54:26 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/getaddrinfo.c: gcc --traditional support.
	  Rearrange headers to work AC_C_CONST.
	* ext/socket/getnameinfo.c: ditto.
	* ext/socket/socket.c: mswin32: use double instead of long long.

Wed Feb  9 16:30:41 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (num_coerce): should return [y, x].

Wed Feb  9 11:07:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (ruby_prog_init): loadpath structure changed.

Tue Feb  8 02:07:33 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): optimize for \G at top.

	* regex.c (re_compile_pattern): \G introduced.

	* regex.c (re_match): ditto.

	* string.c (str_sub_bang): old behavior restored: bang method
	  returns nil if string not changed.

	* regex.c (re_compile_pattern): support independent subexpression
	  `(?>pattern)'. 

	* regex.c (re_match): ditto.

Mon Feb  7 15:51:08 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): now understands interrupts under Ruby.

Mon Feb  7 07:51:52 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_uniq_bang): always return an Array.

	* array.c (rb_ary_compact_bang): ditto.

	* array.c (rb_ary_flatten_bang): ditto.

	* hash.c (rb_hash_reject): returns a Hash, not an Array.

	* hash.c (env_reject): ditto.

Fri Feb  4 10:20:25 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (scan_once): scan now leaves information about the last
	  successful pattern match in $&.

	* io.c (rb_io_close): should not check closed IO.

Fri Feb  4 05:44:01 2000  Kentaro Inagaki  <inagaki@tg.rim.or.jp>

	* ext/socket/socket.c (s_recv): TRAP_BEG after retry entry.

Wed Feb  2 22:33:45 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* eval.c (rb_thread_start): receives argument from outside, like
	  `Thread::start(1,2,3){|a,b,c| ... }'.

Wed Feb  2 22:14:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_regsub): should check regs->num_regs.

	* re.c (rb_reg_search): remove matchcache, use static struct
	  re_register instead. 

	* re.c (match_getter): avoid cloning match data.

Wed Feb  2 17:12:15 2000  Dave Thomas  <Dave@Thomases.com>

	* samples/eval.rb: Rescue new ScriptError exception

Wed Feb  2 02:06:07 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_gsub_bang): gsub! now leaves information about the
	  last successful pattern match in $&.

Mon Jan 31 15:24:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_sub_bang): bang method returns string always.
	  experimental.

Sun Jan 30 17:58:09 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* eval.c: arrange to use setitimer(2) for BOW, DJGPP

	* defines.h: ditto. use random(3) on cygwin b20.1.

Sun Jan 30 17:20:16 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* eval.c: use getrlimit(2) on DJGPP.

Thu Jan 27 01:27:10 2000  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>

	* dir.c (glob): glob pattern "/*" did not match.

Wed Jan 26 22:30:47 2000  Shigeo Kobayashi  <shigeo@tinyforest.gr.jp>

	* numeric.c (flo_modulo): wrong result for negative modulo.

Wed Jan 26 02:01:57 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (test_c): should use S_ISCHR.

	* file.c (rb_stat_c): ditto.

	* string.c (rb_str_each_line): should propagate tainting.

Tue Jan 25 04:01:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (rb_obj_freeze): all objects made freezable.

Tue Jan 25 00:37:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: use AC_CHECK_TOOL for cross compiling.

Mon Jan 24 19:01:54 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* array.c (rb_protect_inspect): should be checked by id of
	  objects; not by object themselves.

Mon Jan 24 18:48:08 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* eval.c (rb_eval): too many warnings;  warned on every method
	  overriding.  should be on method discarding.

Mon Jan 24 02:56:44 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): -2.abs should be `(-2).abs' to accomplish the
	  principle of less surprise.  `+2' too.

	* eval.c (rb_eval): when defining class is already there, and
	  superclass differ, throw away the old class.

	* variable.c (rb_const_set): gives warning again on constant
	  redefinition.

	* error.c (Init_Exception): SyntaxError, NameError, LoadError and
	  NotImplementError are subclasses of ScriptError<Exception, not
	  StandardError.  experimental.

Sat Jan 22 00:00:41 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (parse_quotedwords): no longer use `String#split'.
	  and enable space escape within quoted word list.
	  e.g. %w(a\ b\ c abc) => ["a b c", "abc"].

	* string.c (rb_str_slice_bang): new method `slice!'.

Fri Jan 21 21:56:08 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.4.

	* lib/net/http.rb: can receive messages which have
	  no Content-Length:.

Fri Jan 21 16:15:59 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thgroup_s_new): new class ThreadGroup.

Tue Jan 18 12:24:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* struct.c (Init_Struct): remove Struct's own hash and eql?.

Sat Jan 15 22:21:08 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* eval.c (search_method): argument klass may be 0.

Sat Jan 15 15:03:46 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* enum.c (enum_index): remove this method.

	* enum.c: remove use of pointers to local variables. find,
	  find_all, min, max, index, member?, each_with_index, 

	* eval.c (massign): multiple assignment does not use to_a anymore.
	  experimental.

Fri Jan 14 12:22:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_replace): use memmove instead of memcpy for
	  overwrapping strings (e.g. a[1] = a).

Thu Jan 13 11:12:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (arg_add): use new node, ARGSPUSH.

Mon Jan 10 18:32:28 2000  Koji Arai  <JCA02266@nifty.ne.jp>

	* marshal.c (w_object): forgot an argument to call w_ivar().

Sun Jan  9 18:13:51 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* random.c: first was not defined unless HAVE_RANDOM.

Sat Jan  8 19:02:49 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_sysread): raise IOError for buffered IO.

	* ext/socket/socket.c (s_recv): ditto.

Fri Jan  7 00:59:29 2000  Masahiro Tomita  <tommy@tmtm.org>

	* io.c (io_fread): TRAP_BEG/TRAP_END added around getc().

Thu Jan  6 00:39:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* random.c (rb_f_rand): should be initialized unless srand is
	  called before.

Wed Jan  5 16:59:34 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.3.

	* lib/net/session.rb: Session -> Protocol, ...

	* lib/net/http.rb: HTTPCommand implementation was changed.

Wed Jan  5 02:14:46 2000  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* parse.y: Fix SEGV on empty parens with UMINUS or UPLUS.

Tue Jan  4 22:25:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (stmt): `() while cond' dumped core.

Tue Jan  4 06:04:14 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* configure.in: modify for cross-compiling.
	  use target_* instead of host_*. 
	  use AC_CANONICAL_TARGET.

	* Makefile.in: ditto.

	* cygwin/GNUmakefile.in: ditto.

Sat Jan  1 13:26:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_yield_0): force_recycle ruby_dyna_vars to gain
	  performance.

	* array.c (rb_ary_delete_at_m): takes same argument pattern with
	  rb_ary_aref.

Sat Jan  1 10:12:26 2000  Nobuyoshi Nakada  <nobu.nokada@softhome.net>

	* ruby.h,util.c (rb_special_const_p): peep hole optimization.

	* ruby.h,util.c (rb_test_false_or_nil): removed.

	* ruby.h (RTEST, SPECIAL_CONST_P): peep hole optimization.

	* ruby.h (FL_ABLE, FL_SET, FL_UNSET, FL_REVERSE): made expressions
	  not statements.

	* ruby.h (OBJ_INFECT): newly added macro which copies taint from
	  `s' to `x'.

Sat Jan  1 02:04:18 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_safe_level): new method.

	* eval.c (rb_yield_0): recycle dyna_var_map to reduce object
	  allocation. 

Fri Dec 31 00:52:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c: thread independent trace_func not needed.

Thu Dec 30 14:47:31 1999  akira yamada  <akira@ruby-lang.org>

	* configure.in: specifies -soname in LIBRUBY_DLDFLAGS on linux
	  platforms.

Thu Dec 30 10:51:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c,io.c,hash,c,re.c,string.c: `_m' suffix instead of
	  `_method' for wrapper functions to implement method,
	  e.g. `rb_str_join_m()'.

Thu Dec 30 02:08:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (rb_cstr2inum): non-numeric format check added.
	  currently it works only with base == 0 (i.e. Integer()).

	* bignum.c (rb_str2inum): now takes VALUE to 1st argument.  null
	  byte check added.

	* array.c (rb_ary_replace): unless replacement is an array,
	  replacement shall be converted to array by `[replacement]', not
	  by `replacement.to_a'.

	* array.c (rb_ary_plus): right operand must be an array.

	* array.c (rb_ary_concat): argument must be an array.

Mon Dec 27 12:35:47 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/socket.c (sock_finalize): mswin32: fix socket handle leak.

	* win32/win32.c (myfdclose): ditto.

Sun Dec 26 23:15:13 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (mypopen): raise catchable error instead of rb_fatal.
	* win32/win32.c (mypclose): fix process handle leak.

Sun Dec 26 16:17:11 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/Win32API/Win32API.c (Win32API_initialize): use UINT2NUM
	  instead of INT2NUM to set __dll__ and __proc__.

Sat Dec 25 00:08:59 1999  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>

	* ext/Win32API/Win32API.c (Win32API_Call): remove 'dword ptr'
	  from _asm.

Fri Dec 24 10:26:47 1999  Koji Oda  <oda@bsd1.qnes.nec.co.jp>

	* win32/win32.h: use "C++" linkage.

Fri Dec 24 02:00:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (THREAD_ALLOC): should initialize th->trace.

Fri Dec 24 00:43:39 1999  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>

	* io.c (pipe_open): check for `fptr->f == NULL'.
	* win32/win32.c (mypopen): STDERR does not work during ` function.

Wed Dec 22 22:50:40 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.2.

	* lib/net/http.rb: HTTP support is enhanced a little

	* lib/net/http.rb: support proxy

Tue Dec 21 17:21:28 1999  Koji Oda  <oda@bsd1.qnes.nec.co.jp>

	* ext/socket/socket.c (sock_finalize): mswin32: fix FILE* leak.

Tue Dec 21 05:33:56 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.1.

	* lib/net/http.rb: support HTTP chunk

Mon Dec 20 19:08:12 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* file.c (rb_file_s_expand_path): handle dir separator correctly.

Sun Dec 19 22:56:31 1999  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>

	* lib/find.rb: support dosish root directory.
	* win32/Makefile: ditto.
	* win32/config.status: ditto.
	* win32/win32.c (opendir): ditto.
	* win32/win32.c (opendir): use CharPrev() to get last character
	  of the directory name.

Sat Dec 18 03:00:01 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (path_check_1): check should be done by absolute path. 

	* marshal.c (r_ivar): should restore generic_ivar too.

	* marshal.c (w_ivar): should dump generic_ivar too.

Fri Dec 17 22:46:46 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.0.

	* lib/net/http.rb: test release

	* lib/net/session.rb: support class swapping

	* lib/net/session.rb: Socket#flush_rbuf

	* lib/net/session.rb: doquote -> Net.quote

Fri Dec 17 19:27:43 1999  IWAMURO Motonori  <iwa@mmp.fujitsu.co.jp>

	* eval.c (rb_load): should initialize ruby_frame->last_class.

Wed Dec 15 01:35:29 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (proc_options): option to change directory changed to
	  `-C' like tar.

	* ruby.c (proc_options): argv boundary check for `-X'.

Mon Dec 13 15:15:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_adjust_startpos): separate startpos adjustment
	  because of major performance drawback.

	* class.c (rb_singleton_class): tainted status of the singleton
	  class must be synchronized with the object.

	* eval.c (rb_thread_schedule): implement thread priority.

Sat Dec 11 03:34:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (mark_hashentry): key should be VALUE, not ID.

	* io.c (argf_eof): should check next_p too.

Thu Dec  9 18:09:13 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* error.c (exc_set_backtrace): forgot to declare a VALUE argument.

Thu Dec  9 14:19:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (rb_obj_taint): explicit tainting must be prohibited at
	  level 4 to prevent polluting trusted object by untrusted code.

	* file.c: file operations (stat, lstat, chmod, chown, umask,
	  truncate, flock) are prohibited in level 2 (was level 4).

Wed Dec  8 11:48:23 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_f_require): prohibiting require() in the secure mode
	  cause serious autoloading error.

	* variable.c (rb_obj_instance_variables): don't need to prohibit
	  to get list of instance variable names of untainted objects.

	* variable.c (rb_ivar_get): don't need to prohibit to get instance
	  variables of untainted objects.

	* variable.c (rb_mod_remove_const): should prohibit constant
	  removals too. 

Wed Dec  8 09:23:01 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): should try autoloading before defining
	  class/module at the toplevel.

Tue Dec  7 22:15:30 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* configure.in: Modified rb_cv_rshift_sign detect routine and
	  more simple/fast RSHIFT() for hpux-10.x.

Tue Dec  7 11:16:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (Init_eval): calculate stack limit from rlimit where
	  getrlimit(2) is available.

Tue Dec  7 09:57:33 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* file.c (rb_file_ftype): should have removed mode_t.

Mon Dec  6 15:55:30 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* numeric.c (fix_rshift): Fix -1 >> 32 returned 0 (should be -1).

	* numeric.c (fix_rshift): Fix  1 >> -1 returned 0 (should be 2).

Mon Dec  6 11:47:23 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (rb_f_sprintf): formatted string must be tainted if
	  any of parameters is a tainted string.

	* file.c (rb_file_s_expand_path): expanded file path need not to
	  be tainted always.

Sun Dec  5 20:25:29 1999  Katsuhiro Ueno  <unnie@blue.sky.or.jp>

	* eval.c (Init_Proc): simple typo.

	* gc.c (add_heap): sizeof(RVALUE*), not sizeof(RVALUE).

Sat Dec  4 01:40:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): adjust startpos for multibyte match unless
	  the first pattern is forced byte match.

	* bignum.c (rb_big_rand): should not use rand/random where drand48
	  may be available.  RANDOM_NUMBER should be provided from outside.

Fri Dec  3 09:54:59 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (moreswitches): there may be trailing garbage at #!
	  line.

	* eval.c (rb_f_require): should check require 'feature.o' too.

Thu Dec  2 11:58:15 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* eval.c (rb_thread_loading): should maintain loading_tbl.

Thu Dec  2 10:21:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_loading_done): wrong parameter to st_delete().

Wed Dec  1 11:24:06 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* ruby.c (process_sflag): process -s properly (should not force `--').

Wed Dec  1 09:47:33 1999  Kazunori NISHI  <kazunori@swlab.csce.kyushu-u.ac.jp>

	* string.c (rb_str_split_method): should increment end too.

Tue Nov 30 18:00:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c: MARSHAL_MINOR incremented; format version is 4.2.

	* marshal.c (w_object): distinguish class and module.

	* marshal.c (w_object): save hash's default value.

	* marshal.c (r_object): restore hash's default value.

Tue Nov 30 01:46:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_source): generated source string must be tainted if
	  regex is tainted.

	* file.c (rb_file_s_basename): basename should not be tainted
	  unless the original path is tainted.

	* file.c (rb_file_s_dirname): ditto.

Mon Nov 29 20:42:13 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* file.c (stat_new): Struct::Stat -> File::Stat; Stat is no longer
	  a Struct.

Mon Nov 29 15:28:52 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_path2class): evaluated value from path should be
	  module or class.

Fri Nov 26 18:12:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_exec_end_proc): should remove only end_procs defined
	  within load wrapper.

	* eval.c (rb_load): save and restore ruby_wrapper around loading.

	* eval.c (rb_mark_end_proc): mark end procs registered by END{} or
	  at_exit{}. 

	* eval.c (rb_set_end_proc): should not call rb_global_variable()
	  on heap address;  it crashed mod_ruby.

Mon Nov 22 14:07:24 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* ruby.c (proc_options): variable e_script should be visited by
	  garbage collector.

Sat Nov 20 10:10:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (inspect_i): value may be nil, check revised.

Fri Nov 19 18:06:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (glob): recursive wildcard match by `**' ala zsh.

Fri Nov 19 11:44:26 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* variable.c: was returning void value.

Fri Nov 19 03:57:22 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* file.c: add methods Stat struct class to reduce stat(2).

Thu Nov 18 16:18:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/pstore.rb: mutual lock by flock(2).

Thu Nov 18 11:44:13 1999  Masahiro Tomita  <tommy@tmtm.org>

	* io.c (read_all): should check bytes too.

Wed Nov 17 02:40:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (Init_IO): $defout (alias of $>) added.

Tue Nov 16 09:47:14 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/pstore.rb: add mutual lock using symlink.

Mon Nov 15 16:50:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* enum.c (enum_grep): non matching grep returns an empty array, no
	  longer returns nil.

	* enum.c (enum_grep): grep with block returns collection of
	  evaluated values of block over matched elements.

Mon Nov 15 04:50:33 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* re.c (rb_reg_source): should not call rb_reg_expr_str()
	  everytime.

Sat Nov 13 07:34:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_mod_constants): traverse superclasses to collect
	  constants.

	* eval.c (assign): modified for shared variables.

	* eval.c (rb_eval): search nested scope, then superclasses to
	  assign shared variables within methods.

	* eval.c (rb_eval): remove warnings from constants modification,
	  because they are no longer constants.

	* parse.y (node_assign): modified for shared variables.

	* parse.y (assignable): allow constant assignment in methods;
	  constants should be called `shared variable'.

Fri Nov 12 23:52:19 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* process.c (rb_f_system): argument check for NT, __EMX__, DJGPP.

Wed Nov 10 21:54:11 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* hash.c (rb_any_cmp): Fixed return without value.

Wed Nov 10 17:57:06 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c: incorporate <yasuf@big.or.jp>'s sprintf patch at
	  [ruby-dev:7754]. 

Wed Nov 10 08:28:53 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_call0): supply class parameter for each invocation.

Tue Nov  9 13:21:04 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* configure.in: AC_MINIX move to before AC_EXEEXT and AC_OBJEXT.

Mon Nov  8 19:52:29 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* configure.in: Renamed AC_CHAR_UNSIGNED to AC_C_CHAR_UNSIGNED.

	* configure.in: Added default to AC_CHECK_SIZEOF().

Mon Nov  8 14:28:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (stmt): rescue modifier added to the syntax.

	* keywords: kRESCUE_MOD added.

	* eval.c (rb_f_eval): fake outer scope when eval() called without
	  bindings.

	* eval.c (rb_f_binding): should copy last_class in the outer frame too.

Sun Nov  7 18:31:04 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* eval.c (is_defined): last_class may be 0.

Sat Nov  6 19:26:55 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* Makefile.in: Added depend entry make parse.@OBJEXT@ from parse.c
	  for UCB make

Thu Nov  4 17:41:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): \< (wordbeg), \> (wordend) disabled.

Wed Nov  3 08:52:57 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>

	* io.c (Init_IO): forgot to use INT2FIX() around SEEK_SET, etc. 

Wed Nov  3 00:25:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_split_method): use mbclen2() to handle kcode
	  option of regexp objects.

Mon Nov  1 14:22:15 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* eval.c (rb_eval): reduce recursive calls to rb_eval()
	  case of ||= and &&= .

Sun Oct 31 13:12:42 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* regex.c (re_compile_pattern): wrong [\W] match.

Fri Oct 29 16:57:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/nkf/lib/kconv.rb: new String methods (kconv, tojis, toeuc,
	  tosjis).

	* time.c (time_s_at): now accepts optional second argument to
	  specify micro second.

Thu Oct 28 13:35:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_split_method): should be mbchar aware with
	  single char separators.

Wed Oct 27 12:57:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* random.c (rb_f_srand): random seed should be unsigned.

Tue Oct 26 23:58:15 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_collect): collect for better performance.

Tue Oct 26 19:20:54 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* marshal.c (r_object): should register class/module objects.

Sat Oct 23 15:59:39 1999  Takaaki Tateishi  <ttate@jaist.ac.jp>

	* process.c (rb_f_system): should require at least one argument.

Sat Oct 23 12:42:44 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* enum.c (enum_collect): collect without block will collect
	  elements in enumerable.

Thu Oct 21 16:14:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (moreswitches): function to process string option;
	  the name is stolen from perl (not implementation).

	* ruby.c (proc_options): use RUBYOPT environment variable to
	  retrieve the default options.

	* dir.c (fnmatch): use eban's fnmatch; do not depend on system's
	  fnmatch (which may have portability problem) anymore.

Wed Oct 20 15:14:24 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (marshal_load): should protect the generated object
	  table (arg->data) from GC.

Mon Oct 18 16:15:52 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/nkf/nkf.c (rb_nkf_kconv): output should be NUL terminated.

Mon Oct 18 09:03:01 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb: 1.0.3

	* lib/net/pop.rb: new methods POP3Command#uidl, POPMail#uidl.

Sun Oct 17 03:35:33 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>

	* array.c (rb_ary_pop): forgot some freeze checks.

Sat Oct 16 12:57:53 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* array.c (rb_ary_sort): always returns the copied array.

Fri Oct 15 22:50:41 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* error.c (sys_nerr): on CYGWIN, it is _sys_nerr.

Fri Oct 15 01:32:31 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* io.c (rb_io_ctl) :need to use NUM2ULONG, not NUM2INT.

	* ext/Win32API/Win32API.c (Win32API_Call): need to use NUM2ULONG,
	  not NUM2INT.

Fri Oct 15 00:22:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (Init_Regexp): super class of the MatchingData, which was
	  Data, to be Object.

	* eval.c (ruby_run): evaluate required libraries before load &
	  compiling the script.

	* parse.y (lex_getline): retrieve a line from the stream, saving
	  lines in the table in debug mode.

	* eval.c (call_trace_func): treat the case ruby_sourcefile is null.

Thu Oct 14 02:00:10 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (string): compile time string concatenation.

Wed Oct 13 07:28:09 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb: 1.0.2

	* lib/net/session.rb: new method Session#set_pipe.

	* lib/net/session.rb, smtp.rb, pop.rb: add RD documentation.

Wed Oct 13 02:17:05 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* array.c (rb_ary_plus): remove recursion.

	* array.c (rb_ary_sort_bang): detect modify attempt.

Wed Oct 13 02:17:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (block_pass): should copy block to prevent modifications.
	  tag in the structure should be updated from latest prot_tag.

	* eval.c (proc_s_new): tag in struct BLOCK should not point into
	  unused stack.

	* dir.c (dir_s_glob): iterate over generated matching filenames if
	  the block is given to the method.

	* array.c (rb_ary_at): new methods; at, first, last.

	* hash.c (rb_hash_fetch): raises exception unless the default
	  value is supplied.

	* hash.c (rb_hash_s_create): need not remove nil from value.

	* hash.c (rb_hash_aset): setting value to nil does not remove key
	  anymore.

Tue Oct 12 22:29:04 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_read): length may be 0 or negative.

Tue Oct 12 13:26:27 1999  Jun-ichiro itojun Hagino  <itojun@itojun.org>

	* signal.c (posix_signal): RETSIGTYPE may be void.

Tue Oct 12 03:28:03 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* array.c (rb_ary_delete_at): allows negative position.

Mon Oct 11 17:42:25 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* parse.y (rb_intern): should generate distinct ID_ATTRSET symbols
	  for the name with multiple `='s at the end.

	* Makefile.in (CPPFLAGS): separate cpp flags from CFLAGS.

Mon Oct 11 07:27:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): should not execute the `else' clause on the
	  case the exceptions are handled by the `rescue' clause.

	* signal.c (Init_signal): ignore SIGPIPE by default.

Wed Oct  6 17:13:19 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* ruby.c (addpath): rubylib_mangled_path() modified.

Mon Oct  4 12:42:32 1999  Kazuhiko Izawa  <izawa@erec.che.tohoku.ac.jp>

	* pack.c (pack_unpack): % in printf format should be %%.

Mon Oct  4 10:01:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_obj_instance_variables): should always return
	  array for all object can have instance variables now.

Mon Oct  4 00:08:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (OFF16): need to adjust pointer address to pack/unpack on
	  64bit machines.

Sun Oct 03 03:05:59 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* time.c (time_arg): mktime y2k problem.

Sun Sep 26 16:54:45 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* parse.y (here_document): `\r' handling for here documents.

Wed Sep 22 09:20:11 1999  Masahiro Tomita  <tommy@tmtm.org>

	* ext/socket/socket.c: SOCKS5 support.

Wed Sep 22 07:33:23 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb: 1.0.1

	* lib/net/pop.rb: APOP did not work.

	* lib/net/pop.rb: modify the way to make APOP challenge.

Wed Sep 22 00:35:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_include): should return boolean value.

	* regex.c (re_compile_fastmap): wrong comparison with mbc.

	* eval.c (specific_eval): default sourcefile name should be
	  "(eval)" for module_eval etc.

Wed Sep 22 00:06:07 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/Makefile: update rules.

	* io.c (io_fread): should not assign in char, it maybe -1.

Tue Sep 21 23:57:54 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (call_trace_func): should not propagate retval in
	  trace_func. 

Mon Sep 20 21:35:39 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (myselect): assume non socket files are always
	  readable/writable.

Mon Sep 20 01:08:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_fread): should not block other threads.

	* io.c (rb_io_synchronized): renamed from rb_io_unbuffered(); do
	  not call setbuf(NULL) anymore.

Sat Sep 18 13:45:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* stable version 1.4.2 released.

Fri Sep 17 23:24:17 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* eval.c (rb_f_missing): dumped core if no argument given.

Fri Sep 17 23:21:06 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* win32/win32.c (myselect): translate WSAEINTR, WSAENOTSOCK into
	  UNIX errno constants.

Fri Sep 17 00:52:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (arg): assignable() may return 0.

Thu Sep 16 20:46:23 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* eval.c (rb_eval): was doubly evaluating the return expression.

Thu Sep 16 18:40:08 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* stable version 1.4.1 released.

Thu Sep 16 11:33:22 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* string.c (rb_str_match): should return nil.

Wed Sep 15 22:46:37 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_s_quote): should quote `-' too.

Tue Sep 14 15:23:22 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>

	* parse.y (yylex): no need to ignore `\r' here.

	* parse.y (nextc): strip `\r' from text.

	* parse.y (nextc): support `__END__\r\n' type terminator.

Mon Sep 13 10:49:19 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* eval.c (rb_eval): needless RTEST(ruby_verbose) removed.

Mon Sep 13 09:10:11 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/net/session.rb, smtp.rb, pop.rb: 1.0.0

Wed Sep  8 11:37:38 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* time.c (make_time_t): bit more strict comparison.

Tue Sep  7 00:50:56 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* range.c (range_each): use rb_str_upto() for strings.

	* string.c (rb_str_upto): set upper limit by comparing curr <= end.

	* range.c (range_each): should check equality to handle magic
	  increment.

Mon Sep  6 22:43:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): break/next/redo available within -n/-p loop.

Fri Sep  3 11:14:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* compar.c (cmp_equal): should not raise exception; protect by
	  rb_rescue().

Thu Sep  2 05:23:05 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* file.c (rb_file_s_expand_path): use dirsep, instead of character
	  literal '/'.

	* file.c (rb_file_s_expand_path): reduce multiple dirsep at the top.

Wed Sep  1 00:28:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_call): call rb_undefined() if a method appears not to
	  be exist explicitly from cache.

	* eval.c (rb_method_boundp): check method cache before calling
	  rb_get_method_body().

	* eval.c (rb_get_method_body): store method non-existence
	  information in the cache.

	* random.c (rb_f_srand): use getpid(2) to generate seed.

	* regex.c (re_match): do not apply partial mbc match for
	  charset_not.

	* regex.c (re_compile_pattern): put extended literal prefix (0xff)
	  only before numeric literals, not before all >0x80 char.

	* regex.c (re_compile_pattern): put numeric literal in extended
	  charset region, not normal charset bits.

	* regex.c (re_compile_fastmap): calculate fastmap for charset and
	  charset_not to treat numeric literal (e.g. \246) specially.

Fri Aug 28 17:32:55 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* eval.c (rb_eval): should set return value (nil) explicitly if a
	  value is omitted for return statement.

Thu Aug 26 15:06:11 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>

	* gc.c (rb_gc): local variables may be placed beyond stack_end, so
	  use an address from alloca(1) on non C_ALLOCA platforms.

Thu Aug 26 01:24:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (rb_f_sprintf): "%%" is legal, but "%3.14%" is not.

Mon Aug 23 00:00:54 1999  Tsukada Takuya  <tsukada@fminn.nagano.nagano.jp>

	* regex.c (re_compile_fastmap): wrong macro caused memory leak.

Sat Aug 21 11:30:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (ADJ): should not adjust addresses to data on heap.

Fri Aug 20 20:50:58 1999  Kenji Nagasawa  <kenn@hma.att.ne.jp>

	* defines.h (PATH_SEP): path separator is ";" for OS/2.

Thu Aug 19 10:50:43 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* gc.c (rb_gc): add volatile to avoid GCC optimize bug(?).

Wed Aug 18 23:48:10 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* due to disk trouble, some change records were lost.  several
	  modification made to eval.c, gc.c, io.c, pack.c,
	  ext/extmk.rb.in, and lib/mkmf.rb.

Fri Aug 13 15:41:39 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* stable version 1.4.0 released.

Fri Aug 13 03:16:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (argf_forward): since $stdout may be non-IO, ARGF.file is
	  not guaranteed to be IO.  check and forwarding added to every ARGF
	  method.

	* io.c (set_outfile): $stdout/$stderr may not be IO now.

	* io.c (set_stdin): $stdin may not be IO now.

	* range.c (rb_range_beg_len): round `end' to length as documented.

	* io.c (Init_IO): preserve original stdin/stdout/stderr.

Thu Aug 12 13:44:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (Init_load): require receives 1 argument.

	* eval.c (frame_dup): should clear tmp to avoid dangling
	  references.

Wed Aug 11 13:33:13 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* eval.c (rb_eval): no automatic aggregate initialization.

	* eval.c (module_setup): ditto.

Wed Aug 11 18:18:41 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* eval.c (yield_under_i): automatic aggregate initialization is an
	  ANSI feature.

Wed Aug 11 10:10:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): parse `[].length==0' as `([].length)==0', not
	  `([].length=)=0'

	* parse.y (yylex): parse `[].length!=0' as `([].length)!=0', not
	  `([].length!)=0'

	* parse.y (peek): peek-in lexical buffer.

Wed Aug 11 00:34:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): bug on backward jump adjustment concerning
	  stop_paren.

Tue Aug 10 14:54:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/nkf/nkf.c (rb_nkf_guess): binary detection was wrong.

Tue Aug 10 00:07:36 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_clone): should use CLONESETUP().

Mon Aug  9 23:57:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.h (CLONESETUP): should have copied generic instance
	  variables too.

Mon Aug  9 10:46:54 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/extconf.rb: add check for <arpa/nameser.h> and
	  <resolv.h>.

Sat Aug  7 13:19:06 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* numeric.c (flo_cmp): comparing NaN should not return value.
	  raises FloatDomainError.

Sat Aug  7 03:09:08 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (blk_free): free copied frames too.

	* eval.c (frame_dup): should copy previous frames from stack to
	  heap to preserve frame information.

Fri Aug  6 15:01:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.3.7 - version 1.4 beta

	* ext/socket/socket.c (s_recv): UDPsocket#recvfrom now returns
	  IPsocket#addr information.

	* array.c (rb_ary_subary): ary[-3,3] should not return nil.

Thu Aug  5 10:58:01 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_mark): protect old ruby_frame from GC during it
	  replaced by eval().

	* eval.c (eval): do not modify frame.prev; binding should preserve
	  information about calling() too.

	* eval.c (rb_yield_0): no arity check for mere yield; but only for
	  Proc#call.

Tue Aug  3 22:07:13 1999  Kazuhiro HIWADA  <hiwada@kuee.kyoto-u.ac.jp>

	* object.c (rb_mod_clone): should check if iv_tbl, m_tbl are
	  initialized.

Tue Aug  3 19:03:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_any_cmp): use rb_with_disable_interrupt() to ensure
	  clearance of rb_prohibit_interrupt even on failure.

	* eval.c (rb_with_disable_interrupt): new function added.

Sat Jul 31 23:23:44 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_create_0): set THREAD_RAISED flag on thread
	  termination by exception.

	* eval.c (rb_thread_join): `$!' may not be nil for the threads
	  created in rescue clause.

	* eval.c (rb_thread_status): ditto.

	* eval.c (rb_thread_join): should re-raise exception for already
	  dead threads too.

Fri Jul 30 17:56:54 1999  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>

	* object.c (rb_mod_ge): wrong comparison.

Fri Jul 30 12:15:44 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/tcltklib/extconf.rb: win32 support.

	* lib/mkmf.rb: use append_library().

	* ext/extmk.rb.in: ditto.

Fri Jul 30 02:11:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_delete): should return nil for deleting non
	  existing item.

	* io.c (rb_io_close): call rb_sys_wait() on explicit close.

	* io.c (rb_io_fptr_close): do not call rb_sys_wait() on finalize.

	* eval.c (yield_under_i): cbase context should be maintained for
	  Module#module_eval().  suggested by <inaba@st.rim.or.jp>.

Wed Jul 28 01:18:28 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* Makefile.in: add -I$(hdrdir)/lib to install using ftools.

	* util.c: use HAVE_FCNTL_H, not HAVE_FCNTL

Wed Jul 28 18:24:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.3.6 - version 1.4 alpha

Tue Jul 27 09:38:08 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* eval.c (rb_eval): reduce recursive rb_eval() calls by
	  NODE_BLOCKs. 

Tue Jul 27 01:20:40 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* file.c (rb_file_s_expand_path): drive letter patch.

Mon Jul 26 02:36:31 1999  Shugo Maeda  <shugo@netlab.co.jp>

	* eval.c (rb_load): should clear ruby_nerr.

	* eval.c (rb_thread_join): oldbt should not be empty to unshift.

Sun Jul 25 12:09:16 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* dir.c (push_braces): should treat nested braces.

Fri Jul 23 02:49:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_hash_clear): dummy argument added; suggested by
	  <eguchi@shizuokanet.ne.jp>.  thanks.

Thu Jul 22 19:37:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_join): get_backtrace() may return Qnil.
	  typecheck added.

Tue Jul 20 14:36:43 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* range.c (range_each): do not treat String specially (for future
	  override).

Tue Jul 20 02:28:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_gets): $_ should be nil, when get returns nil.

	* io.c (rb_f_gets): ditto.

Mon Jul 19 17:13:09 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_fastmap): should continue fastmap compile
	  for anychar_repeat, for it's repeat anyway.

Mon Jul 26 13:33:45 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* lib/jcode.rb: replaced by faster code.

Mon Jul 19 01:57:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/mkmf.rb: no longer use install program.

	* ext/extmk.rb.in: use miniruby to install programs.

Sat Jul 17 00:06:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (ipaddr): don't do reverse lookup if
	  attribute do_not_reverse_lookup is set for socket classes.
	  Experimental.  Note this is a global attribute.

Fri Jul 16 22:18:29 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_eof): use feof() to check EOF already met.

	* io.c (read_all): should return nil at EOF.

Fri Jul 16 13:39:42 1999  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/telnet.rb: version 0.231.

Fri Jul 16 10:58:22 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* regex.c (re_match): debug print removed.

Fri Jul 16 09:58:15 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* many files: clean up unused variables found by gcc -Wall.

	* lib/mkmf.rb: better cygwin support etc.

	* ext/extmk.rb.in: ditto.

	* instruby.rb: ditto.

Fri Jul 16 01:37:50 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* string.c (rb_str_squeeze_bang): the type of local variable `c'
	  should be int, not char.

	* string.c (rb_str_reverse): should always return copy.

Thu Jul 15 23:25:57 1999  NAKAMURA Hiroshi  <nakahiro@sarion.co.jp>

	* lib/debug.rb: better display & frame treatment.

Thu Jul 15 21:16:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_each): returns self for normal termination;
	  returns nil for break.

	* string.c: non bang methods (e.g. String#sub) should always
	  return copy of the receiver.

Thu Jul 15 21:09:15 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>

	* eval.c (find_file): do not add empty string to the path.

	* configure.in (with-search-path): should not add empty string if
	  the option is not supplied.

Thu Jul 15 17:49:08 1999  Ryo HAYASAKA  <hayasaka@univ21.u-aizu.ac.jp>

	* ext/tcltklib/tcltklib.c: move `#include "ruby.h"' forward.

Thu Jul 15 16:54:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.3.5 - version 1.4 alpha

Wed Jul 14 23:45:33 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* eval.c (ruby_init): initialize for the first time only.

Tue Jul 13 00:15:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_hash_index): re-defined; method to retrieve a key
	  from the value.

	* hash.c (Init_Hash): member? should be re-defined for Hash.

Tue Jul 12 13:54:51 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* io.c (rb_file_sysopen): wrong number of argument.

Mon Jul 12 11:52:35 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_f_missing): class name included in message.

	* eval.c (print_undef): better error message.

Sun Jul 11 05:36:17 1999  NAKAMURA, Hiroshi  <nakahiro@sarion.co.jp>

	* lib/debug.rb: patch to show proper position.

Fri Jul  9 23:56:14 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* dln.c (dln_find_1): path conv. moved to conv_to_posix_path.

	* dln.c (conv_to_posix_path): path conv. should be done.

Fri Jul  9 10:26:47 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* random.c (RANDOM_NUMBER): should place parentheses.

Fri Jul  8 11:00:51 1999  Shugo Maeda  <shugo@netlab.co.jp>

	* numeric.c (fix_div): division may be out of fixnum range.

	* bignum.c (bigdivmod): proper sign calculation to result.

Wed Jul  7 18:27:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* st.c (st_delete_safe): was modifying wrong slot.

Mon Jul  5 13:17:46 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (rb_gc_call_finalizer_at_exit): close all files at exit.

Fri Jul  2 18:00:21 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* lib/Mail/README: Mail-0.3.0 added to the distribution.

Fri Jul  2 01:45:32 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_fastmap): avoid allocation of register
	  variables for each invocation of re_match().  Suggested by
	  Zasukhin Ruslan <ruslan@paradigmasoft.com>.  Thanks.

Tue Jun 29 20:39:24 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* ext/tk/lib/tk.rb (TkVariable): bug fix; should value type check
	  be added?

	* string.c (rb_str_each_line): a bug in paragraph mode.

	* ruby.c (load_file): shifted too much to skip #!.

Tue Jun 29 06:50:21 1999  Wakou Aoyama  <wakou@fsinet.or.jp>

	* lib/CGI.rb: 0.30 - cleanup release, incompatible.

	* lib/telnet.rb: 0.22 - timeout added.

Tue Jun 29 10:49:25 1999  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>

	* configure.in: better Rhapsody support.

	* lib/mkmf.rb: Rhapsody/NEXTSTEP support.

Tue Jun 29 01:42:13 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/pty/pty.c (chld_changed): should use POSIX.1 style wait.

Mon Jun 28 21:07:36 1999  KIMURA Koichi  <kbk@kt.rim.or.jp>

	* ext/extmk.rb.nt: wrong result for have_library().

Mon Jun 28 15:24:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* missing/isinf.c: OSF/1 raises SIGFPE on one()/zero().

	* regex.c (re_search): should search til EOS, for patterns may
	  match beyond the end of range.

Mon Jun 28 12:49:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_f_select): should not accept Time objects as an
	  argument for it is time interval.

	* process.c (rb_f_sleep): ditto.

	* file.c (test_s): should return nil for false condition.

Mon Jun 28 12:23:52 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* bignum.c (rb_dbl2big): typo.

	* file.c (rb_f_test): ditto.

	* string.c (rb_str_crypt): wrong message.

Sun Jun 27 19:50:11 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* eval.c (rb_f_exit): should have treat signed integer status, not
	  VALUE.

	* process.c (rb_f_exit_bang): should work like exit().

Sun Jun 27 16:21:32 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* string.c (rb_str_rindex): wrong position to search.

Sat Jun 26 04:05:30 1999  Takaaki Tateishi  <ttate@jaist.ac.jp>

	* configure.in (configure_args): --with-search-path to specify
	  additional ruby search path.

	* ruby.c (ruby_prog_init): additional search path.

Fri Jun 25 13:09:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (pack_unpack): needed to initialize natint.

	* regex.c (re_compile_pattern): add start_paren to avoid too much
	  finalization on maybe_finalize_jump.

Fri Jun 25 13:07:20 1999  Koji Oda  <oda@bsd1.qnes.nec.co.jp>

	* missing/isinf.c: include "config.h" added.

Fri Jun 25 07:25:05 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* lib/mkmf.rb: initialize $(topdir).

	* ext/extmk.rb.in (install_rb): install lib/*.rb properly.

	* configure.in (linux): specifies -rpath on --enable-shared.

	* configure.in (aix): ruby.imp must reside in $(topdir).

Thu Jun 24 19:11:29 1999  Yoshida Masato  <yoshidam@yoshidam.net>

	* parse.y (rb_str_extend): multi-byte identifier in expression
	  interpolation in strings.

	* parse.y (yylex): support multi-byte char identifiers.

Thu Jun 24 15:27:13 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (f_arg): check duplicate argument names.

	* gc.c (rb_gc_mark): marking wrong member for NODE_ARGS.

	* string.c (rb_str_rindex): POSITION specifies start point, not
	  end point.

Thu Jun 24 13:00:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (print_mbc): wrong boundary.

	* pack.c (uv_to_utf8): raises ArgError for too big value.

Thu Jun 24 11:02:51 1999  Yoshida Masato  <yoshidam@yoshidam.net>

	* pack.c (uv_to_utf8): mask needed.

Wed Jun 23 21:03:56 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* ruby.h (struct RFile): remove iv_tbl from struct. instance
	  variables are handled as generic ivs.

Wed Jun 23 22:06:26 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* pack.c (utf8_to_uv): pack to 7 bytes sequence.

	* pack.c (uv_to_utf8): wrong boundary.

	* pack.c (pack_unpack): should treat as unsigned long.

Wed Jun 23 15:10:11 1999  Inaba Hiroto  <inaba@sdd.tokyo-sc.toshiba.co.jp>

	* parse.y (parse_string): failed to parse nested braces.

	* parse.y (parse_regx): nested braces within #{} available.

Wed Jun 23 11:18:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (slow_search): wrong shift width for mbcs.

	* eval.c (rb_thread_save_context): should not clear th->locals.

Wed Jun 23 02:06:14 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): UMINUS binds too tight with digits. changed so
	  that -2**2 => -4.

	* parse.y (close_paren): `do' for expr termination now works it
	  used to be.

Wed Jun 22 18:26:42 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* pack.c (pack_pack): should initialize local variable `j'.

Wed Jun 22 15:24:59 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* parse.y (here_document): a bug for multiline heredoc.

Tue Jun 22 15:06:36 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/socket/socket.c (ruby_socket): forgot to return fd
	  explicitly.

Tue Jun 22 13:34:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* rubyio.h (MakeOpenFile): should initialize member `iv_tbl'.

Wed Jun 22 10:35:51 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* io.c (rb_io_gets_internal): getc(3) may not set errno on
	  interrupt.

Mon Jun 21 22:39:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (call_required_libraries): ruby_sourceline should be
	  cleared before loading libraries.

	* io.c (set_stdin): do not use reopen(), so that we don't need to
	  dup original stdin before assigning $stdin.

Mon Jun 21 18:04:27 1999  Ryo HAYASAKA  <hayasaka@univ21.u-aizu.ac.jp>

	* ext/dbm/dbm.c: include <cdefs.h> for solaris 2.6.

Mon Jun 21 15:59:47 1999  Nobuyoshi Nakada  <nobu.nokada@softhome.net>

	* ext/socket/socket.c (ip_addrsetup): forgot to put `else'.

Mon Jun 21 15:38:37 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (fptr_finalize): remove rb_syswait() invocation to avoid
	  wait4(2) within GC.  rb_syswait() moved to rb_io_fptr_close().

Mon Jun 21 12:05:59 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* dir.c (dir_s_glob): remove MAXPATHLEN restriction.

	* ext/md5/md5init.c (md5_hexdigest): should have used "%02x".

Sun Jun 20 19:50:38 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* string.c (rb_str_each_line): should have checked string
	  boundary.

Sat Jun 19 22:24:12 1999  Kenji Nagasawa  <kenn@hma.att.ne.jp>

	* OS/2 patch improved.

Fri Jun 18 08:30:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (r_byte): add data length check.

	* ext/tcltklib/tcltklib.c (_timer_for_tcl): was doing busy-wait.

Tue Jun 15 10:01:21 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* configure.in: remove trailing slash from interpreter embedded
	  shared library path.

	* configure.in (INSTALL_DLLIB): install shared lib with 0555.

	* instruby.rb: changed mode for shared library into 0555.

Fri Jun 11 23:27:00 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* ext/etc/etc.c (etc_passwd): should return nil, not exception for
	  call after last passwd entry.

Fri Jun 11 15:21:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (rb_gc_mark_locations): add safety margin 1.

	* eval.c (ruby_run): should protect toplevel node tree.

	* ext/etc/etc.c (etc_group): dumps core if there's no more group.

Fri Jun 11 01:50:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (ruby_run): Init_stack() was called too late; local
	  variables happened to be higher (or lower) than stack_start.

Thu Jun 10 16:41:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c: do not call `initialize' for IO objects.  So with Array,
	  Hash, Range, and Time objects.

	* ext/curses/curses.c (curses_getch): made thread aware using
	  rb_read_check().

	* ext/curses/curses.c (window_getch): ditto.

	* ext/curses/curses.c (curses_getstr): made (partially) thread
	  aware using rb_read_check().

	* ext/curses/curses.c (window_getstr): ditto.

	* io.c (rb_read_check): new function to help making something
	  (like extension libraries) thread aware.

	* eval.c (is_defined): `defined? super' should be true even for
	  private superclass methods.

Fri Jun 10 13:42:10 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* pack.c (pack_pack): template `Z' should be allowed.

Wed Jun  9 13:26:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_loading): modified to avoid nested race
	  condition of require().

	* ext/tcltklib/tcltklib.c (ip_invoke): queue invocation on non
	  main threads.

	* ext/tcltklib/tcltklib.c (lib_mainloop): flush invocation
	  queues periodically.

	* version.c (ruby_show_version): now print the message to stdout.

	* version.c (ruby_show_copyright): ditto.

Tue Jun  8 00:00:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (pack_unpack): append sentinel (NUL) to the string.

	* ext/md5/md5init.c (md5_hexdigest): new method to obtain
	  printable hash string.

	* ext/md5/md5init.c (md5_update): should return self.

	* pack.c (pack_pack): undocumented template 'U' for UTF8.

	* pack.c (pack_unpack): ditto.

	* marshal.c (r_byte): should replace getc() with rb_getc().

	* io.c (rb_getc): getc() replacement uses READ_DATA_PENDING() and
	  rb_thread_wait_fd().

Mon Jun  7 23:23:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (rb_mod_clone): should call CLOSESETUP().

	* eval.c (bind_clone): should call CLONESETUP() for new clone.

Sat Jun  5 10:32:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_oct): binary (e.g. 0b10111) support.

	* variable.c (rb_const_set): raise warning, not exception.

	* parse.y (yycompile): initialize parser internal variables.

	* parse.y (close_paren): set lex_state to EXPR_PAREN after closing
	  parenthesis.

	* parse.y (yylex): returns kDO for `do' right after method_call.

Thu Jun  3 11:05:30 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* regex.c (read_backslash): should decode \b within class.

Thu Jun  3 01:06:18 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* dln.c (dln_load): AIX improvement (aix_findmain removed).

Wed Jun  2 00:41:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (pack_unpack): new undocumented template Z which strips
	  stuff after first null.

	* pack.c (pack_pack): should preserve specified length of the
	  resulting string.

Tue Jun  1 15:29:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (ruby_socket): retry after GC, if socket(2)
	  failed on EMFILE or ENFILE.

	* ext/socket/socket.c (sock_s_socketpair): ditto.

	* eval.c (module_setup): need to add PUSH_VAR/POP_VAR to clear
	  dyna vars link list.

	* version.h (RUBY_RELEASE_CODE): integer macro constant for source
	  version detection.

Sun May 30 22:19:12 1999  Kenji Nagasawa  <kenn@tcp-ip.or.jp>

	* ext/socket/socket.c: emx/gcc 0.9d now fixes things about
	  AF_UNIX.

	* process.c: OS/2 EMX kludge.

	* Makefile.in (strncasecmp.o): added dependency.

Mon May 31 16:06:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.3.4 - preliminary release for 1.4

Mon May 31 15:57:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_fptr_close): close on IO which main_thread is
	  waiting cause serious exception, that vanishes the actual fd
	  closing.  Invocation of rb_thread_fd_close() is deferred
	  a little.

Sat May 29 18:27:13 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* regex.c (re_match): stack boundary check needed.

Sat May 29 12:27:00 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/tcltklib/tcltklib.c (ip_invoke): proper ref count management
	  to avoid leak.  I HATE REF COUNTING!!

	* eval.c (ruby_run): moved ruby_require_libraries() to handle `-r'
	  from ruby_options() to avoid stack corruption for threads
	  created in libraries.

Sat May 29 02:22:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_yield_0): when `for' appeared in blocks, it
	  introduced new scope for local variables.

Fri May 28 17:16:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_squeeze_bang): squeeze AND of the arguments.
	  UNDOCUMENTED.

	* string.c (rb_str_count): new UNDOCUMENTED method.

	* string.c (rb_str_delete_bang): delete AND of the arg ranges.
	  UNDOCUMENTED FEATURE for 1.3.x.

	* ext/socket/socket.c (setipaddr): re-wrote using ip_addrsetup().

	* ext/socket/socket.c (ip_addrsetup): decode symbolic address
	  <broadcast>.

Thu May 27 12:27:42 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (tr_trans): should handle NUL (\0) within strings.

Tue May 25 16:45:11 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_f_syscall): syscall may return values other than zero
	  on success.

	* regex.c (re_match): handle empty loop properly (hopefully).

	* regex.c (re_match): remove empty group check, because it does
	  not help non-grouping parentheses (?:..).

	* regex.c (re_compile_fastmap): treating try_next, finalize_push
	  wrong way.

	* regex.c: remove some obsolete functions such as
	  group_match_null_string_p().

Mon May 24 14:47:54 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (read_backslash): read backslash by regex.

Sun May 23 19:44:58 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ext/pty/pty.c (getDevice): portability patch.

Fri May 21 23:01:26 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/getaddrinfo.c (GET_AI): should set error code.

Thu May 20 03:43:44 1999  Jun-ichiro itojun Hagino  <itojun@itojun.org>

	* ext/socket/socket.c: you should use sockaddr_storage to handle
	  IPv6 addresses.

	* ext/socket/getaddrinfo.c (getaddrinfo): prevent retrieving
	  AF_INET6 address if hints.ai_flags == AI_PASSIVE.

Wed May 19 12:27:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (exec_end_proc): should protect exceptions.

	* gc.c (run_final): ditto.

	* parse.y (f_rest_arg): allow just * for rest arg.

	* parse.y (mlhs_basic): allow * without formal argument.

	* regex.c (re_match): the variable `part' should be initialized.

Tue May 18 15:25:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): a bug in range adjustment.

Tue May 18 11:35:59 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* dln.c (conv_to_posix_path): path_len argument added.

Mon May 17 12:26:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (fix_rev): should treat Fixnum as signed long.

	* eval.c (massign): add strict number check for yield (and call).

	* eval.c (proc_arity): new method to return number of arguments.

	* eval.c (method_arity): new method to return number of arguments.

	* parse.y (read_escape): char may be unsigned.

	* string.c (rb_str_succ): ditto.

	* string.c (tr_trans): ditto.

	* object.c (Init_Object): methods `&', `|', `^' are added to nil.

	* range.c (rb_range_beg_len): it should be OK for [0..-len-1].

	* regex.c (re_search): search for byte literal within mbcs.

	* regex.c (is_in_list): parsh

	* regex.c (re_compile_fastmap): should have not alter the loop
	  variable `j' if TRASLATE_P().

	* regex.c (re_compile_pattern): escaped characters should be read
	  by PATFETCH_RAW(c).

Sat May 15 11:23:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): endline2 (\Z) should not match at the point
	  between a newline and end-of-line, like endline ($).

	* class.c (include_class_new): should initialize iv_tbl to share
	  between module and iclass.

Fri May 14 08:50:27 1999  Akira Endo  <akendo@t3.rim.or.jp>

	* regex.c (re_compile_fastmap): it should be k != 0 to skip.

Fri May 14 12:46:56 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_load): a bug in old marshal format support.

	* instruby.rb: make site_ruby directory.

Fri May 14 10:18:02 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* regex.c (re_match): a bug in inline `.*' etc.

Fri May 14 09:58:46 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>

	* ruby.c (addpath): should have specified string length.

Thu May 13 10:40:44 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval_string_wrap): new function.

	* regex.c (re_compile_pattern): POSIX line match should alter
	  behavior for `^' and `$' to begbuf and endbuf2 respectively.

	* ext/pty/pty.c: un-ANSI-fy function arguments.

Wed May 12 14:19:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* struct.c (iv_get): in case of inheritance of generated struct
	  class, __member__ and __size__ should also be inherited.
	  Thanks for Pros Yeboah <yeboah@tu-harburg.de>.

	* io.c (rb_f_gets_internal): should check number of arguments
	  before checking rb_rs == rb_default_rs.  Thanks for Koji Arai
	  <JCA02266@nifty.ne.jp>.

Tue May 11 08:29:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): .?, .+ did not work.

Mon May 10 00:59:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/jcode.rb: forgot to squeeze on reverse (complement) case.

	* string.c (tr_squeeze): should not set modify flag to be honest,
	  if the string is not modified.

	* signal.c (Init_signal): SIGTERM should not be handled.

	* regex.c (re_match): seeking for longest match is now optional,
	  which can be set using RE_OPTION_POSIXMATCH.  This satisfies
	  POSIX longest match as much as Emacs's posix-* functions, which
	  are known to be incomplete.

Sun May  9 13:04:01 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/socket.c (sock_s_getaddrinfo): conversion from
	  Fixnums to C integers needed.

Sun May  9 11:51:43 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* range.c (range_eqq): reverse condition.

	* range.c (range_s_new): default should be end inclusive.

Sat May  8 03:27:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (thread_connect): replace nasty
	  rb_thread_fd_writable() with rb_thread_select().

Fri May  7 20:49:00 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* ext/socket/getaddrinfo.c (inet_pton): wrong parameter to
	  inet_aton().

	* ext/socket/addrinfo.h (__P): silly cut and paste typo.

Fri May  7 17:03:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* dir.c (glob): removed GPL'ed glob.c completely.

Fri May  7 08:17:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/sdbm/extconf.rb: sdbm extension added to the distribution.

Fri May  7 01:42:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (tcp_s_gethostbyname): avoid using struct
	  sockaddr_storage.

Thu May  6 13:21:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_indexes): should not use rb_ary_concat().

Thu May  4 12:34:18 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* parse.y (parse_string): there should be newline escape by
	  backslashes in strings.

	* parse.y (parse_qstring): ditto.

Mon May  3 04:37:20 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* ext/tcltklib/extconf.rb: better search for libX11.

	* range.c (range_s_new): embarrassing =/== typo.

	* re.c (Init_Regexp): failed to set default kcode.

Mon May  3 02:39:55 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* ext/socket/socket.c (open_inet): typo (res and res0).

Tue May  4 02:07:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* mkconfig.rb: leave undefined $(VARIABLE) unexpanded in the
	  Config::CONFIG hash table.

Mon May  3 09:37:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): expand exactn{n} at compile time.
	  handles stop_paren specially.

	* regex.c (re_compile_pattern): expand x{n} at compile time.

	* regex.c (re_search): posix line match should be checked.

	* regex.c (re_search): a bug in anchor condition.

Fri Apr 30 18:57:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.3.3

	* string.c (rb_str_rindex): position should be END point, not
	  START point.

	* re.c (rb_reg_search): pos means end point on reverse now.

	* array.c (rb_ary_s_create): should clear ary->ptr to avoid
	  potential gc crash.

Fri Apr 30 15:24:58 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/addrinfo.h: compatibility hack for ipv4.

	* ext/socket/socket.c: itojun's ipv6 patches applied.

	* ext/socket/extconf.rb: detect ipv6 features based on itojun's
	  ipv6 patches.

	* ext/extmk.rb.in (enable_config): can handle --enable-xxx now.

	* lib/mkmf.rb (enable_config): ditto.

Fri Apr 30 05:22:23 1999  Shugo Maeda  <shugo@netlab.co.jp>

	* string.c (rb_str_aset): last index should not append.

Thu Apr 29 18:55:31 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* dln.c (conv_to_posix_path): remove const from args.

	* ruby.c (rubylib_mangle): remove Fatal(), the obsolete function.

Tue Apr 27 14:11:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (fname): lazy workaround for keywords did not work well.

	* ext/extmk.rb.in: `--with-xxx=yyy' argument configuration.

	* lib/mkmf.rb: ditto.

	* misc/ruby-mode.el: forgot to handle $`.

	* ext/extmk.rb.in: better AIX link support proposed by
	  <komatsu@sarion.co.jp>.

Mon Apr 26 16:46:59 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/extmk.rb.in: AIX shared library support modified.

	* ext/aix_mksym.rb: ditto.

	* configure.in: ditto.

	* sprintf.c (rb_f_sprintf): should allocate proper sized buffer
	  for float numbers.

Sat Apr 24 00:00:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (operation): syntax like `a.[]=(1,2)' is allowed.

Fri Apr 23 23:54:09 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (argf_binmode): binmode method added to ARGF.

Fri Apr 23 13:55:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_f_chomp): should assign the result to $_.  or maybe
	  sub/gsub/chop/chomp should NOT assign $_ altogether.

Thu Apr 22 16:50:54 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_callcc): call scope_dup() for all scopes in
	  the interpreter stack.

Tue Apr 20 11:24:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_dump): `#' should be escaped.

Tue Apr 20 02:32:42 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (parse_regx): option /p for posix match added.

	* re.c (rb_reg_desc): did not print options properly.

	* io.c (rb_file_s_open): initialize was called twice.

Mon Apr 19 18:56:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* configure.in (DEFAULT_KCODE): can specify default code for
	  $KCODE by --with-default-kcode=(euc|sjis|utf8|none).

	* regex.c (IS_A_LETTER): a byte sequence shorter than mbc should
	  not match with \w etc.

Mon Apr 19 13:49:11 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (eval): should restore ruby_dyna_vars.

Fri Apr 16 21:40:43 1999  Nobuyoshi Nakada  <gea02117@nifty.ne.jp>

	* io.c (f_backquote): pipe_open may return nil.

	* io.c (f_open): rb_io_open may return nil.

	* io.c (io_s_foreach): ditto.

	* io.c (io_s_readlines): ditto.

	* io.c (io_defset): wrong message.

Fri Apr 16 15:09:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (rb_str2inum): strtoul() returns long, not int.

	* eval.c (rb_load): size of VALUE and ID may be different.

	* util.c (mmprepare): int is too small to cast from pointers.

	* config.guess: avoid 'linux-gnu' for alpha-unknown-linux.

Thu Apr 15 23:46:20 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ruby.c (rubylib_mangle): mangle path by RUBYLIB_PREFIX.

Wed Apr 14 23:52:51 1999  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>

	* node.h (NODE_LMASK): should be long to avoid overflow.

Wed Apr 14 13:14:35 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>

	* dln.c: AIX dynamic link.

	* ext/aix_ld.rb: ditto.

Wed Apr 14 12:19:09 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/thread.rb: Queue#{enq,deq} added.

Tue Apr 13 17:43:56 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_hash_s_create): Hash::[] acts more like casting.

Tue Apr 13 00:33:52 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_stdio_set): warning for assignment to the variables
	  $std{in,out,err}.

Mon Apr 12 23:12:32 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_reopen): check for reopening same IO.

Fri Apr  9 17:45:11 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (rb_compile_string): bug for nested eval().

	* regex.c (re_match): should pop non-greedy stack items on
	  failure, after best_regs are fixed.

Thu Apr  8 17:30:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (PACK_LENGTH_ADJUST): need to adjust for `*' length.

Tue Apr  6 23:28:44 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (void_check): add void context checks.

Mon Apr  5 12:23:42 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_s_at): should copy gmt-mode.

	* eval.c (eval_node): preserve ruby_eval_tree.

Fri Apr  2 14:00:34 1999  NAKAMURA, Hiroshi  <nakahiro@sarion.co.jp>

	* lib/debug.rb: wrong command interpreting.

Fri Apr  2 11:46:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.3.2

Fri Apr  2 10:40:04 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_s_pipe): forgot to define IO::pipe.

Thu Apr  1 14:40:46 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (assign): modified for rhs change.

	* parse.y (stmt): unparenthesisized method calls can be right hand
	  side expression of the assignment.

Sat Mar 27 22:42:47 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* ext/nkf/nkf.c (rb_nkf_kconv): check size output_ctr before
	  decrement.

Thu Mar 25 09:11:03 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_s_at): preserve gmt-mode for result.

	* parse.y (rb_compile_string): do not use cur_mid, use
	  compile_for_eval instead.

	* st.c (PTR_NOT_EQUAL): wrong logical condition.

Wed Mar 24 13:06:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yycompile): should clear cur_mid after compilation.

	* io.c (next_argv): need to check type for ARGV.shift.

	* eval.c (blk_copy_prev): need to preserve outer scope as well as
	  outer frames.

	* parse.y (rb_compile_string): return can appear within eval().

Tue Mar 23 10:15:07 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* configure.in: AC_C_CONST check added.

Tue Mar 23 02:07:35 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_plus): preserve gmt-mode for result.

Mon Mar 22 01:32:37 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): adjust line numbers before expression
	  interpolation within strings.

	* eval.c (rb_eval): defined? returns nil for false condition.

	* numeric.c (num_nonzero_p): returns nil for false condition.

Sat Mar 20 13:07:43 1999  Keiju Ishitsuka  <keiju@rational.com>

	* lib/weakref.rb: avoid leak for two weakrefs for one object.

Fri Mar 19 11:26:45 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* eval.c (ruby_run): needed to eval END{} on exit.

	* eval.c (rb_exit): ditto.

Fri Mar 19 02:17:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* signal.c (Init_signal): handles terminating signals HUP, TERM,
	  QUIT, PIPE, etc.

Thu Mar 18 15:47:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (rb_big_and): bug in sign calculation.

	* bignum.c (rb_big_or): ditto.

	* io.c (rb_f_select): forgot to use to_io to retrieve IO, after
	  calling select(2).

Tue Mar 16 19:54:31 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/extmk.rb.in: static linking cause infinite make loop.

Tue Mar 16 18:50:04 1999  Yoshida Masato  <yoshidam@yoshidam.net>

	* ext/socket/socket.c (tcp_s_gethostbyname): typo, not NUM2INT(),
	  but INT2NUM().

	* ext/socket/socket.c (mkhostent): ditto.

Tue Mar 16 12:31:44 1999  Ryo HAYASAKA  <hayasaka@cheer.u-aizu.ac.jp>

	* file.c (utime_internal): suppress warning by const.

	* time.c (time_gmtime): ditto.

Tue Mar 16 10:23:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_clone): Time object can be cloned.

Tue Mar 16 03:13:10 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* ruby.c (load_file): argv[argc] should be NULL.

Mon Mar 15 22:12:08 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* sprintf.c (rb_f_sprintf): typo in arg_num check at exit.

Mon Mar 15 16:42:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_dup): dup2 should copy class too.

Mon Mar 15 15:12:53 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* lib/mkmf.rb: install program relative path check.

Mon Mar 15 14:05:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_s_new): 2nd argument is now option.
	  Regexp::EXTENDED can be specified.

Fri Mar 12 10:47:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_index): str.index("") should always match at
	  offset point.

	* string.c (rb_str_upto): can specify end point exclusion.

	* string.c (rb_str_index): negative offset.

	* regex.c (re_match): begline should not match at the point
	  between a newline and end-of-string.  endline neither.

	* regex.c (re_compile_pattern): context_indep_anchors .

	* parse.y (parse_regx): need not to push backslashes before
	  escaped characters.

	* eval.c (rb_thread_join): re-raises exception within target.

Fri Mar 12 01:09:36 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* ext/readline/readline.c (readline_s_vi_editing_mode): wrong
	  number of arguments.

Fri Mar 12 02:12:50 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (PACK_ITEM_ADJUST): "a".unpack("C3") => [97, nil, nil]

Thu Mar 11 18:23:50 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* ext/socket/socket.c (Init_socket): UDPsocket was omitted.

Thu Mar 11 16:43:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (PACK_LENGTH_ADJUST): push fixed number of items per
	  template to result array.

	* pack.c (pack_unpack): I/N/C etc. push nil in the array for "".

Tue Mar  9 00:19:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (ruby_unsetenv): use ruby_setenv(name, 0).

	* hash.c (env_delete): ditto.

	* string.c (rb_str_upto): do not check `beg<end' to generate
	  strings for the pattern like "a".upto("#a").

	* range.c (range_each): treat strings as special case.

	* range.c (range_each): no longer use upto for generic cases.

Sun Mar  7 14:21:32 1999  IKARASHI Akira  <ikarashi@itlb.te.noda.sut.ac.jp>

	* string.c (rb_str_index): wrong end point calculation.

Sat Mar  6 02:19:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (match_index): MatchingData#index(n) added.

	* array.c (rb_ary_subseq): ary[n..-1] returns an sub-array unless
	  n is too small negative index.

	* re.c (rb_reg_match_method): Regexp#match(str) added.

	* array.c (rb_ary_indexes): understands ranges as indexes.

	* re.c (match_size): MatchingData#size added.

Fri Mar  5 01:04:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_fill): modified for range.

	* array.c (rb_ary_aset): a[n..m] revisited.

Thu Mar  4 14:23:29 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_subseq): a[n..m] revisited.

	* parse.y (method_call): allow Const::method{}.

	* array.c (rb_ary_replace_method): should replace original array.

Thu Mar  4 02:30:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* configure.in: remove --disable-thread, thread feature is no
	  longer optional.

Thu Mar  4 00:32:17 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* parse.y (read_escape): wrong arguments for scan_oct,scan_hex.

Wed Mar  3 11:51:53 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (Init_socket): rename class names as
	  TCPsocket -> TCPSocket etc.

Tue Mar  2 19:46:42 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* configure.in (LDSHARED): use gcc -Wl,-G for solaris with gcc.

Tue Mar  2 17:04:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): backslashes do not concatenate comment lines
	  anymore.

Mon Mar  1 14:05:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_call0): adjust argv for optional arguments.  super
	  without arguments emit superclass method with the value from
	  optional arguments.  enabled as experiment.

Sun Feb 28 14:04:07 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* parse.y (nextc): backslash at the eof cause infinite loop

Sun Feb 28 11:01:26 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* time.c (make_time_t): month range check added.

Sat Feb 27 02:36:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (Init_Regexp): add escape as alias of quote.

	* re.c (rb_reg_s_quote): char-code can be specified now.

Fri Feb 26 18:45:36 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* eval.c (error_print): bug for error message with newlines.

Fri Feb 26 12:00:04 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (make_time_t): future check modified to allow 1969-12-31
	  at certain timezone.

	* time.c (time_arg): year >= 1000 should be past.

	* version.c (Init_version): constant RELEASE_DATE added.

Fri Feb 26 01:08:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_substr): returns nil for out-of-range access.

	* array.c (rb_ary_subseq): returns nil for out-of-range access.

	* array.c (rb_ary_store): negative index message has changed.

	* string.c (rb_str_aset): reallocation needed.

	* string.c (rb_str_aset): allow char append to the string.

Thu Feb 25 23:30:17 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* time.c (time_load): tm_year should be packed in 17 bits, not 18.

Thu Feb 25 12:50:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* missing/dup2.c: replaced by public domain version.

	* time.c (make_time_t): add `future check' in loops.

	* object.c (rb_num2dbl): forbid implicit conversion from nil, or
	  strings.  thus `Time.now + str' should raise error.

	* object.c (rb_Float): convert nil into 0.0.

	* object.c (rb_Integer): conversion method improved.

Thu Feb 25 03:27:50 1999  Shugo Maeda  <shugo@netlab.co.jp>

	* eval.c (rb_call): should handle T_ICLASS properly.

Thu Feb 25 00:04:00 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* error.c (Init_Exception): global function Exception() removed.

	* variable.c (rb_class2name): returns "nil"/"true"/"false" for them.

	* time.c (time_dump): time marshaling format compressed size from
	  11 bytes to 8 bytes.  thanx to tadf@kt.rim.or.jp.

	* eval.c (rb_obj_call_init): should specify arguments explicitly.

Wed Feb 24 15:43:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): comment concatenation requires preceding space
	  before backslash at the end of line.

	* io.c (rb_f_pipe): global pipe is obsolete now.

	* object.c (Init_Object): remove true.to_i, false.to_i.

Tue Feb 23 14:21:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): warn if identifier! immediately followed by `='.

Tue Feb 23 12:32:41 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* eval.c (rb_load): tilde expansion moved to find_file.

	* eval.c (find_file): tilde expansion added.

Tue Feb 23 10:50:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (require_method): require can handle multiple fnames.

	* hash.c (rb_hash_foreach_iter): hash key may be nil.

Mon Feb 22 17:44:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): should not pop failure point on success for
	  non-greedy matches.

	* io.c (Init_IO): remove global_functions getc, readchar, ungetc,
	  seek, tell, rewind.

Sat Feb 20 22:54:26 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (rb_num2long): no implicit conversion from boolean.

Sat Feb 20 09:58:42 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* numeric.c (flo_to_s): portable Infinity and NaN support.

Sat Feb 20 07:13:31 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* io.c (rb_file_sysopen): forgot to initialize a local variable.

Fri Feb 19 23:05:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_subseq): range check changed.

	* marshal.c: increment MARSHAL_MINOR for Time format change.

	* time.c (time_old_load): support old marshal format.

	* time.c (time_load): changed for new format Y/M/D/h/m/s/usec.

	* time.c (time_dump): marshal dump format has changed.

Fri Feb 19 00:25:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_arg): should reject "sep\0" and such.

	* time.c (time_plus): Time#+ should not receive Time object
	  operand.

	* string.c (rb_str_substr): negative length raises exception now.

	* array.c (beg_len): if end == -1, it points end of the array.

	* array.c (rb_ary_subseq): negative length raises exception now.

Thu Feb 18 20:57:04 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* time.c (rb_strftime): strftime() may return 0 on success too.

	* time.c (time_strftime): `\0' within format string should not be
	  omitted in the result.

	* time.c (rb_strftime): zero length format.

	* time.c (time_to_a): yday start with 1 now.

	* time.c (time_zone): support for long timezone name.

	* time.c (time_yday): yday start with 1 now.

	* time.c (time_minus): minus calculation was wrong.

	* time.c (time_minus): sec, usec should be at least `long', maybe
	  they should be `time_t'.

	* time.c (time_plus): addition with float was wrong.

	* time.c (time_to_s): support for long timezone name.

	* time.c (time_gm_or_local): too far future check moved.

	* time.c (time_arg): treat 2 digit year as 69-99 => 1969-1999,
	  00-68 => 2000-2068

Thu Feb 18 03:56:47 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* missing/fnmatch.c: moved to missing directory.

Wed Feb 17 16:22:26 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* struct.c (rb_struct_alloc): actual initialization now be done in
	  `initialize'.

Wed Feb 17 09:47:15 1999  okabe katsuyuki  <hgc02147@nifty.ne.jp>

	* regex.c (re_search): use mbclen() instead of ismbchar().

	* re.c (rb_reg_s_quote): should handle mbchars properly.

Wed Feb 17 01:25:26 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): stop comment concatenation by backslash follows
	  after >= 0x80 char.  may cause problem with Latin chars.

	* eval.c (error_print): exception in rb_obj_as_string() caused
	  SEGV. protect it by PUSH_TAG/POP_TAG.

	* error.c (exc_exception): `Exception#exception' should return self.

Wed Feb 17 01:12:22 1999  Hirotaka Ichikawa  <hirotaka.ichikawa@tosmec.toshiba.co.jp>

	* configure.in: BeOS patch.

Tue Feb 16 14:25:00 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): should reallocate mbc space for
	  character class unless current_mbctype is ASCII.

Mon Feb 15 15:48:30 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* configure.in: specify `-Wl,-E' only for GNU ld.

Mon Feb 15 11:43:22 1999  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>

	* array.c (rb_inspecting_p): should return Qfalse.

Sun Feb 14 22:36:40 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* sprintf.c (rb_f_sprintf): `%G' was omitted.

Sun Feb 14 12:47:48 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* numeric.c (Init_Numeric): allow divide by zero on FreeBSD.

	* numeric.c (Init_Numeric): FloatDomainError added.

	* configure.in (AC_REPLACE_FUNCS): add checks for functions
	  isinf, isnan, and finite.

Sat Feb 13 01:24:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_create_0): should protect th->thread.

Fri Feb 12 16:16:47 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* string.c (rb_str_inspect): wrong mbc position.

Fri Feb 12 16:21:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_fd_close): 

	* io.c (rb_io_fptr_close): tell scheduler that fd is closed.

	* io.c (rb_io_reopen): ditto.

	* io.c (READ_CHECK): check if closed after thread context switch.

	* ext/socket/socket.c (bsock_close_read): do not check
	  the return value from shutdown(2).

	* ext/socket/socket.c (bsock_close_write): ditto.

	* ext/socket/socket.c (sock_new): need to dup(fd) for close_read
	  and close_write.

	* parse.y (here_document): handle newlines within #{}.

	* regex.h: should replace symbols for ruby.

Fri Feb 12 00:46:28 1999  Shugo Maeda  <shugo@netlab.co.jp>

	* marshal.c (r_object): should update the method name in message.

	* marshal.c (w_object): limit should be converted into Fixnum.

Wed Feb 10 15:20:03 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): empty pattern should not cause infinite
	  pattern match loop.

	* regex.c (re_compile_pattern): RE_OPTIMIZE_ANCHOR for /.*/, not
	  for /(.|\n)/.

	* numeric.c (fix_pow): `fixnum**nil' should raise TypeError.

	* bignum.c (rb_big_pow): need to normalize results.

Wed Feb 10 01:42:41 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* numeric.c (fix_pow): `(5**1).type' should be Integer.

Tue Feb  9 01:22:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): do not ignore newlines in mbchars.

	* io.c (rb_file_s_open): mode can be specified by flags like
	  open(2), e.g. File::open(path, File::CREAT|File::WRONLY).

	* io.c (rb_f_open): bit-wise mode flags for pipes

	* io.c (Init_IO): bit flags for open.

Sat Feb  6 22:56:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_sub_bang): should not overwrite match data by
	  regexp match within the block.

	* string.c (rb_str_gsub_bang): ditto.

Sat Feb  6 03:06:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (match_getter): accessing $~ without matching caused SEGV.

Fri Feb  5 22:11:08 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* parse.y (yylex): binary literal support, like 0b01001.

	* parse.y (yylex): octal numbers can contain `_'s.

	* parse.y (yylex): warns if non-octal number follows immediately
	  after octal literal.

	* parse.y (yylex): now need at least one digit after prefix such
	  as 0x, or 0b.

	* bignum.c (rb_str2inum): recognize binary numbers like 0b0101.

Fri Feb  5 03:26:56 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>

	* ruby.c (proc_options): -e without program prints error.

Fri Feb  5 00:01:50 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (terms): needed to clear heredoc_end.

	* numeric.c (flo_div): allow float division by zero.

Thu Feb  4 11:56:24 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* missing/strtod.c: for compatibility.

	* configure.in (strtod): add strtod compatible check.

	* numeric.c (rb_num2long): missing/vsnprintf.c does not support
	  floating points.

	* numeric.c (flo_to_s): ditto.

Wed Feb  3 23:02:12 1999  Yoshida Masato  <yoshidam@yoshidam.net>

	* regex.c (re_compile_pattern): use ismbchar() to get next char.

	* regex.c (re_search): wrong mbchar shift.

	* re.c (rb_reg_search): needed to reset $KCODE after match.

	* regex.c (re_compile_fastmap): mbchars should match with \w.

Wed Feb  3 22:35:12 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* parse.y (yylex): too big float raise warning, not error.

Tue Feb  2 23:41:42 1999  Yoshida Masato  <yoshidam@yoshidam.net>

	* regex.c (re_match): wrong boundary.

	* regex.c (IS_A_LETTER): re_mbctab[c] may not be 1 for mbc.

	* regex.c (re_search): mbchar support for shifting ranges.

	* regex.c (MBC2WC): wrong conversion.

Wed Feb  3 15:03:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (parse_regx): need to escape parens if terminators are
	  not any kind of parenthesis.

	* parse.y (parse_qstring): ditto.

	* parse.y (parse_string): ditto.

Tue Feb  2 17:11:26 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* string.c (rb_str_gsub_bang): too small realloc condition.

Mon Feb  1 10:01:17 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* parse.y (yylex): range check for the float literal.

Sat Jan 30 18:34:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (usage): -h option to show brief command description.

Sat Jan 30 08:45:16 1999  IKARASHI Akira  <ikarashi@itlb.te.noda.sut.ac.jp>

	* lib/cgi-lib.rb: cookie support added.

Sat Jan 30 13:38:24 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): mbchars should match with \w
	  within character class.  Was matching with \W.

	* regex.c (re_match): \w should match with multi byte characters,
	  not its first byte.

Sat Jan 30 10:06:41 1999  Yoshida Masato  <yoshidam@yoshidam.net>

	* re.c (rb_reg_s_new): UTF-8 flag handle (/u, /U).

	* re.c (rb_kcode): $KCODE handle for UTF-8.

Sat Jan 30 01:51:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_delete_if): RTEST() missing.

	* hash.c (delete_if_i): ditto.

	* enum.c (Init_Enumerable): select (=find_all), detect (=find)
	  added as aliases.

Fri Jan 29 21:32:19 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* hash.c (rb_f_setenv): SEGV caused by small typo.

Fri Jan 29 00:15:58 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/parsedate.rb (parsedate): support date format like
	  23-Feb-93, which is required by HTTP/1.1.

	* variable.c (find_class_path): avoid calling rb_iv_set().

	* eval.c (backtrace): do not need to modify $SAFE internally.

	* variable.c (classname): inline __classid__ access.

	* eval.c (THREAD_ALLOC): needed to initialize wrapper.

	* lib/ftools.rb (makedirs): allows slash at the end of the path.

	* numeric.c (rb_fix_induced_from): ensure result to be Fixnum.

Thu Jan 28 17:31:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (flo_to_s): float format changed to "%16.10g".

Thu Jan 28 02:13:11 1999  Yoshinori Toki  <toki@freedom.ne.jp>

	* array.c (rb_ary_store): expand allocated buffer by 3/2.

Wed Jan 27 17:50:02 1999  Kazuhiro HIWADA  <hiwada@kuee.kyoto-u.ac.jp>

	* bignum.c (dbl2big): raised error if double is too big to cast
	  into long.  check added.

Wed Jan 27 03:16:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_mod_const_at): can't list constants of the
	  untainted objects in safe mode.

	* class.c (method_list): can't list methods of untainted objects
	  in safe mode.

Tue Jan 26 02:40:41 1999  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>

	* prec.c: Precision support for numbers.

Thu Jan 21 19:08:14 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_f_raise): calls `exception' method, not `new'.

	* error.c (exc_exception): renamed from `new'.

Wed Jan 20 03:39:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yycompile): rb_in_compile renamed to ruby_in_compile.

	* ruby.c (load_file): define DATA if __END__ appeared in script.

Tue Jan 19 14:57:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (here_document): need to protect lex_lastline.

	* parse.y (yylex): disable %//, %'', %``.

Tue Jan 19 05:01:16 1999  Koji Arai  <JCA02266@nifty.ne.jp>

	* array.c (beg_len): round range value too much.

Mon Jan 18 13:02:27 1999  Kuroda Jun  <jkuro@dwe.co.jp>

	* hash.c (env_keys): strchr() may return NULL.

Mon Jan 18 17:51:47 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* instruby.rb (wdir): install libruby.a in archdir.

	* lib/ftools.rb (install): removes file before installing.

Mon Jan 18 16:55:31 1999  MAEDA shugo  <shugo@aianet.ne.jp>

	* eval.c (rb_callcc): experimental continuation support.

Sun Jan 17 19:45:37 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* pack.c (pack_pack): nil packing caused SEGV.

Sat Jan 16 13:18:03 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_concat): character (fixnum) can be append to
	  strings

	* array.c (rb_ary_unshift): unshift returns array.

Sat Jan 16 01:39:19 1999  Yoshida Masato  <yoshidam@tau.bekkoame.ne.jp>

	* string.c (rb_str_split_method): UTF-8 support.

	* regex.c: UTF-8 support.

Thu Jan 14 00:42:55 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_gsub_bang): forget to add offset for null match.

	* eval.c (rb_thread_local_aset): can't modify in tainted mode.

	* hash.c (env_each_key): avoid generating temporary array.

Wed Jan 13 23:58:50 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_f_setenv): name and value can be tainted.

Wed Jan  6 02:42:08 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (Init_Bignum): forgot to define Bignum#===.

	* gc.c (gc_sweep): if add_heap() is called during GC, objects on
	  allocated heap page(s) are not marked, should not be recycled.

	* gc.c (gc_sweep): should refer latest freelist.

	* gc.c (id2ref): modified to support performance patch.

	* object.c (rb_obj_id): performance patch (no bignum for id).

Tue Jan  5 01:56:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* config.guess: merge up-to-date from autoconf 2.12.

	* array.c (rb_ary_join): avoid calling rb_protect_inspect() till
	  it is really needed.

	* object.c (rb_obj_inspect): show detailed information for the
	  instance variables (infinite loop can avoid now).

	* struct.c (rb_struct_inspect): avoid infinite loop.

Sun Jan  3 01:37:58 1999  Takao KAWAMURA  <kawamura@ike.tottori-u.ac.jp>

	* misc/ruby-mode.el (ruby-end-of-defun): moved too much.

	* misc/ruby-mode.el (ruby-mode-variables): set paragraph-separator
	  for the mode.

	* misc/ruby-mode.el: proper font-lock for `def' and `nil' etc.

Sat Jan  2 17:09:06 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_jump_tag): new api to invoke JUMP_TAG.  tag values
	  can obtained from rb_eval_string_protect()/rb_load_protect().

	* eval.c (rb_rescue): now catches all exceptions but SystemExit.

	* eval.c (rb_eval_string_protect): eval string with protection.

	* eval.c (rb_load_protect): load file with protection.

	* io.c (rb_io_puts): avoid infinite loop for cyclic arrays.

	* eval.c (rb_thread_local_aref): thread local hash tables.

	* object.c (rb_equal): check exact equal before calling `=='.

Thu Dec 31 22:28:53 1998  MAEDA shugo  <shugo@aianet.ne.jp>

	* eval.c (rb_f_require): feature names should be provided with
	  DLEXT extension.

	* marshal.c (Init_marshal): need to provide `marshal.so'.

Wed Dec 30 02:29:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (classname): do not call rb_ivar_set().

	* eval.c (ruby_run): finalizers were called too early.

Fri Dec 25 12:19:30 1998  Fukuda Masaki  <fukuda@wni.co.jp>

	* gc.c (rb_gc_mark): should not return on FL_EXIVAR.

Fri Dec 25 11:56:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (gc_mark): proper scanning for temporary region.

	* eval.c (TMP_ALLOC): protection for C_ALLOCA was broken.

Thu Dec 24 18:26:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* development version 1.3 released.

Thu Dec 24 00:17:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_load): top self should be set properly.

	* variable.c (classname): check __classpath__ if it is defined.

	* variable.c (classname): invalid warning at -v with static linked
	  ruby interpreter.

	* eval.c (is_defined): modified for expr::Const support.

	* eval.c (rb_eval): invoke method expr::Const if expr is not class
	  nor module.

	* parse.y (primary): enable expr::identifier as method
	  invocation.

Wed Dec 23 03:04:36 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): avoid too many loop pops for (?:..).

Tue Dec 22 18:01:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental version 1.1d1 released.

Mon Dec 21 01:33:03 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (TMP_PROTECT): add volatile to ensure GC protection.

	* string.c (rb_str_gsub_bang): calculate buffer size properly.

	* parse.y (lex_get_str): needed to return Qnil at EOS.

	* eval.c (find_file): check policy modified, raise exception
	  immediately for tainted load_path.

	* hash.c (rb_f_setenv): do not depend on setenv() nor putenv().

Thu Dec 17 06:29:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/tk/tkutil.c (tk_s_new): use rb_obj_instance_eval(), instead
	  of rb_yield_0().

	* eval.c (rb_f_require): forgot to call find_file in some cases.

	* eval.c (rb_f_require): `require "feature.so"' to load dynamic
	  libraries.  old `require "feature.o"' is still OK.

	* eval.c (rb_eval): yield without value dumped core.

Wed Dec 16 16:28:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental version 1.1d0 (pre1.2) released.

Wed Dec 16 10:43:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): bound check before calling re_match().

Tue Dec 15 13:59:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* error.c (exc_to_s): returns class name for unset mesg.

	* error.c (exc_initialize): do not initialize @mesg by "".

	* parse.y (nextc): __END__ should handle CR+LF newlines.

Wed Dec  9 13:37:12 1998  MAEDA shugo  <shugo@aianet.ne.jp>

	* pack.c (encodes): use buffering for B-encoding.

	* pack.c (pack_pack): Q-encoding by 'M'.

Tue Dec  8 14:10:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (generic_ivar_get): any object can have instance
	  variables now.  great improvement.

	* variable.c (rb_name_class): do not set __classpath__ by default,
	  use __classid__ instead.

Mon Dec  7 22:08:22 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.h (struct RFile): IO objects can have instance variables now.

	* parse.y (primary): allows `def obj::foo; .. end'.

Mon Dec  7 18:24:50 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* ruby.c (set_arg0): $0 support for HP-UX.

Mon Dec  7 01:30:28 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* dln.c (dln_strerror): better error messages on win32.

Sat Dec  5 23:27:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (here_document): indentable here-doc delimiter by
	  `<<-'.  Proposed by Clemens <c.hintze@gmx.net>.  Thanks.

Thu Dec  3 16:50:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/extmk.rb.in (realclean): trouble on install.

Sun Nov 29 22:25:39 1998  Takaaki Tateishi  <ttate@jaist.ac.jp>

	* process.c (f_exec): check number of argument.

Thu Nov 26 17:27:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c9 released.

Wed Nov 25 13:07:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_dup): do not copy additional data (STR_NO_ORIG).

	* parse.y (yycompile): reduce known memory leak (hard to remove).

Wed Nov 25 03:41:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* st.c (st_init_table_with_size): round size up to prime number.

Sat Nov 21 23:27:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (rb_hash_aset): reduce copying key strings.

	* gc.c (looks_pointerp): declare as inline function if possible.

	* st.c (PTR_NOT_EQUAL): compare hash values first before calling
	  comparing function.

	* st.c (ADD_DIRECT): save hash value in entries to reduce hash
	  calculation.

	* string.c (rb_str_gsub_bang): avoid rb_scan_args() to speed-up.

	* string.c (rb_str_sub_bang): ditto.

Sat Nov 21 18:44:06 1998  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>

	* time.c (time_s_now): had memory leak.

	* ext/md5/md5init.c (md5_new): had memory leak.

	* ext/md5/md5init.c (md5_clone): ditto.

Fri Nov 20 23:23:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/delegate.rb: do not propagate hash and eql?.

Thu Nov 19 01:40:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sample/ruby-mode.el (ruby-expr-beg): failed to find reserved
	  word boundary.

	* eval.c (rb_eval): avoid calling `concat' method.  calls
	  rb_ary_concat() directly for efficiency.

	* eval.c (rb_eval): actual rest arguments extended arrays too much.

Wed Nov 18 14:30:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (rb_define_global_function): global functions now be
	  module function of the Kernel.

Wed Nov 18 10:48:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (read_all): SEGV on large files.

Tue Nov 17 18:11:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c8 released.

Tue Nov 17 16:58:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (arg): assignment to attribute name start with capital
	  should be allowed.

	* eval.c (thread_alloc): needed to mark terminated threads too.

Tue Nov 17 12:33:48 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ext/extmk.rb.in (create_makefile): Set `libdir' to `@libdir@',
	  Set `pkglibdir' to `$libdir/$(RUBY_INSTALL_NAME)'.

Tue Nov 17 10:30:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (f_sprintf): %l%%c -> %%l%c

Tue Nov 17 01:08:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (ret_args): distinguish `a' and `*a' for the arguments
	  of yield and return.

	* eval.c (rb_eval): flip3 should work like sed.

	* eval.c (rb_eval): flip{2,3} now have independent state for each
	  scope to work fine with thread.

Mon Nov 16 23:26:29 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (primary): exec else clause if no exception raised.

Sun Nov 15 15:44:07 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* ext/extmk.rb.in (install): bug in target.

Sat Nov 14 11:02:05 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* Makefile.in (install): Give the argument `$(DESTDIR)' to
	  `instruby.rb'.

	* instruby.rb: Recognize ARG[0] as `destdir'.

	* instruby.rb: Give the argument `destdir' to `extmk.rb'.

	* ext/extmk.rb.in: Recognize ARG[1] as `$destdir'.

	* instruby.rb: Create the installation directories (bindir, libdir,
	  archdir, pkglibdir, archdir, and mandir) under `destdir', and
	  install all files under there.

	* ext/extmk.rb.in: Likewise.

Sat Nov 14 10:56:55 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* instruby.rb: Add the variable `pkglibdir'.

	* instruby.rb: Set the variable `libdir' to `$(libdir)', not
	  `$(libdir)/$(ruby_install_name)'. `libruby.so' and `libruby.so.LIB'
	  are installed at `libdir'.

	* instruby.rb: Set the variable `archdir' to `$(pkglibdir)/$(arch)'.

Fri Nov 13 19:43:29 1998  KIMURA Koichi  <kbk@kt.rim.or.jp>

	* missing/nt.c (SafeFree): wrong free offset.

Thu Nov 12 20:11:53 1998  Koji Arai  <JCA02266@nifty.ne.jp>

	* sample/ruby-mode.el: wrong highlight.

	* parse.y (parse_regx): newline in regexp was ignored.

Wed Nov 11 10:54:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (here_document): <<'FOO' should not escape anything.

	* parse.y (here_document): bare << here-doc available, even though
	  it's deprecated.

	* file.c (rb_file_s_readlink): return value should be tainted.

	* ext/etc/etc.c (setup_passwd): information (eg. GCOS name) should
	  be tainted (modified at Perl Conference).

Tue Nov 10 00:22:11 1998  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* configure.in: elf support for FreeBSD 3.x

Tue Nov 10 00:05:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): here document available in eval.

Mon Nov  9 17:55:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c7 released.

Fri Nov  6 19:25:27 1998  Takao KAWAMURA  <kawamura@ike.tottori-u.ac.jp>

	* sample/ruby-mode.el: font-lock patch.

Thu Nov  5 15:42:22 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sample/README, lib/README: simple description for each file.

Wed Nov  4 18:14:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (assign): attribute assignment should be called as public.

Tue Nov  3 23:36:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_dump): dumps core for negative char value.

	* regex.c (re_compile_pattern): out of boundary access for empty
	  regexp.

Mon Nov  2 22:54:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_aset): `str[str]' replaces first match.

Mon Nov  2 18:24:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_create): was accessing modified status.

Sun Nov  1 01:18:52 1998  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* gc.c (xrealloc): size 0 needs round up to 1.

Sat Oct 31 23:18:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_split_method): negative LIMIT means number of
	  split fields are unlimited, as in perl.

	* string.c (rb_str_split_method): if LIMIT is unspecified,
	  trailing null fields are stripped.

Sat Oct 31 04:16:14 1998  Inaba Hiroto  <inaba@st.rim.or.jp>

	* string.c (str_aref): regexp index SEGVed.

Fri Oct 30 14:33:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (reg_match): returns nil for unmatch.

	* dir.c (dir_entries): new method.

	* eval.c (block_pass): do not push block, substitute it.

Fri Oct 30 01:28:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* range.c (range_check): avoid <=> check for Fixnums.

	* array.c (rb_ary_aset): accept negative index.

Wed Oct 28 22:00:54 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): access out of boundary fixed.

Wed Oct 28 11:37:42 1998  TAMITO  <tommy@valley.ne.jp>

	* io.c (f_select): fd number comparison bug.

Tue Oct 27 23:07:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sample/ruby-mode.el (ruby-parse-region): forgot to support %w()
	  style array literal.

	* eval.c (rb_eval): unused block raises warning.

Mon Oct 26 09:37:53 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (dvar_asgn_push): dvar pushed too many times if
	  variable-in-block first appear in loops.

Sun Oct 25 22:59:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (set_list_bits): was using wrong offset.

Thu Oct 22 00:07:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_obj_method): method retrieved from tainted object
	  should be tainted too.

	* eval.c (method_call): safe_level should be restored during
	  Method#call.

Wed Oct 21 14:21:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (Init_IO): new constants IO::SEEK_{SET,CUR,END}.

	* io.c (rb_f_ungetc): ungetc pushes a char back into STDIN.

Mon Oct 19 11:50:00 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>

	* ext/extmk.rb: Load '@top_srcdir@/lib/find.rb', not
	  '../lib/find.rb'.

	* ext/extmk.rb: Distinguish between `top_srcdir' and `topdir'.

	* Makefile.in (CFLAGS): Add `-I.'.

	* Makefile.in (lex.c): Give `@srcdir@/keywords' to gperf, not
	  `keywords'.

	* instruby.rb: Use `CONFIG["bindir"]', instead of `prefix + "/bin"'.

	* instruby.rb: Use `CONFIG["libdir"]', instead of `prefix + "/lib"'.

	* instruby.rb Use `CONFIG["mandir"]', instead of `prefix + "/man"'.

	* instruby.rb (wdir): Add the variable to preserve the current
	  working directory.

	* instruby.rb: Chdir to wdir before install `config.h' and
	  `rbconfig.rb'.

Mon Oct 19 10:07:01 1998  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>

	* eval.c (rb_eval): reduce recursive calls to rb_eval().

Fri Oct 16 15:31:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_new_internal): timeval must be positive.

Thu Oct 15 13:54:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (arg): local variables can be accessed within right side
 	  expression in assignment, notably in blocks.

Wed Oct 14 00:18:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (Init_Array): Array#=== is now for equal check, not
	  inclusion check.

	* parse.y (when_args): `when a, *b' style new syntax for array
	  expansion in `case'.

Tue Oct 13 14:30:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (rb_obj_untaint): taint marks can be unset.

	* eval.c (rb_eval): taint propagation for embedded strings.

Mon Oct 12 13:27:15 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_call0): check stack depth more frequently.

Mon Oct 12 08:08:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_p): can print even in secure mode.

Sun Oct 11 22:50:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (rb_const_set): taint check for modification.

	* variable.c (rb_ivar_set): taint check for modification.

	* string.c (rb_str_modify): taint check for modification.

	* hash.c (rb_hash_modify): taint check for modification.

	* array.c (rb_ary_modify): taint check for modification.

	* ruby.h (FL_TAINT): taint for all objects, not only strings.

Fri Oct  9 17:01:14 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (read_all): read() returns "" at immediate EOF.

	* io.c (io_read): read(nil) read all until EOF.

Thu Oct  8 13:32:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_dump): marshal can dump Time object now.

	* marshal.c (Init_marshal): rename marshal methods `_dump_to' to
 	  `_dump', `_load_from' to `_load'.

	* parse.y (rb_intern): "+=".intern generates proper symbol.

Mon Oct  5 18:31:53 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c6 released.

Fri Oct  2 14:22:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): `/\s*(--)$/ =~ "- --"' did not match,
	  because of wrong optimize condition.

Mon Oct  1 01:55:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (rb_intern): should not raise exceptions.

	* parse.y (yylex): symbol like `:foo?=' should not be allowed.

	* ext/extmk.rb.in: makes *.a for static link modules.

Wed Sep 30 14:13:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_start): supports making a subclass of the
	  Thread class.

Tue Sep 29 17:46:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_thread_join): join is now an instance method.

Fri Sep 25 12:01:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): `@foo!' should be an error.

Thu Sep 24 14:55:06 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* ext/etc/etc.c (Init_etc): wrong field definition.

Thu Sep 17 17:09:05 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_reopen): was creating FILE* for wrong fd.

Tue Sep 15 05:28:11 1998  Koji Arai  <JCA02266@nifty.ne.jp>

	* regex.c (re_compile_pattern): forgot to fixup for the pattern
 	  like (?=(A)|(B)).

Tue Sep 15 01:06:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (rb_io_gets_internal): do not set $_ by default, only
	  gets/readline set the variable.

	* eval.c (rb_f_load): load toplevel class is set to anonymous
	  module if safe_level >= 5, to encapsulate modification.

	* eval.c (rb_f_load): set frame properly.

	* string.c (rb_str_each_line): do not set $_.

Mon Sep 14 14:42:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): beginning and end of the string, do not
	  automatically match `\b'.

	* string.c (scan_once): consume at least on character.

	* regex.c (re_search): wrong behavior for negative range.

Sat Sep 12 21:21:26 1998  Koji Arai  <JCA02266@nifty.ne.jp>

	* regex.c (re_search): range value should be maintained.

Thu Sep 10 10:55:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (backref_error): yyerror does not understand formats.

Tue Sep  8 18:05:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c5 released.

Tue Sep  8 10:03:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_each_line): wrong line splitting with newline at
 	  top of the string.

	* string.c: non bang methods return copied string.

	* eval.c (f_END): needed to initialize frame->argc;

Fri Sep  4 11:27:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (bigadd): proper sign combination.

	* regex.c (re_search): wrong return value for \A.

Thu Sep  3 14:08:14 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c4 released.

Tue Sep  1 10:47:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (slow_search): do not compare llen and blen.  llen may
	  be longer than blen, if little contains 0xff.

	* regex.c (mbctab_euc): set 0x8e as multibyte character.

	* string.c (str_inspect): mask character for octal output.

Mon Aug 31 15:32:41 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): use calculated offset if exactn is the
	  first opcode in the compiled regexp.

	* regex.c (bm_search): use Boyer-Moore search for simple search.

	* regex.c (must_instr): wrong length check if pattern includes
	  byte escape by 0xff.

	* regex.c (re_compile_pattern): need not to check current_mbctype.

Sat Aug 29 16:31:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_check_safe_str): avoid calling rb_id2name() in normal 
	  cases to speed-up.

	* eval.c (thread_raise): do not save context of terminated thread.

	* regex.c (re_compile_pattern): mask \nnn over 256.

Sat Aug 29 02:09:46 1998  Koji Arai  <JCA02266@nifty.ne.jp>

	* sprintf.c (f_sprintf): wrong buffer size check.

Fri Aug 28 01:57:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): accepts (?ix-ix) and (?ix-ix:...).

Fri Aug 28 12:25:33 1998  Hiroshi Igarashi  <igarashi@ueda.info.waseda.ac.jp>

	* ruby.c (ruby_require_modules): load modules in appearing order.

Fri Aug 28 01:57:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): accepts (?ix-ix) and (?ix-ix:...).

Thu Aug 27 12:54:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c3 released.

Wed Aug 26 14:40:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): check whether ruby_class is properly set,
	  before accessing it.

	* eval.c (rb_obj_instance_eval): ruby_class should be Qnil for
	  special objects like Fixnums.

	* ext/tkutil/tkutil.c (Init_tkutil): removes calls to
	  rb_yield_0().  used instance_eval() instead in the tk.rb.

Wed Aug 26 11:47:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): pop non-greedy stack elements on success.

Wed Aug 26 09:25:35 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ruby.h: add #define environ for cygwin32.

Tue Aug 25 08:57:41 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (rb_ary_sort_bang): temporarily freeze sorting array.

Mon Aug 24 18:46:44 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* dln.c (dln_find_1): path check was too strict.

Mon Aug 24 15:28:11 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* parse.y (f_arglist): opt_nl added after f_args.

Fri Aug 21 01:06:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c: grand renaming on socket.c.

	* ext/socket/socket.c (inet_aton): supply inet_aton for those
	  systems that do not have it.

	* ext/socket/socket.c (setipaddr): use inet_aton instead of
	  inet_addr.

	* ext/socket/socket.c (tcp_s_gethostbyname): new method: works
	  like Socket.gethostbyname but returning array contains ip-addrs
	  as octet decimal string format like "127.0.0.1".

	* ext/socket/socket.c (mkhostent): return format changed to
	  [host, aliases, type, ipaddr..]  as documented.

Wed Aug 19 00:31:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_ctl): forgot to place TRAP_END at right position.

Fri Aug 14 11:01:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (call_trace_func): save __FILE__, __LINE__ before
 	  executing trace_func, since trace function should not corrupt
 	  line number information.

Thu Aug 13 15:09:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (ary_s_new): was marking unallocated region on GC.

Tue Aug 11 11:57:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c2 released.

Mon Aug 10 14:05:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* process.c (f_system): removed fflush(stdin).

Fri Aug  7 17:44:44 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* error.c (err_snprintf): replace sprintf for fixed sized buffer,
 	  with snprintf to avoid buffer over-run.  For systems which does
	  dot provide snprintf, missing/snprintf.c added.

Wed Aug  5 00:47:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (rb_reg_search): recycle match object.

Mon Aug  3 09:17:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (rb_str_gsub_bang): do not allocate temporary string.

	* string.c (rb_str_sub_bang): use inline replace.

Wed Jul 29 00:36:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (hash_s_new): the default value can be specified.

	* hash.c (hash_default): method to set the default value.

	* hash.c (hash_aref): now returns the default value.

Tue Jul 28 13:03:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (ary_s_new): argument to specify initial value is added.

	* array.c (ary_s_new): specifies size, not capacity.

Mon Jul 27 12:39:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_replace): zero fill for expansion gap.

	* regex.c (mbctab_euc): set flags on for 0xA1-0xFE.  suggested by
	  <inaba@st.rim.or.jp>.

	* string.c (str_inspect): consider current_mbctype.

Sun Jul 26 15:37:11 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* array.c (ary_s_new): Array.new(1<<30) dumps core.

Fri Jul 24 13:40:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c1 released.

Fri Jul 24 02:10:22 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (r_bytes2): allocated buffer size was too short.

	* marshal.c (w_object): saves all options, not only casefold flag.

	* re.c (reg_clone): now copies options properly.

	* re.c (reg_get_kcode): code number was wrong.

Thu Jul 23 13:11:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_attr): argument should be symbol or string.

Wed Jul 22 11:59:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (calculate_must_string): wrong offset added.

Wed Jul 22 11:59:59 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* st.c (rehash): still had a GC problem.  fixed.

Tue Jul 21 13:19:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (gc_mark_threads): crashed on GC before thread allocation.

	* st.c (rehash): GC during rehash caused SEGV.

Tue Jul 21 01:25:10 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (f_sprintf): integer formatter totally re-written.

	* sprintf.c (remove_sign_bits): support uppercase hexadecimal.

Sat Jul 18 00:14:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (f_sprintf): proper sign position for %X and %O.

Fri Jul 17 14:10:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1c0 released.

Fri Jul 17 08:01:49 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* process.c (f_exec): Check_SafeStr() added.

	* process.c (f_system): Check_SafeStr() moved before fork().

Thu Jul 16 22:58:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (scan_once): substrings to the block should not be
 	  tainted.  use reg_nth_match(), not str_substr().

	* string.c (str_substr): needed to transfer taint.

Thu Jul 16 16:15:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* gc.c (xmalloc): object allocation count added to GC trigger.

	* eval.c (thread_save_context): avoid marking uninitialized stack
	  in thread_mark.  GC may be triggered by REALLOC_N().

Wed Jul 15 15:11:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_31.

Wed Jul 15 15:05:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_create): exit() and abort() in threads now
 	  forwarded to main_thread.

Tue Jul 14 14:03:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (obj_instance_variables): list names that is not
	  instance variables.

	* gc.c (GC_MALLOC_LIMIT): choose smaller limit value.

Mon Jul 13 12:39:38 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (str2cstr): should not return NULL.

Fri Jul 10 11:51:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (gettable): needed to add dyna_in_block() check.

Thu Jul  9 17:38:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_30.

Thu Jul  9 16:01:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sprintf.c (fmt_setup): format specifier for long needed.

	* sprintf.c (f_sprintf): ditto.

	* numeric.c (fix2str): ditto.

	* eval.c (thread_create): no more ITIMER_REAL.

	* eval.c (thread_create): thread finalization needed before
	  aborting thread if thread_abort is set.

Wed Jul  8 18:17:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (big_pow): abandon power by bignum (too big).

Tue Jul  7 13:58:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_catch): add C level catch/throw feature.

Mon Jul  6 15:18:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (arg): proper return values for `||=' and `&&='.

Fri Jul  3 16:05:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_29.

Fri Jul  3 11:20:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (r_byte): byte should not extend sign bit.

	* numeric.c (fix_mul): use FIX2LONG() instead of FIX2INT() for
	  64bit architectures.

	* marshal.c (r_bytes): remove weird casting between pointer and int.

	* process.c (proc_setsid): new method Process#setsid().

Thu Jul  2 12:49:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* marshal.c (w_object): remove `write_bignum' label for 64bit
 	  architectures.

	* marshal.c (r_bytes): needs int, not long.

Wed Jul  1 14:21:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (flo_plus): should not allow addition with strings.

Wed Jul  1 13:09:01 1998  Keiju ISHITSUKA  <keiju@rational.com>

	* numeric.c (num_uminus): wrong coerce direction.

Tue Jun 30 10:13:44 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (f_p): accepts arbitrary number of arguments.

	* eval.c (rb_yield_0): there's some case that iterator_p() returns 
	  true even if the_block was not set.  check added.

Tue Jun 30 01:05:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (BEGIN_CALLARGS): adjust the_block before evaluating the
	  receiver's value and the arguments.

Fri Jun 26 18:02:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_28.

Fri Jun 26 11:01:26 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* string.c (str_aset_method): needed to convert to string.

Thu Jun 25 02:05:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): optimize for `.*' at beginning of the
	  pattern.

	* regex.c (re_search): optimize for character class repeat at
	  beginning of the pattern.

	* regex.c (re_compile_pattern): detect optimization potential for
	  the compiled patterns.

Thu Jun 25 00:02:26 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* re.c (reg_s_new): flag value was wrong.

Wed Jun 24 23:45:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_search): wrong anchor handling for reverse search.

Wed Jun 24 02:18:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (mlhs): `((a,b)),c = [[1,2]],3' assigns a=1,b=2,c=3.

Tue Jun 23 11:46:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): `&&=' and `||=' added.

Sat Jun 20 02:53:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (assignable): nesting local variables should have higher
 	  priority than normal local variables for assignment too.

Fri Jun 19 18:28:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_27.

Fri Jun 19 14:34:49 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (assign): support hack for nested multiple assignment.

	* parse.y (mlhs): nested multiple assignment.

	* eval.c (rb_eval): in-block variables now honors static scope.

	* configure.in: RSHIFT check moved to configure.

Thu Jun 18 16:46:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_26.

Thu Jun 18 13:37:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (file_s_ftype): uses lstat(2) instead of stat(2).

	* dir.c (dir_s_glob): there can be buffer overrun, check added.

	* eval.c (f_binding): handles in-block variables declared after
	  binding's generation.

	* numeric.c (flo_floor): floor, ceil, round added to Float.

Wed Jun 17 11:20:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (gettable): nesting local variables should have higher
 	  priority than normal local variables.

Tue Jun 16 12:30:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (str2inum): handles `+ddd'.

	* struct.c (make_struct): name parameter can be nil for unnamed
	  structures.

Mon Jun 15 16:30:10 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (class_s_inherited): prohibiting to make subclass of
	  class Class.

	* object.c (module_s_new): support for making subclass of Module.

	* parse.y (yycompile): clear eval_tree before compiling.

Fri Jun 12 17:58:18 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (eval): write back the_dyna_var into the block.

Thu Jun 11 18:19:18 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_25.

	* eval.c (dvar_add_compiling): register dyna_var at compile time.

	* regex.c (re_compile_pattern): RE_DUP_MAX iteration is too big.

Wed Jun 10 15:12:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_eof): do not block other threads.

	* signal.c (trap): reserve SIGALRM for thread.

	* eval.c (thread_create): use ITIMER_REAL also to avoid system
	  call blocking.

	* io.c (f_syscall): add TRAP_BEG, TRAP_END around system calls.

	* io.c (io_ctl): add TRAP_BEG, TRAP_END around system calls.

	* enum.c (enum_collect): did not collect false values.

	* array.c (ary_new2): forgot to initialize capa field.

Tue Jun  9 18:36:15 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* string.c (str_split_method): split dumped core for "\xff".

Tue Jun  9 16:22:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_24.

Tue Jun  9 16:04:07 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/kconv/kconv.c (kconv_guess): more precise decision for EUC,
	  using jless algorithm (3 sequential EUC hiragana characters).

Tue Jun  9 15:12:44 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/kconv/kconv.c (kconv_guess): wrong guess for EUC as SJIS in
	  some cases (0xe0 - 0xef).

	* gc.c (xmalloc): insert size check for big (negative in signed)
	  allocation size.

Tue Jun  9 02:54:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/parsedate.rb: wday moved to the last in the return values.

Mon Jun  8 10:40:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_split_method): split dumped core for "\0".

Sat Jun  6 22:50:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (calculate_must_string): wrong condition for
	  {start,stop}_nowidth.

	* regex.c (re_match): various features imported from GNU regex.c
 	  0.12, such as nested grouping, avoiding infinite loop with empty
 	  match, etc.

	* regex.c (register_info_type): now use union.

	* regex.c (re_search): more precise anchor(^) check.

Wed Jun  3 18:07:54 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (reg_raise): check rb_in_compile, not rb_in_eval.

Mon Jun  1 05:26:06 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* string.c (trnext): casting to signed char* needed.

Tue Jun  2 16:00:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c (udp_addrsetup): error check enhanced.

	* ext/socket/socket.c (sock_s_getservbyaname): use strtoul(), if
	  possible.

Sat May 30 07:10:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (reg_prepare_re): no more needless regular expression
 	  recompile on casefold conditions.

Thu May 28 18:02:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (nil_plus): no more `+' method for nil.

Wed May 27 17:33:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (hash_fetch): new method.

	* regex.c (re_search): check whether translate table is set.

Tue May 26 11:39:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_23.

	* parse.y (yylex): no UPLUS/UMINUS for 1st argument if
	  parenthesises are omitted.

Tue May 26 01:09:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): (?XI) for turns off the
	  corresponding option.

Mon May 25 12:38:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): inline i option (?i).

	* regex.c (re_compile_pattern): inline x option (?x).

	* regex.c (re_compile_pattern): x option for regexp.

	* dir.c (dir_s_open): returns block's evaluated value.

	* io.c (f_open): returns block's evaluated value.

	* ext/curses/curses.c (curses_addstr): nil argument caused SEGV.

Fri May 22 11:52:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): push mark on (?:), so that
	  laststart check for {a,b} can be done.

Thu May 21 17:31:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_match): wrong match (too non-greedy) for `{a,b}?'.

	* io.c (io_lineno): new method IO#lineno, IO#lineno=.

Wed May 20 06:04:43 1998  MAEDA shugo  <shugo@aianet.ne.jp>

	* BeOS patch.

Wed May 20 16:32:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (BIGDN): use RSHIFT(), instead of mere `>>'.

Tue May 19 16:36:26 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_22.

Tue May 19 16:31:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (assignable): specification changed for in-block
 	  variable definition.

	* eval.c (dyna_var_asgn): error in in-block variables' compile
 	  time definition.

	* parse.y (str_extend): wrong nesting detection.

Tue May 19 09:47:55 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* numeric.c (num2int): re-defined (extensions may use this).

Mon May 18 16:40:50 1998  MAEDA shugo  <shugo@aianet.ne.jp>

	* error.c (get_syserr): BeOS support.

	* configure.in: modified for BeOS.

	* string.c (str_dump): do not call isascii().

	* sprintf.c (remove_sign_bits): forgot to initialize end pointer.

	* glob.c: #include <alloca.h> added.

Mon May 18 14:52:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_21.

Mon May 18 03:27:57 1998  MAEDA shugo  <shugo@aianet.ne.jp>

	* file.c (file_s_expand_path): optional second argument
	  `default_directory' added.

Sat May 16 22:06:52 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* error.c (RAISE_ERROR): wrong error message

Fri May 15 14:43:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_20.

Thu May 14 14:44:21 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* sun4 cc patches for intern.h and regex.h.

Thu May 14 14:03:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* random.c (RANDOM_MAX): guessing proper maximum value for random
 	  numbers.

	* random.c (f_rand): use drand48 if possible.

Wed May 13 19:05:20 1998  MAEDA shugo  <shugo@aianet.ne.jp>

	* BeOS patches for io.c, error.c and config.guess.

Wed May 13 14:56:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_19.

	* most of the Mac and BeOS patches merged, except path separators.

	* error.c (err_append): generated SyntaxError was String.

	* ruby.h: xxx2INT, xxx2UINT checks values as int, not long.

	* ruby.h: remove typedef's. INT, UINT, UCHAR, USHORT.

Tue May 12 17:38:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_18.

Tue May 12 11:38:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* error.c (syserr_errno): returns errno of the SystemCallError.

	* error.c (rb_sys_fail): saves errno in the Exception.

	* error.c (set_syserr): no need to protect syserr_list.

	* error.c (rb_sys_fail): no more bufsize limit.

	* error.c (set_syserr): integer value of errno can be accessed by
	  Errno::EXXX::Errno.

Sun May 10 03:10:33 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>

	* io.c (io_tell etc.): moved from File class to IO class.

Fri May  8 12:26:37 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (pack_unpack): should be unsigned int (was signed int).

Thu May  7 16:34:10 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* pack.c (pack_pack): `V', `N' uses newly created NUM2UINT().

	* ruby.h (NUM2UINT): new macro.

	* bignum.c (big2uint): try to convert bignum into UINT.

	* re.c (reg_match): needed to return false for match with nil.

	* gc.c (obj_free): wrong condition to free string.

Wed May  6 21:08:08 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ruby.c (ruby_process_options): modified for DJGPP.

Wed May  6 15:48:03 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_17.

Wed May  6 01:37:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c: remove global variable `errat'.

	* eval.c (rb_longjmp): embed error position information in the
 	  exception object.

Sat May  2 12:20:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (reg_search): supports reverse search.

	* string.c (str_index_method): does update $~ etc.

	* eval.c (f_load): needed to clear the_dyna_vars.

	* eval.c (dyna_var_asgn): do not push dyna_var, which is id == 0.

	* error.c (Init_Exception): NotImplementError is no longer
	  StandardError, which is not handled by default rescue.

Fri May  1 00:35:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (proc_options): `-d' turns on verbose flag too.

	* error.c (exception): last argument may be the superclass of the
	  defining exception(s).

	* io.c (Init_IO): EOFError is now subclass of the IOError.

	* io.c (Init_IO): forgot to define IOError.

	* error.c (Init_Exception): old Exception class renamed to
	  StandardError.  Exception now replaces old GlobalExit.

	* error.c (Init_Exception): Exception is now the root of the
	  Global Exits.  There's no longer GlobalExit class.

	* util.c (ruby_mktemp): check TMP, TMPDIR first.

Thu Apr 30 01:08:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/tk.rb: call 'unknown', if proc not defined.

	* eval.c (handle_rescue): default rescue handles `Exceptional' not 
	  only the instance of the `Exception's.

	* eval.c (f_raise): exception can be any object.

	* time.c (time_gm_or_local): call time_gmtime or time_localtime.

	* eval.c (f_raise): raises TypeError if the class which is not a
	  subclass of String is specified (checked in exc_new()).

	* error.c (exc_new): need to check whether invalid class (not a
	  subclass of String) is specified.

Wed Apr 29 21:05:44 1998  WATANABE Hirofumi  <eban@os.rim.or.jp>

	* ruby.c (proc_options): option '-e' via tempfile.

Tue Apr 28 15:27:58 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_16.

Tue Apr 28 00:07:38 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (obj_is_proc): type check predicate.

	* eval.c (obj_is_block): ditto.

Mon Apr 27 16:59:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/gtk/gtk.c (Init_gtk): use timeout, not idle to avoid
	  consuming CPU too much.

	* lib/tk.rb: use tcltklib#_invoke instead of `_eval'.

Mon Apr 27 16:59:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (ary_sort): use dup, not clone.

Mon Apr 27 13:46:27 1998  Tadahiro Maebashi  <maebashi@iij.ad.jp>

	* ext/tcltklib/tcltklib.c (ip_invoke): invoke tcl command
	  directly.  need not worry about escaping tcl characters.

Mon Apr 27 12:04:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* random.c (f_rand): do not call srand() implicitly.

Fri Apr 24 14:35:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_15.

	* parse.y (assignable): dyna_var_asgn actually defines nested
	  local variables in outer context.

	* random.c (f_rand): call srand(), if it has not called yet.

	* random.c (f_srand): use tv_usec as the default seed.

	* eval.c (rb_eval): values of nested local variables should be
 	  independent.

	* eval.c (rb_yield_0): local variables wrong nested conditions.

Wed Apr 22 23:27:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (select_get_io): get IO object by `to_io'.

	* io.c (io_to_io): method to retrieve IO object, from delegating
 	  object for example.

Wed Apr 22 16:52:37 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_14.

	* string.c (str_modify): check for embedded pointer reference.

	* gc.c (obj_free): ditto.

	* pack.c (pack_pack): p/P template to embed pointers.

Wed Apr 22 00:07:10 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* array.c (ary_rindex): embarrassing typo.

Tue Apr 21 12:31:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_13.

	* configure.in (RUBY_LIB): supports --program-{prefix,suffix}.

	* array.c (ary_rindex): new method.

	* io.c (io_binmode): should return self.

Tue Apr 21 08:23:04 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* parse.y (here_document): calling parse_string with wrong
	  arguments.

	* struct.c (struct_aset): problem member assignment with name.

Mon Apr 20 14:47:49 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_12.

	* time.c (time_arg): args may be string (support for reduced
	  implicit type conversion).

	* lib/base64.rb: changed to use pack/unpack with `m' template.

Mon Apr 20 06:23:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (mod_remove_const): new method.

Sat Apr 18 03:53:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (hash_each_with_index): removed.  use Enumerable's
	  each_with_index instead.

	* class.c (rb_include_module): check for super modules, since
 	  module's included modules may be changed.

Fri Apr 17 21:50:47 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* marshal.c (r_long): r_byte() may return signed byte.

Fri Apr 17 11:58:30 1998  NAGAI Hidetoshi  <nagai@dumbo.ai.kyutech.ac.jp>

	* ext/tcltklib/tcltklib.c (lib_mainloop): thread and interrupt check.

Fri Apr 17 11:06:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (find_file): try to fopen() to check whether file exists.

	* ruby.c (load_file): ditto.

	* struct.c (struct_aset): struct member can be set by member name.

Fri Apr 17 00:47:19 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/extmk.rb.in: added m68k-human support

	* file.c (LOCK_SH): defines moved.

	* array.c (ary_flatten_bang): simplified loop.

Thu Apr 16 16:52:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_11.

	* lib/tk.rb: thread support (experimental - maybe slow).

	* eval.c (rb_longjmp): trace event on exception in raising
 	  context, just before raising exception.

	* struct.c (struct_s_members): forgot to check singletons.

	* struct.c (struct_aref): members can be accessed by names too.

	* array.c (ary_flatten): new method.

	* eval.c (rb_longjmp): prints exception information with `-d'.

	* object.c (any_to_s): remove class name restriction.

Thu Apr 16 01:38:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (thread_flock): do not block other threads.

	* eval.c (thread_trap_eval): signals are now delivered to the
 	  current thread again.  In case that the current thread is dead,
 	  signals are forwarded to the main thread.

	* string.c (str_new4): need not to duplicate frozen strings.

Wed Apr 15 08:33:47 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* struct.c (struct_inspect): remove restriction for struct names.

Wed Apr 15 02:55:02 1998  Kazuya 'Sharl' Masuda  <sharl@www.ufo.co.jp>

	* x68 patches to config.sub, ext/extmk.rb.in

Wed Apr 15 01:22:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_dup_frozen): do not duplicate frozen strings.

	* parse.y (yylex): allow nested parenthesises.

	* io.c (obj_displayln): prints newline after `display'ing the
	  receiver.

	* io.c (io_puts): avoid generating "\n" each time.  use RS_default
 	  instead.

	* io.c (f_p): ditto.

Tue Apr 14 22:18:17 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* struct.c (struct_aref): should not subtract negative index.

Tue Apr 14 11:34:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_10.

	* parse.y: token names prefixed by `t'.

	* struct.c (struct_s_def): supports subclassing of Struct.

	* io.c (io_s_new): supports subclassing of IO.

Mon Apr 13 11:07:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (f_binding): need to restore method name.

	* eval.c (rb_call0): raises SystemStackError, not Fatal.

	* io.c (obj_display): same as `print self'.

	* io.c (f_p): can now be called in the method form.

	* re.c (reg_regsub): needed to be mbchar aware.

Mon Apr 13 13:18:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_trap_eval): all signals delivered to main_thread.

Mon Apr 13 12:47:03 1998  TAKAHASHI Masayoshi  <maki@inac.co.jp>

	* re.c (kcode_set_option): did not set SJIS on SJIS condition.

Sun Apr 12 22:14:07 1998  Kazunori NISHI  <kazunori@swlab.csce.kyushu-u.ac.jp>

	* array.c (ary_uniq_bang): should be `==', not `='. embarrassing.

Sat Apr 11 02:13:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (ary_subseq): SEGVed for `[][1,1]'.

Fri Apr 10 21:29:06 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* array.c (ary_subseq): add check for beg larger than array length.

Wed Apr  8 17:24:11 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* dir.c (dir_s_open): can be called with block (like IO#open).

	* dir.c (dir_s_chdir): print directory path on error.

	* dir.c (dir_s_chroot): ditto

	* dir.c (Init_Dir): needed to override `new'.

Thu Apr  9 18:24:58 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_09.

	* string.c (str_cmp): do not depend on sentinel at the end of the
	  strings. 

	* string.c (str_chomp_bang): forgot to set the sentinel.

Wed Apr  8 00:59:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* bignum.c (big2int): converted int may be too big to fit in
	  signed int.

	* parse.y (arg): `foo += 1' should not cause an error.

	* variable.c (rb_const_defined): returned false even if the
	  constant is defined at the top level.

	* eval.c (f_local_variables): dyna_var->id may be null.  should
	  have checked before calling str_new2().

Tue Apr  7 01:15:15 1998  Kaneko Naoshi  <wbs01621@mail.wbs.or.jp>

	* re.c (reg_regsub): need to check string boundary.

Tue Apr  7 19:19:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_cmp): returns either 1, 0, -1.

	* array.c (ary_cmp): should check array length, too

Tue Apr  7 18:50:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_08.

Tue Apr  7 18:31:27 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* instruby.rb (mandir): dll installation for cygwin32

Tue Apr  7 01:16:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* config.sub (maybe_os): TOWNS support?

	* config.guess: too strict check for libc versions on linuxes.

	* experimental release 1.1b9_07.

	* array.c (ary_cmp): compare each element using `<=>'.

	* hash.c (hash_each_with_index): yields [value, key] pair.

	* class.c (class_protected_instance_methods): list protected
	  method names.

	* class.c (ins_methods_i): exclude protected methods.

	* eval.c (PUSH_BLOCK): dynamic variables can be accessed from
 	  eval() with bindings.

Mon Apr  6 14:49:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_yield): must return evaluated value.

Fri Apr  3 13:07:29 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_schedule): context switch bypassed on wrong
	  conditions.

	* variable.c (rb_name_class): set classname by id before String
 	  class is initialized (1.0 behavior restored).

Fri Apr  3 11:25:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (num2int): no implicit conversion from string.

	* numeric.c (num2int): check whether `to_i' returns an Integer.

	* numeric.c (num_zero_p): new method.

	* numeric.c (num_nonzero_p): new method.  returns the receiver if
 	  it's not zero.

	* eval.c (obj_instance_eval): the_class should be the object's
	  singleton class.

	* error.c (exc_s_new): message is converted into a string.

Thu Apr  2 18:31:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (obj_call_init): every object call `initialize'.

Wed Apr  1 08:51:53 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* parse.y (stmt): UNTIL_MOD should be for stmt, not only for expr.

Wed Apr  1 01:20:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (true_and): boolean operators &, | and ^.

Tue Mar 31 13:23:58 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (ary_compact_bang): returns nil, if it does not modify
	  the array like String's bang methods.

	* array.c (ary_uniq_bang): new method to remove duplicate items.

	* eval.c (bind_s_new): new method.

	* numeric.c (num2int): raise exception if Fixnums too big to
 	  convert into `int' in case that sizeof(int) < sizeof(INT).

	* string.c (str_center): SEGV on negative width.

	* eval.c (eval): forgot to set sourcefile.

Mon Mar 30 11:12:29 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (f_test): raises exception for unknown command.

	* eval.c (Init_eval): `class_eval': alias to the module_eval.

Mon Mar 30 18:50:42 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* string.c (str_capitalize_bang): did not check string modification.

	* string.c (str_delete_bang): wrong conversion.

	* string.c (str_intern): typo in error message.

Mon Mar 30 01:44:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (obj_instance_eval): accepts block as evaluation body.
	  No compilation needed each time.

	* eval.c (mod_module_eval): ditto

	* file.c (file_s_umask): umask did not return old values, if no
 	  argument given.

Sun Mar 29 00:54:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (f_throw): nil returned always.

Sat Mar 28 20:40:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_06.

Sat Mar 28 16:07:11 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* io.c (io_closed): should not cause exception for closed IO.

	* string.c (str_tr): returned nil for success.

Sat Mar 28 00:47:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (f_local_variables): new method to return an array of
 	  local variable names.

	* variable.c (obj_instance_variables): now returns an array of
	  variable names, as described in the reference.

	* eval.c (rb_attr): honors default method visibility of the
	  current scope.

Fri Mar 27 13:49:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_05.

	* ruby.c (ruby_prog_init): `site_ruby' added to load_path.

	* ruby.c (ruby_prog_init): load-path order changed.  Paths in
 	  the RUBYLIB environment variable comes first in non-tainted
 	  mode.

Thu Mar 26 11:51:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_call): new feature: `protected' methods.

	* string.c (str_dump): new method.

	* eval.c (block_pass): block argument can be nil, which means no
	  block is supplied for the method.

Wed Mar 25 21:20:13 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* string.c (str_reverse_bang): string copied to wrong place.

Wed Mar 25 08:12:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (flo_modulo): caused SEGV if left operand is not a
 	  float value.

	* eval.c (f_eval): optional third and fourth argument to specify
	  file-name and line-number.

	* eval.c (eval): file-name and line-number set properly.

	* parse.y (assign_in_cond): literal assignment is now warning, not 
	  compile error.

	* error.c (Warn): Warn() always print message, OTOH Waring()
	  prints when verbose flag is set.

Tue Mar 24 12:50:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (ruby_prog_init): `.' should come last in the load-path.

	* eval.c (Init_eval): `__send__', alias for `send'.

Mon Mar 23 12:44:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_chomp_bang): now takes `rs' as an argument.

	* eval.c (thread_free): main_thread should not be freed.

Fri Mar 20 16:40:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_chomp_bang): chomp! (and other ! methods) returns
 	  nil if it does not modify the string.

	* string.c (str_sub_iter_s): should check last pattern since it
 	  may be matched to null.

Thu Mar 19 13:48:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_04.

	* parse.y (yylex): `10e0.9' should cause syntax error.

Wed Mar 18 17:46:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (load_file): new file object constant DATA.  Only
	  available for the script from the file.

	* regex.c (re_match): forwarding failure point popped too much. 

Tue Mar 17 18:23:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* math.c (math_frexp): newly added.

	* math.c (math_ldexp): ditto.

	* bignum.c (bigdivmod): calculates modulo.

	* numeric.c (fix_remainder): returns reminder, formerly introduced
 	  as modulo.

	* numeric.c (fix_modulo): calculates proper `modulo'.

	* bignum.c (bigdivmod): wrong sign for reminder.

Mon Mar 16 17:07:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_03.

Mon Mar 16 16:33:53 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* io.c (pipe_finalize): needed to add pipe_finalize to pipes on
	  cygwin32.

Mon Mar 16 14:11:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (ins_methods_i): needed to consider NOEX_UNDEF.

Mon Mar 16 13:23:53 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* io.c (io_check_closed): check for `fptr->f2 == NULL'.

	* io.c (io_fptr_close): ditto.

Mon Mar 16 11:49:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (pipe_atexit): free()ing referencing pipe_list.

	* range.c (range_length): returns zero, if the first is greater
	  than the last.

	* signal.c (trap_restore_mask): restore signal mask before raising 
	  exceptions and throws.

Fri Mar 13 13:49:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_02.

	* object.c (mod_clone): need to dups constants and instance
	  variables.

	* eval.c (rb_eval): forgot to initialize body for NODE_DEFS.

	* eval.c (rb_eval): retrieve self from calling frame, since self
	  changes sometimes.

	* env.h (FRAME): need to save self in the calling frame.

	* io.c (f_gets_method): rs should be initialized by RS.

Thu Mar 12 15:33:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* experimental release 1.1b9_01.

	* range.c (range_s_new): check values by `first <= last'.

	* parse.y (lastline_set): fixed offset for $_ and $~ in the local
	  variable space.

Wed Mar 11 02:14:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_gets): handle normal case specially for speed.

	* eval.c (rb_disable_super): function to disable superclass's
	  method explicitly.

	* eval.c (rb_eval): inherits previous method definition's
	  NOEX_UNDEF-ness, if exists.

	* class.c (rb_define_method): disables superclass's overriding
 	  method by default.

Wed Mar 11 01:40:48 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* numeric.c (flo_gt,etc.): do not depend on `<=>', to handle NaN.

Tue Mar 10 00:03:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (load_file): understands multiple options in #! line.

	* regex.c (re_compile_pattern): support for [:alpha:] etc.

Mon Mar  9 16:53:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.h (GetOpenFile): embed io_check_closed in GetOpenFile.

	* sprintf.c (f_sprintf): zero padding failed for negative
	  integers.

	* sprintf.c (remove_sign_bits): failed to remove some bits.

Sat Mar  7 21:51:46 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* class.c (ins_methods_i): body may be NULL for some case.

Fri Mar  6 17:23:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (mbcinit): table driven mbchar detection.

	* object.c (obj_alloc): check for allocating instance for the
	  primitive classes (mostly perfect).

	* ext/curses/curses.c (curses_finalize): restore original state at 
	  interpreter termination.

	* ext/curses/curses.c (curses_addstr): forgot to check argument
	  type (caused SEGV).  now uses STR2CSTR() macro.

Thu Mar  5 13:47:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (block_pass): accepts method object as block args.

	* eval.c (f_missing): use any_to_s() for stringify.

Wed Mar  4 01:39:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (block_arg): new syntax - block argument in the
	  calling arglist.

	* eval.c (rb_call): no module search. simplified a lot.

	* eval.c (rb_eval): block arg support.

	* parse.y (f_block_arg): new syntax - block argument in the
 	  formal arglist.

Tue Mar  3 14:20:15 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (obj_method): returns bound method object.

	* eval.c (rb_call): argument check for empty methods.

	* ruby.h (NUM2CHR): new macro, originally from curses module.

Tue Mar  3 13:03:35 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* io.c (io_putc): new method.

Tue Mar  3 11:21:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_inspect): more strict charcode detection.

	* eval.c (thread_stop): stopping only thread raises ThreadError
	  exception.

Tue Mar  3 08:04:56 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>

	* struct.c (struct_alloc): incomplete struct initialization made
 	  GC to access unallocated addresses.

Mon Mar  2 16:28:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (thread_stop_method): remove Thread#stop.

Fri Feb 27 18:16:26 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b9 released.

Fri Feb 27 09:36:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (hash_delete_nil): needed to compare value to nil, since
	  nil is the valid key for hashes.

	* hash.c (hash_foreach_iter): rehashing causes IndexError.

	* hash.c (hash_foreach_iter): rehash check by pointer comparison.

Thu Feb 26 17:22:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (fname): convert reswords into symbols.

	* parse.y (reswords): reserved words are now embedded in the
 	  syntax (sigh).

	* parse.y: now reserved words can be method names safely.

Wed Feb 25 15:50:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (mod_module_eval): clear the_scope's PRIVATE flag before
	  calling eval().

	* gc.c (gc_call_finalizer_at_exit): run finalizers before any data 
	  object being freed.

	* eval.c (rb_eval): needed to keep prot_tag->retval before
	  evaluating the ensure clause.

Tue Feb 24 11:16:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): reserved words can be appear as method names at
 	  right after 'def' and `.'(dot), like foo.next.

	* eval.c (return_check): checks for return out of thread (formerly
 	  done in return_value).

	* eval.c (POP_TAG): copy retval to outer level.

	* eval.c (return_value): just set retval, no check, no unwinding.

	* parse.y (nextc): line continuation by backslash at end of line.

	* regex.c (re_compile_pattern): forgot to clear pending_exact on
	  closing parentheses.

	* parse.y (assignable): should not assign dyna_var to true, if it
 	  is already defined.

Mon Feb 23 14:35:03 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (obj_is_kind_of): no longer accepts true/false/nil.

	* object.c ({true,false,nil}_to_i): can be converted into integers.

Mon Feb 23 12:11:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (reg_s_quote): needed to be mbchar aware.

	* eval.c (proc_s_new): wrong iter mark.

Sat Feb 21 22:59:30 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* io.c (f_syscall): no argument check.

Fri Feb 20 10:17:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b8 released.

	* ext/kconv/kconv.c (kconv_kconv): default output code now be
	  determined according to the value of $KCODE.

	* re.c (rb_get_kcode): can retrieve $KCODE from C code. 

	* parse.y (stmt): if/unless modifiers returns nil, if condition is 
	  not established.

Thu Feb 19 11:06:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/kconv/kconv.c (kconv_kconv): charcode can be specified by
	  code name (JIS, SJIS, EUC like value of $KCODE).

	* regex.c (re_compile_pattern): forgot to fixup_jump for (?:..).

	* regex.c (re_compile_pattern): needed to clear pending_exact on
	  non-registering grouping (?:...).

Wed Feb 18 19:54:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (here_document): needed to set lex_state to EXPR_END.

Wed Feb 18 18:45:10 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* patches for cygwin32 applied.

Wed Feb 18 00:41:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_sub_s): needed to be mbchar aware to increment one
 	  character.

	* regex.c (re_match): \Z matches newline just before the end of
	  the string.

Tue Feb 17 00:04:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_arg): Time.gm and Time.local now understands
 	  Time#to_a format.

	* string.c (str_sub_s): replace happened twice for null pattern.

	* regex.c (re_search): null pattern should not match after newline 
	  at the end of string.

	* time.c (time_isdst): now returns boolean value.

	* error.c (rb_check_type): treat special constants in messages.

	* parse.y (yylex): new form `::Const' to see toplevel constants.

	* parse.y (cond): SEGV on `if ()'.

	* gc.c (obj_free): some data needed explicit free().

Mon Feb 16 23:55:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (blk_free): release duplicated block informations.

	* eval.c (blk_copy_prev): duplicate outer block information into
 	  the heap, when proc/binding created.

Mon Feb 16 14:38:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_mon): now 1 for January and so on.

	* time.c (time_year): year in 19xx (no + 1900 needed anymore).

Mon Feb 16 13:28:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): need to fetch mbchar's second byte
 	  without translation.

Mon Feb 16 12:29:27 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* eval.c (f_pass_block): pass iterator block to other method.

Fri Feb 13 08:16:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (parse_regx): handle \s before read_escape().

	* parse.y (read_escape): `\s' in strings as space.

Tue Feb 10 17:29:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b7 released.

	* string.c (str_aset): string insertion by `str[n] = str2'.

	* string.c (str_oct): does recognize `0x'.

 	* sprintf.c (f_sprintf): use base 10 for conversion from string to
 	  integer.

Mon Feb  9 14:51:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* numeric.c (do_coerce): proper error message.

	* string.c (str_sum): bug - masked by wrong value. (sigh..)

Sat Feb  7 15:11:14 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_empty): new method

Fri Feb  6 01:42:15 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c (time_asctime): use asctime(3), not strftime(3).

Thu Feb  5 18:58:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_fptr_close): do not free path on close().

	* array.c (ary_filter): new method.

	* enum.c (enum_each_with_index): new method.

Thu Feb  5 14:10:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (primary): singleton class def can be appeared inside
 	  method bodies.

	* hash.c (hash_replace): replace content.

	* string.c (str_replace_method): replace content.

	* array.c (ary_replace_method): replace elements.

	* string.c (str_succ_bang): String#succ!

Thu Feb  5 18:20:30 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* string.c (str_upcase_bang): multi byte character support.

Wed Feb  4 13:55:26 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (ary_reverse): SEGV on empty array reverse.

Tue Feb  3 12:24:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (match_to_a): non matching element should be nil.

	* ruby.c (ruby_load_script): load script after all initialization.

	* bignum.c (str2inum): need to interpret prefix `0' of `0x'.

Tue Feb  3 10:00:18 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* numeric.c (fix_rshift): use `sizeof(INT)*8' instead of 32.

Mon Feb  2 14:09:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (set_arg0): grab environment region too.

Thu Jan 29 18:36:25 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* process.c (rb_proc_exec): check `sh' to be exist.

Thu Jan 29 18:18:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_stdio_set): assignment to $stdin or $stdout does
	  reopen() as well as $stderr.

Thu Jan 29 14:18:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (mod_ancestors): should not include singleton classes.

	* object.c (obj_type): should not return internal class.

	* io.c (io_reopen): unwillingly closes stdio streams.

Thu Jan 29 11:50:35 1998  Toshihiko SHIMOKAWA  <toshi@csce.kyushu-u.ac.jp>

	* ext/socket/socket.c (udp_addrsetup): forgot to use htons().

Tue Jan 27 23:15:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* keywords: __FILE__, __LINE__ are available again.

Fri Jan 23 14:19:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b6 released.

	* object.c (mod_to_s): need to duplicate classpath.

	* error.c (exc_inspect): need to duplicate classpath.

Thu Jan 22 00:37:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.h (STR2CSTR): new macro to retrieve char*.

	* class.c (rb_define_method): `initialize' should always be
	  private, even if it defined by C extensions.

	* eval.c (rb_eval): `initialize' should always be private.

Thu Jan 22 16:21:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): some singleton class def cause SEGV.

	* eval.c (TMP_ALLOC): replace ALLOCA_N, where thread context
 	  switch may happen.

Wed Jan 21 01:43:42 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (PUSH_FRAME): do not use ALLOCA_N().  crash on some
	  platforms that use missing/alloca.c.

	* regex.c (re_compile_pattern): too many pops for non register
	  subexpr.

	* parse.y (yylex): open parentheses after identifiers are argument 
	  list, even if whitespaces have seen.

Tue Jan 20 15:19:59 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (terms): quoted word list by %w(a b c).

	* ext/tcltklib/extconf.rb: more accurate check for tcl/tk libs.

	* file.c (rb_stat): most of the FileTest methods (and function
 	  `test') accept File objects as the argument.

Tue Jan 19 18:19:24 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/extmk.rb.in (install): there should be no newline after install:

	* re.c (MIN): renamed from min().  there's a local variable named
 	  min in the file, so that some cpp will raise an error.

Mon Jan 19 16:30:05 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b5 released.

	* process.c (rb_syswait): no exception raised.

Fri Jan 16 00:43:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.h (CLONESETUP): copies its singleton classes too.

	* class.c (singleton_class_attached): saves binded object in the
	  singleton classes.

	* eval.c (rb_eval): calls singleton_method_added even in the
	  singleton class clauses.

Fri Jan 15 23:22:43 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ruby.c (proc_options): -S does not recognize PATH.

Thu Jan 15 02:03:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_clear_cache_by_id): clear only affected cache
	  entries.

Wed Jan 14 02:14:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c: new UDP/IP socket classes.

Tue Jan 13 10:00:18 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_cmp): ignorecase($=) works wrong.

Fri Jan  9 13:19:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b4 released.

	* eval.c (f_missing): class name omitted from the error message.

	* error.c (exc_inspect): description changed.

	* string.c (Init_String): GlobalExit's superclass did not filled,
	  since GlobalExit created earlier than String.

Thu Jan  8 12:10:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (aryset): expr in the brackets can be null.

Wed Jan  7 21:13:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_reopen): keep stderr unclosed.

	* io.c (io_errset): keep stderr unclosed.

Tue Jan  6 00:27:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y: syntax modified for `while expr do .. end' etc.

	* process.c (f_exec,f_system): can supply arbitrary name for the
 	  new process.

Mon Jan  5 16:59:13 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* file.c (file_s_basename): removes any extension by ".*".

Sun Jan  4 19:36:22 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* parse.y (yylex): needed to update lex_p (reading point).

Sat Jan  3 19:14:14 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* class.c,object.c: duplicate defines mKernel and cFinxnum.

Fri Jan  2 20:38:59 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/curses/curses.c (NUM2CHAR): uses the first character for
 	  string arguments.

	* array.c (ary_fill): did not extend array for ranges.

	* array.c (beg_len): did not return end pos bigger than size.

Fri Jan  2 02:09:16 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* dir.c (dir_s_chdir): bug in nil check.

	* array.c (ary_fill): bug in nil check.

Tue Dec 30 11:46:23 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* hash.c (env_path_tainted): checks directories in PATH
	  environment variable are not world writable.

	* ruby.c (load_file): invoke specified interpreter if the #! line
 	  does not contain the word `ruby'.

Fri Dec 26 03:26:41 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (uscore_get): type information included in the error
 	  message.

	* variable.c (f_untrace_var): does not free trace-data within
 	  trace procedure.

Thu Dec 25 02:50:29 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b3 released.

	* ruby.h: inlining some functions on gcc 2.x

Tue Dec 23 02:47:33 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): public/private information kept in the current 
	  scope, to remove undesired state from the class/module.

	* time.c (time_strftime): remove hidden limit of 100 bytes of
	  result string, using malloc'ed buffer. 

	* hash.c (hash_update): merges the contents of another hash,
	  overriding existing keys.

	* regex.c (must_instr): totally re-written.

	* io.c (read_all): try to allocate proper sized buffer using
	  fstat(2) for speedup.

Sat Dec 20 00:27:28 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (must_instr): need to skip 2 bytes for mbchars.

Fri Dec 19 01:18:29 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b2 released.

	* eval.c (check_errat): check and convert (if necessary) traceback 
	  information before assigning to the variable $@.

	* eval.c (f_raise): optional third argument to specify traceback
	  information.

	* io.c (f_open): prevent infinite recursive call.

Thu Dec 18 19:33:47 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_rindex): now accepts regexp as index.

Thu Dec 18 18:42:50 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/socket/extconf.rb: modified to detect win32 socket lib.

Thu Dec 18 00:25:03 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* re.c (reg_equal): checks for source and casefold and kcode matching.

	* marshal.c: became built-in module.

	* ext/marshal/marshal.c (r_object): displays struct name for
	  non-compatible struct.

	* string.c (str_index_method): now searches character (fixnum) in
	  the string.

	* string.c (str_include): redefine `include?'.

	* regex.c (re_match): start_nowidth saves current stack position
	  to stop_nowidth.

	* regex.c (re_compile_pattern): add space to stop_nowidth to save
	  runtime stack position.

Tue Dec 16 14:57:43 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (scan_once): wrong exception for regexp that match with 
	  null string (use substr instead of subseq).

Sat Dec 13 00:13:32 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (expr): remove bare assocs from expr rule.

	* rbconfig.rb: renamed from config.rb (it was too generic name).

Fri Dec 12 00:50:25 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (expr): warns if BEGIN or END appear in the method
 	  bodies.

	* string.c (str_match): calls y =~ x if y is neither String nor
	  Regexp so that eregex.rb works.  

	* eval.c (f_at_exit): to register end proc.

	* class.c (rb_define_module_function): define 'function' method
	  for the Module, not private method.

	* class.c (rb_define_function): function to define `function' method.

	* eval.c (rb_eval): inherit visibility from superclass's method
	  except when it is set to `function'

	* eval.c (rb_eval): new visibility status `function'.

	* parse.y (yycompile): do not clear eval_tree. thus enable multiple 
	  command line script by option `-e'.

	* eval.c (rb_eval): END execute just once.

	* parse.y (expr): BEGIN/END built in the syntax.

Thu Dec 11 13:14:35 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (mod_le): Module (or Class) comparison.

	* eval.c (rb_remove_method): raises NameError if named method does 
	  not exist.

	* ext/curses/curses.c: remove CHECK macro for BSD curses.

Thu Dec 11 12:44:01 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* pack.c: sun4 cc patch

Wed Dec 10 15:21:36 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/marshal/marshal.c (marshal_load): can supply evolution proc
	  object as optional second argument.

	* re.c (reg_source): get source string of the regular expression.

Tue Dec  9 10:05:17 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b1 released.

	* parse.y (tokadd): token buffer overrun.

	* ruby.c (ruby_prog_init): forgot to protect rb_argv0 from gc.

	* eval.c (ruby_run): call finalizers at process termination.

	* gc.c (gc_call_finalizer_at_exit): call free proc for every Data
 	  Wrapper, and finalizer for specified objects at termination.

	* version.c (show_version): version format changed.

	* regex.c (re_match): wrong match with non-greedy if they appear
	  more than once in regular expressions.

	* sample/ruby-mode.el (ruby-expr-beg): forgot to handle modifiers.

Mon Dec  8 19:00:15 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_puts): just put a newline if no argument given.

	* ext/tcltklib/tcltklib.c (lib_mainloop): thread-aware tk handle
 	  when $tk_thread_safe is set.

	* ext/tcltklib/tcltklib.c (lib_mainloop): use Tcl_DoOneEvent()
	  instead of Tk_MainLoop().

Mon Dec  6 07:11:16 1997  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* io.c (io_puts): core dumped without any argument.

Fri Dec  5 18:17:17 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (mod_remove_method): remove (not undef) a method from the 
	  class/module.

	* variable.c (obj_remove_instance_variable): method to remove
	  instance variables.

Thu Dec  4 13:50:29 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1b0 released.

	* string.c (str_aref): called str_index for regexp.

Mon Dec  1 15:24:41 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* compar.c (cmp_between): wrong comparison made.

Wed Nov 26 18:18:05 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* lib/mkmf.rb: generate Makefile for extension modules out of ruby 
	  source tree. use like `ruby -r mkmf extconf.rb'.

	* numeric.c (fix2str): enlarge buffer to prevent overflow on some
	  machines.

	* parse.y (here_document): wrong line number generated after here-doc.

Fri Nov 21 13:17:12 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (yylex): skip multibyte characters in comments.

Wed Nov 19 17:19:20 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (nil_to_a): nil.to_a => [].

	* parse.y (call_args): wrong node generation.

Tue Nov 18 10:13:08 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* array.c (Init_Array): Array#=== works as Array#include?

	* regex.c (re_compile_pattern): insert initialize code for jump_n, 
	  before entering loops.

	* re.c (reg_search): does not save registers unless $& etc appear
	  in the script.

Mon Nov 17 13:01:43 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (is_defined): add defined? check for receivers and
 	  arguments for calls.

	* re.c (reg_search): cache last match object.

	* re.c (match_aref): $[0] etc. are available.

Sat Nov 15 00:11:36 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* io.c (io_s_popen): "rb" detection

Fri Nov 14 18:28:40 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (scan_once): returns whole match if the pattern does
	  not contain any parentheses.

Thu Nov 13 14:39:06 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (str_sub): returns copy of the receiver string, even if 
	  any substitution occurred.

	* regex.c (re_compile_pattern): no-width match by (?=..), (?!..).

Wed Nov 12 13:44:47 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* time.c: remove coerce from Time class.

	* regex.c (re_match): non-greedy match by ??, *? +?, {n,m}?.

Mon Nov 10 11:24:51 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): non-registering parens (?:..).

	* regex.c (re_compile_pattern): new meta character \< (wordbeg)
	  and \> (wordend).

	* regex.c (re_compile_pattern): embedded comment for regular
	  expression by (?#...).

Fri Nov  7 16:58:24 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* regex.c (re_compile_pattern): perl5 regxp \A and \Z available.

	* regex.c (re_compile_pattern): can expand compile stack dynamically.

	* regex.c (PUSH_FAILURE_POINT): wrong compare condition.

Wed Nov  2 16:00:00 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* string.c (str_sub_s): "".sub! "", "" => "\000"

Fri Oct 31 15:52:10 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (assoc): keyword assoc like {fg->"black"}.

Thu Oct 30 17:33:38 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_println): print with newline, which is not affected by
	  the values of $/ and $\.

Thu Oct 30 16:54:01 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* string.c (str_chop_bang): "".chop caused SEGV.

	* string.c (str_chomp_bang): method to chop out last newline.

Mon Oct 27 13:49:13 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/extmk.rb.in: library may have pathname contains `.'

	* eval.c (rb_rescue): should not protect SystemError.

Fri Oct 24 10:58:53 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_s_with_open_stream): ensures to close stream.

Thu Oct 23 11:17:44 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_errset): value of $stderr can be changed (to any IO
 	  object).

	* io.c (next_argv): $< can be anything that responds to `write'.

	* file.c (file_s_with_open_file): ensures to close file.

	* error.c (exception): create error under the current class/module.

	* range.c (range_eqq): fixnum check for last needed too.

Wed Oct 22 12:52:30 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/socket/socket.c: Socket::Constants added.

	* file.c: File::Constants added for inclusion.

	* array.c (ary_join): call ary_join() recursively for the 1st
 	  array element.

Mon Oct 20 12:18:29 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ruby.c (load_file): wrong condition for #! check with -x.

	* file.c (file_s_dirname): did return "" for "/a".

Fri Oct 17 14:29:09 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c: now works on alpha-linux.

	* bignum.c (bigadd): some undefined side effect order assumed.

Wed Oct 15 17:49:24 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* intern.h: function prototypes added.

Mon Oct 13 16:54:18 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (rb_define_class_id): call superclass's `inherited'
 	  method when making subclasses.

	* parse.y (nextc): clear lex_lastline at the end of file.

	* object.c (Init_Object): need to undef Class#append_features.

	* eval.c (rb_eval): no warning on extending classes or modules.

Thu Oct  9 11:17:50 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (error_print): the exception name follows after the error 
	  message.

	* eval.c (compile_error): error message slightly changed.

	* parse.y (nextc): script parsing will be terminated by __END__ at
 	  beginning of line.

	* eval.c (compile_error): `__END__' is no longer a keyword.

	* parse.y (nextc): protect lastline read from script stream.

Tue Oct  7 14:06:06 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha9 released.

	* eval.c (mod_append_features): renamed from extend_class.

	* eval.c (rb_eval): defining method calls `method_added'.

	* eval.c (ruby_options): exception while processing options must
	  terminate the interpreter.

	* error.c (Init_Exception): wrong method configuration.  `new'
	  should have been a singleton method.

Mon Oct  6 18:55:38 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/kconv/kconv.c (kconv_guess): code to guess character code
	  from string.

Mon Oct  6 18:38:17 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* pack.c: now encode/decode base64 by `m' template.

Fri Oct  3 10:51:10 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* MANIFEST: needed to include lex.c in the distribution.

	* eval.c (ruby_options): f_require() called too early.

	* eval.c (rb_provide): module extensions should always be `.o'.

Thu Oct  2 11:38:31 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha8 released.

	* ext/marshal/marshal.c (r_object): remove temporal regist for
 	  structs. (caused problem if structs form cycles.)

	* parse.y (match_gen): static binding for match(=~) calls
	  with regexp literals.

Wed Oct  1 15:26:55 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c: protect retval in struct tag from GC for C_ALLOCA.

	* eval.c: no more pointer value from setjmp/longjmp.

Wed Oct  1 14:01:49 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/marshal/marshal.c (w_byte): argument must be char.

Wed Oct  1 10:30:22 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (mod_const_at): global constants now belongs to the
	  class Object.

	* object.c (Init_Object): new global constant NIL.

	* ext/marshal/marshal.c (marshal_dump): try to set binmode.

	* ext/marshal/marshal.c (r_object): forgot to re-regist structs in 
	  the object table.

	* eval.c (ruby_options): call Init_ext() before any require()
 	  calls by `-r'.

Fri Sep 30 14:29:22 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/marshal/marshal.c (w_object): marshal dumped core.

Tue Sep 30 10:27:39 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sample/test.rb: bignum test suits added.

	* eval.c (rb_eval): new pseudo variable `true' and `false'.

	* parse.y: new keywords `true' and `false' added.

Mon Sep 29 13:37:58 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (forbid_setid): forbid some options in suid mode.

	* ruby.h (NUM2DBL): new macro to convert into doubles.

Mon Sep 27 09:53:48 1997  EGUCHI Osamu  <eguchi@shizuokanet.or.jp>

	* bignum.c: modified for speeding.

Fri Sep 26 18:27:59 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* sample/from.rb: some extensions.

Mon Sep 29 13:15:56 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (lhs): no more syntax error on `obj.CONSTANT = value'.

Fri Sep 26 14:41:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (ruby_run): deferred calling Init_ext() just before eval_node.

Fri Sep 26 13:27:24 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* io.c (io_isatty): forgot to return TRUE value.

Fri Sep 25 11:10:58 1997  EGUCHI Osamu  <eguchi@shizuokanet.or.jp>

	* eval.c: use _setjmp/_longjmp instead of setjmp/longjmp on some
	  platforms.

Wed Sep 24 17:43:13 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* string.c (Init_String): String#taint and String#taint? added.

	* class.c (mod_ancestors): ancestors include the class itself.

Wed Sep 24 00:57:00 1997  Katsuyuki Okabe  <HGC02147@niftyserve.or.jp>

	* X68000 patch.

Tue Sep 23 20:42:30 1997  EGUCHI Osamu  <eguchi@shizuokanet.or.jp>

	* parse.y (node_newnode): SEGV on null node setup.

Mon Sep 22 11:22:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (ruby_prog_init): wrong safe condition check.

Sun Sep 21 14:46:02 1997  MAEDA shugo  <shugo@po.aianet.ne.jp>

	* error.c (exc_inspect): garbage added to classpath.

Fri Sep 19 11:49:23 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (newtok): forgot to adjust buffer size when shrinking
	  the token buffer.

	* enum.c (enum_find): rb_eval_cmd() does not return value.

	* io.c (pipe_open): close fds on pipe exec. fcntl(fd, F_SETFD, 1)
	  no longer used.

Tue Sep 16 17:54:25 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* file.c (f_test): problem if wrong command specified.

	* ruby.c (ruby_prog_init): close stdaux and stdprn for MSDOS.

	* ruby.c (ruby_prog_init): should not add path from environment
	  variable, if ruby is running under setuid.

	* process.c (init_ids): check suid check for setuid/seteuid etc.

Mon Sep 15 00:42:04 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* regex.c (re_compile_pattern): \w{3} and \W{3} did not work.

Thu Sep 11 10:31:48 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha7 released.

	* ext/socket/socket.c (sock_new): no setbuf() for NT.

	* io.c (rb_fopen,rb_fdopen): set close-on-exec for every fd.

Wed Sep 10 15:55:31 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ext/marshal/marshal.c (r_bytes0): extra big length check.

Tue Sep  9 16:27:14 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (pipe_fptr_atexit): clean up popen()'ed fptr.

	* error.c (set_syserr): some system has error code that is bigger
	  than sys_nerr. grrr.

Mon Sep  8 18:33:33 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* io.c (io_s_new): dereferenced nil for optional mode.

Fri Sep  5 10:26:03 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (class_instance_methods): do not include methods which
	  are changed to private in subclasses.

Thu Sep  4 12:38:53 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* variable.c (f_global_variables): list name of the global
	  variables.

	* object.c (obj_id): returns unique integer.

Wed Sep  3 14:05:16 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha6 released.

	* eval.c (mod_s_constants): context sensitive constant list.

	* variable.c (mod_constants): no more `all' option.

	* variable.c (mod_const_of): the values for autoload classes are
	  their name strings.

	* class.c (class_instance_methods): no special treatment for
	  singleton classes.

	* object.c (obj_singleton_methods): returns list of singleton
	  method names.

	* parse.y (yylex): no here document after `class' keyword.

	* eval.c (f_load): expand path if fname begins with `~'.

Tue Sep  2 13:19:48 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (ins_methods_i): do not list undef'ed methods.

Mon Sep  1 13:42:48 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha5 released.

	* object.c (mod_attr_reader): create methods to define attribute
 	  reader/write/accessor.

	* class.c (rb_define_attr): always defines accessors.

	* eval.c (rb_call): alias occurred in the module body caused SEGV.

	* parse.y: did not generate here document strings properly.

Mon Sep  1 11:43:57 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* parse.y (yylex): heredoc dropped an extra character.

Fri Aug 29 11:10:21 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* class.c (class_instance_methods): same method names should not
 	  appear more than once.

	* parse.y (yylex): spaces can follow =begin/=end.

	* variable.c (find_class_path): look for class_tbl also for
	  unnamed fundamental classes, such as Object, String, etc.

	* variable.c (rb_name_class): can't name class before String class
 	  is initialized.

	* inits.c (rb_call_inits): unrecognized dependency from GC to
	  Array.

	* variable.c (find_class_path): could not find class if Object's
 	  iv_tbl is NULL.

Thu Aug 28 13:12:05 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha4 released.

	* variable.c (mod_constants): wrong condition for singleton
	  class. 

	* parse.y (yylex): revised `=begin' skip code.

	* parse.y (here_document): forgot to free(eos).

	* parse.y (yylex): spaces after `<<' prohibited for here
 	  documents to avoid confusing with operator `<<'.

	* eval.c (is_defined): separated from rb_eval().

Wed Aug 27 11:32:42 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha3 released.

	* variable.c (mod_name): returns name of the class/module.

	* parse.y (here_document): finally here document available now.

	* variable.c (fc_i): some classes/modules does not have iv_tbl.

	* variable.c (find_class_path): avoid infinite loop.

Tue Aug 26 13:43:47 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (rb_eval): undef'ing non-existing method will raise
	  NameError exception.

	* object.c (class_s_new): needed to create metaclass too.

	* eval.c (error_print): no class name print for anonymous class.

	* eval.c (rb_longjmp): proper exception raised if raise() called
 	  without arguments, with $! or $@ set.

	* object.c (Init_Object): superclass()'s method argument setting
 	  was wrong again.

	* class.c (mod_ancestors): list superclasses and included modules 
	  in priority order.

Mon Aug 25 11:53:11 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha2 released.

	* sample/ruby-mode.el (ruby-parse-region): auto-indent now
 	  supports "\\" in the strings.

	* struct.c (struct_getmember): new API to get member value from C
	  language side.

Sat Aug 23 21:39:05 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* parse.y (assignable): remove unnecessary local variable
	  initialize by nil.

Fri Aug 22 14:26:40 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (error_print): modified exception print format.

Thu Aug 21 16:10:58 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* sample/ruby-mode.el (ruby-calculate-indent): wrong indent level
	  calculated with keyword operators.

Thu Aug 21 11:36:58 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* parse.y (arg): ary[0] += 1 cause SEGV

Wed Aug 20 17:28:50 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* ruby.c (ruby_process_options): require() all modules after
 	  processing all options

	* process.c (rb_proc_exec): more security checks added.

	* process.c (rb_proc_exec): insecure path on exec.

	* hash.c (f_getenv): PATH modification security check.

Tue Aug 19 00:15:38 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha1 released.

	* eval.c (mod_eval): work as normal eval() if second binding
 	  argument given.

	* eval.c (rb_call): did not raise ArgumentError if too many
 	  arguments more than optional arguments (without rest arg).

	* eval.c (rb_eval): did not work well for op_asgn2 (attribute
	  self assignment).

	* eval.c (Init_Thread): returns main thread.

Mon Aug 18 09:25:56 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* object.c (inspect_i): did not display T_DATA instance variables.

	* parse.y: provides more accurate line number information.

	* eval.c (thread_value): include value's backtrace information in
	  the variable `$@'. 

	* eval.c (f_abort): print backtrace and exit.

Sat Aug 16 00:17:44 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (class_new_instance): do not make instance from virtual
	  classes. 

	* object.c (class_s_new): do not make subclass of singleton class.

Fri Aug 15 15:49:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* eval.c (call_trace_func): block context switch in the trace
	  function.

	* eval.c (rb_eval): clear method cache at class extension.

	* object.c (obj_type): returns object's class even if it defines
	  singleton methods.

Fri Aug 15 19:40:43 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>

	* ext/socket/socket.c (Init_socket): small typo caused SEGV.

Wed Aug 13 17:51:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>

	* version 1.1 alpha0 released.

