home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ruby164.zip / rbemx164.zip / ruby / share / doc / ruby-1.6.4 / ChangeLog next >
Text File  |  2001-06-18  |  321KB  |  10,554 lines

  1. Mon Jun  4 17:57:56 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2.  
  3.     * stable version 1.6.4 released.
  4.  
  5. Mon Jun  4 04:14:53 2001  Wakou Aoyama  <wakou@fsinet.or.jp>
  6.  
  7.     * lib/shellwords.rb: don't destroy argument.
  8.  
  9. Sat Jun  2 23:23:05 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  10.  
  11.     * regex.c (re_compile_pattern): should push option modifier at the
  12.       right place.
  13.  
  14. Sat Jun  2 23:05:20 2001  Shugo Maeda <shugo@ruby-lang.org>
  15.  
  16.     * lib/cgi/session.rb: don't use module_function for Class.
  17.  
  18. Sat Jun  2 00:02:22 2001  Keiju Ishitsuka <keiju@ishitsuka.com>
  19.  
  20.     * irb messages: fix typos.
  21.  
  22. Fri Jun  1 17:26:24 2001  K.Kosako  <kosako@sofnec.co.jp>
  23.  
  24.     * hash.c (replace_i): ignore when key == Qundef.
  25.  
  26. Fri Jun  1 11:21:04 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  27.  
  28.     * configure.in: use waitpid on mingw32.
  29.  
  30. Thu May 31 18:34:57 2001  K.Kosako  <kosako@sofnec.co.jp>
  31.  
  32.     * file.c (rb_file_s_unlink): should not allow if $SAFE >= 2.
  33.  
  34. Thu May 31 13:30:25 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  35.  
  36.     * mkconfig.rb, ext/configsub.rb: VERSION -> RUBY_VERSION.
  37.  
  38. Thu May 31 08:31:22 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  39.  
  40.     * dln.c: #define S_ISDIR if not defined.
  41.  
  42. Thu May 31 01:28:54 2001  Akinori MUSHA  <knu@iDaemons.org>
  43.  
  44.     * configure.in: default --with-libc_r to `no' until the problem is
  45.       fixed. (FreeBSD only)
  46.  
  47. Wed May 30 14:09:00 2001  K.Kosako  <kosako@sofnec.co.jp>
  48.  
  49.     * object.c (rb_obj_taint): backport from 1.7.
  50.  
  51.     * object.c (rb_obj_untaint): add frozen status check (backport from 1.7).
  52.  
  53. Tue May 29 17:24:23 2001  K.Kosako  <kosako@sofnec.co.jp>
  54.  
  55.     * ruby.c (proc_options): unexpected SecurityError happens when -T4.
  56.  
  57. Tue May 29 18:46:04 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  58.  
  59.     * regex.c (re_compile_pattern): * \1 .. \9 should be
  60.       backreferences always.
  61.  
  62.     * regex.c (re_match): backreferences corresponding to
  63.       unclosed/unmatched parentheses should fail always.
  64.  
  65. Mon May 28 23:20:43 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  66.  
  67.     * configure.in: remove unnecessary AC_CANONICAL_BUILD
  68.  
  69.     * defins.h: #define HAVE_SETITIMER on Cygwin(bug fixed).
  70.  
  71.     * ruby.c: use relative path from LIBRUBY_SO.
  72.  
  73.     * ruby.c: don't use -mwin32 option on Cygwin.
  74.  
  75.     * cygwin/GNUmakefile.in: ditto.
  76.  
  77.     * ext/sdbm/_sdbm: ditto.
  78.  
  79.     * ext/tcltklib/extconf.rb: ditto.
  80.  
  81.     * ext/tcltklib/stubs.c: ditto.
  82.  
  83. Mon May 28 22:12:01 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  84.  
  85.     * ext/extconf.rb.in: make the priority of the make rule of .c
  86.       higher than .C .
  87.  
  88. Mon May 28 02:43:16 2001  Akinori MUSHA  <knu@iDaemons.org>
  89.  
  90.     * dir.c (rb_glob_helper): teach has_magic() to handle flags and
  91.       get rb_glob_helper to properly support FNM_NOESCAPE.
  92.  
  93.     * dir.c (fnmatch): fix a bug when FNM_PATHNAME and FNM_PERIOD are
  94.       specified at the same time.
  95.  
  96. Sat May 26 07:19:48 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  97.  
  98.     * win32/win32.c (opendir): add const directive.
  99.  
  100. Sat May 26 07:00:05 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  101.  
  102.     * MANIFEST: add win32/dir.h .
  103.  
  104. Sat May 26 00:15:57 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  105.  
  106.     * win32/dir.h: replace missing/dir.h .
  107.  
  108.     * dir.c: ditto.
  109.  
  110. Fri May 25 14:19:25 2001  K.Kosako  <kosako@sofnec.co.jp>
  111.  
  112.     * string.c (rb_str_replace): add taint status infection
  113.       (OBJ_INFECT()).
  114.  
  115.     * string.c (rb_str_crypt): ditto.
  116.  
  117.     * string.c (rb_str_ljust): ditto.
  118.  
  119.     * string.c (rb_str_rjust): ditto.
  120.  
  121.     * string.c (rb_str_center): ditto.
  122.  
  123. Fri May 25 01:55:32 2001  Akinori MUSHA  <knu@iDaemons.org>
  124.  
  125.     * MANIFEST: Re-adjust the entries to coincide with HEAD.
  126.  
  127. Fri May 25 01:36:52 2001  Akinori MUSHA  <knu@iDaemons.org>
  128.  
  129.     * MANIFEST: update the entries I forgot to add or remove.
  130.  
  131. Thu May 24 16:08:21 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  132.  
  133.     * mkconfig.rb: autoconf 2.50 support.
  134.  
  135. Thu May 24 14:23:35 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  136.  
  137.     * eval.c (rb_yield_0): need argument adjustment for C defined
  138.       blocks too.
  139.  
  140. Tue May 22 17:10:35 2001  K.Kosako  <kosako@sofnec.co.jp>
  141.  
  142.     * variable.c (rb_alias_variable): should not allow variable
  143.       aliasing if $SAFE >= 4.
  144.  
  145. Mon May 21 15:26:05 JST 2001  Keiju Ishitsuka <keiju@ishitsuka.com>
  146.  
  147.     * lib/irb/multi-irb.rb: delete japanese messages.
  148.  
  149. Mon May 21 13:15:25 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  150.  
  151.     * bignum.c (rb_big2str): t should be protected from GC.
  152.  
  153. Sun May 20 00:28:43 2001  Akinori MUSHA  <knu@iDaemons.org>
  154.  
  155.     * ext/socket/extconf.rb: do not clobber $CFLAGS when setting
  156.       -DSOCKS.
  157.  
  158. Fri May 18 05:42:28 2001  Akinori MUSHA  <knu@iDaemons.org>
  159.  
  160.     * lib/thread.rb: rescue ThreadError in case the thread is dead
  161.       just before calling Thread#run.
  162.  
  163. Fri May 18 05:29:21 2001  Akinori MUSHA  <knu@iDaemons.org>
  164.  
  165.     * lib/mkmf.rb (xsystem): make a temporary fix to get $(...) macros
  166.       properly expanded on a command execution.
  167.  
  168. Fri May 18 03:49:55 2001  Brian F. Feldman  <green@FreeBSD.org>
  169.  
  170.     * lib/mkmf.rb: unbreak "make install".  lib/* must be installed
  171.       under $rubylibdir, not under $libdir.
  172.  
  173. Thu May 17 19:36:47 2001  Akinori MUSHA  <knu@iDaemons.org>
  174.  
  175.     * lib/shell.rb, lib/shell/process-controller.rb,
  176.       lib/shell/command-processor.rb: translate Japanese comments into
  177.       English.
  178.  
  179.     * doc/shell.rd.jp: RD'ify and make some fixes.
  180.  
  181.     * doc/shell.rd: RD'ify, delete Japanese leftovers, make overall
  182.       English fixes, and sync with doc/shell.rd.jp.
  183.  
  184. Thu May 17 19:34:11 2001  Akinori MUSHA  <knu@iDaemons.org>
  185.  
  186.     * doc/shell.rd*, lib/shell*: bring shell.rb 0.6 onto the ruby_1_6
  187.       branch.
  188.  
  189. Thu May 17 17:35:04 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  190.  
  191.     * eval.c (rb_call0): address of local_vars might change during eval.
  192.  
  193. Thu May 17 07:30:15 2001  Akinori MUSHA  <knu@iDaemons.org>
  194.  
  195.     * ext/md5/md5.txt, ext/md5/md5.txt.jp: s/SuperClass/Superclass/.
  196.  
  197. Thu May 17 06:37:14 2001  Akinori MUSHA  <knu@iDaemons.org>
  198.  
  199.     * ext/md5/md5.txt: make wording fixes.
  200.  
  201.     * ext/md5/md5.txt.jp: ditto.
  202.  
  203. Thu May 17 05:23:52 2001  Keiju Ishitsuka <keiju@ishitsuka.com>
  204.     * lib/irb.rb lib/irb/multi-irb.rb lib/irb/ruby-lex.rb lib/irb/version.rb
  205.       resolve ctrl-c problem
  206.  
  207. Tue May 15 17:46:37 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  208.  
  209.     * array.c (rb_ary_and): should not push frozen key string.
  210.  
  211.     * array.c (rb_ary_or): ditto.
  212.  
  213. Mon May 14 13:50:22 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  214.  
  215.     * eval.c (rb_thread_schedule): should save context before raising
  216.       deadlock, saved context for current thread might be obsolete.
  217.  
  218.     * time.c (make_time_t): non DST timezone shift supported (hopefully).
  219.  
  220. Mon May 14 11:54:20 2001  Tanaka Akira  <akr@m17n.org>
  221.  
  222.     * signal.c: SIGINFO added.
  223.  
  224. Mon May 14 08:57:06 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  225.  
  226.     * eval.c (rb_ensure): should not SEGV when prot_tag is NULL.
  227.  
  228. Sun May 13 23:49:25 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  229.  
  230.     * win32/resource.rb: Modify copyright in resource script.
  231.  
  232. Fri May 11 23:51:54 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  233.  
  234.     * process.c: silence VC++ warnings.
  235.  
  236.     * sprintf.c: ditto.
  237.  
  238. Fri May 11 03:38:11 2001  Akinori MUSHA  <knu@iDaemons.org>
  239.  
  240.     * README.EXT: Document find_library(), with_config() and
  241.       dir_config().
  242.  
  243. Fri May 11 03:37:53 2001  Akinori MUSHA  <knu@iDaemons.org>
  244.  
  245.     * README.EXT.jp: Remove the description of find_header() because
  246.       such a function does not actually exist.
  247.     
  248.     * README.EXT.jp: Update the description of dir_config().
  249.  
  250. Fri May 11 02:42:40 2001  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
  251.  
  252.     * README, README.jp: Fix CVS access and mailing lists info.
  253.  
  254. Fri May 11 02:00:44 2001  Ryo HAYASAKA  <ryoh@jaist.ac.jp>
  255.  
  256.     * bignum.c (bigdivrem): access boundary bug.
  257.  
  258. Wed May  9 14:38:33 2001  K.Kosako  <kosako@sofnec.co.jp>
  259.  
  260.     * eval.c (rb_yield_0): preserve and restore ruby_cref as well.
  261.  
  262. Tue May  8 17:12:43 2001  K.Kosako  <kosako@sofnec.co.jp>
  263.  
  264.     * eval.c (is_defined): core dumped during instance_eval for
  265.       special constants.
  266.  
  267.     * eval.c (rb_eval): ditto.
  268.  
  269. Tue May  8 08:59:01 2001  Akinori MUSHA  <knu@iDaemons.org>
  270.  
  271.     * doc/forwardable.rd, doc/forwardable.rd.jp: Hit `=begin' and
  272.       `=end' in proper places so rd2 can format them without a problem.
  273.  
  274.     * doc/irb/irb-tools.rd.jp, doc/irb/irb.rd, doc/irb/irb.rd.jp:
  275.       ditto.
  276.  
  277. Tue May  8 08:56:05 2001  Akinori MUSHA  <knu@iDaemons.org>
  278.  
  279.     * doc/forwardable.rd, doc/forwardable.rd.jp, lib/forwardable.rb:
  280.       Bring forwardable 1.1 onto the ruby_1_6 branch.
  281.  
  282. Tue May  8 08:35:09 2001  Akinori MUSHA  <knu@iDaemons.org>
  283.  
  284.     * doc/irb/irb-tools.rd.jp, doc/irb/irb.rd.jp: Convert from JIS to
  285.       EUC.
  286.  
  287. Tue May  8 03:46:24 2001  Akinori MUSHA  <knu@iDaemons.org>
  288.  
  289.     * sample/rbc.rb: Obsoleted by IRB.
  290.  
  291. Mon May  7 15:58:45 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  292.  
  293.     * parse.y (arg): "||=" should not warn for uninitialized instance
  294.       variables.
  295.  
  296.     * eval.c (rb_eval): ditto.
  297.  
  298.     * eval.c (eval): preserve and restore ruby_cref as well.
  299.  
  300. Mon May  7 15:45:48 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  301.  
  302.     * lib/ftools.rb (syscopy): chmod destination file only if
  303.       it does not exist.
  304.  
  305. Thu May  3 03:41:01 2001  SHIROYAMA Takayuki <psi@fortune.nest.or.jp>
  306.  
  307.     * configure.in: get --enable-shared to work on MacOS X.
  308.  
  309.     * Makefile.in: make $(LIBRUBY_SO) depend on miniruby properly.
  310.       Now `make -jN' should work without a problem.
  311.  
  312. Wed May  2 20:39:35 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  313.  
  314.     * dir.c (rb_glob, rb_iglob): remove unnecessary FNM_PATHNAME.
  315.  
  316. Wed May  2 11:46:13 2001  K.Kosako  <kosako@sofnec.co.jp>
  317.  
  318.     * eval.c (block_pass): should not downgrade safe level.
  319.  
  320. Tue May  1 17:55:58 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  321.  
  322.     * parse.y (yylex): lex_state after RESCUE_MOD should be EXPR_BEG.
  323.  
  324. Tue May  1 03:36:50 2001  Akinori MUSHA  <knu@iDaemons.org>
  325.  
  326.     * sample/irb.rb, lib/irb.rb, lib/irb/*, doc/irb/*: Merge from irb
  327.       0.7.3 and irb-tools 0.7.1.
  328.  
  329.     * instruby.rb: Install help-message's too.
  330.  
  331.     * lib/irb/main.rb: This file is not needed anymore.
  332.  
  333. Thu Apr 26 22:36:11 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  334.  
  335.     * configure.in:  don't use tzname on cygwin 1.3.1+.
  336.  
  337.     * configure.in: add -mieee/-ieee to CFLAGS on OSF1/Alpha
  338.       to disable "DIVISION BY ZERO" exception.
  339.  
  340. Thu Apr 26 22:30:43 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  341.  
  342.     * eval.c (rb_eval): should preserve value of ruby_errinfo.
  343.  
  344. Thu Apr 26 10:36:09 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  345.  
  346.        * eval.c (rb_thread_schedule): infinite sleep should not cause
  347.       dead lock.
  348.  
  349. Wed Apr 25 16:40:44 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  350.  
  351.     * array.c (rb_ary_flatten_bang): proper recursive detection.
  352.  
  353. Wed Apr 25 15:36:15 2001  K.Kosako  <kosako@sofnec.co.jp>
  354.  
  355.        * eval.c (yield_under): need not to prohibit at safe level 4.
  356.  
  357. Tue Apr 24 16:03:25 2001  Hiroshi Igarashi  <iga@ruby-lang.org>
  358.  
  359.     * ext/extmk.rb.in: add target `distclean' in Makefile for extlib.
  360.       target `clean' doesn't remove Makefile.
  361.  
  362. Tue Apr 24 15:57:45 2001  Akinori MUSHA  <knu@iDaemons.org>
  363.  
  364.     * ext/extmk.rb.in, lib/mkmf.rb: (dir_config) do not add the
  365.       specified include directory if already included in $CPPFLAGS.
  366.  
  367.     * ext/extmk.rb.in, lib/mkmf.rb: (dir_config) return a more useful
  368.       value, [include_dir, lib_dir].
  369.  
  370. Tue Apr 24 15:35:32 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  371.  
  372.     * ruby.c (set_arg0): wrong predicate when new $0 value is bigger
  373.       than original space.
  374.  
  375. Mon Apr 23 14:43:59 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  376.  
  377.     * gc.c (id2ref): should use NUM2ULONG()
  378.  
  379.     * object.c (rb_mod_const_get): check whether name is a class
  380.       variable name.
  381.  
  382.     * object.c (rb_mod_const_set): ditto.
  383.  
  384.     * object.c (rb_mod_const_defined): ditto.
  385.  
  386. Sun Apr 22 17:44:37 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  387.  
  388.     * configure.in: add -mieee to CFLAGS on Linux/Alpha
  389.       to disable "DIVISION BY ZERO" exception.
  390.  
  391.     * configure.in: remove -ansi on OSF/1.
  392.  
  393. Sat Apr 21 22:33:26 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  394.  
  395.     * marshal.c (w_float): precision changed to "%.16g"
  396.  
  397. Sat Apr 21 22:07:58 2001  Guy Decoux  <decoux@moulon.inra.fr>
  398.  
  399.     * eval.c (rb_call0): wrong retry behavior.
  400.  
  401. Fri Apr 20 19:12:20 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  402.  
  403.     * numeric.c (fix_aref): a bug on long>int architecture.
  404.  
  405. Fri Apr 20 14:57:15 2001  K.Kosako  <kosako@sofnec.co.jp>
  406.  
  407.     * eval.c (rb_eval_string_wrap): should restore ruby_wrapper.
  408.  
  409. Wed Apr 18 04:37:51 2001  Wakou Aoyama  <wakou@fsinet.or.jp>
  410.  
  411.     * lib/cgi.rb: CGI::Cookie: no use PATH_INFO.
  412.  
  413. Wed Apr 18 00:24:40 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  414.  
  415.     * regex.c (re_compile_pattern): char class at either edge of range
  416.       should be invalid.
  417.  
  418. Tue Apr 17 16:54:39 2001  K.Kosako  <kosako@sofnec.co.jp>
  419.  
  420.     * eval.c (safe_getter): should use INT2NUM().
  421.  
  422. Tue Apr 17 15:12:56 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  423.  
  424.     * bignum.c (rb_big2long): 2**31 cannot fit in 31 bit long.
  425.  
  426. Sat Apr 14 22:46:43 2001  Guy Decoux  <decoux@moulon.inra.fr>
  427.  
  428.     * regex.c (calculate_must_string): wrong length calculation.
  429.  
  430. Sat Apr 14 13:33:32 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  431.  
  432.     * win32/config.status.in: no longer use missing/alloca.c.
  433.  
  434.     * win32/Makefile.sub: ditto.
  435.  
  436. Fri Apr 13 12:40:48 2001  K.Kosako  <kosako@sofnec.co.jp>
  437.  
  438.     * eval.c (rb_thread_start_0): fixed memory leak.
  439.  
  440. Fri Apr 13 16:41:18 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  441.  
  442.     * parse.y (none): should clear cmdarg_stack too.
  443.  
  444. Fri Apr 13 06:19:29 2001  GOTOU YUUZOU  <gotoyuzo@notwork.org>
  445.  
  446.     * io.c (rb_fopen): use setvbuf() to avoid recursive malloc() on
  447.       some platforms.
  448.  
  449. Wed Apr 11 23:36:26 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  450.  
  451.     * file.c (rb_stat_dev): device functions should honor stat field
  452.       types (except long long such as dev_t).
  453.  
  454. Wed Apr 11 18:07:53 2001  K.Kosako  <kosako@sofnec.co.jp>
  455.  
  456.     * eval.c (rb_mod_nesting): should not push nil for nesting array.
  457.  
  458.     * eval.c (rb_mod_s_constants): should not search array by
  459.       rb_mod_const_at() for nil (happens for singleton class).
  460.  
  461. Wed Apr 11 13:29:26 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  462.  
  463.     * class.c (rb_singleton_class_attached): should modify iv_tbl by
  464.       itself, no longer use rb_iv_set() to avoid freeze check error.
  465.  
  466.     * variable.c (rb_const_get): error message "uninitialized constant
  467.       Foo at Bar::Baz" instead of "uninitialized constant Bar::Baz::Foo".
  468.  
  469. Tue Apr 10 02:24:40 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  470.  
  471.     * io.c (opt_i_set): should strdup() inplace_edit string.
  472.  
  473. Mon Apr  9 23:29:54 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  474.  
  475.     * eval.c (exec_under): need to push cref too.
  476.  
  477. Mon Apr  9 12:05:44 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  478.  
  479.     * file.c (Init_File): should redifine "new" class method.
  480.  
  481. Mon Apr  9 11:56:52 2001  Shugo Maeda <shugo@ruby-lang.org>
  482.  
  483.     * lib/net/imap.rb: fix typo.
  484.  
  485. Thu Apr  5 22:40:12 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  486.  
  487.     * variable.c (rb_const_get): no recursion to show full class path
  488.       for modules.
  489.  
  490.     * eval.c (rb_set_safe_level): should set safe level in curr_thread
  491.       as well.
  492.  
  493.     * eval.c (safe_setter): ditto.
  494.  
  495. Thu Apr  5 13:46:06 2001  K.Kosako  <kosako@sofnec.co.jp>
  496.  
  497.     * object.c (rb_obj_is_instance_of): nil belongs to false, not true.
  498.  
  499. Thu Apr  5 02:19:03 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  500.  
  501.     * time.c (make_time_t): proper (I hope) daylight saving time
  502.       handling for both US and Europe.  I HATE SUMMER TIME!
  503.  
  504.     * eval.c (rb_thread_wait_for): non blocked signal interrupt should
  505.       stop the interval.
  506.  
  507. Wed Apr  4 03:47:03 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  508.  
  509.     * class.c (rb_mod_clone): should copy method bodies too.
  510.  
  511.     * bignum.c (bigdivrem): should trim trailing zero bdigits of
  512.       remainder, even if dd == 0.
  513.  
  514. Tue Apr  3 15:29:10 2001  Akinori MUSHA  <knu@iDaemons.org>
  515.  
  516.     * Makefile.in: Introduce MAINLIBS.
  517.  
  518.     * configure.in: Link libc_r against the ruby executable on
  519.       FreeBSD, which is the first attempt to work around a certain
  520.       problem regarding pthread on FreeBSD.  It should make ruby/libruby
  521.       happy when it loads an extention to a library compiled and linked
  522.       with -pthread.  Note, however, that libruby is _not_ linked with
  523.       libc_r so as not to mess up pthread unfriendly stuff including
  524.       apache+mod_ruby and vim6+ruby_interp.
  525.  
  526. Tue Apr  3 09:56:20 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  527.  
  528.     * ext/extmk.rb.in (create_makefile): create def file only if
  529.       it does not yet exist.
  530.  
  531.     * lib/mkmf.rb: ditto.
  532.  
  533. Tue Apr  3 00:05:07 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  534.  
  535.     * time.c (make_time_t): remove HAVE_TM_ZONE code since it
  536.       sometimes reports wrong time.
  537.  
  538.     * time.c (make_time_t): remove unnecessary range check for
  539.       platforms where negative time_t is available.
  540.  
  541. Mon Apr  2 14:25:49 2001  Shugo Maeda <shugo@ruby-lang.org>
  542.  
  543.     * lib/monitor.rb (wait): ensure reentrance.
  544.  
  545.     * lib/monitor.rb (wait): fix timeout support.
  546.  
  547. Mon Apr  2 12:44:53 2001  Shugo Maeda <shugo@ruby-lang.org>
  548.  
  549.     * lib/net/imap.rb: backport from ruby-1.7.
  550.  
  551. Mon Apr  2 01:16:24 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  552.  
  553.     * win32/win32.c: use ruby's opendir on mingw32.
  554.  
  555.     * missing/dir.h, dir.c, Makefile: ditto.
  556.  
  557. Sun Apr  1 23:26:14 2001  TOYOFUKU Chikanobu  <toyofuku@juice.or.jp>
  558.  
  559.     * numeric.c (flodivmod): a bug in no fmod case.
  560.  
  561. Sun Apr  1 18:36:14 2001  Koji Arai  <JCA02266@nifty.ne.jp>
  562.  
  563.     * process.c (pst_wifsignaled): should apply WIFSIGNALED for status
  564.       (int), not st (VALUE).
  565.  
  566. Sat Mar 31 03:24:10 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  567.  
  568.     * class.c (rb_include_module): module inclusion should be check
  569.       taints.
  570.  
  571. Fri Mar 30 12:51:19 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  572.  
  573.     * class.c (rb_include_module): freeze check at first.
  574.  
  575. Thu Mar 29 17:05:09 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  576.  
  577.     * eval.c (rb_attr): sprintf() and rb_intern() moved into
  578.       conditional body.
  579.  
  580. Wed Mar 28 23:43:00 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  581.  
  582.     * ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C
  583.       rules for the mswin32 platforms.
  584.  
  585. Wed Mar 28 19:29:21 2001  Akinori MUSHA  <knu@iDaemons.org>
  586.  
  587.     * ext/extmk.rb.in, lib/mkmf.rb: move C++ rules to the right place.
  588.  
  589. Wed Mar 28 17:39:04 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  590.  
  591.     * object.c (rb_str2cstr): warn if string contains \0 and length
  592.       value is ignored.
  593.  
  594. Wed Mar 28 15:00:31 2001  K.Kosako  <kosako@sofnec.co.jp>
  595.  
  596.     * class.c (rb_singleton_class_clone): should copy class constant
  597.       table as well.
  598.  
  599. Wed Mar 28 15:03:23 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  600.  
  601.     * class.c (rb_include_module): sometimes cache was mistakenly left
  602.       uncleared - based on the patch by K.Kosako.
  603.  
  604. Wed Mar 28 09:52:33 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  605.  
  606.     * win32/Makefile.sub: disable global optimization.
  607.  
  608. Tue Mar 27 15:00:54 2001  K.Kosako  <kosako@sofnec.co.jp>
  609.  
  610.     * eval.c (rb_mod_define_method): should have clear method cache.
  611.  
  612.     * eval.c (rb_mod_define_method): should have raised exception for
  613.       type error.
  614.  
  615. Tue Mar 27 14:48:17 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  616.  
  617.     * ruby.h: changed "extern INLINE" to "static inline".
  618.  
  619. Mon Mar 26 23:19:33 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  620.  
  621.     * time.c (rb_strftime): check whether strftime returns empty string.
  622.  
  623. Mon Mar 26 18:14:47 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  624.  
  625.     * dir.c (rb_glob_helper): part of 1.7 globber backported to proper
  626.       following of symlinks.
  627.  
  628. Mon Mar 26 17:21:07 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  629.  
  630.     * eval.c: remove TMP_PROTECT_END to prevent C_ALLOCA crash.
  631.  
  632. Mon Mar 26 14:04:41 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  633.  
  634.     * ext/Win32API/Win32API.c: remove Init_win32api().
  635.  
  636. Sat Mar 24 23:44:50 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  637.  
  638.     * eval.c (ev_const_defined): should ignore toplevel cbase (Object).
  639.  
  640.     * eval.c (ev_const_get): ditto.
  641.  
  642. Fri Mar 23 12:18:44 2001  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>
  643.  
  644.     * ext/curses/curses.c: curses on Mac OS X public beta does not
  645.       have _maxx etc.
  646.  
  647. Fri Mar 23 10:50:31 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  648.  
  649.     * marshal.c (w_object): should truncate trailing zero short for
  650.       bignums.
  651.  
  652. Thu Mar 22 22:15:45 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  653.  
  654.     * ext/Win32API/extconf.rb: add -fno-omit-frame-pointer.
  655.  
  656. Thu Mar 22 17:43:44 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  657.  
  658.     * ruby.h: better inline function support.
  659.  
  660.     * configure.in (NO_C_INLINE): check if inline is available for the
  661.       C compiler.
  662.  
  663. Wed Mar 21 23:07:45 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  664.  
  665.     * win32/win32.c (win32_stat): WinNT/2k "//host/share" support.
  666.  
  667. Wed Mar 21 01:26:14 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  668.  
  669.     * gc.c (id2ref): sometimes confused symbol and reference.
  670.  
  671. Tue Mar 20 23:09:33 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  672.  
  673.     * win32/win32.c (win32_stat): UNC support.
  674.  
  675.     * dir.c (extract_path): fix "./*" problem.
  676.  
  677. Mon Mar 19 19:14:47 2001  Guy Decoux  <decoux@moulon.inra.fr>
  678.  
  679.     * marshal.c (shortlen): shortlen should return number of bytes
  680.       written.
  681.  
  682. Mon Mar 19 18:56:55 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  683.  
  684.     * stable version 1.6.3 released.
  685.  
  686. Mon Mar 19 16:52:23 2001  K.Kosako  <kosako@sofnec.co.jp>
  687.  
  688.     * eval.c (ev_const_defined): need not to check if cbase->nd_class
  689.       is rb_cObject.
  690.  
  691.     * eval.c (ev_const_get): ditto.
  692.  
  693. Mon Mar 19 16:27:32 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  694.  
  695.     * eval.c (THREAD_ALLOC): flags should be initialized.
  696.  
  697.     * signal.c (rb_f_kill): should use FIX2INT, not FIX2UINT.
  698.  
  699. Mon Mar 19 11:03:10 2001  Koji Arai  <JCA02266@nifty.ne.jp>
  700.  
  701.     * marshal.c (r_object): len calculation patch was wrong for
  702.       machines SIZEOF_BDIGITS == SIZEOF_SHORT.
  703.  
  704.     * gc.c: alloca prototype reorganized for C_ALLOCA machine.
  705.  
  706. Sun Mar 18 08:58:18 2001  Wakou Aoyama  <wakou@fsinet.or.jp>
  707.  
  708.     * lib/cgi.rb: // === '' --> //.match('')
  709.  
  710.     * lib/cgi.rb: cgi#header(): improvement for mod_ruby.
  711.  
  712.     * lib/cgi.rb: cgi#rfc1123date(): improvement.
  713.       thanks to TADA Tadashi <sho@spc.gr.jp>.
  714.  
  715.     * lib/cgi.rb: cgi#rfc1123date(): document bug fix.
  716.       thanks to Kazuhiro NISHIYAMA <zn@mbf.nifty.com>.
  717.  
  718.     * lib/cgi.rb: cgi#header(): bug fix.
  719.       thanks to IWATSUKI Hiroyuki <don@na.rim.or.jp>.
  720.  
  721. Fri Mar 16 17:21:25 2001  Akinori MUSHA  <knu@iDaemons.org>
  722.  
  723.     * configure.in: Set SOLIBS properly for all ELF and
  724.       FreeBSD/NetBSD/OpenBSD a.out platforms so that the shlib
  725.       dependencies are recorded in the libruby shlib.
  726.  
  727. Wed Mar 14 16:41:45 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  728.  
  729.     * eval.c (rb_thread_schedule): raise FATAL just once to
  730.       THREAD_TO_KILL.
  731.  
  732. Wed Mar 14 10:41:34 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  733.  
  734.     * eval.c (rb_yield_0): 0 (= Qfalse) is a valid value, so that
  735.       default self should be checked by klass == 0.
  736.  
  737.     * bignum.c (rb_cstr2inum): should disallow '++1', '+-1', etc.
  738.  
  739. Tue Mar 13 17:51:09 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  740.  
  741.     * eval.c (ev_const_defined): add new parameter self for special
  742.       const fallback.
  743.  
  744.     * eval.c (ev_const_get): ditto.
  745.  
  746. Tue Mar 13 16:39:45 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  747.  
  748.     * dir.c (rb_glob_helper): fix drive letter handling on DOSISH.
  749.  
  750. Tue Mar 13 15:01:12 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  751.  
  752.     * lib/net/http.rb: add HTTPRequest#basic_auth.
  753.  
  754.     * lib/net/smtp.rb: raise if only account or password is given.
  755.  
  756.     * lib/net/protocol.rb: WriteAdapter#<< returns self.
  757.  
  758. Tue Mar 13 14:41:16 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  759.  
  760.     * io.c (argf_seek): wrong calling sequence of rb_io_seek().
  761.  
  762. Mon Mar 12 18:59:38 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  763.  
  764.     * lib/mkmf.rb (create_makefile): save/restore $libs and $LIBPATH.
  765.  
  766. Sun Mar 11 00:55:31 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  767.  
  768.     * lib/mkmf.rb (install_rb): fix handling of destination path.
  769.  
  770. Sat Mar 10 02:34:18 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  771.  
  772.     * math.c (math_log, math_log10): use nan() instead of 0.0/0.0 on Cygwin.
  773.  
  774. Thu Mar  8 17:43:59 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  775.  
  776.     * lib/net/protocol.rb: one write(2) per one line.
  777.  
  778. Wed Mar  7 14:26:11 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  779.  
  780.     * math.c (math_log, math_log10): should return NaN if x < 0.0
  781.       on Cygwin.
  782.  
  783. Thu Mar  7 10:31:26 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  784.  
  785.     * parse.y (stmt): while/until modifier must work for empty body.
  786.  
  787. Tue Mar  6 22:53:58 2001  Kazuhiro Yoshida   <moriq.kazuhiro@nifty.ne.jp>
  788.  
  789.     * ruby.c (ruby_set_argv): clear ARGV contents before adding args.
  790.  
  791. Tue Mar  6 10:50:29 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  792.  
  793.     * parse.y (primary): rescue and ensure clauses should be allowed
  794.       to appear in singleton method body.
  795.  
  796. Mon Mar  5 17:25:13 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  797.  
  798.     * eval.c (proc_eq): compare Procs using blocktag equality.
  799.  
  800.     * eval.c (proc_to_s): stringify according to block tag address.
  801.  
  802. Mon Mar  5 17:19:56 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  803.  
  804.     * win32/win32.c (gettimeofday): use GetLocalTime() instead of ftime()
  805.       for high-resolution timing.
  806.  
  807. Sun Mar  4 20:45:20 2001  Akinori MUSHA  <knu@iDaemons.org>
  808.  
  809.     * ext/extmk.rb.in, lib/mkmf.rb: add C++ rules in addition to C
  810.       rules.
  811.  
  812. Sun Mar  4 17:01:09 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  813.  
  814.     * string.c (trnext): support backslash escape in String#tr.
  815.  
  816. Wed Feb 28 11:02:41 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  817.  
  818.     * string.c (rb_str_delete_bang): delete! should take at least 1
  819.       argument. 
  820.  
  821. Tue Feb 27 16:38:15 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  822.  
  823.     * eval.c (ev_const_get): retrieve Object's caonstat if no current
  824.       class is available (e.g. defining singleton class for Fixnums).
  825.  
  826.     * eval.c (ev_const_defined): check Object's constant if no current
  827.       class is available (e.g. defining singleton class for Fixnums).
  828.  
  829.     * eval.c (proc_call): ignore block to `call' always, despite of
  830.       being orphan or not.
  831.  
  832. Wed Feb 27 10:16:32 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  833.  
  834.     * eval.c (rb_yield_0): should check based on rb_block_given_p()
  835.       and rb_f_block_given_p().
  836.  
  837. Mon Feb 26 16:20:27 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  838.  
  839.     * ruby.c (proc_options): call ruby_show_version() just once.
  840.  
  841. Mon Feb 26 00:04:52 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  842.  
  843.     * eval.c (proc_call): should not modify ruby_block->frame.iter
  844.       based on ruby_frame->iter altered by PUSH_ITER().
  845.  
  846. Mon Feb 26 05:27:52 2001  Wakou Aoyama  <wakou@fsinet.or.jp>
  847.  
  848.     * lib/net/telnet.rb: #telnetmode(), #binmode(): bug fix.
  849.       thanks to nobu.nakada@nifty.ne.jp.
  850.  
  851. Mon Feb 26 04:55:50 2001  Wakou Aoyama  <wakou@fsinet.or.jp>
  852.  
  853.     * lib/cgi.rb: CGI#form(): bug fix.
  854.       thanks to MoonWolf <moonwolf@moonwolf.com>.
  855.  
  856.     * lib/cgi.rb: CGI#rfc1123_date(): improvement.
  857.       thanks to Tomoyasu Akita <genzo-@dm4lab.to>.
  858.  
  859.     * lib/cgi.rb: CGI#header(): improvement for mod_ruby.
  860.       thanks to Shugo Maeda <shugo@ruby-lang.org>.
  861.  
  862. Sun Feb 25 02:45:30 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  863.  
  864.     * file.c (rb_file_s_rename): avoid Cygwin's bug.
  865.  
  866. Sat Feb 24 23:32:55 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  867.  
  868.     * eval.c (rb_thread_fd_close): should save current context before
  869.       raising exception.
  870.  
  871. Sat Feb 24 22:14:00 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  872.  
  873.     * win32/win32.c (myrename): fix error handling.
  874.  
  875. Sat Feb 24 15:43:31 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  876.  
  877.     * lib/net/protocol.rb: use net 1.2 for also ruby 1.6 branch.
  878.  
  879.     * lib/net/smtp.rb: ditto.
  880.  
  881.     * lib/net/pop.rb: ditto.
  882.  
  883.     * lib/net/http.rb: ditto.
  884.  
  885. Fri Feb 23 16:36:09 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  886.  
  887.     * lib/net/http.rb: always close connection if body is not exist.
  888.  
  889. Fri Feb 23 13:27:05 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  890.  
  891.     * lib/net/http.rb: keep-alive detection was incomplete.
  892.  
  893. Fri Feb 23 08:24:53 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  894.  
  895.     * lib/net/protocol.rb: clear read buffer after reopen.
  896.  
  897.     * lib/net/http.rb: update RD document.
  898.  
  899. Tue Feb 20 16:37:58 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  900.  
  901.     * bignum.c (rb_big2long): should not raise RangeError for Bignum
  902.       LONG_MIN value.
  903.  
  904. Mon Feb 19 17:46:37 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  905.  
  906.     * string.c (rb_str_substr): "a"[1,2] should return ""; need
  907.       rubicon upgrade.
  908.  
  909. Mon Feb 19 01:55:43 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  910.  
  911.     * eval.c (secure_visibility): visibility check for untainted modules.
  912.  
  913. Mon Feb 19 00:29:29 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  914.  
  915.     * signal.c (sigpipe): sighandler which does nothing.
  916.  
  917.     * signal.c (trap): set sigpipe function for SIGPIPE.
  918.  
  919.     * signal.c (Init_signal): default SIGPIPE handler should be
  920.       sigpipe function.
  921.  
  922. Sun Feb 18 15:42:38 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  923.  
  924.     * ext/curses/extconf.rb: add dir_config.
  925.  
  926.     * missing/flock.c: use fcntl(2) instead of lockf(2).
  927.  
  928. Sun Feb 18 13:02:03 2001  Yasushi Shoji  <yashi@yashi.com>
  929.  
  930.     * array.c (rb_ary_subseq): wrong boundary check.
  931.  
  932. Fri Feb 16 01:44:56 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  933.  
  934.     * io.c (set_outfile): f should be the FILE* from the assigning value.
  935.  
  936. Thu Feb 15 11:33:49 2001  Shugo Maeda <shugo@ruby-lang.org>
  937.  
  938.     * lib/cgi/session.rb (close): fixed reversed condition.
  939.  
  940. Wed Feb 14 17:28:24 2001  Shugo Maeda <shugo@ruby-lang.org>
  941.  
  942.     * lib/net/imap.rb: supports unknown resp_text_code.
  943.  
  944. Wed Feb 14 00:44:17 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  945.  
  946.     * dir.c (dir_s_glob): call rb_yield directly (via push_pattern) if
  947.       block is given to the method.
  948.  
  949.     * dir.c (push_pattern): do not call rb_ary_push; yield directly.
  950.  
  951. Tue Feb 13 23:05:38 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  952.  
  953.     * dir.c (lstat): should use rb_sys_stat if lstat(2) is not
  954.       available.
  955.  
  956. Tue Feb 13 17:00:18 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  957.  
  958.     * lib/net/http.rb: supports HTTP 1.0 server.
  959.  
  960. Tue Feb 13 01:13:43 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  961.  
  962.     * parse.y (primary): preserve and clear in_single and in_def using
  963.       stack to prevent nested method errors in singleton class bodies.
  964.  
  965. Sun Feb 11 16:00:30 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  966.  
  967.     * eval.c (stack_length): use __builtin_frame_address() only if
  968.       GCC and i386 CPU.
  969.  
  970.     * gc.c (rb_gc, Init_stack): ditto.
  971.  
  972.     * configure.in: add ac_cv_func_getpgrp_void=yes on DJGPP.
  973.  
  974. Sat Feb 10 23:43:49 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  975.  
  976.     * hash.c (rb_any_hash): dumped core on machines sizeof(int) != sizeof(long).
  977.  
  978. Sat Feb 10 23:07:15 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  979.  
  980.     * regex.c (PREV_IS_A_LETTER): should not treat c>0x7f as a word
  981.       character if -Kn.
  982.  
  983. Sat Feb 10 00:06:28 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  984.  
  985.     * win32/win32.c (win32_stat): replace stat for enable when pathname
  986.       ends with '/' or '\' for mswin32 on Win9X / Win2k.
  987.  
  988.     * win32/win32.h: ditto.
  989.  
  990.     * ruby.h: ditto.
  991.  
  992.     * dir.c (rb_glob_helper): ditto.
  993.  
  994.     * file.c (rb_stat, rb_file_s_stat, eaccess, check3rdbyte): ditto.
  995.  
  996. Fri Feb  9 22:54:57 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  997.  
  998.     * ruby.c (ruby_init_loadpath): convert '\\' to '/'
  999.       before finding executable file path.
  1000.  
  1001. Fri Feb  9 17:41:53 2001  Triet H. Lai  <thlai@mail.usyd.edu.au>
  1002.  
  1003.     * dir.c (rb_glob_helper): do not follow symbolic links.
  1004.  
  1005. Fri Feb  8 23:53:08 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  1006.  
  1007.     * win32/config.h.in (inline): add inline definition.
  1008.  
  1009. Thu Feb  8 21:27:24 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  1010.  
  1011.     * lib/mkmf.rb (install_rb): fix handling of relative path.
  1012.  
  1013.     * lib/mkmf.rb (create_makefile): add srcdir.
  1014.  
  1015. Wed Feb  7 16:05:22 2001  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1016.  
  1017.     * parse.y (parse_quotedwords): %w should allow parenthesis escape.
  1018.  
  1019. Wed Feb  7 00:57:42 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1020.  
  1021.     * parse.y (parse_qstring): %q should allow terminator escape.
  1022.  
  1023. Wed Feb  7 00:57:42 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1024.  
  1025.     * re.c (rb_reg_equal): all option flags should be same to be equal.
  1026.  
  1027. Tue Feb  6 21:01:29 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1028.  
  1029.     * lib/net/protocol.rb: ignore EOFError on only specified case.
  1030.  
  1031.     * lib/net/http.rb: take HTTP 1.0 server into account.
  1032.  
  1033. Mon Feb 5 00:39:06 2001  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>
  1034.  
  1035.     * dir.c: use ISXXX() instead of isxxx().
  1036.  
  1037.     * dln.c (aix_loaderror): ditto.
  1038.  
  1039.     * file.c (rb_file_s_expand_path): ditto.
  1040.  
  1041.     * string.c (rb_str_upcase_bang): ditto.
  1042.  
  1043.     * win32/win32.c (do_spawn): ditto.
  1044.  
  1045.     * win32/win32.c (NtMakeCmdVector): ditto.
  1046.  
  1047.     * win32/win32.c (opendir): ditto.
  1048.  
  1049. Fri Feb  3 00:48:50 2001  Usaku Nakamura  <usa@osb.att.ne.jp>
  1050.  
  1051.     * win32/win32.c (isInternalCmd): ignore case for shell's internal
  1052.       command. (marge from HEAD)
  1053.  
  1054. Fri Feb  2 16:14:51 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1055.  
  1056.     * eval.c (POP_VARS): propagate DVAR_DONT_RECYCLE, if
  1057.       SCOPE_DONT_RECYCLE of ruby_scope is set.
  1058.  
  1059. Wed Jan 31 22:27:29 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  1060.  
  1061.     * configure.in: gcc-2.95.2-7(cygwin) support.
  1062.       add -mwin32 if available.
  1063.  
  1064.     * cygwin/GNUmakefile: ditto.
  1065.  
  1066. Mon Jan 29 17:36:19 2001  TOYOFUKU Chikanobu  <toyofuku@juice.or.jp>
  1067.  
  1068.     * eval.c (rb_eval): nd_iter evaluation should be wrapped by
  1069.       BEGIN_CALLARGS and END_CALLARGS.
  1070.  
  1071. Mon Jan 29 01:40:27 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1072.  
  1073.     * string.c (str_independent): should not clear str->orig here.
  1074.       it's too early.
  1075.  
  1076. Wed Jan 24 01:45:49 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1077.  
  1078.     * eval.c (POP_BLOCK_TAG): call rb_gc_force_recycle() if block has
  1079.       not been objectified.
  1080.  
  1081.     * eval.c (rb_callcc): should nail down block->tag history to avoid
  1082.       rb_gc_force_recycle(). 
  1083.  
  1084. Tue Jan 23 18:51:57 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1085.  
  1086.     * gc.c (rb_gc_call_finalizer_at_exit): should finalize objects in
  1087.       deferred_final_list too.
  1088.  
  1089. Tue Jan 23 16:10:12 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1090.  
  1091.     * gc.c (os_live_obj): do not list terminated object.
  1092.  
  1093.     * gc.c (os_obj_of): ditto.
  1094.  
  1095.     * gc.c (rb_gc_mark): support new T_BLKTAG tag.
  1096.  
  1097.     * gc.c (obj_free): ditto.
  1098.  
  1099.     * eval.c (new_blktag): creation of new block tag, which holds
  1100.       destination of global jump and orphan status.
  1101.  
  1102.     * eval.c (block_pass): break from orphan Proc object will raise a
  1103.       LocalJumpError exception.
  1104.  
  1105. Mon Jan 22 16:33:16 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  1106.  
  1107.     * mkconfig.rb: autoconf 2.49 support.
  1108.  
  1109. Sat Jan 20 03:54:00 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1110.  
  1111.     * parse.y (yylex): fixed serious syntax misbehavior.  do's
  1112.       preceding was too high.  a block in `foo bar do .. end' should
  1113.       be passed to `foo', not `bar'.
  1114.  
  1115.     * parse.y (block_call): syntax restructure.
  1116.  
  1117. Fri Jan 19 04:04:31 2001  Akinori MUSHA  <knu@iDaemons.org>
  1118.  
  1119.     * lib/irb/ruby-lex.rb: Merge from HEAD: rev.1.4
  1120.  
  1121. Wed Jan 17 13:28:26 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  1122.  
  1123.     * configure.in: remove DEFS definition.
  1124.  
  1125.     * mkconfig.rb: ditto.
  1126.  
  1127.     * win32/config.status.in: ditto.
  1128.  
  1129. Tue Jan 16 16:59:14 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1130.  
  1131.     * lib/net/protocol.rb: ignore EOFError for read
  1132.  
  1133. Sun Jan 14 21:49:28 2001  Koji Arai  <JCA02266@nifty.ne.jp>
  1134.  
  1135.     * sprintf.c (rb_f_sprintf): simple typo.  binary base should be 2,
  1136.       not '2'.
  1137.  
  1138. Sun Jan 14 02:49:57 2001  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1139.  
  1140.     * lib/net/protocol.rb (adding): too few "yield" in case of arg is
  1141.       not String/File.
  1142.  
  1143. Sat Jan 13 19:18:18 2001  WATANABE Hirofumi  <eban@ruby-lang.org>
  1144.  
  1145.     * re.c (rb_reg_desc): separate RE_OPTION_MULTILINE
  1146.  
  1147.     * re.c (rb_reg_options): add RE_OPTION_{POSIXLINE,RE_OPTION_MULTILINE,
  1148.       RE_OPTION_EXTENDED}
  1149.  
  1150. Thu Jan 11 06:45:55 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1151.  
  1152.     * object.c (rb_mod_dup): should propagate FL_SINGLETON.
  1153.  
  1154.     * object.c (inspect_obj): handles the case of no instance variable.
  1155.  
  1156. Wed Jan 10 01:50:45 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1157.  
  1158.     * string.c (rb_str_reverse_bang): forgot to call rb_str_modify().
  1159.  
  1160. Tue Jan  9 17:41:40 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1161.  
  1162.     * object.c (rb_obj_taint): check frozen status before modifying
  1163.       taint status.
  1164.  
  1165.     * object.c (rb_obj_untaint): ditto.
  1166.  
  1167. Mon Jan  8 21:35:10 2001  Guy Decoux  <decoux@moulon.inra.fr>
  1168.  
  1169.     * file.c (path_check_1): should restore modified path.
  1170.  
  1171. Mon Jan  8 21:24:37 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1172.  
  1173.     * bignum.c (bigdivrem): t2 might be too big for signed long; do
  1174.       not use rb_int2big(), but rb_uint2big().
  1175.  
  1176. Mon Jan  8 03:09:58 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1177.  
  1178.     * error.c (rb_load_fail): new func to report LoadError.
  1179.  
  1180.     * ruby.c (load_file): use rb_load_fail.
  1181.  
  1182. Sat Jan  6 00:55:59 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1183.  
  1184.     * pack.c (pack_pack): template "m2" or "u2" caused inifinite loop.
  1185.  
  1186. Fri Jan  5 01:02:17 2001  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1187.  
  1188.     * eval.c (ruby_finalize): should enclosed by PUSH_TAG/POP_TAG.
  1189.  
  1190. Sun Dec 31 01:39:16 2000  Guy Decoux  <decoux@moulon.inra.fr>
  1191.  
  1192.     * eval.c (rb_mod_define_method): wrong comparison for blocks.
  1193.  
  1194. Sat Dec 30 19:28:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1195.  
  1196.     * gc.c (id2ref): should handle Symbol too.
  1197.  
  1198.     * gc.c (id2ref): should print original ptr value
  1199.  
  1200. Sat Dec 30 03:14:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1201.  
  1202.     * eval.c (rb_iterate): NODE_CFUNC does not protect its data
  1203.       (nd_tval), so create new node NODE_IFUNC for iteration C
  1204.       function. 
  1205.  
  1206.     * eval.c (rb_yield_0): use NODE_IFUNC.
  1207.  
  1208.     * gc.c (rb_gc_mark): support NODE_IFUNC.
  1209.  
  1210. Fri Dec 29 11:41:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1211.  
  1212.     * gc.c (mem_error): prohibit recursive mem_error().
  1213.       (ruby-bugs-ja:PR#36)
  1214.  
  1215. Fri Dec 29 11:05:41 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1216.  
  1217.     * eval.c (rb_thread_fd_writable): should not switch context if
  1218.       rb_thread_critical is set.
  1219.  
  1220.     * eval.c (rb_thread_wait_fd): ditto.
  1221.  
  1222.     * eval.c (rb_thread_wait_for): ditto.
  1223.  
  1224.     * eval.c (rb_thread_select): ditto.
  1225.  
  1226.     * eval.c (rb_thread_join): join during critical section causes
  1227.       deadlock. 
  1228.  
  1229. Tue Dec 26 18:46:41 2000  NAKAMURA Hiroshi  <nakahiro@sarion.co.jp>
  1230.  
  1231.     * lib/debug.rb: Avoid thread deadlock in debugging stopped thread.
  1232.  
  1233.     * lib/debug.rb: Uncleared 'finish' state.
  1234.  
  1235. Tue Dec 26 16:53:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1236.  
  1237.     * eval.c (rb_yield_0): remove dvar node by rb_gc_force_recycle()
  1238.       more eagerly.
  1239.  
  1240.     * eval.c (rb_f_binding): recycling should be stopped for outer
  1241.       scope too.
  1242.  
  1243.     * eval.c (proc_new): ditto.
  1244.  
  1245. Tue Dec 26 15:45:35 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1246.  
  1247.     * string.c (rb_str_inspect): should treat multibyte chracters
  1248.       properly.
  1249.  
  1250. Mon Dec 25 17:49:08 2000  K.Kosako  <kosako@sofnec.co.jp>
  1251.  
  1252.     * string.c (rb_str_replace_m): unexpected string share happens if
  1253.       replace is done for associated (STR_NO_ORIG) string.
  1254.  
  1255. Tue Dec 26 15:01:53 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1256.  
  1257.     * io.c (rb_f_p): should not call rb_io_flush() if rb_defout is not
  1258.       a IO (T_FILE).
  1259.  
  1260. Mon Dec 25 15:52:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1261.  
  1262.     * stable version 1.6.2 released.
  1263.  
  1264. Mon Dec 25 05:11:04 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  1265.  
  1266.     * lib/cgi.rb: version 2.1.2 (some bug fixes).
  1267.  
  1268.     * lib/cgi.rb: Regexp::last_match[1] --> $1
  1269.  
  1270.     * lib/net/telnet.rb: ditto.
  1271.  
  1272. Mon Dec 25 04:43:02 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1273.  
  1274.     * lib/net/http.rb: does not send HEAD on closing socket.
  1275.  
  1276. Mon Dec 25 00:44:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1277.  
  1278.     * hash.c (rb_any_cmp): should use rb_str_cmp() if TYPE == T_STRING
  1279.       and CLASS_OF == rb_cString.
  1280.  
  1281.     * string.c (rb_str_new4): should copy class of original too.
  1282.  
  1283. Mon Dec 25 00:04:54 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1284.  
  1285.     * eval.c (rb_thread_schedule): initial value of `max' changed to -1.
  1286.  
  1287. Mon Dec 25 00:16:14 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1288.  
  1289.     * string.c (rb_str_replace_m): copy-on-write replace.
  1290.  
  1291.     * parse.y (yylex): should handle => after identifier as well as ==
  1292.       and =~.
  1293.  
  1294. Sat Dec 23 23:55:57 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1295.  
  1296.     * bignum.c (rb_cstr2inum): Integer("") should not return 0.
  1297.  
  1298. Sat Dec 23 11:55:57 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1299.  
  1300.     * array.c (rb_ary_and): Array#& should preverve original order.
  1301.  
  1302. Sat Dec 23 03:44:16 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1303.  
  1304.     * lib/net/protocol.rb: set @closed false in Socket#reopen.
  1305.  
  1306.     * lib/net/pop.rb: add POP3.foreach, delete_all.
  1307.  
  1308.     * lib/net/pop.rb: add POP3#delete_all.
  1309.  
  1310.     * lib/net/http.rb: add HTTP.version_1_1, version_1_2
  1311.  
  1312.     * lib/net/http.rb: refactoring.
  1313.  
  1314. Fri Dec 22 23:11:12 2000  Ueno Katsuhiro  <unnie@blue.sky.or.jp>
  1315.  
  1316.     * eval.c (rb_feature_p): ext might be null.
  1317.  
  1318. Fri Dec 22 17:04:12 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1319.  
  1320.     * win32/win32.c (myselect): avoid busy loop by adjusting fd_count.
  1321.  
  1322. Fri Dec 22 15:07:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1323.  
  1324.     * bignum.c (rb_cstr2inum): prefix like '0x' had removed too much.
  1325.  
  1326. Thu Dec 21 13:01:46 2000  Tanaka Akira  <akr@m17n.org>
  1327.  
  1328.     * lib/net/ftp.rb (makeport): don't use TCPsocket.getaddress.
  1329.  
  1330. Wed Dec 20 12:00:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1331.  
  1332.     * bignum.c (rb_big_lshift): should cast up to BDIGIT_DBL.
  1333.  
  1334.     * parse.y (yylex): disallow trailing '_' for numeric litrals.
  1335.  
  1336.     * bignum.c (rb_cstr2inum): allow `_' within converting string.
  1337.  
  1338.     * eval.c (specific_eval): should take no argument if block is
  1339.       supplied.
  1340.  
  1341. Tue Dec 19 13:44:50 2000  K.Kosako  <kosako@sofnec.co.jp>
  1342.  
  1343.     * io.c (rb_f_p): should flush rb_defout, not stdout.
  1344.  
  1345. Tue Dec 19 00:57:10 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1346.  
  1347.     * time.c (time_minus): usec might overflow. (ruby-bugs-ja:PR#35)
  1348.  
  1349.     * eval.c (rb_obj_extend): Object#extend should take at least one
  1350.       argument.
  1351.  
  1352.     * parse.y (mrhs_basic): should check value_expr($3), not $1.
  1353.  
  1354. Mon Dec 18 23:18:39 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1355.  
  1356.     * util.c (mblen, __crt0_glob_function): add for multibyte
  1357.       on DJGPP 2.03.
  1358.  
  1359. Mon Dec 18 18:10:30 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1360.  
  1361.     * time.c (time_plus): usec might underflow (ruby-bugs-ja:#PR33).
  1362.  
  1363. Mon Dec 18 08:11:20 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1364.  
  1365.     * hash.c (rb_hash_set_default): should call rb_hash_modify().
  1366.  
  1367. Sat Dec 16 02:58:26 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1368.  
  1369.     * eval.c (rb_eval): should clear ruby_errinfo on retry.
  1370.  
  1371.     * eval.c (rb_rescue2): ditto.
  1372.  
  1373. Thu Dec 14 13:06:18 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1374.  
  1375.     * class.c (rb_include_module): prohibit fronzen class/module.
  1376.  
  1377.     * eval.c (rb_frozen_class_p): make external.
  1378.  
  1379.     * intern.h (rb_frozen_class_p): prototyped.
  1380.  
  1381.     * intern.h (rb_undef): prototyped not but rb_undef_method()
  1382.       which is also in ruby.h.
  1383.  
  1384. Thu Dec 14 09:20:26 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  1385.  
  1386.     * lib/cgi.rb: support -T1 on ruby 1.6.2
  1387.  
  1388.     * lib/cgi.rb: $1 --> Regexp::last_match[1]
  1389.  
  1390.     * lib/net/telnet.rb: ditto.
  1391.  
  1392. Wed Dec 13 23:27:06 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1393.  
  1394.     * eval.c (rb_eval): handles case statement without expr, which
  1395.       looks for any TRUE (non nil, non false) when expression.
  1396.  
  1397.     * parse.y (primary): case expression should not be compstmt, but
  1398.       mere expr.
  1399.  
  1400.     * parse.y (primary): case without following expression is now
  1401.       separated rule.
  1402.  
  1403. Wed Dec 13 12:41:27 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1404.  
  1405.     * ruby.c (proc_options): accept "--^M" for DOS line endings.
  1406.  
  1407. Tue Dec 12 15:45:42 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1408.  
  1409.     * parse.y (newline_node): cancel newline unification.
  1410.  
  1411. Mon Dec 11 23:01:57 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1412.  
  1413.     * parse.y (yylex): supports cases `?' precedes EOF and newline.
  1414.  
  1415. Mon Dec 11 12:11:25 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1416.  
  1417.     * eval.c (call_end_proc): some frame members were left
  1418.       uninitialized.
  1419.  
  1420. Mon Dec 11 01:14:58 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1421.  
  1422.     * io.c (rb_io_fptr_finalize): do not fclose stdin, stdout and
  1423.       stderr at exit.
  1424.  
  1425. Sat Dec  9 17:34:48 2000  Tachino Nobuhiro <tachino@open.nm.fujitsu.co.jp>
  1426.  
  1427.     * time.c (time_cmp): should check with kind_of?, not instance_of?
  1428.  
  1429.     * time.c (time_eql): ditto.
  1430.  
  1431.     * time.c (time_minus): ditto.
  1432.  
  1433. Fri Dec  8 17:23:25 2000  Tachino Nobuhiro <tachino@open.nm.fujitsu.co.jp>
  1434.  
  1435.     * sprintf.c (rb_f_sprintf): proper string precision treat.
  1436.  
  1437. Fri Dec  8 10:44:05 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1438.  
  1439.     * variable.c (rb_mod_remove_cvar): Module#remove_class_variable
  1440.       added.
  1441.  
  1442. Thu Dec  7 17:35:51 2000  Shugo Maeda  <shugo@ruby-lang.org>
  1443.  
  1444.     * eval.c (stack_length): don't use __builtin_frame_address() on alpha.
  1445.  
  1446. Wed Dec  6 18:07:13 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1447.  
  1448.     * djgpp/config.sed, win32/Makefile.sub: typo.
  1449.  
  1450.     * eval.c (rb_mod_define_method): avoid VC4.0 warnings.
  1451.  
  1452. Wed Dec  6 13:38:08 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1453.  
  1454.     * array.c (rb_ary_and): tuning, make hash from shorter operand.
  1455.  
  1456. Wed Dec  6 01:28:50 2000  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>
  1457.  
  1458.     * gc.c (rb_gc): __builtin_frame_address() should not be used on
  1459.       MacOS X.
  1460.  
  1461.     * gc.c (Init_stack): ditto.
  1462.  
  1463. Mon Dec  4 13:44:01 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1464.  
  1465.     * lib/jcode.rb: consider multibyte. not /n.
  1466.  
  1467. Mon Dec  4 09:49:36 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1468.  
  1469.     * string.c (rb_str_inspect): output whole string contents. no more `...'
  1470.  
  1471.     * string.c (rb_str_dump): should propagate taintness.
  1472.  
  1473.     * hash.c (env_inspect): hash like human readable output.
  1474.  
  1475.     * variable.c (rb_ivar_get): prohibiting instance variable access
  1476.       is too much restriction.
  1477.  
  1478.     * class.c (method_list): retrieving information should not be
  1479.       restricted where $SAFE=4.
  1480.  
  1481.     * class.c (rb_obj_singleton_methods): ditto.
  1482.  
  1483.     * eval.c (rb_thread_priority): ditto.
  1484.  
  1485.     * eval.c (rb_thread_local_aref): ditto.
  1486.  
  1487.     * variable.c (rb_obj_instance_variables): ditto.
  1488.  
  1489.     * variable.c (rb_mod_const_at): ditto.
  1490.  
  1491.     * variable.c (rb_mod_class_variables): ditto.
  1492.  
  1493.     * eval.c (rb_exec_end_proc): end_proc should be preserved.
  1494.  
  1495. Sat Dec  2 22:32:43 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1496.  
  1497.     * eval.c (rb_yield_0): || should accept exactly zero argument.
  1498.  
  1499.     * parse.y (stmt): multiple right hand side for single assignment
  1500.       (e.g. a = 1,2) is allowed.
  1501.  
  1502. Wed Nov 29 07:55:29 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1503.  
  1504.     * marshal.c (w_long): dumping long should be smaller than 32bit max.
  1505.  
  1506.     * marshal.c (w_long): shorter long format for small integers(-123..122).
  1507.  
  1508.     * marshal.c (r_long): ditto.
  1509.  
  1510. Tue Nov 28 18:10:51 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1511.  
  1512.     * eval.c (rb_mod_define_method): quick hack to implement
  1513.       on-the-fly method definition.  experimental.
  1514.  
  1515. Mon Nov 27 17:00:35 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1516.  
  1517.     * eval.c (rb_eval): should not redefine builtin classes/modules
  1518.       from within wrapped load.
  1519.  
  1520. Mon Nov 27 08:57:33 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1521.  
  1522.     * eval.c (call_end_proc): should be isolated from outer block.
  1523.  
  1524. Mon Nov 27 00:10:08 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1525.  
  1526.     * io.c (rb_io_ctl): call ioctl/fcntl for fptr->f2 too.
  1527.  
  1528.     * process.c (rb_f_fork): call rb_thread_atfork() after creating
  1529.       child process.
  1530.  
  1531.     * eval.c (rb_thread_atfork): kill all other threads immediately,
  1532.       then turn the current thread into the main thread.
  1533.  
  1534. Sat Nov 25 23:12:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1535.  
  1536.     * eval.c (ruby_run): move calling point of rb_trap_exit after
  1537.       cleaning up threads.
  1538.  
  1539.     * eval.c (ruby_finalize): new function to call EXIT trap, END
  1540.       procs and GC finalizers.
  1541.  
  1542.     * eval.c (rb_exec_end_proc): prevent recursion.
  1543.  
  1544.     * gc.c (rb_gc_call_finalizer_at_exit): ditto.
  1545.  
  1546.     * signal.c (rb_trap_exit): ditto. made static.
  1547.  
  1548.     * process.c (rb_f_fork): should swallow all exceptions from block
  1549.       execution.
  1550.  
  1551.     * process.c (fork_rescue): should call ruby_finalize().
  1552.  
  1553.     * parse.y (yycompile): rb_gc() removed.  I don't remember why I put
  1554.       this here.  test code?
  1555.  
  1556. Fri Nov 24 22:03:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1557.  
  1558.     * range.c (EXCL): exclusive infomation is now stored in an
  1559.       instance variable.  this enables proper marshal dump.
  1560.  
  1561.     * process.c (proc_waitpid): should clear rb_last_status ($?) if
  1562.       no pid was given by waitpid(2).
  1563.  
  1564. Thu Nov 23 01:35:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1565.  
  1566.     * process.c (proc_waitpid2): returns nil if no pid found.
  1567.  
  1568. Wed Nov 22 23:45:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1569.  
  1570.     * range.c (range_eq): new method.  Compares start and end of range
  1571.       respectively.
  1572.  
  1573. Wed Nov 22 11:01:32 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1574.  
  1575.     * variable.c (rb_mod_class_variables): should honor singleton
  1576.       class variable rule defined yesterday.
  1577.  
  1578. Tue Nov 21 23:24:14 2000  Mitsuteru S Nakao  <nakao@kuicr.kyoto-u.ac.jp>
  1579.  
  1580.     * numeric.c (flodivmod): missing second operand (typo).
  1581.  
  1582. Tue Nov 21 03:39:41 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1583.  
  1584.     * marshal.c (marshal_load): marshal format compatibility check
  1585.       revised.   greater minor revision is UPWARD compatibile;
  1586.       downward compatibility is not assured.
  1587.  
  1588.     * eval.c (is_defined): clarify class variable behavior for
  1589.       singleton classes.  class variables within singleton class
  1590.       should be treated like within singleton method.
  1591.  
  1592. Mon Nov 20 13:45:21 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1593.  
  1594.     * eval.c (rb_eval): set ruby_sourceline before evaluating
  1595.       exceptions.
  1596.  
  1597.     * gc.c (gc_sweep): defer finalization in GC during compilation or
  1598.       interrupt prohibit section.
  1599.  
  1600.     * gc.c (gc_sweep): mark all nodes before sweeping if GC happened
  1601.       during compilation.
  1602.  
  1603.     * eval.c (rb_eval): should treat class variables specially in a
  1604.       method defined in the singleton class.
  1605.  
  1606. Mon Nov 20 10:20:21 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1607.  
  1608.     * dir.c, win32/win32.c, ruby.h: add rb_iglob().
  1609.  
  1610. Mon Nov 20 00:18:16 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1611.  
  1612.     * array.c (rb_ary_subseq): should return nil for outbound start
  1613.       index.
  1614.  
  1615.     * marshal.c (marshal_load): show format versions explicitly when
  1616.       format version mismatch happens.
  1617.  
  1618. Sun Nov 19 06:13:24 2000  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
  1619.  
  1620.     * marshal.c: use long for string/array length.
  1621.  
  1622.     * pack.c (swaps): use bit-or(|) instead of plus(+).
  1623.  
  1624.     * pack.c (swapl): ditto.
  1625.  
  1626. Sat Nov 18 15:18:16 2000  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
  1627.  
  1628.     * array.c (rb_ary_replace): array size should be in long.
  1629.  
  1630.     * array.c (rb_ary_concat): ditto.
  1631.  
  1632.     * array.c (rb_ary_hash): ditto.
  1633.  
  1634. Sat Nov 18 14:07:20 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1635.  
  1636.     * lib/net/http.rb: Socket#readline() reads until "\n", not "\r\n"
  1637.  
  1638. Fri Nov 17 14:55:18 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1639.  
  1640.     * string.c (rb_str_succ): output should be NUL terminated.
  1641.  
  1642. Fri Nov 17 02:54:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1643.  
  1644.     * io.c (rb_io_close): need not to flush before closing.
  1645.  
  1646.     * eval.c (rb_thread_join): should preserve last thread status when
  1647.       THREAD_TO_KILL.
  1648.  
  1649.     * eval.c (rb_thread_stop): ditto.
  1650.  
  1651.     * io.c (io_fflush): wrap fflush by TRAP_BEG, TRAP_END.
  1652.  
  1653.     * eval.c (rb_eval): method defined within singleton class
  1654.       definition should behave like singleton method about class
  1655.       variables.
  1656.  
  1657.     * eval.c (is_defined): ditto.
  1658.  
  1659. Thu Nov 16 23:06:07 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1660.  
  1661.     * lib/net/http.rb: can call {old,new}_implementation any times.
  1662.  
  1663.     * lib/net/http.rb: HTTP#connecting, receive ->
  1664.       common_oper, connecting.
  1665.  
  1666.     * lib/net/http.rb: output warning if u_header includes
  1667.       duplicated header.
  1668.  
  1669.     * lib/net/http.rb: not check Connection:/Proxy-Connection;
  1670.       always read until eof.
  1671.  
  1672.     * lib/net/protocol.rb: detects and catches "break" from block.
  1673.  
  1674. Thu Nov 16 16:32:45 2000  Masahiro Tanaka  <masa@stars.gsfc.nasa.gov>
  1675.  
  1676.     * bignum.c (bigdivrem): should have incremented ny first.
  1677.  
  1678. Thu Nov 16 14:58:00 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1679.  
  1680.     * ext/socket/socket.c (sock_new): duplicates file descriptor 
  1681.       with myfddup() on mswin32/mingw32.
  1682.  
  1683.     * win32/win32.h: uses system original fdopen().
  1684.  
  1685.     * win32/win32.c (myfddup): newly added instead of myfdopen().
  1686.  
  1687.     * win32/win32.c (mybind, myconnect, mygetsockname, mygetsockopt, 
  1688.       mylisten, mysetsockopt): now accept file descriptor only, not 
  1689.       SOCKET.
  1690.  
  1691.     * win32/win32.c (myaccept, mysocket): return file descriptor, 
  1692.       instead of SOCKET.
  1693.  
  1694. Thu Nov 16 10:23:24 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1695.  
  1696.     * eval.c (massign): too strict check for nameless rest argument.
  1697.  
  1698.     * eval.c (method_arity): mere * should return -1.
  1699.  
  1700.     * eval.c (intersect_fds): should check all FDs in the fd_set.
  1701.  
  1702. Wed Nov 15 19:33:20 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1703.  
  1704.     * eval.c (rb_attr): should clear method cache before calling hook.
  1705.  
  1706.     * eval.c (rb_eval): ditto.
  1707.  
  1708.     * eval.c (rb_mod_modfunc): ditto.
  1709.  
  1710. Mon Nov 13 22:44:52 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1711.  
  1712.     * error.c (rb_bug): print version to stderr.
  1713.  
  1714. Mon Nov 13 19:02:08 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1715.  
  1716.     * win32/win32.c, io.c, process.c: the exit status of program must be
  1717.       multiplied 256 on mswin32 and msdosdjgpp(system(), ``).
  1718.  
  1719. Sat Nov 11 22:57:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1720.  
  1721.     * parse.y (arg): uniformed treatment of -a**b, where a is a
  1722.       number literal;  hacky but behavior appears more consistent.
  1723.  
  1724.     * parse.y (newline_node): reduce newline node (one per line).
  1725.  
  1726.     * random.c (rb_f_srand): should be prohibited in safe level
  1727.       greater than 4.
  1728.  
  1729. Sat Nov 11 22:37:36 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  1730.  
  1731.     * rubysig.h: do not use rb_trap_immediate on win32.
  1732.  
  1733.     * rubysig.h: new macros, ATOMIC_TEST, ATOMIC_SET, ATOMIC_INC,
  1734.       ATOMIC_DEC, RUBY_CRITICAL and new definition of TRAP_BEG,
  1735.       TRAP_END.
  1736.  
  1737.     * gc.c (ruby_xmalloc): should wrap malloc() by RUBY_CRITICAL.
  1738.  
  1739.     * signal.c (sighandle): better win32 sig handling.
  1740.  
  1741.     * win32/win32.c (flock): better implementation.
  1742.  
  1743.     * win32/win32.c (myselect): ditto.
  1744.  
  1745.     * win32/win32.c (myaccept): ditto.
  1746.  
  1747.     * win32/win32.c (waitpid): ditto.
  1748.  
  1749.     * win32/win32.c (myrename): ditto.
  1750.  
  1751.     * win32/win32.c (wait_events): support function for win32 signal
  1752.       handling.
  1753.  
  1754. Sat Nov 11 08:34:18 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1755.  
  1756.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.31.
  1757.  
  1758.     * lib/net/http.rb: initializes header in HTTP, not HTTPCommand.
  1759.  
  1760.     * lib/net/protocol.rb, http.rb: rewrites proxy code.
  1761.  
  1762. Fri Nov 10 16:15:53 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1763.  
  1764.     * numeric.c (rb_num2long): use to_int, not to_i.
  1765.  
  1766.     * error.c: T_SYMBOL was misplaced by T_UNDEF.
  1767.  
  1768.     * parse.y (yylex): eval("^") caused infinite loop.
  1769.  
  1770. Thu Nov  9 14:22:13 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1771.  
  1772.     * io.c (rb_io_taint_check): should check IO taintness; no
  1773.       operation for untainted IO should be allowed in the sandbox.
  1774.  
  1775.     * rubyio.h (GetOpenFile): check IO taintness inside using
  1776.       rb_io_taint_check().
  1777.  
  1778. Wed Nov  8 03:08:53 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1779.  
  1780.     * io.c (io_fflush): ensure fflush(3) would not block by calling
  1781.       rb_thread_fd_writable(). 
  1782.  
  1783. Tue Nov  7 20:29:56 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1784.  
  1785.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.30.
  1786.  
  1787.     * lib/net/protocol.rb, smtp.rb: Command#critical_ok -> error_ok
  1788.  
  1789.     * lib/net/http.rb: reads header when also "100 Continue".
  1790.  
  1791. Tue Nov  7 04:32:19 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1792.  
  1793.     * bignum.c (bigdivrem): use bit shift to make y's MSB set.
  1794.  
  1795. Mon Nov  6  1:22:49 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1796.  
  1797.     * error.c (warn_print): do not use err_append(), to ensure output
  1798.       to stderr.
  1799.  
  1800.     * error.c (rb_warn): use warn_print() instead of err_print().
  1801.  
  1802.     * error.c (rb_warning): ditto.
  1803.  
  1804.     * error.c (rb_bug): ditto.
  1805.  
  1806.     * eval.c (rb_load): re-raise exceptions during load.
  1807.  
  1808.     * time.c (make_time_t): remove useless adjust
  1809.  
  1810. Thu Nov  2 18:01:16 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1811.  
  1812.     * random.c (rb_f_rand): half-baked float support fixed.  This fix
  1813.       was originally proposed by K.Kosako <kosako@sofnec.co.jp>.
  1814.  
  1815. Tue Oct 31 17:27:17 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1816.  
  1817.     * bignum.c: change digit size to `long|int' if long long is
  1818.       available.
  1819.  
  1820.     * marshal.c (w_object): support `long|int' digits.
  1821.  
  1822.     * marshal.c (r_object): ditto.
  1823.  
  1824. Sat Oct 28 23:54:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1825.  
  1826.     * parse.y (yylex): allow =end at the end of file (without a
  1827.       newline at the end).
  1828.  
  1829. Fri Oct 27 10:00:27 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1830.  
  1831.     * bignum.c (rb_cstr2inum): should ignore trailing white spaces.
  1832.  
  1833.     * bignum.c (rb_str2inum): string may not have sentinel NUL.
  1834.  
  1835. Fri Oct 27 02:37:22 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1836.  
  1837.     * bignum.c (rb_cstr2inum): wrongly assigned base to c before
  1838.       badcheck check.
  1839.  
  1840. Thu Oct 26 02:42:50 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1841.  
  1842.     * lib/net/protocol.rb: Command#critical_ok
  1843.  
  1844.     * lib/net/smtp.rb: clear critical flag before go to SMTP
  1845.  
  1846. Wed Oct 25 12:30:19 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1847.  
  1848.     * array.c (rb_ary_concat): replacing array might be the receiver
  1849.       itself.  do not call rb_ary_push_m.
  1850.  
  1851.     * array.c (rb_ary_replace): replacing array might be the receiver
  1852.       itself.  use memmove.
  1853.  
  1854. Fri Oct 20 07:56:23 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1855.  
  1856.     * eval.c (rb_eval): ARGSPUSH should not modify args array.
  1857.  
  1858. Thu Oct 19 14:58:17 2000  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  1859.  
  1860.     * pack.c (NUM2U32): should use NUM2ULONG().
  1861.  
  1862. Tue Oct 17 17:30:34 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1863.  
  1864.     * eval.c (error_print): ruby_sourcefile may be NULL.
  1865.  
  1866. Tue Oct 17 16:36:28 2000  Wes Nakamura  <wknaka@pobox.com>
  1867.  
  1868.     * pack.c (NATINT_U32): wrong use of sizeof.
  1869.  
  1870. Tue Oct 17 12:48:20 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  1871.  
  1872.     * eval.c (rb_abort): nil check against ruby_errinfo.
  1873.  
  1874.     * eval.c (rb_thread_schedule): use FOREACH_THREAD_FROM instead of
  1875.       FOREACH_THREAD, since curr_thread may be removed from thread ring.
  1876.  
  1877.     * eval.c (THREAD_ALLOC): errinfo should be Qnil.
  1878.  
  1879.     * eval.c (rb_callcc): th->prev,th->next are now already
  1880.       initialized in THREAD_ALLOC.
  1881.  
  1882. Mon Oct 16 15:37:33 2000  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
  1883.  
  1884.     * eval.c (rb_thread_inspect): tag size was shorter than required.
  1885.  
  1886.     * object.c (rb_obj_inspect): ditto.
  1887.  
  1888. Mon Oct 16 14:25:18 2000  Shugo Maeda  <shugo@ruby-lang.org>
  1889.  
  1890.     * object.c (sym_inspect): used `name' before initialization.
  1891.  
  1892. Mon Oct 16 14:06:00 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1893.  
  1894.     * pack.c (pack_pack): use NATINT_U32 for 'l', 'L', and 'N'.
  1895.  
  1896.     * pack.c (I32,U32): 32 bit sized integer.
  1897.  
  1898.     * pack.c (OFF16,OFF32B): big endian offset for network byteorder.
  1899.  
  1900. Mon Oct 16 06:39:32 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1901.  
  1902.     * lib/net/http.rb: hex-alpha is not [a-h] but [a-f].
  1903.  
  1904. Mon Oct 16 01:02:02 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1905.  
  1906.     * eval.c (rb_thread_start_0): should not abort on exception if
  1907.       $SAFE >= 4.
  1908.  
  1909.     * parse.y (sym): symbols for class variable names.
  1910.  
  1911. Sun Oct 15 01:49:18 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1912.  
  1913.     * file.c (rb_file_flock): should accept interrupt.
  1914.  
  1915.     * process.c (rb_waitpid): ditto.
  1916.  
  1917.     * process.c (rb_waitpid): ditto.
  1918.  
  1919.     * process.c (proc_wait): ditto.
  1920.  
  1921.     * process.c (proc_waitpid2): wrong recursion.
  1922.  
  1923. Sat Oct 14 03:32:13 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1924.  
  1925.     * eval.c (rb_thread_alloc): should not link a new thread in the
  1926.       live thread ring before initialization.
  1927.  
  1928. Fri Oct 13 17:08:09 2000  Shugo Maeda  <shugo@ruby-lang.org>
  1929.  
  1930.     * lib/net/imap.rb: new file.
  1931.  
  1932. Thu Oct 12 18:56:28 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1933.  
  1934.     * lib/net/pop.rb: POP3#reset
  1935.  
  1936.     * lib/net/http.rb: a code for "Switch Protocol" was wrongly 100.
  1937.  
  1938. Thu Oct 12 01:23:38 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  1939.  
  1940.     * lib/cgi.rb: bug fix: CGI::html(): PRETTY option didn't work.
  1941.  
  1942. Thu Oct 12 00:03:02 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1943.  
  1944.     * object.c (sym_inspect): should adjust string length.
  1945.  
  1946.     * struct.c (rb_struct_to_s): ditto.
  1947.  
  1948.     * struct.c (rb_struct_inspect): ditto.
  1949.  
  1950. Wed Oct 11 22:15:47 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  1951.  
  1952.     * eval.c (rb_thread_inspect): should adjust string length.
  1953.  
  1954.     * object.c (rb_any_to_s): ditto.
  1955.  
  1956.     * object.c (rb_obj_inspect): ditto.
  1957.  
  1958. Wed Oct 11 18:13:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1959.  
  1960.     * eval.c (rb_thread_start_0): should check insecure exit.
  1961.  
  1962. Wed Oct 11 14:29:51 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  1963.  
  1964.     * lib/net/protocol.rb: 2nd arg for ProtocolError#initialize is
  1965.       optional.
  1966.  
  1967.     * lib/net/http.rb: code refining.
  1968.  
  1969. Wed Oct 11 11:13:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1970.  
  1971.     * parse.y (primary): setter method (e.g. foo=) should always be
  1972.       public.
  1973.  
  1974.     * eval.c (rb_thread_raise): should not raise SecurityError if
  1975.       exception raised by the interpreter.
  1976.  
  1977.     * eval.c (rb_thread_cleanup): skip all THREAD_KILLED threads
  1978.       before FOREACH_THREAD.
  1979.  
  1980. Tue Oct 10 16:11:54 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  1981.  
  1982.     * dln.c (dln_load): remove unused code for cygwin.
  1983.  
  1984. Tue Oct 10 09:49:23 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1985.  
  1986.     * file.c (Init_File): FileTest.size should return 0 (not nil) for
  1987.       empty files.
  1988.  
  1989. Sun Oct  8 13:20:26 2000  Guy Decoux  <decoux@moulon.inra.fr>
  1990.  
  1991.     * eval.c (POP_SCOPE): not just set SCOPE_DONT_RECYCLE, but do
  1992.       scope_dup().
  1993.  
  1994. Sat Oct  7 15:10:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  1995.  
  1996.     * string.c (rb_str_reverse_bang): unnecessary ALLOCA_N() was
  1997.       removed.
  1998.  
  1999. Fri Oct  6 14:50:24 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  2000.  
  2001.     * ext/extmk.rb.in, lib/mkmf.rb: remove "DESTDIR =".
  2002.  
  2003.     * Makefile.in, win32/Makefile.sub, ruby.1: renamed -X to -C.
  2004.  
  2005. Fri Oct  6 12:50:52 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2006.  
  2007.     * array.c (rb_ary_plus): use to_ary(), not Check_Type().
  2008.  
  2009.     * array.c (rb_ary_concat): ditto.
  2010.  
  2011.     * gc.c (rb_gc): use __builtin_frame_address() for gcc.
  2012.  
  2013.     * eval.c (stack_length): ditto.
  2014.  
  2015.     * parse.y (assign_in_cond): stop warning till some better warning
  2016.       condition will be found.
  2017.  
  2018. Thu Oct  5 18:02:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2019.  
  2020.     * object.c (rb_obj_dup): should have propagated taint flag.
  2021.       (ruby-bugs:#PR64,65)
  2022.  
  2023. Wed Oct  4 00:26:11 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2024.  
  2025.     * eval.c (proc_arity): proc{|a|}'s arity should be -1.
  2026.  
  2027. Mon Oct  2 05:28:58 2000  akira yamada  <akira@ruby-lang.org>
  2028.  
  2029.     * string.c (trnext): minus at the end of pattern.
  2030.  
  2031. Sun Oct  1 00:43:34 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  2032.  
  2033.     * configure.in: exp-name was wrong on cygwin and mingw32.
  2034.  
  2035. Thu Sep 28 14:57:09 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2036.  
  2037.     * regex.c (re_compile_pattern): should try must_string calculation
  2038.       every time.
  2039.  
  2040. Tue Sep 19 23:47:44 2000  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>
  2041.  
  2042.     * configure.in, config.guess, config.sub: MacOS X support.
  2043.  
  2044. Wed Sep 27 18:40:05 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2045.  
  2046.     * stable version 1.6.1 released.
  2047.  
  2048. Wed Sep 27 16:13:05 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  2049.  
  2050.     * mkconfig.rb: variables should be expanded only if /\$\{?\w+\}?/.
  2051.  
  2052. Tue Sep 26 18:09:51 2000  WATANABE Hirofumi  <eban@ruby-lang.org>
  2053.  
  2054.     * string.c: include <math.h>
  2055.  
  2056. Tue Sep 26 15:59:50 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2057.  
  2058.     * object.c (rb_mod_dup): metaclasses of class/module should not be
  2059.       cleared by rb_obj_dup.
  2060.  
  2061. Tue Sep 26 02:44:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2062.  
  2063.     * gc.c (GC_MALLOC_LIMIT): size extended.
  2064.  
  2065.     * regex.c (DOUBLE_STACK): use machine's stack region for regex
  2066.       stack if its size is small enough.
  2067.  
  2068. Mon Sep 25 18:13:07 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2069.  
  2070.     * regex.c: include <defines.h>.
  2071.  
  2072.     * eval.c (rb_add_method): cache mismatch by method
  2073.       definition. need to clear_cache_by_id every time.
  2074.  
  2075. Mon Sep 25 13:31:45 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2076.  
  2077.     * win32/win32.c (NtCmdGlob): substitute '\\' with '/'.
  2078.  
  2079. Mon Sep 25 00:35:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2080.  
  2081.     * defines.h: #undef HAVE_SETITIMER on cygwin.
  2082.  
  2083. Sun Sep 24 03:01:53 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2084.  
  2085.     * lib/net/protocol.rb, http.rb: typo.
  2086.  
  2087. Sat Sep 23 07:33:20 2000  Aleksi Niemela  <aleksi.niemela@cinnober.com>
  2088.  
  2089.     * regex.c (re_compile_pattern): nicer regexp error messages for
  2090.       invalid patterns.
  2091.  
  2092. Sat Sep 23 03:06:25 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2093.  
  2094.     * variable.c (rb_autoload_load): should not require already
  2095.       provided features. 
  2096.  
  2097. Fri Sep 22 15:46:21 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2098.  
  2099.     * lib/net/http.rb: too early parameter expansion in string.
  2100.  
  2101. Fri Sep 22 13:58:51 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2102.  
  2103.     * ext/extmk.rb.in: don't use default $:
  2104.  
  2105. Fri Sep 22 13:42:50 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  2106.  
  2107.     * regex.c (PUSH_FAILURE_COUNT): avoid casting warning on alpha.
  2108.  
  2109.     * regex.c (PUSH_FAILURE_POINT): ditto.
  2110.  
  2111. Fri Sep 22 10:16:21 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2112.  
  2113.     * win32/config.h.in: add HAVE_TELLDIR, HAVE_SEEKDIR
  2114.  
  2115. Thu Sep 21 19:04:34 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2116.  
  2117.     * ext/extmk.rb, lib/mkmf.rb (install_rb): check whether libdir is
  2118.       directory or not.
  2119.  
  2120. Thu Sep 21 17:23:05 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2121.  
  2122.     * file.c (rb_file_s_symlink): use HAVE_SYMLINK.
  2123.  
  2124.     * file.c (rb_file_s_readlink): use HAVE_READLINK.
  2125.  
  2126.     * dir.c (dir_tell): use HAVE_TELLDIR.
  2127.  
  2128.     * dir.c (dir_seek): use HAVE_SEEKDIR.
  2129.  
  2130.     * configure.in (AC_CHECK_FUNCS): lstat, symlink, readlink,
  2131.       telldir, seekdir checks added.
  2132.  
  2133.     * file.c (lstat): should use stat(2) if lstat(2) is not
  2134.       available.
  2135.  
  2136. Thu Sep 21 15:59:23 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2137.  
  2138.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.29.
  2139.  
  2140.     * lib/net/http.rb: HTTPReadAdapter -> HTTPResponseReceiver
  2141.  
  2142.     * lib/net/http.rb (connecting): response is got in receive()
  2143.  
  2144. Thu Sep 21 15:49:07 2000  Wayne Scott  <wscott@ichips.intel.com>
  2145.  
  2146.     * lib/find.rb (find): should not follow symbolic links;
  2147.       tuned performance too.
  2148.  
  2149. Wed Sep 20 23:21:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2150.  
  2151.     * ruby.c (load_file): two Ctrl-D was required to stop ruby at the
  2152.       beginning of stdin script read.
  2153.  
  2154. Wed Sep 20 14:01:45 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2155.  
  2156.     * eval.c (rb_provided): detect infinite load loop.
  2157.  
  2158.     * eval.c (rb_provided): too weak filename comparison.
  2159.  
  2160.     * eval.c (rb_thread_alloc): avoid recycling still referenced
  2161.       dvar structures. 
  2162.  
  2163.     * eval.c (rb_callcc): ditto.
  2164.  
  2165.     * eval.c (THREAD_ALLOC): fiil dyna_vars field by ruby_dyna_vars.
  2166.  
  2167. Tue Sep 19 17:47:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2168.  
  2169.     * stable version 1.6.0 released.
  2170.  
  2171. Tue Sep 19 16:24:52 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2172.  
  2173.     * marshal.c (Init_marshal): provide marshal.so no more.
  2174.  
  2175. Tue Sep 19 14:01:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2176.  
  2177.     * configure.in, win32/setup.mak: include version number
  2178.       in RUBY_SO_NAME.
  2179.  
  2180. Tue Sep 19 13:07:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2181.  
  2182.     * parse.y (yylex): was confusing $~ and $_.
  2183.  
  2184. Tue Sep 19 13:06:53 2000  GOTOU YUUZOU  <gotoyuzo@notwork.org>
  2185.  
  2186.     * signal.c (rb_f_kill): signum may be a negative number, should be
  2187.       treated by signed number.
  2188.  
  2189. Tue Sep 19 01:14:56 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2190.  
  2191.     * eval.c (rb_provide): better feature handling.
  2192.  
  2193.     * eval.c (rb_f_require): loading ruby library may be partial
  2194.       state.  checks in rb_thread_loading is integrated.
  2195.  
  2196.     * eval.c (rb_provided): better thread awareness.
  2197.  
  2198.     * lib/irb/frame.rb: 6 (not 5) parameters for trace_func proc.
  2199.  
  2200.     * eval.c (error_print): should print error position even if
  2201.       get_backtrace() failed.
  2202.  
  2203. Sat Sep 16 03:29:59 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2204.  
  2205.     * eval.c (rb_f_require): rb_provided() was called too early; does
  2206.       not work well with threads.
  2207.  
  2208.     * parse.y (ensure): should distinguish empty ensure and non
  2209.       existing ensure.
  2210.  
  2211.     * file.c (Init_File): extending File by class of FileTest was
  2212.       serious mistake.
  2213.  
  2214. Thu Sep 14 02:46:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2215.  
  2216.     * eval.c (rb_thread_yield): array strip should be done in this
  2217.       function. 
  2218.  
  2219. Wed Sep 13 17:01:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2220.  
  2221.     * bignum.c (rb_big_eq): incomplete value comparison of bignums.
  2222.  
  2223. Wed Sep 13 06:39:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2224.  
  2225.     * variable.c (rb_mod_class_variables): Module#class_variables added.
  2226.  
  2227. Wed Sep 13 06:09:26 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  2228.  
  2229.     * lib/cgi.rb: bug fix: CGI::header(): output status header.
  2230.  
  2231. Wed Sep 13 01:09:12 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2232.  
  2233.     * parse.y (yylex): allow global variables like '$__a'.
  2234.  
  2235. Tue Sep 12 22:28:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2236.  
  2237.     * ext/socket/extconf.rb: avoid using terrible <netinet/tcp.h>
  2238.       on cygwin 1.1.5.
  2239.  
  2240. Tue Sep 12 16:01:58 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2241.  
  2242.     * array.c (rb_ary_unshift_m): typo.
  2243.  
  2244. Tue Sep 12 15:37:55 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2245.  
  2246.     * eval.c (rb_yield_0): stripped array too much, should remove just
  2247.       for proc_call().
  2248.  
  2249. Tue Sep 12 07:05:24 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  2250.  
  2251.     * lib/cgi.rb: version 2.0.0: require ruby1.5.4 or later.
  2252.  
  2253.     * lib/net/telnet.rb: version 1.6.0
  2254.  
  2255. Tue Sep 12 03:26:07 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2256.  
  2257.     * eval.c (massign): use to_ary to get an array if available.
  2258.  
  2259.     * object.c (rb_Array): ditto.
  2260.  
  2261. Mon Sep 11 14:24:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2262.  
  2263.     * hash.c (ruby_setenv): should not free the element of
  2264.       origenvironment.
  2265.  
  2266.     * parse.y (command_call): kYIELD moved to this rule to allow
  2267.       'a = yield b'. (ruby-bugs-ja:#PR15) 
  2268.  
  2269. Mon Sep 11 01:27:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2270.  
  2271.     * eval.c (rb_yield_0): proc#call([]) should pass single value to
  2272.       the block.
  2273.  
  2274.     * eval.c (callargs): reduce array allocation.
  2275.  
  2276.     * eval.c (massign): precise check for argument number.
  2277.  
  2278. Fri Sep  8 10:05:17 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2279.  
  2280.     * gc.c (STR_NO_ORIG): should be FL_USER2.
  2281.  
  2282. Thu Sep  7 14:17:51 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2283.  
  2284.     * string.c (rb_str_cat): should work even for concatenating same
  2285.       string.
  2286.  
  2287. Wed Sep  6 17:06:38 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2288.  
  2289.     * variable.c (rb_cvar_declare): should check superclass's class
  2290.       variable first.
  2291.  
  2292. Wed Sep  6 10:42:02 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2293.  
  2294.     * misc/ruby-mode.el (ruby-calculate-indent): shift continuing line
  2295.       if previous line ends with modifier keyword.
  2296.  
  2297.     * misc/ruby-mode.el (ruby-parse-region): should not give up if
  2298.       modifiers are at the end of line.
  2299.  
  2300.     * misc/ruby-mode.el (ruby-expr-beg): indented wrongly if modified
  2301.       statement was size 1.
  2302.  
  2303. Wed Sep  6 10:41:19 2000  Kenichi Komiya  <kom@mail1.accsnet.ne.jp>
  2304.  
  2305.     * misc/ruby-mode.el (ruby-parse-region): modifier was not handled
  2306.       well on emacs19.
  2307.  
  2308. Tue Sep  5 17:10:12 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2309.  
  2310.     * time.c (time_to_s): fixed zone string UTC for utc time object.
  2311.  
  2312. Tue Sep  5 00:26:06 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2313.  
  2314.     * regex.c (re_search): range worked wrongly on bm_search().
  2315.  
  2316. Mon Sep  4 13:40:40 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2317.  
  2318.     * configure.in: renamed libruby.a to libruby.{cygwin,mingw32}.a
  2319.       on cygwin and mingw32.
  2320.  
  2321. Sun Sep  3 23:44:04 2000  Noriaki Harada  <tenmei@maoh.office.ne.jp>
  2322.  
  2323.     * io.c (NO_SAFE_RENAME): for BeOS too.
  2324.  
  2325. Sun Sep  3 11:31:53 2000  Takaaki Tateishi  <ttate@jaist.ac.jp>
  2326.  
  2327.     * parse.y (rescue): no assignment was done if rescue body was
  2328.       empty.
  2329.  
  2330. Sat Sep  2 10:52:21 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2331.  
  2332.     * parse.y (call_args,aref_args): block_call can be the last
  2333.       argument.
  2334.  
  2335.     * parse.y (COND_PUSH,COND_POP): maintain condition stack to allow
  2336.       kDO2 in parentheses in while/until/for conditions.
  2337.  
  2338.     * parse.y (yylex): generate kDO2 for EXPR_ARG outside of
  2339.       while/until/for condition.
  2340.  
  2341. Fri Sep  1 10:36:29 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2342.  
  2343.     * parse.y (aref_args,opt_call_args): add block_call to allow a
  2344.       method without parentheses and with block as a last argument.
  2345.  
  2346.     * hash.c (rb_hash_sort): should not return nil.
  2347.  
  2348.     * re.c (match_aref): should use rb_reg_nth_match().
  2349.  
  2350.     * eval.c (POP_SCOPE): recycled scopes too much
  2351.  
  2352.     * eval.c (Init_eval): extend room for stack allowance.
  2353.  
  2354.     * eval.c (POP_SCOPE): frees scope too much.
  2355.  
  2356. Thu Aug 31 14:28:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2357.  
  2358.     * gc.c (rb_gc_mark): T_SCOPE condition must be more precise.
  2359.  
  2360.     * eval.c (scope_dup): should not make all duped scope orphan.
  2361.  
  2362. Thu Aug 31 10:11:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2363.  
  2364.     * parse.y (stmt): allow stmt_rhs to be right hand side of multiple
  2365.       assignment.
  2366.  
  2367.     * time.c (rb_time_timeval): type error should not mention the word
  2368.       'interval'.
  2369.  
  2370. Wed Aug 30 23:21:20 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2371.  
  2372.     * numeric.c (rb_num2long): use rb_Integer() instead of independent
  2373.       convert routine.
  2374.  
  2375.     * eval.c (rb_rescue2): now takes arbitrary number of exception types.
  2376.  
  2377.     * object.c (rb_convert_type): use rb_rescue2 now to handle NameError.
  2378.  
  2379.     * object.c (rb_convert_type): better error message.
  2380.  
  2381. Wed Aug 30 17:09:14 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2382.  
  2383.     * ext/Win32API/Win32API.c (Win32API_initialize): AlphaNT support.
  2384.  
  2385. Wed Aug 30 14:19:07 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2386.  
  2387.     * parse.y (node_assign): should support NODE_CVASGN2 too.
  2388.  
  2389. Wed Aug 30 11:31:47 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  2390.  
  2391.     * ext/Win32API/Win32API.c (Win32API_initialize): add the
  2392.       arguments checking.
  2393.  
  2394.     * ext/Win32API/Win32API.c (Win32API_initialize): add taint
  2395.       checking. allow String object in the third argument.
  2396.  
  2397. Wed Aug 30 10:29:40 2000  Masahiro Tomita  <tommy@tmtm.org>
  2398.  
  2399.     * io.c (rb_f_p): flush output buffer.
  2400.  
  2401. Tue Aug 29 16:29:15 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2402.  
  2403.     * parse.y (assignable): remove NODE_CVASGN3.
  2404.  
  2405.     * parse.y (gettable): remove NODE_CVAR3.
  2406.  
  2407. Tue Aug 29 02:02:14 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2408.  
  2409.     * lib/mkmf.rb (create_makefile): handles create_makefile("a/b").
  2410.  
  2411.     * ext/extmk.rb.in (create_makefile): ditto
  2412.  
  2413. Mon Aug 28 18:43:54 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2414.  
  2415.     * eval.c (is_defined): now handles class variables.
  2416.  
  2417.     * eval.c (rb_eval): class variable behavior revisited.
  2418.  
  2419.     * parse.y (assignable): ditto.
  2420.  
  2421.     * parse.y (gettable): ditto.
  2422.  
  2423.     * regex.c (PUSH_FAILURE_COUNT): push/pop interval count on failure
  2424.       stack.  this fix is inspired by the Emacs21 patch from Stefan
  2425.       Monnier <monnier@cs.yale.edu>.
  2426.  
  2427. Fri Aug 25 15:24:39 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2428.  
  2429.     * variable.c (rb_cvar_get): should not follow __attached__.
  2430.  
  2431.     * variable.c (rb_cvar_set): ditto.
  2432.  
  2433.     * variable.c (rb_cvar_declare): ditto.
  2434.  
  2435.     * variable.c (mod_av_set): second class variable assignment at the
  2436.       toplevel should not give warning.
  2437.  
  2438. Fri Aug 25 01:18:36 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2439.  
  2440.     * io.c (next_argv): prepare path for open file.
  2441.  
  2442.     * string.c (rb_str_setter): moved from io.c.
  2443.  
  2444.     * io.c (next_argv): filename should be "-" for refreshed ARGF.
  2445.  
  2446. Thu Aug 24 15:27:39 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2447.  
  2448.     * ext/socket/socketport.h: use `extern int h_errno' if needed.
  2449.  
  2450. Sat Aug 19 01:34:02 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2451.  
  2452.     * ext/sdbm/_sdbm.c (sdbm_prep): flags should be or-ed by O_BINARY on
  2453.       Win32 too.
  2454.  
  2455.     * ext/sdbm/_sdbm.c (makroom): fill hole with 0 on Win32 too.
  2456.  
  2457. Fri Aug 18 13:23:59 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2458.  
  2459.     * eval.c (rb_eval): should preserve and clear $! value before
  2460.       compilation. 
  2461.  
  2462.     * eval.c (eval): ditto.
  2463.  
  2464. Fri Aug 18 11:06:19 2000  Shugo Maeda  <shugo@ruby-lang.org>
  2465.  
  2466.     * ext/socket/socket.c (s_accept): start GC on EMFILE/ENFILE.
  2467.  
  2468. Thu Aug 17 16:04:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2469.  
  2470.     * eval.c (is_defined): should clear ruby_errinfo.
  2471.  
  2472. Thu Aug 17 04:26:31 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2473.  
  2474.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.27.
  2475.  
  2476.     * lib/net/protocol.rb: writing methods returns written byte size.
  2477.  
  2478.     * lib/net/smtp.rb: send_mail accepts many destinations.
  2479.  
  2480. Wed Aug 16 00:43:47 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2481.  
  2482.     * time.c (time_s_times): use CLK_TCK for HZ if it's defined.
  2483.  
  2484. Tue Aug 15 17:30:59 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2485.  
  2486.     * eval.c (frame_dup): should set flag FRAME_MALLOC after
  2487.       argv allocation.
  2488.  
  2489.     * eval.c (blk_free): should not free argv if GC was called before
  2490.       frame_dup.
  2491.  
  2492. Tue Aug 15 16:08:40 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2493.  
  2494.     * configure.in: add ac_cv_func_times=yes for mingw32.
  2495.  
  2496.     * win32/win32.c (mytimes): typo.
  2497.  
  2498. Tue Aug 15 01:45:28 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2499.  
  2500.     * io.c (argf_eof): should return true at the end of ARGF without
  2501.       checking stdout if arguments are given.
  2502.  
  2503. Mon Aug 14 10:34:32 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2504.  
  2505.     * eval.c (rb_thread_status): status should return false for normal
  2506.       termination, nil for termination by exception.
  2507.  
  2508. Fri Aug 11 15:43:46 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2509.  
  2510.     * eval.c (rb_undef): give warning for undefining __id__, __send__.
  2511.  
  2512. Thu Aug 10 08:05:03 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2513.  
  2514.     * eval.c (rb_callcc): returned current thread instead of
  2515.       continuation wrongly.
  2516.  
  2517. Thu Aug 10 05:40:28 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2518.  
  2519.     * ext/extmk.rb.in: $CPPFLAGS should be initialized.
  2520.  
  2521.     * ext/tcltklib/depend: add stubs.o.
  2522.  
  2523.     * ext/tcltklib/extconf.rb: use $CPPFLAGS instead of $CFLAGS.
  2524.  
  2525. Wed Aug  9 16:31:48 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2526.  
  2527.     * eval.c (rb_callcc): thread status for continuations must be
  2528.       THREAD_KILLED, otherwise thread_free() breaks other threads.
  2529.  
  2530. Wed Aug  9 13:24:25 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2531.  
  2532.     * win32/win32.[ch]: emulate rename(2).
  2533.  
  2534. Tue Aug  8 14:01:46 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2535.  
  2536.     * ext/tcltklib/tcltklib.c: support --enable-tcltk_stubs
  2537.  
  2538.     * ext/tcltklib/extconf.rb: ditto.
  2539.  
  2540.     * ext/tcltklib/stubs.c: created. examine candidate shared libraries.
  2541.  
  2542. Mon Aug  7 13:59:12 2000  Yukihiro Matsumoto  <matz@ruby-lang.org>
  2543.  
  2544.     * ruby.h (CLONESETUP): should copy flags before any potential
  2545.       object allocation.
  2546.  
  2547.     * regex.c (re_match): check for stack depth was needed.
  2548.  
  2549. Sat Aug  5 16:43:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2550.  
  2551.     * djgpp/*: convert DOS line endings to UNIX style.
  2552.  
  2553.     * djgpp/config.status: rename to config.sed for SFN.
  2554.  
  2555.     * lib/ftools.rb (compare, safe_unlink, chmod): avoid warnings.
  2556.  
  2557.     * lib/ftools.rb (move): typo. not `tpath', but `to'.
  2558.  
  2559. Fri Aug  4 23:26:48 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2560.  
  2561.     * eval.c (proc_call): gives warning if a block is supplied.
  2562.  
  2563.     * eval.c (rb_eval): no warning for discarding if an alias for the
  2564.       method is already made.
  2565.  
  2566. Fri Aug  4 16:32:29 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2567.  
  2568.     * array.c (rb_ary_reject_bang): returns nil if no element removed.
  2569.  
  2570.     * hash.c (rb_hash_reject_bang): returns nil if no element removed.
  2571.  
  2572. Thu Aug  3 19:44:26 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2573.  
  2574.     * eval.c (rb_thread_fd_writable): should return integer value.
  2575.  
  2576.     * array.c (rb_ary_assoc): search array element whose length is
  2577.       longer than 0 (not 1).
  2578.  
  2579. Wed Aug  2 18:27:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2580.  
  2581.     * eval.c (rb_thread_wait_fd): prohibit thread context switch
  2582.       during compilation.
  2583.  
  2584.     * eval.c (rb_cont_call): prohibit Continuation#call across threads.
  2585.  
  2586. Wed Aug  2 08:22:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2587.  
  2588.     * gc.c (rb_gc): clear malloc_memories to zero, to avoid potential
  2589.       super frequent GC invocation. (ruby-bugs:#PR48)
  2590.  
  2591.     * gc.c (rb_gc): only add_heap() if GC trigger condition is
  2592.       satisfied.
  2593.  
  2594. Tue Aug  1 16:41:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2595.  
  2596.     * ruby.c (proc_options): global load path setting moved from
  2597.       ruby_prog_init().
  2598.  
  2599.     * ruby.c (incpush): renamed.  push path entry at the END of the
  2600.       load path array.  This makes -I directories sorted in order in
  2601.       the arguments.
  2602.  
  2603. Sat Jul 29 23:42:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2604.  
  2605.     * dir.c (dir_each): should check whether dir is closed during the
  2606.       block execution. (ruby-bugs:#PR47)
  2607.  
  2608. Sat Jul 29 21:57:30 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2609.  
  2610.     * ruby.c (rubylib_mangle): provide another buffer for the result.
  2611.  
  2612. Wed Jul 26 10:09:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2613.  
  2614.     * configure.in: set SOLIBS to LIBS on Cygwin.
  2615.  
  2616.     * configure.in: LIBRUBY_SO='$(RUBY_INSTALL_NAME)'.$target_os.dll
  2617.       on cygwin and mingw32. ruby-cygwin.dll is bad. why?
  2618.  
  2619. Wed Jul 26 10:04:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2620.  
  2621.     * gc.c (gc_sweep): avoid full scan during compilation.
  2622.  
  2623.     * gc.c (rb_gc): add heap during no gc period (including
  2624.       compilation).
  2625.  
  2626. Tue Jul 25 19:03:04 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2627.  
  2628.     * cygwin/GNUmakefile: use puts instead of print, because
  2629.       Cygwin DLL's behavior is changed(or bug?).
  2630.  
  2631.     * configure.in: LIBRUBY_SO='$(RUBY_INSTALL_NAME)'-$target_os.dll
  2632.       on cygwin and mingw32.
  2633.  
  2634.     * cygwin/GNUmakefile: ditto.
  2635.  
  2636.     * Makefile.in: $(SOLIBS) should be put after dmyext.@OBJEXT@.
  2637.  
  2638.     * instruby.rb: install $(LIBRUBY) to libdir
  2639.       if $(LIBRUBY) != $(LIBRUBY_A_).
  2640.  
  2641. Tue Jul 25 15:16:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2642.  
  2643.     * io.c (rb_p): redirect to $defout.
  2644.  
  2645. Mon Jul 24 18:52:55 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2646.  
  2647.     * win32/win32.c (win32_getenv): should remove `static'.
  2648.  
  2649.     * ruby.c (rubylib_mangle): support "/hoge;/foo"
  2650.  
  2651. Mon Jul 24 10:28:55 2000  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>
  2652.  
  2653.     * string.c (rb_str_count): raise exception if no argument is
  2654.       given.
  2655.  
  2656. Sun Jul 23 12:55:04 2000  Dave Thomas  <Dave@Thomases.com>
  2657.  
  2658.     * string.c (rb_str_rindex): Support negative end position.
  2659.  
  2660. Fri Jul 21 17:35:01 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2661.  
  2662.     * parse.y (aref_args): command_call now be permitted as
  2663.       aref_args.
  2664.  
  2665.     * process.c (proc_getpriority): getpriority(2) may return valid
  2666.       negative number.  use errno to detect error.
  2667.  
  2668.     * marshal.c (dump_ensure): dumped string should be tainted if
  2669.       any among target objects is tainted.
  2670.  
  2671.     * marshal.c (r_regist): restored object should be tainted if and
  2672.       only if the source is a file or a tainted string.
  2673.  
  2674. Wed Jul 19 15:14:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2675.  
  2676.     * bignum.c (bigdivrem): should use rb_int2big(), not rb_uint2big().
  2677.  
  2678. Tue Jul 18 14:58:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2679.  
  2680.     * eval.c (ruby_options): should treat SystemExit etc. properly.
  2681.  
  2682.     * parse.y (yycompile): should check compile_for_eval, not
  2683.       ruby_in_eval.
  2684.  
  2685. Mon Jul 17 04:29:50 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2686.  
  2687.     * lib/mkmf.rb: converts extension of $objs into $OBJEXT.
  2688.  
  2689. Sun Jul 16 03:02:34 2000  Dave Thomas <dave@thomases.com>
  2690.  
  2691.     * lib/weakref.rb: Change to use new ObjectSpace calls.
  2692.  
  2693. Sat Jul 15 21:59:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2694.  
  2695.     * eval.c (rb_eval): should not redefine __id__ nor __send__.
  2696.  
  2697.     * gc.c (define_final): integrate final.rb features into the
  2698.       interpreter.  define_finalizer and undefine_finalizer was
  2699.       added to ObjectSpace.  plus, add_finalizer, remove_finalizer,
  2700.       and call_finalizer are deprecated now.
  2701.  
  2702. Sat Jul 15 01:32:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2703.  
  2704.     * eval.c (rb_mod_method): implements unbound method.
  2705.  
  2706.     * eval.c (Init_eval): should prohibit `module_function' for class
  2707.       Class.
  2708.  
  2709. Fri Jul 14 17:19:59 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2710.  
  2711.     * cygwin/GNUmakefile.in: use miniruby instead of sed.
  2712.  
  2713. Fri Jul 14 12:49:50 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2714.  
  2715.     * io.c (argf_eof): need to check stdin, when next_p == -1.
  2716.  
  2717.     * io.c (read_all): use io_fread() instead of fread(3).
  2718.  
  2719.     * io.c (io_reopen): should clearerr FILE if fd < 3.
  2720.  
  2721.     * re.c (rb_reg_match_m): the result is exported, so it should be
  2722.       declared as busy.
  2723.  
  2724.     * eval.c (rb_eval): should preserve errinfo even if return, break,
  2725.       etc. is called in rescue clause.
  2726.  
  2727.     * instruby.rb: install irb too.
  2728.  
  2729. Wed Jul 12 15:32:57 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2730.  
  2731.     * variable.c (rb_const_get): constants for builtin classes must
  2732.       have higher priority than constants from included modules at
  2733.       Object class.
  2734.  
  2735.     * bignum.c (bigdivrem): small embarrassing typo.
  2736.  
  2737. Wed Jul 12 15:06:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2738.  
  2739.     * eval.c (rb_eval): use rb_const_get_at().
  2740.  
  2741.     * variable.c (top_const_get): retrieve toplevel constants only,
  2742.       not ones of Object (and its included modules) in general.
  2743.  
  2744. Wed Jul 12 15:04:11 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2745.  
  2746.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.26.
  2747.  
  2748.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb:
  2749.       add module Net::NetPrivate and its inner classes
  2750.       {Read,Write}Adapter, Command, Socket,
  2751.       SMTPCommand, POP3Command, APOPCommand, HTTPCommand
  2752.  
  2753. Wed Jul 12 13:10:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2754.  
  2755.     * bignum.c (bigdivrem): defer bignorm().
  2756.  
  2757.     * bignum.c (bignorm): accepts accidental fixnums.
  2758.  
  2759. Tue Jul 11 16:54:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2760.  
  2761.     * parse.y (yylex): `@<digit>' is no longer a valid instance
  2762.       variable name.
  2763.  
  2764. Tue Jul 11 01:51:50 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2765.  
  2766.     * bignum.c (rb_big_divmod): should not use Integer(float) for
  2767.       the right operand.
  2768.  
  2769.     * bignum.c (rb_big_remainder): ditto.
  2770.  
  2771.     * bignum.c (rb_big_modulo): ditto.
  2772.  
  2773. Mon Jul 10 15:27:16 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2774.  
  2775.     * io.c (pipe_finalize): should set rb_last_status when pclose().
  2776.  
  2777. Mon Jul 10 09:07:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2778.  
  2779.     * error.c (rb_bug): print version number and such too.
  2780.  
  2781. Sat Jul  8 23:08:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2782.  
  2783.     * eval.c (rb_thread_start_0): should copy previous scopes to
  2784.       prevent rb_gc_force_recycle().
  2785.  
  2786. Fri Jul  7 23:36:36 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  2787.  
  2788.     * ext/socket/addrinfo.h: move IN_EXPERIMENTAL and IN_LOOPBACKNET
  2789.       definitions to ext/socket/sockport.h.
  2790.  
  2791.     * ext/socket/extconf.rb: add getservbyport() and arpa/inet.h check.
  2792.  
  2793.     * ext/socket/getaddrinfo.c (getaddrinfo): SOCK_RAW may not be
  2794.       defined (ex. BeOS, Palm OS 2.x or before).
  2795.  
  2796.     * ext/socket/getnameinfo.c (getnameinfo): getservbyport() may not
  2797.       exist (ex. BeOS, Palm OS).
  2798.  
  2799.     * ext/socket/sockport.h: add IN_EXPERIMENTAL, IN_CLASSA_NSHIFT,
  2800.       IN_LOOPBACKNET, AF_UNSPEC, PF_UNSPEC and PF_INET.
  2801.  
  2802. Fri Jul  7 03:30:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2803.  
  2804.     * parse.y (aref_args): should allow Hash[:a=>2] etc.
  2805.  
  2806.     * numeric.c (fix_aref): convert index by NUM2INT, not FIX2INT. 
  2807.       (ruby-bugs:#PR37)
  2808.  
  2809.     * time.c (time_localtime): should prohibit for frozen time.
  2810.  
  2811.     * time.c (time_gmtime): ditto.
  2812.  
  2813. Thu Jul  6 19:12:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2814.  
  2815.     * io.c (rb_file_s_open): should not terminate fptr; just clear it.
  2816.  
  2817.     * ruby.c (proc_options): should not call require_libraries()
  2818.       twice.
  2819.  
  2820.     * ruby.c (require_libraries): clear req_list_head.next after
  2821.       execution. 
  2822.  
  2823. Thu Jul  6 13:51:57 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  2824.  
  2825.     * object.c (rb_to_id): name may not be symbol nor fixnum.
  2826.  
  2827.     * struct.c (rb_struct_s_def): name may be nil.
  2828.  
  2829. Thu Jul  6 02:09:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2830.  
  2831.     * bignum.c (bigdivrem): new function to return remainder.
  2832.  
  2833.     * numeric.c (fixdivmod): now returns modulo, not remainder.
  2834.  
  2835.     * numeric.c (flodivmod): ditto.
  2836.  
  2837.     * bignum.c (bigdivmod): ditto.
  2838.  
  2839.     * numeric.c (num_modulo): new method; alias to '%'.
  2840.  
  2841. Thu Jul  6 00:51:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2842.  
  2843.     * win32/win32.c (NtCmdGlob): patterns should be separated and
  2844.       NUL terminated.
  2845.  
  2846. Wed Jul  5 22:27:56 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2847.  
  2848.     * cygwin/GNUmakefile: use ruby.def to make rubycw.dll.
  2849.  
  2850.     * ext/extmk.rb.in: create target.def.
  2851.  
  2852.     * lib/mkmf.rb: ditto.
  2853.  
  2854. Wed Jul  5 09:47:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2855.  
  2856.     * time.c (time_arg): Time::local, Time::gm now take 7th optional
  2857.       argument for usec.
  2858.  
  2859.     * numeric.c (num_ceil, etc): default ceil, floor, round, truncate
  2860.       implementation for Numeric, using `to_f'.
  2861.  
  2862.     * io.c (rb_io_reopen): clear fptr->path after free() to prevent
  2863.       potential GC crash.
  2864.  
  2865.     * io.c (rb_file_s_open): terminate fptr unless null.
  2866.  
  2867.     * io.c (rb_file_initialize): ditto.
  2868.  
  2869.     * lib/tempfile.rb: specify FILE::CREAT|File::EXCL to open for
  2870.       better security.
  2871.  
  2872.     * numeric.c (flo_truncate): new method.
  2873.  
  2874. Wed Jul  5 01:02:53 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2875.  
  2876.     * ext/extmk.rb.in: join ' ' -> join(' ').
  2877.  
  2878.     * lib/mkmf.rb: ditto.
  2879.  
  2880. Tue Jul  4 13:51:29 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2881.  
  2882.     * ext/dbm/dbm.c: add methods added to Hash in 1.5.x.
  2883.  
  2884.     * ext/gdbm/gdbm.c: ditto.
  2885.  
  2886.     * ext/sdbm/init.c: ditto.
  2887.  
  2888.     * eval.c (proc_call): args may be Qundef (means no argument), do
  2889.       not call TYPE() for args.
  2890.  
  2891. Tue Jul  4 13:20:56 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2892.  
  2893.     * ext/extmk.rb.in: make command line must be single-quoted.
  2894.       $(RUBY_INSTALL_NAME) is command substitution in the POSIX sh.
  2895.  
  2896. Tue Jul  4 13:16:02 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2897.  
  2898.     * util.c (rb_type): should add T_UNDEF.
  2899.  
  2900. Tue Jul  4 09:30:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2901.  
  2902.     * parse.y (here_document): supports EOF right after terminator.
  2903.  
  2904.     * random.c (rb_f_rand): argument is now optional (rand(max=0)). 
  2905.  
  2906. Tue Jul  4 01:50:49 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2907.  
  2908.     * win32/ruby.def: remove ruby_mktemp.
  2909.  
  2910. Tue Jul  4 01:27:13 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2911.  
  2912.     * eval.c (rb_rescue2): new function to rescue arbitrary exception.
  2913.  
  2914.     * numeric.c (do_coerce): should catch NameError explicitly.
  2915.  
  2916. Tue Jul  4 00:15:23 2000  Dave Thomas  <Dave@thomases.com>
  2917.  
  2918.     * numeric.c (Init_Numeric): forgot to register Numeric#remainder.
  2919.  
  2920. Mon Jul  3 23:46:56 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  2921.  
  2922.     * win32/win32.c (myselect, myaccept): disable interrupt while
  2923.       executing accept() or select() to avoid Ctrl-C causes
  2924.       "unknown software exception (0xc0000029)".
  2925.  
  2926. Mon Jul  3 18:35:41 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2927.  
  2928.     * lib/mkmf.rb: use null device if it exists for cross-compiling.
  2929.  
  2930. Mon Jul  3 18:19:51 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2931.  
  2932.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.26.
  2933.  
  2934.     * lib/net/protocol.rb (finish): do nothing unless active.
  2935.  
  2936.     * lib/net/http.rb: HTTP#{get,post}2 again (for new impl).
  2937.  
  2938. Mon Jul  3 16:47:22 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2939.  
  2940.     * cygwin/GNUmakefile: librubys.a -> lib$(RUBY_INSTALL_NAME)s.a
  2941.  
  2942.     * configure.in: use AC_CANONICAL_{HOST,TARGET,BUILD}.
  2943.  
  2944. Mon Jul  3 13:15:02 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2945.  
  2946.     * numeric.c (fix_divmod): x * d + m = y where d, m = x.divmod(y).
  2947.  
  2948.     * bignum.c (rb_big_divmod): ditto.
  2949.  
  2950.     * numeric.c (fixdivmod): does not depend C's undefined %
  2951.       behavior.  adopt to fmod(3m) behavior.
  2952.  
  2953.     * numeric.c (flo_mod): modulo now reserves fmod(3m) behavior.
  2954.  
  2955.     * numeric.c (num_remainder): 'deprecated' warning.
  2956.  
  2957. Mon Jul  3 10:27:28 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2958.  
  2959.     * configure.in: use AC_CANONICAL_SYSTEM.
  2960.  
  2961. Sun Jul  2 21:17:37 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  2962.  
  2963.     * configure.in: support without --enable-shared for cygwin/mingw32.
  2964.  
  2965.     * cygwin/GNUmakefile: ditto.
  2966.  
  2967.     * ext/extmk.rb.in: use null device if it exists for cross-compiling.
  2968.  
  2969.     * lib/mkmf.rb: ditto.
  2970.  
  2971.     * util.c (ruby_mktemp): remove unused ruby_mktemp().
  2972.  
  2973. Sun Jul  2 14:18:04 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  2974.  
  2975.     * eval.c (TMP_PROTECT_END): tmp__protect_tmp may be NULL.
  2976.  
  2977. Sun Jul  2 03:37:50 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  2978.  
  2979.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.25.
  2980.  
  2981.     * lib/net/protocol.rb (each_crlf_line): beg = 0 is needed in adding{}
  2982.  
  2983.     * lib/net/smtp.rb: allow String for to_addr of SMTP#sendmail
  2984.  
  2985. Sat Jul  1 15:22:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2986.  
  2987.     * numeric.c (fix_rshift): should handle shift value more than
  2988.       sizeof(long). 
  2989.  
  2990. Sat Jul  1 15:22:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  2991.  
  2992.     * eval.c (rb_eval): the value from RTEST() is not valid Ruby
  2993.       object.  result should be either true or false.
  2994.  
  2995. Sat Jul  1 09:30:06 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  2996.  
  2997.     * re.c (rb_reg_initialize): was freeing invalid pointer.
  2998.  
  2999. Sat Jul  1 03:25:56 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3000.  
  3001.     * parse.y (call_args): command_call can be the last argument of
  3002.       call_args.  It had to be the only argument.
  3003.  
  3004.     * re.c (rb_reg_s_quote): should not dump core even for unsane mbc
  3005.       string.
  3006.  
  3007. Fri Jun 30 01:36:20 2000  Aleksi Niemela  <aleksi.niemela@cinnober.com>
  3008.  
  3009.     * parse.y (f_norm_arg): better, nicer error message.
  3010.  
  3011. Thu Jun 29 07:45:33 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3012.  
  3013.     * ext/socket/socket.c (udp_send): destination may be packed
  3014.       struct sockaddr.
  3015.  
  3016.     * object.c (rb_Integer): Integer(nil) should be invalid, on the
  3017.       other hand, nil.to_i is OK.
  3018.  
  3019. Wed Jun 28 17:26:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3020.  
  3021.     * ext/socket/socket.c (ip_recvfrom): udp_recvfrom and tcp_recvfrom
  3022.       is merged and moved to IPSocket#recvfrom.
  3023.  
  3024.     * ext/socket/socket.c (sock_s_getaddrinfo): family can be a
  3025.       strings such as "AF_INET" etc.
  3026.  
  3027.     * ruby.c (require_libraries): . and RUBYLIB added to $load_path
  3028.       just before -r procedure.
  3029.  
  3030.     * ruby.c (proc_options): -e, - did not exec -r.
  3031.  
  3032. Wed Jun 28 14:52:28 2000  Koga Youichirou <y-koga@mms.mt.nec.co.jp>
  3033.  
  3034.     * config.sub: NetBSD/hpcmips support.
  3035.  
  3036. Wed Jun 28 10:11:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3037.  
  3038.     * gc.c: gc trigger threshold changed; GC_NEWOBJ_LIMIT removed,
  3039.       FREE_MIN is increased to 4096.
  3040.  
  3041. Tue Jun 27 22:39:28 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3042.  
  3043.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.24.
  3044.  
  3045.     * lib/net/protocol.rb: modified each_crlf_line again.
  3046.  
  3047.     * lib/net/protocol.rb: do_write_beg,do_write_end -> writing{}
  3048.       do_write_do -> do_write
  3049.  
  3050.     * lib/net/http.rb: can make proxy connection by passing
  3051.       addresses to HTTP.new, start.
  3052.  
  3053.     * lib/net/http.rb: HTTP.new_implementation, old_implementation:
  3054.       can use 1.2 implementation of head, get, post, put.
  3055.       (see document)
  3056.  
  3057. Tue Jun 27 12:05:10 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3058.  
  3059.     * win32.c (myfdclr): new function.
  3060.  
  3061.     * win32.h: add FD_CLR.
  3062.  
  3063. Mon Jun 26 23:41:41 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3064.  
  3065.     * ruby.h: add cast for ANSI style.
  3066.  
  3067.     * gc.c (rb_data_object_alloc): use RUBY_DATA_FUNC.
  3068.  
  3069. Mon Jun 26 22:20:03 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3070.  
  3071.     * win32/win32.c (is_socket, extract_file_fd): New function.
  3072.  
  3073.     * win32/win32.c (myfdopen): use is_socket().
  3074.  
  3075.     * win32/win32.c (myselect): return non socket files immediately
  3076.       if file and socket handles are mixed.
  3077.  
  3078. Mon Jun 26 16:21:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3079.  
  3080.     * eval.c (rb_thread_schedule): wait_for cleared too early.
  3081.  
  3082. Mon Jun 26 09:15:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3083.  
  3084.     * pack.c: remove obsolete 'F', 'D' specifiers.
  3085.  
  3086. Sun Jun 25 00:55:03 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3087.  
  3088.     * ext/socket/socket.c (sock_s_getnameinfo): `res' would not
  3089.       be assigned if TYPE(sa) == T_STRING.
  3090.  
  3091. Sat Jun 24 14:36:29 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3092.  
  3093.     * config*.dj, configure.bat, top.sed: move to djgpp/.
  3094.  
  3095. Sat Jun 24 02:34:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3096.  
  3097.     * ruby.c (load_file): call require_libraries() here to let
  3098.       debug.rb work properly.
  3099.  
  3100. Fri Jun 23 22:34:51 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3101.  
  3102.     * bignum.c (rb_big_lshift): reorder xds assignment to avoid
  3103.       reusing `x' as `len' by VC++ 6.0 SP3 compiler with -Ox switch.
  3104.  
  3105. Fri Jun 23 01:11:27 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3106.  
  3107.     * string.c (rb_str_substr): should return empty string (""), 
  3108.       if beg == str.size and len == zero, mostly for convenience and
  3109.       backward compatibility.
  3110.  
  3111.     * parse.y (new_super): should tweak block_pass node for super too.
  3112.  
  3113.     * string.c (rb_str_split_m): last split element should not be nil,
  3114.       but "" when limit is specified.
  3115.  
  3116. Thu Jun 22 17:27:46 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3117.  
  3118.     * string.c (rb_str_substr): str[n,m] now returns nil when n equals
  3119.       to str.size.
  3120.  
  3121. Thu Jun 22 13:49:02 2000  Uechi Yasumasa <uechi@ryucom.ne.jp>
  3122.  
  3123.     * lib/net/ftp.rb: support resuming.
  3124.  
  3125. Thu Jun 22 13:37:19 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3126.  
  3127.     * eval.c (rb_thread_sleep_forever): merge pause() macro.
  3128.  
  3129. Wed Jun 21 08:49:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3130.  
  3131.     * eval.c (rb_eval): should not raise exception just by defining
  3132.       singleton class.
  3133.  
  3134. Wed Jun 21 01:18:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3135.  
  3136.     * ruby.h: two macros RUBY_DATA_FUNC and RUBY_METHOD_FUNC are added
  3137.       to make writing C++ extensions easier.
  3138.  
  3139.     * array.c (rb_ary_dup): internal classes should not be shared by dup.
  3140.  
  3141.     * hash.c (rb_hash_dup): ditto.
  3142.  
  3143.     * object.c (rb_obj_dup): ditto.
  3144.  
  3145.     * string.c (rb_str_dup): ditto.
  3146.  
  3147.     * error.c (Init_Exception): renamed NotImplementError to
  3148.       NotImplementedError. 
  3149.  
  3150. Tue Jun 20 16:22:38 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3151.  
  3152.     * time.c (make_time_t): bug in DST boundary.
  3153.  
  3154. Tue Jun 20 10:54:19 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3155.  
  3156.     * configure.in: add eval sitedir.
  3157.  
  3158. Tue Jun 20 06:14:43 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  3159.  
  3160.     * lib/cgi.rb: change: version syntax. old: x.yz, now: x.y.z
  3161.  
  3162.     * lib/net/telnet.rb: ditto.
  3163.  
  3164. Tue Jun 20 00:37:45 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3165.  
  3166.     * re.c (rb_reg_kcode_m): Regexp#kcode returns nil for code unfixed
  3167.       regexp object.
  3168.  
  3169.     * bignum.c (bigdivmod): bignum zero check was wrong.
  3170.  
  3171. Mon Jun 19 10:48:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3172.  
  3173.     * variable.c (rb_cvar_set): forgot to add security check for class
  3174.       variable assignment.
  3175.  
  3176. Sun Jun 18 22:49:13 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3177.  
  3178.     * configure.in: single quoted sitedir.
  3179.  
  3180.     * mkconfig.rb: add DESTDIR for cross-compiling.
  3181.  
  3182.     * lib/mkmf.rb: add DESTDIR.
  3183.  
  3184.     * ruby.c (load_file): force binmode if fname includes ".exe"
  3185.       on DOSISH.
  3186.  
  3187. Sat Jun 17 23:22:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3188.  
  3189.     * sprintf.c (rb_f_sprintf): should ignore negative precision given
  3190.       by <%.*>.
  3191.  
  3192.     * sprintf.c (rb_f_sprintf): should allow zero precision.
  3193.  
  3194. Sat Jun 17 03:13:29 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3195.  
  3196.     * time.c (time_localtime): avoid unnecessary call of localtime.
  3197.  
  3198.     * time.c (time_gmtime): avoid unnecessary call of gmtime.
  3199.  
  3200.     * process.c (proc_wait2): new method.
  3201.  
  3202.     * process.c (proc_waitpid): second argument made optional.
  3203.  
  3204.     * process.c (proc_waitpid2): new method.
  3205.  
  3206. Sat Jun 17 00:05:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3207.  
  3208.     * re.c (rb_reg_clone): should initialize member fields.
  3209.  
  3210. Fri Jun 16 22:49:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3211.  
  3212.     * io.c (rb_io_rewind): set lineno to zero.
  3213.  
  3214. Fri Jun 16 22:47:47 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3215.  
  3216.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.23.
  3217.  
  3218.     * lib/net/protocol.rb: too many CRLF in last line.
  3219.  
  3220. Fri Jun 16 21:23:59 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3221.  
  3222.     * configure.in: add pause(2) checking.
  3223.  
  3224.     * eval.c: define pause() if missing.
  3225.  
  3226. Fri Jun 16 18:41:58 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  3227.  
  3228.     * process.c (proc_setsid): BSD-style setpgrp() don't return 
  3229.       process group ID, but 0 or -1.
  3230.  
  3231. Fri Jun 16 16:23:35 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  3232.  
  3233.     * file.c (rb_stat_inspect): gives detailed information;
  3234.       compatibility with ruby-1.4.x.
  3235.  
  3236. Fri Jun 16 05:18:45 2000  Yasuhiro Fukuma  <yasuf@bsdclub.org>
  3237.  
  3238.     * configure.in: FreeBSD: do not link dummy libxpg4 which was
  3239.       merged into libc.
  3240.  
  3241. Fri Jun 16 03:17:36 2000  Satoshi Nojo  <nojo@t-samukawa.or.jp>
  3242.  
  3243.     * ext/dbm/dbm.c (fdbm_length): use GetDBM. empty?, [] too.
  3244.  
  3245.     * ext/gdbm/gdbm.c (fgdbm_length): ditto.
  3246.  
  3247.     * ext/sdbm/init.c (fsdbm_length): ditto.
  3248.  
  3249. Fri Jun 16 01:57:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3250.  
  3251.     * eval.c (rb_thread_sleep_forever): pause(2) instead of sleep(3).
  3252.  
  3253. Thu Jun 15 10:46:36 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3254.  
  3255.     * string.c (rb_str_sub_bang): should probagate taintness from
  3256.       replacement string.
  3257.  
  3258. Wed Jun 14 17:01:41 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3259.  
  3260.     * rubytest.rb: add CONFIG['EXEEXT'] to the executable file name.
  3261.  
  3262. Wed Jun 14 14:50:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3263.  
  3264.     * string.c (rb_f_sub): assign to $_ only if modification happens.
  3265.  
  3266.     * string.c (rb_f_gsub): ditto.
  3267.  
  3268.     * string.c (rb_f_chop): ditto.
  3269.  
  3270.     * string.c (rb_f_chomp): ditto.
  3271.  
  3272.     * io.c (io_reopen): preserve file position by ftell/fseek, if io
  3273.       is a seekable.
  3274.  
  3275.     * eval.c (method_arity): wrong arity number for the methods with
  3276.       optional arguments.
  3277.  
  3278.     * time.c (make_time_t): opposite timezone shift (should be negative).
  3279.  
  3280. Wed Jun 14 14:07:38 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3281.  
  3282.     * io.c: typo(ig/if).
  3283.  
  3284.     * re.c: typo(re/reg). add rb_reg_check().
  3285.  
  3286.     * time.c: remove unneeded declare(daylight, timezone).
  3287.  
  3288.     * configure.in: add include <time.h> when daylight checking.
  3289.  
  3290. Wed Jun 14 11:36:52 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3291.  
  3292.     * marshal.c (r_object): modified for symbols.
  3293.  
  3294.     * marshal.c (w_object): ditto.
  3295.  
  3296. Wed Jun 14 10:04:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3297.  
  3298.     * re.c (rb_memcmp): should compare according to ruby_ignorecase.
  3299.  
  3300.     * string.c (rb_str_cmp): use rb_memcmp.
  3301.  
  3302.     * string.c (rb_str_index): ditto.
  3303.  
  3304.     * string.c (rb_str_rindex): ditto.
  3305.  
  3306.     * string.c (rb_str_each_line): ditto.
  3307.  
  3308. Wed Jun 14 04:58:53 2000  Dave Thomas  <dave@thomases.com>
  3309.  
  3310.     * io.c (rb_io_set_lineno): should have returned VALUE, not
  3311.       integer.
  3312.  
  3313. Wed Jun 14 09:29:42 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3314.  
  3315.     * string.c (rb_str_dup): dup should always propagate taintness.
  3316.  
  3317. Wed Jun 14 00:50:14 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  3318.  
  3319.     * lib/cgi.rb: read_multipart(): if no content body then raise EOFError.
  3320.  
  3321. Tue Jun 13 11:46:17 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3322.  
  3323.     * process.c (proc_setsid): try implement it using setpgrp() and
  3324.       ioctl(fd, TIOCNOTTY, NULL).
  3325.  
  3326.     * re.c (rb_reg_prepare_re): magic variable $= should affect regex
  3327.       pattern match. 
  3328.  
  3329.     * time.c (make_time_t): use tm.tm_gmtoff if possible.
  3330.  
  3331.     * time.c (time_zone): use tm.tm_zone if available.
  3332.  
  3333. Tue Jun 13 01:50:57 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3334.  
  3335.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.22.
  3336.  
  3337.     * lib/net/http.rb: HTTPResponse#body returns body.
  3338.  
  3339. Mon Jun 12 23:41:54 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3340.  
  3341.     * configure.in (daylight): avoid GCC optimization.
  3342.  
  3343. Mon Jun 12 19:02:27 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3344.  
  3345.     * configure.in: cygwin has strange timezone.
  3346.  
  3347.     * time.c (time_zone): use tzname and daylight.
  3348.  
  3349. Sat Jun 10 23:10:32 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3350.  
  3351.     * io.c (rb_io_seek): whence is optional, default is SEEK_SET.
  3352.  
  3353. Fri Jun  9 17:00:29 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3354.  
  3355.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.21.
  3356.  
  3357.     * lib/net/http.rb: exception is raised with response object.
  3358.  
  3359. Fri Jun  9 15:11:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3360.  
  3361.     * time.c (make_time_t): supports daylight saving time.
  3362.  
  3363.     * eval.c (rb_thread_safe_level): should retrieve current $SAFE
  3364.       value if a thread is the current thread.
  3365.  
  3366. Thu Jun  8 14:25:45 2000  Hiroshi Igarashi  <iga@ruby-lang.org>
  3367.  
  3368.     * lib/mkmf.rb: add target `distclean' in Makefile for extlib.
  3369.       target `clean' doesn't remove Makefile.
  3370.  
  3371. Thu Jun  8 13:34:03 2000  Dave Thomas  <dave@thomases.com>
  3372.  
  3373.     * numeric.c: add nan?, infinite?, and finite? to Float
  3374.  
  3375. Thu Jun  8 00:31:04 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3376.  
  3377.     * regex.h: export re_mbctab properly on cygwin.
  3378.  
  3379.     * dln.c: use dlopen instead of LoadLibrary on cygwin.
  3380.  
  3381. Thu Jun  8 13:41:34 2000  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  3382.  
  3383.     * file.c (rb_file_s_basename): might dump core.
  3384.  
  3385. Tue Jun  6 03:29:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3386.  
  3387.     * dir.c (dir_foreach): now returns nil for consistency.
  3388.  
  3389.     * bignum.c (bigdivmod): modulo by small numbers was wrong.
  3390.  
  3391. Mon Jun  5 00:18:08 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3392.  
  3393.     * bignum.c: avoid conflict with USHORT on mingw32.
  3394.  
  3395. Mon Jun  5 00:13:35 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3396.  
  3397.     * eval.c (rb_thread_schedule): =/== typo.
  3398.  
  3399. Sun Jun  4 03:17:36 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  3400.  
  3401.     * lib/cgi.rb: improve: CGI::pretty()
  3402.  
  3403. Sun Jun  4 02:01:10 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3404.  
  3405.     * lib/mkmf.rb: do not need to add -L$(topdir) in --enable-shared case.
  3406.  
  3407. Sat Jun  3 13:50:06 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3408.  
  3409.     * parse.y (rb_id2name): should support constant attrset
  3410.       identifiers. 
  3411.  
  3412.     * bignum.c (rb_big_eq): Bignum#== should not raise exception.
  3413.  
  3414. Fri Jun  2 11:24:48 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3415.  
  3416.     * io.c (rb_io_popen): open with a block returns the value from the
  3417.       block.  old behavior was back.
  3418.  
  3419. Fri Jun  2 00:42:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3420.  
  3421.  
  3422.     * eval.c (rb_thread_cleanup): should clear priority for thread
  3423.       termination.
  3424.  
  3425. Thu Jun 01 22:39:41 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3426.  
  3427.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.20.
  3428.  
  3429.     * lib/net/http.rb: wrongly closed the socket twice
  3430.       when no Content-Length: was given.
  3431.  
  3432. Thu Jun  1 00:59:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3433.  
  3434.     * eval.c (rb_yield_0): convert Qundef to [].
  3435.  
  3436. Wed May 31 20:45:59 2000  Dave Thomas  <Dave@Thomases.com>
  3437.  
  3438.     * string.c (rb_str_slice_bang): wrong argument number.
  3439.  
  3440. Wed May 31 12:37:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3441.  
  3442.     * eval.c (rb_exec_end_proc): print error message from END procs.
  3443.  
  3444. Wed May 31 04:06:41 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  3445.  
  3446.     * lib/cgi.rb: change: CGI#out() if "HEAD" == REQUEST_METHOD then
  3447.       output only HTTP header.
  3448.  
  3449. Wed May 31 01:54:21 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3450.  
  3451.     * eval.c (rb_thread_schedule): set main_thread->status to
  3452.       THREAD_TO_KILL, before raising deadlock error.
  3453.  
  3454.     * eval.c (rb_thread_deadlock): if curr_thread == main_thread, do
  3455.       not call rb_thread_restore_context()
  3456.  
  3457. Tue May 30 23:33:41 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3458.  
  3459.     * lib/mkmf.rb (create_makefile): add $(TARGET).ilk and *.pdb
  3460.       to cleanup files for mswin32.
  3461.  
  3462. Mon May 29 10:41:10 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  3463.  
  3464.     * file.c (rb_file_s_basename): should propagate taintness.
  3465.  
  3466. Sun May 28 21:37:13 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3467.  
  3468.     * eval.c: bug fix: DLEXT2.
  3469.  
  3470. Sun May 28 19:21:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3471.  
  3472.     * win32/win32.c: use ruby's glob.
  3473.  
  3474.     * dir.c: "glob" exported and renamed to "rb_glob".
  3475.  
  3476.     * ruby.h: ditto.
  3477.  
  3478.     * main.c: turn off command line mingw32's globbing.
  3479.  
  3480. Wed May 25 22:25:13 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3481.  
  3482.     * ext/extmk.rb.in: use "ftools" instead of "rm -f".
  3483.  
  3484.     * lib/mkmf.rb: ditto.
  3485.  
  3486. Thu May 25 22:01:32 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3487.  
  3488.     * defines.h: mswin32: remove obsolete USHORT definition.
  3489.  
  3490.     * re.h: mswin32: use EXTERN instead of extern.
  3491.  
  3492.     * regex.h: mswin32: export re_mbctab properly.
  3493.  
  3494.     * win32/ruby.def: add ruby_ignorecase and regex.c's exports.
  3495.  
  3496. Thu May 25 21:28:44 2000  Minero Aoki <aamine@dp.u-netsurf.ne.jp>
  3497.  
  3498.     * re.c (rb_reg_expr_str): escape un-printable character.
  3499.  
  3500. Thu May 25 01:35:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3501.  
  3502.     * parse.y (tokadd_escape): forgot to add `\x' to hexadecimal
  3503.       escape sequences.
  3504.  
  3505.     * object.c (rb_obj_dup): dup for normal object (T_OBJECT) copies
  3506.       instance variables only.
  3507.  
  3508. Wed May 24 23:49:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3509.  
  3510.     * object.c (rb_mod_initialize): should provide initialize.
  3511.  
  3512. Wed May 24 23:17:50 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3513.  
  3514.     * win32/Makefile: remove unnecessary mv and rm command call.
  3515.  
  3516. Wed May 24 21:01:04 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3517.  
  3518.     * ext/pty/pty.c: use "" instead of <> to include ruby.h and rubyio.h
  3519.       for BeOS (PowerPC).
  3520.  
  3521.     * file.c (rb_find_file): should check dln_find_file() result.
  3522.  
  3523.     * win32/ruby.def: add rb_block_given_p.
  3524.  
  3525. Wed May 24 16:32:45 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3526.  
  3527.     * io.c (rb_io_popen): popen does not take 3rd argument anymore.
  3528.  
  3529.     * re.c (rb_reg_desc): re may be zero, check before dereferencing.
  3530.  
  3531. Wed May 24 16:03:06 2000  Wakou Aoyama  <wakou@fsinet.or.jp>
  3532.  
  3533.     * lib/cgi.rb: bug fix: CGI::escape(), CGI::Cookie::new()
  3534.  
  3535.     * lib/net/telnet.rb: improve: binmode(), telnetmode() interface
  3536.  
  3537. Wed May 24 13:12:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3538.  
  3539.     * misc/ruby-mode.el (ruby-parse-region): support `while .. do'
  3540.       etc. But corresponding keywords must be at the beginning of
  3541.       line. 
  3542.  
  3543. Tue May 23 23:50:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3544.  
  3545.     * re.c (rb_reg_initialize_m): wrong kcode value.
  3546.  
  3547.     * re.c (rb_reg_s_new): forgot to initialize re->ptr.
  3548.  
  3549. Tue May 23 08:36:24 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3550.  
  3551.     * regex.c (re_compile_pattern): forgot to restore old option
  3552.       status by (?ix-ix).
  3553.  
  3554.     * regex.c (re_compile_fastmap): anychar may match newline if
  3555.       RE_OPTION_MULTILINE or RE_OPTION_POSIXLINE is set.
  3556.  
  3557. Mon May 22 22:45:06 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3558.  
  3559.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.19.
  3560.  
  3561.     * lib/net/http.rb: do not use Regexp "p" option.
  3562.  
  3563. Mon May 22 21:56:43 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  3564.  
  3565.     * struct.c (rb_struct_getmember): should use ID2SYM, not INT2NUM.
  3566.  
  3567. Mon May 22 15:07:37 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3568.  
  3569.     * file.c (rb_find_file): should check if the file really exists.
  3570.  
  3571. Mon May 22 09:08:12 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3572.  
  3573.     * io.c (rb_io_popen): _exit(0) after processing block under the
  3574.       child process.
  3575.  
  3576.     * io.c (rb_io_popen): flush stdout/stderr before subprocess
  3577.       termination.
  3578.  
  3579.     * eval.c (rb_check_safe_str): insert rb_secure(4); operation
  3580.       requires untainted string should be prohibited in level 4.
  3581.  
  3582. Sun May 21 21:17:00 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3583.  
  3584.     * configure.in: add Setup.dj for djgpp cross-compiling.
  3585.  
  3586.     * Setup.dj: add readline.
  3587.  
  3588.     * instruby.rb: copy win32/win32.h to archlibdir on mingw32.
  3589.  
  3590. Sun May 21 20:58:08 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3591.  
  3592.     * pack.c: fix OFF16 and OFF32 definitions for Alpha and IRIX64.
  3593.  
  3594. Sun May 21 17:31:37 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3595.  
  3596.     * instruby.rb: support "make install" for cross-compiling.
  3597.  
  3598.     * ext/extmk.rb.in: ditto.
  3599.  
  3600. Sun May 21 14:22:49 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3601.  
  3602.     * Makefile.in: rename prep.rb to fake.rb.
  3603.  
  3604.     * configure.in: ditto.
  3605.  
  3606. Sat May 20 23:29:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3607.  
  3608.     * dir.c (dir_s_new): does not take block; "open" does.
  3609.  
  3610.     * io.c (rb_io_s_new): ditto.
  3611.  
  3612. Fri May 19 07:44:26 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3613.  
  3614.     * dir.c (dir_s_open): Dir#open does not returns closed Dir if a
  3615.       block is given to the method.
  3616.  
  3617.     * re.c (rb_reg_initialize_m): Regexp::new calls initialize now.
  3618.  
  3619.     * string.c (Init_String): String#delete_at removed.
  3620.  
  3621.     * string.c (rb_str_aset_m): should have checked argc != 2.
  3622.  
  3623.     * eval.c (rb_thread_schedule): select(2) was called too many.
  3624.  
  3625.     * regex.c (re_compile_pattern): a bug in (?m) support.  Pointed
  3626.       out by Dave Thomas <Dave@thomases.com>.
  3627.  
  3628. Thu May 18 23:55:26 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3629.  
  3630.     * dln.c (search_undef): st_lookup()'s 3rd parameter should be
  3631.       a pointer of the variable which has the same size and alignment
  3632.       as `char *'.
  3633.  
  3634.     * marshal.c (w_symbol, w_object): ditto.
  3635.  
  3636.     * parse.y (rb_intern): ditto.
  3637.  
  3638. Thu May 18 18:00:35 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3639.  
  3640.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.18.
  3641.  
  3642.     * lib/net/protocol.rb: Net::Version was removed.
  3643.  
  3644.     * lib/net/smtp.rb: use Socket.gethostname to get local host name.
  3645.  
  3646. Thu May 18 13:34:57 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3647.  
  3648.     * ext/socket/socket.c (ruby_connect): should not have replaced
  3649.       thread_write_select() by rb_thread_fd_writable().
  3650.  
  3651. Thu May 18 09:01:25 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3652.  
  3653.     * configure.in, ext/extmk.rb.in, lib/mkmf.rb: remove BeOS R3 support.
  3654.       Make a shared library (libruby.so) only if the --enable-shared
  3655.       option is specified.
  3656.  
  3657.     * instruby.rb: no longer use libruby.so.LIB and import.h.
  3658.  
  3659.     * io.c: fix READ_DATA_PENDING definition for BeOS (PowerPC).
  3660.  
  3661. Wed May 17 14:14:23 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3662.  
  3663.     * re.c (rb_reg_new_1): use /m instead of /p.
  3664.  
  3665. Wed May 17 02:22:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3666.  
  3667.     * eval.c (rb_thread_polling): wait 0.06 second to let other
  3668.       processes run.
  3669.  
  3670.     * process.c (rb_waitpid): avoid busy wait using rb_thread_polling.
  3671.  
  3672.     * file.c (rb_thread_flock): ditto.
  3673.  
  3674.     * parse.y (expr): avoid calling value_expr() twice.
  3675.  
  3676. Wed May 17 00:45:57 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3677.  
  3678.     * io.c (rb_io_binmode): should check PLATFORMs, not O_BINARY, sigh...
  3679.  
  3680. Wed May 17 00:40:15 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3681.  
  3682.     * win32/config.h: add DLEXT2, now DLEXT on mswin32 is "so".
  3683.  
  3684.     * win32/config.status: ditto.
  3685.  
  3686.     * win32/ruby.def: add symbol "rb_big_divmod".
  3687.  
  3688. Tue May 16 19:45:32 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3689.  
  3690.     * intern.h: use EXTERN instead of extern.
  3691.  
  3692.     * win32/ruby.def: add rb_defout, rb_stdout, ruby_errinfo,
  3693.       ruby_sourceline, ruby_sourcefile to work with eruby
  3694.       reported by Hiroshi Saito <HiroshiSaito@pob.org>.
  3695.       Export both ruby_xmalloc and xmalloc etc.
  3696.  
  3697. Tue May 16 17:00:05 2000  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>
  3698.  
  3699.     * eval.c (rb_thread_select): should check whether fds are null.
  3700.  
  3701. Tue May 16 11:51:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3702.  
  3703.     * io.c (pipe_open): synchronize subprocess stdout/stderr.
  3704.  
  3705. Mon May 15 15:38:09 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3706.  
  3707.     * ruby.h: exported symbols should be for xmalloc etc. are now
  3708.       prefixed by 'ruby_', e.g. ruby_xmalloc().
  3709.  
  3710.     * eval.c (rb_thread_select): remove busy wait for select.
  3711.  
  3712.     * dir.c (glob): trailing path may be null, e.g. glob("**").
  3713.  
  3714. Mon May 15 14:48:41 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  3715.  
  3716.     * io.c (rb_io_pid): new method; returns nil if no process attached
  3717.       to the IO.
  3718.  
  3719. Mon May 15 01:18:20 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3720.  
  3721.     * io.c (rb_io_s_popen): _exit after Proc execution.
  3722.  
  3723. Sun May 14 18:05:59 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3724.  
  3725.     * Makefile.in: missing/nt.c -> win32/win32.c
  3726.  
  3727.     * configure.in: bug fix; static linking on mingw32.
  3728.  
  3729.     * cygwin/GNUmakefile.in: remove VPATH.
  3730.  
  3731.     * ext/extmk.rb.in: Makefile set binmode with mingw32 on cygwin32.
  3732.  
  3733.     * lib/mkmf.rb: ditto.
  3734.  
  3735.     * win32/config.h: undef HAVE_SYS_FILE_H.
  3736.  
  3737. Sun May 14 02:02:48 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3738.  
  3739.     * lib/irb/ruby-lex.rb: '/' should be escaped in character class.
  3740.  
  3741. Sun May 14 00:54:43 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3742.  
  3743.     * configure.in, ...: support mingw32.
  3744.  
  3745.     * defines.h: ditto. undef EXTERN for tcl/tk on cygwin.
  3746.  
  3747.     * ext/*/extconf.rb: replace PLATFORM with RUBY_PLATFORM.
  3748.  
  3749.     * ext/socket/sockport.h: define IN_MULTICAST for missing IN_MULTICAST.
  3750.  
  3751.     * ext/tcltklib/tcltklib.c: remove declaration of rb_argv0.
  3752.  
  3753.     * file.c: should check S_IXGRP, S_ISGID, not NT.
  3754.  
  3755.     * io.c (rb_io_binmode): should check _IOBIN, O_BINARY, not PLATFORMs.
  3756.  
  3757. Sat May 13 14:21:15 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  3758.  
  3759.     * io.c (rb_io_s_popen): should check whether a block is given.
  3760.  
  3761. Fri May 12 17:33:44 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3762.  
  3763.     * regex.c (re_compile_pattern): charset_not should not exclude
  3764.       newline from matching set.
  3765.  
  3766. Thu May 11 22:51:05 2000  Ryunosuke Ohshima  <ryu@jaist.ac.jp>
  3767.  
  3768.     * pack.c (pack_pack): Bignum support.
  3769.  
  3770.     * pack.c (pack_unpack): ditto.
  3771.  
  3772. Thu May 11 21:19:29 2000  Hiroshi Igarashi  <iga@ruby-lang.org>
  3773.  
  3774.     * intern.h: add missing declarations of ruby API functions.
  3775.  
  3776.     * ruby.h: fix function name in declarations.
  3777.  
  3778. Thu May 11 22:29:25 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3779.  
  3780.     * ext/md5/depend: add $(topdir)/config.h dependency to md5c.o.
  3781.  
  3782.     * ext/md5/extconf.rb: new file to add -DHAVE_CONFIG_H flag for Alpha.
  3783.  
  3784. Thu May 11 10:55:52 2000  Ryunosuke Ohshima  <ryu@jaist.ac.jp>
  3785.  
  3786.     * pack.c (pack_pack): packing BER compressed integer by `w'.
  3787.  
  3788.     * pack.c (pack_unpack): unpacking BER.
  3789.  
  3790. Thu May 11 00:37:55 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3791.  
  3792.     * parse.y (parse_regx): remove in_brack.
  3793.  
  3794. Wed May 10 12:51:18 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3795.  
  3796.     * ruby.c (proc_options): move adding RUBYLIB and "." to the load
  3797.       path after #! line parsing.
  3798.  
  3799.     * parse.y (parse_regx): should parse backslash escape like `\c['
  3800.       here to avoid causing `unterminated regexp' error.
  3801.  
  3802. Wed May 10 00:19:53 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3803.  
  3804.     * MANIFEST, beos/GNUmakefile.in, configure.in: no longer need
  3805.       beos/GNUmakefile.in to support BeOS R4.5.2 (Intel) as a result
  3806.       of eban's Makefile.in change.
  3807.  
  3808.     * io.c: NOFILE is already defined on BeOS R4.5 (Intel) or later.
  3809.  
  3810.     * lib/matrix.rb: remove debug print.
  3811.  
  3812.     * regex.c: don't use nested comment.
  3813.  
  3814. Tue May  9 17:08:43 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3815.  
  3816.     * eval.c (massign): no longer convert nil into empty array.
  3817.  
  3818.     * io.c (rb_io_s_popen): optional 3rd argument to give proc, which
  3819.       will be executed in spawned child process.
  3820.  
  3821. Mon May  8 23:47:39 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3822.  
  3823.     * eval.c (rb_callcc): prev & next should be initialized to zero.
  3824.  
  3825. Mon May  8 23:17:36 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3826.  
  3827.     * dln.c (dln_init): remove possible buffer overrun.  This is
  3828.       suggested by Aleksi Niemela <aleksi.niemela@cinnober.com>.
  3829.  
  3830.     * dln.c (init_funcname): ditto.
  3831.  
  3832. Sat May  6 23:35:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3833.  
  3834.     * parse.y (lhs): should allow `obj.Attr = 5' type expression.
  3835.  
  3836. Sat May  6 15:46:08 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3837.  
  3838.     * ext/socket/extconf.rb: add a new configure option to force use
  3839.       of the WIDE Project's getaddrinfo(): --enbale-wide-getaddrinfo.
  3840.  
  3841. Fri May  5 21:19:22 2000  MOROHOSHI Akihiko  <moro@remus.dti.ne.jp>
  3842.  
  3843.     * parse.y (yylex): allow '$1foo' and such.
  3844.  
  3845. Fri May  5 17:57:24 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3846.  
  3847.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.17.
  3848.  
  3849.     * lib/net/http.rb: write also port number in Host: field.
  3850.  
  3851.     * lib/net/http.rb: see Proxy-Connection: to decide socket connection.
  3852.  
  3853. Fri May  5 03:25:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3854.  
  3855.     * regex.c (re_compile_fastmap): charset_not for multibyte
  3856.       characters excluded too many characters.
  3857.  
  3858. Tue May  2 13:23:43 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3859.  
  3860.     * eval.c (rb_thread_schedule): little bit more impartial context
  3861.       switching.
  3862.  
  3863. Tue May  2 09:50:03 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3864.  
  3865.     * configure.in: add DLDLIBS to set platform specific library
  3866.       for extensions.
  3867.  
  3868.     * ext/extmk.rb.in: use @DLDLIBS@ instead of RUBY_PLATFORM choice.
  3869.  
  3870.     * lib/mkmf.rb: use CONFIG["DLDLIBS"] instead of RUBY_PLATFORM choice.
  3871.  
  3872.     * config_s.dj: add @DLDLIBS@.
  3873.  
  3874.     * win32/config.status: ditto.
  3875.  
  3876.     * win32/ruby.def: regular maintenance.
  3877.  
  3878. Mon May  1 23:42:44 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3879.  
  3880.     * configure.in, eval.c: add DLEXT2. now DLEXT on Cygwin is "so".
  3881.  
  3882.     * defines.h: use dllimport, dllexport for Cygwin 1.1.x.
  3883.  
  3884.     * ruby.h: ditto.
  3885.  
  3886.     * cygwin/GNUmakefile.in: ditto.
  3887.  
  3888.     * ext/Win32API/Win32API.c: directly "call" in asm statement for
  3889.       gcc 2.95.x or newer.
  3890.  
  3891. Sat Apr 29 04:58:12 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  3892.  
  3893.     * array.c (rb_ary_unshift_m): performance improvement.
  3894.  
  3895. Fri Apr 28 00:19:22 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  3896.  
  3897.     * array.c (rb_ary_unshift_m): takes items to push.
  3898.  
  3899. Wed Apr 26 15:23:02 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3900.  
  3901.     * string.c (rb_str_succ): insert carrying character just before
  3902.       the leftmost alpha numeric character.
  3903.  
  3904.     * string.c (rb_str_succ): proper behavior for "".succ and "\377".succ.
  3905.  
  3906.     * string.c (rb_str_succ): use realloc and memmove.
  3907.  
  3908. Tue Apr 25 18:28:45 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3909.  
  3910.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.16.
  3911.  
  3912.     * lib/net/smtp.rb: add SMTP AUTH
  3913.  
  3914. Tue Apr 25 14:30:13 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3915.  
  3916.     * io.c (rb_io_gets_internal): shortcut when rs == rb_default_rs.
  3917.  
  3918. Sat Apr 22 23:14:41 2000  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>
  3919.  
  3920.     * configure.in: MacOS X support.
  3921.  
  3922. Sat Apr 22 16:37:10 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3923.  
  3924.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.15.
  3925.  
  3926.     * lib/net/http.rb:  closing socket by watching both
  3927.       user header and server response
  3928.  
  3929. Fri Apr 21 21:44:34 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  3930.  
  3931.     * io.c (rb_io_s_pipe): should set FMODE_SYNC.
  3932.  
  3933. Thu Apr 20 16:59:22 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  3934.  
  3935.     * eval.c (massign): `*lvalue = false' should assign `[false]' to
  3936.       lvalue.
  3937.  
  3938. Wed Apr 19 08:35:08 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3939.  
  3940.     * class.c (rb_singleton_class): generate singleton class for
  3941.       special constants: nil, true, false.
  3942.  
  3943. Wed Apr 19 02:09:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3944.  
  3945.     * class.c (rb_singleton_class): singleton method for nil, true,
  3946.       false is possible now.
  3947.  
  3948.     * eval.c (rb_eval): ditto.
  3949.  
  3950. Tue Apr 18 18:54:25 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3951.  
  3952.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.14.
  3953.  
  3954.     * lib/net/http.rb: new method HTTP#head2.
  3955.  
  3956.     * lib/net/http.rb: get2/post2 does not raise exceptions.
  3957.  
  3958. Mon Apr 17 15:16:31 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3959.  
  3960.     * io.c (rb_io_close): to detect some exceptional status, writable
  3961.       IO should be flushed before close;
  3962.  
  3963. Sat Apr 15 18:29:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3964.  
  3965.     * array.c (rb_ary_collect_bang): Array#filter renamed.
  3966.  
  3967. Fri Apr 14 19:47:11 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  3968.  
  3969.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.13.
  3970.  
  3971.     * lib/net/pop.rb: accept illegal timestamp
  3972.  
  3973.     * lib/net/http.rb: when body was chunked, does not set Content-Length:
  3974.  
  3975. Tue Apr 11 21:14:42 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  3976.  
  3977.     * config_s.dj: add @sitedir@.
  3978.     * configure.in: add --with-sitedir=DIR option.
  3979.     * instruby.rb: use CONFIG["sitedir"].
  3980.     * lib/mkmf.rb: support 'make site-install'.
  3981.     * win32/config.status: add @sitedir@.
  3982.  
  3983. Tue Apr 11 16:25:15 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3984.  
  3985.     * bignum.c (rb_big_2comp): unnecessary lvalue cast removed.
  3986.  
  3987. Tue Apr 11 02:25:53 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3988.  
  3989.     * hash.c (env_fetch): new method.
  3990.  
  3991.     * marshal.c (marshal_dump): accepts depth = nil for unlimited depth.
  3992.  
  3993. Sun Apr  9 20:49:19 2000  Dave Thomas  <Dave@Thomases.com>
  3994.  
  3995.     * parse.y (str_extend): Allow class variables to be expanded.
  3996.  
  3997. Fri Apr  7 02:03:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  3998.  
  3999.     * error.c (rb_sys_fail): escape non-printable characters.
  4000.  
  4001. Thu Apr  6 20:10:47 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4002.  
  4003.     * ext/extmk.rb.in (create_makefile): BeOS --program-suffix support.
  4004.     * lib/mkmf.rb (create_makefile): ditto.
  4005.  
  4006. Thu Apr  6 09:55:26 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4007.  
  4008.     * error.c (rb_sys_fail): need rb_exc_new2() call on BeOS.
  4009.  
  4010. Mon Apr  3 17:22:27 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4011.  
  4012.     * io.c (rb_io_reopen): support tempfile.
  4013.  
  4014.     * eval.c (catch_i): should supply argument.
  4015.  
  4016. Sat Apr  1 22:50:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4017.  
  4018.     * marshal.c (r_object): wrong symbol restoration.
  4019.  
  4020. Sat Apr  1 21:30:53 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4021.  
  4022.     * io.c(rb_io_printf, rb_f_printf): should use rb_io_write.
  4023.  
  4024. Sat Apr  1 00:16:05 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4025.  
  4026.     * gc.c (rb_gc_call_finalizer_at_exit): should be clear flags
  4027.       before calling finalizers.
  4028.  
  4029.     * eval.c (specific_eval): can be called without SecurityError, if
  4030.       $SAFE >= 4.
  4031.  
  4032.     * object.c (sym_inspect): inspect gives ":sym", to_s gives "sym".
  4033.  
  4034. Fri Mar 31 22:07:04 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4035.  
  4036.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.12.
  4037.  
  4038.     * lib/net/protocol.rb:  update Net::Protocol::Proxy#connect
  4039.  
  4040.     * lib/net/protocol.rb:  ReplyCode is not a class
  4041.  
  4042.     * lib/net/http.rb: header value format was change:
  4043.       values do not include header name
  4044.  
  4045.     * lib/net/http.rb: header is not a Hash, but HTTPResponse
  4046.  
  4047. Thu Mar 30 12:19:44 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4048.  
  4049.     * enum.c (enum_find): rb_eval_cmd() should be called with array.
  4050.  
  4051. Tue Mar 28 13:57:05 2000  Clemens Hintze  <c.hintze@gmx.net>
  4052.  
  4053.     * ext/dbm/dbm.c (fdbm_invert): should return new hash.
  4054.  
  4055.     * ext/gdbm/gdbm.c (fgdbm_invert): ditto.
  4056.  
  4057. Tue Mar 28 00:58:03 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4058.  
  4059.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.11.
  4060.  
  4061.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: does not
  4062.       dispatch any commands while dispatching command.
  4063.  
  4064.     * lib/net/protocol.rb: failed to get error class of
  4065.       inherited ReplyCode
  4066.  
  4067.     * lib/net/http.rb: change feature of "get2", "post2"
  4068.  
  4069. Mon Mar 27 01:34:58 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4070.  
  4071.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.10.
  4072.  
  4073.     * lib/net/http.rb: return value of 'head' was wrong.
  4074.  
  4075. Sun Mar 26 17:47:35 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4076.  
  4077.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.9.
  4078.  
  4079.     * lib/net/smtp.rb: SMTP#do_ready wrongly took no arguments
  4080.  
  4081. Sat Mar 25 23:21:10 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4082.  
  4083.     * marshal.c (w_object): symbols should be converted to ID before
  4084.       dumping out.
  4085.  
  4086. Sun Mar 25 16:52:48 2001  Koji Arai  <JCA02266@nifty.ne.jp>
  4087.  
  4088.     * file.c (rb_file_flock): do not trap EINTR.
  4089.  
  4090.     * missing/flock.c (flock): returns the value from lockf(2)
  4091.       directly.
  4092.  
  4093. Fri Mar 24 18:26:51 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4094.  
  4095.     * file.c (test_check): should have checked exact number of arguments.
  4096.  
  4097. Fri Mar 24 21:02:11 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  4098.  
  4099.     * signal.c (trap): should treat some symbols as the signal.
  4100.  
  4101. Fri Mar 24 06:58:03 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4102.  
  4103.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.8.
  4104.  
  4105.     * lib/net/http.rb:  post, get2, post2, get_body
  4106.  
  4107.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: separate
  4108.       Command/Socket documentation.
  4109.  
  4110. Thu Mar 23 02:26:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4111.  
  4112.     * io.c (rb_io_fptr_finalize): fptr may be null.
  4113.  
  4114.     * io.c (rb_io_s_new): now calls `initialize'.
  4115.  
  4116.     * io.c (rb_io_initialize): actual open done in this method.
  4117.  
  4118.     * io.c (rb_file_initialize): ditto.
  4119.  
  4120.     * eval.c (rb_eval): class variables in singleton class definition
  4121.       is now handled properly (I hope).
  4122.  
  4123. Wed Mar 22 21:49:36 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4124.  
  4125.     * st.c (st_delete_safe): skip already deleted entry.
  4126.  
  4127.     * hash.c (rb_hash_delete): modify brace miss.
  4128.  
  4129. Wed Mar 22 08:53:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4130.  
  4131.     * eval.c (exec_under): do not push cbase if ruby_cbase == under.
  4132.  
  4133.     * node.h (NEW_CREF0): preserve cbase nesting.
  4134.  
  4135. Tue Mar 21 12:57:50 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4136.  
  4137.     * object.c (rb_class_s_new): Class::new should call `inherited'.
  4138.  
  4139. Sat Mar 18 12:36:09 2000  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
  4140.  
  4141.     * eval.c (rb_backtrace, make_backtrace): removed unused variable
  4142.       `lev'.
  4143.  
  4144.     * eval.c (rb_attr): calls `method_added' at attribute definition.
  4145.  
  4146.     * eval.c (rb_mod_modfunc): calls `singleton_method_added' while
  4147.       `module_function'.
  4148.  
  4149.     * eval.c (rb_eval): parameter to `method_added' and
  4150.       `singleton_method_added' is Symbol.
  4151.  
  4152.     * eval.c (Init_eval): caches IDs for `method_added' and
  4153.       `singleton_method_added'.
  4154.  
  4155. Sat Mar 18 11:25:10 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4156.  
  4157.     * parse.y (rescue): allows `rescue Error in foo'.  experimental.
  4158.       which is better this or preparing alias `exception' for `$!'?
  4159.  
  4160. Fri Mar 17 15:02:45 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4161.  
  4162.     * variable.c (rb_autoload_id): defining new autoload should be
  4163.       prohibited for $SAFE > 4.
  4164.  
  4165.     * variable.c (rb_autoload_load): autoload should be possible for
  4166.       $SAFE > 4.
  4167.  
  4168.     * eval.c (call_trace_func): should handle T_ICLASS properly.
  4169.  
  4170. Fri Mar 17 14:34:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4171.  
  4172.     * string.c (str_gsub): forgot to initialize str->orig.
  4173.  
  4174. Fri Mar 17 01:24:59 2000  Dave Thomas  <Dave@thomases.com>
  4175.  
  4176.     * string.c (rb_str_clone): forgot to copy str->orig if STR_NO_ORIG
  4177.       is set by Array#pack.
  4178.  
  4179. Wed Mar 15 21:25:04 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4180.  
  4181.     * array.c (rb_ary_join): 'result' is always duplicated
  4182.       before concat string.
  4183.  
  4184. Wed Mar 15 17:26:05 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4185.  
  4186.     * hash.c (rb_hash_s_create): unexpected recursive call removed.
  4187.       this bug was found by Satoshi Nojo <nojo@t-samukawa.or.jp>.
  4188.  
  4189. Wed Mar 15 13:12:39 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4190.  
  4191.     * eval.c (Init_Thread): Thread.join removed finally.
  4192.  
  4193.     * string.c (rb_str_chomp_bang): forgot to call rb_str_modify().
  4194.  
  4195. Mon Mar 13 16:12:13 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4196.  
  4197.     * eval.c (block_pass): distinguish real orphan block and still
  4198.       on-stack block passed by block argument.
  4199.  
  4200. Mon Mar 13 00:20:25 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4201.  
  4202.     * parse.y (f_norm_arg): proper error message when constant comes
  4203.       in formal argument list.  this message is suggested by Muvaw
  4204.       Pnazte <bugathlon@yahoo.com>.
  4205.  
  4206.     * eval.c (rb_f_raise): proper error message when the first
  4207.       argument is not an exception class/object.
  4208.  
  4209.     * string.c (rb_str_dup): dup now postpone buffer copy as long as
  4210.       possible.  performance improved by lazy copying.
  4211.  
  4212. Sun Mar 12 13:58:52 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  4213.  
  4214.     * signal.c (rb_f_kill): should treat some symbols as the signal.
  4215.  
  4216. Sat Mar 11 22:03:03 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4217.  
  4218.     * string.c (rb_str_gsub): performance tune by avoiding buffer copy.
  4219.  
  4220.     * eval.c (rb_f_missing): check if argv[0] is ID.
  4221.  
  4222. Sat Mar 11 15:49:41 2000  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  4223.  
  4224.     * struct.c (rb_struct_aref): struct aref by symbol.
  4225.  
  4226. Sat Mar 11 05:07:11 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4227.  
  4228.     * process.c (proc_setpriority): should return 0, not nil.
  4229.  
  4230.     * process.c (proc_setpgid): ditto.
  4231.  
  4232. Fri Mar 10 18:14:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4233.  
  4234.     * file.c (path_check_1): confusing buf and path.  this bug found
  4235.       by <decoux@moulon.inra.fr>.
  4236.  
  4237. Fri Mar 10 09:37:49 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4238.  
  4239.     * MANIFEST: add beos/GNUmakefile.in.
  4240.     * configure.in: support BeOS R4.5.2 (Intel).
  4241.     * beos/GNUmakefile.in: new file to support BeOS R4.5.2 (Intel).
  4242.  
  4243. Thu Mar  9 11:13:32 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4244.  
  4245.     * regex.c (re_compile_fastmap): fixed embarrassing brace bug.
  4246.  
  4247. Thu Mar  9 01:36:32 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4248.  
  4249.     * missing/flock.c: emulate missing flock() with fcntl().
  4250.  
  4251. Thu Mar  9 00:29:35 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4252.  
  4253.     * object.c (sym_to_s): returns ":sym".
  4254.  
  4255.     * object.c (sym_id2name): separated from to_s; returns "sym".
  4256.  
  4257. Wed Mar  8 19:16:19 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4258.  
  4259.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.7.
  4260.  
  4261.     * lib/net/http.rb (connecting): returns header
  4262.  
  4263. Wed Mar  8 02:08:43 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4264.  
  4265.     * parse.y: escape expansion too early.
  4266.  
  4267.     * string.c (rb_f_scan): Kernel#scan added.
  4268.  
  4269.     * regex.c (re_compile_pattern): support \cX et al.
  4270.  
  4271. Tue Mar  7 01:44:27 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4272.  
  4273.     * io.c (set_stdin): simplified procedure, allows $stdin = DATA;
  4274.       experimental.
  4275.  
  4276.     * io.c (set_outfile): ditto.
  4277.  
  4278.     * re.c (Init_Regexp): new method Regexp#last_match added; it's an
  4279.       alternative for $~.
  4280.  
  4281.     * configure.in (DEFAULT_KCODE): KCODE_NONE should be the default.
  4282.  
  4283.     * dir.c (dir_s_rmdir): should return 0 on success.
  4284.  
  4285.     * signal.c: remove CWGUSI support.
  4286.  
  4287. Mon Mar  6 12:28:37 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4288.  
  4289.     * marshal.c (w_symbol): support symbol object.
  4290.  
  4291.     * util.c: make symbol as separated class.
  4292.  
  4293.     * error.c (Init_Exception): new exception RangeError.
  4294.  
  4295.     * ext/socket/socket.c (ip_addrsetup): should check length of hostname.
  4296.  
  4297.     * ext/socket/socket.c (ip_addrsetup): check newline at the end of
  4298.       hostname.  These fixes suggested by Muvaw Pnazte <bugathlon@yahoo.com>.
  4299.  
  4300. Sun Mar  5 20:35:45 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4301.  
  4302.     * ext/Win32API/Win32API.c (Win32API_initialize): should call
  4303.       LoadLibrary() everytime and should assign the hdll to Win32API
  4304.       object(protect the hdll from GC).
  4305.  
  4306. Sun Mar  5 18:49:06 2000  Nakada.Nobuyoshi  <nobu.nokada@softhome.net>
  4307.  
  4308.     * misc/ruby-mode.el (ruby-parse-region): not treat method `begin'
  4309.       and `end' as reserved words.
  4310.  
  4311.     * misc/ruby-mode.el (ruby-font-lock-docs): ignore after `=begin'
  4312.       and `=end'.
  4313.  
  4314.     * misc/ruby-mode.el (ruby-font-lock-keywords, hilit-set-mode-patterns):
  4315.       added `yield' to keywords.
  4316.  
  4317.     * misc/ruby-mode.el (ruby-font-lock-keywords, hilit-set-mode-patterns):
  4318.       matches keywords at end of buffer.
  4319.  
  4320. Sun Mar  5 18:08:53 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4321.  
  4322.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.6.
  4323.  
  4324.     * lib/net/http.rb:  allow to omit 'start'
  4325.  
  4326. Tue Feb 29 01:08:26 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4327.  
  4328.     * range.c (range_initialize): initialization done in `initialize';
  4329.       `initialize' should not be called more than once.
  4330.  
  4331.     * object.c (Init_Object): default `initialize' should take zero
  4332.       argument.
  4333.  
  4334.     * time.c (time_s_new): call `initialize' in Time::new.
  4335.  
  4336. Sat Feb 26 22:39:31 2000  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  4337.  
  4338.     * string.c (rb_str_times): fix String#* with huge string.
  4339.  
  4340. Sat Feb 26 00:14:59 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4341.  
  4342.     * dir.c (dir_s_new): call `initialize' in Dir::new.
  4343.  
  4344. Fri Feb 25 23:01:49 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4345.  
  4346.     * ruby.h: export ruby_safe_level by EXTERN for mswin32.
  4347.     * win32/ruby.def: regular maintenance.
  4348.  
  4349. Fri Feb 25 22:12:46 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4350.  
  4351.     * io.c (rb_io_reopen): IO#reopen should accept path as well.
  4352.  
  4353.     * string.c (rb_str_s_new): call `initialize' in String::new.
  4354.  
  4355.     * hash.c (rb_hash_s_new): call `initialize' in Hash::new.
  4356.  
  4357.     * array.c (rb_ary_s_new): call `initialize' in Array::new.
  4358.  
  4359. Fri Feb 25 12:50:20 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4360.  
  4361.     * eval.c (rb_thread_start_timer): interval changed to 10ms from 50ms.
  4362.  
  4363. Fri Feb 25 06:42:26 2000  GOTOU YUUZOU  <gotoyuzo@notwork.org>
  4364.  
  4365.     * ext/socket/socket.c (ip_addrsetup): hostp should remain NULL if
  4366.       host is nil.
  4367.  
  4368. Thu Feb 24 16:53:47 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4369.  
  4370.     * eval.c (rb_thread_schedule): priority check for sleep expired
  4371.       threads needed.
  4372.  
  4373. Wed Feb 23 14:22:32 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4374.  
  4375.     * array.c (rb_ary_join): forgot to initialize a local variable
  4376.       `taint'.
  4377.  
  4378. Tue Feb 22 07:40:55 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4379.  
  4380.     * re.c (Init_Regexp): renamed to MatchData, old name MatchingData
  4381.       remain as alias.
  4382.  
  4383. Tue Feb 22 00:20:21 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4384.  
  4385.     * lib/net/protocol.rb, smtp.rb, pop.rb, http.rb: 1.1.5.
  4386.  
  4387.     * lib/net/session.rb: rename to protocol.rb
  4388.  
  4389.     * lib/net/protocol.rb: ProtocolSocket -> Net::Socket
  4390.  
  4391.     * lib/net/protocol.rb: Net::Socket#write, write_pendstr
  4392.       can take block
  4393.  
  4394.     * lib/net/smtp.rb: new methods SMTP#ready SMTPCommand#write_mail
  4395.  
  4396.     * lib/net/pop.rb: POPMail#pop can take block
  4397.  
  4398. Sat Feb 19 23:58:51 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4399.  
  4400.     * regex.c (re_match): pop_loop should not pop at forward jump.
  4401.  
  4402. Fri Feb 18 17:15:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4403.  
  4404.     * eval.c (method_clone): method objects are now clonable.
  4405.  
  4406. Fri Feb 18 00:27:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4407.  
  4408.     * variable.c (rb_shared_variable_declare): shared variable (aka
  4409.       class/module variable) introduced.  prefix `@@'. experimental.
  4410.  
  4411.     * class.c (rb_scan_args): new format char '&'.
  4412.  
  4413. Thu Feb 17 19:09:05 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4414.  
  4415.     * win32/win32.c (mypopen): don't close handle if it is not assigned.
  4416.     * win32/win32.c (my_open_osfhandle): support O_NOINHERIT flag.
  4417.     * win32/win32.c (win32_getcwd): rename getcwd to win32_getcwd
  4418.       in order to avoid using the C/C++ runtime DLL's getcwd.
  4419.       Use CharNext() to process directory name.
  4420.     * win32/win32.h: map getcwd to win32_getcwd.
  4421.  
  4422. Wed Feb 16 00:32:49 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4423.  
  4424.     * eval.c (method_arity): nd_rest is -1 for no rest argument.
  4425.  
  4426.     * process.c (proc_waitpid): returns nil when waitpid(2) returns 0.
  4427.  
  4428. Tue Feb 15 01:47:00 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4429.  
  4430.     * process.c (rb_f_waitpid): pid_t should be signed.
  4431.  
  4432. Mon Feb 14 13:59:01 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4433.  
  4434.     * parse.y (yylex): yylex yields wrong tokens for `:foo=~expr'.
  4435.  
  4436.     * ruby.c (load_file): exit if reading file is empty.
  4437.  
  4438. Mon Feb 14 03:34:52 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4439.  
  4440.     * parse.y (yylex): `foo.bar=1' should be <foo><.><bar><=><1>,
  4441.       not <foo><.><bar=><1>.
  4442.  
  4443.     * eval.c (rb_thread_restore_context): process according to
  4444.       RESTORE_* is moved after longjmp().
  4445.  
  4446.     * eval.c (thread_switch): new function to process RESTORE_*.
  4447.  
  4448. Sun Feb 13 16:19:49 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4449.  
  4450.     * ruby.c (require_libraries): don't access freed memory.
  4451.  
  4452.     * ruby.c (add_modules): ditto.
  4453.  
  4454. Fri Feb 11 12:06:22 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4455.  
  4456.     * parse.y (parse_quotedwords): %w() need to split not only by mere
  4457.       spaces, but by all whitespaces.
  4458.  
  4459. Thu Feb 10 02:12:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4460.  
  4461.     * string.c (rb_str_index_m): did not support negative offset.
  4462.  
  4463. Wed Feb  9 21:54:26 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4464.  
  4465.     * ext/socket/getaddrinfo.c: gcc --traditional support.
  4466.       Rearrange headers to work AC_C_CONST.
  4467.     * ext/socket/getnameinfo.c: ditto.
  4468.     * ext/socket/socket.c: mswin32: use double instead of long long.
  4469.  
  4470. Wed Feb  9 16:30:41 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4471.  
  4472.     * numeric.c (num_coerce): should return [y, x].
  4473.  
  4474. Wed Feb  9 11:07:30 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4475.  
  4476.     * ruby.c (ruby_prog_init): loadpath structure changed.
  4477.  
  4478. Tue Feb  8 02:07:33 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4479.  
  4480.     * regex.c (re_search): optimize for \G at top.
  4481.  
  4482.     * regex.c (re_compile_pattern): \G introduced.
  4483.  
  4484.     * regex.c (re_match): ditto.
  4485.  
  4486.     * string.c (str_sub_bang): old behavior restored: bang method
  4487.       returns nil if string not changed.
  4488.  
  4489.     * regex.c (re_compile_pattern): support independent subexpression
  4490.       `(?>pattern)'. 
  4491.  
  4492.     * regex.c (re_match): ditto.
  4493.  
  4494. Mon Feb  7 15:51:08 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4495.  
  4496.     * regex.c (re_match): now understands interrupts under Ruby.
  4497.  
  4498. Mon Feb  7 07:51:52 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4499.  
  4500.     * array.c (rb_ary_uniq_bang): always return an Array.
  4501.  
  4502.     * array.c (rb_ary_compact_bang): ditto.
  4503.  
  4504.     * array.c (rb_ary_flatten_bang): ditto.
  4505.  
  4506.     * hash.c (rb_hash_reject): returns a Hash, not an Array.
  4507.  
  4508.     * hash.c (env_reject): ditto.
  4509.  
  4510. Fri Feb  4 10:20:25 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4511.  
  4512.     * string.c (scan_once): scan now leaves information about the last
  4513.       successful pattern match in $&.
  4514.  
  4515.     * io.c (rb_io_close): should not check closed IO.
  4516.  
  4517. Fri Feb  4 05:44:01 2000  Kentaro Inagaki  <inagaki@tg.rim.or.jp>
  4518.  
  4519.     * ext/socket/socket.c (s_recv): TRAP_BEG after retry entry.
  4520.  
  4521. Wed Feb  2 22:33:45 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  4522.  
  4523.     * eval.c (rb_thread_start): receives argument from outside, like
  4524.       `Thread::start(1,2,3){|a,b,c| ... }'.
  4525.  
  4526. Wed Feb  2 22:14:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4527.  
  4528.     * re.c (rb_reg_regsub): should check regs->num_regs.
  4529.  
  4530.     * re.c (rb_reg_search): remove matchcache, use static struct
  4531.       re_register instead. 
  4532.  
  4533.     * re.c (match_getter): avoid cloning match data.
  4534.  
  4535. Wed Feb  2 17:12:15 2000  Dave Thomas  <Dave@Thomases.com>
  4536.  
  4537.     * samples/eval.rb: Rescue new ScriptError exception
  4538.  
  4539. Wed Feb  2 02:06:07 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4540.  
  4541.     * string.c (str_gsub_bang): gsub! now leaves information about the
  4542.       last successful pattern match in $&.
  4543.  
  4544. Mon Jan 31 15:24:58 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4545.  
  4546.     * string.c (str_sub_bang): bang method returns string always.
  4547.       experimental.
  4548.  
  4549. Sun Jan 30 17:58:09 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4550.  
  4551.     * eval.c: arrange to use setitimer(2) for BOW, DJGPP
  4552.  
  4553.     * defines.h: ditto. use random(3) on cygwin b20.1.
  4554.  
  4555. Sun Jan 30 17:20:16 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4556.  
  4557.     * eval.c: use getrlimit(2) on DJGPP.
  4558.  
  4559. Thu Jan 27 01:27:10 2000  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>
  4560.  
  4561.     * dir.c (glob): glob pattern "/*" did not match.
  4562.  
  4563. Wed Jan 26 22:30:47 2000  Shigeo Kobayashi  <shigeo@tinyforest.gr.jp>
  4564.  
  4565.     * numeric.c (flo_modulo): wrong result for negative modulo.
  4566.  
  4567. Wed Jan 26 02:01:57 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4568.  
  4569.     * file.c (test_c): should use S_ISCHR.
  4570.  
  4571.     * file.c (rb_stat_c): ditto.
  4572.  
  4573.     * string.c (rb_str_each_line): should propagate tainting.
  4574.  
  4575. Tue Jan 25 04:01:34 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4576.  
  4577.     * object.c (rb_obj_freeze): all objects made freezable.
  4578.  
  4579. Tue Jan 25 00:37:01 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4580.  
  4581.     * configure.in: use AC_CHECK_TOOL for cross compiling.
  4582.  
  4583. Mon Jan 24 19:01:54 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  4584.  
  4585.     * array.c (rb_protect_inspect): should be checked by id of
  4586.       objects; not by object themselves.
  4587.  
  4588. Mon Jan 24 18:48:08 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4589.  
  4590.     * eval.c (rb_eval): too many warnings;  warned on every method
  4591.       overriding.  should be on method discarding.
  4592.  
  4593. Mon Jan 24 02:56:44 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4594.  
  4595.     * parse.y (yylex): -2.abs should be `(-2).abs' to accomplish the
  4596.       principle of less surprise.  `+2' too.
  4597.  
  4598.     * eval.c (rb_eval): when defining class is already there, and
  4599.       superclass differ, throw away the old class.
  4600.  
  4601.     * variable.c (rb_const_set): gives warning again on constant
  4602.       redefinition.
  4603.  
  4604.     * error.c (Init_Exception): SyntaxError, NameError, LoadError and
  4605.       NotImplementError are subclasses of ScriptError<Exception, not
  4606.       StandardError.  experimental.
  4607.  
  4608. Sat Jan 22 00:00:41 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4609.  
  4610.     * parse.y (parse_quotedwords): no longer use `String#split'.
  4611.       and enable space escape within quoted word list.
  4612.       e.g. %w(a\ b\ c abc) => ["a b c", "abc"].
  4613.  
  4614.     * string.c (rb_str_slice_bang): new method `slice!'.
  4615.  
  4616. Fri Jan 21 21:56:08 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4617.  
  4618.     * lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.4.
  4619.  
  4620.     * lib/net/http.rb: can receive messages which have
  4621.       no Content-Length:.
  4622.  
  4623. Fri Jan 21 16:15:59 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4624.  
  4625.     * eval.c (thgroup_s_new): new class ThreadGroup.
  4626.  
  4627. Tue Jan 18 12:24:28 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4628.  
  4629.     * struct.c (Init_Struct): remove Struct's own hash and eql?.
  4630.  
  4631. Sat Jan 15 22:21:08 2000  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  4632.  
  4633.     * eval.c (search_method): argument klass may be 0.
  4634.  
  4635. Sat Jan 15 15:03:46 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4636.  
  4637.     * enum.c (enum_index): remove this method.
  4638.  
  4639.     * enum.c: remove use of pointers to local variables. find,
  4640.       find_all, min, max, index, member?, each_with_index, 
  4641.  
  4642.     * eval.c (massign): multiple assignment does not use to_a anymore.
  4643.       experimental.
  4644.  
  4645. Fri Jan 14 12:22:04 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4646.  
  4647.     * string.c (rb_str_replace): use memmove instead of memcpy for
  4648.       overwrapping strings (e.g. a[1] = a).
  4649.  
  4650. Thu Jan 13 11:12:40 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4651.  
  4652.     * parse.y (arg_add): use new node, ARGSPUSH.
  4653.  
  4654. Mon Jan 10 18:32:28 2000  Koji Arai  <JCA02266@nifty.ne.jp>
  4655.  
  4656.     * marshal.c (w_object): forgot an argument to call w_ivar().
  4657.  
  4658. Sun Jan  9 18:13:51 2000  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4659.  
  4660.     * random.c: first was not defined unless HAVE_RANDOM.
  4661.  
  4662. Sat Jan  8 19:02:49 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4663.  
  4664.     * io.c (rb_io_sysread): raise IOError for buffered IO.
  4665.  
  4666.     * ext/socket/socket.c (s_recv): ditto.
  4667.  
  4668. Fri Jan  7 00:59:29 2000  Masahiro Tomita  <tommy@tmtm.org>
  4669.  
  4670.     * io.c (io_fread): TRAP_BEG/TRAP_END added around getc().
  4671.  
  4672. Thu Jan  6 00:39:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4673.  
  4674.     * random.c (rb_f_rand): should be initialized unless srand is
  4675.       called before.
  4676.  
  4677. Wed Jan  5 16:59:34 2000  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4678.  
  4679.     * lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.3.
  4680.  
  4681.     * lib/net/session.rb: Session -> Protocol, ...
  4682.  
  4683.     * lib/net/http.rb: HTTPCommand implementation was changed.
  4684.  
  4685. Wed Jan  5 02:14:46 2000  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  4686.  
  4687.     * parse.y: Fix SEGV on empty parens with UMINUS or UPLUS.
  4688.  
  4689. Tue Jan  4 22:25:54 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4690.  
  4691.     * parse.y (stmt): `() while cond' dumped core.
  4692.  
  4693. Tue Jan  4 06:04:14 2000  WATANABE Hirofumi  <eban@os.rim.or.jp>
  4694.  
  4695.     * configure.in: modify for cross-compiling.
  4696.       use target_* instead of host_*. 
  4697.       use AC_CANONICAL_TARGET.
  4698.  
  4699.     * Makefile.in: ditto.
  4700.  
  4701.     * cygwin/GNUmakefile.in: ditto.
  4702.  
  4703. Sat Jan  1 13:26:14 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4704.  
  4705.     * eval.c (rb_yield_0): force_recycle ruby_dyna_vars to gain
  4706.       performance.
  4707.  
  4708.     * array.c (rb_ary_delete_at_m): takes same argument pattern with
  4709.       rb_ary_aref.
  4710.  
  4711. Sat Jan  1 10:12:26 2000  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
  4712.  
  4713.     * ruby.h,util.c (rb_special_const_p): peep hole optimization.
  4714.  
  4715.     * ruby.h,util.c (rb_test_false_or_nil): removed.
  4716.  
  4717.     * ruby.h (RTEST, SPECIAL_CONST_P): peep hole optimization.
  4718.  
  4719.     * ruby.h (FL_ABLE, FL_SET, FL_UNSET, FL_REVERSE): made expressions
  4720.       not statements.
  4721.  
  4722.     * ruby.h (OBJ_INFECT): newly added macro which copies taint from
  4723.       `s' to `x'.
  4724.  
  4725. Sat Jan  1 02:04:18 2000  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4726.  
  4727.     * eval.c (rb_thread_safe_level): new method.
  4728.  
  4729.     * eval.c (rb_yield_0): recycle dyna_var_map to reduce object
  4730.       allocation. 
  4731.  
  4732. Fri Dec 31 00:52:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4733.  
  4734.     * eval.c: thread independent trace_func not needed.
  4735.  
  4736. Thu Dec 30 14:47:31 1999  akira yamada  <akira@ruby-lang.org>
  4737.  
  4738.     * configure.in: specifies -soname in LIBRUBY_DLDFLAGS on linux
  4739.       platforms.
  4740.  
  4741. Thu Dec 30 10:51:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4742.  
  4743.     * array.c,io.c,hash,c,re.c,string.c: `_m' suffix instead of
  4744.       `_method' for wrapper functions to implement method,
  4745.       e.g. `rb_str_join_m()'.
  4746.  
  4747. Thu Dec 30 02:08:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4748.  
  4749.     * bignum.c (rb_cstr2inum): non-numeric format check added.
  4750.       currently it works only with base == 0 (i.e. Integer()).
  4751.  
  4752.     * bignum.c (rb_str2inum): now takes VALUE to 1st argument.  null
  4753.       byte check added.
  4754.  
  4755.     * array.c (rb_ary_replace): unless replacement is an array,
  4756.       replacement shall be converted to array by `[replacement]', not
  4757.       by `replacement.to_a'.
  4758.  
  4759.     * array.c (rb_ary_plus): right operand must be an array.
  4760.  
  4761.     * array.c (rb_ary_concat): argument must be an array.
  4762.  
  4763. Mon Dec 27 12:35:47 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4764.  
  4765.     * ext/socket/socket.c (sock_finalize): mswin32: fix socket handle leak.
  4766.  
  4767.     * win32/win32.c (myfdclose): ditto.
  4768.  
  4769. Sun Dec 26 23:15:13 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4770.  
  4771.     * win32/win32.c (mypopen): raise catchable error instead of rb_fatal.
  4772.     * win32/win32.c (mypclose): fix process handle leak.
  4773.  
  4774. Sun Dec 26 16:17:11 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4775.  
  4776.     * ext/Win32API/Win32API.c (Win32API_initialize): use UINT2NUM
  4777.       instead of INT2NUM to set __dll__ and __proc__.
  4778.  
  4779. Sat Dec 25 00:08:59 1999  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>
  4780.  
  4781.     * ext/Win32API/Win32API.c (Win32API_Call): remove 'dword ptr'
  4782.       from _asm.
  4783.  
  4784. Fri Dec 24 10:26:47 1999  Koji Oda  <oda@bsd1.qnes.nec.co.jp>
  4785.  
  4786.     * win32/win32.h: use "C++" linkage.
  4787.  
  4788. Fri Dec 24 02:00:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4789.  
  4790.     * eval.c (THREAD_ALLOC): should initialize th->trace.
  4791.  
  4792. Fri Dec 24 00:43:39 1999  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>
  4793.  
  4794.     * io.c (pipe_open): check for `fptr->f == NULL'.
  4795.     * win32/win32.c (mypopen): STDERR does not work during ` function.
  4796.  
  4797. Wed Dec 22 22:50:40 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4798.  
  4799.     * lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.2.
  4800.  
  4801.     * lib/net/http.rb: HTTP support is enhanced a little
  4802.  
  4803.     * lib/net/http.rb: support proxy
  4804.  
  4805. Tue Dec 21 17:21:28 1999  Koji Oda  <oda@bsd1.qnes.nec.co.jp>
  4806.  
  4807.     * ext/socket/socket.c (sock_finalize): mswin32: fix FILE* leak.
  4808.  
  4809. Tue Dec 21 05:33:56 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4810.  
  4811.     * lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.1.
  4812.  
  4813.     * lib/net/http.rb: support HTTP chunk
  4814.  
  4815. Mon Dec 20 19:08:12 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  4816.  
  4817.     * file.c (rb_file_s_expand_path): handle dir separator correctly.
  4818.  
  4819. Sun Dec 19 22:56:31 1999  KANEKO Naoshi  <wbs01621@mail.wbs.ne.jp>
  4820.  
  4821.     * lib/find.rb: support dosish root directory.
  4822.     * win32/Makefile: ditto.
  4823.     * win32/config.status: ditto.
  4824.     * win32/win32.c (opendir): ditto.
  4825.     * win32/win32.c (opendir): use CharPrev() to get last character
  4826.       of the directory name.
  4827.  
  4828. Sat Dec 18 03:00:01 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4829.  
  4830.     * file.c (path_check_1): check should be done by absolute path. 
  4831.  
  4832.     * marshal.c (r_ivar): should restore generic_ivar too.
  4833.  
  4834.     * marshal.c (w_ivar): should dump generic_ivar too.
  4835.  
  4836. Fri Dec 17 22:46:46 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  4837.  
  4838.     * lib/net/session.rb, smtp.rb, pop.rb, http.rb: 1.1.0.
  4839.  
  4840.     * lib/net/http.rb: test release
  4841.  
  4842.     * lib/net/session.rb: support class swapping
  4843.  
  4844.     * lib/net/session.rb: Socket#flush_rbuf
  4845.  
  4846.     * lib/net/session.rb: doquote -> Net.quote
  4847.  
  4848. Fri Dec 17 19:27:43 1999  IWAMURO Motonori  <iwa@mmp.fujitsu.co.jp>
  4849.  
  4850.     * eval.c (rb_load): should initialize ruby_frame->last_class.
  4851.  
  4852. Wed Dec 15 01:35:29 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4853.  
  4854.     * ruby.c (proc_options): option to change directory changed to
  4855.       `-C' like tar.
  4856.  
  4857.     * ruby.c (proc_options): argv boundary check for `-X'.
  4858.  
  4859. Mon Dec 13 15:15:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4860.  
  4861.     * regex.c (re_adjust_startpos): separate startpos adjustment
  4862.       because of major performance drawback.
  4863.  
  4864.     * class.c (rb_singleton_class): tainted status of the singleton
  4865.       class must be synchronized with the object.
  4866.  
  4867.     * eval.c (rb_thread_schedule): implement thread priority.
  4868.  
  4869. Sat Dec 11 03:34:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4870.  
  4871.     * gc.c (mark_hashentry): key should be VALUE, not ID.
  4872.  
  4873.     * io.c (argf_eof): should check next_p too.
  4874.  
  4875. Thu Dec  9 18:09:13 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  4876.  
  4877.     * error.c (exc_set_backtrace): forgot to declare a VALUE argument.
  4878.  
  4879. Thu Dec  9 14:19:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4880.  
  4881.     * object.c (rb_obj_taint): explicit tainting must be prohibited at
  4882.       level 4 to prevent polluting trusted object by untrusted code.
  4883.  
  4884.     * file.c: file operations (stat, lstat, chmod, chown, umask,
  4885.       truncate, flock) are prohibited in level 2 (was level 4).
  4886.  
  4887. Wed Dec  8 11:48:23 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4888.  
  4889.     * eval.c (rb_f_require): prohibiting require() in the secure mode
  4890.       cause serious autoloading error.
  4891.  
  4892.     * variable.c (rb_obj_instance_variables): don't need to prohibit
  4893.       to get list of instance variable names of untainted objects.
  4894.  
  4895.     * variable.c (rb_ivar_get): don't need to prohibit to get instance
  4896.       variables of untainted objects.
  4897.  
  4898.     * variable.c (rb_mod_remove_const): should prohibit constant
  4899.       removals too. 
  4900.  
  4901. Wed Dec  8 09:23:01 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4902.  
  4903.     * eval.c (rb_eval): should try autoloading before defining
  4904.       class/module at the toplevel.
  4905.  
  4906. Tue Dec  7 22:15:30 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  4907.  
  4908.     * configure.in: Modified rb_cv_rshift_sign detect routine and
  4909.       more simple/fast RSHIFT() for hpux-10.x.
  4910.  
  4911. Tue Dec  7 11:16:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4912.  
  4913.     * eval.c (Init_eval): calculate stack limit from rlimit where
  4914.       getrlimit(2) is available.
  4915.  
  4916. Tue Dec  7 09:57:33 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  4917.  
  4918.     * file.c (rb_file_ftype): should have removed mode_t.
  4919.  
  4920. Mon Dec  6 15:55:30 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  4921.  
  4922.     * numeric.c (fix_rshift): Fix -1 >> 32 returned 0 (should be -1).
  4923.  
  4924.     * numeric.c (fix_rshift): Fix  1 >> -1 returned 0 (should be 2).
  4925.  
  4926. Mon Dec  6 11:47:23 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4927.  
  4928.     * sprintf.c (rb_f_sprintf): formatted string must be tainted if
  4929.       any of parameters is a tainted string.
  4930.  
  4931.     * file.c (rb_file_s_expand_path): expanded file path need not to
  4932.       be tainted always.
  4933.  
  4934. Sun Dec  5 20:25:29 1999  Katsuhiro Ueno  <unnie@blue.sky.or.jp>
  4935.  
  4936.     * eval.c (Init_Proc): simple typo.
  4937.  
  4938.     * gc.c (add_heap): sizeof(RVALUE*), not sizeof(RVALUE).
  4939.  
  4940. Sat Dec  4 01:40:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4941.  
  4942.     * regex.c (re_search): adjust startpos for multibyte match unless
  4943.       the first pattern is forced byte match.
  4944.  
  4945.     * bignum.c (rb_big_rand): should not use rand/random where drand48
  4946.       may be available.  RANDOM_NUMBER should be provided from outside.
  4947.  
  4948. Fri Dec  3 09:54:59 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4949.  
  4950.     * ruby.c (moreswitches): there may be trailing garbage at #!
  4951.       line.
  4952.  
  4953.     * eval.c (rb_f_require): should check require 'feature.o' too.
  4954.  
  4955. Thu Dec  2 11:58:15 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  4956.  
  4957.     * eval.c (rb_thread_loading): should maintain loading_tbl.
  4958.  
  4959. Thu Dec  2 10:21:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4960.  
  4961.     * eval.c (rb_thread_loading_done): wrong parameter to st_delete().
  4962.  
  4963. Wed Dec  1 11:24:06 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  4964.  
  4965.     * ruby.c (process_sflag): process -s properly (should not force `--').
  4966.  
  4967. Wed Dec  1 09:47:33 1999  Kazunori NISHI  <kazunori@swlab.csce.kyushu-u.ac.jp>
  4968.  
  4969.     * string.c (rb_str_split_method): should increment end too.
  4970.  
  4971. Tue Nov 30 18:00:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4972.  
  4973.     * marshal.c: MARSHAL_MINOR incremented; format version is 4.2.
  4974.  
  4975.     * marshal.c (w_object): distinguish class and module.
  4976.  
  4977.     * marshal.c (w_object): save hash's default value.
  4978.  
  4979.     * marshal.c (r_object): restore hash's default value.
  4980.  
  4981. Tue Nov 30 01:46:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4982.  
  4983.     * re.c (rb_reg_source): generated source string must be tainted if
  4984.       regex is tainted.
  4985.  
  4986.     * file.c (rb_file_s_basename): basename should not be tainted
  4987.       unless the original path is tainted.
  4988.  
  4989.     * file.c (rb_file_s_dirname): ditto.
  4990.  
  4991. Mon Nov 29 20:42:13 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  4992.  
  4993.     * file.c (stat_new): Struct::Stat -> File::Stat; Stat is no longer
  4994.       a Struct.
  4995.  
  4996. Mon Nov 29 15:28:52 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  4997.  
  4998.     * variable.c (rb_path2class): evaluated value from path should be
  4999.       module or class.
  5000.  
  5001. Fri Nov 26 18:12:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5002.  
  5003.     * eval.c (rb_exec_end_proc): should remove only end_procs defined
  5004.       within load wrapper.
  5005.  
  5006.     * eval.c (rb_load): save and restore ruby_wrapper around loading.
  5007.  
  5008.     * eval.c (rb_mark_end_proc): mark end procs registered by END{} or
  5009.       at_exit{}. 
  5010.  
  5011.     * eval.c (rb_set_end_proc): should not call rb_global_variable()
  5012.       on heap address;  it crashed mod_ruby.
  5013.  
  5014. Mon Nov 22 14:07:24 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  5015.  
  5016.     * ruby.c (proc_options): variable e_script should be visited by
  5017.       garbage collector.
  5018.  
  5019. Sat Nov 20 10:10:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5020.  
  5021.     * hash.c (inspect_i): value may be nil, check revised.
  5022.  
  5023. Fri Nov 19 18:06:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5024.  
  5025.     * dir.c (glob): recursive wildcard match by `**' ala zsh.
  5026.  
  5027. Fri Nov 19 11:44:26 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5028.  
  5029.     * variable.c: was returning void value.
  5030.  
  5031. Fri Nov 19 03:57:22 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  5032.  
  5033.     * file.c: add methods Stat struct class to reduce stat(2).
  5034.  
  5035. Thu Nov 18 16:18:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5036.  
  5037.     * lib/pstore.rb: mutual lock by flock(2).
  5038.  
  5039. Thu Nov 18 11:44:13 1999  Masahiro Tomita  <tommy@tmtm.org>
  5040.  
  5041.     * io.c (read_all): should check bytes too.
  5042.  
  5043. Wed Nov 17 02:40:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5044.  
  5045.     * io.c (Init_IO): $defout (alias of $>) added.
  5046.  
  5047. Tue Nov 16 09:47:14 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5048.  
  5049.     * lib/pstore.rb: add mutual lock using symlink.
  5050.  
  5051. Mon Nov 15 16:50:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5052.  
  5053.     * enum.c (enum_grep): non matching grep returns an empty array, no
  5054.       longer returns nil.
  5055.  
  5056.     * enum.c (enum_grep): grep with block returns collection of
  5057.       evaluated values of block over matched elements.
  5058.  
  5059. Mon Nov 15 04:50:33 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  5060.  
  5061.     * re.c (rb_reg_source): should not call rb_reg_expr_str()
  5062.       everytime.
  5063.  
  5064. Sat Nov 13 07:34:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5065.  
  5066.     * variable.c (rb_mod_constants): traverse superclasses to collect
  5067.       constants.
  5068.  
  5069.     * eval.c (assign): modified for shared variables.
  5070.  
  5071.     * eval.c (rb_eval): search nested scope, then superclasses to
  5072.       assign shared variables within methods.
  5073.  
  5074.     * eval.c (rb_eval): remove warnings from constants modification,
  5075.       because they are no longer constants.
  5076.  
  5077.     * parse.y (node_assign): modified for shared variables.
  5078.  
  5079.     * parse.y (assignable): allow constant assignment in methods;
  5080.       constants should be called `shared variable'.
  5081.  
  5082. Fri Nov 12 23:52:19 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5083.  
  5084.     * process.c (rb_f_system): argument check for NT, __EMX__, DJGPP.
  5085.  
  5086. Wed Nov 10 21:54:11 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5087.  
  5088.     * hash.c (rb_any_cmp): Fixed return without value.
  5089.  
  5090. Wed Nov 10 17:57:06 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5091.  
  5092.     * sprintf.c: incorporate <yasuf@big.or.jp>'s sprintf patch at
  5093.       [ruby-dev:7754]. 
  5094.  
  5095. Wed Nov 10 08:28:53 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5096.  
  5097.     * eval.c (rb_call0): supply class parameter for each invocation.
  5098.  
  5099. Tue Nov  9 13:21:04 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5100.  
  5101.     * configure.in: AC_MINIX move to before AC_EXEEXT and AC_OBJEXT.
  5102.  
  5103. Mon Nov  8 19:52:29 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5104.  
  5105.     * configure.in: Renamed AC_CHAR_UNSIGNED to AC_C_CHAR_UNSIGNED.
  5106.  
  5107.     * configure.in: Added default to AC_CHECK_SIZEOF().
  5108.  
  5109. Mon Nov  8 14:28:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5110.  
  5111.     * parse.y (stmt): rescue modifier added to the syntax.
  5112.  
  5113.     * keywords: kRESCUE_MOD added.
  5114.  
  5115.     * eval.c (rb_f_eval): fake outer scope when eval() called without
  5116.       bindings.
  5117.  
  5118.     * eval.c (rb_f_binding): should copy last_class in the outer frame too.
  5119.  
  5120. Sun Nov  7 18:31:04 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  5121.  
  5122.     * eval.c (is_defined): last_class may be 0.
  5123.  
  5124. Sat Nov  6 19:26:55 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5125.  
  5126.     * Makefile.in: Added depend entry make parse.@OBJEXT@ from parse.c
  5127.       for UCB make
  5128.  
  5129. Thu Nov  4 17:41:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5130.  
  5131.     * regex.c (re_compile_pattern): \< (wordbeg), \> (wordend) disabled.
  5132.  
  5133. Wed Nov  3 08:52:57 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>
  5134.  
  5135.     * io.c (Init_IO): forgot to use INT2FIX() around SEEK_SET, etc. 
  5136.  
  5137. Wed Nov  3 00:25:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5138.  
  5139.     * string.c (rb_str_split_method): use mbclen2() to handle kcode
  5140.       option of regexp objects.
  5141.  
  5142. Mon Nov  1 14:22:15 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5143.  
  5144.     * eval.c (rb_eval): reduce recursive calls to rb_eval()
  5145.       case of ||= and &&= .
  5146.  
  5147. Sun Oct 31 13:12:42 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5148.  
  5149.     * regex.c (re_compile_pattern): wrong [\W] match.
  5150.  
  5151. Fri Oct 29 16:57:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5152.  
  5153.     * ext/nkf/lib/kconv.rb: new String methods (kconv, tojis, toeuc,
  5154.       tosjis).
  5155.  
  5156.     * time.c (time_s_at): now accepts optional second argument to
  5157.       specify micro second.
  5158.  
  5159. Thu Oct 28 13:35:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5160.  
  5161.     * string.c (rb_str_split_method): should be mbchar aware with
  5162.       single char separators.
  5163.  
  5164. Wed Oct 27 12:57:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5165.  
  5166.     * random.c (rb_f_srand): random seed should be unsigned.
  5167.  
  5168. Tue Oct 26 23:58:15 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5169.  
  5170.     * array.c (rb_ary_collect): collect for better performance.
  5171.  
  5172. Tue Oct 26 19:20:54 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  5173.  
  5174.     * marshal.c (r_object): should register class/module objects.
  5175.  
  5176. Sat Oct 23 15:59:39 1999  Takaaki Tateishi  <ttate@jaist.ac.jp>
  5177.  
  5178.     * process.c (rb_f_system): should require at least one argument.
  5179.  
  5180. Sat Oct 23 12:42:44 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  5181.  
  5182.     * enum.c (enum_collect): collect without block will collect
  5183.       elements in enumerable.
  5184.  
  5185. Thu Oct 21 16:14:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5186.  
  5187.     * ruby.c (moreswitches): function to process string option;
  5188.       the name is stolen from perl (not implementation).
  5189.  
  5190.     * ruby.c (proc_options): use RUBYOPT environment variable to
  5191.       retrieve the default options.
  5192.  
  5193.     * dir.c (fnmatch): use eban's fnmatch; do not depend on system's
  5194.       fnmatch (which may have portability problem) anymore.
  5195.  
  5196. Wed Oct 20 15:14:24 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5197.  
  5198.     * marshal.c (marshal_load): should protect the generated object
  5199.       table (arg->data) from GC.
  5200.  
  5201. Mon Oct 18 16:15:52 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5202.  
  5203.     * ext/nkf/nkf.c (rb_nkf_kconv): output should be NUL terminated.
  5204.  
  5205. Mon Oct 18 09:03:01 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  5206.  
  5207.     * lib/net/session.rb, smtp.rb, pop.rb: 1.0.3
  5208.  
  5209.     * lib/net/pop.rb: new methods POP3Command#uidl, POPMail#uidl.
  5210.  
  5211. Sun Oct 17 03:35:33 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>
  5212.  
  5213.     * array.c (rb_ary_pop): forgot some freeze checks.
  5214.  
  5215. Sat Oct 16 12:57:53 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5216.  
  5217.     * array.c (rb_ary_sort): always returns the copied array.
  5218.  
  5219. Fri Oct 15 22:50:41 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5220.  
  5221.     * error.c (sys_nerr): on CYGWIN, it is _sys_nerr.
  5222.  
  5223. Fri Oct 15 01:32:31 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5224.  
  5225.     * io.c (rb_io_ctl) :need to use NUM2ULONG, not NUM2INT.
  5226.  
  5227.     * ext/Win32API/Win32API.c (Win32API_Call): need to use NUM2ULONG,
  5228.       not NUM2INT.
  5229.  
  5230. Fri Oct 15 00:22:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5231.  
  5232.     * re.c (Init_Regexp): super class of the MatchingData, which was
  5233.       Data, to be Object.
  5234.  
  5235.     * eval.c (ruby_run): evaluate required libraries before load &
  5236.       compiling the script.
  5237.  
  5238.     * parse.y (lex_getline): retrieve a line from the stream, saving
  5239.       lines in the table in debug mode.
  5240.  
  5241.     * eval.c (call_trace_func): treat the case ruby_sourcefile is null.
  5242.  
  5243. Thu Oct 14 02:00:10 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5244.  
  5245.     * parse.y (string): compile time string concatenation.
  5246.  
  5247. Wed Oct 13 07:28:09 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  5248.  
  5249.     * lib/net/session.rb, smtp.rb, pop.rb: 1.0.2
  5250.  
  5251.     * lib/net/session.rb: new method Session#set_pipe.
  5252.  
  5253.     * lib/net/session.rb, smtp.rb, pop.rb: add RD documentation.
  5254.  
  5255. Wed Oct 13 02:17:05 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5256.  
  5257.     * array.c (rb_ary_plus): remove recursion.
  5258.  
  5259.     * array.c (rb_ary_sort_bang): detect modify attempt.
  5260.  
  5261. Wed Oct 13 02:17:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5262.  
  5263.     * eval.c (block_pass): should copy block to prevent modifications.
  5264.       tag in the structure should be updated from latest prot_tag.
  5265.  
  5266.     * eval.c (proc_s_new): tag in struct BLOCK should not point into
  5267.       unused stack.
  5268.  
  5269.     * dir.c (dir_s_glob): iterate over generated matching filenames if
  5270.       the block is given to the method.
  5271.  
  5272.     * array.c (rb_ary_at): new methods; at, first, last.
  5273.  
  5274.     * hash.c (rb_hash_fetch): raises exception unless the default
  5275.       value is supplied.
  5276.  
  5277.     * hash.c (rb_hash_s_create): need not remove nil from value.
  5278.  
  5279.     * hash.c (rb_hash_aset): setting value to nil does not remove key
  5280.       anymore.
  5281.  
  5282. Tue Oct 12 22:29:04 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5283.  
  5284.     * io.c (io_read): length may be 0 or negative.
  5285.  
  5286. Tue Oct 12 13:26:27 1999  Jun-ichiro itojun Hagino  <itojun@itojun.org>
  5287.  
  5288.     * signal.c (posix_signal): RETSIGTYPE may be void.
  5289.  
  5290. Tue Oct 12 03:28:03 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5291.  
  5292.     * array.c (rb_ary_delete_at): allows negative position.
  5293.  
  5294. Mon Oct 11 17:42:25 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  5295.  
  5296.     * parse.y (rb_intern): should generate distinct ID_ATTRSET symbols
  5297.       for the name with multiple `='s at the end.
  5298.  
  5299.     * Makefile.in (CPPFLAGS): separate cpp flags from CFLAGS.
  5300.  
  5301. Mon Oct 11 07:27:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5302.  
  5303.     * eval.c (rb_eval): should not execute the `else' clause on the
  5304.       case the exceptions are handled by the `rescue' clause.
  5305.  
  5306.     * signal.c (Init_signal): ignore SIGPIPE by default.
  5307.  
  5308. Wed Oct  6 17:13:19 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  5309.  
  5310.     * ruby.c (addpath): rubylib_mangled_path() modified.
  5311.  
  5312. Mon Oct  4 12:42:32 1999  Kazuhiko Izawa  <izawa@erec.che.tohoku.ac.jp>
  5313.  
  5314.     * pack.c (pack_unpack): % in printf format should be %%.
  5315.  
  5316. Mon Oct  4 10:01:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5317.  
  5318.     * variable.c (rb_obj_instance_variables): should always return
  5319.       array for all object can have instance variables now.
  5320.  
  5321. Mon Oct  4 00:08:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5322.  
  5323.     * pack.c (OFF16): need to adjust pointer address to pack/unpack on
  5324.       64bit machines.
  5325.  
  5326. Sun Oct 03 03:05:59 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5327.  
  5328.     * time.c (time_arg): mktime y2k problem.
  5329.  
  5330. Sun Sep 26 16:54:45 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5331.  
  5332.     * parse.y (here_document): `\r' handling for here documents.
  5333.  
  5334. Wed Sep 22 09:20:11 1999  Masahiro Tomita  <tommy@tmtm.org>
  5335.  
  5336.     * ext/socket/socket.c: SOCKS5 support.
  5337.  
  5338. Wed Sep 22 07:33:23 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  5339.  
  5340.     * lib/net/session.rb, smtp.rb, pop.rb: 1.0.1
  5341.  
  5342.     * lib/net/pop.rb: APOP did not work.
  5343.  
  5344.     * lib/net/pop.rb: modify the way to make APOP challenge.
  5345.  
  5346. Wed Sep 22 00:35:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5347.  
  5348.     * string.c (rb_str_include): should return boolean value.
  5349.  
  5350.     * regex.c (re_compile_fastmap): wrong comparison with mbc.
  5351.  
  5352.     * eval.c (specific_eval): default sourcefile name should be
  5353.       "(eval)" for module_eval etc.
  5354.  
  5355. Wed Sep 22 00:06:07 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5356.  
  5357.     * win32/Makefile: update rules.
  5358.  
  5359.     * io.c (io_fread): should not assign in char, it maybe -1.
  5360.  
  5361. Tue Sep 21 23:57:54 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5362.  
  5363.     * eval.c (call_trace_func): should not propagate retval in
  5364.       trace_func. 
  5365.  
  5366. Mon Sep 20 21:35:39 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5367.  
  5368.     * win32/win32.c (myselect): assume non socket files are always
  5369.       readable/writable.
  5370.  
  5371. Mon Sep 20 01:08:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5372.  
  5373.     * io.c (io_fread): should not block other threads.
  5374.  
  5375.     * io.c (rb_io_synchronized): renamed from rb_io_unbuffered(); do
  5376.       not call setbuf(NULL) anymore.
  5377.  
  5378. Sat Sep 18 13:45:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5379.  
  5380.     * stable version 1.4.2 released.
  5381.  
  5382. Fri Sep 17 23:24:17 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5383.  
  5384.     * eval.c (rb_f_missing): dumped core if no argument given.
  5385.  
  5386. Fri Sep 17 23:21:06 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5387.  
  5388.     * win32/win32.c (myselect): translate WSAEINTR, WSAENOTSOCK into
  5389.       UNIX errno constants.
  5390.  
  5391. Fri Sep 17 00:52:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5392.  
  5393.     * parse.y (arg): assignable() may return 0.
  5394.  
  5395. Thu Sep 16 20:46:23 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5396.  
  5397.     * eval.c (rb_eval): was doubly evaluating the return expression.
  5398.  
  5399. Thu Sep 16 18:40:08 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5400.  
  5401.     * stable version 1.4.1 released.
  5402.  
  5403. Thu Sep 16 11:33:22 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5404.  
  5405.     * string.c (rb_str_match): should return nil.
  5406.  
  5407. Wed Sep 15 22:46:37 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5408.  
  5409.     * re.c (rb_reg_s_quote): should quote `-' too.
  5410.  
  5411. Tue Sep 14 15:23:22 1999  Nobuyoshi Nakada  <nobu.nakada@nifty.ne.jp>
  5412.  
  5413.     * parse.y (yylex): no need to ignore `\r' here.
  5414.  
  5415.     * parse.y (nextc): strip `\r' from text.
  5416.  
  5417.     * parse.y (nextc): support `__END__\r\n' type terminator.
  5418.  
  5419. Mon Sep 13 10:49:19 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5420.  
  5421.     * eval.c (rb_eval): needless RTEST(ruby_verbose) removed.
  5422.  
  5423. Mon Sep 13 09:10:11 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  5424.  
  5425.     * lib/net/session.rb, smtp.rb, pop.rb: 1.0.0
  5426.  
  5427. Wed Sep  8 11:37:38 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  5428.  
  5429.     * time.c (make_time_t): bit more strict comparison.
  5430.  
  5431. Tue Sep  7 00:50:56 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5432.  
  5433.     * range.c (range_each): use rb_str_upto() for strings.
  5434.  
  5435.     * string.c (rb_str_upto): set upper limit by comparing curr <= end.
  5436.  
  5437.     * range.c (range_each): should check equality to handle magic
  5438.       increment.
  5439.  
  5440. Mon Sep  6 22:43:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5441.  
  5442.     * eval.c (rb_eval): break/next/redo available within -n/-p loop.
  5443.  
  5444. Fri Sep  3 11:14:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5445.  
  5446.     * compar.c (cmp_equal): should not raise exception; protect by
  5447.       rb_rescue().
  5448.  
  5449. Thu Sep  2 05:23:05 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5450.  
  5451.     * file.c (rb_file_s_expand_path): use dirsep, instead of character
  5452.       literal '/'.
  5453.  
  5454.     * file.c (rb_file_s_expand_path): reduce multiple dirsep at the top.
  5455.  
  5456. Wed Sep  1 00:28:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5457.  
  5458.     * eval.c (rb_call): call rb_undefined() if a method appears not to
  5459.       be exist explicitly from cache.
  5460.  
  5461.     * eval.c (rb_method_boundp): check method cache before calling
  5462.       rb_get_method_body().
  5463.  
  5464.     * eval.c (rb_get_method_body): store method non-existence
  5465.       information in the cache.
  5466.  
  5467.     * random.c (rb_f_srand): use getpid(2) to generate seed.
  5468.  
  5469.     * regex.c (re_match): do not apply partial mbc match for
  5470.       charset_not.
  5471.  
  5472.     * regex.c (re_compile_pattern): put extended literal prefix (0xff)
  5473.       only before numeric literals, not before all >0x80 char.
  5474.  
  5475.     * regex.c (re_compile_pattern): put numeric literal in extended
  5476.       charset region, not normal charset bits.
  5477.  
  5478.     * regex.c (re_compile_fastmap): calculate fastmap for charset and
  5479.       charset_not to treat numeric literal (e.g. \246) specially.
  5480.  
  5481. Fri Aug 28 17:32:55 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  5482.  
  5483.     * eval.c (rb_eval): should set return value (nil) explicitly if a
  5484.       value is omitted for return statement.
  5485.  
  5486. Thu Aug 26 15:06:11 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>
  5487.  
  5488.     * gc.c (rb_gc): local variables may be placed beyond stack_end, so
  5489.       use an address from alloca(1) on non C_ALLOCA platforms.
  5490.  
  5491. Thu Aug 26 01:24:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5492.  
  5493.     * sprintf.c (rb_f_sprintf): "%%" is legal, but "%3.14%" is not.
  5494.  
  5495. Mon Aug 23 00:00:54 1999  Tsukada Takuya  <tsukada@fminn.nagano.nagano.jp>
  5496.  
  5497.     * regex.c (re_compile_fastmap): wrong macro caused memory leak.
  5498.  
  5499. Sat Aug 21 11:30:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5500.  
  5501.     * eval.c (ADJ): should not adjust addresses to data on heap.
  5502.  
  5503. Fri Aug 20 20:50:58 1999  Kenji Nagasawa  <kenn@hma.att.ne.jp>
  5504.  
  5505.     * defines.h (PATH_SEP): path separator is ";" for OS/2.
  5506.  
  5507. Thu Aug 19 10:50:43 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  5508.  
  5509.     * gc.c (rb_gc): add volatile to avoid GCC optimize bug(?).
  5510.  
  5511. Wed Aug 18 23:48:10 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5512.  
  5513.     * due to disk trouble, some change records were lost.  several
  5514.       modification made to eval.c, gc.c, io.c, pack.c,
  5515.       ext/extmk.rb.in, and lib/mkmf.rb.
  5516.  
  5517. Fri Aug 13 15:41:39 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5518.  
  5519.     * stable version 1.4.0 released.
  5520.  
  5521. Fri Aug 13 03:16:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5522.  
  5523.     * io.c (argf_forward): since $stdout may be non-IO, ARGF.file is
  5524.       not guaranteed to be IO.  check and forwarding added to every ARGF
  5525.       method.
  5526.  
  5527.     * io.c (set_outfile): $stdout/$stderr may not be IO now.
  5528.  
  5529.     * io.c (set_stdin): $stdin may not be IO now.
  5530.  
  5531.     * range.c (rb_range_beg_len): round `end' to length as documented.
  5532.  
  5533.     * io.c (Init_IO): preserve original stdin/stdout/stderr.
  5534.  
  5535. Thu Aug 12 13:44:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5536.  
  5537.     * eval.c (Init_load): require receives 1 argument.
  5538.  
  5539.     * eval.c (frame_dup): should clear tmp to avoid dangling
  5540.       references.
  5541.  
  5542. Wed Aug 11 13:33:13 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5543.  
  5544.     * eval.c (rb_eval): no automatic aggregate initialization.
  5545.  
  5546.     * eval.c (module_setup): ditto.
  5547.  
  5548. Wed Aug 11 18:18:41 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  5549.  
  5550.     * eval.c (yield_under_i): automatic aggregate initialization is an
  5551.       ANSI feature.
  5552.  
  5553. Wed Aug 11 10:10:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5554.  
  5555.     * parse.y (yylex): parse `[].length==0' as `([].length)==0', not
  5556.       `([].length=)=0'
  5557.  
  5558.     * parse.y (yylex): parse `[].length!=0' as `([].length)!=0', not
  5559.       `([].length!)=0'
  5560.  
  5561.     * parse.y (peek): peek-in lexical buffer.
  5562.  
  5563. Wed Aug 11 00:34:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5564.  
  5565.     * regex.c (re_match): bug on backward jump adjustment concerning
  5566.       stop_paren.
  5567.  
  5568. Tue Aug 10 14:54:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5569.  
  5570.     * ext/nkf/nkf.c (rb_nkf_guess): binary detection was wrong.
  5571.  
  5572. Tue Aug 10 00:07:36 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5573.  
  5574.     * io.c (rb_io_clone): should use CLONESETUP().
  5575.  
  5576. Mon Aug  9 23:57:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5577.  
  5578.     * ruby.h (CLONESETUP): should have copied generic instance
  5579.       variables too.
  5580.  
  5581. Mon Aug  9 10:46:54 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5582.  
  5583.     * ext/socket/extconf.rb: add check for <arpa/nameser.h> and
  5584.       <resolv.h>.
  5585.  
  5586. Sat Aug  7 13:19:06 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5587.  
  5588.     * numeric.c (flo_cmp): comparing NaN should not return value.
  5589.       raises FloatDomainError.
  5590.  
  5591. Sat Aug  7 03:09:08 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5592.  
  5593.     * eval.c (blk_free): free copied frames too.
  5594.  
  5595.     * eval.c (frame_dup): should copy previous frames from stack to
  5596.       heap to preserve frame information.
  5597.  
  5598. Fri Aug  6 15:01:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5599.  
  5600.     * version 1.3.7 - version 1.4 beta
  5601.  
  5602.     * ext/socket/socket.c (s_recv): UDPsocket#recvfrom now returns
  5603.       IPsocket#addr information.
  5604.  
  5605.     * array.c (rb_ary_subary): ary[-3,3] should not return nil.
  5606.  
  5607. Thu Aug  5 10:58:01 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5608.  
  5609.     * eval.c (thread_mark): protect old ruby_frame from GC during it
  5610.       replaced by eval().
  5611.  
  5612.     * eval.c (eval): do not modify frame.prev; binding should preserve
  5613.       information about calling() too.
  5614.  
  5615.     * eval.c (rb_yield_0): no arity check for mere yield; but only for
  5616.       Proc#call.
  5617.  
  5618. Tue Aug  3 22:07:13 1999  Kazuhiro HIWADA  <hiwada@kuee.kyoto-u.ac.jp>
  5619.  
  5620.     * object.c (rb_mod_clone): should check if iv_tbl, m_tbl are
  5621.       initialized.
  5622.  
  5623. Tue Aug  3 19:03:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5624.  
  5625.     * hash.c (rb_any_cmp): use rb_with_disable_interrupt() to ensure
  5626.       clearance of rb_prohibit_interrupt even on failure.
  5627.  
  5628.     * eval.c (rb_with_disable_interrupt): new function added.
  5629.  
  5630. Sat Jul 31 23:23:44 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5631.  
  5632.     * eval.c (rb_thread_create_0): set THREAD_RAISED flag on thread
  5633.       termination by exception.
  5634.  
  5635.     * eval.c (rb_thread_join): `$!' may not be nil for the threads
  5636.       created in rescue clause.
  5637.  
  5638.     * eval.c (rb_thread_status): ditto.
  5639.  
  5640.     * eval.c (rb_thread_join): should re-raise exception for already
  5641.       dead threads too.
  5642.  
  5643. Fri Jul 30 17:56:54 1999  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>
  5644.  
  5645.     * object.c (rb_mod_ge): wrong comparison.
  5646.  
  5647. Fri Jul 30 12:15:44 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5648.  
  5649.     * ext/tcltklib/extconf.rb: win32 support.
  5650.  
  5651.     * lib/mkmf.rb: use append_library().
  5652.  
  5653.     * ext/extmk.rb.in: ditto.
  5654.  
  5655. Fri Jul 30 02:11:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5656.  
  5657.     * array.c (rb_ary_delete): should return nil for deleting non
  5658.       existing item.
  5659.  
  5660.     * io.c (rb_io_close): call rb_sys_wait() on explicit close.
  5661.  
  5662.     * io.c (rb_io_fptr_close): do not call rb_sys_wait() on finalize.
  5663.  
  5664.     * eval.c (yield_under_i): cbase context should be maintained for
  5665.       Module#module_eval().  suggested by <inaba@st.rim.or.jp>.
  5666.  
  5667. Wed Jul 28 01:18:28 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5668.  
  5669.     * Makefile.in: add -I$(hdrdir)/lib to install using ftools.
  5670.  
  5671.     * util.c: use HAVE_FCNTL_H, not HAVE_FCNTL
  5672.  
  5673. Wed Jul 28 18:24:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5674.  
  5675.     * version 1.3.6 - version 1.4 alpha
  5676.  
  5677. Tue Jul 27 09:38:08 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5678.  
  5679.     * eval.c (rb_eval): reduce recursive rb_eval() calls by
  5680.       NODE_BLOCKs. 
  5681.  
  5682. Tue Jul 27 01:20:40 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5683.  
  5684.     * file.c (rb_file_s_expand_path): drive letter patch.
  5685.  
  5686. Mon Jul 26 02:36:31 1999  Shugo Maeda  <shugo@netlab.co.jp>
  5687.  
  5688.     * eval.c (rb_load): should clear ruby_nerr.
  5689.  
  5690.     * eval.c (rb_thread_join): oldbt should not be empty to unshift.
  5691.  
  5692. Sun Jul 25 12:09:16 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  5693.  
  5694.     * dir.c (push_braces): should treat nested braces.
  5695.  
  5696. Fri Jul 23 02:49:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5697.  
  5698.     * hash.c (rb_hash_clear): dummy argument added; suggested by
  5699.       <eguchi@shizuokanet.ne.jp>.  thanks.
  5700.  
  5701. Thu Jul 22 19:37:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5702.  
  5703.     * eval.c (rb_thread_join): get_backtrace() may return Qnil.
  5704.       typecheck added.
  5705.  
  5706. Tue Jul 20 14:36:43 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5707.  
  5708.     * range.c (range_each): do not treat String specially (for future
  5709.       override).
  5710.  
  5711. Tue Jul 20 02:28:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5712.  
  5713.     * io.c (rb_gets): $_ should be nil, when get returns nil.
  5714.  
  5715.     * io.c (rb_f_gets): ditto.
  5716.  
  5717. Mon Jul 19 17:13:09 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5718.  
  5719.     * regex.c (re_compile_fastmap): should continue fastmap compile
  5720.       for anychar_repeat, for it's repeat anyway.
  5721.  
  5722. Mon Jul 26 13:33:45 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5723.  
  5724.     * lib/jcode.rb: replaced by faster code.
  5725.  
  5726. Mon Jul 19 01:57:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5727.  
  5728.     * lib/mkmf.rb: no longer use install program.
  5729.  
  5730.     * ext/extmk.rb.in: use miniruby to install programs.
  5731.  
  5732. Sat Jul 17 00:06:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5733.  
  5734.     * ext/socket/socket.c (ipaddr): don't do reverse lookup if
  5735.       attribute do_not_reverse_lookup is set for socket classes.
  5736.       Experimental.  Note this is a global attribute.
  5737.  
  5738. Fri Jul 16 22:18:29 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5739.  
  5740.     * io.c (rb_io_eof): use feof() to check EOF already met.
  5741.  
  5742.     * io.c (read_all): should return nil at EOF.
  5743.  
  5744. Fri Jul 16 13:39:42 1999  Wakou Aoyama  <wakou@fsinet.or.jp>
  5745.  
  5746.     * lib/telnet.rb: version 0.231.
  5747.  
  5748. Fri Jul 16 10:58:22 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  5749.  
  5750.     * regex.c (re_match): debug print removed.
  5751.  
  5752. Fri Jul 16 09:58:15 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5753.  
  5754.     * many files: clean up unused variables found by gcc -Wall.
  5755.  
  5756.     * lib/mkmf.rb: better cygwin support etc.
  5757.  
  5758.     * ext/extmk.rb.in: ditto.
  5759.  
  5760.     * instruby.rb: ditto.
  5761.  
  5762. Fri Jul 16 01:37:50 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  5763.  
  5764.     * string.c (rb_str_squeeze_bang): the type of local variable `c'
  5765.       should be int, not char.
  5766.  
  5767.     * string.c (rb_str_reverse): should always return copy.
  5768.  
  5769. Thu Jul 15 23:25:57 1999  NAKAMURA Hiroshi  <nakahiro@sarion.co.jp>
  5770.  
  5771.     * lib/debug.rb: better display & frame treatment.
  5772.  
  5773. Thu Jul 15 21:16:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5774.  
  5775.     * array.c (rb_ary_each): returns self for normal termination;
  5776.       returns nil for break.
  5777.  
  5778.     * string.c: non bang methods (e.g. String#sub) should always
  5779.       return copy of the receiver.
  5780.  
  5781. Thu Jul 15 21:09:15 1999  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>
  5782.  
  5783.     * eval.c (find_file): do not add empty string to the path.
  5784.  
  5785.     * configure.in (with-search-path): should not add empty string if
  5786.       the option is not supplied.
  5787.  
  5788. Thu Jul 15 17:49:08 1999  Ryo HAYASAKA  <hayasaka@univ21.u-aizu.ac.jp>
  5789.  
  5790.     * ext/tcltklib/tcltklib.c: move `#include "ruby.h"' forward.
  5791.  
  5792. Thu Jul 15 16:54:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5793.  
  5794.     * version 1.3.5 - version 1.4 alpha
  5795.  
  5796. Wed Jul 14 23:45:33 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5797.  
  5798.     * eval.c (ruby_init): initialize for the first time only.
  5799.  
  5800. Tue Jul 13 00:15:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5801.  
  5802.     * hash.c (rb_hash_index): re-defined; method to retrieve a key
  5803.       from the value.
  5804.  
  5805.     * hash.c (Init_Hash): member? should be re-defined for Hash.
  5806.  
  5807. Tue Jul 12 13:54:51 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  5808.  
  5809.     * io.c (rb_file_sysopen): wrong number of argument.
  5810.  
  5811. Mon Jul 12 11:52:35 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5812.  
  5813.     * eval.c (rb_f_missing): class name included in message.
  5814.  
  5815.     * eval.c (print_undef): better error message.
  5816.  
  5817. Sun Jul 11 05:36:17 1999  NAKAMURA, Hiroshi  <nakahiro@sarion.co.jp>
  5818.  
  5819.     * lib/debug.rb: patch to show proper position.
  5820.  
  5821. Fri Jul  9 23:56:14 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5822.  
  5823.     * dln.c (dln_find_1): path conv. moved to conv_to_posix_path.
  5824.  
  5825.     * dln.c (conv_to_posix_path): path conv. should be done.
  5826.  
  5827. Fri Jul  9 10:26:47 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  5828.  
  5829.     * random.c (RANDOM_NUMBER): should place parentheses.
  5830.  
  5831. Fri Jul  8 11:00:51 1999  Shugo Maeda  <shugo@netlab.co.jp>
  5832.  
  5833.     * numeric.c (fix_div): division may be out of fixnum range.
  5834.  
  5835.     * bignum.c (bigdivmod): proper sign calculation to result.
  5836.  
  5837. Wed Jul  7 18:27:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5838.  
  5839.     * st.c (st_delete_safe): was modifying wrong slot.
  5840.  
  5841. Mon Jul  5 13:17:46 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5842.  
  5843.     * gc.c (rb_gc_call_finalizer_at_exit): close all files at exit.
  5844.  
  5845. Fri Jul  2 18:00:21 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  5846.  
  5847.     * lib/Mail/README: Mail-0.3.0 added to the distribution.
  5848.  
  5849. Fri Jul  2 01:45:32 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5850.  
  5851.     * regex.c (re_compile_fastmap): avoid allocation of register
  5852.       variables for each invocation of re_match().  Suggested by
  5853.       Zasukhin Ruslan <ruslan@paradigmasoft.com>.  Thanks.
  5854.  
  5855. Tue Jun 29 20:39:24 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  5856.  
  5857.     * ext/tk/lib/tk.rb (TkVariable): bug fix; should value type check
  5858.       be added?
  5859.  
  5860.     * string.c (rb_str_each_line): a bug in paragraph mode.
  5861.  
  5862.     * ruby.c (load_file): shifted too much to skip #!.
  5863.  
  5864. Tue Jun 29 06:50:21 1999  Wakou Aoyama  <wakou@fsinet.or.jp>
  5865.  
  5866.     * lib/CGI.rb: 0.30 - cleanup release, incompatible.
  5867.  
  5868.     * lib/telnet.rb: 0.22 - timeout added.
  5869.  
  5870. Tue Jun 29 10:49:25 1999  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>
  5871.  
  5872.     * configure.in: better Rhapsody support.
  5873.  
  5874.     * lib/mkmf.rb: Rhapsody/NEXTSTEP support.
  5875.  
  5876. Tue Jun 29 01:42:13 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5877.  
  5878.     * ext/pty/pty.c (chld_changed): should use POSIX.1 style wait.
  5879.  
  5880. Mon Jun 28 21:07:36 1999  KIMURA Koichi  <kbk@kt.rim.or.jp>
  5881.  
  5882.     * ext/extmk.rb.nt: wrong result for have_library().
  5883.  
  5884. Mon Jun 28 15:24:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5885.  
  5886.     * missing/isinf.c: OSF/1 raises SIGFPE on one()/zero().
  5887.  
  5888.     * regex.c (re_search): should search til EOS, for patterns may
  5889.       match beyond the end of range.
  5890.  
  5891. Mon Jun 28 12:49:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5892.  
  5893.     * io.c (rb_f_select): should not accept Time objects as an
  5894.       argument for it is time interval.
  5895.  
  5896.     * process.c (rb_f_sleep): ditto.
  5897.  
  5898.     * file.c (test_s): should return nil for false condition.
  5899.  
  5900. Mon Jun 28 12:23:52 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5901.  
  5902.     * bignum.c (rb_dbl2big): typo.
  5903.  
  5904.     * file.c (rb_f_test): ditto.
  5905.  
  5906.     * string.c (rb_str_crypt): wrong message.
  5907.  
  5908. Sun Jun 27 19:50:11 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  5909.  
  5910.     * eval.c (rb_f_exit): should have treat signed integer status, not
  5911.       VALUE.
  5912.  
  5913.     * process.c (rb_f_exit_bang): should work like exit().
  5914.  
  5915. Sun Jun 27 16:21:32 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  5916.  
  5917.     * string.c (rb_str_rindex): wrong position to search.
  5918.  
  5919. Sat Jun 26 04:05:30 1999  Takaaki Tateishi  <ttate@jaist.ac.jp>
  5920.  
  5921.     * configure.in (configure_args): --with-search-path to specify
  5922.       additional ruby search path.
  5923.  
  5924.     * ruby.c (ruby_prog_init): additional search path.
  5925.  
  5926. Fri Jun 25 13:09:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5927.  
  5928.     * pack.c (pack_unpack): needed to initialize natint.
  5929.  
  5930.     * regex.c (re_compile_pattern): add start_paren to avoid too much
  5931.       finalization on maybe_finalize_jump.
  5932.  
  5933. Fri Jun 25 13:07:20 1999  Koji Oda  <oda@bsd1.qnes.nec.co.jp>
  5934.  
  5935.     * missing/isinf.c: include "config.h" added.
  5936.  
  5937. Fri Jun 25 07:25:05 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  5938.  
  5939.     * lib/mkmf.rb: initialize $(topdir).
  5940.  
  5941.     * ext/extmk.rb.in (install_rb): install lib/*.rb properly.
  5942.  
  5943.     * configure.in (linux): specifies -rpath on --enable-shared.
  5944.  
  5945.     * configure.in (aix): ruby.imp must reside in $(topdir).
  5946.  
  5947. Thu Jun 24 19:11:29 1999  Yoshida Masato  <yoshidam@yoshidam.net>
  5948.  
  5949.     * parse.y (rb_str_extend): multi-byte identifier in expression
  5950.       interpolation in strings.
  5951.  
  5952.     * parse.y (yylex): support multi-byte char identifiers.
  5953.  
  5954. Thu Jun 24 15:27:13 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5955.  
  5956.     * parse.y (f_arg): check duplicate argument names.
  5957.  
  5958.     * gc.c (rb_gc_mark): marking wrong member for NODE_ARGS.
  5959.  
  5960.     * string.c (rb_str_rindex): POSITION specifies start point, not
  5961.       end point.
  5962.  
  5963. Thu Jun 24 13:00:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5964.  
  5965.     * regex.c (print_mbc): wrong boundary.
  5966.  
  5967.     * pack.c (uv_to_utf8): raises ArgError for too big value.
  5968.  
  5969. Thu Jun 24 11:02:51 1999  Yoshida Masato  <yoshidam@yoshidam.net>
  5970.  
  5971.     * pack.c (uv_to_utf8): mask needed.
  5972.  
  5973. Wed Jun 23 21:03:56 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  5974.  
  5975.     * ruby.h (struct RFile): remove iv_tbl from struct. instance
  5976.       variables are handled as generic ivs.
  5977.  
  5978. Wed Jun 23 22:06:26 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  5979.  
  5980.     * pack.c (utf8_to_uv): pack to 7 bytes sequence.
  5981.  
  5982.     * pack.c (uv_to_utf8): wrong boundary.
  5983.  
  5984.     * pack.c (pack_unpack): should treat as unsigned long.
  5985.  
  5986. Wed Jun 23 15:10:11 1999  Inaba Hiroto  <inaba@sdd.tokyo-sc.toshiba.co.jp>
  5987.  
  5988.     * parse.y (parse_string): failed to parse nested braces.
  5989.  
  5990.     * parse.y (parse_regx): nested braces within #{} available.
  5991.  
  5992. Wed Jun 23 11:18:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5993.  
  5994.     * regex.c (slow_search): wrong shift width for mbcs.
  5995.  
  5996.     * eval.c (rb_thread_save_context): should not clear th->locals.
  5997.  
  5998. Wed Jun 23 02:06:14 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  5999.  
  6000.     * parse.y (yylex): UMINUS binds too tight with digits. changed so
  6001.       that -2**2 => -4.
  6002.  
  6003.     * parse.y (close_paren): `do' for expr termination now works it
  6004.       used to be.
  6005.  
  6006. Wed Jun 22 18:26:42 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6007.  
  6008.     * pack.c (pack_pack): should initialize local variable `j'.
  6009.  
  6010. Wed Jun 22 15:24:59 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6011.  
  6012.     * parse.y (here_document): a bug for multiline heredoc.
  6013.  
  6014. Tue Jun 22 15:06:36 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6015.  
  6016.     * ext/socket/socket.c (ruby_socket): forgot to return fd
  6017.       explicitly.
  6018.  
  6019. Tue Jun 22 13:34:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6020.  
  6021.     * rubyio.h (MakeOpenFile): should initialize member `iv_tbl'.
  6022.  
  6023. Wed Jun 22 10:35:51 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6024.  
  6025.     * io.c (rb_io_gets_internal): getc(3) may not set errno on
  6026.       interrupt.
  6027.  
  6028. Mon Jun 21 22:39:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6029.  
  6030.     * eval.c (call_required_libraries): ruby_sourceline should be
  6031.       cleared before loading libraries.
  6032.  
  6033.     * io.c (set_stdin): do not use reopen(), so that we don't need to
  6034.       dup original stdin before assigning $stdin.
  6035.  
  6036. Mon Jun 21 18:04:27 1999  Ryo HAYASAKA  <hayasaka@univ21.u-aizu.ac.jp>
  6037.  
  6038.     * ext/dbm/dbm.c: include <cdefs.h> for solaris 2.6.
  6039.  
  6040. Mon Jun 21 15:59:47 1999  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
  6041.  
  6042.     * ext/socket/socket.c (ip_addrsetup): forgot to put `else'.
  6043.  
  6044. Mon Jun 21 15:38:37 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6045.  
  6046.     * io.c (fptr_finalize): remove rb_syswait() invocation to avoid
  6047.       wait4(2) within GC.  rb_syswait() moved to rb_io_fptr_close().
  6048.  
  6049. Mon Jun 21 12:05:59 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  6050.  
  6051.     * dir.c (dir_s_glob): remove MAXPATHLEN restriction.
  6052.  
  6053.     * ext/md5/md5init.c (md5_hexdigest): should have used "%02x".
  6054.  
  6055. Sun Jun 20 19:50:38 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  6056.  
  6057.     * string.c (rb_str_each_line): should have checked string
  6058.       boundary.
  6059.  
  6060. Sat Jun 19 22:24:12 1999  Kenji Nagasawa  <kenn@hma.att.ne.jp>
  6061.  
  6062.     * OS/2 patch improved.
  6063.  
  6064. Fri Jun 18 08:30:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6065.  
  6066.     * marshal.c (r_byte): add data length check.
  6067.  
  6068.     * ext/tcltklib/tcltklib.c (_timer_for_tcl): was doing busy-wait.
  6069.  
  6070. Tue Jun 15 10:01:21 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6071.  
  6072.     * configure.in: remove trailing slash from interpreter embedded
  6073.       shared library path.
  6074.  
  6075.     * configure.in (INSTALL_DLLIB): install shared lib with 0555.
  6076.  
  6077.     * instruby.rb: changed mode for shared library into 0555.
  6078.  
  6079. Fri Jun 11 23:27:00 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  6080.  
  6081.     * ext/etc/etc.c (etc_passwd): should return nil, not exception for
  6082.       call after last passwd entry.
  6083.  
  6084. Fri Jun 11 15:21:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6085.  
  6086.     * gc.c (rb_gc_mark_locations): add safety margin 1.
  6087.  
  6088.     * eval.c (ruby_run): should protect toplevel node tree.
  6089.  
  6090.     * ext/etc/etc.c (etc_group): dumps core if there's no more group.
  6091.  
  6092. Fri Jun 11 01:50:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6093.  
  6094.     * eval.c (ruby_run): Init_stack() was called too late; local
  6095.       variables happened to be higher (or lower) than stack_start.
  6096.  
  6097. Thu Jun 10 16:41:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6098.  
  6099.     * io.c: do not call `initialize' for IO objects.  So with Array,
  6100.       Hash, Range, and Time objects.
  6101.  
  6102.     * ext/curses/curses.c (curses_getch): made thread aware using
  6103.       rb_read_check().
  6104.  
  6105.     * ext/curses/curses.c (window_getch): ditto.
  6106.  
  6107.     * ext/curses/curses.c (curses_getstr): made (partially) thread
  6108.       aware using rb_read_check().
  6109.  
  6110.     * ext/curses/curses.c (window_getstr): ditto.
  6111.  
  6112.     * io.c (rb_read_check): new function to help making something
  6113.       (like extension libraries) thread aware.
  6114.  
  6115.     * eval.c (is_defined): `defined? super' should be true even for
  6116.       private superclass methods.
  6117.  
  6118. Fri Jun 10 13:42:10 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6119.  
  6120.     * pack.c (pack_pack): template `Z' should be allowed.
  6121.  
  6122. Wed Jun  9 13:26:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6123.  
  6124.     * eval.c (rb_thread_loading): modified to avoid nested race
  6125.       condition of require().
  6126.  
  6127.     * ext/tcltklib/tcltklib.c (ip_invoke): queue invocation on non
  6128.       main threads.
  6129.  
  6130.     * ext/tcltklib/tcltklib.c (lib_mainloop): flush invocation
  6131.       queues periodically.
  6132.  
  6133.     * version.c (ruby_show_version): now print the message to stdout.
  6134.  
  6135.     * version.c (ruby_show_copyright): ditto.
  6136.  
  6137. Tue Jun  8 00:00:34 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6138.  
  6139.     * pack.c (pack_unpack): append sentinel (NUL) to the string.
  6140.  
  6141.     * ext/md5/md5init.c (md5_hexdigest): new method to obtain
  6142.       printable hash string.
  6143.  
  6144.     * ext/md5/md5init.c (md5_update): should return self.
  6145.  
  6146.     * pack.c (pack_pack): undocumented template 'U' for UTF8.
  6147.  
  6148.     * pack.c (pack_unpack): ditto.
  6149.  
  6150.     * marshal.c (r_byte): should replace getc() with rb_getc().
  6151.  
  6152.     * io.c (rb_getc): getc() replacement uses READ_DATA_PENDING() and
  6153.       rb_thread_wait_fd().
  6154.  
  6155. Mon Jun  7 23:23:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6156.  
  6157.     * object.c (rb_mod_clone): should call CLOSESETUP().
  6158.  
  6159.     * eval.c (bind_clone): should call CLONESETUP() for new clone.
  6160.  
  6161. Sat Jun  5 10:32:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6162.  
  6163.     * string.c (rb_str_oct): binary (e.g. 0b10111) support.
  6164.  
  6165.     * variable.c (rb_const_set): raise warning, not exception.
  6166.  
  6167.     * parse.y (yycompile): initialize parser internal variables.
  6168.  
  6169.     * parse.y (close_paren): set lex_state to EXPR_PAREN after closing
  6170.       parenthesis.
  6171.  
  6172.     * parse.y (yylex): returns kDO for `do' right after method_call.
  6173.  
  6174. Thu Jun  3 11:05:30 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6175.  
  6176.     * regex.c (read_backslash): should decode \b within class.
  6177.  
  6178. Thu Jun  3 01:06:18 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6179.  
  6180.     * dln.c (dln_load): AIX improvement (aix_findmain removed).
  6181.  
  6182. Wed Jun  2 00:41:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6183.  
  6184.     * pack.c (pack_unpack): new undocumented template Z which strips
  6185.       stuff after first null.
  6186.  
  6187.     * pack.c (pack_pack): should preserve specified length of the
  6188.       resulting string.
  6189.  
  6190. Tue Jun  1 15:29:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6191.  
  6192.     * ext/socket/socket.c (ruby_socket): retry after GC, if socket(2)
  6193.       failed on EMFILE or ENFILE.
  6194.  
  6195.     * ext/socket/socket.c (sock_s_socketpair): ditto.
  6196.  
  6197.     * eval.c (module_setup): need to add PUSH_VAR/POP_VAR to clear
  6198.       dyna vars link list.
  6199.  
  6200.     * version.h (RUBY_RELEASE_CODE): integer macro constant for source
  6201.       version detection.
  6202.  
  6203. Sun May 30 22:19:12 1999  Kenji Nagasawa  <kenn@tcp-ip.or.jp>
  6204.  
  6205.     * ext/socket/socket.c: emx/gcc 0.9d now fixes things about
  6206.       AF_UNIX.
  6207.  
  6208.     * process.c: OS/2 EMX kludge.
  6209.  
  6210.     * Makefile.in (strncasecmp.o): added dependency.
  6211.  
  6212. Mon May 31 16:06:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6213.  
  6214.     * version 1.3.4 - preliminary release for 1.4
  6215.  
  6216. Mon May 31 15:57:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6217.  
  6218.     * io.c (rb_io_fptr_close): close on IO which main_thread is
  6219.       waiting cause serious exception, that vanishes the actual fd
  6220.       closing.  Invocation of rb_thread_fd_close() is deferred
  6221.       a little.
  6222.  
  6223. Sat May 29 18:27:13 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6224.  
  6225.     * regex.c (re_match): stack boundary check needed.
  6226.  
  6227. Sat May 29 12:27:00 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6228.  
  6229.     * ext/tcltklib/tcltklib.c (ip_invoke): proper ref count management
  6230.       to avoid leak.  I HATE REF COUNTING!!
  6231.  
  6232.     * eval.c (ruby_run): moved ruby_require_libraries() to handle `-r'
  6233.       from ruby_options() to avoid stack corruption for threads
  6234.       created in libraries.
  6235.  
  6236. Sat May 29 02:22:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6237.  
  6238.     * eval.c (rb_yield_0): when `for' appeared in blocks, it
  6239.       introduced new scope for local variables.
  6240.  
  6241. Fri May 28 17:16:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6242.  
  6243.     * string.c (rb_str_squeeze_bang): squeeze AND of the arguments.
  6244.       UNDOCUMENTED.
  6245.  
  6246.     * string.c (rb_str_count): new UNDOCUMENTED method.
  6247.  
  6248.     * string.c (rb_str_delete_bang): delete AND of the arg ranges.
  6249.       UNDOCUMENTED FEATURE for 1.3.x.
  6250.  
  6251.     * ext/socket/socket.c (setipaddr): re-wrote using ip_addrsetup().
  6252.  
  6253.     * ext/socket/socket.c (ip_addrsetup): decode symbolic address
  6254.       <broadcast>.
  6255.  
  6256. Thu May 27 12:27:42 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6257.  
  6258.     * string.c (tr_trans): should handle NUL (\0) within strings.
  6259.  
  6260. Tue May 25 16:45:11 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6261.  
  6262.     * io.c (rb_f_syscall): syscall may return values other than zero
  6263.       on success.
  6264.  
  6265.     * regex.c (re_match): handle empty loop properly (hopefully).
  6266.  
  6267.     * regex.c (re_match): remove empty group check, because it does
  6268.       not help non-grouping parentheses (?:..).
  6269.  
  6270.     * regex.c (re_compile_fastmap): treating try_next, finalize_push
  6271.       wrong way.
  6272.  
  6273.     * regex.c: remove some obsolete functions such as
  6274.       group_match_null_string_p().
  6275.  
  6276. Mon May 24 14:47:54 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6277.  
  6278.     * regex.c (read_backslash): read backslash by regex.
  6279.  
  6280. Sun May 23 19:44:58 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  6281.  
  6282.     * ext/pty/pty.c (getDevice): portability patch.
  6283.  
  6284. Fri May 21 23:01:26 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6285.  
  6286.     * ext/socket/getaddrinfo.c (GET_AI): should set error code.
  6287.  
  6288. Thu May 20 03:43:44 1999  Jun-ichiro itojun Hagino  <itojun@itojun.org>
  6289.  
  6290.     * ext/socket/socket.c: you should use sockaddr_storage to handle
  6291.       IPv6 addresses.
  6292.  
  6293.     * ext/socket/getaddrinfo.c (getaddrinfo): prevent retrieving
  6294.       AF_INET6 address if hints.ai_flags == AI_PASSIVE.
  6295.  
  6296. Wed May 19 12:27:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6297.  
  6298.     * eval.c (exec_end_proc): should protect exceptions.
  6299.  
  6300.     * gc.c (run_final): ditto.
  6301.  
  6302.     * parse.y (f_rest_arg): allow just * for rest arg.
  6303.  
  6304.     * parse.y (mlhs_basic): allow * without formal argument.
  6305.  
  6306.     * regex.c (re_match): the variable `part' should be initialized.
  6307.  
  6308. Tue May 18 15:25:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6309.  
  6310.     * regex.c (re_search): a bug in range adjustment.
  6311.  
  6312. Tue May 18 11:35:59 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6313.  
  6314.     * dln.c (conv_to_posix_path): path_len argument added.
  6315.  
  6316. Mon May 17 12:26:31 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6317.  
  6318.     * numeric.c (fix_rev): should treat Fixnum as signed long.
  6319.  
  6320.     * eval.c (massign): add strict number check for yield (and call).
  6321.  
  6322.     * eval.c (proc_arity): new method to return number of arguments.
  6323.  
  6324.     * eval.c (method_arity): new method to return number of arguments.
  6325.  
  6326.     * parse.y (read_escape): char may be unsigned.
  6327.  
  6328.     * string.c (rb_str_succ): ditto.
  6329.  
  6330.     * string.c (tr_trans): ditto.
  6331.  
  6332.     * object.c (Init_Object): methods `&', `|', `^' are added to nil.
  6333.  
  6334.     * range.c (rb_range_beg_len): it should be OK for [0..-len-1].
  6335.  
  6336.     * regex.c (re_search): search for byte literal within mbcs.
  6337.  
  6338.     * regex.c (is_in_list): parsh
  6339.  
  6340.     * regex.c (re_compile_fastmap): should have not alter the loop
  6341.       variable `j' if TRASLATE_P().
  6342.  
  6343.     * regex.c (re_compile_pattern): escaped characters should be read
  6344.       by PATFETCH_RAW(c).
  6345.  
  6346. Sat May 15 11:23:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6347.  
  6348.     * regex.c (re_match): endline2 (\Z) should not match at the point
  6349.       between a newline and end-of-line, like endline ($).
  6350.  
  6351.     * class.c (include_class_new): should initialize iv_tbl to share
  6352.       between module and iclass.
  6353.  
  6354. Fri May 14 08:50:27 1999  Akira Endo  <akendo@t3.rim.or.jp>
  6355.  
  6356.     * regex.c (re_compile_fastmap): it should be k != 0 to skip.
  6357.  
  6358. Fri May 14 12:46:56 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6359.  
  6360.     * time.c (time_load): a bug in old marshal format support.
  6361.  
  6362.     * instruby.rb: make site_ruby directory.
  6363.  
  6364. Fri May 14 10:18:02 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  6365.  
  6366.     * regex.c (re_match): a bug in inline `.*' etc.
  6367.  
  6368. Fri May 14 09:58:46 1999  Minero Aoki  <aamine@dp.u-netsurf.ne.jp>
  6369.  
  6370.     * ruby.c (addpath): should have specified string length.
  6371.  
  6372. Thu May 13 10:40:44 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6373.  
  6374.     * eval.c (rb_eval_string_wrap): new function.
  6375.  
  6376.     * regex.c (re_compile_pattern): POSIX line match should alter
  6377.       behavior for `^' and `$' to begbuf and endbuf2 respectively.
  6378.  
  6379.     * ext/pty/pty.c: un-ANSI-fy function arguments.
  6380.  
  6381. Wed May 12 14:19:38 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6382.  
  6383.     * struct.c (iv_get): in case of inheritance of generated struct
  6384.       class, __member__ and __size__ should also be inherited.
  6385.       Thanks for Pros Yeboah <yeboah@tu-harburg.de>.
  6386.  
  6387.     * io.c (rb_f_gets_internal): should check number of arguments
  6388.       before checking rb_rs == rb_default_rs.  Thanks for Koji Arai
  6389.       <JCA02266@nifty.ne.jp>.
  6390.  
  6391. Tue May 11 08:29:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6392.  
  6393.     * regex.c (re_compile_pattern): .?, .+ did not work.
  6394.  
  6395. Mon May 10 00:59:33 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6396.  
  6397.     * lib/jcode.rb: forgot to squeeze on reverse (complement) case.
  6398.  
  6399.     * string.c (tr_squeeze): should not set modify flag to be honest,
  6400.       if the string is not modified.
  6401.  
  6402.     * signal.c (Init_signal): SIGTERM should not be handled.
  6403.  
  6404.     * regex.c (re_match): seeking for longest match is now optional,
  6405.       which can be set using RE_OPTION_POSIXMATCH.  This satisfies
  6406.       POSIX longest match as much as Emacs's posix-* functions, which
  6407.       are known to be incomplete.
  6408.  
  6409. Sun May  9 13:04:01 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6410.  
  6411.     * ext/socket/socket.c (sock_s_getaddrinfo): conversion from
  6412.       Fixnums to C integers needed.
  6413.  
  6414. Sun May  9 11:51:43 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6415.  
  6416.     * range.c (range_eqq): reverse condition.
  6417.  
  6418.     * range.c (range_s_new): default should be end inclusive.
  6419.  
  6420. Sat May  8 03:27:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6421.  
  6422.     * ext/socket/socket.c (thread_connect): replace nasty
  6423.       rb_thread_fd_writable() with rb_thread_select().
  6424.  
  6425. Fri May  7 20:49:00 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6426.  
  6427.     * ext/socket/getaddrinfo.c (inet_pton): wrong parameter to
  6428.       inet_aton().
  6429.  
  6430.     * ext/socket/addrinfo.h (__P): silly cut and paste typo.
  6431.  
  6432. Fri May  7 17:03:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6433.  
  6434.     * dir.c (glob): removed GPL'ed glob.c completely.
  6435.  
  6436. Fri May  7 08:17:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6437.  
  6438.     * ext/sdbm/extconf.rb: sdbm extension added to the distribution.
  6439.  
  6440. Fri May  7 01:42:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6441.  
  6442.     * ext/socket/socket.c (tcp_s_gethostbyname): avoid using struct
  6443.       sockaddr_storage.
  6444.  
  6445. Thu May  6 13:21:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6446.  
  6447.     * array.c (rb_ary_indexes): should not use rb_ary_concat().
  6448.  
  6449. Thu May  4 12:34:18 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6450.  
  6451.     * parse.y (parse_string): there should be newline escape by
  6452.       backslashes in strings.
  6453.  
  6454.     * parse.y (parse_qstring): ditto.
  6455.  
  6456. Mon May  3 04:37:20 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6457.  
  6458.     * ext/tcltklib/extconf.rb: better search for libX11.
  6459.  
  6460.     * range.c (range_s_new): embarrassing =/== typo.
  6461.  
  6462.     * re.c (Init_Regexp): failed to set default kcode.
  6463.  
  6464. Mon May  3 02:39:55 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  6465.  
  6466.     * ext/socket/socket.c (open_inet): typo (res and res0).
  6467.  
  6468. Tue May  4 02:07:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6469.  
  6470.     * mkconfig.rb: leave undefined $(VARIABLE) unexpanded in the
  6471.       Config::CONFIG hash table.
  6472.  
  6473. Mon May  3 09:37:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6474.  
  6475.     * regex.c (re_compile_pattern): expand exactn{n} at compile time.
  6476.       handles stop_paren specially.
  6477.  
  6478.     * regex.c (re_compile_pattern): expand x{n} at compile time.
  6479.  
  6480.     * regex.c (re_search): posix line match should be checked.
  6481.  
  6482.     * regex.c (re_search): a bug in anchor condition.
  6483.  
  6484. Fri Apr 30 18:57:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6485.  
  6486.     * version 1.3.3
  6487.  
  6488.     * string.c (rb_str_rindex): position should be END point, not
  6489.       START point.
  6490.  
  6491.     * re.c (rb_reg_search): pos means end point on reverse now.
  6492.  
  6493.     * array.c (rb_ary_s_create): should clear ary->ptr to avoid
  6494.       potential gc crash.
  6495.  
  6496. Fri Apr 30 15:24:58 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6497.  
  6498.     * ext/socket/addrinfo.h: compatibility hack for ipv4.
  6499.  
  6500.     * ext/socket/socket.c: itojun's ipv6 patches applied.
  6501.  
  6502.     * ext/socket/extconf.rb: detect ipv6 features based on itojun's
  6503.       ipv6 patches.
  6504.  
  6505.     * ext/extmk.rb.in (enable_config): can handle --enable-xxx now.
  6506.  
  6507.     * lib/mkmf.rb (enable_config): ditto.
  6508.  
  6509. Fri Apr 30 05:22:23 1999  Shugo Maeda  <shugo@netlab.co.jp>
  6510.  
  6511.     * string.c (rb_str_aset): last index should not append.
  6512.  
  6513. Thu Apr 29 18:55:31 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  6514.  
  6515.     * dln.c (conv_to_posix_path): remove const from args.
  6516.  
  6517.     * ruby.c (rubylib_mangle): remove Fatal(), the obsolete function.
  6518.  
  6519. Tue Apr 27 14:11:45 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6520.  
  6521.     * parse.y (fname): lazy workaround for keywords did not work well.
  6522.  
  6523.     * ext/extmk.rb.in: `--with-xxx=yyy' argument configuration.
  6524.  
  6525.     * lib/mkmf.rb: ditto.
  6526.  
  6527.     * misc/ruby-mode.el: forgot to handle $`.
  6528.  
  6529.     * ext/extmk.rb.in: better AIX link support proposed by
  6530.       <komatsu@sarion.co.jp>.
  6531.  
  6532. Mon Apr 26 16:46:59 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6533.  
  6534.     * ext/extmk.rb.in: AIX shared library support modified.
  6535.  
  6536.     * ext/aix_mksym.rb: ditto.
  6537.  
  6538.     * configure.in: ditto.
  6539.  
  6540.     * sprintf.c (rb_f_sprintf): should allocate proper sized buffer
  6541.       for float numbers.
  6542.  
  6543. Sat Apr 24 00:00:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6544.  
  6545.     * parse.y (operation): syntax like `a.[]=(1,2)' is allowed.
  6546.  
  6547. Fri Apr 23 23:54:09 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6548.  
  6549.     * io.c (argf_binmode): binmode method added to ARGF.
  6550.  
  6551. Fri Apr 23 13:55:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6552.  
  6553.     * string.c (rb_f_chomp): should assign the result to $_.  or maybe
  6554.       sub/gsub/chop/chomp should NOT assign $_ altogether.
  6555.  
  6556. Thu Apr 22 16:50:54 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6557.  
  6558.     * eval.c (rb_callcc): call scope_dup() for all scopes in
  6559.       the interpreter stack.
  6560.  
  6561. Tue Apr 20 11:24:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6562.  
  6563.     * string.c (rb_str_dump): `#' should be escaped.
  6564.  
  6565. Tue Apr 20 02:32:42 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6566.  
  6567.     * parse.y (parse_regx): option /p for posix match added.
  6568.  
  6569.     * re.c (rb_reg_desc): did not print options properly.
  6570.  
  6571.     * io.c (rb_file_s_open): initialize was called twice.
  6572.  
  6573. Mon Apr 19 18:56:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6574.  
  6575.     * configure.in (DEFAULT_KCODE): can specify default code for
  6576.       $KCODE by --with-default-kcode=(euc|sjis|utf8|none).
  6577.  
  6578.     * regex.c (IS_A_LETTER): a byte sequence shorter than mbc should
  6579.       not match with \w etc.
  6580.  
  6581. Mon Apr 19 13:49:11 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6582.  
  6583.     * eval.c (eval): should restore ruby_dyna_vars.
  6584.  
  6585. Fri Apr 16 21:40:43 1999  Nobuyoshi Nakada  <gea02117@nifty.ne.jp>
  6586.  
  6587.     * io.c (f_backquote): pipe_open may return nil.
  6588.  
  6589.     * io.c (f_open): rb_io_open may return nil.
  6590.  
  6591.     * io.c (io_s_foreach): ditto.
  6592.  
  6593.     * io.c (io_s_readlines): ditto.
  6594.  
  6595.     * io.c (io_defset): wrong message.
  6596.  
  6597. Fri Apr 16 15:09:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6598.  
  6599.     * bignum.c (rb_str2inum): strtoul() returns long, not int.
  6600.  
  6601.     * eval.c (rb_load): size of VALUE and ID may be different.
  6602.  
  6603.     * util.c (mmprepare): int is too small to cast from pointers.
  6604.  
  6605.     * config.guess: avoid 'linux-gnu' for alpha-unknown-linux.
  6606.  
  6607. Thu Apr 15 23:46:20 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6608.  
  6609.     * ruby.c (rubylib_mangle): mangle path by RUBYLIB_PREFIX.
  6610.  
  6611. Wed Apr 14 23:52:51 1999  SHIROYAMA Takayuki  <psi@fortune.nest.or.jp>
  6612.  
  6613.     * node.h (NODE_LMASK): should be long to avoid overflow.
  6614.  
  6615. Wed Apr 14 13:14:35 1999  Katsuyuki Komatsu  <komatsu@sarion.co.jp>
  6616.  
  6617.     * dln.c: AIX dynamic link.
  6618.  
  6619.     * ext/aix_ld.rb: ditto.
  6620.  
  6621. Wed Apr 14 12:19:09 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6622.  
  6623.     * lib/thread.rb: Queue#{enq,deq} added.
  6624.  
  6625. Tue Apr 13 17:43:56 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6626.  
  6627.     * hash.c (rb_hash_s_create): Hash::[] acts more like casting.
  6628.  
  6629. Tue Apr 13 00:33:52 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6630.  
  6631.     * io.c (rb_io_stdio_set): warning for assignment to the variables
  6632.       $std{in,out,err}.
  6633.  
  6634. Mon Apr 12 23:12:32 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6635.  
  6636.     * io.c (rb_io_reopen): check for reopening same IO.
  6637.  
  6638. Fri Apr  9 17:45:11 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6639.  
  6640.     * parse.y (rb_compile_string): bug for nested eval().
  6641.  
  6642.     * regex.c (re_match): should pop non-greedy stack items on
  6643.       failure, after best_regs are fixed.
  6644.  
  6645. Thu Apr  8 17:30:40 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6646.  
  6647.     * pack.c (PACK_LENGTH_ADJUST): need to adjust for `*' length.
  6648.  
  6649. Tue Apr  6 23:28:44 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6650.  
  6651.     * parse.y (void_check): add void context checks.
  6652.  
  6653. Mon Apr  5 12:23:42 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6654.  
  6655.     * time.c (time_s_at): should copy gmt-mode.
  6656.  
  6657.     * eval.c (eval_node): preserve ruby_eval_tree.
  6658.  
  6659. Fri Apr  2 14:00:34 1999  NAKAMURA, Hiroshi  <nakahiro@sarion.co.jp>
  6660.  
  6661.     * lib/debug.rb: wrong command interpreting.
  6662.  
  6663. Fri Apr  2 11:46:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6664.  
  6665.     * version 1.3.2
  6666.  
  6667. Fri Apr  2 10:40:04 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6668.  
  6669.     * io.c (rb_io_s_pipe): forgot to define IO::pipe.
  6670.  
  6671. Thu Apr  1 14:40:46 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6672.  
  6673.     * eval.c (assign): modified for rhs change.
  6674.  
  6675.     * parse.y (stmt): unparenthesisized method calls can be right hand
  6676.       side expression of the assignment.
  6677.  
  6678. Sat Mar 27 22:42:47 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6679.  
  6680.     * ext/nkf/nkf.c (rb_nkf_kconv): check size output_ctr before
  6681.       decrement.
  6682.  
  6683. Thu Mar 25 09:11:03 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6684.  
  6685.     * time.c (time_s_at): preserve gmt-mode for result.
  6686.  
  6687.     * parse.y (rb_compile_string): do not use cur_mid, use
  6688.       compile_for_eval instead.
  6689.  
  6690.     * st.c (PTR_NOT_EQUAL): wrong logical condition.
  6691.  
  6692. Wed Mar 24 13:06:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6693.  
  6694.     * parse.y (yycompile): should clear cur_mid after compilation.
  6695.  
  6696.     * io.c (next_argv): need to check type for ARGV.shift.
  6697.  
  6698.     * eval.c (blk_copy_prev): need to preserve outer scope as well as
  6699.       outer frames.
  6700.  
  6701.     * parse.y (rb_compile_string): return can appear within eval().
  6702.  
  6703. Tue Mar 23 10:15:07 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  6704.  
  6705.     * configure.in: AC_C_CONST check added.
  6706.  
  6707. Tue Mar 23 02:07:35 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6708.  
  6709.     * time.c (time_plus): preserve gmt-mode for result.
  6710.  
  6711. Mon Mar 22 01:32:37 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6712.  
  6713.     * eval.c (rb_eval): adjust line numbers before expression
  6714.       interpolation within strings.
  6715.  
  6716.     * eval.c (rb_eval): defined? returns nil for false condition.
  6717.  
  6718.     * numeric.c (num_nonzero_p): returns nil for false condition.
  6719.  
  6720. Sat Mar 20 13:07:43 1999  Keiju Ishitsuka  <keiju@rational.com>
  6721.  
  6722.     * lib/weakref.rb: avoid leak for two weakrefs for one object.
  6723.  
  6724. Fri Mar 19 11:26:45 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6725.  
  6726.     * eval.c (ruby_run): needed to eval END{} on exit.
  6727.  
  6728.     * eval.c (rb_exit): ditto.
  6729.  
  6730. Fri Mar 19 02:17:27 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6731.  
  6732.     * signal.c (Init_signal): handles terminating signals HUP, TERM,
  6733.       QUIT, PIPE, etc.
  6734.  
  6735. Thu Mar 18 15:47:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6736.  
  6737.     * bignum.c (rb_big_and): bug in sign calculation.
  6738.  
  6739.     * bignum.c (rb_big_or): ditto.
  6740.  
  6741.     * io.c (rb_f_select): forgot to use to_io to retrieve IO, after
  6742.       calling select(2).
  6743.  
  6744. Tue Mar 16 19:54:31 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6745.  
  6746.     * ext/extmk.rb.in: static linking cause infinite make loop.
  6747.  
  6748. Tue Mar 16 18:50:04 1999  Yoshida Masato  <yoshidam@yoshidam.net>
  6749.  
  6750.     * ext/socket/socket.c (tcp_s_gethostbyname): typo, not NUM2INT(),
  6751.       but INT2NUM().
  6752.  
  6753.     * ext/socket/socket.c (mkhostent): ditto.
  6754.  
  6755. Tue Mar 16 12:31:44 1999  Ryo HAYASAKA  <hayasaka@cheer.u-aizu.ac.jp>
  6756.  
  6757.     * file.c (utime_internal): suppress warning by const.
  6758.  
  6759.     * time.c (time_gmtime): ditto.
  6760.  
  6761. Tue Mar 16 10:23:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6762.  
  6763.     * time.c (time_clone): Time object can be cloned.
  6764.  
  6765. Tue Mar 16 03:13:10 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6766.  
  6767.     * ruby.c (load_file): argv[argc] should be NULL.
  6768.  
  6769. Mon Mar 15 22:12:08 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  6770.  
  6771.     * sprintf.c (rb_f_sprintf): typo in arg_num check at exit.
  6772.  
  6773. Mon Mar 15 16:42:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6774.  
  6775.     * array.c (rb_ary_dup): dup2 should copy class too.
  6776.  
  6777. Mon Mar 15 15:12:53 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  6778.  
  6779.     * lib/mkmf.rb: install program relative path check.
  6780.  
  6781. Mon Mar 15 14:05:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6782.  
  6783.     * re.c (rb_reg_s_new): 2nd argument is now option.
  6784.       Regexp::EXTENDED can be specified.
  6785.  
  6786. Fri Mar 12 10:47:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6787.  
  6788.     * string.c (rb_str_index): str.index("") should always match at
  6789.       offset point.
  6790.  
  6791.     * string.c (rb_str_upto): can specify end point exclusion.
  6792.  
  6793.     * string.c (rb_str_index): negative offset.
  6794.  
  6795.     * regex.c (re_match): begline should not match at the point
  6796.       between a newline and end-of-string.  endline neither.
  6797.  
  6798.     * regex.c (re_compile_pattern): context_indep_anchors .
  6799.  
  6800.     * parse.y (parse_regx): need not to push backslashes before
  6801.       escaped characters.
  6802.  
  6803.     * eval.c (rb_thread_join): re-raises exception within target.
  6804.  
  6805. Fri Mar 12 01:09:36 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  6806.  
  6807.     * ext/readline/readline.c (readline_s_vi_editing_mode): wrong
  6808.       number of arguments.
  6809.  
  6810. Fri Mar 12 02:12:50 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6811.  
  6812.     * pack.c (PACK_ITEM_ADJUST): "a".unpack("C3") => [97, nil, nil]
  6813.  
  6814. Thu Mar 11 18:23:50 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  6815.  
  6816.     * ext/socket/socket.c (Init_socket): UDPsocket was omitted.
  6817.  
  6818. Thu Mar 11 16:43:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6819.  
  6820.     * pack.c (PACK_LENGTH_ADJUST): push fixed number of items per
  6821.       template to result array.
  6822.  
  6823.     * pack.c (pack_unpack): I/N/C etc. push nil in the array for "".
  6824.  
  6825. Tue Mar  9 00:19:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6826.  
  6827.     * hash.c (ruby_unsetenv): use ruby_setenv(name, 0).
  6828.  
  6829.     * hash.c (env_delete): ditto.
  6830.  
  6831.     * string.c (rb_str_upto): do not check `beg<end' to generate
  6832.       strings for the pattern like "a".upto("#a").
  6833.  
  6834.     * range.c (range_each): treat strings as special case.
  6835.  
  6836.     * range.c (range_each): no longer use upto for generic cases.
  6837.  
  6838. Sun Mar  7 14:21:32 1999  IKARASHI Akira  <ikarashi@itlb.te.noda.sut.ac.jp>
  6839.  
  6840.     * string.c (rb_str_index): wrong end point calculation.
  6841.  
  6842. Sat Mar  6 02:19:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6843.  
  6844.     * re.c (match_index): MatchingData#index(n) added.
  6845.  
  6846.     * array.c (rb_ary_subseq): ary[n..-1] returns an sub-array unless
  6847.       n is too small negative index.
  6848.  
  6849.     * re.c (rb_reg_match_method): Regexp#match(str) added.
  6850.  
  6851.     * array.c (rb_ary_indexes): understands ranges as indexes.
  6852.  
  6853.     * re.c (match_size): MatchingData#size added.
  6854.  
  6855. Fri Mar  5 01:04:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6856.  
  6857.     * array.c (rb_ary_fill): modified for range.
  6858.  
  6859.     * array.c (rb_ary_aset): a[n..m] revisited.
  6860.  
  6861. Thu Mar  4 14:23:29 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6862.  
  6863.     * string.c (rb_str_subseq): a[n..m] revisited.
  6864.  
  6865.     * parse.y (method_call): allow Const::method{}.
  6866.  
  6867.     * array.c (rb_ary_replace_method): should replace original array.
  6868.  
  6869. Thu Mar  4 02:30:22 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6870.  
  6871.     * configure.in: remove --disable-thread, thread feature is no
  6872.       longer optional.
  6873.  
  6874. Thu Mar  4 00:32:17 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  6875.  
  6876.     * parse.y (read_escape): wrong arguments for scan_oct,scan_hex.
  6877.  
  6878. Wed Mar  3 11:51:53 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6879.  
  6880.     * ext/socket/socket.c (Init_socket): rename class names as
  6881.       TCPsocket -> TCPSocket etc.
  6882.  
  6883. Tue Mar  2 19:46:42 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6884.  
  6885.     * configure.in (LDSHARED): use gcc -Wl,-G for solaris with gcc.
  6886.  
  6887. Tue Mar  2 17:04:19 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6888.  
  6889.     * parse.y (yylex): backslashes do not concatenate comment lines
  6890.       anymore.
  6891.  
  6892. Mon Mar  1 14:05:12 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6893.  
  6894.     * eval.c (rb_call0): adjust argv for optional arguments.  super
  6895.       without arguments emit superclass method with the value from
  6896.       optional arguments.  enabled as experiment.
  6897.  
  6898. Sun Feb 28 14:04:07 1999  WATANABE Hirofumi  <eban@os.rim.or.jp>
  6899.  
  6900.     * parse.y (nextc): backslash at the eof cause infinite loop
  6901.  
  6902. Sun Feb 28 11:01:26 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  6903.  
  6904.     * time.c (make_time_t): month range check added.
  6905.  
  6906. Sat Feb 27 02:36:05 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6907.  
  6908.     * re.c (Init_Regexp): add escape as alias of quote.
  6909.  
  6910.     * re.c (rb_reg_s_quote): char-code can be specified now.
  6911.  
  6912. Fri Feb 26 18:45:36 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  6913.  
  6914.     * eval.c (error_print): bug for error message with newlines.
  6915.  
  6916. Fri Feb 26 12:00:04 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6917.  
  6918.     * time.c (make_time_t): future check modified to allow 1969-12-31
  6919.       at certain timezone.
  6920.  
  6921.     * time.c (time_arg): year >= 1000 should be past.
  6922.  
  6923.     * version.c (Init_version): constant RELEASE_DATE added.
  6924.  
  6925. Fri Feb 26 01:08:30 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6926.  
  6927.     * string.c (rb_str_substr): returns nil for out-of-range access.
  6928.  
  6929.     * array.c (rb_ary_subseq): returns nil for out-of-range access.
  6930.  
  6931.     * array.c (rb_ary_store): negative index message has changed.
  6932.  
  6933.     * string.c (rb_str_aset): reallocation needed.
  6934.  
  6935.     * string.c (rb_str_aset): allow char append to the string.
  6936.  
  6937. Thu Feb 25 23:30:17 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  6938.  
  6939.     * time.c (time_load): tm_year should be packed in 17 bits, not 18.
  6940.  
  6941. Thu Feb 25 12:50:25 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6942.  
  6943.     * missing/dup2.c: replaced by public domain version.
  6944.  
  6945.     * time.c (make_time_t): add `future check' in loops.
  6946.  
  6947.     * object.c (rb_num2dbl): forbid implicit conversion from nil, or
  6948.       strings.  thus `Time.now + str' should raise error.
  6949.  
  6950.     * object.c (rb_Float): convert nil into 0.0.
  6951.  
  6952.     * object.c (rb_Integer): conversion method improved.
  6953.  
  6954. Thu Feb 25 03:27:50 1999  Shugo Maeda  <shugo@netlab.co.jp>
  6955.  
  6956.     * eval.c (rb_call): should handle T_ICLASS properly.
  6957.  
  6958. Thu Feb 25 00:04:00 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6959.  
  6960.     * error.c (Init_Exception): global function Exception() removed.
  6961.  
  6962.     * variable.c (rb_class2name): returns "nil"/"true"/"false" for them.
  6963.  
  6964.     * time.c (time_dump): time marshaling format compressed size from
  6965.       11 bytes to 8 bytes.  thanx to tadf@kt.rim.or.jp.
  6966.  
  6967.     * eval.c (rb_obj_call_init): should specify arguments explicitly.
  6968.  
  6969. Wed Feb 24 15:43:28 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6970.  
  6971.     * parse.y (yylex): comment concatenation requires preceding space
  6972.       before backslash at the end of line.
  6973.  
  6974.     * io.c (rb_f_pipe): global pipe is obsolete now.
  6975.  
  6976.     * object.c (Init_Object): remove true.to_i, false.to_i.
  6977.  
  6978. Tue Feb 23 14:21:41 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6979.  
  6980.     * parse.y (yylex): warn if identifier! immediately followed by `='.
  6981.  
  6982. Tue Feb 23 12:32:41 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  6983.  
  6984.     * eval.c (rb_load): tilde expansion moved to find_file.
  6985.  
  6986.     * eval.c (find_file): tilde expansion added.
  6987.  
  6988. Tue Feb 23 10:50:20 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6989.  
  6990.     * eval.c (require_method): require can handle multiple fnames.
  6991.  
  6992.     * hash.c (rb_hash_foreach_iter): hash key may be nil.
  6993.  
  6994. Mon Feb 22 17:44:02 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  6995.  
  6996.     * regex.c (re_match): should not pop failure point on success for
  6997.       non-greedy matches.
  6998.  
  6999.     * io.c (Init_IO): remove global_functions getc, readchar, ungetc,
  7000.       seek, tell, rewind.
  7001.  
  7002. Sat Feb 20 22:54:26 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7003.  
  7004.     * numeric.c (rb_num2long): no implicit conversion from boolean.
  7005.  
  7006. Sat Feb 20 09:58:42 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7007.  
  7008.     * numeric.c (flo_to_s): portable Infinity and NaN support.
  7009.  
  7010. Sat Feb 20 07:13:31 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  7011.  
  7012.     * io.c (rb_file_sysopen): forgot to initialize a local variable.
  7013.  
  7014. Fri Feb 19 23:05:07 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7015.  
  7016.     * string.c (rb_str_subseq): range check changed.
  7017.  
  7018.     * marshal.c: increment MARSHAL_MINOR for Time format change.
  7019.  
  7020.     * time.c (time_old_load): support old marshal format.
  7021.  
  7022.     * time.c (time_load): changed for new format Y/M/D/h/m/s/usec.
  7023.  
  7024.     * time.c (time_dump): marshal dump format has changed.
  7025.  
  7026. Fri Feb 19 00:25:57 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7027.  
  7028.     * time.c (time_arg): should reject "sep\0" and such.
  7029.  
  7030.     * time.c (time_plus): Time#+ should not receive Time object
  7031.       operand.
  7032.  
  7033.     * string.c (rb_str_substr): negative length raises exception now.
  7034.  
  7035.     * array.c (beg_len): if end == -1, it points end of the array.
  7036.  
  7037.     * array.c (rb_ary_subseq): negative length raises exception now.
  7038.  
  7039. Thu Feb 18 20:57:04 1999  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  7040.  
  7041.     * time.c (rb_strftime): strftime() may return 0 on success too.
  7042.  
  7043.     * time.c (time_strftime): `\0' within format string should not be
  7044.       omitted in the result.
  7045.  
  7046.     * time.c (rb_strftime): zero length format.
  7047.  
  7048.     * time.c (time_to_a): yday start with 1 now.
  7049.  
  7050.     * time.c (time_zone): support for long timezone name.
  7051.  
  7052.     * time.c (time_yday): yday start with 1 now.
  7053.  
  7054.     * time.c (time_minus): minus calculation was wrong.
  7055.  
  7056.     * time.c (time_minus): sec, usec should be at least `long', maybe
  7057.       they should be `time_t'.
  7058.  
  7059.     * time.c (time_plus): addition with float was wrong.
  7060.  
  7061.     * time.c (time_to_s): support for long timezone name.
  7062.  
  7063.     * time.c (time_gm_or_local): too far future check moved.
  7064.  
  7065.     * time.c (time_arg): treat 2 digit year as 69-99 => 1969-1999,
  7066.       00-68 => 2000-2068
  7067.  
  7068. Thu Feb 18 03:56:47 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7069.  
  7070.     * missing/fnmatch.c: moved to missing directory.
  7071.  
  7072. Wed Feb 17 16:22:26 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7073.  
  7074.     * struct.c (rb_struct_alloc): actual initialization now be done in
  7075.       `initialize'.
  7076.  
  7077. Wed Feb 17 09:47:15 1999  okabe katsuyuki  <hgc02147@nifty.ne.jp>
  7078.  
  7079.     * regex.c (re_search): use mbclen() instead of ismbchar().
  7080.  
  7081.     * re.c (rb_reg_s_quote): should handle mbchars properly.
  7082.  
  7083. Wed Feb 17 01:25:26 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7084.  
  7085.     * parse.y (yylex): stop comment concatenation by backslash follows
  7086.       after >= 0x80 char.  may cause problem with Latin chars.
  7087.  
  7088.     * eval.c (error_print): exception in rb_obj_as_string() caused
  7089.       SEGV. protect it by PUSH_TAG/POP_TAG.
  7090.  
  7091.     * error.c (exc_exception): `Exception#exception' should return self.
  7092.  
  7093. Wed Feb 17 01:12:22 1999  Hirotaka Ichikawa  <hirotaka.ichikawa@tosmec.toshiba.co.jp>
  7094.  
  7095.     * configure.in: BeOS patch.
  7096.  
  7097. Tue Feb 16 14:25:00 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7098.  
  7099.     * regex.c (re_compile_pattern): should reallocate mbc space for
  7100.       character class unless current_mbctype is ASCII.
  7101.  
  7102. Mon Feb 15 15:48:30 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  7103.  
  7104.     * configure.in: specify `-Wl,-E' only for GNU ld.
  7105.  
  7106. Mon Feb 15 11:43:22 1999  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>
  7107.  
  7108.     * array.c (rb_inspecting_p): should return Qfalse.
  7109.  
  7110. Sun Feb 14 22:36:40 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7111.  
  7112.     * sprintf.c (rb_f_sprintf): `%G' was omitted.
  7113.  
  7114. Sun Feb 14 12:47:48 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7115.  
  7116.     * numeric.c (Init_Numeric): allow divide by zero on FreeBSD.
  7117.  
  7118.     * numeric.c (Init_Numeric): FloatDomainError added.
  7119.  
  7120.     * configure.in (AC_REPLACE_FUNCS): add checks for functions
  7121.       isinf, isnan, and finite.
  7122.  
  7123. Sat Feb 13 01:24:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7124.  
  7125.     * eval.c (rb_thread_create_0): should protect th->thread.
  7126.  
  7127. Fri Feb 12 16:16:47 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  7128.  
  7129.     * string.c (rb_str_inspect): wrong mbc position.
  7130.  
  7131. Fri Feb 12 16:21:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7132.  
  7133.     * eval.c (rb_thread_fd_close): 
  7134.  
  7135.     * io.c (rb_io_fptr_close): tell scheduler that fd is closed.
  7136.  
  7137.     * io.c (rb_io_reopen): ditto.
  7138.  
  7139.     * io.c (READ_CHECK): check if closed after thread context switch.
  7140.  
  7141.     * ext/socket/socket.c (bsock_close_read): do not check
  7142.       the return value from shutdown(2).
  7143.  
  7144.     * ext/socket/socket.c (bsock_close_write): ditto.
  7145.  
  7146.     * ext/socket/socket.c (sock_new): need to dup(fd) for close_read
  7147.       and close_write.
  7148.  
  7149.     * parse.y (here_document): handle newlines within #{}.
  7150.  
  7151.     * regex.h: should replace symbols for ruby.
  7152.  
  7153. Fri Feb 12 00:46:28 1999  Shugo Maeda  <shugo@netlab.co.jp>
  7154.  
  7155.     * marshal.c (r_object): should update the method name in message.
  7156.  
  7157.     * marshal.c (w_object): limit should be converted into Fixnum.
  7158.  
  7159. Wed Feb 10 15:20:03 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7160.  
  7161.     * regex.c (re_match): empty pattern should not cause infinite
  7162.       pattern match loop.
  7163.  
  7164.     * regex.c (re_compile_pattern): RE_OPTIMIZE_ANCHOR for /.*/, not
  7165.       for /(.|\n)/.
  7166.  
  7167.     * numeric.c (fix_pow): `fixnum**nil' should raise TypeError.
  7168.  
  7169.     * bignum.c (rb_big_pow): need to normalize results.
  7170.  
  7171. Wed Feb 10 01:42:41 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7172.  
  7173.     * numeric.c (fix_pow): `(5**1).type' should be Integer.
  7174.  
  7175. Tue Feb  9 01:22:49 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7176.  
  7177.     * parse.y (yylex): do not ignore newlines in mbchars.
  7178.  
  7179.     * io.c (rb_file_s_open): mode can be specified by flags like
  7180.       open(2), e.g. File::open(path, File::CREAT|File::WRONLY).
  7181.  
  7182.     * io.c (rb_f_open): bit-wise mode flags for pipes
  7183.  
  7184.     * io.c (Init_IO): bit flags for open.
  7185.  
  7186. Sat Feb  6 22:56:21 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7187.  
  7188.     * string.c (rb_str_sub_bang): should not overwrite match data by
  7189.       regexp match within the block.
  7190.  
  7191.     * string.c (rb_str_gsub_bang): ditto.
  7192.  
  7193. Sat Feb  6 03:06:17 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7194.  
  7195.     * re.c (match_getter): accessing $~ without matching caused SEGV.
  7196.  
  7197. Fri Feb  5 22:11:08 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7198.  
  7199.     * parse.y (yylex): binary literal support, like 0b01001.
  7200.  
  7201.     * parse.y (yylex): octal numbers can contain `_'s.
  7202.  
  7203.     * parse.y (yylex): warns if non-octal number follows immediately
  7204.       after octal literal.
  7205.  
  7206.     * parse.y (yylex): now need at least one digit after prefix such
  7207.       as 0x, or 0b.
  7208.  
  7209.     * bignum.c (rb_str2inum): recognize binary numbers like 0b0101.
  7210.  
  7211. Fri Feb  5 03:26:56 1999  Yasuhiro Fukuma  <yasuf@big.or.jp>
  7212.  
  7213.     * ruby.c (proc_options): -e without program prints error.
  7214.  
  7215. Fri Feb  5 00:01:50 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7216.  
  7217.     * parse.y (terms): needed to clear heredoc_end.
  7218.  
  7219.     * numeric.c (flo_div): allow float division by zero.
  7220.  
  7221. Thu Feb  4 11:56:24 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7222.  
  7223.     * missing/strtod.c: for compatibility.
  7224.  
  7225.     * configure.in (strtod): add strtod compatible check.
  7226.  
  7227.     * numeric.c (rb_num2long): missing/vsnprintf.c does not support
  7228.       floating points.
  7229.  
  7230.     * numeric.c (flo_to_s): ditto.
  7231.  
  7232. Wed Feb  3 23:02:12 1999  Yoshida Masato  <yoshidam@yoshidam.net>
  7233.  
  7234.     * regex.c (re_compile_pattern): use ismbchar() to get next char.
  7235.  
  7236.     * regex.c (re_search): wrong mbchar shift.
  7237.  
  7238.     * re.c (rb_reg_search): needed to reset $KCODE after match.
  7239.  
  7240.     * regex.c (re_compile_fastmap): mbchars should match with \w.
  7241.  
  7242. Wed Feb  3 22:35:12 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7243.  
  7244.     * parse.y (yylex): too big float raise warning, not error.
  7245.  
  7246. Tue Feb  2 23:41:42 1999  Yoshida Masato  <yoshidam@yoshidam.net>
  7247.  
  7248.     * regex.c (re_match): wrong boundary.
  7249.  
  7250.     * regex.c (IS_A_LETTER): re_mbctab[c] may not be 1 for mbc.
  7251.  
  7252.     * regex.c (re_search): mbchar support for shifting ranges.
  7253.  
  7254.     * regex.c (MBC2WC): wrong conversion.
  7255.  
  7256. Wed Feb  3 15:03:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7257.  
  7258.     * parse.y (parse_regx): need to escape parens if terminators are
  7259.       not any kind of parenthesis.
  7260.  
  7261.     * parse.y (parse_qstring): ditto.
  7262.  
  7263.     * parse.y (parse_string): ditto.
  7264.  
  7265. Tue Feb  2 17:11:26 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  7266.  
  7267.     * string.c (rb_str_gsub_bang): too small realloc condition.
  7268.  
  7269. Mon Feb  1 10:01:17 1999  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7270.  
  7271.     * parse.y (yylex): range check for the float literal.
  7272.  
  7273. Sat Jan 30 18:34:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7274.  
  7275.     * ruby.c (usage): -h option to show brief command description.
  7276.  
  7277. Sat Jan 30 08:45:16 1999  IKARASHI Akira  <ikarashi@itlb.te.noda.sut.ac.jp>
  7278.  
  7279.     * lib/cgi-lib.rb: cookie support added.
  7280.  
  7281. Sat Jan 30 13:38:24 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7282.  
  7283.     * regex.c (re_compile_pattern): mbchars should match with \w
  7284.       within character class.  Was matching with \W.
  7285.  
  7286.     * regex.c (re_match): \w should match with multi byte characters,
  7287.       not its first byte.
  7288.  
  7289. Sat Jan 30 10:06:41 1999  Yoshida Masato  <yoshidam@yoshidam.net>
  7290.  
  7291.     * re.c (rb_reg_s_new): UTF-8 flag handle (/u, /U).
  7292.  
  7293.     * re.c (rb_kcode): $KCODE handle for UTF-8.
  7294.  
  7295. Sat Jan 30 01:51:16 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7296.  
  7297.     * array.c (rb_ary_delete_if): RTEST() missing.
  7298.  
  7299.     * hash.c (delete_if_i): ditto.
  7300.  
  7301.     * enum.c (Init_Enumerable): select (=find_all), detect (=find)
  7302.       added as aliases.
  7303.  
  7304. Fri Jan 29 21:32:19 1999  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  7305.  
  7306.     * hash.c (rb_f_setenv): SEGV caused by small typo.
  7307.  
  7308. Fri Jan 29 00:15:58 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7309.  
  7310.     * lib/parsedate.rb (parsedate): support date format like
  7311.       23-Feb-93, which is required by HTTP/1.1.
  7312.  
  7313.     * variable.c (find_class_path): avoid calling rb_iv_set().
  7314.  
  7315.     * eval.c (backtrace): do not need to modify $SAFE internally.
  7316.  
  7317.     * variable.c (classname): inline __classid__ access.
  7318.  
  7319.     * eval.c (THREAD_ALLOC): needed to initialize wrapper.
  7320.  
  7321.     * lib/ftools.rb (makedirs): allows slash at the end of the path.
  7322.  
  7323.     * numeric.c (rb_fix_induced_from): ensure result to be Fixnum.
  7324.  
  7325. Thu Jan 28 17:31:43 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7326.  
  7327.     * numeric.c (flo_to_s): float format changed to "%16.10g".
  7328.  
  7329. Thu Jan 28 02:13:11 1999  Yoshinori Toki  <toki@freedom.ne.jp>
  7330.  
  7331.     * array.c (rb_ary_store): expand allocated buffer by 3/2.
  7332.  
  7333. Wed Jan 27 17:50:02 1999  Kazuhiro HIWADA  <hiwada@kuee.kyoto-u.ac.jp>
  7334.  
  7335.     * bignum.c (dbl2big): raised error if double is too big to cast
  7336.       into long.  check added.
  7337.  
  7338. Wed Jan 27 03:16:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7339.  
  7340.     * variable.c (rb_mod_const_at): can't list constants of the
  7341.       untainted objects in safe mode.
  7342.  
  7343.     * class.c (method_list): can't list methods of untainted objects
  7344.       in safe mode.
  7345.  
  7346. Tue Jan 26 02:40:41 1999  GOTO Kentaro  <gotoken@math.sci.hokudai.ac.jp>
  7347.  
  7348.     * prec.c: Precision support for numbers.
  7349.  
  7350. Thu Jan 21 19:08:14 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7351.  
  7352.     * eval.c (rb_f_raise): calls `exception' method, not `new'.
  7353.  
  7354.     * error.c (exc_exception): renamed from `new'.
  7355.  
  7356. Wed Jan 20 03:39:48 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7357.  
  7358.     * parse.y (yycompile): rb_in_compile renamed to ruby_in_compile.
  7359.  
  7360.     * ruby.c (load_file): define DATA if __END__ appeared in script.
  7361.  
  7362. Tue Jan 19 14:57:51 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7363.  
  7364.     * parse.y (here_document): need to protect lex_lastline.
  7365.  
  7366.     * parse.y (yylex): disable %//, %'', %``.
  7367.  
  7368. Tue Jan 19 05:01:16 1999  Koji Arai  <JCA02266@nifty.ne.jp>
  7369.  
  7370.     * array.c (beg_len): round range value too much.
  7371.  
  7372. Mon Jan 18 13:02:27 1999  Kuroda Jun  <jkuro@dwe.co.jp>
  7373.  
  7374.     * hash.c (env_keys): strchr() may return NULL.
  7375.  
  7376. Mon Jan 18 17:51:47 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7377.  
  7378.     * instruby.rb (wdir): install libruby.a in archdir.
  7379.  
  7380.     * lib/ftools.rb (install): removes file before installing.
  7381.  
  7382. Mon Jan 18 16:55:31 1999  MAEDA shugo  <shugo@aianet.ne.jp>
  7383.  
  7384.     * eval.c (rb_callcc): experimental continuation support.
  7385.  
  7386. Sun Jan 17 19:45:37 1999  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  7387.  
  7388.     * pack.c (pack_pack): nil packing caused SEGV.
  7389.  
  7390. Sat Jan 16 13:18:03 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7391.  
  7392.     * string.c (rb_str_concat): character (fixnum) can be append to
  7393.       strings
  7394.  
  7395.     * array.c (rb_ary_unshift): unshift returns array.
  7396.  
  7397. Sat Jan 16 01:39:19 1999  Yoshida Masato  <yoshidam@tau.bekkoame.ne.jp>
  7398.  
  7399.     * string.c (rb_str_split_method): UTF-8 support.
  7400.  
  7401.     * regex.c: UTF-8 support.
  7402.  
  7403. Thu Jan 14 00:42:55 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7404.  
  7405.     * string.c (rb_str_gsub_bang): forget to add offset for null match.
  7406.  
  7407.     * eval.c (rb_thread_local_aset): can't modify in tainted mode.
  7408.  
  7409.     * hash.c (env_each_key): avoid generating temporary array.
  7410.  
  7411. Wed Jan 13 23:58:50 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7412.  
  7413.     * hash.c (rb_f_setenv): name and value can be tainted.
  7414.  
  7415. Wed Jan  6 02:42:08 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7416.  
  7417.     * bignum.c (Init_Bignum): forgot to define Bignum#===.
  7418.  
  7419.     * gc.c (gc_sweep): if add_heap() is called during GC, objects on
  7420.       allocated heap page(s) are not marked, should not be recycled.
  7421.  
  7422.     * gc.c (gc_sweep): should refer latest freelist.
  7423.  
  7424.     * gc.c (id2ref): modified to support performance patch.
  7425.  
  7426.     * object.c (rb_obj_id): performance patch (no bignum for id).
  7427.  
  7428. Tue Jan  5 01:56:18 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7429.  
  7430.     * config.guess: merge up-to-date from autoconf 2.12.
  7431.  
  7432.     * array.c (rb_ary_join): avoid calling rb_protect_inspect() till
  7433.       it is really needed.
  7434.  
  7435.     * object.c (rb_obj_inspect): show detailed information for the
  7436.       instance variables (infinite loop can avoid now).
  7437.  
  7438.     * struct.c (rb_struct_inspect): avoid infinite loop.
  7439.  
  7440. Sun Jan  3 01:37:58 1999  Takao KAWAMURA  <kawamura@ike.tottori-u.ac.jp>
  7441.  
  7442.     * misc/ruby-mode.el (ruby-end-of-defun): moved too much.
  7443.  
  7444.     * misc/ruby-mode.el (ruby-mode-variables): set paragraph-separator
  7445.       for the mode.
  7446.  
  7447.     * misc/ruby-mode.el: proper font-lock for `def' and `nil' etc.
  7448.  
  7449. Sat Jan  2 17:09:06 1999  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7450.  
  7451.     * eval.c (rb_jump_tag): new api to invoke JUMP_TAG.  tag values
  7452.       can obtained from rb_eval_string_protect()/rb_load_protect().
  7453.  
  7454.     * eval.c (rb_rescue): now catches all exceptions but SystemExit.
  7455.  
  7456.     * eval.c (rb_eval_string_protect): eval string with protection.
  7457.  
  7458.     * eval.c (rb_load_protect): load file with protection.
  7459.  
  7460.     * io.c (rb_io_puts): avoid infinite loop for cyclic arrays.
  7461.  
  7462.     * eval.c (rb_thread_local_aref): thread local hash tables.
  7463.  
  7464.     * object.c (rb_equal): check exact equal before calling `=='.
  7465.  
  7466. Thu Dec 31 22:28:53 1998  MAEDA shugo  <shugo@aianet.ne.jp>
  7467.  
  7468.     * eval.c (rb_f_require): feature names should be provided with
  7469.       DLEXT extension.
  7470.  
  7471.     * marshal.c (Init_marshal): need to provide `marshal.so'.
  7472.  
  7473. Wed Dec 30 02:29:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7474.  
  7475.     * variable.c (classname): do not call rb_ivar_set().
  7476.  
  7477.     * eval.c (ruby_run): finalizers were called too early.
  7478.  
  7479. Fri Dec 25 12:19:30 1998  Fukuda Masaki  <fukuda@wni.co.jp>
  7480.  
  7481.     * gc.c (rb_gc_mark): should not return on FL_EXIVAR.
  7482.  
  7483. Fri Dec 25 11:56:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7484.  
  7485.     * gc.c (gc_mark): proper scanning for temporary region.
  7486.  
  7487.     * eval.c (TMP_ALLOC): protection for C_ALLOCA was broken.
  7488.  
  7489. Thu Dec 24 18:26:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7490.  
  7491.     * development version 1.3 released.
  7492.  
  7493. Thu Dec 24 00:17:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7494.  
  7495.     * eval.c (rb_load): top self should be set properly.
  7496.  
  7497.     * variable.c (classname): check __classpath__ if it is defined.
  7498.  
  7499.     * variable.c (classname): invalid warning at -v with static linked
  7500.       ruby interpreter.
  7501.  
  7502.     * eval.c (is_defined): modified for expr::Const support.
  7503.  
  7504.     * eval.c (rb_eval): invoke method expr::Const if expr is not class
  7505.       nor module.
  7506.  
  7507.     * parse.y (primary): enable expr::identifier as method
  7508.       invocation.
  7509.  
  7510. Wed Dec 23 03:04:36 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7511.  
  7512.     * regex.c (re_match): avoid too many loop pops for (?:..).
  7513.  
  7514. Tue Dec 22 18:01:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7515.  
  7516.     * experimental version 1.1d1 released.
  7517.  
  7518. Mon Dec 21 01:33:03 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7519.  
  7520.     * eval.c (TMP_PROTECT): add volatile to ensure GC protection.
  7521.  
  7522.     * string.c (rb_str_gsub_bang): calculate buffer size properly.
  7523.  
  7524.     * parse.y (lex_get_str): needed to return Qnil at EOS.
  7525.  
  7526.     * eval.c (find_file): check policy modified, raise exception
  7527.       immediately for tainted load_path.
  7528.  
  7529.     * hash.c (rb_f_setenv): do not depend on setenv() nor putenv().
  7530.  
  7531. Thu Dec 17 06:29:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7532.  
  7533.     * ext/tk/tkutil.c (tk_s_new): use rb_obj_instance_eval(), instead
  7534.       of rb_yield_0().
  7535.  
  7536.     * eval.c (rb_f_require): forgot to call find_file in some cases.
  7537.  
  7538.     * eval.c (rb_f_require): `require "feature.so"' to load dynamic
  7539.       libraries.  old `require "feature.o"' is still OK.
  7540.  
  7541.     * eval.c (rb_eval): yield without value dumped core.
  7542.  
  7543. Wed Dec 16 16:28:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7544.  
  7545.     * experimental version 1.1d0 (pre1.2) released.
  7546.  
  7547. Wed Dec 16 10:43:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7548.  
  7549.     * regex.c (re_search): bound check before calling re_match().
  7550.  
  7551. Tue Dec 15 13:59:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7552.  
  7553.     * error.c (exc_to_s): returns class name for unset mesg.
  7554.  
  7555.     * error.c (exc_initialize): do not initialize @mesg by "".
  7556.  
  7557.     * parse.y (nextc): __END__ should handle CR+LF newlines.
  7558.  
  7559. Wed Dec  9 13:37:12 1998  MAEDA shugo  <shugo@aianet.ne.jp>
  7560.  
  7561.     * pack.c (encodes): use buffering for B-encoding.
  7562.  
  7563.     * pack.c (pack_pack): Q-encoding by 'M'.
  7564.  
  7565. Tue Dec  8 14:10:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7566.  
  7567.     * variable.c (generic_ivar_get): any object can have instance
  7568.       variables now.  great improvement.
  7569.  
  7570.     * variable.c (rb_name_class): do not set __classpath__ by default,
  7571.       use __classid__ instead.
  7572.  
  7573. Mon Dec  7 22:08:22 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7574.  
  7575.     * ruby.h (struct RFile): IO objects can have instance variables now.
  7576.  
  7577.     * parse.y (primary): allows `def obj::foo; .. end'.
  7578.  
  7579. Mon Dec  7 18:24:50 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  7580.  
  7581.     * ruby.c (set_arg0): $0 support for HP-UX.
  7582.  
  7583. Mon Dec  7 01:30:28 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  7584.  
  7585.     * dln.c (dln_strerror): better error messages on win32.
  7586.  
  7587. Sat Dec  5 23:27:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7588.  
  7589.     * parse.y (here_document): indentable here-doc delimiter by
  7590.       `<<-'.  Proposed by Clemens <c.hintze@gmx.net>.  Thanks.
  7591.  
  7592. Thu Dec  3 16:50:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7593.  
  7594.     * ext/extmk.rb.in (realclean): trouble on install.
  7595.  
  7596. Sun Nov 29 22:25:39 1998  Takaaki Tateishi  <ttate@jaist.ac.jp>
  7597.  
  7598.     * process.c (f_exec): check number of argument.
  7599.  
  7600. Thu Nov 26 17:27:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7601.  
  7602.     * version 1.1c9 released.
  7603.  
  7604. Wed Nov 25 13:07:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7605.  
  7606.     * string.c (rb_str_dup): do not copy additional data (STR_NO_ORIG).
  7607.  
  7608.     * parse.y (yycompile): reduce known memory leak (hard to remove).
  7609.  
  7610. Wed Nov 25 03:41:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7611.  
  7612.     * st.c (st_init_table_with_size): round size up to prime number.
  7613.  
  7614. Sat Nov 21 23:27:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7615.  
  7616.     * hash.c (rb_hash_aset): reduce copying key strings.
  7617.  
  7618.     * gc.c (looks_pointerp): declare as inline function if possible.
  7619.  
  7620.     * st.c (PTR_NOT_EQUAL): compare hash values first before calling
  7621.       comparing function.
  7622.  
  7623.     * st.c (ADD_DIRECT): save hash value in entries to reduce hash
  7624.       calculation.
  7625.  
  7626.     * string.c (rb_str_gsub_bang): avoid rb_scan_args() to speed-up.
  7627.  
  7628.     * string.c (rb_str_sub_bang): ditto.
  7629.  
  7630. Sat Nov 21 18:44:06 1998  Masaki Fukushima  <fukusima@goto.info.waseda.ac.jp>
  7631.  
  7632.     * time.c (time_s_now): had memory leak.
  7633.  
  7634.     * ext/md5/md5init.c (md5_new): had memory leak.
  7635.  
  7636.     * ext/md5/md5init.c (md5_clone): ditto.
  7637.  
  7638. Fri Nov 20 23:23:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7639.  
  7640.     * lib/delegate.rb: do not propagate hash and eql?.
  7641.  
  7642. Thu Nov 19 01:40:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7643.  
  7644.     * sample/ruby-mode.el (ruby-expr-beg): failed to find reserved
  7645.       word boundary.
  7646.  
  7647.     * eval.c (rb_eval): avoid calling `concat' method.  calls
  7648.       rb_ary_concat() directly for efficiency.
  7649.  
  7650.     * eval.c (rb_eval): actual rest arguments extended arrays too much.
  7651.  
  7652. Wed Nov 18 14:30:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7653.  
  7654.     * class.c (rb_define_global_function): global functions now be
  7655.       module function of the Kernel.
  7656.  
  7657. Wed Nov 18 10:48:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7658.  
  7659.     * io.c (read_all): SEGV on large files.
  7660.  
  7661. Tue Nov 17 18:11:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7662.  
  7663.     * version 1.1c8 released.
  7664.  
  7665. Tue Nov 17 16:58:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7666.  
  7667.     * parse.y (arg): assignment to attribute name start with capital
  7668.       should be allowed.
  7669.  
  7670.     * eval.c (thread_alloc): needed to mark terminated threads too.
  7671.  
  7672. Tue Nov 17 12:33:48 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>
  7673.  
  7674.     * ext/extmk.rb.in (create_makefile): Set `libdir' to `@libdir@',
  7675.       Set `pkglibdir' to `$libdir/$(RUBY_INSTALL_NAME)'.
  7676.  
  7677. Tue Nov 17 10:30:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7678.  
  7679.     * sprintf.c (f_sprintf): %l%%c -> %%l%c
  7680.  
  7681. Tue Nov 17 01:08:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7682.  
  7683.     * parse.y (ret_args): distinguish `a' and `*a' for the arguments
  7684.       of yield and return.
  7685.  
  7686.     * eval.c (rb_eval): flip3 should work like sed.
  7687.  
  7688.     * eval.c (rb_eval): flip{2,3} now have independent state for each
  7689.       scope to work fine with thread.
  7690.  
  7691. Mon Nov 16 23:26:29 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7692.  
  7693.     * parse.y (primary): exec else clause if no exception raised.
  7694.  
  7695. Sun Nov 15 15:44:07 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  7696.  
  7697.     * ext/extmk.rb.in (install): bug in target.
  7698.  
  7699. Sat Nov 14 11:02:05 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>
  7700.  
  7701.     * Makefile.in (install): Give the argument `$(DESTDIR)' to
  7702.       `instruby.rb'.
  7703.  
  7704.     * instruby.rb: Recognize ARG[0] as `destdir'.
  7705.  
  7706.     * instruby.rb: Give the argument `destdir' to `extmk.rb'.
  7707.  
  7708.     * ext/extmk.rb.in: Recognize ARG[1] as `$destdir'.
  7709.  
  7710.     * instruby.rb: Create the installation directories (bindir, libdir,
  7711.       archdir, pkglibdir, archdir, and mandir) under `destdir', and
  7712.       install all files under there.
  7713.  
  7714.     * ext/extmk.rb.in: Likewise.
  7715.  
  7716. Sat Nov 14 10:56:55 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>
  7717.  
  7718.     * instruby.rb: Add the variable `pkglibdir'.
  7719.  
  7720.     * instruby.rb: Set the variable `libdir' to `$(libdir)', not
  7721.       `$(libdir)/$(ruby_install_name)'. `libruby.so' and `libruby.so.LIB'
  7722.       are installed at `libdir'.
  7723.  
  7724.     * instruby.rb: Set the variable `archdir' to `$(pkglibdir)/$(arch)'.
  7725.  
  7726. Fri Nov 13 19:43:29 1998  KIMURA Koichi  <kbk@kt.rim.or.jp>
  7727.  
  7728.     * missing/nt.c (SafeFree): wrong free offset.
  7729.  
  7730. Thu Nov 12 20:11:53 1998  Koji Arai  <JCA02266@nifty.ne.jp>
  7731.  
  7732.     * sample/ruby-mode.el: wrong highlight.
  7733.  
  7734.     * parse.y (parse_regx): newline in regexp was ignored.
  7735.  
  7736. Wed Nov 11 10:54:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7737.  
  7738.     * parse.y (here_document): <<'FOO' should not escape anything.
  7739.  
  7740.     * parse.y (here_document): bare << here-doc available, even though
  7741.       it's deprecated.
  7742.  
  7743.     * file.c (rb_file_s_readlink): return value should be tainted.
  7744.  
  7745.     * ext/etc/etc.c (setup_passwd): information (eg. GCOS name) should
  7746.       be tainted (modified at Perl Conference).
  7747.  
  7748. Tue Nov 10 00:22:11 1998  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7749.  
  7750.     * configure.in: elf support for FreeBSD 3.x
  7751.  
  7752. Tue Nov 10 00:05:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7753.  
  7754.     * parse.y (yylex): here document available in eval.
  7755.  
  7756. Mon Nov  9 17:55:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7757.  
  7758.     * version 1.1c7 released.
  7759.  
  7760. Fri Nov  6 19:25:27 1998  Takao KAWAMURA  <kawamura@ike.tottori-u.ac.jp>
  7761.  
  7762.     * sample/ruby-mode.el: font-lock patch.
  7763.  
  7764. Thu Nov  5 15:42:22 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7765.  
  7766.     * sample/README, lib/README: simple description for each file.
  7767.  
  7768. Wed Nov  4 18:14:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7769.  
  7770.     * eval.c (assign): attribute assignment should be called as public.
  7771.  
  7772. Tue Nov  3 23:36:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7773.  
  7774.     * string.c (rb_str_dump): dumps core for negative char value.
  7775.  
  7776.     * regex.c (re_compile_pattern): out of boundary access for empty
  7777.       regexp.
  7778.  
  7779. Mon Nov  2 22:54:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7780.  
  7781.     * string.c (rb_str_aset): `str[str]' replaces first match.
  7782.  
  7783. Mon Nov  2 18:24:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7784.  
  7785.     * eval.c (thread_create): was accessing modified status.
  7786.  
  7787. Sun Nov  1 01:18:52 1998  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7788.  
  7789.     * gc.c (xrealloc): size 0 needs round up to 1.
  7790.  
  7791. Sat Oct 31 23:18:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7792.  
  7793.     * string.c (rb_str_split_method): negative LIMIT means number of
  7794.       split fields are unlimited, as in perl.
  7795.  
  7796.     * string.c (rb_str_split_method): if LIMIT is unspecified,
  7797.       trailing null fields are stripped.
  7798.  
  7799. Sat Oct 31 04:16:14 1998  Inaba Hiroto  <inaba@st.rim.or.jp>
  7800.  
  7801.     * string.c (str_aref): regexp index SEGVed.
  7802.  
  7803. Fri Oct 30 14:33:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7804.  
  7805.     * re.c (reg_match): returns nil for unmatch.
  7806.  
  7807.     * dir.c (dir_entries): new method.
  7808.  
  7809.     * eval.c (block_pass): do not push block, substitute it.
  7810.  
  7811. Fri Oct 30 01:28:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7812.  
  7813.     * range.c (range_check): avoid <=> check for Fixnums.
  7814.  
  7815.     * array.c (rb_ary_aset): accept negative index.
  7816.  
  7817. Wed Oct 28 22:00:54 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7818.  
  7819.     * regex.c (re_match): access out of boundary fixed.
  7820.  
  7821. Wed Oct 28 11:37:42 1998  TAMITO  <tommy@valley.ne.jp>
  7822.  
  7823.     * io.c (f_select): fd number comparison bug.
  7824.  
  7825. Tue Oct 27 23:07:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7826.  
  7827.     * sample/ruby-mode.el (ruby-parse-region): forgot to support %w()
  7828.       style array literal.
  7829.  
  7830.     * eval.c (rb_eval): unused block raises warning.
  7831.  
  7832. Mon Oct 26 09:37:53 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7833.  
  7834.     * eval.c (dvar_asgn_push): dvar pushed too many times if
  7835.       variable-in-block first appear in loops.
  7836.  
  7837. Sun Oct 25 22:59:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7838.  
  7839.     * regex.c (set_list_bits): was using wrong offset.
  7840.  
  7841. Thu Oct 22 00:07:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7842.  
  7843.     * eval.c (rb_obj_method): method retrieved from tainted object
  7844.       should be tainted too.
  7845.  
  7846.     * eval.c (method_call): safe_level should be restored during
  7847.       Method#call.
  7848.  
  7849. Wed Oct 21 14:21:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7850.  
  7851.     * io.c (Init_IO): new constants IO::SEEK_{SET,CUR,END}.
  7852.  
  7853.     * io.c (rb_f_ungetc): ungetc pushes a char back into STDIN.
  7854.  
  7855. Mon Oct 19 11:50:00 1998  Motoyuki Kasahara  <m-kasahr@sra.co.jp>
  7856.  
  7857.     * ext/extmk.rb: Load '@top_srcdir@/lib/find.rb', not
  7858.       '../lib/find.rb'.
  7859.  
  7860.     * ext/extmk.rb: Distinguish between `top_srcdir' and `topdir'.
  7861.  
  7862.     * Makefile.in (CFLAGS): Add `-I.'.
  7863.  
  7864.     * Makefile.in (lex.c): Give `@srcdir@/keywords' to gperf, not
  7865.       `keywords'.
  7866.  
  7867.     * instruby.rb: Use `CONFIG["bindir"]', instead of `prefix + "/bin"'.
  7868.  
  7869.     * instruby.rb: Use `CONFIG["libdir"]', instead of `prefix + "/lib"'.
  7870.  
  7871.     * instruby.rb Use `CONFIG["mandir"]', instead of `prefix + "/man"'.
  7872.  
  7873.     * instruby.rb (wdir): Add the variable to preserve the current
  7874.       working directory.
  7875.  
  7876.     * instruby.rb: Chdir to wdir before install `config.h' and
  7877.       `rbconfig.rb'.
  7878.  
  7879. Mon Oct 19 10:07:01 1998  EGUCHI Osamu  <eguchi@shizuokanet.ne.jp>
  7880.  
  7881.     * eval.c (rb_eval): reduce recursive calls to rb_eval().
  7882.  
  7883. Fri Oct 16 15:31:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7884.  
  7885.     * time.c (time_new_internal): timeval must be positive.
  7886.  
  7887. Thu Oct 15 13:54:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7888.  
  7889.     * parse.y (arg): local variables can be accessed within right side
  7890.        expression in assignment, notably in blocks.
  7891.  
  7892. Wed Oct 14 00:18:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7893.  
  7894.     * array.c (Init_Array): Array#=== is now for equal check, not
  7895.       inclusion check.
  7896.  
  7897.     * parse.y (when_args): `when a, *b' style new syntax for array
  7898.       expansion in `case'.
  7899.  
  7900. Tue Oct 13 14:30:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7901.  
  7902.     * object.c (rb_obj_untaint): taint marks can be unset.
  7903.  
  7904.     * eval.c (rb_eval): taint propagation for embedded strings.
  7905.  
  7906. Mon Oct 12 13:27:15 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7907.  
  7908.     * eval.c (rb_call0): check stack depth more frequently.
  7909.  
  7910. Mon Oct 12 08:08:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7911.  
  7912.     * io.c (rb_p): can print even in secure mode.
  7913.  
  7914. Sun Oct 11 22:50:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7915.  
  7916.     * variable.c (rb_const_set): taint check for modification.
  7917.  
  7918.     * variable.c (rb_ivar_set): taint check for modification.
  7919.  
  7920.     * string.c (rb_str_modify): taint check for modification.
  7921.  
  7922.     * hash.c (rb_hash_modify): taint check for modification.
  7923.  
  7924.     * array.c (rb_ary_modify): taint check for modification.
  7925.  
  7926.     * ruby.h (FL_TAINT): taint for all objects, not only strings.
  7927.  
  7928. Fri Oct  9 17:01:14 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7929.  
  7930.     * io.c (read_all): read() returns "" at immediate EOF.
  7931.  
  7932.     * io.c (io_read): read(nil) read all until EOF.
  7933.  
  7934. Thu Oct  8 13:32:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7935.  
  7936.     * time.c (time_dump): marshal can dump Time object now.
  7937.  
  7938.     * marshal.c (Init_marshal): rename marshal methods `_dump_to' to
  7939.        `_dump', `_load_from' to `_load'.
  7940.  
  7941.     * parse.y (rb_intern): "+=".intern generates proper symbol.
  7942.  
  7943. Mon Oct  5 18:31:53 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7944.  
  7945.     * version 1.1c6 released.
  7946.  
  7947. Fri Oct  2 14:22:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7948.  
  7949.     * regex.c (re_search): `/\s*(--)$/ =~ "- --"' did not match,
  7950.       because of wrong optimize condition.
  7951.  
  7952. Mon Oct  1 01:55:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7953.  
  7954.     * parse.y (rb_intern): should not raise exceptions.
  7955.  
  7956.     * parse.y (yylex): symbol like `:foo?=' should not be allowed.
  7957.  
  7958.     * ext/extmk.rb.in: makes *.a for static link modules.
  7959.  
  7960. Wed Sep 30 14:13:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7961.  
  7962.     * eval.c (rb_thread_start): supports making a subclass of the
  7963.       Thread class.
  7964.  
  7965. Tue Sep 29 17:46:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7966.  
  7967.     * eval.c (rb_thread_join): join is now an instance method.
  7968.  
  7969. Fri Sep 25 12:01:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7970.  
  7971.     * parse.y (yylex): `@foo!' should be an error.
  7972.  
  7973. Thu Sep 24 14:55:06 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  7974.  
  7975.     * ext/etc/etc.c (Init_etc): wrong field definition.
  7976.  
  7977. Thu Sep 17 17:09:05 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7978.  
  7979.     * io.c (io_reopen): was creating FILE* for wrong fd.
  7980.  
  7981. Tue Sep 15 05:28:11 1998  Koji Arai  <JCA02266@nifty.ne.jp>
  7982.  
  7983.     * regex.c (re_compile_pattern): forgot to fixup for the pattern
  7984.        like (?=(A)|(B)).
  7985.  
  7986. Tue Sep 15 01:06:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7987.  
  7988.     * io.c (rb_io_gets_internal): do not set $_ by default, only
  7989.       gets/readline set the variable.
  7990.  
  7991.     * eval.c (rb_f_load): load toplevel class is set to anonymous
  7992.       module if safe_level >= 5, to encapsulate modification.
  7993.  
  7994.     * eval.c (rb_f_load): set frame properly.
  7995.  
  7996.     * string.c (rb_str_each_line): do not set $_.
  7997.  
  7998. Mon Sep 14 14:42:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  7999.  
  8000.     * regex.c (re_match): beginning and end of the string, do not
  8001.       automatically match `\b'.
  8002.  
  8003.     * string.c (scan_once): consume at least on character.
  8004.  
  8005.     * regex.c (re_search): wrong behavior for negative range.
  8006.  
  8007. Sat Sep 12 21:21:26 1998  Koji Arai  <JCA02266@nifty.ne.jp>
  8008.  
  8009.     * regex.c (re_search): range value should be maintained.
  8010.  
  8011. Thu Sep 10 10:55:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8012.  
  8013.     * parse.y (backref_error): yyerror does not understand formats.
  8014.  
  8015. Tue Sep  8 18:05:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8016.  
  8017.     * version 1.1c5 released.
  8018.  
  8019. Tue Sep  8 10:03:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8020.  
  8021.     * string.c (str_each_line): wrong line splitting with newline at
  8022.        top of the string.
  8023.  
  8024.     * string.c: non bang methods return copied string.
  8025.  
  8026.     * eval.c (f_END): needed to initialize frame->argc;
  8027.  
  8028. Fri Sep  4 11:27:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8029.  
  8030.     * bignum.c (bigadd): proper sign combination.
  8031.  
  8032.     * regex.c (re_search): wrong return value for \A.
  8033.  
  8034. Thu Sep  3 14:08:14 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8035.  
  8036.     * version 1.1c4 released.
  8037.  
  8038. Tue Sep  1 10:47:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8039.  
  8040.     * regex.c (slow_search): do not compare llen and blen.  llen may
  8041.       be longer than blen, if little contains 0xff.
  8042.  
  8043.     * regex.c (mbctab_euc): set 0x8e as multibyte character.
  8044.  
  8045.     * string.c (str_inspect): mask character for octal output.
  8046.  
  8047. Mon Aug 31 15:32:41 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8048.  
  8049.     * regex.c (re_search): use calculated offset if exactn is the
  8050.       first opcode in the compiled regexp.
  8051.  
  8052.     * regex.c (bm_search): use Boyer-Moore search for simple search.
  8053.  
  8054.     * regex.c (must_instr): wrong length check if pattern includes
  8055.       byte escape by 0xff.
  8056.  
  8057.     * regex.c (re_compile_pattern): need not to check current_mbctype.
  8058.  
  8059. Sat Aug 29 16:31:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8060.  
  8061.     * eval.c (rb_check_safe_str): avoid calling rb_id2name() in normal 
  8062.       cases to speed-up.
  8063.  
  8064.     * eval.c (thread_raise): do not save context of terminated thread.
  8065.  
  8066.     * regex.c (re_compile_pattern): mask \nnn over 256.
  8067.  
  8068. Sat Aug 29 02:09:46 1998  Koji Arai  <JCA02266@nifty.ne.jp>
  8069.  
  8070.     * sprintf.c (f_sprintf): wrong buffer size check.
  8071.  
  8072. Fri Aug 28 01:57:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8073.  
  8074.     * regex.c (re_compile_pattern): accepts (?ix-ix) and (?ix-ix:...).
  8075.  
  8076. Fri Aug 28 12:25:33 1998  Hiroshi Igarashi  <igarashi@ueda.info.waseda.ac.jp>
  8077.  
  8078.     * ruby.c (ruby_require_modules): load modules in appearing order.
  8079.  
  8080. Fri Aug 28 01:57:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8081.  
  8082.     * regex.c (re_compile_pattern): accepts (?ix-ix) and (?ix-ix:...).
  8083.  
  8084. Thu Aug 27 12:54:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8085.  
  8086.     * version 1.1c3 released.
  8087.  
  8088. Wed Aug 26 14:40:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8089.  
  8090.     * eval.c (rb_eval): check whether ruby_class is properly set,
  8091.       before accessing it.
  8092.  
  8093.     * eval.c (rb_obj_instance_eval): ruby_class should be Qnil for
  8094.       special objects like Fixnums.
  8095.  
  8096.     * ext/tkutil/tkutil.c (Init_tkutil): removes calls to
  8097.       rb_yield_0().  used instance_eval() instead in the tk.rb.
  8098.  
  8099. Wed Aug 26 11:47:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8100.  
  8101.     * regex.c (re_match): pop non-greedy stack elements on success.
  8102.  
  8103. Wed Aug 26 09:25:35 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8104.  
  8105.     * ruby.h: add #define environ for cygwin32.
  8106.  
  8107. Tue Aug 25 08:57:41 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8108.  
  8109.     * array.c (rb_ary_sort_bang): temporarily freeze sorting array.
  8110.  
  8111. Mon Aug 24 18:46:44 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8112.  
  8113.     * dln.c (dln_find_1): path check was too strict.
  8114.  
  8115. Mon Aug 24 15:28:11 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8116.  
  8117.     * parse.y (f_arglist): opt_nl added after f_args.
  8118.  
  8119. Fri Aug 21 01:06:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8120.  
  8121.     * ext/socket/socket.c: grand renaming on socket.c.
  8122.  
  8123.     * ext/socket/socket.c (inet_aton): supply inet_aton for those
  8124.       systems that do not have it.
  8125.  
  8126.     * ext/socket/socket.c (setipaddr): use inet_aton instead of
  8127.       inet_addr.
  8128.  
  8129.     * ext/socket/socket.c (tcp_s_gethostbyname): new method: works
  8130.       like Socket.gethostbyname but returning array contains ip-addrs
  8131.       as octet decimal string format like "127.0.0.1".
  8132.  
  8133.     * ext/socket/socket.c (mkhostent): return format changed to
  8134.       [host, aliases, type, ipaddr..]  as documented.
  8135.  
  8136. Wed Aug 19 00:31:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8137.  
  8138.     * io.c (io_ctl): forgot to place TRAP_END at right position.
  8139.  
  8140. Fri Aug 14 11:01:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8141.  
  8142.     * eval.c (call_trace_func): save __FILE__, __LINE__ before
  8143.        executing trace_func, since trace function should not corrupt
  8144.        line number information.
  8145.  
  8146. Thu Aug 13 15:09:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8147.  
  8148.     * array.c (ary_s_new): was marking unallocated region on GC.
  8149.  
  8150. Tue Aug 11 11:57:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8151.  
  8152.     * version 1.1c2 released.
  8153.  
  8154. Mon Aug 10 14:05:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8155.  
  8156.     * process.c (f_system): removed fflush(stdin).
  8157.  
  8158. Fri Aug  7 17:44:44 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8159.  
  8160.     * error.c (err_snprintf): replace sprintf for fixed sized buffer,
  8161.        with snprintf to avoid buffer over-run.  For systems which does
  8162.       dot provide snprintf, missing/snprintf.c added.
  8163.  
  8164. Wed Aug  5 00:47:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8165.  
  8166.     * re.c (rb_reg_search): recycle match object.
  8167.  
  8168. Mon Aug  3 09:17:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8169.  
  8170.     * string.c (rb_str_gsub_bang): do not allocate temporary string.
  8171.  
  8172.     * string.c (rb_str_sub_bang): use inline replace.
  8173.  
  8174. Wed Jul 29 00:36:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8175.  
  8176.     * hash.c (hash_s_new): the default value can be specified.
  8177.  
  8178.     * hash.c (hash_default): method to set the default value.
  8179.  
  8180.     * hash.c (hash_aref): now returns the default value.
  8181.  
  8182. Tue Jul 28 13:03:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8183.  
  8184.     * array.c (ary_s_new): argument to specify initial value is added.
  8185.  
  8186.     * array.c (ary_s_new): specifies size, not capacity.
  8187.  
  8188. Mon Jul 27 12:39:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8189.  
  8190.     * string.c (str_replace): zero fill for expansion gap.
  8191.  
  8192.     * regex.c (mbctab_euc): set flags on for 0xA1-0xFE.  suggested by
  8193.       <inaba@st.rim.or.jp>.
  8194.  
  8195.     * string.c (str_inspect): consider current_mbctype.
  8196.  
  8197. Sun Jul 26 15:37:11 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  8198.  
  8199.     * array.c (ary_s_new): Array.new(1<<30) dumps core.
  8200.  
  8201. Fri Jul 24 13:40:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8202.  
  8203.     * version 1.1c1 released.
  8204.  
  8205. Fri Jul 24 02:10:22 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8206.  
  8207.     * marshal.c (r_bytes2): allocated buffer size was too short.
  8208.  
  8209.     * marshal.c (w_object): saves all options, not only casefold flag.
  8210.  
  8211.     * re.c (reg_clone): now copies options properly.
  8212.  
  8213.     * re.c (reg_get_kcode): code number was wrong.
  8214.  
  8215. Thu Jul 23 13:11:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8216.  
  8217.     * eval.c (rb_attr): argument should be symbol or string.
  8218.  
  8219. Wed Jul 22 11:59:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8220.  
  8221.     * regex.c (calculate_must_string): wrong offset added.
  8222.  
  8223. Wed Jul 22 11:59:59 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8224.  
  8225.     * st.c (rehash): still had a GC problem.  fixed.
  8226.  
  8227. Tue Jul 21 13:19:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8228.  
  8229.     * eval.c (gc_mark_threads): crashed on GC before thread allocation.
  8230.  
  8231.     * st.c (rehash): GC during rehash caused SEGV.
  8232.  
  8233. Tue Jul 21 01:25:10 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8234.  
  8235.     * sprintf.c (f_sprintf): integer formatter totally re-written.
  8236.  
  8237.     * sprintf.c (remove_sign_bits): support uppercase hexadecimal.
  8238.  
  8239. Sat Jul 18 00:14:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8240.  
  8241.     * sprintf.c (f_sprintf): proper sign position for %X and %O.
  8242.  
  8243. Fri Jul 17 14:10:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8244.  
  8245.     * version 1.1c0 released.
  8246.  
  8247. Fri Jul 17 08:01:49 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  8248.  
  8249.     * process.c (f_exec): Check_SafeStr() added.
  8250.  
  8251.     * process.c (f_system): Check_SafeStr() moved before fork().
  8252.  
  8253. Thu Jul 16 22:58:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8254.  
  8255.     * string.c (scan_once): substrings to the block should not be
  8256.        tainted.  use reg_nth_match(), not str_substr().
  8257.  
  8258.     * string.c (str_substr): needed to transfer taint.
  8259.  
  8260. Thu Jul 16 16:15:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8261.  
  8262.     * gc.c (xmalloc): object allocation count added to GC trigger.
  8263.  
  8264.     * eval.c (thread_save_context): avoid marking uninitialized stack
  8265.       in thread_mark.  GC may be triggered by REALLOC_N().
  8266.  
  8267. Wed Jul 15 15:11:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8268.  
  8269.     * experimental release 1.1b9_31.
  8270.  
  8271. Wed Jul 15 15:05:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8272.  
  8273.     * eval.c (thread_create): exit() and abort() in threads now
  8274.        forwarded to main_thread.
  8275.  
  8276. Tue Jul 14 14:03:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8277.  
  8278.     * variable.c (obj_instance_variables): list names that is not
  8279.       instance variables.
  8280.  
  8281.     * gc.c (GC_MALLOC_LIMIT): choose smaller limit value.
  8282.  
  8283. Mon Jul 13 12:39:38 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8284.  
  8285.     * object.c (str2cstr): should not return NULL.
  8286.  
  8287. Fri Jul 10 11:51:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8288.  
  8289.     * parse.y (gettable): needed to add dyna_in_block() check.
  8290.  
  8291. Thu Jul  9 17:38:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8292.  
  8293.     * experimental release 1.1b9_30.
  8294.  
  8295. Thu Jul  9 16:01:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8296.  
  8297.     * sprintf.c (fmt_setup): format specifier for long needed.
  8298.  
  8299.     * sprintf.c (f_sprintf): ditto.
  8300.  
  8301.     * numeric.c (fix2str): ditto.
  8302.  
  8303.     * eval.c (thread_create): no more ITIMER_REAL.
  8304.  
  8305.     * eval.c (thread_create): thread finalization needed before
  8306.       aborting thread if thread_abort is set.
  8307.  
  8308. Wed Jul  8 18:17:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8309.  
  8310.     * bignum.c (big_pow): abandon power by bignum (too big).
  8311.  
  8312. Tue Jul  7 13:58:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8313.  
  8314.     * eval.c (rb_catch): add C level catch/throw feature.
  8315.  
  8316. Mon Jul  6 15:18:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8317.  
  8318.     * parse.y (arg): proper return values for `||=' and `&&='.
  8319.  
  8320. Fri Jul  3 16:05:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8321.  
  8322.     * experimental release 1.1b9_29.
  8323.  
  8324. Fri Jul  3 11:20:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8325.  
  8326.     * marshal.c (r_byte): byte should not extend sign bit.
  8327.  
  8328.     * numeric.c (fix_mul): use FIX2LONG() instead of FIX2INT() for
  8329.       64bit architectures.
  8330.  
  8331.     * marshal.c (r_bytes): remove weird casting between pointer and int.
  8332.  
  8333.     * process.c (proc_setsid): new method Process#setsid().
  8334.  
  8335. Thu Jul  2 12:49:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8336.  
  8337.     * marshal.c (w_object): remove `write_bignum' label for 64bit
  8338.        architectures.
  8339.  
  8340.     * marshal.c (r_bytes): needs int, not long.
  8341.  
  8342. Wed Jul  1 14:21:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8343.  
  8344.     * numeric.c (flo_plus): should not allow addition with strings.
  8345.  
  8346. Wed Jul  1 13:09:01 1998  Keiju ISHITSUKA  <keiju@rational.com>
  8347.  
  8348.     * numeric.c (num_uminus): wrong coerce direction.
  8349.  
  8350. Tue Jun 30 10:13:44 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8351.  
  8352.     * io.c (f_p): accepts arbitrary number of arguments.
  8353.  
  8354.     * eval.c (rb_yield_0): there's some case that iterator_p() returns 
  8355.       true even if the_block was not set.  check added.
  8356.  
  8357. Tue Jun 30 01:05:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8358.  
  8359.     * eval.c (BEGIN_CALLARGS): adjust the_block before evaluating the
  8360.       receiver's value and the arguments.
  8361.  
  8362. Fri Jun 26 18:02:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8363.  
  8364.     * experimental release 1.1b9_28.
  8365.  
  8366. Fri Jun 26 11:01:26 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8367.  
  8368.     * string.c (str_aset_method): needed to convert to string.
  8369.  
  8370. Thu Jun 25 02:05:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8371.  
  8372.     * regex.c (re_search): optimize for `.*' at beginning of the
  8373.       pattern.
  8374.  
  8375.     * regex.c (re_search): optimize for character class repeat at
  8376.       beginning of the pattern.
  8377.  
  8378.     * regex.c (re_compile_pattern): detect optimization potential for
  8379.       the compiled patterns.
  8380.  
  8381. Thu Jun 25 00:02:26 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8382.  
  8383.     * re.c (reg_s_new): flag value was wrong.
  8384.  
  8385. Wed Jun 24 23:45:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8386.  
  8387.     * regex.c (re_search): wrong anchor handling for reverse search.
  8388.  
  8389. Wed Jun 24 02:18:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8390.  
  8391.     * parse.y (mlhs): `((a,b)),c = [[1,2]],3' assigns a=1,b=2,c=3.
  8392.  
  8393. Tue Jun 23 11:46:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8394.  
  8395.     * parse.y (yylex): `&&=' and `||=' added.
  8396.  
  8397. Sat Jun 20 02:53:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8398.  
  8399.     * parse.y (assignable): nesting local variables should have higher
  8400.        priority than normal local variables for assignment too.
  8401.  
  8402. Fri Jun 19 18:28:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8403.  
  8404.     * experimental release 1.1b9_27.
  8405.  
  8406. Fri Jun 19 14:34:49 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8407.  
  8408.     * eval.c (assign): support hack for nested multiple assignment.
  8409.  
  8410.     * parse.y (mlhs): nested multiple assignment.
  8411.  
  8412.     * eval.c (rb_eval): in-block variables now honors static scope.
  8413.  
  8414.     * configure.in: RSHIFT check moved to configure.
  8415.  
  8416. Thu Jun 18 16:46:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8417.  
  8418.     * experimental release 1.1b9_26.
  8419.  
  8420. Thu Jun 18 13:37:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8421.  
  8422.     * file.c (file_s_ftype): uses lstat(2) instead of stat(2).
  8423.  
  8424.     * dir.c (dir_s_glob): there can be buffer overrun, check added.
  8425.  
  8426.     * eval.c (f_binding): handles in-block variables declared after
  8427.       binding's generation.
  8428.  
  8429.     * numeric.c (flo_floor): floor, ceil, round added to Float.
  8430.  
  8431. Wed Jun 17 11:20:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8432.  
  8433.     * parse.y (gettable): nesting local variables should have higher
  8434.        priority than normal local variables.
  8435.  
  8436. Tue Jun 16 12:30:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8437.  
  8438.     * bignum.c (str2inum): handles `+ddd'.
  8439.  
  8440.     * struct.c (make_struct): name parameter can be nil for unnamed
  8441.       structures.
  8442.  
  8443. Mon Jun 15 16:30:10 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8444.  
  8445.     * object.c (class_s_inherited): prohibiting to make subclass of
  8446.       class Class.
  8447.  
  8448.     * object.c (module_s_new): support for making subclass of Module.
  8449.  
  8450.     * parse.y (yycompile): clear eval_tree before compiling.
  8451.  
  8452. Fri Jun 12 17:58:18 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8453.  
  8454.     * eval.c (eval): write back the_dyna_var into the block.
  8455.  
  8456. Thu Jun 11 18:19:18 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8457.  
  8458.     * experimental release 1.1b9_25.
  8459.  
  8460.     * eval.c (dvar_add_compiling): register dyna_var at compile time.
  8461.  
  8462.     * regex.c (re_compile_pattern): RE_DUP_MAX iteration is too big.
  8463.  
  8464. Wed Jun 10 15:12:04 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8465.  
  8466.     * io.c (io_eof): do not block other threads.
  8467.  
  8468.     * signal.c (trap): reserve SIGALRM for thread.
  8469.  
  8470.     * eval.c (thread_create): use ITIMER_REAL also to avoid system
  8471.       call blocking.
  8472.  
  8473.     * io.c (f_syscall): add TRAP_BEG, TRAP_END around system calls.
  8474.  
  8475.     * io.c (io_ctl): add TRAP_BEG, TRAP_END around system calls.
  8476.  
  8477.     * enum.c (enum_collect): did not collect false values.
  8478.  
  8479.     * array.c (ary_new2): forgot to initialize capa field.
  8480.  
  8481. Tue Jun  9 18:36:15 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8482.  
  8483.     * string.c (str_split_method): split dumped core for "\xff".
  8484.  
  8485. Tue Jun  9 16:22:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8486.  
  8487.     * experimental release 1.1b9_24.
  8488.  
  8489. Tue Jun  9 16:04:07 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8490.  
  8491.     * ext/kconv/kconv.c (kconv_guess): more precise decision for EUC,
  8492.       using jless algorithm (3 sequential EUC hiragana characters).
  8493.  
  8494. Tue Jun  9 15:12:44 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8495.  
  8496.     * ext/kconv/kconv.c (kconv_guess): wrong guess for EUC as SJIS in
  8497.       some cases (0xe0 - 0xef).
  8498.  
  8499.     * gc.c (xmalloc): insert size check for big (negative in signed)
  8500.       allocation size.
  8501.  
  8502. Tue Jun  9 02:54:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8503.  
  8504.     * lib/parsedate.rb: wday moved to the last in the return values.
  8505.  
  8506. Mon Jun  8 10:40:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8507.  
  8508.     * string.c (str_split_method): split dumped core for "\0".
  8509.  
  8510. Sat Jun  6 22:50:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8511.  
  8512.     * regex.c (calculate_must_string): wrong condition for
  8513.       {start,stop}_nowidth.
  8514.  
  8515.     * regex.c (re_match): various features imported from GNU regex.c
  8516.        0.12, such as nested grouping, avoiding infinite loop with empty
  8517.        match, etc.
  8518.  
  8519.     * regex.c (register_info_type): now use union.
  8520.  
  8521.     * regex.c (re_search): more precise anchor(^) check.
  8522.  
  8523. Wed Jun  3 18:07:54 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8524.  
  8525.     * re.c (reg_raise): check rb_in_compile, not rb_in_eval.
  8526.  
  8527. Mon Jun  1 05:26:06 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  8528.  
  8529.     * string.c (trnext): casting to signed char* needed.
  8530.  
  8531. Tue Jun  2 16:00:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8532.  
  8533.     * ext/socket/socket.c (udp_addrsetup): error check enhanced.
  8534.  
  8535.     * ext/socket/socket.c (sock_s_getservbyaname): use strtoul(), if
  8536.       possible.
  8537.  
  8538. Sat May 30 07:10:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8539.  
  8540.     * re.c (reg_prepare_re): no more needless regular expression
  8541.        recompile on casefold conditions.
  8542.  
  8543. Thu May 28 18:02:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8544.  
  8545.     * object.c (nil_plus): no more `+' method for nil.
  8546.  
  8547. Wed May 27 17:33:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8548.  
  8549.     * hash.c (hash_fetch): new method.
  8550.  
  8551.     * regex.c (re_search): check whether translate table is set.
  8552.  
  8553. Tue May 26 11:39:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8554.  
  8555.     * experimental release 1.1b9_23.
  8556.  
  8557.     * parse.y (yylex): no UPLUS/UMINUS for 1st argument if
  8558.       parenthesises are omitted.
  8559.  
  8560. Tue May 26 01:09:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8561.  
  8562.     * regex.c (re_compile_pattern): (?XI) for turns off the
  8563.       corresponding option.
  8564.  
  8565. Mon May 25 12:38:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8566.  
  8567.     * regex.c (re_compile_pattern): inline i option (?i).
  8568.  
  8569.     * regex.c (re_compile_pattern): inline x option (?x).
  8570.  
  8571.     * regex.c (re_compile_pattern): x option for regexp.
  8572.  
  8573.     * dir.c (dir_s_open): returns block's evaluated value.
  8574.  
  8575.     * io.c (f_open): returns block's evaluated value.
  8576.  
  8577.     * ext/curses/curses.c (curses_addstr): nil argument caused SEGV.
  8578.  
  8579. Fri May 22 11:52:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8580.  
  8581.     * regex.c (re_compile_pattern): push mark on (?:), so that
  8582.       laststart check for {a,b} can be done.
  8583.  
  8584. Thu May 21 17:31:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8585.  
  8586.     * regex.c (re_match): wrong match (too non-greedy) for `{a,b}?'.
  8587.  
  8588.     * io.c (io_lineno): new method IO#lineno, IO#lineno=.
  8589.  
  8590. Wed May 20 06:04:43 1998  MAEDA shugo  <shugo@aianet.ne.jp>
  8591.  
  8592.     * BeOS patch.
  8593.  
  8594. Wed May 20 16:32:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8595.  
  8596.     * bignum.c (BIGDN): use RSHIFT(), instead of mere `>>'.
  8597.  
  8598. Tue May 19 16:36:26 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8599.  
  8600.     * experimental release 1.1b9_22.
  8601.  
  8602. Tue May 19 16:31:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8603.  
  8604.     * parse.y (assignable): specification changed for in-block
  8605.        variable definition.
  8606.  
  8607.     * eval.c (dyna_var_asgn): error in in-block variables' compile
  8608.        time definition.
  8609.  
  8610.     * parse.y (str_extend): wrong nesting detection.
  8611.  
  8612. Tue May 19 09:47:55 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8613.  
  8614.     * numeric.c (num2int): re-defined (extensions may use this).
  8615.  
  8616. Mon May 18 16:40:50 1998  MAEDA shugo  <shugo@aianet.ne.jp>
  8617.  
  8618.     * error.c (get_syserr): BeOS support.
  8619.  
  8620.     * configure.in: modified for BeOS.
  8621.  
  8622.     * string.c (str_dump): do not call isascii().
  8623.  
  8624.     * sprintf.c (remove_sign_bits): forgot to initialize end pointer.
  8625.  
  8626.     * glob.c: #include <alloca.h> added.
  8627.  
  8628. Mon May 18 14:52:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8629.  
  8630.     * experimental release 1.1b9_21.
  8631.  
  8632. Mon May 18 03:27:57 1998  MAEDA shugo  <shugo@aianet.ne.jp>
  8633.  
  8634.     * file.c (file_s_expand_path): optional second argument
  8635.       `default_directory' added.
  8636.  
  8637. Sat May 16 22:06:52 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8638.  
  8639.     * error.c (RAISE_ERROR): wrong error message
  8640.  
  8641. Fri May 15 14:43:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8642.  
  8643.     * experimental release 1.1b9_20.
  8644.  
  8645. Thu May 14 14:44:21 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8646.  
  8647.     * sun4 cc patches for intern.h and regex.h.
  8648.  
  8649. Thu May 14 14:03:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8650.  
  8651.     * random.c (RANDOM_MAX): guessing proper maximum value for random
  8652.        numbers.
  8653.  
  8654.     * random.c (f_rand): use drand48 if possible.
  8655.  
  8656. Wed May 13 19:05:20 1998  MAEDA shugo  <shugo@aianet.ne.jp>
  8657.  
  8658.     * BeOS patches for io.c, error.c and config.guess.
  8659.  
  8660. Wed May 13 14:56:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8661.  
  8662.     * experimental release 1.1b9_19.
  8663.  
  8664.     * most of the Mac and BeOS patches merged, except path separators.
  8665.  
  8666.     * error.c (err_append): generated SyntaxError was String.
  8667.  
  8668.     * ruby.h: xxx2INT, xxx2UINT checks values as int, not long.
  8669.  
  8670.     * ruby.h: remove typedef's. INT, UINT, UCHAR, USHORT.
  8671.  
  8672. Tue May 12 17:38:00 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8673.  
  8674.     * experimental release 1.1b9_18.
  8675.  
  8676. Tue May 12 11:38:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8677.  
  8678.     * error.c (syserr_errno): returns errno of the SystemCallError.
  8679.  
  8680.     * error.c (rb_sys_fail): saves errno in the Exception.
  8681.  
  8682.     * error.c (set_syserr): no need to protect syserr_list.
  8683.  
  8684.     * error.c (rb_sys_fail): no more bufsize limit.
  8685.  
  8686.     * error.c (set_syserr): integer value of errno can be accessed by
  8687.       Errno::EXXX::Errno.
  8688.  
  8689. Sun May 10 03:10:33 1998  WATANABE Tetsuya  <tetsu@jpn.hp.com>
  8690.  
  8691.     * io.c (io_tell etc.): moved from File class to IO class.
  8692.  
  8693. Fri May  8 12:26:37 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8694.  
  8695.     * pack.c (pack_unpack): should be unsigned int (was signed int).
  8696.  
  8697. Thu May  7 16:34:10 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8698.  
  8699.     * pack.c (pack_pack): `V', `N' uses newly created NUM2UINT().
  8700.  
  8701.     * ruby.h (NUM2UINT): new macro.
  8702.  
  8703.     * bignum.c (big2uint): try to convert bignum into UINT.
  8704.  
  8705.     * re.c (reg_match): needed to return false for match with nil.
  8706.  
  8707.     * gc.c (obj_free): wrong condition to free string.
  8708.  
  8709. Wed May  6 21:08:08 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8710.  
  8711.     * ruby.c (ruby_process_options): modified for DJGPP.
  8712.  
  8713. Wed May  6 15:48:03 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8714.  
  8715.     * experimental release 1.1b9_17.
  8716.  
  8717. Wed May  6 01:37:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8718.  
  8719.     * eval.c: remove global variable `errat'.
  8720.  
  8721.     * eval.c (rb_longjmp): embed error position information in the
  8722.        exception object.
  8723.  
  8724. Sat May  2 12:20:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8725.  
  8726.     * re.c (reg_search): supports reverse search.
  8727.  
  8728.     * string.c (str_index_method): does update $~ etc.
  8729.  
  8730.     * eval.c (f_load): needed to clear the_dyna_vars.
  8731.  
  8732.     * eval.c (dyna_var_asgn): do not push dyna_var, which is id == 0.
  8733.  
  8734.     * error.c (Init_Exception): NotImplementError is no longer
  8735.       StandardError, which is not handled by default rescue.
  8736.  
  8737. Fri May  1 00:35:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8738.  
  8739.     * ruby.c (proc_options): `-d' turns on verbose flag too.
  8740.  
  8741.     * error.c (exception): last argument may be the superclass of the
  8742.       defining exception(s).
  8743.  
  8744.     * io.c (Init_IO): EOFError is now subclass of the IOError.
  8745.  
  8746.     * io.c (Init_IO): forgot to define IOError.
  8747.  
  8748.     * error.c (Init_Exception): old Exception class renamed to
  8749.       StandardError.  Exception now replaces old GlobalExit.
  8750.  
  8751.     * error.c (Init_Exception): Exception is now the root of the
  8752.       Global Exits.  There's no longer GlobalExit class.
  8753.  
  8754.     * util.c (ruby_mktemp): check TMP, TMPDIR first.
  8755.  
  8756. Thu Apr 30 01:08:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8757.  
  8758.     * lib/tk.rb: call 'unknown', if proc not defined.
  8759.  
  8760.     * eval.c (handle_rescue): default rescue handles `Exceptional' not 
  8761.       only the instance of the `Exception's.
  8762.  
  8763.     * eval.c (f_raise): exception can be any object.
  8764.  
  8765.     * time.c (time_gm_or_local): call time_gmtime or time_localtime.
  8766.  
  8767.     * eval.c (f_raise): raises TypeError if the class which is not a
  8768.       subclass of String is specified (checked in exc_new()).
  8769.  
  8770.     * error.c (exc_new): need to check whether invalid class (not a
  8771.       subclass of String) is specified.
  8772.  
  8773. Wed Apr 29 21:05:44 1998  WATANABE Hirofumi  <eban@os.rim.or.jp>
  8774.  
  8775.     * ruby.c (proc_options): option '-e' via tempfile.
  8776.  
  8777. Tue Apr 28 15:27:58 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8778.  
  8779.     * experimental release 1.1b9_16.
  8780.  
  8781. Tue Apr 28 00:07:38 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8782.  
  8783.     * eval.c (obj_is_proc): type check predicate.
  8784.  
  8785.     * eval.c (obj_is_block): ditto.
  8786.  
  8787. Mon Apr 27 16:59:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8788.  
  8789.     * ext/gtk/gtk.c (Init_gtk): use timeout, not idle to avoid
  8790.       consuming CPU too much.
  8791.  
  8792.     * lib/tk.rb: use tcltklib#_invoke instead of `_eval'.
  8793.  
  8794. Mon Apr 27 16:59:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8795.  
  8796.     * array.c (ary_sort): use dup, not clone.
  8797.  
  8798. Mon Apr 27 13:46:27 1998  Tadahiro Maebashi  <maebashi@iij.ad.jp>
  8799.  
  8800.     * ext/tcltklib/tcltklib.c (ip_invoke): invoke tcl command
  8801.       directly.  need not worry about escaping tcl characters.
  8802.  
  8803. Mon Apr 27 12:04:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8804.  
  8805.     * random.c (f_rand): do not call srand() implicitly.
  8806.  
  8807. Fri Apr 24 14:35:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8808.  
  8809.     * experimental release 1.1b9_15.
  8810.  
  8811.     * parse.y (assignable): dyna_var_asgn actually defines nested
  8812.       local variables in outer context.
  8813.  
  8814.     * random.c (f_rand): call srand(), if it has not called yet.
  8815.  
  8816.     * random.c (f_srand): use tv_usec as the default seed.
  8817.  
  8818.     * eval.c (rb_eval): values of nested local variables should be
  8819.        independent.
  8820.  
  8821.     * eval.c (rb_yield_0): local variables wrong nested conditions.
  8822.  
  8823. Wed Apr 22 23:27:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8824.  
  8825.     * io.c (select_get_io): get IO object by `to_io'.
  8826.  
  8827.     * io.c (io_to_io): method to retrieve IO object, from delegating
  8828.        object for example.
  8829.  
  8830. Wed Apr 22 16:52:37 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8831.  
  8832.     * experimental release 1.1b9_14.
  8833.  
  8834.     * string.c (str_modify): check for embedded pointer reference.
  8835.  
  8836.     * gc.c (obj_free): ditto.
  8837.  
  8838.     * pack.c (pack_pack): p/P template to embed pointers.
  8839.  
  8840. Wed Apr 22 00:07:10 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  8841.  
  8842.     * array.c (ary_rindex): embarrassing typo.
  8843.  
  8844. Tue Apr 21 12:31:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8845.  
  8846.     * experimental release 1.1b9_13.
  8847.  
  8848.     * configure.in (RUBY_LIB): supports --program-{prefix,suffix}.
  8849.  
  8850.     * array.c (ary_rindex): new method.
  8851.  
  8852.     * io.c (io_binmode): should return self.
  8853.  
  8854. Tue Apr 21 08:23:04 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  8855.  
  8856.     * parse.y (here_document): calling parse_string with wrong
  8857.       arguments.
  8858.  
  8859.     * struct.c (struct_aset): problem member assignment with name.
  8860.  
  8861. Mon Apr 20 14:47:49 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8862.  
  8863.     * experimental release 1.1b9_12.
  8864.  
  8865.     * time.c (time_arg): args may be string (support for reduced
  8866.       implicit type conversion).
  8867.  
  8868.     * lib/base64.rb: changed to use pack/unpack with `m' template.
  8869.  
  8870. Mon Apr 20 06:23:20 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8871.  
  8872.     * variable.c (mod_remove_const): new method.
  8873.  
  8874. Sat Apr 18 03:53:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8875.  
  8876.     * hash.c (hash_each_with_index): removed.  use Enumerable's
  8877.       each_with_index instead.
  8878.  
  8879.     * class.c (rb_include_module): check for super modules, since
  8880.        module's included modules may be changed.
  8881.  
  8882. Fri Apr 17 21:50:47 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8883.  
  8884.     * marshal.c (r_long): r_byte() may return signed byte.
  8885.  
  8886. Fri Apr 17 11:58:30 1998  NAGAI Hidetoshi  <nagai@dumbo.ai.kyutech.ac.jp>
  8887.  
  8888.     * ext/tcltklib/tcltklib.c (lib_mainloop): thread and interrupt check.
  8889.  
  8890. Fri Apr 17 11:06:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8891.  
  8892.     * eval.c (find_file): try to fopen() to check whether file exists.
  8893.  
  8894.     * ruby.c (load_file): ditto.
  8895.  
  8896.     * struct.c (struct_aset): struct member can be set by member name.
  8897.  
  8898. Fri Apr 17 00:47:19 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  8899.  
  8900.     * ext/extmk.rb.in: added m68k-human support
  8901.  
  8902.     * file.c (LOCK_SH): defines moved.
  8903.  
  8904.     * array.c (ary_flatten_bang): simplified loop.
  8905.  
  8906. Thu Apr 16 16:52:01 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8907.  
  8908.     * experimental release 1.1b9_11.
  8909.  
  8910.     * lib/tk.rb: thread support (experimental - maybe slow).
  8911.  
  8912.     * eval.c (rb_longjmp): trace event on exception in raising
  8913.        context, just before raising exception.
  8914.  
  8915.     * struct.c (struct_s_members): forgot to check singletons.
  8916.  
  8917.     * struct.c (struct_aref): members can be accessed by names too.
  8918.  
  8919.     * array.c (ary_flatten): new method.
  8920.  
  8921.     * eval.c (rb_longjmp): prints exception information with `-d'.
  8922.  
  8923.     * object.c (any_to_s): remove class name restriction.
  8924.  
  8925. Thu Apr 16 01:38:02 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8926.  
  8927.     * file.c (thread_flock): do not block other threads.
  8928.  
  8929.     * eval.c (thread_trap_eval): signals are now delivered to the
  8930.        current thread again.  In case that the current thread is dead,
  8931.        signals are forwarded to the main thread.
  8932.  
  8933.     * string.c (str_new4): need not to duplicate frozen strings.
  8934.  
  8935. Wed Apr 15 08:33:47 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  8936.  
  8937.     * struct.c (struct_inspect): remove restriction for struct names.
  8938.  
  8939. Wed Apr 15 02:55:02 1998  Kazuya 'Sharl' Masuda  <sharl@www.ufo.co.jp>
  8940.  
  8941.     * x68 patches to config.sub, ext/extmk.rb.in
  8942.  
  8943. Wed Apr 15 01:22:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8944.  
  8945.     * string.c (str_dup_frozen): do not duplicate frozen strings.
  8946.  
  8947.     * parse.y (yylex): allow nested parenthesises.
  8948.  
  8949.     * io.c (obj_displayln): prints newline after `display'ing the
  8950.       receiver.
  8951.  
  8952.     * io.c (io_puts): avoid generating "\n" each time.  use RS_default
  8953.        instead.
  8954.  
  8955.     * io.c (f_p): ditto.
  8956.  
  8957. Tue Apr 14 22:18:17 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  8958.  
  8959.     * struct.c (struct_aref): should not subtract negative index.
  8960.  
  8961. Tue Apr 14 11:34:50 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8962.  
  8963.     * experimental release 1.1b9_10.
  8964.  
  8965.     * parse.y: token names prefixed by `t'.
  8966.  
  8967.     * struct.c (struct_s_def): supports subclassing of Struct.
  8968.  
  8969.     * io.c (io_s_new): supports subclassing of IO.
  8970.  
  8971. Mon Apr 13 11:07:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8972.  
  8973.     * eval.c (f_binding): need to restore method name.
  8974.  
  8975.     * eval.c (rb_call0): raises SystemStackError, not Fatal.
  8976.  
  8977.     * io.c (obj_display): same as `print self'.
  8978.  
  8979.     * io.c (f_p): can now be called in the method form.
  8980.  
  8981.     * re.c (reg_regsub): needed to be mbchar aware.
  8982.  
  8983. Mon Apr 13 13:18:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8984.  
  8985.     * eval.c (thread_trap_eval): all signals delivered to main_thread.
  8986.  
  8987. Mon Apr 13 12:47:03 1998  TAKAHASHI Masayoshi  <maki@inac.co.jp>
  8988.  
  8989.     * re.c (kcode_set_option): did not set SJIS on SJIS condition.
  8990.  
  8991. Sun Apr 12 22:14:07 1998  Kazunori NISHI  <kazunori@swlab.csce.kyushu-u.ac.jp>
  8992.  
  8993.     * array.c (ary_uniq_bang): should be `==', not `='. embarrassing.
  8994.  
  8995. Sat Apr 11 02:13:30 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  8996.  
  8997.     * array.c (ary_subseq): SEGVed for `[][1,1]'.
  8998.  
  8999. Fri Apr 10 21:29:06 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  9000.  
  9001.     * array.c (ary_subseq): add check for beg larger than array length.
  9002.  
  9003. Wed Apr  8 17:24:11 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9004.  
  9005.     * dir.c (dir_s_open): can be called with block (like IO#open).
  9006.  
  9007.     * dir.c (dir_s_chdir): print directory path on error.
  9008.  
  9009.     * dir.c (dir_s_chroot): ditto
  9010.  
  9011.     * dir.c (Init_Dir): needed to override `new'.
  9012.  
  9013. Thu Apr  9 18:24:58 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9014.  
  9015.     * experimental release 1.1b9_09.
  9016.  
  9017.     * string.c (str_cmp): do not depend on sentinel at the end of the
  9018.       strings. 
  9019.  
  9020.     * string.c (str_chomp_bang): forgot to set the sentinel.
  9021.  
  9022. Wed Apr  8 00:59:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9023.  
  9024.     * bignum.c (big2int): converted int may be too big to fit in
  9025.       signed int.
  9026.  
  9027.     * parse.y (arg): `foo += 1' should not cause an error.
  9028.  
  9029.     * variable.c (rb_const_defined): returned false even if the
  9030.       constant is defined at the top level.
  9031.  
  9032.     * eval.c (f_local_variables): dyna_var->id may be null.  should
  9033.       have checked before calling str_new2().
  9034.  
  9035. Tue Apr  7 01:15:15 1998  Kaneko Naoshi  <wbs01621@mail.wbs.or.jp>
  9036.  
  9037.     * re.c (reg_regsub): need to check string boundary.
  9038.  
  9039. Tue Apr  7 19:19:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9040.  
  9041.     * string.c (str_cmp): returns either 1, 0, -1.
  9042.  
  9043.     * array.c (ary_cmp): should check array length, too
  9044.  
  9045. Tue Apr  7 18:50:16 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9046.  
  9047.     * experimental release 1.1b9_08.
  9048.  
  9049. Tue Apr  7 18:31:27 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9050.  
  9051.     * instruby.rb (mandir): dll installation for cygwin32
  9052.  
  9053. Tue Apr  7 01:16:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9054.  
  9055.     * config.sub (maybe_os): TOWNS support?
  9056.  
  9057.     * config.guess: too strict check for libc versions on linuxes.
  9058.  
  9059.     * experimental release 1.1b9_07.
  9060.  
  9061.     * array.c (ary_cmp): compare each element using `<=>'.
  9062.  
  9063.     * hash.c (hash_each_with_index): yields [value, key] pair.
  9064.  
  9065.     * class.c (class_protected_instance_methods): list protected
  9066.       method names.
  9067.  
  9068.     * class.c (ins_methods_i): exclude protected methods.
  9069.  
  9070.     * eval.c (PUSH_BLOCK): dynamic variables can be accessed from
  9071.        eval() with bindings.
  9072.  
  9073. Mon Apr  6 14:49:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9074.  
  9075.     * eval.c (thread_yield): must return evaluated value.
  9076.  
  9077. Fri Apr  3 13:07:29 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9078.  
  9079.     * eval.c (thread_schedule): context switch bypassed on wrong
  9080.       conditions.
  9081.  
  9082.     * variable.c (rb_name_class): set classname by id before String
  9083.        class is initialized (1.0 behavior restored).
  9084.  
  9085. Fri Apr  3 11:25:45 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9086.  
  9087.     * numeric.c (num2int): no implicit conversion from string.
  9088.  
  9089.     * numeric.c (num2int): check whether `to_i' returns an Integer.
  9090.  
  9091.     * numeric.c (num_zero_p): new method.
  9092.  
  9093.     * numeric.c (num_nonzero_p): new method.  returns the receiver if
  9094.        it's not zero.
  9095.  
  9096.     * eval.c (obj_instance_eval): the_class should be the object's
  9097.       singleton class.
  9098.  
  9099.     * error.c (exc_s_new): message is converted into a string.
  9100.  
  9101. Thu Apr  2 18:31:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9102.  
  9103.     * eval.c (obj_call_init): every object call `initialize'.
  9104.  
  9105. Wed Apr  1 08:51:53 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  9106.  
  9107.     * parse.y (stmt): UNTIL_MOD should be for stmt, not only for expr.
  9108.  
  9109. Wed Apr  1 01:20:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9110.  
  9111.     * object.c (true_and): boolean operators &, | and ^.
  9112.  
  9113. Tue Mar 31 13:23:58 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9114.  
  9115.     * array.c (ary_compact_bang): returns nil, if it does not modify
  9116.       the array like String's bang methods.
  9117.  
  9118.     * array.c (ary_uniq_bang): new method to remove duplicate items.
  9119.  
  9120.     * eval.c (bind_s_new): new method.
  9121.  
  9122.     * numeric.c (num2int): raise exception if Fixnums too big to
  9123.        convert into `int' in case that sizeof(int) < sizeof(INT).
  9124.  
  9125.     * string.c (str_center): SEGV on negative width.
  9126.  
  9127.     * eval.c (eval): forgot to set sourcefile.
  9128.  
  9129. Mon Mar 30 11:12:29 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9130.  
  9131.     * file.c (f_test): raises exception for unknown command.
  9132.  
  9133.     * eval.c (Init_eval): `class_eval': alias to the module_eval.
  9134.  
  9135. Mon Mar 30 18:50:42 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  9136.  
  9137.     * string.c (str_capitalize_bang): did not check string modification.
  9138.  
  9139.     * string.c (str_delete_bang): wrong conversion.
  9140.  
  9141.     * string.c (str_intern): typo in error message.
  9142.  
  9143. Mon Mar 30 01:44:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9144.  
  9145.     * eval.c (obj_instance_eval): accepts block as evaluation body.
  9146.       No compilation needed each time.
  9147.  
  9148.     * eval.c (mod_module_eval): ditto
  9149.  
  9150.     * file.c (file_s_umask): umask did not return old values, if no
  9151.        argument given.
  9152.  
  9153. Sun Mar 29 00:54:23 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9154.  
  9155.     * eval.c (f_throw): nil returned always.
  9156.  
  9157. Sat Mar 28 20:40:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9158.  
  9159.     * experimental release 1.1b9_06.
  9160.  
  9161. Sat Mar 28 16:07:11 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9162.  
  9163.     * io.c (io_closed): should not cause exception for closed IO.
  9164.  
  9165.     * string.c (str_tr): returned nil for success.
  9166.  
  9167. Sat Mar 28 00:47:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9168.  
  9169.     * eval.c (f_local_variables): new method to return an array of
  9170.        local variable names.
  9171.  
  9172.     * variable.c (obj_instance_variables): now returns an array of
  9173.       variable names, as described in the reference.
  9174.  
  9175.     * eval.c (rb_attr): honors default method visibility of the
  9176.       current scope.
  9177.  
  9178. Fri Mar 27 13:49:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9179.  
  9180.     * experimental release 1.1b9_05.
  9181.  
  9182.     * ruby.c (ruby_prog_init): `site_ruby' added to load_path.
  9183.  
  9184.     * ruby.c (ruby_prog_init): load-path order changed.  Paths in
  9185.        the RUBYLIB environment variable comes first in non-tainted
  9186.        mode.
  9187.  
  9188. Thu Mar 26 11:51:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9189.  
  9190.     * eval.c (rb_call): new feature: `protected' methods.
  9191.  
  9192.     * string.c (str_dump): new method.
  9193.  
  9194.     * eval.c (block_pass): block argument can be nil, which means no
  9195.       block is supplied for the method.
  9196.  
  9197. Wed Mar 25 21:20:13 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  9198.  
  9199.     * string.c (str_reverse_bang): string copied to wrong place.
  9200.  
  9201. Wed Mar 25 08:12:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9202.  
  9203.     * numeric.c (flo_modulo): caused SEGV if left operand is not a
  9204.        float value.
  9205.  
  9206.     * eval.c (f_eval): optional third and fourth argument to specify
  9207.       file-name and line-number.
  9208.  
  9209.     * eval.c (eval): file-name and line-number set properly.
  9210.  
  9211.     * parse.y (assign_in_cond): literal assignment is now warning, not 
  9212.       compile error.
  9213.  
  9214.     * error.c (Warn): Warn() always print message, OTOH Waring()
  9215.       prints when verbose flag is set.
  9216.  
  9217. Tue Mar 24 12:50:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9218.  
  9219.     * ruby.c (ruby_prog_init): `.' should come last in the load-path.
  9220.  
  9221.     * eval.c (Init_eval): `__send__', alias for `send'.
  9222.  
  9223. Mon Mar 23 12:44:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9224.  
  9225.     * string.c (str_chomp_bang): now takes `rs' as an argument.
  9226.  
  9227.     * eval.c (thread_free): main_thread should not be freed.
  9228.  
  9229. Fri Mar 20 16:40:34 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9230.  
  9231.     * string.c (str_chomp_bang): chomp! (and other ! methods) returns
  9232.        nil if it does not modify the string.
  9233.  
  9234.     * string.c (str_sub_iter_s): should check last pattern since it
  9235.        may be matched to null.
  9236.  
  9237. Thu Mar 19 13:48:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9238.  
  9239.     * experimental release 1.1b9_04.
  9240.  
  9241.     * parse.y (yylex): `10e0.9' should cause syntax error.
  9242.  
  9243. Wed Mar 18 17:46:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9244.  
  9245.     * ruby.c (load_file): new file object constant DATA.  Only
  9246.       available for the script from the file.
  9247.  
  9248.     * regex.c (re_match): forwarding failure point popped too much. 
  9249.  
  9250. Tue Mar 17 18:23:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9251.  
  9252.     * math.c (math_frexp): newly added.
  9253.  
  9254.     * math.c (math_ldexp): ditto.
  9255.  
  9256.     * bignum.c (bigdivmod): calculates modulo.
  9257.  
  9258.     * numeric.c (fix_remainder): returns reminder, formerly introduced
  9259.        as modulo.
  9260.  
  9261.     * numeric.c (fix_modulo): calculates proper `modulo'.
  9262.  
  9263.     * bignum.c (bigdivmod): wrong sign for reminder.
  9264.  
  9265. Mon Mar 16 17:07:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9266.  
  9267.     * experimental release 1.1b9_03.
  9268.  
  9269. Mon Mar 16 16:33:53 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9270.  
  9271.     * io.c (pipe_finalize): needed to add pipe_finalize to pipes on
  9272.       cygwin32.
  9273.  
  9274. Mon Mar 16 14:11:06 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9275.  
  9276.     * class.c (ins_methods_i): needed to consider NOEX_UNDEF.
  9277.  
  9278. Mon Mar 16 13:23:53 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9279.  
  9280.     * io.c (io_check_closed): check for `fptr->f2 == NULL'.
  9281.  
  9282.     * io.c (io_fptr_close): ditto.
  9283.  
  9284. Mon Mar 16 11:49:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9285.  
  9286.     * io.c (pipe_atexit): free()ing referencing pipe_list.
  9287.  
  9288.     * range.c (range_length): returns zero, if the first is greater
  9289.       than the last.
  9290.  
  9291.     * signal.c (trap_restore_mask): restore signal mask before raising 
  9292.       exceptions and throws.
  9293.  
  9294. Fri Mar 13 13:49:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9295.  
  9296.     * experimental release 1.1b9_02.
  9297.  
  9298.     * object.c (mod_clone): need to dups constants and instance
  9299.       variables.
  9300.  
  9301.     * eval.c (rb_eval): forgot to initialize body for NODE_DEFS.
  9302.  
  9303.     * eval.c (rb_eval): retrieve self from calling frame, since self
  9304.       changes sometimes.
  9305.  
  9306.     * env.h (FRAME): need to save self in the calling frame.
  9307.  
  9308.     * io.c (f_gets_method): rs should be initialized by RS.
  9309.  
  9310. Thu Mar 12 15:33:57 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9311.  
  9312.     * experimental release 1.1b9_01.
  9313.  
  9314.     * range.c (range_s_new): check values by `first <= last'.
  9315.  
  9316.     * parse.y (lastline_set): fixed offset for $_ and $~ in the local
  9317.       variable space.
  9318.  
  9319. Wed Mar 11 02:14:17 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9320.  
  9321.     * io.c (io_gets): handle normal case specially for speed.
  9322.  
  9323.     * eval.c (rb_disable_super): function to disable superclass's
  9324.       method explicitly.
  9325.  
  9326.     * eval.c (rb_eval): inherits previous method definition's
  9327.       NOEX_UNDEF-ness, if exists.
  9328.  
  9329.     * class.c (rb_define_method): disables superclass's overriding
  9330.        method by default.
  9331.  
  9332. Wed Mar 11 01:40:48 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9333.  
  9334.     * numeric.c (flo_gt,etc.): do not depend on `<=>', to handle NaN.
  9335.  
  9336. Tue Mar 10 00:03:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9337.  
  9338.     * ruby.c (load_file): understands multiple options in #! line.
  9339.  
  9340.     * regex.c (re_compile_pattern): support for [:alpha:] etc.
  9341.  
  9342. Mon Mar  9 16:53:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9343.  
  9344.     * io.h (GetOpenFile): embed io_check_closed in GetOpenFile.
  9345.  
  9346.     * sprintf.c (f_sprintf): zero padding failed for negative
  9347.       integers.
  9348.  
  9349.     * sprintf.c (remove_sign_bits): failed to remove some bits.
  9350.  
  9351. Sat Mar  7 21:51:46 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9352.  
  9353.     * class.c (ins_methods_i): body may be NULL for some case.
  9354.  
  9355. Fri Mar  6 17:23:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9356.  
  9357.     * regex.c (mbcinit): table driven mbchar detection.
  9358.  
  9359.     * object.c (obj_alloc): check for allocating instance for the
  9360.       primitive classes (mostly perfect).
  9361.  
  9362.     * ext/curses/curses.c (curses_finalize): restore original state at 
  9363.       interpreter termination.
  9364.  
  9365.     * ext/curses/curses.c (curses_addstr): forgot to check argument
  9366.       type (caused SEGV).  now uses STR2CSTR() macro.
  9367.  
  9368. Thu Mar  5 13:47:39 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9369.  
  9370.     * eval.c (block_pass): accepts method object as block args.
  9371.  
  9372.     * eval.c (f_missing): use any_to_s() for stringify.
  9373.  
  9374. Wed Mar  4 01:39:52 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9375.  
  9376.     * parse.y (block_arg): new syntax - block argument in the
  9377.       calling arglist.
  9378.  
  9379.     * eval.c (rb_call): no module search. simplified a lot.
  9380.  
  9381.     * eval.c (rb_eval): block arg support.
  9382.  
  9383.     * parse.y (f_block_arg): new syntax - block argument in the
  9384.        formal arglist.
  9385.  
  9386. Tue Mar  3 14:20:15 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9387.  
  9388.     * eval.c (obj_method): returns bound method object.
  9389.  
  9390.     * eval.c (rb_call): argument check for empty methods.
  9391.  
  9392.     * ruby.h (NUM2CHR): new macro, originally from curses module.
  9393.  
  9394. Tue Mar  3 13:03:35 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9395.  
  9396.     * io.c (io_putc): new method.
  9397.  
  9398. Tue Mar  3 11:21:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9399.  
  9400.     * string.c (str_inspect): more strict charcode detection.
  9401.  
  9402.     * eval.c (thread_stop): stopping only thread raises ThreadError
  9403.       exception.
  9404.  
  9405. Tue Mar  3 08:04:56 1998  Tadayoshi Funaba  <tadf@kt.rim.or.jp>
  9406.  
  9407.     * struct.c (struct_alloc): incomplete struct initialization made
  9408.        GC to access unallocated addresses.
  9409.  
  9410. Mon Mar  2 16:28:27 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9411.  
  9412.     * eval.c (thread_stop_method): remove Thread#stop.
  9413.  
  9414. Fri Feb 27 18:16:26 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9415.  
  9416.     * version 1.1b9 released.
  9417.  
  9418. Fri Feb 27 09:36:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9419.  
  9420.     * hash.c (hash_delete_nil): needed to compare value to nil, since
  9421.       nil is the valid key for hashes.
  9422.  
  9423.     * hash.c (hash_foreach_iter): rehashing causes IndexError.
  9424.  
  9425.     * hash.c (hash_foreach_iter): rehash check by pointer comparison.
  9426.  
  9427. Thu Feb 26 17:22:13 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9428.  
  9429.     * parse.y (fname): convert reswords into symbols.
  9430.  
  9431.     * parse.y (reswords): reserved words are now embedded in the
  9432.        syntax (sigh).
  9433.  
  9434.     * parse.y: now reserved words can be method names safely.
  9435.  
  9436. Wed Feb 25 15:50:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9437.  
  9438.     * eval.c (mod_module_eval): clear the_scope's PRIVATE flag before
  9439.       calling eval().
  9440.  
  9441.     * gc.c (gc_call_finalizer_at_exit): run finalizers before any data 
  9442.       object being freed.
  9443.  
  9444.     * eval.c (rb_eval): needed to keep prot_tag->retval before
  9445.       evaluating the ensure clause.
  9446.  
  9447. Tue Feb 24 11:16:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9448.  
  9449.     * parse.y (yylex): reserved words can be appear as method names at
  9450.        right after 'def' and `.'(dot), like foo.next.
  9451.  
  9452.     * eval.c (return_check): checks for return out of thread (formerly
  9453.        done in return_value).
  9454.  
  9455.     * eval.c (POP_TAG): copy retval to outer level.
  9456.  
  9457.     * eval.c (return_value): just set retval, no check, no unwinding.
  9458.  
  9459.     * parse.y (nextc): line continuation by backslash at end of line.
  9460.  
  9461.     * regex.c (re_compile_pattern): forgot to clear pending_exact on
  9462.       closing parentheses.
  9463.  
  9464.     * parse.y (assignable): should not assign dyna_var to true, if it
  9465.        is already defined.
  9466.  
  9467. Mon Feb 23 14:35:03 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9468.  
  9469.     * object.c (obj_is_kind_of): no longer accepts true/false/nil.
  9470.  
  9471.     * object.c ({true,false,nil}_to_i): can be converted into integers.
  9472.  
  9473. Mon Feb 23 12:11:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9474.  
  9475.     * re.c (reg_s_quote): needed to be mbchar aware.
  9476.  
  9477.     * eval.c (proc_s_new): wrong iter mark.
  9478.  
  9479. Sat Feb 21 22:59:30 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9480.  
  9481.     * io.c (f_syscall): no argument check.
  9482.  
  9483. Fri Feb 20 10:17:51 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9484.  
  9485.     * version 1.1b8 released.
  9486.  
  9487.     * ext/kconv/kconv.c (kconv_kconv): default output code now be
  9488.       determined according to the value of $KCODE.
  9489.  
  9490.     * re.c (rb_get_kcode): can retrieve $KCODE from C code. 
  9491.  
  9492.     * parse.y (stmt): if/unless modifiers returns nil, if condition is 
  9493.       not established.
  9494.  
  9495. Thu Feb 19 11:06:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9496.  
  9497.     * ext/kconv/kconv.c (kconv_kconv): charcode can be specified by
  9498.       code name (JIS, SJIS, EUC like value of $KCODE).
  9499.  
  9500.     * regex.c (re_compile_pattern): forgot to fixup_jump for (?:..).
  9501.  
  9502.     * regex.c (re_compile_pattern): needed to clear pending_exact on
  9503.       non-registering grouping (?:...).
  9504.  
  9505. Wed Feb 18 19:54:21 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9506.  
  9507.     * parse.y (here_document): needed to set lex_state to EXPR_END.
  9508.  
  9509. Wed Feb 18 18:45:10 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9510.  
  9511.     * patches for cygwin32 applied.
  9512.  
  9513. Wed Feb 18 00:41:31 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9514.  
  9515.     * string.c (str_sub_s): needed to be mbchar aware to increment one
  9516.        character.
  9517.  
  9518.     * regex.c (re_match): \Z matches newline just before the end of
  9519.       the string.
  9520.  
  9521. Tue Feb 17 00:04:32 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9522.  
  9523.     * time.c (time_arg): Time.gm and Time.local now understands
  9524.        Time#to_a format.
  9525.  
  9526.     * string.c (str_sub_s): replace happened twice for null pattern.
  9527.  
  9528.     * regex.c (re_search): null pattern should not match after newline 
  9529.       at the end of string.
  9530.  
  9531.     * time.c (time_isdst): now returns boolean value.
  9532.  
  9533.     * error.c (rb_check_type): treat special constants in messages.
  9534.  
  9535.     * parse.y (yylex): new form `::Const' to see toplevel constants.
  9536.  
  9537.     * parse.y (cond): SEGV on `if ()'.
  9538.  
  9539.     * gc.c (obj_free): some data needed explicit free().
  9540.  
  9541. Mon Feb 16 23:55:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9542.  
  9543.     * eval.c (blk_free): release duplicated block informations.
  9544.  
  9545.     * eval.c (blk_copy_prev): duplicate outer block information into
  9546.        the heap, when proc/binding created.
  9547.  
  9548. Mon Feb 16 14:38:25 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9549.  
  9550.     * time.c (time_mon): now 1 for January and so on.
  9551.  
  9552.     * time.c (time_year): year in 19xx (no + 1900 needed anymore).
  9553.  
  9554. Mon Feb 16 13:28:33 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9555.  
  9556.     * regex.c (re_compile_pattern): need to fetch mbchar's second byte
  9557.        without translation.
  9558.  
  9559. Mon Feb 16 12:29:27 1998  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9560.  
  9561.     * eval.c (f_pass_block): pass iterator block to other method.
  9562.  
  9563. Fri Feb 13 08:16:11 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9564.  
  9565.     * parse.y (parse_regx): handle \s before read_escape().
  9566.  
  9567.     * parse.y (read_escape): `\s' in strings as space.
  9568.  
  9569. Tue Feb 10 17:29:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9570.  
  9571.     * version 1.1b7 released.
  9572.  
  9573.     * string.c (str_aset): string insertion by `str[n] = str2'.
  9574.  
  9575.     * string.c (str_oct): does recognize `0x'.
  9576.  
  9577.      * sprintf.c (f_sprintf): use base 10 for conversion from string to
  9578.        integer.
  9579.  
  9580. Mon Feb  9 14:51:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9581.  
  9582.     * numeric.c (do_coerce): proper error message.
  9583.  
  9584.     * string.c (str_sum): bug - masked by wrong value. (sigh..)
  9585.  
  9586. Sat Feb  7 15:11:14 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9587.  
  9588.     * string.c (str_empty): new method
  9589.  
  9590. Fri Feb  6 01:42:15 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9591.  
  9592.     * time.c (time_asctime): use asctime(3), not strftime(3).
  9593.  
  9594. Thu Feb  5 18:58:46 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9595.  
  9596.     * io.c (io_fptr_close): do not free path on close().
  9597.  
  9598.     * array.c (ary_filter): new method.
  9599.  
  9600.     * enum.c (enum_each_with_index): new method.
  9601.  
  9602. Thu Feb  5 14:10:35 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9603.  
  9604.     * parse.y (primary): singleton class def can be appeared inside
  9605.        method bodies.
  9606.  
  9607.     * hash.c (hash_replace): replace content.
  9608.  
  9609.     * string.c (str_replace_method): replace content.
  9610.  
  9611.     * array.c (ary_replace_method): replace elements.
  9612.  
  9613.     * string.c (str_succ_bang): String#succ!
  9614.  
  9615. Thu Feb  5 18:20:30 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9616.  
  9617.     * string.c (str_upcase_bang): multi byte character support.
  9618.  
  9619. Wed Feb  4 13:55:26 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9620.  
  9621.     * array.c (ary_reverse): SEGV on empty array reverse.
  9622.  
  9623. Tue Feb  3 12:24:07 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9624.  
  9625.     * re.c (match_to_a): non matching element should be nil.
  9626.  
  9627.     * ruby.c (ruby_load_script): load script after all initialization.
  9628.  
  9629.     * bignum.c (str2inum): need to interpret prefix `0' of `0x'.
  9630.  
  9631. Tue Feb  3 10:00:18 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9632.  
  9633.     * numeric.c (fix_rshift): use `sizeof(INT)*8' instead of 32.
  9634.  
  9635. Mon Feb  2 14:09:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9636.  
  9637.     * ruby.c (set_arg0): grab environment region too.
  9638.  
  9639. Thu Jan 29 18:36:25 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9640.  
  9641.     * process.c (rb_proc_exec): check `sh' to be exist.
  9642.  
  9643. Thu Jan 29 18:18:19 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9644.  
  9645.     * io.c (io_stdio_set): assignment to $stdin or $stdout does
  9646.       reopen() as well as $stderr.
  9647.  
  9648. Thu Jan 29 14:18:40 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9649.  
  9650.     * class.c (mod_ancestors): should not include singleton classes.
  9651.  
  9652.     * object.c (obj_type): should not return internal class.
  9653.  
  9654.     * io.c (io_reopen): unwillingly closes stdio streams.
  9655.  
  9656. Thu Jan 29 11:50:35 1998  Toshihiko SHIMOKAWA  <toshi@csce.kyushu-u.ac.jp>
  9657.  
  9658.     * ext/socket/socket.c (udp_addrsetup): forgot to use htons().
  9659.  
  9660. Tue Jan 27 23:15:24 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9661.  
  9662.     * keywords: __FILE__, __LINE__ are available again.
  9663.  
  9664. Fri Jan 23 14:19:28 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9665.  
  9666.     * version 1.1b6 released.
  9667.  
  9668.     * object.c (mod_to_s): need to duplicate classpath.
  9669.  
  9670.     * error.c (exc_inspect): need to duplicate classpath.
  9671.  
  9672. Thu Jan 22 00:37:47 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9673.  
  9674.     * ruby.h (STR2CSTR): new macro to retrieve char*.
  9675.  
  9676.     * class.c (rb_define_method): `initialize' should always be
  9677.       private, even if it defined by C extensions.
  9678.  
  9679.     * eval.c (rb_eval): `initialize' should always be private.
  9680.  
  9681. Thu Jan 22 16:21:08 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9682.  
  9683.     * eval.c (rb_eval): some singleton class def cause SEGV.
  9684.  
  9685.     * eval.c (TMP_ALLOC): replace ALLOCA_N, where thread context
  9686.        switch may happen.
  9687.  
  9688. Wed Jan 21 01:43:42 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9689.  
  9690.     * eval.c (PUSH_FRAME): do not use ALLOCA_N().  crash on some
  9691.       platforms that use missing/alloca.c.
  9692.  
  9693.     * regex.c (re_compile_pattern): too many pops for non register
  9694.       subexpr.
  9695.  
  9696.     * parse.y (yylex): open parentheses after identifiers are argument 
  9697.       list, even if whitespaces have seen.
  9698.  
  9699. Tue Jan 20 15:19:59 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9700.  
  9701.     * parse.y (terms): quoted word list by %w(a b c).
  9702.  
  9703.     * ext/tcltklib/extconf.rb: more accurate check for tcl/tk libs.
  9704.  
  9705.     * file.c (rb_stat): most of the FileTest methods (and function
  9706.        `test') accept File objects as the argument.
  9707.  
  9708. Tue Jan 19 18:19:24 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9709.  
  9710.     * ext/extmk.rb.in (install): there should be no newline after install:
  9711.  
  9712.     * re.c (MIN): renamed from min().  there's a local variable named
  9713.        min in the file, so that some cpp will raise an error.
  9714.  
  9715. Mon Jan 19 16:30:05 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9716.  
  9717.     * version 1.1b5 released.
  9718.  
  9719.     * process.c (rb_syswait): no exception raised.
  9720.  
  9721. Fri Jan 16 00:43:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9722.  
  9723.     * ruby.h (CLONESETUP): copies its singleton classes too.
  9724.  
  9725.     * class.c (singleton_class_attached): saves binded object in the
  9726.       singleton classes.
  9727.  
  9728.     * eval.c (rb_eval): calls singleton_method_added even in the
  9729.       singleton class clauses.
  9730.  
  9731. Fri Jan 15 23:22:43 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9732.  
  9733.     * ruby.c (proc_options): -S does not recognize PATH.
  9734.  
  9735. Thu Jan 15 02:03:12 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9736.  
  9737.     * eval.c (rb_clear_cache_by_id): clear only affected cache
  9738.       entries.
  9739.  
  9740. Wed Jan 14 02:14:48 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9741.  
  9742.     * ext/socket/socket.c: new UDP/IP socket classes.
  9743.  
  9744. Tue Jan 13 10:00:18 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9745.  
  9746.     * string.c (str_cmp): ignorecase($=) works wrong.
  9747.  
  9748. Fri Jan  9 13:19:55 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9749.  
  9750.     * version 1.1b4 released.
  9751.  
  9752.     * eval.c (f_missing): class name omitted from the error message.
  9753.  
  9754.     * error.c (exc_inspect): description changed.
  9755.  
  9756.     * string.c (Init_String): GlobalExit's superclass did not filled,
  9757.       since GlobalExit created earlier than String.
  9758.  
  9759. Thu Jan  8 12:10:09 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9760.  
  9761.     * parse.y (aryset): expr in the brackets can be null.
  9762.  
  9763. Wed Jan  7 21:13:56 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9764.  
  9765.     * io.c (io_reopen): keep stderr unclosed.
  9766.  
  9767.     * io.c (io_errset): keep stderr unclosed.
  9768.  
  9769. Tue Jan  6 00:27:43 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9770.  
  9771.     * parse.y: syntax modified for `while expr do .. end' etc.
  9772.  
  9773.     * process.c (f_exec,f_system): can supply arbitrary name for the
  9774.        new process.
  9775.  
  9776. Mon Jan  5 16:59:13 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9777.  
  9778.     * file.c (file_s_basename): removes any extension by ".*".
  9779.  
  9780. Sun Jan  4 19:36:22 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9781.  
  9782.     * parse.y (yylex): needed to update lex_p (reading point).
  9783.  
  9784. Sat Jan  3 19:14:14 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9785.  
  9786.     * class.c,object.c: duplicate defines mKernel and cFinxnum.
  9787.  
  9788. Fri Jan  2 20:38:59 1998  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9789.  
  9790.     * ext/curses/curses.c (NUM2CHAR): uses the first character for
  9791.        string arguments.
  9792.  
  9793.     * array.c (ary_fill): did not extend array for ranges.
  9794.  
  9795.     * array.c (beg_len): did not return end pos bigger than size.
  9796.  
  9797. Fri Jan  2 02:09:16 1998  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9798.  
  9799.     * dir.c (dir_s_chdir): bug in nil check.
  9800.  
  9801.     * array.c (ary_fill): bug in nil check.
  9802.  
  9803. Tue Dec 30 11:46:23 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9804.  
  9805.     * hash.c (env_path_tainted): checks directories in PATH
  9806.       environment variable are not world writable.
  9807.  
  9808.     * ruby.c (load_file): invoke specified interpreter if the #! line
  9809.        does not contain the word `ruby'.
  9810.  
  9811. Fri Dec 26 03:26:41 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9812.  
  9813.     * string.c (uscore_get): type information included in the error
  9814.        message.
  9815.  
  9816.     * variable.c (f_untrace_var): does not free trace-data within
  9817.        trace procedure.
  9818.  
  9819. Thu Dec 25 02:50:29 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9820.  
  9821.     * version 1.1b3 released.
  9822.  
  9823.     * ruby.h: inlining some functions on gcc 2.x
  9824.  
  9825. Tue Dec 23 02:47:33 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9826.  
  9827.     * eval.c (rb_eval): public/private information kept in the current 
  9828.       scope, to remove undesired state from the class/module.
  9829.  
  9830.     * time.c (time_strftime): remove hidden limit of 100 bytes of
  9831.       result string, using malloc'ed buffer. 
  9832.  
  9833.     * hash.c (hash_update): merges the contents of another hash,
  9834.       overriding existing keys.
  9835.  
  9836.     * regex.c (must_instr): totally re-written.
  9837.  
  9838.     * io.c (read_all): try to allocate proper sized buffer using
  9839.       fstat(2) for speedup.
  9840.  
  9841. Sat Dec 20 00:27:28 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9842.  
  9843.     * regex.c (must_instr): need to skip 2 bytes for mbchars.
  9844.  
  9845. Fri Dec 19 01:18:29 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9846.  
  9847.     * version 1.1b2 released.
  9848.  
  9849.     * eval.c (check_errat): check and convert (if necessary) traceback 
  9850.       information before assigning to the variable $@.
  9851.  
  9852.     * eval.c (f_raise): optional third argument to specify traceback
  9853.       information.
  9854.  
  9855.     * io.c (f_open): prevent infinite recursive call.
  9856.  
  9857. Thu Dec 18 19:33:47 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9858.  
  9859.     * string.c (str_rindex): now accepts regexp as index.
  9860.  
  9861. Thu Dec 18 18:42:50 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9862.  
  9863.     * ext/socket/extconf.rb: modified to detect win32 socket lib.
  9864.  
  9865. Thu Dec 18 00:25:03 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9866.  
  9867.     * re.c (reg_equal): checks for source and casefold and kcode matching.
  9868.  
  9869.     * marshal.c: became built-in module.
  9870.  
  9871.     * ext/marshal/marshal.c (r_object): displays struct name for
  9872.       non-compatible struct.
  9873.  
  9874.     * string.c (str_index_method): now searches character (fixnum) in
  9875.       the string.
  9876.  
  9877.     * string.c (str_include): redefine `include?'.
  9878.  
  9879.     * regex.c (re_match): start_nowidth saves current stack position
  9880.       to stop_nowidth.
  9881.  
  9882.     * regex.c (re_compile_pattern): add space to stop_nowidth to save
  9883.       runtime stack position.
  9884.  
  9885. Tue Dec 16 14:57:43 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9886.  
  9887.     * string.c (scan_once): wrong exception for regexp that match with 
  9888.       null string (use substr instead of subseq).
  9889.  
  9890. Sat Dec 13 00:13:32 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9891.  
  9892.     * parse.y (expr): remove bare assocs from expr rule.
  9893.  
  9894.     * rbconfig.rb: renamed from config.rb (it was too generic name).
  9895.  
  9896. Fri Dec 12 00:50:25 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9897.  
  9898.     * parse.y (expr): warns if BEGIN or END appear in the method
  9899.        bodies.
  9900.  
  9901.     * string.c (str_match): calls y =~ x if y is neither String nor
  9902.       Regexp so that eregex.rb works.  
  9903.  
  9904.     * eval.c (f_at_exit): to register end proc.
  9905.  
  9906.     * class.c (rb_define_module_function): define 'function' method
  9907.       for the Module, not private method.
  9908.  
  9909.     * class.c (rb_define_function): function to define `function' method.
  9910.  
  9911.     * eval.c (rb_eval): inherit visibility from superclass's method
  9912.       except when it is set to `function'
  9913.  
  9914.     * eval.c (rb_eval): new visibility status `function'.
  9915.  
  9916.     * parse.y (yycompile): do not clear eval_tree. thus enable multiple 
  9917.       command line script by option `-e'.
  9918.  
  9919.     * eval.c (rb_eval): END execute just once.
  9920.  
  9921.     * parse.y (expr): BEGIN/END built in the syntax.
  9922.  
  9923. Thu Dec 11 13:14:35 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9924.  
  9925.     * object.c (mod_le): Module (or Class) comparison.
  9926.  
  9927.     * eval.c (rb_remove_method): raises NameError if named method does 
  9928.       not exist.
  9929.  
  9930.     * ext/curses/curses.c: remove CHECK macro for BSD curses.
  9931.  
  9932. Thu Dec 11 12:44:01 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  9933.  
  9934.     * pack.c: sun4 cc patch
  9935.  
  9936. Wed Dec 10 15:21:36 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9937.  
  9938.     * ext/marshal/marshal.c (marshal_load): can supply evolution proc
  9939.       object as optional second argument.
  9940.  
  9941.     * re.c (reg_source): get source string of the regular expression.
  9942.  
  9943. Tue Dec  9 10:05:17 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9944.  
  9945.     * version 1.1b1 released.
  9946.  
  9947.     * parse.y (tokadd): token buffer overrun.
  9948.  
  9949.     * ruby.c (ruby_prog_init): forgot to protect rb_argv0 from gc.
  9950.  
  9951.     * eval.c (ruby_run): call finalizers at process termination.
  9952.  
  9953.     * gc.c (gc_call_finalizer_at_exit): call free proc for every Data
  9954.        Wrapper, and finalizer for specified objects at termination.
  9955.  
  9956.     * version.c (show_version): version format changed.
  9957.  
  9958.     * regex.c (re_match): wrong match with non-greedy if they appear
  9959.       more than once in regular expressions.
  9960.  
  9961.     * sample/ruby-mode.el (ruby-expr-beg): forgot to handle modifiers.
  9962.  
  9963. Mon Dec  8 19:00:15 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9964.  
  9965.     * io.c (io_puts): just put a newline if no argument given.
  9966.  
  9967.     * ext/tcltklib/tcltklib.c (lib_mainloop): thread-aware tk handle
  9968.        when $tk_thread_safe is set.
  9969.  
  9970.     * ext/tcltklib/tcltklib.c (lib_mainloop): use Tcl_DoOneEvent()
  9971.       instead of Tk_MainLoop().
  9972.  
  9973. Mon Dec  6 07:11:16 1997  MAEDA shugo  <shugo@po.aianet.ne.jp>
  9974.  
  9975.     * io.c (io_puts): core dumped without any argument.
  9976.  
  9977. Fri Dec  5 18:17:17 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9978.  
  9979.     * eval.c (mod_remove_method): remove (not undef) a method from the 
  9980.       class/module.
  9981.  
  9982.     * variable.c (obj_remove_instance_variable): method to remove
  9983.       instance variables.
  9984.  
  9985. Thu Dec  4 13:50:29 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9986.  
  9987.     * version 1.1b0 released.
  9988.  
  9989.     * string.c (str_aref): called str_index for regexp.
  9990.  
  9991. Mon Dec  1 15:24:41 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9992.  
  9993.     * compar.c (cmp_between): wrong comparison made.
  9994.  
  9995. Wed Nov 26 18:18:05 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  9996.  
  9997.     * lib/mkmf.rb: generate Makefile for extension modules out of ruby 
  9998.       source tree. use like `ruby -r mkmf extconf.rb'.
  9999.  
  10000.     * numeric.c (fix2str): enlarge buffer to prevent overflow on some
  10001.       machines.
  10002.  
  10003.     * parse.y (here_document): wrong line number generated after here-doc.
  10004.  
  10005. Fri Nov 21 13:17:12 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10006.  
  10007.     * parse.y (yylex): skip multibyte characters in comments.
  10008.  
  10009. Wed Nov 19 17:19:20 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10010.  
  10011.     * object.c (nil_to_a): nil.to_a => [].
  10012.  
  10013.     * parse.y (call_args): wrong node generation.
  10014.  
  10015. Tue Nov 18 10:13:08 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10016.  
  10017.     * array.c (Init_Array): Array#=== works as Array#include?
  10018.  
  10019.     * regex.c (re_compile_pattern): insert initialize code for jump_n, 
  10020.       before entering loops.
  10021.  
  10022.     * re.c (reg_search): does not save registers unless $& etc appear
  10023.       in the script.
  10024.  
  10025. Mon Nov 17 13:01:43 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10026.  
  10027.     * eval.c (is_defined): add defined? check for receivers and
  10028.        arguments for calls.
  10029.  
  10030.     * re.c (reg_search): cache last match object.
  10031.  
  10032.     * re.c (match_aref): $[0] etc. are available.
  10033.  
  10034. Sat Nov 15 00:11:36 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10035.  
  10036.     * io.c (io_s_popen): "rb" detection
  10037.  
  10038. Fri Nov 14 18:28:40 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10039.  
  10040.     * string.c (scan_once): returns whole match if the pattern does
  10041.       not contain any parentheses.
  10042.  
  10043. Thu Nov 13 14:39:06 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10044.  
  10045.     * string.c (str_sub): returns copy of the receiver string, even if 
  10046.       any substitution occurred.
  10047.  
  10048.     * regex.c (re_compile_pattern): no-width match by (?=..), (?!..).
  10049.  
  10050. Wed Nov 12 13:44:47 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10051.  
  10052.     * time.c: remove coerce from Time class.
  10053.  
  10054.     * regex.c (re_match): non-greedy match by ??, *? +?, {n,m}?.
  10055.  
  10056. Mon Nov 10 11:24:51 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10057.  
  10058.     * regex.c (re_compile_pattern): non-registering parens (?:..).
  10059.  
  10060.     * regex.c (re_compile_pattern): new meta character \< (wordbeg)
  10061.       and \> (wordend).
  10062.  
  10063.     * regex.c (re_compile_pattern): embedded comment for regular
  10064.       expression by (?#...).
  10065.  
  10066. Fri Nov  7 16:58:24 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10067.  
  10068.     * regex.c (re_compile_pattern): perl5 regxp \A and \Z available.
  10069.  
  10070.     * regex.c (re_compile_pattern): can expand compile stack dynamically.
  10071.  
  10072.     * regex.c (PUSH_FAILURE_POINT): wrong compare condition.
  10073.  
  10074. Wed Nov  2 16:00:00 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10075.  
  10076.     * string.c (str_sub_s): "".sub! "", "" => "\000"
  10077.  
  10078. Fri Oct 31 15:52:10 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10079.  
  10080.     * parse.y (assoc): keyword assoc like {fg->"black"}.
  10081.  
  10082. Thu Oct 30 17:33:38 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10083.  
  10084.     * io.c (io_println): print with newline, which is not affected by
  10085.       the values of $/ and $\.
  10086.  
  10087. Thu Oct 30 16:54:01 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10088.  
  10089.     * string.c (str_chop_bang): "".chop caused SEGV.
  10090.  
  10091.     * string.c (str_chomp_bang): method to chop out last newline.
  10092.  
  10093. Mon Oct 27 13:49:13 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10094.  
  10095.     * ext/extmk.rb.in: library may have pathname contains `.'
  10096.  
  10097.     * eval.c (rb_rescue): should not protect SystemError.
  10098.  
  10099. Fri Oct 24 10:58:53 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10100.  
  10101.     * io.c (io_s_with_open_stream): ensures to close stream.
  10102.  
  10103. Thu Oct 23 11:17:44 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10104.  
  10105.     * io.c (io_errset): value of $stderr can be changed (to any IO
  10106.        object).
  10107.  
  10108.     * io.c (next_argv): $< can be anything that responds to `write'.
  10109.  
  10110.     * file.c (file_s_with_open_file): ensures to close file.
  10111.  
  10112.     * error.c (exception): create error under the current class/module.
  10113.  
  10114.     * range.c (range_eqq): fixnum check for last needed too.
  10115.  
  10116. Wed Oct 22 12:52:30 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10117.  
  10118.     * ext/socket/socket.c: Socket::Constants added.
  10119.  
  10120.     * file.c: File::Constants added for inclusion.
  10121.  
  10122.     * array.c (ary_join): call ary_join() recursively for the 1st
  10123.        array element.
  10124.  
  10125. Mon Oct 20 12:18:29 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10126.  
  10127.     * ruby.c (load_file): wrong condition for #! check with -x.
  10128.  
  10129.     * file.c (file_s_dirname): did return "" for "/a".
  10130.  
  10131. Fri Oct 17 14:29:09 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10132.  
  10133.     * ruby.c: now works on alpha-linux.
  10134.  
  10135.     * bignum.c (bigadd): some undefined side effect order assumed.
  10136.  
  10137. Wed Oct 15 17:49:24 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10138.  
  10139.     * intern.h: function prototypes added.
  10140.  
  10141. Mon Oct 13 16:54:18 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10142.  
  10143.     * class.c (rb_define_class_id): call superclass's `inherited'
  10144.        method when making subclasses.
  10145.  
  10146.     * parse.y (nextc): clear lex_lastline at the end of file.
  10147.  
  10148.     * object.c (Init_Object): need to undef Class#append_features.
  10149.  
  10150.     * eval.c (rb_eval): no warning on extending classes or modules.
  10151.  
  10152. Thu Oct  9 11:17:50 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10153.  
  10154.     * eval.c (error_print): the exception name follows after the error 
  10155.       message.
  10156.  
  10157.     * eval.c (compile_error): error message slightly changed.
  10158.  
  10159.     * parse.y (nextc): script parsing will be terminated by __END__ at
  10160.        beginning of line.
  10161.  
  10162.     * eval.c (compile_error): `__END__' is no longer a keyword.
  10163.  
  10164.     * parse.y (nextc): protect lastline read from script stream.
  10165.  
  10166. Tue Oct  7 14:06:06 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10167.  
  10168.     * version 1.1 alpha9 released.
  10169.  
  10170.     * eval.c (mod_append_features): renamed from extend_class.
  10171.  
  10172.     * eval.c (rb_eval): defining method calls `method_added'.
  10173.  
  10174.     * eval.c (ruby_options): exception while processing options must
  10175.       terminate the interpreter.
  10176.  
  10177.     * error.c (Init_Exception): wrong method configuration.  `new'
  10178.       should have been a singleton method.
  10179.  
  10180. Mon Oct  6 18:55:38 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10181.  
  10182.     * ext/kconv/kconv.c (kconv_guess): code to guess character code
  10183.       from string.
  10184.  
  10185. Mon Oct  6 18:38:17 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10186.  
  10187.     * pack.c: now encode/decode base64 by `m' template.
  10188.  
  10189. Fri Oct  3 10:51:10 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10190.  
  10191.     * MANIFEST: needed to include lex.c in the distribution.
  10192.  
  10193.     * eval.c (ruby_options): f_require() called too early.
  10194.  
  10195.     * eval.c (rb_provide): module extensions should always be `.o'.
  10196.  
  10197. Thu Oct  2 11:38:31 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10198.  
  10199.     * version 1.1 alpha8 released.
  10200.  
  10201.     * ext/marshal/marshal.c (r_object): remove temporal regist for
  10202.        structs. (caused problem if structs form cycles.)
  10203.  
  10204.     * parse.y (match_gen): static binding for match(=~) calls
  10205.       with regexp literals.
  10206.  
  10207. Wed Oct  1 15:26:55 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10208.  
  10209.     * eval.c: protect retval in struct tag from GC for C_ALLOCA.
  10210.  
  10211.     * eval.c: no more pointer value from setjmp/longjmp.
  10212.  
  10213. Wed Oct  1 14:01:49 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10214.  
  10215.     * ext/marshal/marshal.c (w_byte): argument must be char.
  10216.  
  10217. Wed Oct  1 10:30:22 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10218.  
  10219.     * variable.c (mod_const_at): global constants now belongs to the
  10220.       class Object.
  10221.  
  10222.     * object.c (Init_Object): new global constant NIL.
  10223.  
  10224.     * ext/marshal/marshal.c (marshal_dump): try to set binmode.
  10225.  
  10226.     * ext/marshal/marshal.c (r_object): forgot to re-regist structs in 
  10227.       the object table.
  10228.  
  10229.     * eval.c (ruby_options): call Init_ext() before any require()
  10230.        calls by `-r'.
  10231.  
  10232. Fri Sep 30 14:29:22 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10233.  
  10234.     * ext/marshal/marshal.c (w_object): marshal dumped core.
  10235.  
  10236. Tue Sep 30 10:27:39 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10237.  
  10238.     * sample/test.rb: bignum test suits added.
  10239.  
  10240.     * eval.c (rb_eval): new pseudo variable `true' and `false'.
  10241.  
  10242.     * parse.y: new keywords `true' and `false' added.
  10243.  
  10244. Mon Sep 29 13:37:58 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10245.  
  10246.     * ruby.c (forbid_setid): forbid some options in suid mode.
  10247.  
  10248.     * ruby.h (NUM2DBL): new macro to convert into doubles.
  10249.  
  10250. Mon Sep 27 09:53:48 1997  EGUCHI Osamu  <eguchi@shizuokanet.or.jp>
  10251.  
  10252.     * bignum.c: modified for speeding.
  10253.  
  10254. Fri Sep 26 18:27:59 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10255.  
  10256.     * sample/from.rb: some extensions.
  10257.  
  10258. Mon Sep 29 13:15:56 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10259.  
  10260.     * parse.y (lhs): no more syntax error on `obj.CONSTANT = value'.
  10261.  
  10262. Fri Sep 26 14:41:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10263.  
  10264.     * eval.c (ruby_run): deferred calling Init_ext() just before eval_node.
  10265.  
  10266. Fri Sep 26 13:27:24 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10267.  
  10268.     * io.c (io_isatty): forgot to return TRUE value.
  10269.  
  10270. Fri Sep 25 11:10:58 1997  EGUCHI Osamu  <eguchi@shizuokanet.or.jp>
  10271.  
  10272.     * eval.c: use _setjmp/_longjmp instead of setjmp/longjmp on some
  10273.       platforms.
  10274.  
  10275. Wed Sep 24 17:43:13 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10276.  
  10277.     * string.c (Init_String): String#taint and String#taint? added.
  10278.  
  10279.     * class.c (mod_ancestors): ancestors include the class itself.
  10280.  
  10281. Wed Sep 24 00:57:00 1997  Katsuyuki Okabe  <HGC02147@niftyserve.or.jp>
  10282.  
  10283.     * X68000 patch.
  10284.  
  10285. Tue Sep 23 20:42:30 1997  EGUCHI Osamu  <eguchi@shizuokanet.or.jp>
  10286.  
  10287.     * parse.y (node_newnode): SEGV on null node setup.
  10288.  
  10289. Mon Sep 22 11:22:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10290.  
  10291.     * ruby.c (ruby_prog_init): wrong safe condition check.
  10292.  
  10293. Sun Sep 21 14:46:02 1997  MAEDA shugo  <shugo@po.aianet.ne.jp>
  10294.  
  10295.     * error.c (exc_inspect): garbage added to classpath.
  10296.  
  10297. Fri Sep 19 11:49:23 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10298.  
  10299.     * parse.y (newtok): forgot to adjust buffer size when shrinking
  10300.       the token buffer.
  10301.  
  10302.     * enum.c (enum_find): rb_eval_cmd() does not return value.
  10303.  
  10304.     * io.c (pipe_open): close fds on pipe exec. fcntl(fd, F_SETFD, 1)
  10305.       no longer used.
  10306.  
  10307. Tue Sep 16 17:54:25 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10308.  
  10309.     * file.c (f_test): problem if wrong command specified.
  10310.  
  10311.     * ruby.c (ruby_prog_init): close stdaux and stdprn for MSDOS.
  10312.  
  10313.     * ruby.c (ruby_prog_init): should not add path from environment
  10314.       variable, if ruby is running under setuid.
  10315.  
  10316.     * process.c (init_ids): check suid check for setuid/seteuid etc.
  10317.  
  10318. Mon Sep 15 00:42:04 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10319.  
  10320.     * regex.c (re_compile_pattern): \w{3} and \W{3} did not work.
  10321.  
  10322. Thu Sep 11 10:31:48 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10323.  
  10324.     * version 1.1 alpha7 released.
  10325.  
  10326.     * ext/socket/socket.c (sock_new): no setbuf() for NT.
  10327.  
  10328.     * io.c (rb_fopen,rb_fdopen): set close-on-exec for every fd.
  10329.  
  10330. Wed Sep 10 15:55:31 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10331.  
  10332.     * ext/marshal/marshal.c (r_bytes0): extra big length check.
  10333.  
  10334. Tue Sep  9 16:27:14 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10335.  
  10336.     * io.c (pipe_fptr_atexit): clean up popen()'ed fptr.
  10337.  
  10338.     * error.c (set_syserr): some system has error code that is bigger
  10339.       than sys_nerr. grrr.
  10340.  
  10341. Mon Sep  8 18:33:33 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10342.  
  10343.     * io.c (io_s_new): dereferenced nil for optional mode.
  10344.  
  10345. Fri Sep  5 10:26:03 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10346.  
  10347.     * class.c (class_instance_methods): do not include methods which
  10348.       are changed to private in subclasses.
  10349.  
  10350. Thu Sep  4 12:38:53 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10351.  
  10352.     * variable.c (f_global_variables): list name of the global
  10353.       variables.
  10354.  
  10355.     * object.c (obj_id): returns unique integer.
  10356.  
  10357. Wed Sep  3 14:05:16 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10358.  
  10359.     * version 1.1 alpha6 released.
  10360.  
  10361.     * eval.c (mod_s_constants): context sensitive constant list.
  10362.  
  10363.     * variable.c (mod_constants): no more `all' option.
  10364.  
  10365.     * variable.c (mod_const_of): the values for autoload classes are
  10366.       their name strings.
  10367.  
  10368.     * class.c (class_instance_methods): no special treatment for
  10369.       singleton classes.
  10370.  
  10371.     * object.c (obj_singleton_methods): returns list of singleton
  10372.       method names.
  10373.  
  10374.     * parse.y (yylex): no here document after `class' keyword.
  10375.  
  10376.     * eval.c (f_load): expand path if fname begins with `~'.
  10377.  
  10378. Tue Sep  2 13:19:48 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10379.  
  10380.     * class.c (ins_methods_i): do not list undef'ed methods.
  10381.  
  10382. Mon Sep  1 13:42:48 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10383.  
  10384.     * version 1.1 alpha5 released.
  10385.  
  10386.     * object.c (mod_attr_reader): create methods to define attribute
  10387.        reader/write/accessor.
  10388.  
  10389.     * class.c (rb_define_attr): always defines accessors.
  10390.  
  10391.     * eval.c (rb_call): alias occurred in the module body caused SEGV.
  10392.  
  10393.     * parse.y: did not generate here document strings properly.
  10394.  
  10395. Mon Sep  1 11:43:57 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10396.  
  10397.     * parse.y (yylex): heredoc dropped an extra character.
  10398.  
  10399. Fri Aug 29 11:10:21 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10400.  
  10401.     * class.c (class_instance_methods): same method names should not
  10402.        appear more than once.
  10403.  
  10404.     * parse.y (yylex): spaces can follow =begin/=end.
  10405.  
  10406.     * variable.c (find_class_path): look for class_tbl also for
  10407.       unnamed fundamental classes, such as Object, String, etc.
  10408.  
  10409.     * variable.c (rb_name_class): can't name class before String class
  10410.        is initialized.
  10411.  
  10412.     * inits.c (rb_call_inits): unrecognized dependency from GC to
  10413.       Array.
  10414.  
  10415.     * variable.c (find_class_path): could not find class if Object's
  10416.        iv_tbl is NULL.
  10417.  
  10418. Thu Aug 28 13:12:05 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10419.  
  10420.     * version 1.1 alpha4 released.
  10421.  
  10422.     * variable.c (mod_constants): wrong condition for singleton
  10423.       class. 
  10424.  
  10425.     * parse.y (yylex): revised `=begin' skip code.
  10426.  
  10427.     * parse.y (here_document): forgot to free(eos).
  10428.  
  10429.     * parse.y (yylex): spaces after `<<' prohibited for here
  10430.        documents to avoid confusing with operator `<<'.
  10431.  
  10432.     * eval.c (is_defined): separated from rb_eval().
  10433.  
  10434. Wed Aug 27 11:32:42 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10435.  
  10436.     * version 1.1 alpha3 released.
  10437.  
  10438.     * variable.c (mod_name): returns name of the class/module.
  10439.  
  10440.     * parse.y (here_document): finally here document available now.
  10441.  
  10442.     * variable.c (fc_i): some classes/modules does not have iv_tbl.
  10443.  
  10444.     * variable.c (find_class_path): avoid infinite loop.
  10445.  
  10446. Tue Aug 26 13:43:47 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10447.  
  10448.     * eval.c (rb_eval): undef'ing non-existing method will raise
  10449.       NameError exception.
  10450.  
  10451.     * object.c (class_s_new): needed to create metaclass too.
  10452.  
  10453.     * eval.c (error_print): no class name print for anonymous class.
  10454.  
  10455.     * eval.c (rb_longjmp): proper exception raised if raise() called
  10456.        without arguments, with $! or $@ set.
  10457.  
  10458.     * object.c (Init_Object): superclass()'s method argument setting
  10459.        was wrong again.
  10460.  
  10461.     * class.c (mod_ancestors): list superclasses and included modules 
  10462.       in priority order.
  10463.  
  10464. Mon Aug 25 11:53:11 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10465.  
  10466.     * version 1.1 alpha2 released.
  10467.  
  10468.     * sample/ruby-mode.el (ruby-parse-region): auto-indent now
  10469.        supports "\\" in the strings.
  10470.  
  10471.     * struct.c (struct_getmember): new API to get member value from C
  10472.       language side.
  10473.  
  10474. Sat Aug 23 21:39:05 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10475.  
  10476.     * parse.y (assignable): remove unnecessary local variable
  10477.       initialize by nil.
  10478.  
  10479. Fri Aug 22 14:26:40 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10480.  
  10481.     * eval.c (error_print): modified exception print format.
  10482.  
  10483. Thu Aug 21 16:10:58 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10484.  
  10485.     * sample/ruby-mode.el (ruby-calculate-indent): wrong indent level
  10486.       calculated with keyword operators.
  10487.  
  10488. Thu Aug 21 11:36:58 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10489.  
  10490.     * parse.y (arg): ary[0] += 1 cause SEGV
  10491.  
  10492. Wed Aug 20 17:28:50 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10493.  
  10494.     * ruby.c (ruby_process_options): require() all modules after
  10495.        processing all options
  10496.  
  10497.     * process.c (rb_proc_exec): more security checks added.
  10498.  
  10499.     * process.c (rb_proc_exec): insecure path on exec.
  10500.  
  10501.     * hash.c (f_getenv): PATH modification security check.
  10502.  
  10503. Tue Aug 19 00:15:38 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10504.  
  10505.     * version 1.1 alpha1 released.
  10506.  
  10507.     * eval.c (mod_eval): work as normal eval() if second binding
  10508.        argument given.
  10509.  
  10510.     * eval.c (rb_call): did not raise ArgumentError if too many
  10511.        arguments more than optional arguments (without rest arg).
  10512.  
  10513.     * eval.c (rb_eval): did not work well for op_asgn2 (attribute
  10514.       self assignment).
  10515.  
  10516.     * eval.c (Init_Thread): returns main thread.
  10517.  
  10518. Mon Aug 18 09:25:56 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10519.  
  10520.     * object.c (inspect_i): did not display T_DATA instance variables.
  10521.  
  10522.     * parse.y: provides more accurate line number information.
  10523.  
  10524.     * eval.c (thread_value): include value's backtrace information in
  10525.       the variable `$@'. 
  10526.  
  10527.     * eval.c (f_abort): print backtrace and exit.
  10528.  
  10529. Sat Aug 16 00:17:44 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10530.  
  10531.     * eval.c (class_new_instance): do not make instance from virtual
  10532.       classes. 
  10533.  
  10534.     * object.c (class_s_new): do not make subclass of singleton class.
  10535.  
  10536. Fri Aug 15 15:49:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10537.  
  10538.     * eval.c (call_trace_func): block context switch in the trace
  10539.       function.
  10540.  
  10541.     * eval.c (rb_eval): clear method cache at class extension.
  10542.  
  10543.     * object.c (obj_type): returns object's class even if it defines
  10544.       singleton methods.
  10545.  
  10546. Fri Aug 15 19:40:43 1997  WATANABE Hirofumi  <watanabe@ase.ptg.sony.co.jp>
  10547.  
  10548.     * ext/socket/socket.c (Init_socket): small typo caused SEGV.
  10549.  
  10550. Wed Aug 13 17:51:46 1997  Yukihiro Matsumoto  <matz@netlab.co.jp>
  10551.  
  10552.     * version 1.1 alpha0 released.
  10553.  
  10554.