add test for Struct.new(0).
[ruby-svn.git] / ChangeLog
blob56d6468acff81910f84cb0ab6fc6459023e38a3a
1 Fri May  2 23:59:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3         * io.c (internal_read_func, internal_write_func): split from
4           internal_io_func.
6 Fri May  2 23:55:15 2008  Tanaka Akira  <akr@fsij.org>
8         * variable.c (rb_define_hooked_variable): guard *var from GC to
9           prevent collecting argf under RUBY_DEBUG=gc_stress.
11 Fri May  2 17:29:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
13         * range.c (range_step): call to_int if step is not a numeric
14           value.  [ruby-dev:34575]
16 Fri May  2 16:10:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
18         * range.c (range_step): do not forcefully convert steps into
19           integers.  [ruby-dev:34571]
21 Fri May  2 14:52:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
23         * misc/ruby-mode.el: move fontifying code from hook.  a patch from
24           Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
26 Fri May  2 14:10:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
28         * range.c (range_step): step may be bignum.
30 Fri May  2 13:52:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
32         * re.c (Init_Regexp): remove MatchData#select.  [ruby-dev:34563]
34 Thu May  1 23:59:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36         * bignum.c (rb_big_divide), numeric.c (fix_divide): check for result
37           domain.  [ruby-dev:34559]
39 Thu May  1 23:57:06 2008  James Edward Gray II  <jeg2@ruby-lang.org>
41         * lib/net/telnet.rb:  This patch from Brian Candler adds a FailEOF mode which
42           can be activated to have net/telnet raise EOFError exceptions when the 
43           remote connection is closed.  The default behavior remains unchanged though.
45 Thu May  1 23:43:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47         * range.c (range_step): check if step can be converted to an integer.
48           [ruby-dev:34558]
50         * range.c (range_step): allow float step bigger than zero but less
51           than one.  [ruby-dev:34557]
53 Thu May  1 23:20:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
55         * bignum.c (rb_big_divide): return an integer for idiv.
56           [ruby-dev:34553]
58 Thu May  1 20:47:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
60         * hash.c (rb_hash_s_create): should access converted hash value.
61           [ruby-dev:34555]
63 Thu May  1 20:31:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
65         * test/ruby/test_parse.rb (TestParse::test_void_expr_stmts_value):
66           shut up warning.
68         * rational.c (nurat_to_f): no need for forceful warning when
69           converting to float.  overflow is a nature of float values.
71 Thu May  1 16:10:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
73         * hash.c (env_delete_if): return enumerator if no block given.
74           [ruby-dev:34554]
76 Wed Apr 30 21:36:40 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
78         * lib/erb.rb (url_encode): [ruby-dev:34497] ERB::Util#url_encode
79           bug fix. Reported by rubikitch.
81         * test/erb/test_erb.rb: ditto
83 Wed Apr 30 20:11:36 2008  James Edward Gray II  <jeg2@ruby-lang.org>
85         * lib/net/telnet.rb:  Fixing a bug where line endings would not be properly
86           escaped when the two character ending was broken up into separate TCP
87           packets.  Issue reported and patched by Brian Candler.
89 Wed Apr 30 18:03:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
91         * load.c (rb_load_path), vm_core.h (rb_vm_t): moved to VM.
93         * load.c (rb_get_load_path): returns absolute load path.
95         * load.c (load_path_getter): $LOAD_PATH getter.
97         * file.c (rb_find_file_ext, rb_find_file), ruby.c (push_include,
98           ruby_init_loadpath): use the accessor.
100         * vm.c (rb_vm_mark): mark load_path.
102 Wed Apr 30 17:47:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
104         * re.c (rb_reg_search): use local variable.  a patch from wanabe
105           <s.wanabe AT gmail.com> in [ruby-dev:34537].  [ruby-dev:34492]
107 Wed Apr 30 16:10:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
109         * eval_intern.h: speficy the values of the enumeration constants
110           explicitly.  [ruby-dev:34489]
112 Wed Apr 30 12:32:39 2008  Tanaka Akira  <akr@fsij.org>
114         * process.c (check_exec_redirect_fd): prohibit duplex IO.
115           (check_exec_fds): record maxhint even if close_others is not
116           specified.
117           (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.
119 Mon Apr 28 20:24:27 2008  Tadayoshi Funaba  <tadf@dotrb.org>
121         * rational.c (nurat_marshal_load): checks the given
122           denominator. [ruby-dev:34536]
124 Mon Apr 28 14:21:18 2008  Tanaka Akira  <akr@fsij.org>
126         * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
127           FIXNUM_MAX to make it possible to convert to double accurately on
128           environments with 64bit VALUE and 64bit double.
129           It assumes FLT_RADIX is 2.
130           fix RubyForge bug #14102.
132 Mon Apr 28 12:48:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
134         * process.c (rb_exec_arg_addopt, rb_exec_arg_addopt): now can specify
135           close_exec on having no fork environment (but still meaningless).
137 Mon Apr 28 11:11:29 2008  Tanaka Akira  <akr@fsij.org>
139         * process.c (run_exec_options): don't call FIX2INT for nil.
141 Mon Apr 28 11:11:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
143         * proc.c (method_name): should return symbols instead of strings.
144           [ruby-dev:34531]
146 Mon Apr 28 09:02:43 2008  Tanaka Akira  <akr@fsij.org>
148         * include/ruby/intern.h (rb_exec_arg_init): declared.
149           (rb_exec_arg_addopt): delared.
150           (rb_exec_arg_fix): declared.
151           (rb_exec_initarg): removed.
152           (rb_exec_getargs): removed.
153           (rb_exec_initarg2): removed.
155         * io.c (struct popen_arg): make execarg as a pointer.
156           (popen_exec): follow popen_arg change.
157           (pipe_open): add eargp argument.  extract argc and argv from eargp.
158           use rb_exec_arg_addopt to add redirect options.
159           (pipe_open_v): set up struct rb_exec_arg.
160           (pipe_open_s): set up struct rb_exec_arg.
162         * process.c (rb_exec_arg_addopt): new function extracted from
163           check_exec_options_i.
164           (check_exec_options_i): use rb_exec_arg_addopt.
165           (rb_check_exec_options): opthash is always a hash now.
166           (rb_exec_getargs): make it static.
167           (rb_exec_fillarg): renamed from rb_exec_initarg2.  don't set up
168           redirect_fds.
169           (rb_exec_arg_init): new function.
170           (rb_exec_arg_fix): new function.
171           (rb_f_exec): use rb_exec_arg_init and rb_exec_arg_fix.  use
172           rb_exec_arg_addopt to set close_others option.
173           (run_exec_options): make close_others by default.
174           (rb_spawn_internal): use rb_exec_arg_init and rb_exec_arg_fix.  use
175           rb_exec_arg_addopt to set close_others option.
177 Sun Apr 27 18:59:04 2008  Tadayoshi Funaba  <tadf@dotrb.org>
179         * rational.c (nurat_expt): use f_rational_new2. [ruby-dev:34524]
181 Sun Apr 27 15:23:40 2008  Koichi Sasada  <ko1@atdot.net>
183         * gc.c (gc_count): add a GC.count method.  This method returns
184           a GC invoking count.
186 Sun Apr 27 12:20:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
188         * vm_core.h (rb_vm_t), gc.c (rb_objspace, rb_newobj), vm.c
189           (Init_BareVM): per-VM object space support, which is disabled now.
191         * gc.c (rb_objspace_alloc), vm.c (Init_BareVM): should not use ruby
192           malloc here.
194         * gc.c (garbage_collect, etc): performance improvement by passing the
195           reference instead of refering the global variable in each functions.
197 Sun Apr 27 08:06:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
199         * ruby.c (ruby_set_argv): ARGV should be locale encoding.
200           [ruby-list:44861]
202 Sun Apr 27 01:46:29 2008  Tanaka Akira  <akr@fsij.org>
204         * lib/open3.rb (Open3.popen3w): removed.
205           (Open3.popen3): notice wait_thr.
207 Sun Apr 27 01:13:05 2008  Eric Hodel  <drbrain@segment7.net>
209         * lib/rdoc, test/rdoc:  Update to RDoc 2.0.0 r56.
211 Sat Apr 26 21:30:40 2008  Tanaka Akira  <akr@fsij.org>
213         * include/ruby/intern.h (rb_hash_dup): declared.
215         * hash.c (rb_hash_dup): new function.
216         
217         * process.c (rb_spawn_internal): don't modify option hash.
219 Sat Apr 26 18:36:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
221         * io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:
222           suppress warnings.
224 Sat Apr 26 17:42:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
226         * error.c (builtin_types), gc.c (count_objects): added Complex and
227           Rational.
229 Sat Apr 26 17:35:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
231         * error.c (rb_eNOERROR): renamed.
233 Sat Apr 26 17:30:11 2008  Koichi Sasada  <ko1@atdot.net>
235         * include/ruby/ruby.h, gc.c: remove T_BLOCK.
237         * include/ruby/ruby.h: re-number T_xxx.
239 Sat Apr 26 17:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
241         * process.c (rb_cProcessTms, rb_cProcessStatus): renamed.
243         * error.c (builtin_types), signal.c (siglist), st.c (primes),
244           struct.c (ref_func), time.c (months): constified.
246 Sat Apr 26 13:00:41 2008  Tanaka Akira  <akr@fsij.org>
248         * lib/open3.rb: double fork is replaced by spawn with Process.detach.
249           (Open3.popen3w): new method to access the thread returned by
250           Process.detach.
252 Sat Apr 26 00:47:43 2008  Tanaka Akira  <akr@fsij.org>
254         * process.c (rb_spawn_internal): new function to specify
255           default_close_others.
256           (rb_spawn): specify default_close_others true.
257           (rb_f_system): call rb_spawn_internal with default_close_others as
258           false.
260 Sat Apr 26 12:26:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
262         * range.c (range_each): use INT2FIX() for fixnum values.
264 Fri Apr 25 17:56:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
266         * gc.c (free_unused_heaps): preserve last used heap segment to
267           reduce malloc() call.
269 Fri Apr 25 17:54:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
271         * gc.c (HEAP_SIZE): use smaller heap segment (2K) for more chance
272           to be freed.  based on patch from authorNari <authornari at gmail.com>.
274         * gc.c (rb_newobj_from_heap): eventually allocate heap segments.
276 Fri Apr 25 15:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
278         * process.c (rb_spawn): rb_exec_initarg() returns new argc and argv in
279           earg.
281 Fri Apr 25 12:37:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
283         * array.c (flatten): returns an instance of same class.
284           [ruby-core:16554]
286 Fri Apr 25 10:52:27 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
288         * include/ruby/win32.h: define mode_t for umask.
290         * process.c (check_exec_options_i, check_exec_fds, run_exec_options):
291           support "close_others" only when fork(2) is available.
293 Fri Apr 25 00:16:11 2008  Tanaka Akira  <akr@fsij.org>
295         * process.c: include sys/stat.h for umask.
297 Thu Apr 24 23:25:17 2008  Tanaka Akira  <akr@fsij.org>
299         * include/ruby/intern.h (rb_env_clear): declared.
300           (rb_io_mode_modenum): declared.
301           (rb_close_before_exec): declared.
302           (struct rb_exec_arg): add options and redirect_fds field.
303           (rb_check_argv): removed.
304           (rb_exec_initarg): declared.
305           (rb_exec_getargs): declared.
306           (rb_exec_initarg2): declared.
307           (rb_fork): add third argument: fds.
309         * io.c (max_file_descriptor): new static variable to record maximum
310           file descriptor ruby used.
311           (UPDATE_MAXFD): new macro.
312           (UPDATE_MAXFD_PIPE): new macro.
313           (rb_io_mode_modenum): externed.
314           (rb_sysopen): update max_file_descriptor.
315           (rb_close_before_exec): new function.
316           (popen_exec): redirection removed because it is done by extended
317           spawn mechanism.
318           (pipe_open): generate a hash for spawn options to specify
319           redirections.
320           (pipe_open_v): use rb_exec_getargs.
321           (pipe_open_s): use rb_exec_getargs.
322           (rb_io_initialize): update max_file_descriptor..
324         * process.c (hide_obj): new function.
325           (check_exec_redirect_fd): new function.
326           (check_exec_redirect): new function.
327           (check_exec_options_i): new function.
328           (check_exec_fds): new function.
329           (rb_check_exec_options): new function.
330           (check_exec_env_i): new function.
331           (rb_check_exec_env): new function.
332           (rb_exec_getargs): new function.
333           (rb_exec_initarg2): new function.
334           (rb_exec_initarg): new function.
335           (rb_f_exec): use rb_exec_initarg.
336           (intcmp): new function.
337           (run_exec_dup2): new function.
338           (run_exec_close): new function.
339           (run_exec_open): new function.
340           (run_exec_pgroup): new function.
341           (run_exec_rlimit): new function.
342           (run_exec_options): new function.
343           (rb_exec): call run_exec_options.
344           (move_fds_to_avoid_crash): new function.
345           (pipe_nocrash): new function.
346           (rb_fork): use pipe_nocrash to avoid file descriptor conflicts.
347           (rb_spawn): use rb_exec_initarg.
348           (rlimit_resource_name2int): extracted from rlimit_resource_type.
349           (rlimit_type_by_hname): new function.
350           (rlimit_type_by_lname): new function.
351           (rlimit_resource_type): use rlimit_type_by_hname.
352           (proc_daemon): add fds argument for rb_fork.
354         * hash.c (rb_env_clear): renamed from env_clear and externed.
356         [ruby-dev:34086]
358 Thu Apr 24 23:00:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
360         * test/ruby/test_thread.rb: fix typos.
362         * test/ruby/envutil.rb (rubyexec): move Open3.popen3 call into timeout
363           block.
365 Thu Apr 24 22:34:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
367         * test/ruby/test_comparable.rb: new tests for Comparable, to achieve
368           100% test coverage of compar.c.
370 Thu Apr 24 17:19:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
372         * ruby.c (process_options): set safe_level before loading script.
373           [ruby-dev:34421]
375 Thu Apr 24 14:15:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
377         * dln.c (dln_find_1): prior files with extensions to files sans
378           extensions.  [ruby-core:16517]
380 Thu Apr 24 00:26:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
382         * lib/rdoc/ri/descriptions.rb: fixed wrong class nestings.
384 Thu Apr 24 00:20:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
386         * test/ruby/test_settracefunc.rb: add a test for set_trace_func.
388         * test/ruby/envutil.rb: move "rubyexec" method from test_rubyoptions.rb.
390         * test/ruby/test_rubyoptions.rb: use rubyexec in envutil.rb.
392         * test/ruby/test_thread.rb: add tests to achieve over 90% test coverage
393           of thread.c.
395 Wed Apr 23 15:28:52 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
397         * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
398           notice moved from comment to assertion message. [ruby-dev:29127]
400 Wed Apr 23 11:49:54 2008  Akinori MUSHA  <knu@iDaemons.org>
402         * lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
403           an enumerator if no block is given.
405 Wed Apr 23 00:36:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
407         * test/openssl/test_ssl.rb (start_server): add timeout to server.join.
409 Wed Apr 23 00:18:45 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
411         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
412           tests of Symbol#to_proc.
414 Tue Apr 22 22:40:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
416         * lib/drb/drb.rb (DRb::DRbServer::check_insecure_method): should
417           check method names by symbols, not by strings.  a patch from
418           Kazuhiro NISHIYAMA <zn at mbf.nifty.com> in [ruby-dev:34487].
420 Tue Apr 22 22:15:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
422         * misc/ruby-style.el (ruby-style-{case,label}-indent): up list from
423           indentation point.
425 Tue Apr 22 21:09:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
427         * ext/nkf/nkf-utf8/nkf.c (score_table_A0, score_table_F0):
428           type of content is unsigned char.
430         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): 'c' is nkf_char.
432         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): enc is 0 or pointer.
434         * ext/nkf//nkf.c (options): type of option is unsigned char.
436 Tue Apr 22 20:51:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
438         * ext/nkf/nkf-utf8/nkf.c (z_conv): characters must be nkf_char.
440 Tue Apr 22 19:23:05 2008  Akinori MUSHA  <knu@iDaemons.org>
442         * enumerator.c (enumerator_initialize): Remove an undocumented
443           feature (passing a block to the constructor) that's broken.
444           This is not what I intended.
446 Tue Apr 22 17:54:05 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
448         * vm_core.h (exec_event_hooks): ``inline'' is a type modifier, not
449         a type itself.
451 Tue Apr 22 16:24:27 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
453         * string.c (rb_enc_cr_str_buf_cat): do not use C++ comments.
455 Tue Apr 22 16:23:53 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
457         * configure.in: use AC_USE_SYSTEM_EXTENSIONS.
459 Tue Apr 22 16:23:16 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
461         * vm_evalbody.c (DECL_SC_REG): use __asm__ instead.
463 Tue Apr 22 16:18:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
465         * vm_evalbody.c (DECL_SC_REG): typo fixed.
467 Tue Apr 22 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
469         * configure.in (struct timespec): needs time.h according to POSIX.
471 Tue Apr 22 13:19:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
473         * thread.c (rb_thread_stop_timer_thread): should clear
474           timer_thread_id after stopping it.
476 Tue Apr 22 13:12:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
478         * thread.c (thread_join): remove the current thread from the join list
479           of the target thread.
481 Tue Apr 22 12:03:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
483         * vm_insnhelper.c (vm_get_ev_const): search from the base klass if it
484           is given.
486 Tue Apr 22 09:58:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
488         * ext/win32ole/win32ole.c: avoid warnings.
490 Tue Apr 22 09:56:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
492         * file.c (eaccess): workaround for recent msvcrt's behavior.
493           [ruby-core:16460]
495 Mon Apr 21 19:08:32 2008  Tanaka Akira  <akr@fsij.org>
497         * io.c (copy_stream_body): call rb_io_check_readable and
498           rb_io_check_writable.
500 Mon Apr 21 17:45:27 2008  Akinori MUSHA  <knu@iDaemons.org>
502         * ext/dbm/dbm.c (fdbm_each_value, fdbm_each_key, fdbm_each_pair):
503           GDBM#{each,each_pair,each_key,each_value}: Return an enumerator
504           if no block is given.
506         * ext/gdbm/gdbm.c (fgdbm_each_value, fgdbm_each_key,
507           fgdbm_each_pair): GDBM#{each,each_pair,each_key,each_value}:
508           Return an enumerator if no block is given.
510         * ext/openssl/ossl_config.c (ossl_config_each):
511           OpenSSL::Config#each: Return an enumerator if no block is given.
513         * ext/readline/readline.c (hist_each): Readline::HISTORY#each:
514           Return an enumerator if no block is given.
516         * ext/sdbm/init.c (fsdbm_each_value, fsdbm_each_key,
517           fsdbm_each_pair): SDBM#{each,each_pair,each_key,each_value}:
518           Return an enumerator if no block is given.
520         * ext/stringio/stringio.c (strio_each_byte, strio_each):
521           StringIO#{each,each_line,each_byte}: Return an enumerator if no
522           block is given.
524         * ext/stringio/stringio.c (Init_stringio): Add #lines and #bytes,
525           which are aliases to #each_line and #each_byte, respectively.
527         * ext/win32ole/win32ole.c (fole_each): WIN32OLE#each: Return an
528           enumerator if no block is given.
530         * ext/zlib/zlib.c (rb_gzreader_each_byte, rb_gzreader_each):
531           Zlib::GzipReader#{each,each_line,each_byte}: Return an
532           enumerator if no block is given.
534         * ext/zlib/zlib.c (Init_zlib): Add Zlib::GzipReader#lines and
535           #bytes, which are aliases to #each_line and #each_byte,
536           respectively.
538 Mon Apr 21 17:01:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
540         * iseq.c (rb_iseq_compile_with_option): check if src is a string.
541           [ruby-core:16453]
543 Mon Apr 21 16:06:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
545         * enumerator.c (enumerator_init): preserve the method name in ID.
547         * enumerator.c (enumerator_each): need not to call rb_to_id().
549         * enumerator.c (enumerator_with_index): ditto.
551 Mon Apr 21 11:00:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
553         * compile.c (defined_expr): capture exception during defined?
554           evaluation.  a patch from wanabe <s.wanabe at gmail.com> in
555           [ruby-dev:34461].  [ruby-core:16010]
557 Mon Apr 21 10:06:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
559         * time.c: should include <errno.h> to refer errno.
561 Mon Apr 21 09:58:04 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
563         * time.c (rb_strftime): check errno to detect strftime(3)'s error.
564           this is workaround for recent version of MSVCRT.
565           [ruby-dev:34456]
567 Mon Apr 21 08:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
569         * gc.c (ruby_xmalloc): use size_t for malloc argument instead of long.
571 Sun Apr 20 21:00:21 2008  Akinori MUSHA  <knu@iDaemons.org>
573         * enumerator.c, include/ruby/ruby.h: Export rb_cEnumerator.
575 Sun Apr 20 20:47:50 2008  Akinori MUSHA  <knu@iDaemons.org>
577         * enumerator.c: Resolve the method every time an enumeration
578           method is run, not once when the enumerator is initialized as it
579           was before, so that method_missing() and method (re)definition
580           afterwards are both in effect; pointed out in: [ruby-core:16441]
582 Sun Apr 20 15:11:00 2008  Tanaka Akira  <akr@fsij.org>
584         * io.c (copy_stream_rbuf_to_dst): removed.
585           (copy_stream_fallback_body): don't bypass write method.
586           (copy_stream_body): simplified.
588 Sun Apr 20 15:01:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
590         * vm_core.h (struct iseq_compile_data): moved label_no from
591           new_label_body().
593         * compile.c (iseq_set_exception_table): allocates catch_table only
594           when entries exist.
596         * compile.c (struct iseq_link_element, struct iseq_insn_data): made
597           enum for debuggers.
599 Sun Apr 20 14:44:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
601         * compile.c (iseq_compile_each): fix for splat in when and rescue.
602           a patch from wanabe <s.wanabe AT gmail.com> in [ruby-dev:34429].
603           [ruby-core:14537]
605 Sun Apr 20 13:55:37 2008  Tanaka Akira  <akr@fsij.org>
607         * io.c (copy_stream_fallback): write directly (bypassing write method)
608           if possible.
610 Sun Apr 20 12:49:03 2008  Tanaka Akira  <akr@fsij.org>
612         * io.c (copy_stream_fallback): read directly (bypassing readpartial
613           method) if possible.
615 Sun Apr 20 04:45:13 2008  Tanaka Akira  <akr@fsij.org>
617         * io.c (copy_stream_body): use readpartial and write method for
618           non-IOs such as StringIO and ARGF.
620 Fri Apr 18 20:57:33 2008  Yusuke Endoh  <mame@tsg.ne.jp>
622         * test/ruby/test_array.rb: add tests to achieve over 95% test coverage
623           of array.c.
625 Fri Apr 18 17:37:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
627         * gc.c (rb_gc_mark_locations): get rid of underflow.
629         * gc.c (mark_current_machine_context): check if the main thread stack
630           position may shink under the intialized position.  [ruby-core:16436]
632 Thu Apr 17 22:20:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
634         * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add
635           parentheses to remove warnings of gcc.
637         * io.c (rb_io_getc): remove unused variables.
639         * compile.c (NODE_NEXT, NODE_REDO): remove unused labels.
641         * ext/nkf/nkf.c (rb_nkf_convert): remove unused variables.
643         * ext/syck/rubyext.c (syck_resolver_initialize,
644           syck_resolver_detect_implicit, syck_emitter_emit): remove unused
645           variables.
647 Thu Apr 17 20:12:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
649         * test/ruby/test_rubyoptions.rb (test_search): enable some assertions.
651         * test/ruby/test_rubyoptions.rb: flunk message in win32.
653 Thu Apr 17 16:07:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
655         * test/ruby/test_rubyoptions.rb (ruby): run in C locale.
657         * test/ruby/test_rubyoptions.rb (test_encoding): --encoding does not
658           affect source code.
660 Thu Apr 17 00:45:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
662         * test/ruby/test_process.rb (test_rlimit_nofile): reset RLIMIT_NOFILE
663           before exit (for gcov).
665         * test/ruby/test_rubyoptions.rb: new tests for option of ruby
666           interpreter, to achieve over 95% test coverage of ruby.c.
668 Wed Apr 16 02:40:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
670         * ruby.c (process_options): preludes and parser need to run in safe
671           level 0.  [ruby-dev:34407]
673 Wed Apr 16 02:26:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
675         * ruby.c (process_options): dln_find_file returns the pointer to a
676           static buffer, so should copy it.  [ruby-dev:34409]
678 Tue Apr 15 23:08:46 2008  Kouhei Sutou  <kou@cozmixng.org>
680         * lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
682         * test/xmlrpc/test_cookie.rb: add a test for the above fix.
684 Tue Apr 15 19:20:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
686         * io.c: #undef rb_argv moved before #define.
688 Tue Apr 15 18:02:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
690         * include/ruby/intern.h (rb_argv): replaced with rb_get_argv().
691           [ruby-Bugs-19514]
693 Tue Apr 15 17:10:59 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
695         * lib/net/http.rb, lib/net/smtp.rb, lib/net/pop.rb: update
696           URLs of Japanese documents.
698 Tue Apr 15 16:45:14 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
700         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
702 Tue Apr 15 15:38:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
704         * misc/ruby-mode.el (ruby-encoding-map): added shift-jis for older
705           versions.
707         * misc/ruby-mode.el (ruby-mode-set-encoding):
708           coding-system-to-mime-charset is not a standard function.
709           [carbon-emacs:795]
710           fix for the case that magic comment exists but coding system is
711           absent.
713         * misc/ruby-mode.el (ruby-mode): use write-contents-functions or
714           write-contents-hooks for older versions.
716 Tue Apr 15 07:21:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
718         * complex.c (nucomp_div): [ruby-dev:34357]
720         * complex.c (nucomp_abs): use hypot.
722         * complex.c (nucomp_quo): do not force conversion.
724         * test/ruby/test_complex.rb: omitted some meaningless tests.
726 Mon Apr 14 23:25:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
728         * test/ruby/test_objectspace.rb: add a test for
729           ObjectSpace.count_objects.
731 Mon Apr 14 22:44:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
733         * file.c (SET_EXTERNAL_ENCODING): avoid call rb_enc_check() on
734           half-baked result string.
736         * re.c (rb_reg_search): make search reentrant.  [ruby-dev:34223]
738         * test/ruby/test_parse.rb (TestParse::test_global_variable):
739           should preserve $& variable.
741 Mon Apr 14 17:23:27 2008  Akinori MUSHA  <knu@iDaemons.org>
743         * hash.c (rb_hash_delete_if, rb_hash_reject_bang, env_delete_if,
744           env_reject_bang): Return an enumerator if no block is given.
746 Mon Apr 14 14:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
748         * compile.c, compile.h (compile_debug): made runtime option.
750         * debug.c (ruby_debug_print_indent): returns if debug_level exceeds
751           the threashold.
753         * debug.c (ruby_debug_printf): printf to stderr.
755         * iseq.c (make_compile_option, make_compile_option_value): added
756           debug_level option.
758         * vm_core.h (rb_compile_option_t): added debug_level.
760         * vm_core.h (struct iseq_compile_data): added node_level.
762 Mon Apr 14 12:52:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
764         * gc.c (Init_stack): use ruby_init_stack.  [ruby-dev:34350]
766         * gc.c (rb_objspace_t): packed globals.  [ruby-dev:34348]
768         * gc.c (finalizers): removed.  [ruby-dev:34349]
770 Mon Apr 14 11:30:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
772         * array.c (ary_new): new integer overflow check condition.
773           suggested by TOYOFUKU Chikanobu <nobu_toyofuku at nifty.com> in
774           [ruby-dev:34156].
776         * array.c (rb_ary_initialize): ditto.
778 Mon Apr 14 00:51:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
780         * test/ruby/test_parse.rb: add tests to achieve over 95% test coverage
781           of parse.y.
783 Sun Apr 13 23:53:58 2008  Akinori MUSHA  <knu@iDaemons.org>
785         * enum.c (enum_cycle): Make Enumerable#cycle do a finite loop when
786           the number of cycles is specified.
788         * array.c (rb_ary_cycle): Ditto for Array#cycle.
790 Sun Apr 13 18:52:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
792         * thread_pthread.c (lock_func): should not check interrupts in
793           blocking region.  [ruby-dev:34378]
795 Sat Apr 12 12:41:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
797         * eval.c (ruby_exec_node, ruby_run_node), ruby.c (process_options):
798           use iseq instead of NODE.
800         * gc.c (source_filenames): removed.
802         * include/ruby/intern.h, parse.y (yycompile, parser_mark, parser_free,
803           ripper_initialize): rb_source_filename() is no longer used.
805         * compile.c, compile.h (ERROR_ARGS), parse.y (node_newnode, fixpos,
806           parser_warn, e_option_supplied, warn_unless_e_option, range_op,
807           cond0): nd_file is no longer used.
809 Sat Apr 12 12:17:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
811         * prelude.rb (require_relative): move require_relative from
812           lib/require_relative.rb.  [ruby-core:16356]
814         * lib/require_relative.rb: removed.
816 Sat Apr 12 05:55:57 2008  Eric Hodel  <drbrain@segment7.net>
818         * lib/rubygems*, test/rubygems*:  Update to RubyGems 1.1.1 r1701.
820 Sat Apr 12 03:13:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
822         * file.c (file_expand_path): set external encoding.
824         * file.c (rb_file_s_basename, rb_file_s_dirname, rb_file_s_extname):
825           copy encoding.
827 Fri Apr 11 17:35:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
829         * enum.c (count_i): modified to shut warning up.
831 Fri Apr 11 17:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
833         * enum.c (count_i, count_iter_i, enum_count, enum_find_index):
834           Reduce code.
836 Fri Apr 11 17:06:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
838         * enum.c (find_index_i): modified to shut warning up.
840         * enum.c (find_index_iter_i): ditto.
842 Fri Apr 11 16:44:43 2008  Akinori MUSHA  <knu@iDaemons.org>
844         * enum.c (enum_find_index): Add support for find_index(obj);
845           [ruby-dev:34313].
847         * array.c (rb_ary_index): Define find_index as an alias to index.
849 Fri Apr 11 16:42:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
851         * lib/yaml/store.rb (YAML::load): modified to support empty
852           database.
854 Fri Apr 11 08:05:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
856         * marshal.c (w_object): add volatile to avoid potential GC bug.  a
857           patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
858           in [ruby-dev:34311].
860 Thu Apr 10 23:08:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
862         * lib/pstore.rb (PStore::dump, PStore::load): allow subclass
863           overriding.  [ruby-dev:34305]
865         * lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?): 
866           add a method to support faster PStore.
867         
868 Thu Apr 10 20:36:45 2008  Akinori MUSHA  <knu@iDaemons.org>
870         * misc/rdebug.el, misc/README: Remove rdebug.el as per request
871           from the maintainer and mention the ruby-debug project at
872           RubyForge in README; bug#19043.
874 Thu Apr 10 19:41:00 2008  Akinori MUSHA  <knu@iDaemons.org>
876         * eval.c (rb_f_loop): Mention StopIteration in the document.
878 Thu Apr 10 19:23:55 2008  Akinori MUSHA  <knu@iDaemons.org>
880         * array.c (rb_ary_pop_m, rb_ary_shift_m): Update documents for
881           #pop() and #shift().
883         * array.c (rb_ary_slice_bang): Update document.  Assigning
884           array[*args]= nil no longer removes elements.
886 Thu Apr 10 16:58:44 2008  Tanaka Akira  <akr@fsij.org>
888         * marshal.c (w_object): TYPE_USERDEF assigns id for ivars first.
889           [ruby-dev:34159] by nagachika.
891 Thu Apr 10 15:03:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
893         * lib/generator.rb: removed obsolete library.  [ruby-core:16233]
895         * test/test_generator.rb: removed as well.  [ruby-dev:34306]
897         * lib/pstore.rb: replaced by Hongli Lai's faster version.
899 Thu Apr 10 10:27:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
901         * thread_pthread.c (native_sleep): sleep_cond is initialized at
902           creation.  [ruby-Patches-19361].
904 Wed Apr  9 14:43:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
906         * thread.c (lock_func): optimized and checks for interrupt_flag.
907           based on a patch from Sylvain Joyeux in [ruby-Patches-19361] and
908           [ruby-Patches-19362].
910 Wed Apr  9 12:12:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
912         * test/ruby/test_thread.rb: new tests from Sylvain Joyeux in
913           [ruby-Patches-19361].
915 Tue Apr  8 21:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
917         * thread.c (rb_mutex_sleep): ensures to re-acquire at waking up.
918           [ruby-Patches-19361]
920 Tue Apr  8 11:00:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
922         * lib/complex.rb: remove Math first before overwriting by CMath.
924 Tue Apr  8 10:34:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
926         * load.c (rb_require_safe): should check fname path after $SAFE is
927           properly set.  [ruby-dev:34268]
929         * re.c (rb_reg_quote): should always copy the quoting string.
930           [ruby-core:16235]
932 Tue Apr  8 10:30:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
934         * common.mk (prelude.c): depends on enc/prelude.rb.
936         * enc/prelude.rb: fixed initial library names.
938 Tue Apr  8 03:39:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
940         * load.c (rb_provided): check expanded path for relative path
941           features, loading or loaded features are already expanded in 1.9.
943         * variable.c (rb_autoload_load): no needs to check if provided before
944           rb_require_safe.  [ruby-dev:34266]
946 Mon Apr  7 22:41:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
948         * numeric.c: cancelled recent changes (except to remove rdiv).
950         * bignum.c: ditto.
952         * bignum.c: added rb_big_idiv.
954 Mon Apr  7 15:51:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
956         * encoding.c (enc_init_db): moved to enc/encdb.c.
958         * transcode.c (init_transcoder_table): moved to enc/trans/transdb.c.
960         * enc/depend (enc/encdb.o enc/trans/transdb.o): depend on
961           corresponding headers.
963         * common.mk (COMMONOBJS): moved transcode.o from OBJS
965 Mon Apr  7 12:26:32 2008  Koichi Sasada  <ko1@atdot.net>
967         * bootstraptest/test_knownbug.rb: add a known-bug.
969 Mon Apr  7 12:15:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
971         * range.c (range_each_func): should not leave a variable
972           uninitialized, which could cause SEGV.
974         * range.c (range_step): removed duplicated and unreachable code.
976 Mon Apr  7 02:12:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
978         * string.c (rb_str_intern): need not to check if tainted.
979           [ruby-dev:34219]
981 Sun Apr  6 09:45:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
983         * dir.c (dir_tell): check if closed.  [ruby-core:16223]
985 Sat Apr  5 23:17:20 2008  Tadayoshi Funaba  <tadf@dotrb.org>
987         * lib/cmath.rb: new.
989         * lib/complex.rb: depends lib/cmath.rb.
991         * lib/rational.rb: added rdiv.
993         * complex.c: removed some math functions.
995 Sat Apr  5 05:50:57 2008  Eric Hodel  <drbrain@segment7.net>
997         * lib/rdoc/parsers/parse_rb.rb: Fix uninitialized variable warnings.
999         * lib/rdoc/generator/html.rb: ditto.
1001         * lib/rdoc/options.rb: Fix shadowed variable warning.
1003         * lib/webrick/httprequest.rb: Fix redefined method warning.
1005 Sat Apr  5 02:13:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1007         * bignum.c (rb_cmpint): moved from compar.c, to check bignum
1008           zero.
1010 Fri Apr  4 23:24:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1012         * re.c (rb_memsearch_qs): wrong boundary condition.
1014         * re.c (rb_memsearch_qs_utf8): ditto.
1016 Fri Apr  4 14:11:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1018         * re.c (rb_memsearch_qs): wrong boundary condition.  a patch from
1019           wanabe <s.wanabe AT gmail.com> in [ruby-dev:34248].
1021 Fri Apr  4 05:57:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1023         * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
1024           @n_bytes as well.  [ruby-core:16144]
1026 Fri Apr  4 01:59:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1028         * range.c (range_step): add step for each iteration if begin and
1029           end are numeric.  [ruby-core:15990]
1031 Fri Apr  4 00:42:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1033         * bignum.c (Init_Bignum): rdiv method removed.  [ruby-dev:34242]
1035         * complex.c (nucomp_quo): ditto.
1037         * numeric.c (num_rdiv): ditto.
1039         * rational.c (nurat_div): ditto.
1041         * complex.c (nucomp_fdiv): fdiv implementation restored.
1043         * numeric.c (num_quo): RDoc updated.
1045 Thu Apr  3 21:51:45 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1047         * complex.c (nucomp_int_check): function for DRY real check.
1049         * complex.c (nucomp_{add,sub,mul,div,expt}): use rb_num_coerce_bin().
1051 Thu Apr  3 19:59:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1053         * insns.def (defineclass): check if cbase is a class or a module.
1054           [ruby-core:16118]
1056 Thu Apr  3 14:42:11 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1058         * common.mk (INSNS): add insns_info.inc.
1060         * common.mk (INSNS): make incs separately for nmake.
1062 Thu Apr  3 13:20:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1064         * common.mk (endb.h, transdb.h, prelude.c): depend on $(PREP) and
1065           check if really changed.  [ruby-core:16102]
1067         * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
1068           (MINIOBJS, ARCHMINIOBJS): separated.
1070 Thu Apr  3 09:00:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1072         * compile.c (iseq_set_sequence, iseq_insns_unification,
1073           insn_data_to_s_detail): constified.
1075         * iseq.c (insn_operand_intern, ruby_iseq_disasm_insn): ditto.
1077         * template/{insns_info,opt_sc,optunifs}.inc.tmpl: ditto.
1079         * tool/instruction.rb (OptUnifsIncGenerator): ditto.
1081 Thu Apr  3 08:46:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1083         * range.c (range_include): add RDoc to describe that comparison
1084           for numeric is done according magnitude of values.
1085           [ruby-core:15907]
1087 Wed Apr  2 22:29:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1089         * rational.c (nurat_int_check): function for DRY integer check.
1091         * numeric.c (num_rdiv): should always return rational number.
1093         * rational.c (nurat_add, nurat_sub, nurat_mul, nurat_fdiv,
1094           nurat_cmp): use rb_num_coerce_bin().
1096         * rational.c (nurat_division): does / and rdiv.
1098         * .gdbinit (rp): no longer use rb_p().
1100 Wed Apr  2 06:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1102         * .gdbinit (rp): supports rational and complex numbers.  it's
1103           cheating since it uses rb_p().
1105 Wed Apr  2 06:24:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1107         * include/ruby/node.h: add new constants for rb_call()'s scope.
1109         * eval.c (iterate_method): use CALL_* scope constant to specify
1110           proper scope value.
1112         * eval.c (rb_each, rb_apply, rb_funcall, rb_funcall2, rb_funcall3):
1113           ditto.
1115 Tue Apr  1 21:19:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1117         * rational.c: need to include <float.h> just once.
1119 Tue Apr  1 16:40:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1121         * bignum.c (big2dbl): more precise conversion at edge cases.
1122           [ruby-dev:34195]
1124 Tue Apr  1 14:43:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1126         * configure.in: get rid of empty expansion.
1128         * configure.in: _setjmp is available but _longjmp is not on mingw.
1130 Tue Apr  1 09:41:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1132         * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
1134 Tue Apr  1 07:31:58 2008  Eric Hodel  <drbrain@segment7.net>
1136         * lib/rubygems* test/rubygems*: Import RubyGems 1.1.0.
1138 Tue Apr  1 03:20:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1140         * configure.in (RUBY_SETJMP, RUBY_LONGJMP, RUBY_JMP_BUF): prefers
1141           _setjmp over setjmp and sigsetjmp.  [ruby-core:16023]
1142           __builtin_setjmp cannot handle a variable.
1144         * configure.in (--with-setjmp-type): new option to override the
1145           default rule in the above.
1147         * eval_intern.h (ruby_setjmp, ruby_longjmp), gc.c (rb_setjmp),
1148           vm_core.h (rb_jmpbuf_t): use RUBY_SETJMP, RUBY_LONGJMP and
1149           RUBY_JMP_BUF.
1151 Tue Apr  1 01:55:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1153         * lib/resolv.rb (Resolv::Config.default_config_hash): requires
1154           win32/resolv to use Win32::Resolv.  [ruby-dev:34138]
1156 Tue Apr  1 01:40:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1158         * complex.c: adopted the ruby's style.
1160         * rational.c: ditto.
1162 Tue Apr  1 00:17:35 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1164         * rational.c: revert.
1166 Mon Mar 31 18:57:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1168         * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
1170         * io.c (copy_stream_body): some platform don't have O_NOCTTY.
1172 Mon Mar 31 18:42:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1174         * configure.in: check for ssize_t.  [ruby-dev:34184]
1176 Mon Mar 31 14:45:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1178         * numeric.c (num_quo): should convert its operand to Rational.
1180         * rational.c (string_to_r_strict): should raise TypeError.
1182         * bignum.c (Init_Bignum): should not redefine Bignum#div.
1183           Numeric#div will do.  [ruby-dev:34066]
1185 Mon Mar 31 04:05:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1187         * io.c (io_getc): set coderange while getting characters.
1189 Sun Mar 30 23:16:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1191         * proc.c (proc_dup): should copy is_lambda attribute as well.
1192           [ruby-talk:296244]
1194 Sun Mar 30 15:33:29 2008  Tanaka Akira  <akr@fsij.org>
1196         * io.c: IO.copy_stream implemented.  [ruby-dev:33843]
1198         * thread.c (rb_fd_select): new function.
1200         * configure.in (sys/sendfile.h): check the header file.
1201           (sendfile): check the function.
1202           (pread): check the function.
1204 Sat Mar 29 14:18:41 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
1206         * ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
1208         * ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets' 
1209           instate/state/identify method to avoid the conflict with standard
1210           widget options. Those methods are renamed to ttk_instate/ttk_state/
1211           ttk_identify (tile_instate/tile_state/tile_identify are available 
1212           too). Although I don't recommend, if you realy need old methods, 
1213           please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before 
1214           "require 'tkextlib/tile'".
1216         * ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
1217           is obsolete. It outputs warning. To control default widget set, 
1218           use "Tk.default_widget_set = :Ttk".
1220         * ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and 
1221           __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defind 
1222           as module methods of TkConfigMethod. It may help users to wrap old 
1223           Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
1224           Ttk widgets don't have some options of standard widgets which are 
1225           control the view of widgets. When set ignore-mode true, configure 
1226           method tries to ignoure such unknown options with no exception. 
1227           Of course, it may raise other troubles on the GUI design. 
1228           So, those are a little danger methods. 
1230         * ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ 
1231           method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method 
1232           are defind as module methods of TkItemConfigMethod as the same 
1233           purpose as TkConfigMethod's ones.
1235         * ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for 
1236           wrapping old Ruby/Tk scripts (which use standard widgets) to use 
1237           Ttk (Tile) widgets as default.
1239         * ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state 
1240           method instead of instate/state method.
1242         * ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
1243           ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's  
1244           are replaced to "instance_exec(self)".
1246         * ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not 
1247           a character code on Ruby1.9).
1249         * ext/tk/lib/tk/variable.rb: support new style of operation argument 
1250           on Tcl/Tk's 'trace' command for variables. 
1252         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix
1254         * ext/tk/sammple/demos-jp/textpeer.rb, 
1255           ext/tk/sammple/demos-en/textpeer.rb: new widget demo.
1257         * ext/tk/tcltklib.c: decrase SEGV troubles (probably)
1259         * ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9
1261         * ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)
1263         * ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command 
1264           to make Tcl/Tk theme sources (based on different version of Tile 
1265           extension) available. 
1266           (Tk::Tile::__define_LoadImages_proc_for_comaptibility__)
1268         * ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
1269           (Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets 
1270           as toplevel widgets.
1272         * ext/tk/lib/tkextlib/tile/style.rb: ditto.
1273           (Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)
1275         * ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get 
1276           properties as a hash. metrics_hash method returns a boolean value 
1277           for 'fixed' option. But metrics method returns numeric value 
1278           (0 or 1) for 'fixed' option, because of backward compatibility. 
1280         * ext/tk/lib/tk/timer.rb: somtimes fail to set callback procedure.
1282         * ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep 
1283           doesn't block the eventloop. It will be better to use the method 
1284           in event callbacks.
1286         * ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.
1288 Thu Mar 27 20:44:22 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1290         * complex.c (f_lcm): removed.
1292         * rational.c (rb_lcm, rb_gcdlcm): added.
1294         * lib/complex.rb (gcd, lcm, gcdlcm): removed.
1296         * lib/rational.rb (gcd, lcm, gcdlcm): ditto.
1298 Wed Mar 26 18:11:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1300         * variable.c (rb_mod_constants): rdoc updated.  a patch from
1301           Florian Gilcher <flo AT andersground.net> in [ruby-core:16009].
1303 Wed Mar 26 00:55:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1305         * test/ruby/test_rand.rb: add tests to achieve over 95% test coverage
1306           of random.c.
1308 Wed Mar 26 00:28:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1310         * test/ruby/test_rational.rb: add tests to achieve over 90% test
1311           coverage of rational.c.
1313         * test/ruby/test_complex.rb: ditto for complex.c.
1315 Tue Mar 25 19:34:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1317         * bootstraptest/test_knownbug.rb: add tests.  [ruby-dev:34128]
1319 Tue Mar 25 19:09:04 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1321         * array.c (ary_new): fix size check.  [ruby-dev:34123]
1323         * array.c (rb_ary_take, rb_ary_drop): check negative size and use
1324           NUM2LONG instead of FIX2LONG.  [ruby-dev:34123]
1326         * enum.c (enum_take, enum_drop): check negative size.
1328         * test/ruby/test_array.rb: add tests for above.
1330 Tue Mar 25 16:32:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1332         * ruby.c (proc_options): checks if the word is empty.
1334         * ruby.c (process_options): typo fixed.  [ruby-dev:34122]
1336 Tue Mar 25 15:26:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1338         * compile.c (defined_expr): false short-circuit destination label may
1339           be needed.  [ruby-talk:295296]
1341         * compile.c (iseq_compile_each): put nil if false short-circuit is
1342           created.
1344         * compile.c (compile_massign_opt): no need to use alloca.
1346 Mon Mar 24 19:23:52 2008  Akinori MUSHA  <knu@iDaemons.org>
1348         * parse.y (debug_lines): Always prepare a new array for each
1349           file's SCRIPT_LINES__ storage, instead of appending source lines
1350           every time a file is re-loaded; submitted by Rocky Bernstein in
1351           #18517.
1353 Mon Mar 24 10:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1355         * configure.in: sitearch should use target_cpu.  [ruby-core:15986]
1357 Sun Mar 23 02:51:57 2008  Tanaka Akira  <akr@fsij.org>
1359         * process.c (rlimit_resource_value): use NUM2RLIM.
1361 Sun Mar 23 02:28:01 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1363         * complex.c: fixed. [ruby-dev:34109]
1365         * rational.c: ditto.
1367 Fri Mar 21 21:32:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1369         * io.c (rb_f_gets, rb_f_readline, rb_f_readlines): delegates to ARGF
1370           as well as puts and putc.  [ruby-dev:34100]
1372 Fri Mar 21 21:26:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1374         * lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
1375           [ruby-dev:29945], [ruby-dev:34095]
1377         * lib/win32/registry.rb (Win32::Registry.expand_environ): try upcased
1378           name too for cygwin.  [ruby-dev:29945]
1380         * lib/win32/resolv.rb (Win32::Resolv.get_hosts_path): use expand_path.
1382 Fri Mar 21 21:10:00 2008  Akinori MUSHA  <knu@iDaemons.org>
1384         * lib/ipaddr.rb: Say that I am the current maintainer.
1386         * lib/set.rb: Ditto.
1388         * lib/shellwords.rb: Ditto.
1390         * ext/syslog/syslog.txt: Ditto.
1392 Fri Mar 21 09:24:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1394         * instruby.rb (open_for_install): write block result and rewrite only
1395           if changed from existing file.
1397 Fri Mar 21 08:29:33 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1399         * rational.c (nurat_to_f): rearrangement.
1401 Fri Mar 21 06:44:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1403         * rational.c (nurat_to_f): C99.
1405 Fri Mar 21 01:40:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1407         * complex.c (nucomp_sub, nucomp_expt): call corresponding functions.
1409 Fri Mar 21 01:21:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1411         * missing/tgamma.c: include config.h before math.h.  [ruby-dev:34075]
1413 Thu Mar 20 21:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1415         * io.c (argf_getline): use receiver.
1417 Thu Mar 20 21:20:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1419         * rational.c: some improvements (include Shin-ichiro HARA's
1420           effort).
1422         * complex.c: some improvements.
1424         * test/ruby/test_rational2.rb: new.
1426 Thu Mar 20 00:21:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1428         * io.c (argf_initialize_copy): get rid of segfault.
1430         * io.c (argf_tell, argf_seek_m, argf_set_pos, argf_rewind,
1431           argf_fileno, argf_to_io, argf_eofl, argf_getc, argf_getbyte,
1432           argf_readchar, argf_readbyte, argf_each_line): use receiver.
1434 Wed Mar 19 23:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1436         * io.c (rb_io_putc, rb_io_puts): ouput directly if the reciever is
1437           rb_stdout to get rid of infinite recursion.  [ruby-dev:34059]
1439 Wed Mar 19 22:27:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1441         * rational.c: added rb_gcd.
1443         * complex.c: use rb_gcd.
1445 Wed Mar 19 18:37:00 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1447         * complex.c: revert.
1449         * rational.c: revert.
1451 Wed Mar 19 17:31:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1453         * eval_intern.h (TH_EXEC_TAG): need not to FLUSH_REGISTER_WINDOWS.
1454           [ruby-core:15871], [ruby-dev:34088]
1456 Wed Mar 19 14:53:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1458         * complex.c (nucomp_to_s, nucomp_inspect): get rid of making
1459           unnecessary intermediate objects.
1461         * complex.c (make_patterns, string_to_c): do not treat successive
1462           underscores as a part of numeric like as literals.  [ruby-dev:34085]
1464         * rational.c (make_patterns, string_to_r): ditto.
1466 Wed Mar 19 14:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1468         * bignum.c (rb_cstr_to_inum): treat successive underscores as
1469           nondigit.  [ruby-dev:34089]
1471 Wed Mar 19 14:08:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1473         * encoding.c (enc_check_encoding): should not load autoloaded encoding
1474           directly, instead use rb_enc_find_index() which deal with alias and
1475           replica.  [ruby-core:15957]
1477 Wed Mar 19 11:49:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1479         * regint.h (include): include ruby.h instead of defines.h and config.h.
1481 Wed Mar 19 10:17:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1483         * regint.h (CHECK_INTERRUPT_IN_MATCH_AT): add interrupt check
1484           during match.  [ruby-talk:295002]
1486 Tue Mar 18 16:24:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1488         * parse.y (literal_concat_gen): bail out at different encoding.
1490 Tue Mar 18 04:00:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1492         * re.c (rb_memsearch_ss): simple shift search.
1494         * re.c (rb_memsearch_qs): quick search.
1496         * re.c (rb_memsearch_qs_utf8): quick search for UTF-8 string.
1498         * re.c (rb_memsearch_qs_utf8_hash): hash functions for above.
1500         * re.c (rb_memsearch): use above functions.
1502         * string.c (rb_str_index): give enc to rb_memsearch.
1504         * include/ruby/intern.h (rb_memsearch): move to encoding.h.
1506         * include/ruby/encoding.h (rb_memsearch): move from intern.h.
1508         * common.mk (PREP): add dependency.
1510 Mon Mar 17 22:23:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1512         * array.c (rb_ary_take, rb_ary_take_while, rb_ary_drop,
1513           rb_ary_drop_while): new methods. [ruby-dev:34067]
1515         * test/ruby/test_array.rb: add tests for above.
1517 Mon Mar 17 17:11:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1519         * misc/ruby-mode.el (ruby-mode): should use `run-mode-hooks' instead
1520           of calling `run-hooks' directly to run the mode hook.  patch from
1521           Chiyuan Zhang <pluskid AT gmail.com> in [ruby-core:15915]
1523 Mon Mar 17 16:41:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1525         * configure.in: unset GREP_OPTIONS.  [ruby-core:15918]
1527 Sun Mar 16 18:07:07 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1529         * enc/trans/utf_16_32.c: bug fix (some invalid UTF-8 sequences
1530           were legal)
1532         * test/ruby/test_transcode.rb: test for above bug
1534 Sun Mar 16 17:28:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1536         * common.mk (LIBRUBY_SO): add dependency to $(BUILTIN_ENCOBJS).
1538 Sun Mar 16 08:51:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
1540         * include/ruby/intern.h: added some declarations.
1542         * include/ruby/ruby.h: ditto.
1544         * common.mk: added some entries.
1546         * configure.in: added a check for signbit.
1548         * lib/complex.rb: nearly all of core definitions have been removed.
1550         * lib/rational.rb: ditto.
1552         * lib/mathn.rb: some trivial adjustments.
1554         * complex.c: new.
1556         * rational.c: ditto.
1558         * numeric.c (flo_{quo,rdiv}, fix_fdiv): added.
1560         * numeric.c ({num,int}_{numerator,denominator}): ditto.
1562         * bignum.c (rb_big_fdiv): ditto.
1564         * numeric.c (fix_{quo,pow}): now may yield rational number.
1566         * bignum.c (rb_big_{quo,pow}): ditto.
1568         * numeric.c (rb_{int,flo}_induced_from): now can accept rational.
1570         * gc.c (gc_mark_children, obj_free): now detects complex and rational.
1572         * inits.c (rb_call_inits): now calls Init_{Complex,Rational}.
1574         * test/ruby/test_complex.rb: new.
1576         * test/ruby/test_rational.rb: ditto.
1578 Sat Mar 15 17:48:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1580         * encoding.c (rb_enc_associate_index): pass unnecessary enc_capable().
1582         * string.c (rb_str_cmp): reduce invocation of rb_enc_compatible().
1584 Fri Mar 14 17:04:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1586         * include/ruby/ruby.h (inttypes.h): includes always if available.
1588         * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h.
1590 Fri Mar 14 16:59:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1592         * configure.in (RUBY_LIB_PREFIX): fix for prefix.
1594 Fri Mar 14 16:35:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1596         * lib/cgi.rb (CGI::Cookie::initialize): performance patch from
1597           Makoto Kuwata <kwa@kuwata-lab.com> in [ruby-dev:34048].
1599 Fri Mar 14 15:49:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1601         * configure.in (RUBY_LIB_PREFIX): use libdir.
1603 Fri Mar 14 14:24:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1605         * ext/digest/defs.h: inttypes.h is still needed.
1607 Fri Mar 14 11:34:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1609         * {bcc,win}32/Makefile.sub: follow below changes.
1611 Fri Mar 14 11:24:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1613         * misc/ruby-mode.el (ruby-encoding-map, ruby-use-encoding-map): added
1614           to customize.
1616 Fri Mar 14 10:37:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1618         * configure.in (int8_t, uint8_t,  int16_t,  uint16_t int32_t,
1619           uint32_t int64_t, uint64_t, int128_t, uint128_t,
1620           intptr_t, uintptr_t): check if defined.
1622         * win32/Makefile.sub: follow configure.in.
1624         * ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t.
1626 Fri Mar 14 10:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1628         * configure.in (RUBY_CHECK_VARTYPE): should not indent preprocessor
1629           directives.
1631 Fri Mar 14 10:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1633         * string.c (UNALIGNED_WORD_ACCESS): IA64 cannot access unaligned word.
1635 Thu Mar 13 21:00:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1637         * array.c (rb_ary_slice_bang): should not use rb_ary_subseq()
1638           which shares internal pointer.  splice modifies the receiver
1639           right after subseq.  [ruby-dev:34005]
1641         * bootstraptest/test_struct.rb: some test moved from test to shut
1642           warning up.
1644 Thu Mar 13 19:42:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1646         * {bcc,win}32/Makefile.sub (config.h): define uint32_t.
1648 Thu Mar 13 14:14:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1650         * trunk/configure.in (AC_CHECK_HEADERS): stdint.h is not needed to
1651           check.
1653         * trunk/configure.in (rb_cv_type_uint32_t): unqouted.  [ruby-dev:34030]
1655         * trunk/string.c (hash): use inttypes.h instead of stdint.h.
1657 Thu Mar 13 10:42:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1659         * numeric.c (fix_divmod): should return integer division.  [ruby-dev:34006]
1661         * enum.c (zip_ary): wrong boundary condition.
1663         * test/ruby/test_numeric.rb (TestNumeric::test_num2long): bit-and
1664           should not raise RangeError.
1666 Thu Mar 13 03:12:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1668         * lib/irb/cmd/help.rb: should be updated for new ri structure.
1669           [ruby-core:15825]
1671         * lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional.
1673         * lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be
1674           empty.
1676         * lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for
1677           method.  maybe broken.
1679         * lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError
1680           no more.
1682 Thu Mar 13 01:45:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1684         * configure.in (stdint.h): check if presence.
1686         * configure.in (uint32_t): check if defined.
1688         * string.c (hash): fix for portability.  [ruby-dev:34020]
1690 Wed Mar 12 17:33:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1692         * object.c (rb_cstr_to_dbl): fix for a mere underscore.
1694 Wed Mar 12 14:47:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1696         * eval_intern.h (rb_thread_raised_set): use generic flags.
1698         * eval.c (rb_longjmp): clear all raised flags.
1700         * eval.c (stack_check): leave clearing flag to rb_longjmp.
1702         * gc.c (rb_memerror): use thread raised flag instead of static flag.
1704 Tue Mar 11 23:38:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1706         * array.c (rb_ary_combination): argument check before creating
1707           Enumerator.
1709         * array.c (rb_ary_permutation): ditto.
1711         * enum.c (enum_zip): optimize if all arguments are arrays.
1713 Tue Mar 11 19:48:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1715         * numeric.c (fix_coerce): try conversion before type check.
1716           [ruby-core:15838]
1718 Tue Mar 11 12:39:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1720         * common.mk (clean-local): WINMAINOBJ is Windows specific.
1722 Tue Mar 11 10:19:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1724         * string.c (hash): replaced by MurmurHash described in
1725           <http://murmurhash.googlepages.com/>.
1727 Tue Mar 11 09:52:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1729         * string.c (rb_str_comparable): empty strings in any encoding are
1730           compatible each other.
1732 Tue Mar 11 00:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1734         * ruby.c (usage): remove some unimportant lines to fit -h message
1735           in a page.  [ruby-dev:34018]
1737 Mon Mar 10 17:11:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1739         * eval.c (rb_f_local_variables): local_variables should return an
1740           array of symbols.  [ruby-dev:34008]
1742         * vm.c (collect_local_variables_in_env): ditto.
1744 Mon Mar 10 15:53:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1746         * version.c (MKSTR): make US-ASCII.  [ruby-dev:34010]
1748 Mon Mar 10 02:08:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1750         * string.c (rb_str_index): if t == s + pos, the character beginning
1751           from s + pos is valid.
1753 Sun Mar  9 13:51:21 2008  Eric Hodel  <drbrain@segment7.net>
1755         * lib/rdoc/generator.rb: Restore missing line to #params.  Patch by
1756           Lincoln Stoll <lstoll at lstoll.net>
1758 Sun Mar  9 09:52:00 2008  Eric Hodel  <drbrain@segment7.net>
1760         * lib/rdoc/code_objects.rb: Remove debugging Kernel#p.  Patch by
1761           Lincoln Stoll <lstoll at lstoll.net>
1762         * lib/rdoc/generator/html.rb: Fully qualify AllReferences.  Patch by
1763           Lincoln Stoll <lstoll at lstoll.net>
1764         * lib/rdoc/ri/writer.rb: Fix 1.8 backwards compatibility.
1766 Sat Mar  8 18:50:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1768         * file.c (isdirsep): backslash is valid path separator on cygwin too.
1770 Sat Mar  8 06:53:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1772         * string.c (search_nonascii): Use VALUE instead of unsigned long
1773           because VALUE can be the fastest unsigned integer type.
1774           On LLP64 unsigned long isn't the fastest.
1775         * string.c (str_strlen): ditto.
1776         * string.c (str_utf8_nth): ditto.
1777         * string.c (count_utf8_lead_bytes_with_ulong): ditto.
1779         * string.c (count_utf8_lead_bytes_with_word): renamed.
1781 Fri Mar  7 21:27:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1783         * bignum.c: fix indent.
1785 Fri Mar  7 21:12:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1787         * bignum.c (power_cache_init, power_cache_get_power0, Init_Bignum):
1788           delayed initializing power cache per base.  [ruby-dev:34003]
1790 Fri Mar  7 20:30:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1792         * cont.c (cont_restore_0): fixed typo.  [ruby-core:15821]
1794 Fri Mar  7 19:56:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1796         * lib/mkmf.rb: rdoc added.  [ruby-Patches-9762]
1798 Thu Mar  6 17:26:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1800         * sprintf.c (rb_str_format): space flag is in effect for Inf/NaN too.
1801           [ruby-dev:34002]
1803 Thu Mar  6 15:44:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1805         * sprintf.c (rb_str_format): casting double to long is undefined
1806           if the interger part of double is out of the range of long.
1808 Thu Mar  6 15:11:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1810         * sprintf.c (rb_str_format): ignore 0 flag for NaN and Inf.
1811           [ruby-dev:33994]
1813 Thu Mar  6 15:05:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1815         * {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
1816           ruby$(EXEEXT).
1817           suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
1818           [ruby-dev:34000]
1820 Thu Mar  6 14:46:08 2008  Tanaka Akira  <akr@fsij.org>
1822         * missing/lgamma_r.c (loggamma): return 0 for 1 and 2.
1824         * test/ruby/test_math.rb: accept errors by functions under missing/.
1826 Thu Mar  6 14:29:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1828         * transcode.c (rb_str_transcode_bang): set coderange.
1830         * transcode.c (rb_str_transcode): use rb_str_transcode_bang.
1832 Thu Mar  6 14:00:10 2008  Tanaka Akira  <akr@fsij.org>
1834         * include/ruby/missing.h (cbrt): add declaration.
1836 Thu Mar  6 11:14:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1838         * misc/ruby-mode.el (ruby-add-log-current-method): use ruby style
1839           method name format.
1841 Thu Mar  6 11:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1843         * sprintf.c (rb_str_format): no need of loop.
1845 Thu Mar  6 08:30:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1847         * object.c (rb_mod_freeze): call rb_class_name() directly.
1848           [ruby-core:15802]
1850 Thu Mar  6 04:32:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1852         * string.c (count_utf8_lead_bytes_with_ulong): fix shift size.
1853           [ruby-dev:33993]
1855         * string.c (str_utf8_nth) fix wrong counting.
1857 Thu Mar  6 00:34:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1859         * sprintf.c (rb_str_format): size_t returned from strlen() can be
1860           unsigned.
1862 Thu Mar  6 00:31:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1864         * struct.c (make_struct): preserve encoding of struct name.
1866 Wed Mar  5 22:49:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1868         * string.c (is_utf8_lead_byte, count_utf8_lead_bytes_with_ulong):
1869           defined for UTF-8 optimization.
1871         * string.c (str_strlen): use is_utf8_lead_byte and
1872           count_utf8_lead_bytes_with_ulong.
1874         * string.c (str_utf8_nth) ditto.
1876 Wed Mar  5 17:53:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1878         * file.c (rb_file_flock): returns false on EAGAIN if non-blocking.
1879           [ruby-core:15795]
1881 Wed Mar  5 17:43:43 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1883         * transcode.c (transcode_loop): Adjusted detection of invalid
1884           (ill-formed) UTF-8 sequences. Fixing potential security issue, see
1885           http://www.unicode.org/versions/Unicode5.1.0/#Notable_Changes.
1887         * test/ruby/test_transcode.rb: Added two tests for above fix.
1889 Wed Mar  5 14:00:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1891         * numeric.c (fix_to_s): avoid rb_scan_args() when no argument
1892           given.
1893         * bignum.c (rb_big_to_s): ditto.
1894         * enum.c (enum_first): ditto.
1895         * eval_jump.c (rb_f_catch): ditto.
1896         * io.c (rb_obj_display): ditto.
1897         * class.c (rb_obj_singleton_methods): ditto.
1898         * object.c (rb_class_initialize): ditto.
1899         * random.c (rb_f_srand): ditto.
1900         * range.c (range_step): ditto.
1901         * re.c (rb_reg_s_last_match): ditto.
1902         * string.c (rb_str_to_i): ditto.
1903         * string.c (rb_str_each_line): ditto.
1904         * string.c (rb_str_chomp_bang): ditto.
1905         * string.c (rb_str_sum): ditto.
1907         * string.c (str_modifiable): declare inline.
1908         * string.c (str_independent): ditto.
1910 Wed Mar  5 11:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1912         * lib/debug.rb: require 'continuation' to implement "restart"
1913           command.  [ruby-dev:33992]
1915         * lib/debug.rb (Context::debug_command): remove local variable
1916           shadowing to shut up warnings.  [ruby-dev:33992]
1918         * lib/debug.rb (Context::display_list): ditto.
1920         * lib/debug.rb (Context::resume): ditto.
1922         * lib/debug.rb (Context::get_thread): no longer use #index for Hash.
1924 Tue Mar  4 21:35:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1926         * lib/irb.rb (IRB::Irb::eval_input): SyntaxError should not be
1927           considered as IRB bug.  [ruby-dev:33991]
1929         * lib/irb/workspace.rb (IRB::WorkSpace::filter_backtrace): should
1930           filter 'irb.rb' as well for context mode 2 and 3.
1932 Tue Mar  4 19:10:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1934         * hash.c (rb_hash_aset): should not copy key string when
1935           compare_by_identity is set.  [ruby-dev:33604]
1937         * hash.c (hash_equal): two hash tables are different when internal
1938           comparison table differ.  [ruby-dev:33989]
1940 Tue Mar  4 16:29:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1942         * parse.y (parser_yylex): disallow non digits '0o' expression.
1944 Tue Mar  4 14:35:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1946         * io.c (open_key_args): use rb_io_open_with_args instead of rb_f_open.
1947           [ruby-core:15763]
1949 Tue Mar  4 13:41:46 2008  Tanaka Akira  <akr@fsij.org>
1951         * gc.c (add_heap): fix previous change.  [ruby-dev:33988]
1953 Tue Mar  4 10:21:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1955         * gc.c (add_heap): use binary search to find the place to insert the
1956           new heap slot.  [ruby-dev:33983]
1958 Tue Mar  4 05:30:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1960         * io.c (open_key_args): use rb_io_open instead of rb_f_open.
1961           [ruby-core:15746]
1963 Mon Mar  3 23:28:37 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
1965         * lib/webrick/httpservlet/filehandler.rb: should normalize path
1966           separators in path_info to prevent directory traversal
1967           attacks on DOSISH platforms.
1968           reported by Digital Security Research Group [DSECRG-08-026].
1970         * lib/webrick/httpservlet/filehandler.rb: pathnames which have
1971           not to be published should be checked case-insensitively.
1973 Mon Mar  3 17:25:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1975         * gc.c (add_heap): sort heaps array in ascending order to use
1976           binary search.
1978         * gc.c (is_pointer_to_heap): use binary search to identify object
1979           in heaps.  works better when number of heap segments grow big.
1981 Mon Mar  3 17:15:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1983         * re.c (rb_reg_regsub): remove too strict encoding check.
1984           [ruby-dev:33966]
1986 Mon Mar  3 16:14:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1988         * hash.c (rb_any_hash): shrinks all results in Fixnum range.
1989           [ruby-core:15713]
1991 Sun Mar  2 23:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1993         * io.c (rb_io_ungetc): reduce redundant call.
1995 Sun Mar  2 10:13:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1997         * ruby.c (load_file): parse shebang in us-ascii.  a patch from
1998           sheepman <sheepman AT sheepman.sakura.ne.jp> in [ruby-dev:33955]
2000 Sun Mar  2 00:08:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2002         * object.c (rb_cstr_to_dbl): check for successive underscores.
2003           [ruby-dev:33952]
2005 Sat Mar  1 17:59:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2007         * io.c (struct argf): packed ARGF stuffs.
2009         * ruby.c (proc_options): use ruby_set_inplace_mode().
2011 Sat Mar  1 17:51:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2013         * lib/test/unit/collector/dir.rb (recursive_collect): do not always
2014           include all test_*.rb.
2016 Sat Mar  1 14:14:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2018         * development snapshot 1.9.0-1 released.
2020 Sat Mar  1 13:46:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2022         * tool/make-snapshot: make prereq uses MINIRUBY.
2024         * tool/make-snapshot: allow packaging like 1.9.0-1 by second
2025           command-line argument.
2027 Sat Mar  1 13:11:03 2008  Tanaka Akira  <akr@fsij.org>
2029         * test/ruby/allpairs.rb: new file for all pairs method.
2031         * test/ruby/test_m17n_comb.rb: use allpairs.rb to reduce test cases.
2033         * test/ruby/test_sprintf_comb.rb: ditto.
2035 Sat Mar  1 12:34:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2037         * string.c (sym_inspect): use rb_str_inspect() instead of
2038           rb_str_dump().  [ruby-dev:33946]
2040 Sat Mar  1 12:15:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2042         * eval_method.c (rb_get_method_body): ent->method may be freed by
2043           GC.  [ruby-dev:31819]
2045         * thread.c (remove_event_hook): should not access freed memory.
2046           [ruby-dev:31820]
2048 Sat Mar  1 10:31:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2050         * io.c (read_all, rb_io_getline_fast): encoding is io_input_encoding.
2052 Sat Mar  1 10:09:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2054         * string.c (tr_setup_table, rb_str_split_m, rb_str_chomp_bang):
2055           simplified with rb_enc_ascget().  [ruby-dev:33944]
2057 Sat Mar  1 10:01:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2059         * string.c (rb_str_coderange_scan_restartable): should not return
2060           offset in the middle of a character.
2062         * string.c (rb_str_coderange_scan_restartable): should not return
2063           invalid cr value.
2065 Sat Mar  1 09:36:08 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2067         * sprintf.c (rb_str_format): "%#.0o" should keep prefix where
2068           "%#.0x" should not.
2070 Sat Mar  1 02:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2072         * bignum.c (big2str_find_n1): check integer overflow.
2074 Sat Mar  1 00:29:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2076         * encoding.c (rb_enc_dummy_p): bootstrap encodings can not be dummy.
2078         * encoding.c (rb_enc_ascget): no needs to call rb_enc_precise_mbclen()
2079           twice.
2081 Fri Feb 29 23:14:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2083         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test
2084           updated.
2086 Fri Feb 29 20:58:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2088         * test/ruby/test_iterator.rb (TestIterator::test_enumerator):
2089           adjust test for zip behavior reversion.
2091 Fri Feb 29 20:25:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2093         * string.c (rb_str_chomp_bang): now works on UTF-16.
2095         * string.c (tr_setup_table): negation should work on non ASCII
2096           compatible strings as well.
2098         * string.c (rb_str_split_m): awk split should work on non ASCII
2099           compatible strings as well.
2101 Fri Feb 29 18:08:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2103         * time.c (time_strftime): format should be ascii compatible.
2105         * parse.y (rb_intern3): non ASCII compatible symbols.
2107         * re.c (rb_reg_regsub): add encoding check.
2109         * string.c (rb_str_chomp_bang): ditto.
2111         * test/ruby/test_utf16.rb (TestUTF16::test_chomp): raises exception.
2113 Fri Feb 29 15:16:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2115         * string.c (rb_str_rpartition): calculation was done in byte indexing.
2117         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_start_with):
2118           allow start_with? matching on broken strings.
2120 Fri Feb 29 15:12:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2122         * parse.y (opt_block_param): command can start just after block param
2123           definition.  [ruby-list:44479]
2125 Fri Feb 29 03:22:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2127         * test/ruby/test_time.rb (test_readers): fix typo.
2128           (test_strftime): "UTC" is also ok for time.gmtime.strftime("%Z").
2130 Fri Feb 29 02:50:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2132         * string.c (str_new): remove encoding assumption of empty string.
2134         * hash.c ( rb_f_getenv, env_fetch, env_inspect): result of ENV should
2135           be always ASCII-8BIT.
2137         * object.c (nil_to_s): nil.to_s should be US-ASCII.
2139 Fri Feb 29 02:24:22 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
2141         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
2143         * ext/tk/lib/tk.rb, ext/tk/lib/tk/text.rb,
2144           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: remove adhoc check
2145           of Ruby's features (use existence of some classes instead of
2146           comparing with RUBY_VERSION)
2148         * ext/tk/lib/tk/root.rb, ext/tk/lib/tk/autoload.rb: make TkRoot
2149           (Tk::Root) unswitchable
2151         * ext/tk/lib/multi-tk.rb: partial bug fix (still not work!!)
2153 Thu Feb 28 23:37:12 2008  Tanaka Akira  <akr@fsij.org>
2155         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): use ASCII-8BIT
2156           for charset unspecified non-text data.
2158 Thu Feb 28 22:19:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2160         * encoding.c (enc_capable): IMMEDIATE_P doesn't include Qnil and Qfalse.
2161           use SPECIAL_CONST_P.
2163 Thu Feb 28 19:45:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2165         * encoding.c (enc_find): check type of argument and convert to String
2166           if it is StringValue. [ruby-cvs:22866]
2168 Thu Feb 28 18:07:52 2008  Tanaka Akira  <akr@fsij.org>
2170         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): setup encoding
2171           by charset.
2172           (OpenURI::Meta#meta_add_field): call meta_setup_encoding when
2173           content-type.
2175 Thu Feb 28 15:29:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2177         * io.c (rb_io_getline_fast): scan coderange.
2179 Thu Feb 28 14:36:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2181         * string.c (rb_enc_str_copy): removed.
2183 Thu Feb 28 13:51:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2185         * eval.c (stack_check): made flag per threads.
2187         * thread.c (rb_thread_set_raised, rb_thread_reset_raised): prefixed.
2189 Thu Feb 28 11:43:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2191         * file.c (rb_file_flock): immediately returns on EAGAIN if
2192           non-blocking.  [ruby-core:15672]
2194 Thu Feb 28 11:23:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2196         * io.c (rb_io_getline_1): get rid of segfault.  [ruby-dev:33938]
2198 Thu Feb 28 11:19:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2200         * string.c (rb_str_reverse_bang): removed unused variables.
2202         * include/ruby/encoding.h (rb_str_coderange_scan_restartable): added
2203           prototype.
2205         * string.c (rb_str_coderange_scan_restartable, rb_str_times): removed
2206           unused variables.
2208         * string.c (rb_str_reverse_bang): ditto
2210         * string.c (rb_enc_str_copy): unused now.  may be used in future?
2212 Thu Feb 28 03:03:32 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
2214         * ext/tk/lib/tk.rb, ext/tk/lib/*: make default widget set
2215           switchable between Tk (standard Tcl/Tk widget set) and
2216           Ttk (Tile). Initial default widget set is Tk. Now, toplevel
2217           widget classes are removed and defined as aliases.
2218           For example, "TkButton" is an alias of the "Tk::Button" class.
2219           Those aliases are replaced when switching default widget set.
2220           "Tk.default_widget_set=" is the method for switching default
2221           widget set. "Tk.default_widget_set = :Ttk" defines Ttk (Tile)
2222           widget set as default. It means that "TkButton" denotes
2223           "Tk::Tile::Button" class. And then, "TkButton.new" creates
2224           a Tk::Tile::Button widget. Of course, you can back to use
2225           standard Tk widgets as the default widget set by calling
2226           "Tk.default_widget_set = :Tk", whenever you want. Based on
2227           the feature, you can use Ttk widget styling engine on your
2228           old Ruby/Tk application without modifying its source, if you
2229           don't use widget options unsupported on Ttk widgets (At first,
2230           call "Tk.default_widget_set = :Ttk", and next load and run
2231           your application).
2232           This is one step for supporting Tcl/Tk8.5 features.
2234 Wed Feb 27 22:55:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2236         * string.c (rb_str_coderange_scan_restartable): coderange scanning
2237           for partial read.
2239         * io.c (read_all): set coderange when not convert encoding.
2241 Wed Feb 27 03:55:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2243         * ext/extmk.rb, enc/make_encmake.rb: load current mkmf.rb even if
2244           cross-compiling.
2246         * ext/extmk.rb, enc/make_encmake.rb, lib/mkmf.rb: need to be 1.8
2247           compatible for cross-compiling.
2249 Tue Feb 26 16:53:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2251         * misc/ruby-mode.el (ruby-calculate-indent): should distinguish
2252           comment and # in strings.  [ruby-dev:33874]
2254 Tue Feb 26 16:41:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2256         * array.c (combi_len, rb_ary_product): check for overflow.
2257           [ruby-Bugs-18355]
2259 Tue Feb 26 16:38:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2261         * array.c (recursive_cmp): compare minimal length parts.
2263 Tue Feb 26 16:06:00 2008  Technorama Ltd.  <oss-ruby@technorama.net>
2265         * ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
2267         * ext/openssl/ossl_asn1.c: Simplify code.
2269         * ext/openssl/ossl_ssl_session.c Fix compiler warnings.
2270           Undefine #id if SSL_SESSION_get_id is not supported.
2272 Tue Feb 26 15:50:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2274         * parse.y (value_expr_gen): removed inappropriate warning.
2275           [ruby-core:15660]
2277 Tue Feb 26 15:43:42 2008  Tanaka Akira  <akr@fsij.org>
2279         * parse.y (tokadd_escape): refactored.  [ruby-core:15657]
2281 Tue Feb 26 15:30:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2283         * array.c (rb_ary_eql, rb_ary_cmp): get rid of stack overflow with
2284           self-recursive constructs.  [ruby-Bugs-18356]
2286 Tue Feb 26 01:16:01 2008  Tanaka Akira  <akr@fsij.org>
2288         * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.
2289           (ROBJECT_IVPTR): renamed from ROBJECT_PTR.
2291         * variable.c: follow the above renaming.
2293         * object.c: ditto.
2295         * gc.c: ditto.
2297         * marshal.c: ditto.
2299 Mon Feb 25 17:30:29 2008  Technorama Ltd.  <oss-ruby@technorama.net>
2301         * ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
2302           Commit patch #9280 from Akinori MUSHA.
2303           Simplify the OpenSSL::Digest class and make use of the
2304           existing Digest framework.
2305           Enhance performance.
2307 Mon Feb 25 15:33:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2309         * bignum.c (big2str_karatsuba): initialize cache if not initialized.
2311         * bignum.c (Init_Bignum): delayed initializing cache.
2312           [ruby-dev:33930]
2314 Mon Feb 25 13:40:03 2008  Tanaka Akira  <akr@fsij.org>
2316         * process.c (Init_process): share bignum objects for RLIM_INFINITY,
2317           RLIM_SAVED_MAX and RLIM_SAVED_CUR if they are equal.
2319 Mon Feb 25 10:41:41 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
2321         * encoding.c (Encoding#dummy): minor grammatical fixes
2322           in rdoc documentation.
2324 Mon Feb 25 00:01:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2326         * cygwin/GNUmakefile.in (clean-local): should be double-colon.
2328 Sun Feb 24 23:39:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2330         * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
2331           intermediate files.
2333         * cygwin/GNUmakefile.in (clean-local): remove def file.
2335 Sun Feb 24 06:49:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2337         * debug.c (ruby_set_debug_option): separated ruby_each_words().
2339         * util.c (ruby_each_words): extracted from ruby_set_debug_option().
2341         * ruby.c (enable_option, disable_option): allow all for all known
2342           features.
2344         * ruby.c (proc_options): generalized enable/disable options.
2346         * ruby.c (ruby_init_gems): take enabled flag.  [ruby-core:14840]
2348         * ruby.c (process_options): added --disable-rubyopt flag.
2350         * include/ruby/util.h (ruby_each_words): prototype.
2352 Sun Feb 24 05:25:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2354         * ruby.c (proc_options): check if argument for -E exists.
2356 Sun Feb 24 05:09:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2358         * misc/ruby-style.el (ruby-style-label-indent): fix for labels inside
2359           blocks in switch.
2361 Sun Feb 24 03:52:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2363         * util.c (valid_filename): use O_EXCL to get rid of clobbering
2364           existing files in race conditions.
2366 Sat Feb 23 21:36:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2368         * ext/win32ole/win32ole.c (ole_init_cp): should return value.
2370 Sat Feb 23 20:16:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2372         * string.c (str_sublen): removed.
2374         * string.c (rb_str_reverse, rb_str_reverse_bang): use
2375           single_byte_optimizable.
2377 Sat Feb 23 19:25:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2379         * string.c (rb_enc_cr_str_copy_for_substr): renamed from
2380           rb_enc_cr_str_copy.
2382         * string.c: use rb_enc_cr_str_copy_for_substr and keep coderange.
2384 Sat Feb 23 18:50:17 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2386         * ext/win32ole/win32ole.c (ole_encoding2cp): remove US-ASCII
2387           mapping.
2389 Sat Feb 23 01:09:47 2008  Tanaka Akira  <akr@fsij.org>
2391         * process.c (rlimit_resource_type): new function.
2392           (rlimit_resource_value): new function.
2393           (proc_getrlimit): use rlimit_resource_type to accept
2394           symbol and string as resource type.
2395           (proc_setrlimit): use rlimit_resource_type and rlimit_resource_value
2396           to accept symbol and string as resource type and values.
2398 Fri Feb 22 21:12:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2400         * string.c (rb_enc_cr_str_copy): check string's coderange is 7bit or
2401           valid.
2403 Fri Feb 22 19:50:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2405         * bignum.c (BIGZEROP): fix for longer Bignum zeros.  [ruby-Bugs-17454]
2407 Fri Feb 22 15:47:36 2008  Tanaka Akira  <akr@fsij.org>
2409         * encoding.c (rb_enc_mbclen): return minlen instead of 1 when
2410           a character is not found properly.
2412         * string.c (rb_enc_strlen): round up string length with fixed
2413           multibyte encoding such as UTF-32.
2414           (rb_enc_strlen_cr): ditto.
2415           (rb_str_substr): fix substring with fixed multibyte encoding.
2416           (rb_str_justify): check number of characters.
2418 Fri Feb 22 12:11:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2420         * string.c (rb_str_inspect): string of ascii incompatible encoding
2421           should be escaped and returned as US-ASCII encoding.
2423 Fri Feb 22 11:16:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2425         * string.c (rb_str_substr): copy encoding although empty string.
2427 Fri Feb 22 04:48:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2429         * string.c (rb_str_times): empty string's coderange is CODERANGE_7BIT.
2431         * string.c (rb_str_substr): ditto.
2433         * encoding.c (rb_enc_compatible): empty string is compatible with not
2434           only nonasciicompatible strings. [ruby-dev:33895]
2436 Thu Feb 21 17:15:15 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
2438         * transcode.c: Added basic support for passing options to String#encode
2439           via a hash. Currently only one option, with one value, is supported:
2440           invalid: :ignore (dropping invalid byte sequences instead of
2441           producing an error). Option naming is not yet stable!
2443         * test/ruby/test_transcode.rb: Added a single test for invalid: :ignore
2444           option. Not more tests because most data does not yet distinguish
2445           between INVALID and UNKNOWN.
2447 Thu Feb 21 16:35:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2449         * array.c (rb_ary_unshift_m): expands enough for argc.  [ruby-dev:33880]
2451 Thu Feb 21 14:49:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2453         * io.c (argf_set_encoding): uses current_file after check if next
2454           input is available.
2456 Thu Feb 21 14:13:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2458         * io.c (rb_f_putc): invoke stdout method so that redefining putc
2459           may take effect.   [ruby-talk:291844]
2461         * io.c (rb_f_puts): ditto.
2463 Thu Feb 21 11:10:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2465         * string.c: replace rb_enc_copy by rb_enc_cr_str_copy or
2466           rb_enc_cr_str_exact_copy.
2468 Thu Feb 21 10:35:04 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2470         * include/ruby/encoding.h (rb_enc_asciicompat): dummy encoding is not
2471           ascii compatible. [ruby-dev:33878]
2473 Thu Feb 21 00:01:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2475         * configure.in (RPATHFLAG): -R option of HP-UX ld is not for runtime
2476           load path.  [ruby-list:44600]
2478 Wed Feb 20 23:55:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2480         * win32/win32.c (rb_w32_map_errno): exported.
2482 Wed Feb 20 23:28:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2484         * ext/readline/extconf.rb (rl_event_hook): workaround for native
2485           windows.
2487 Wed Feb 20 19:42:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2489         * encoding.c (rb_enc_associate_index): doesn't clear coderange
2490           when new encoding equals to old one.
2492 Wed Feb 20 19:15:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2494         * string.c (rb_enc_str_copy): added for wrapper for rb_enc_copy.
2495           this also copy coderange when ptr and len is equal.
2497         * string.c (rb_enc_cr_str_copy): added for wrapper for rb_enc_copy.
2498           this always copy coderange.
2500         * string.c (str_replace_shared): use rb_enc_str_copy.
2502         * string.c (str_new3): don't rb_enc_copy because encoding is copied
2503           at str_replace_shared.
2505 Wed Feb 20 13:08:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2507         * instruby.rb (parse_args): added --dir-mode, --script-mode and
2508           --cmd-type options.  [ruby-dev:33816]
2510         * instruby.rb (parse_args): added bin-arch and bin-comm to install
2511           type, for compiled files and script files.
2513         * instruby.rb (parse_args): deal with make style command line macros,
2514           and count as long style options if prefixed with INSTALL_.
2516         * instruby.rb (makedirs): use $dir_mode.  [ruby-dev:33805]
2518         * instruby.rb (open_for_install): set file mode, which is now
2519           permission mode instead of access mode.
2521         * instruby.rb (bin-comm): installs scripts with replacing shebang
2522           lines.
2524 Wed Feb 20 10:04:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2526         * io.c (open_key_args): set arg->io even if no options passed.
2527           [ruby-dev:33072]
2529 Tue Feb 19 21:11:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2531         * string.c (rb_enc_strlen_cr): get length with coderange scan.
2533         * string.c (str_strlen): use rb_enc_strlen_cr. [ruby-dev:33849]
2535 Tue Feb 19 20:49:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2537         * eval.c (rb_raise_jump): moved adjustment for control frame.
2539 Tue Feb 19 18:34:32 2008  Tanaka Akira  <akr@fsij.org>
2541         * gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed.  [ruby-dev:33857]
2543 Tue Feb 19 14:27:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2545         * ext/readline/readline.c (readline_event): prevent polling.  based on
2546           a patch from error errorsson in [ruby-Bugs-17675].
2548 Tue Feb 19 11:14:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2550         * eval.c (ruby_exec_node): no thread starts inside iseq compilation.
2552         * eval.c (rb_f_raise): skip current control frame.  [ruby-core:15589]
2554         * insns.def (opt_div): raise as the ordinary method. [ruby-core:15589]
2556 Mon Feb 18 15:16:30 2008  Tanaka Akira  <akr@fsij.org>
2558         * string.c (rb_str_each_line): fix newline size.
2560 Mon Feb 18 13:06:37 2008  Tanaka Akira  <akr@fsij.org>
2562         * lib/irb/locale.rb (IRB::Locale#lc2kconv): check ja_JP.EUC-JP as well.
2564 Mon Feb 18 11:51:19 2008  Tanaka Akira  <akr@fsij.org>
2566         * re.c (re_warn): defined to restore warnings for /[a-c-e]/, etc.
2568 Mon Feb 18 10:17:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2570         * ext/pty/lib/expect.rb (IO#expect): check if peer is closed.
2571           [ruby-Bugs-17940]
2573 Mon Feb 18 00:33:03 2008  Tanaka Akira  <akr@fsij.org>
2575         * re.c (rb_reg_regsub): don't repeat repl twice with
2576           "X".sub!(/./, sprintf("\\%c", 255)).
2578 Sun Feb 17 23:06:55 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2580         * lib/cgi.rb (CGI::escapeHTML): use gsub with Hash. [ruby-dev:33828]
2582 Sun Feb 17 21:38:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2584         * encoding.c (ENC_CODERANGE_AND): fix broken case. [ruby-dev:33826]
2586         * string.c (rb_str_times): fix broken case. [ruby-dev:33826]
2588 Sun Feb 17 20:45:10 2008  Tanaka Akira  <akr@fsij.org>
2590         * re.c (rb_reg_prepare_re): add enable_warning parameter.
2591           (rb_reg_adjust_startpos): disable warning by rb_reg_prepare_re.
2592           (rb_reg_search): follow rb_reg_prepare_re parameter change.
2594 Sun Feb 17 20:12:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2596         * test/ruby/test_regexp.rb: add tests to achieve over 90% test
2597           coverage of re.c.
2599 Sun Feb 17 15:25:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2601         * encoding.c (ENC_CODERANGE_AND): added.
2603         * string.c (rb_str_plus, rb_str_times): keep coderange.
2605         * parse.y (STR_NEW0) use rb_usascii_str_new.
2607 Sun Feb 17 14:07:24 2008  Tanaka Akira  <akr@fsij.org>
2609         * string.c (str_strlen): rb_enc_strlen doesn't fail.
2611 Sun Feb 17 13:03:48 2008  Tanaka Akira  <akr@fsij.org>
2613         * string.c (str_sublen): use rb_enc_strlen.
2615 Sun Feb 17 12:17:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2617         * enc/{euc_jp.c,gbk.c,iso_8859_1.c,iso_8859_11.c,iso_8859_13.c,
2618           iso_8859_2.c,iso_8859_6.c,iso_8859_7.c,iso_8859_8.c,iso_8859_9.c,
2619           shift_jis.c,windows_1251.c}: add document about encodings.
2621         * enc/cp949.c: divided into new file.
2623 Sun Feb 17 10:59:04 2008  Tanaka Akira  <akr@fsij.org>
2625         * re.c (rb_reg_quote): return US-ASCII string consistently.
2627 Sun Feb 17 09:17:08 2008  Tanaka Akira  <akr@fsij.org>
2629         * string.c (rb_str_times): reduce loop overhead.
2631 Sun Feb 17 03:37:01 2008  Tanaka Akira  <akr@fsij.org>
2633         * include/ruby/re.h (struct rmatch_offset): new struct for character
2634           offsets.
2635           (struct rmatch): new struct.
2636           (struct RMatch): reference struct rmatch.
2637           (RMATCH_REGS): new macro.
2639         * re.c (match_alloc): initialize struct rmatch.
2640           (pair_byte_cmp): new function.
2641           (update_char_offset): update character offsets.
2642           (match_init_copy): copy regexp and character offsets.
2643           (match_sublen): removed.
2644           (match_offset): use update_char_offset.
2645           (match_begin): ditto.
2646           (match_end): ditto.
2647           (rb_reg_search): make character offset updated flag false.
2648           (match_size): use RMATCH_REGS.
2649           (match_backref_number): ditto.
2650           (rb_reg_nth_defined): ditto.
2651           (rb_reg_nth_match): ditto.
2652           (rb_reg_match_pre): ditto.
2653           (rb_reg_match_post): ditto.
2654           (rb_reg_match_last): ditto.
2655           (match_array): ditto.
2656           (match_aref): ditto.
2657           (match_values_at): ditto.
2658           (match_inspect): ditto.
2660         * string.c (rb_str_subpat_set): use RMATCH_REGS.
2661           (rb_str_sub_bang): ditto.
2662           (str_gsub): ditto.
2663           (rb_str_split_m): ditto.
2664           (scan_once): ditto.
2666         * gc.c (obj_free): free character offsets.
2668 Sun Feb 17 03:13:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2670         * win32/resource.rb: made version infos confirm to OS spec.
2672         * {bcc32,win32}/Makefile.sub (*.rc): add dependency.
2674 Sat Feb 16 20:49:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2676         * string.c (rb_str_substr): optimized for UTF-8.
2678 Sat Feb 16 18:13:53 2008  Tanaka Akira  <akr@fsij.org>
2680         * encoding.c (rb_enc_compatible): check encoding incapable arguments.
2682 Sat Feb 16 20:12:47 2008  Tanaka Akira  <akr@fsij.org>
2684         * re.c (match_inspect): avoid SEGV with MatchData.allocate.inspect.
2686 Sat Feb 16 19:04:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2688         * string.c (str_strlen): revert r15507. [ruby-dev:33810]
2690 Sat Feb 16 18:25:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2692         * string.c (str_strlen): little more optimization.
2693           (rb_enc_nth): remove needless variable 'c'.
2695 Sat Feb 16 18:00:13 2008  Tanaka Akira  <akr@fsij.org>
2697         * encoding.c (rb_enc_compatible): empty strings are always compatible.
2699         * string.c (rb_enc_cr_str_buf_cat): ditto.
2701 Sat Feb 16 16:14:35 2008  Tanaka Akira  <akr@fsij.org>
2703         * string.c (rb_enc_strlen): UTF-8 character count moved to str_strlen.
2704           (str_strlen): UTF-8 character count is only applicable for valid
2705           UTF-8 string.  [ruby-dev:33807]
2707 Sat Feb 16 13:16:49 2008  Tanaka Akira  <akr@fsij.org>
2709         * string.c (rb_str_sub_bang): stringize replacing hash values.
2710           (str_gsub): ditto.
2712 Sat Feb 16 13:01:33 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2714         * string.c (rb_enc_strlen): add search_nonascii like character
2715           counter for UTF-8.
2717 Sat Feb 16 11:53:35 2008  Tanaka Akira  <akr@fsij.org>
2719         * encoding.c (rb_enc_strlen): moved to string.c.
2721         * string.c (rb_enc_strlen): use search_nonascii.
2722           (str_strlen): don't use search_nonascii.
2724 Sat Feb 16 11:45:31 2008  Tanaka Akira  <akr@fsij.org>
2726         * lib/require_relative.rb: check require_relative call in eval.
2728 Sat Feb 16 08:00:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2730         * ruby.c (process_options): set default_external before loading
2731           libraries. [ruby-dev:33801]
2733 Sat Feb 16 05:49:54 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2735         * enc/iso_8859_{4,13}.c: Windows-1257 is replica of ISO-8859-13.
2737         * string.c (single_byte_optimizable): rb_enc_mbminlen must be 1
2738           when rb_enc_mbmaxlen is 1.
2740 Sat Feb 16 03:43:18 2008  Tanaka Akira  <akr@fsij.org>
2742         * encoding.c (rb_enc_nth): moved to string.c.
2744         * string.c (rb_enc_nth): moved from string.c.  use search_nonascii
2745           for ASCII compatible string.
2746           (str_nth): wrong optimization removed to fix
2747           "a".force_encoding("EUC-JP").slice!(0,10) returns
2748           "a\x00\x00\x00\x00\x00\x00\x00\x00\x00"
2750 Sat Feb 16 00:21:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2752         * range.c (rb_range_beg_len): check if responds to "begin" and "end"
2753           methods for non-Range object.
2755 Fri Feb 15 20:29:42 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2757         * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
2758           according to Encoding.default_external.
2760         * test/win32ole/test_win32ole.rb: ditto.
2762 Fri Feb 15 19:31:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2764         * include/ruby/node.h (NODE_FL_NEWLINE): renamed from NODE_NEWLINE
2765           to denote its a flag.  [ruby-core:15529]
2767 Fri Feb 15 18:23:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2769         * string.c (rb_str_sub_bang, str_gsub): allows hash for replacement.
2771 Fri Feb 15 17:12:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2773         * string.c (str_strlen): use search_nonascii() for performance.
2775         * string.c (str_nth): ditto.
2777 Fri Feb 15 16:22:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2779         * io.c (open_key_args): allow specifying both :mode and :encoding.
2781 Fri Feb 15 15:34:47 2008  Tanaka Akira  <akr@fsij.org>
2783         * string.c (rb_str_getbyte): new method.
2784           (rb_str_setbyte): new method.
2786 Fri Feb 15 15:29:03 2008  Tanaka Akira  <akr@fsij.org>
2788         * lib/require_relative.rb: new file.
2790 Fri Feb 15 15:23:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2792         * ext/iconv/iconv.c (iconv_convert): check upper bound.  a patch from
2793           Daniel Luz at [ruby-Bugs-17910].
2795 Fri Feb 15 10:35:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2797         * re.c (rb_reg_quote): set US-ASCII for ASCII-only string.
2798           [ruby-dev:33785]
2800 Fri Feb 15 10:27:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2802         * {win,bcc}32/Makefile.sub (config.h): added HAVE_FTRUNCATE.
2803           [ruby-dev:33786]
2805 Fri Feb 15 09:44:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2807         * parse.y (reg_compile_gen): reg_fragment_setenc might not raise an
2808           exception before rb_reg_compile.
2810 Fri Feb 15 07:37:40 2008  Eric Hodel  <drbrain@segment7.net>
2812         * lib/rdoc/ri/paths.rb: Preserve compatibility with 1.8.
2814 Fri Feb 15 02:42:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2816         * configure.in (ftruncate): check if available.
2818         * file.c (rb_file_truncate): check if ftruncate instead of truncate.
2820 Fri Feb 15 02:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2822         * configure.in (sigsetmask): check when signal semantics is not POSIX.
2824         * signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is
2825           available.
2827 Thu Feb 14 23:56:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2829         * eval_error.c (error_print): append a newline to rest lines.
2831         * parse.y (reg_compile_gen): appends error message from
2832           rb_reg_compile() to one from reg_fragment_setenc().
2834 Thu Feb 14 21:00:14 2008  Tanaka Akira  <akr@fsij.org>
2836         * io.c (io_reopen): check STDIN, STDOUT and STDERR mode according to
2837           stdio streams.
2839 Thu Feb 14 16:07:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2841         * test/ruby/test_math.rb: actual-expected argument ordering for
2842           test_math.rb fixed.  a patch from Tadashi Saito
2843           <shiba AT mail2.accsnet.ne.jp> in [ruby-dev:33770].
2845 Thu Feb 14 16:02:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2847         * file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
2849 Thu Feb 14 12:30:02 2008  Tanaka Akira  <akr@fsij.org>
2851         * re.c (rb_reg_preprocess_dregexp): use non-preprocessed regexp source
2852           for result.
2854 Thu Feb 14 01:43:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2856         * lib/timeout.rb (Timeout::timeout): made sensitive to location on the
2857           stack.  [ruby-core:15458]
2859 Thu Feb 14 00:49:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2861         * common.mk (INSTRUBY_ARGS): pass mode to install.  [ruby-dev:33766]
2863         * instruby.rb (parse_args): added --data-mode and --prog-mode options.
2865 Thu Feb 14 00:02:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2867         * eval.c (eval): allow to eval in a binding that has a singleton method.
2868           [ruby-dev:33763]
2870         * test/ruby/test_proc.rb: add tests to achieve over 70% test coverage
2871           of time.c.
2873         * test/ruby/test_method.rb: ditto.
2875 Wed Feb 13 22:46:36 2008  Tanaka Akira  <akr@fsij.org>
2877         * lib/pathname.rb (Pathname#sub_ext): new method.  [ruby-list:44608]
2879 Wed Feb 13 21:50:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2881         * proc.c (proc_curry): new method. [ruby-dev:33676]
2883         * test/ruby/test_proc.rb: add tests for above.
2885 Wed Feb 13 20:48:50 2008  Tanaka Akira  <akr@fsij.org>
2887         * include/ruby/ruby.h (RObject): add iv_index_tbl for shortcut of
2888           RCLASS_IV_INDEX_TBL(rb_obj_class(obj)).
2889           (ROBJECT_IV_INDEX_TBL): defined.
2891         * object.c (init_copy): initialize iv_index_tbl in struct RObject.
2893         * variable.c (ivar_get): use ROBJECT_IV_INDEX_TBL.
2894           (rb_ivar_defined): ditto.
2895           (obj_ivar_each): ditto.
2896           (rb_obj_remove_instance_variable): ditto.
2897           (rb_ivar_set): update iv_index_tbl in struct RObject.
2899 Wed Feb 13 16:21:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2901         * lib/uri/generic.rb: revert r15442. 2nd argument of String#sub parse
2902           escapes. [ruby-dev:33726]
2904         * bootstraptest/test_method.rb, enc/depend, instruby.rb, lib/mkmf.rb,
2905           mkconfig.rb: revert r15443. ditto.
2907 Wed Feb 13 11:20:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2909         * enc/depend: fix typo.
2911         * lib/mkmf.rb: revert r15443. "\\1#{sep}\\2" is wrong if sep is ended
2912           with "\\".
2914 Wed Feb 13 08:57:21 2008  Eric Hodel  <drbrain@segment7.net>
2916         * lib/rdoc/markup/inline.rb:  Allow inline markup to have a leading
2917           '#' or '\', or trailing punctuation.  i.e. *#freeze?*, *\foo?*.
2919 Wed Feb 13 07:21:23 2008  Eric Hodel  <drbrain@segment7.net>
2921         * lib/rdoc/to_html_hyperlink.rb:  Moved linking to to_html.rb, move
2922           crossref to to_html_crossref.rb
2924 Wed Feb 13 04:15:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2926         * parse.y (arg_concat_gen, arg_append_gen): optimize for array push.
2928         * parse.y (arg_concat_gen): optimize for array concat.
2930         * parse.y (arg_add_gen): removed since identical to arg_append_gen.
2932 Tue Feb 12 21:04:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2934         * parse.y (exc_list): should use mrhs if non array.
2936 Tue Feb 12 20:32:50 2008  Tadayoshi Funaba  <tadf@dotrb.org>
2938         * lib/rational.rb (floor, ceil, truncate, round): do not use
2939           definitions of Numeric.
2941         * lib/rational.rb (to_i): should returns truncated self.
2943         * lib/complex.rb (numerator): requires
2944           Integer#{numerator,denominator}.
2946         * lib/complex.rb (quo): do not use definition of Numeric.
2948         * lib/complex.rb (>, >=, <, <=, between?, div, divmod, modulo,
2949           floor, ceil, truncate, round): undef'ed.
2951         * lib/mathn.rb (Rational#inspect): removed.
2953 Tue Feb 12 16:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2955         * parse.y (args, mrhs): flattens literal array splats.
2957         * parse.y (exc_list): splat literal array.
2959 Tue Feb 12 15:27:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2961         * bootstraptest/runner.rb, bootstraptest/test_method.rb, enc/depend,
2962           instruby.rb, lib/mkmf.rb, lib/test/unit/util/procwrapper.rb,
2963           mkconfig.rb, sample/test.rb, template/vm.inc.tmpl,
2964           test/ruby/test_stringchar.rb: fixes around String#gsub.
2967 Tue Feb 12 15:11:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2969         * ext/json/lib/json/pure/generator.rb,
2970           ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
2971           ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
2972           lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
2973           lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
2974           lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
2975           lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
2976           lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
2977           lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
2978           lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
2979           lib/yaml/encoding.rb: performance tuning around String#gsub.
2981 Tue Feb 12 12:16:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2983         * string.c (rb_str_hash_cmp): lighter version of rb_str_cmp() for
2984           hash comparison function.
2986         * hash.c (rb_any_cmp): use rb_str_hash_cmp().
2988         * string.c (rb_str_casecmp): should return nil for incompatible
2989           comparison.
2991 Tue Feb 12 12:13:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2993         * instruby.rb: specify file mode to install.  a patch from
2994           pegacorn  <subscriber.jp AT gmail.com> in [ruby-dev:33699].
2996 Tue Feb 12 11:38:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2998         * numeric.c (rb_num_coerce_bin): add ID argument to specify
2999           caller's method name.  [ruby-dev:33663]
3001         * numeric.c (rb_num_coerce_cmp): ditto.
3003         * numeric.c (rb_num_coerce_relop): ditto.
3005         * ext/bigdecimal/bigdecimal.c (DoSomeOne): add function name argument.
3007 Tue Feb 12 10:25:02 2008
3009         * lib/rdoc/rdoc.rb:  Wrap parse_files' read in version check for
3010           backwards compatibility.
3012 Tue Feb 12 10:15:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3014         * ruby.c (load_file): enc must effect source encoding.
3015           [ruby-core:15496]
3017 Tue Feb 12 10:16:47 2008  Eric Hodel  <drbrain@segment7.net>
3019         * lib/rdoc/ri/paths.rb:  Restore require rubygems check.
3021 Tue Feb 12 02:42:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3023         * range.c (range_include): specialize single character string
3024           case (e.g. (?a ..?z).include(?x)) for performance.
3025           [ruby-core:15481]
3027         * string.c (rb_str_upto): specialize single character case.
3029         * string.c (rb_str_hash): omit coderange scan for performance.
3031         * object.c (rb_check_to_integer): check Fixnum first.
3033         * object.c (rb_to_integer): ditto.
3035         * string.c (rb_str_equal): inline memcmp to avoid unnecessary
3036           rb_str_comparable().
3038         * parse.y (rb_intern2): use US-ASCII encoding.
3040         * parse.y (rb_intern_str): ditto.
3042 Mon Feb 11 17:21:18 2008  Kouhei Sutou  <kou@cozmixng.org>
3044         * lib/rss/rss.rb (RSS::VERSION), test/rss/test_version.rb:
3045           0.2.3 -> 0.2.4.
3047         * lib/rss/maker.rb, lib/rss/maker/, test/rss/test_maker_2.0.rb:
3048           fixed a bug that RSS::Maker.make("0.9")'s item doesn't make some
3049           elements if description is missed.
3050           Reported by Michael Auzenne. Thanks!!!
3052         * lib/rss/maker/0.9.rb, test/rss/test_maker_0.9.rb:
3053           RSS::Maker.make("0.9") generates RSS 0.92 not RSS 0.91.
3055 Mon Feb 11 10:43:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3057         * ruby.c (load_file): the encoding of DATA follows the source
3058           file encoding. [ruby-dev:33693]
3060 Mon Feb 11 06:50:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3062         * test/ruby/test_pack.rb: fix tests for 64bit CPU.
3064         * test/ruby/test_bignum.rb: ditto.
3066         * test/ruby/test_file_exhaustive.rb: ditto.
3068         * test/ruby/test_integer.rb: ditto.
3070         * test/ruby/test_time.rb: ditto.
3072         * test/ruby/test_numeric.rb: ditto.
3074         * test/ruby/test_fixnum.rb: ditto.
3076 Mon Feb 11 00:18:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3078         * lib/benchmark.rb (Job::Benchmark#item): fix typo.
3080 Sun Feb 10 21:58:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3082         * common.mk (encdb, transdb): depend on $(PREP).
3084 Sun Feb 10 16:58:20 2008  Eric Hodel  <drbrain@segment7.net>
3086         * lib/rubygems*, test/rubygems*, gem_prelude.rb: Import RubyGems
3087           r1601.  [ruby-core:15381]
3089 Sun Feb 10 15:07:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3091         * {bcc32,win32,wince}/Makefile.sub (MISSING): added cbrt.obj.
3093 Sun Feb 10 12:58:33 2008  Eric Hodel  <drbrain@segment7.net>
3095         * lib/rdoc/code_objects.rb: Make some attributes accessible for reuse.
3096         * lib/rdoc/generator/html.rb: Pull out ContextUser classes and related
3097           methods for reuse.
3098         * lib/rdoc/generator.rb: Move ContextUser classes to
3099           RDoc::Generator::Context for reuse.
3100         * lib/rdoc/rdoc.rb: Make RDoc::RDoc initialization a little easier.
3101         * lib/rdoc/options.rb: Make RDoc::Options easier to use without
3102           parsing an ARGV.
3103         * lib/rdoc/markup/to_*.rb: Subclass RDoc::Markup::Formatter.
3104         * lib/rdoc/markup/formatter.rb: Add RDoc::Markup::Formatter to make
3105           RDoc markup conversion easier.
3106         * lib/rdoc/markup/fragments.rb: Make RDoc::Markup::ListItem easier to
3107           test.
3108         * lib/rdoc/markup/to_html_hyperlink.rb: Pulled out of the HTML
3109           generator for easier reusability.
3110         * lib/rdoc/markup.rb: Fix bug with labeled lists containing bullet
3111           lists.
3112         * lib/rdoc/generators/html/html.rb: Fix Constant display.
3114 Sat Feb  9 23:44:29 2008  Tanaka Akira  <akr@fsij.org>
3116         * missing/tgamma.c (tgamma): use lgamma_r if available.
3118 Sat Feb  9 23:22:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3120         * ext/bigdecimal/extconf.rb: simplified the condition.
3122 Sat Feb  9 21:20:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3124         * test/ruby/test_math.rb: add tests for Math.gamma, Math.lgamma and
3125           Math.cbrt, and use assert_in_delta instead of assert.
3127 Sat Feb  9 18:34:45 2008  Tanaka Akira  <akr@fsij.org>
3129         * math.c (math_cbrt): new method Math.cbrt.
3131         * configure.in (cbrt): check for replacement functions.
3133         * missing/cbrt.c: new file.
3135 Sat Feb  9 17:51:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3137         * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use strtod() for more
3138           precision.  [ruby-talk:290296]
3140         * ext/bigdecimal/bigdecimal.c (BASE_FIG): made constant.
3142         * ext/bigdecimal/extconf.rb: ditto.  [ruby-dev:33658]
3144 Sat Feb  9 12:06:45 2008  Tanaka Akira  <akr@fsij.org>
3146         * missing/tgamma.c (tgamma): add error check.
3148 Sat Feb  9 11:47:03 2008  Tanaka Akira  <akr@fsij.org>
3150         * math.c (math_gamma): add error check.
3151           (math_lgamma): ditto.
3153 Sat Feb  9 11:09:26 2008  Tanaka Akira  <akr@fsij.org>
3155         * missing/lgamma_r.c (lgamma_r): return HUGE_VAL for non-positive
3156           integers.
3158 Sat Feb  9 10:03:07 2008  Tanaka Akira  <akr@fsij.org>
3160         * string.c (rb_str_new4): copy encoding from orig, instead of shared
3161           one.
3163 Sat Feb 09 01:01:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3165         * file.c (lchmod_internal): fix warning cast from pointer to integer of
3166           different size.
3168 Sat Feb  9 00:44:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3170         * lib/irb.rb (IRB::Irb::eval_input): rescues Interrupt and other than
3171           SystemExit and SignalException.  [ruby-core:15359]
3173 Fri Feb  8 23:51:36 2008  Tanaka Akira  <akr@fsij.org>
3175         * missing/lgamma_r.c (lgamma_r): use smaller argument for sin function.
3177 Fri Feb  8 22:10:36 2008  Tanaka Akira  <akr@fsij.org>
3179         * lib/open-uri.rb (OpenURI.open_http): rescue URI::InvalidURIError by
3180           URI.parse for location URI.
3182 Fri Feb  8 19:22:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3184         * ext/iconv/iconv.c (rb_str_derive): uses rb_str_subseq() for byte
3185           length.  [ruby-dev:33653]
3187         * ext/iconv/iconv.c (iconv_convert): added toidx argument to set
3188           encoding of successfully converted string.  [ruby-dev:33221]
3190 Fri Feb  8 15:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3192         * lib/mkmf.rb (xsystem): expand macros like as make.
3194 Fri Feb  8 09:27:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3196         * lib/rdoc/ri/driver.rb (read_yaml): remove SM* for compatibility.
3198 Fri Feb  8 00:07:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3200         * test/ruby/test_hash.rb: follow the change of Hash#flatten.
3202         * test/ruby/test_time.rb: add tests to achieve over 70% test coverage
3203           of time.c.
3205         * test/ruby/test_prec.rb: ditto over 90% for prec.c.
3207 Thu Feb  7 19:11:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3209         * string.c (rb_str_dup): reverted unneeded change.  [ruby-dev:33634]
3211         * string.c (rb_str_replace): makes frozen shared string before
3212           sharing.
3214 Thu Feb  7 16:33:51 2008  Tanaka Akira  <akr@fsij.org>
3216         * io.c (io_reopen): don't change access mode for stdin, stdout and
3217           stderr.  [ruby-core:15360]
3219 Thu Feb  7 16:33:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3221         * string.c (str_replace_shared): replaces string with sharing.
3223         * string.c (rb_str_new4, rb_str_associate, rb_str_associated): allows
3224           associated strings shared.
3226         * string.c (rb_str_dup, rb_str_substr, rb_str_replace): shares memory.
3227           [ruby-core:15400]
3229 Thu Feb  7 15:42:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3231         * string.c (rb_str_end_with): compares with the suffix.
3233 Thu Feb  7 15:03:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3235         * enc/trans/korean.c: add support for CP949 by Park Ji-In.
3236           [ruby-dev:33626]
3238 Thu Feb  7 11:11:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3240         * missing/lgamma_r.c (lgamma_r): some compilers don't permit dividing
3241           by literal 0.0. use const variable instead.
3243         * {bcc32,win32,wince}/Makefile.sub (MISSING): add lgamma_r.obj and
3244           tgamma.obj.
3246 Thu Feb  7 10:39:21 2008  Tanaka Akira  <akr@fsij.org>
3248         * math.c (math_gamma): new method Math.gamma.
3249           (math_lgamma): new method Math.lgamma.
3251         * include/ruby/missing.h (tgamma): declared unless HAVE_TGAMMA.
3252           (lgamma_r): declared unless HAVE_LGAMMA_R.
3254         * configure.in (tgamma): check for replacement functions.
3255           (lgamma_r): ditto.
3257         * missing/tgamma.c: new file.  based on gamma.c from
3258           "C-gengo niyoru saishin algorithm jiten" (New Algorithm handbook
3259           in C language) (Gijyutsu hyouron sha, Tokyo, 1991)
3260           by Haruhiko Okumura.
3262         * missing/lgamma_r.c: ditto.
3264         * LEGAL (missing/tgamma.c): describe as public domain.
3265           (missing/lgamma_r.c): ditto.
3267 Thu Feb  7 09:05:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3269         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_from_index): BINARY does not
3270           have in-bound encoding index.
3272 Thu Feb  7 04:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3274         * enc/trans/korean.c: add EUC-KR conversion support by Park Ji-In.
3275           [ruby-dev:33621]
3277 Wed Feb  6 01:47:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3279         * hash.c (rb_hash_flatten): do not flatten recursively by default.
3280           [ruby-dev:33603]
3282 Wed Feb  6 00:50:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3284         * insns.def (adjuststack): never use INC_SP with minus value because
3285           some compilers cannot deal it correctly. use DEC_SP instead.
3287 Wed Feb  6 00:48:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3289         * test/ruby/test_hash.rb: add tests to achieve over 90% test coverage
3290           of hash.c.
3292         * test/ruby/test_env.rb: ditto.
3294 Wed Feb  6 00:24:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3296         * hash.c (env_rassoc): remove access to free'd environment on mswin32.
3298 Tue Feb  5 21:57:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3300         * vm.c (rb_call_super): pass a passed block when super is called via
3301           rb_call_super.  [ruby-dev:33598]
3303 Tue Feb  5 11:14:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3305         * lib/mkmf.rb (INSTALL_DIRS, install_dirs): added BINDIR.
3307         * lib/mkmf.rb (install_files): rejects files matching to
3308           $NONINSTALLFILES.
3310         * lib/mkmf.rb (init_mkmf): defaults $NONINSTALLFILES to backup and
3311           temporary files.
3313 Mon Feb  4 21:52:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3315         * lib/delegate.rb (DelegateClass): use define_method instead of
3316           module_eval to improve performance.  [ruby-dev:33586]
3318 Mon Feb  4 16:44:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3320         * configure.in (darwin): NSIG is not defined if _XOPEN_SOURCE > 500L.
3321           [ruby-dev:33584]
3323 Mon Feb  4 14:51:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3325         * parse.y (rb_enc_symname2_p): support "!", "!=" and "!~".
3326           [ruby-dev:33592]
3328 Mon Feb  4 13:58:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3330         * lib/delegate.rb (Delegator.preserved, DelegateClass.methods): extend
3331           shouldn't be delegated. [ruby-dev:32987], etc.
3333 Mon Feb  4 08:59:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3335         * lib/cgi.rb (CGI::QueryExtension::[]): no more transition
3336           extend(CGI::Value).  a patch from <tommy AT tmtm.org> in
3337           [ruby-dev:33583].
3339 Sun Feb  3 21:13:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3341         * test/ruby/test_numeric.rb: forgot to add this (at r15360).
3343         * test/ruby/test_file_exhaustive.rb: add tests to achieve over 80% test
3344           coverage of file.c.
3346 Sat Feb  2 20:06:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3348         * lib/benchmark.rb (Benchmark::realtime): make Benchmark#realtime
3349           a bit faster.  a patch from Alexander Dymo <dymo AT ukrpost.ua> in
3350           [ruby-core:15337].
3352 Sat Feb  2 17:40:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3354         * time.c (time_cmp): Time.<=> no longer supports comparison with
3355           numeric. [ruby-core:15332]
3357 Sat Feb  2 09:53:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3359         * configure.in (darwin): disabled fat-binary support which confuses
3360           configure much, since ``universal'' implies hidden cross-compiling.
3361           TODO: ruby and libruby.bundle might be possible to bound with `lipo'
3362           after builds for each archs.  Anyway, config.h and rbconfig.rb must
3363           be separated definitely at least.
3365 Sat Feb  2 09:28:36 2008  Tanaka Akira  <akr@fsij.org>
3367         * random.c (limited_big_rand): fix buffer overflow when SIZEOF_BDIGITS
3368           is 2.  fixed by Kenta Murata.  [ruby-dev:33565]
3370 Fri Feb  1 21:42:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3372         * configure.in (darwin): _XOPEN_SOURCE is necessary to make ucontext_t
3373           consistent with the library implementation of MacOS X 10.5.
3374           [ruby-dev:33461]
3376         * configure.in (darwin): ucontext on PowerPC MacOS X 10.5 is broken.
3378 Fri Feb  1 11:44:22 2008  Tanaka Akira  <akr@fsij.org>
3380         * tool/compile_prelude.rb (C_ESC): use octal escape to avoid
3381           "\x09for (;;) ..." to be interpret the first character 0x9f.
3383 Thu Jan 31 23:06:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3385         * test/ruby/test_bignum.rb: suppress warnings during test.
3387         * test/ruby/test_enum.rb: ditto.
3389         * test/ruby/test_integer.rb: add tests to achieve over 90% test
3390           coverage of numeric.c.
3392         * test/ruby/test_float.rb: ditto.
3394         * test/ruby/test_fixnum.rb: ditto.
3396         * test/ruby/test_numeric.rb: ditto.
3398         * test/ruby/test_pack.rb: add tests to achieve over 90% test coverage
3399           of pack.c.
3401 Thu Jan 31 17:30:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3403         * marshal.c (r_object0): no need to call r_entry for immediate values.
3405 Thu Jan 31 15:46:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3407         * lib/rdoc/ri/formatter.rb (output): add accessor.
3409         * lib/rdoc/ri/display.rb (page): replace @formatter.output instead of
3410           $stdout.
3412 Thu Jan 31 15:06:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3414         * marshal.c (r_object0): call r_entry/r_leave to call proc when
3415           TYPE_FIXNUM, TYPE_NIL, TYPE_TRUE, TYPE_FALSE, TYPE_SYMBOL.
3417 Thu Jan 31 14:03:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3419         * lib/rdoc/ri/display.rb (display_method_list, display_class_list):
3420           use @formatter.raw_print_line instead of puts.
3422         * lib/rdoc/ri/driver.rb (select_methods): new method to collect all
3423           instance/class methods which match with passed pattern.
3425         * lib/rdoc/ri/driver.rb (run): use class_cache's result directly
3426           instead of select_classes' because it's removed now.
3428         * lib/rdoc/ri/driver.rb (run): search methods when passed name is not
3429           class name. [ruby-core:15309]
3431 Thu Jan 31 08:31:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3433         * common.mk (ext/extmk.rb, instruby.rb): inlined $(MAKE) so that can
3434           be executed even with -n.
3436 Thu Jan 31 06:24:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3438         * io.c (rb_io_close_read): replaces fptr with the tied writer if
3439           duplex.
3441         * io.c (rb_io_close_write): unties the tied IO for writing if duplex.
3442           [ruby-dev:33532]
3444 Thu Jan 31 02:22:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3446         * io.c (open_key_args): allow encoding key to take two encoding
3447           names.  a patch from <rubikitch AT ruby-lang.org>.  [ruby-dev:33540]
3449 Thu Jan 31 02:15:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3451         * parse.y (dsym): allow empty symbols.  [ruby-core:15248]
3453 Thu Jan 31 00:01:51 2008  Tanaka Akira  <akr@fsij.org>
3455         * io.c (select_internal): fix SEGV by `select [STDIN],nil,[STDIN]'.
3456           fixed by Petr Chromec.
3457           http://rubyforge.org/tracker/index.php?func=detail&aid=17275&group_id=426&atid=1698
3459 Wed Jan 30 17:32:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3461         * enc/*.c: add GB12345, UCS-{2,4}{BE,LE}.
3463 Wed Jan 30 14:32:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3465         * lib/rdoc/ri/driver.rb (cache_file_for): shouldn't use `:' in filename.
3467 Wed Jan 30 14:27:19 2008  Tanaka Akira  <akr@fsij.org>
3469         * string.c (rb_str_succ): use wrapped character as a carry for
3470           ASCII incompatible encoding.
3472 Wed Jan 30 12:26:59 2008  Tanaka Akira  <akr@fsij.org>
3474         * enc/utf_16be.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
3475           (UTF16_IS_SURROGATE_SECOND): ditto.
3476           (UTF16_IS_SURROGATE): defined.
3477           (utf16be_mbc_enc_len): validation implemented.
3479         * enc/utf_16le.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
3480           (UTF16_IS_SURROGATE_SECOND): ditto.
3481           (UTF16_IS_SURROGATE): defined.
3482           (utf16le_mbc_enc_len): validation implemented.
3484 Wed Jan 30 12:06:43 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3486         * bignum.c (rb_cstr_to_inum): '0_2' is a valid representation.
3488 Wed Jan 30 11:57:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3490         * bootstraptest/runner.rb: fix -I../../hoge case.
3492 Wed Jan 30 01:25:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3494         * test/ruby/test_range.rb: add tests to achieve over 90% test coverage
3495           of range.c.
3497 Wed Jan 30 00:09:37 2008  Tanaka Akira  <akr@fsij.org>
3499         * enc/euc_tw.c (euctw_mbc_enc_len): validation implemented.
3501 Tue Jan 29 22:58:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3503         * test/ruby/test_enumerator.rb: add tests to achieve over 90% test
3504           coverage of enumerator.c.
3506         * test/ruby/test_enum.rb: add for enum.c.
3508 Tue Jan 29 22:29:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3510         * enumerator.c: fix documents.
3512 Tue Jan 29 22:27:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3514         * range.c: fix SEGV by ("a" .. "z").step(2 ** 30) { }.
3516 Tue Jan 29 21:59:16 2008  Tanaka Akira  <akr@fsij.org>
3518         * enc/euc_tw.c (euctw_islead): 0x8e is a leading byte.
3520 Tue Jan 29 21:55:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3522         * bignum.c: move object allocation out of blocking_region.
3523           [ruby-dev:33139]
3525 Tue Jan 29 20:37:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3527         * enc/trans/make_transdb.rb: add for make transdb.h.
3529         * dmytranscode.c: add for miniruby.
3531         * enc/gbk.c (gbk_left_adjust_char_head, gbk_is_allowed_reverse_match):
3532           fix odd regexp match. [ruby-dev:33502]
3534 Tue Jan 29 20:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3536         * {bcc32,win32}/Makefile.sub (MINIOBJS): add dmytranscode.$(OBJEXT).
3538 Tue Jan 29 19:39:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3540         * configure.in, common.mk: fix rule for dmytranscode.o.
3542 Tue Jan 29 19:03:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3544         * enc/trans/japanese.c (rb_to_Windows_31J): to 'Windows-31J'.
3546         * common.mk: add rules for transdb.h.
3548         * transcode.c (init_transcoder_table): use transdb.h.
3550 Tue Jan 29 18:05:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3552         * encoding.c (encdb_{replicate,alias,dummy,declare}): define only if
3553           NO_ENCDB_H is not defined.
3555 Tue Jan 29 17:54:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3557         * enc/gbk.c (EncLen_gbk): too short. [ruby-dev:33497]
3559 Tue Jan 29 17:25:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3561         * dmyencoding.c, encoding.c (enc_init_db, NO_ENCDB_H):
3562           miniruby doesn't use encdb.
3564         * common.mk: encdb.h use miniruby.
3566 Tue Jan 29 17:37:36 2008  Tanaka Akira  <akr@fsij.org>
3568         * enc/gb18030.c (gb18030_mbc_enc_len): validation implemented.
3570 Tue Jan 29 17:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3572         * tool/ifchange: remove $temp when unchanged.
3574 Tue Jan 29 16:59:01 2008  Tanaka Akira  <akr@fsij.org>
3576         * insns.def (toregexp): generate a regexp from strings instead of one
3577           string.
3579         * re.c (rb_reg_new_ary): defined for toregexp.  it concatenates
3580           strings after each string is preprocessed.
3582         * compile.c (compile_dstr_fragments): split from compile_dstr.
3583           (compile_dstr): call compile_dstr_fragments.
3584           (compile_dregx): defined for dynamic regexp.
3585           (iseq_compile_each): use compile_dregx for dynamic regexp.
3587           [ruby-dev:33400]
3589 Tue Jan 29 16:25:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3591         * common.mk, ext/extmk.rb: always make encdb.h.
3593 Tue Jan 29 12:53:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3595         * enc/gbk.c: add GBK, CP936 and CP949.
3597         * enc/euc_kr.c: remove CP949.
3599         * enc/euc_cn.c: remove CP936 and rename to gb2312.c
3601         * enc/gb2312.c: GB2312 is preferred MIME name.
3603 Tue Jan 29 03:01:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3605         * parse.y (reg_fragment_setenc_gen): US-ASCII script special code.
3607         * parse.y (reg_fragment_check_len, reg_compile_gen): no need such
3608           trick.
3609           [ruby-dev:33399]
3611         * test/ruby/test_m17n.rb (test_regexp_usacii_literal): add tests.
3613 Tue Jan 29 01:38:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3615         * common.mk ($(srcdir)/revision.h): no need to show ifchange execution
3616           because ifchange echos updated or unchanged.
3618 Tue Jan 29 01:26:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3620         * common.mk (up): use last changed revision.
3622         * common.mk (up): force to update revision.h.
3624 Tue Jan 29 00:12:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3626         * bignum.c (rb_big2str0): should be US-ASCII.
3628 Tue Jan 29 00:10:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3630         * misc/ruby-mode.el (ruby-mode-set-encoding): updates magic comment.
3632 Mon Jan 28 23:47:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3634         * parse.y (rb_id2str, ripper_initialize, Init_ripper):
3635           use rb_usascii_str_new2. [ruby-dev:33449]
3637 Mon Jan 28 19:37:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3639         * ext/win32ole/win32ole.c (ole_cp2encoding): new function.
3641         * ext/win32ole/win32ole.c (ole_wc2vstr, ole_variant2val, fole_missing):
3642           set encoding to result.
3644         * ext/win32ole/win32ole.c (fole_s_set_code_page, Init_win32ole): set
3645           default encoding.
3646           [ruby-dev:33433]
3648 Mon Jan 28 11:17:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3650         * string.c, parse.y, re.c: use rb_ascii8bit_encoding.
3652 Mon Jan 28 17:54:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3654         * enc/utf_7.h: add dummy encoding UTF-7 and its alias CP65000.
3656 Mon Jan 28 17:41:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3658         * enc/utf_8.c: add alias CP65001.
3660 Mon Jan 28 15:33:23 2008  Tanaka Akira  <akr@fsij.org>
3662         * enc/big5.c (big5_mbc_enc_len): validation implemented.
3664 Mon Jan 28 13:02:02 2008  Tanaka Akira  <akr@fsij.org>
3666         * enc/euc_kr.c (euckr_mbc_enc_len): validation implemented.
3668 Mon Jan 28 11:24:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3670         * parse.y (parser_str_new): encoding of UTF-8 literal string in
3671           US-ASCII script is UTF-8. [ruby-dev:33406]
3673 Mon Jan 28 10:25:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3675         * test/ruby/test_m17n.rb (test_magic_comment): add test.
3677 Mon Jan 28 09:34:54 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3679         * common.mk (help): use double quotes for nmake.
3681 Mon Jan 28 00:39:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3683         * parse.y (parser_set_encode): check if encoding is ASCII compatible.
3685 Mon Jan 28 01:21:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3687         * io.c (rb_open_file): should check NUL in path.
3688           <http://www.rubyist.net/~matz/20080125.html#c01>.
3690         * io.c (rb_io_s_popen): ditto.
3692         * io.c (rb_io_reopen): ditto.
3694         * io.c (next_argv): ditto.
3696 Sun Jan 27 23:33:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3698         * sprintf.c (rb_str_format): fix for left justify flag.
3700         * sprintf.c (rb_str_format): zero-precision zero bug revised.
3701           [ruby-dev:33419]
3703 Sun Jan 27 23:20:54 2008  Tanaka Akira  <akr@fsij.org>
3705         * include/ruby/oniguruma.h: precise mbclen API redesigned to avoid
3706           inline functions.
3707           (onigenc_mbclen_charfound): removed.
3708           (onigenc_mbclen_needmore): removed.
3709           (onigenc_mbclen_recover): removed.
3710           (ONIGENC_MBCLEN_CHARFOUND): removed.
3711           (ONIGENC_MBCLEN_CHARFOUND_P): defined.
3712           (ONIGENC_MBCLEN_CHARFOUND_LEN): defined.
3713           (ONIGENC_MBCLEN_INVALID): removed.
3714           (ONIGENC_MBCLEN_INVALID_P): defined.
3715           (ONIGENC_MBCLEN_NEEDMORE): removed.
3716           (ONIGENC_MBCLEN_NEEDMORE_P): defined.
3717           (ONIGENC_MBCLEN_NEEDMORE_LEN): defined.
3718           (ONIGENC_MBC_ENC_LEN): use onigenc_mbclen_approximate.
3720         * regenc.c (onigenc_mbclen_approximate): defined.
3722         * include/ruby/encoding.h (MBCLEN_CHARFOUND): removed.
3723           (MBCLEN_INVALID): removed.
3724           (MBCLEN_NEEDMORE): removed.
3725           (MBCLEN_CHARFOUND_P): defined.
3726           (MBCLEN_INVALID_P): defined.
3727           (MBCLEN_NEEDMORE_P): defined.
3728           (MBCLEN_CHARFOUND_LEN): defined.
3729           (MBCLEN_NEEDMORE_LEN): defined.
3731         * encoding.c: use new API.
3733         * re.c: ditto.
3735         * string.c: ditto.
3737         * parse.y: ditto.
3739 Sun Jan 27 22:55:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3741         * parse.y (value_expr_gen): reverted r12880.  [ruby-dev:33388]
3743 Sun Jan 27 22:33:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3745         * sprintf.c (rb_str_format): fix for octal with precision.
3746           [ruby-dev:33411]
3748 Sun Jan 27 22:31:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3750         * misc/ruby-mode.el (ruby-mode-set-encoding): automatically insert
3751           encoding magic comment.
3753         * misc/ruby-mode.el (ruby-mode): set ruby-mode-set-encoding to buffer
3754           local before-save-hook.
3756 Sun Jan 27 19:51:15 2008  Tanaka Akira  <akr@fsij.org>
3758         * string.c (rb_str_inspect): avoid exception by
3759           "\#\xa1".force_encoding("euc-jp").inspect.
3761 Sun Jan 27 19:07:33 2008  Tanaka Akira  <akr@fsij.org>
3763         * string.c (rb_str_succ): warning suppressed.
3765 Sun Jan 27 18:18:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3767         * common.mk (help): show major targets.
3769 Sun Jan 27 17:54:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3771         * ext/nkf/nkf.c: raise error when no output encoding is given.
3773 Sun Jan 27 17:20:10 2008  Tanaka Akira  <akr@fsij.org>
3775         * string.c (rb_str_succ): don't increment/decrement codepoint.
3777 Sun Jan 27 16:03:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3779         * lib/irb/ruby-lex.rb (RubyLex#buf_input): use chars.to_a.
3781 Sun Jan 27 16:27:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3783         * ext/nkf/nkf-utf8: update nkf.
3785 Sun Jan 27 16:25:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3787         * re.c (rb_reg_source): set encoding as regexp encoding.
3789 Sun Jan 27 05:56:39 2008  Tanaka Akira  <akr@fsij.org>
3791         * re.c (rb_reg_preprocess): force fixed encoding when ASCII
3792           incompatible source string.
3794 Sat Jan 26 23:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3796         * sprintf.c (rb_str_format): zero-precision zero should be empty.
3797           [ruby-dev:33363]
3799         * sprintf.c (rb_str_format): not prepend octal prefix to negative or
3800           zero value.  [ruby-dev:33363], [ruby-dev:33367]
3802 Sat Jan 26 23:42:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3804         * parse.y (assignable_gen, keyword_to_name): __ENCODING__ was missing.
3806 Sat Jan 26 19:08:45 2008  Tanaka Akira  <akr@fsij.org>
3808         * marshal.c (w_object): dump string encoding in USERDEF.
3809           [ruby-dev:33401]
3811 Sat Jan 26 17:42:23 2008  Koichi Sasada  <ko1@atdot.net>
3813         * compile.c (iseq_compile_each): validate argument expr of "next"
3814           statement.
3816         * bootstraptest/test_syntax.rb: add a test.
3818 Sat Jan 26 17:22:46 2008  Koichi Sasada  <ko1@atdot.net>
3820         * compile.c, compile.h: fix to calculate correct stack depth
3821            at each instruction.
3823 Sat Jan 26 09:41:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3825         * lib/rexml/doctype.rb, test/rss/test_maker_itunes.rb: replace
3826           multi-byte string.
3828         * test/json/{test_json.rb, test_json_unicode.rb}:
3829           add magic comment.
3831 Sat Jan 26 09:30:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3833         * include/ruby/encoding.h (rb_usascii_encindex): added prototype.
3835         * include/ruby/intern.h (rb_usascii_str_new, rb_usascii_str_new2):
3836           ditto.
3838 Sat Jan 26 09:17:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3840         * string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
3841           empty string (len == 0).
3843 Sat Jan 26 03:41:53 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3845         * parse.y (parser_initialize): set default script encoding as US-ASCII.
3847         * ruby.c (load_file): ditto.
3849         * ruby.c (process_options): set script encoding of -e from locale
3850           except when -K is specified.
3852         * ruby.c (load_file): set script encoding of stdin from locale except
3853           when -K is specified. [ruby-dev:33375]
3855 Sat Jan 26 02:51:06 2008  Koichi Sasada  <ko1@atdot.net>
3857         * compile.c, compile.h: fix stack pointer issues.
3858           calculate correct stack depth at compile time.
3860         * insns.def (emptstack): remove it and add a new insn "adjuststack".
3862         * bootstraptest/test_knownbug.rb: move/remove fixed test.
3864         * bootstraptest/test_syntax.rb: ditto.
3866 Sat Jan 26 00:17:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3868         * string.c (rb_str_usascii_new{,2}: defined.
3869           (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when empty
3870           string.
3872         * encoding.c (rb_usascii_encoding, rb_usascii_encindex): defined.
3873           (rb_enc_inspect, enc_name, rb_locale_charmap, rb_enc_name_list_i):
3874           use rb_str_ascii_new.
3876         * array.c (recursive_join, inspect_ary): ditto.
3878         * object.c (nil_to_s, nil_inspect, true_to_s, false_to_s,
3879           rb_mod_to_s): ditto.
3881         * hash.c (inspect_hash, rb_hash_inspect, rb_f_getenv, env_fetch,
3882           env_clear, env_to_s, env_inspect): ditto.
3884         * numeric.c (flo_to_s, int_chr, rb_fix2str): ditto.
3886         * bignum.c (rb_big2str): ditto.
3888         * file.c (rb_file_ftype, rb_file_s_dirname, rb_file_s_extname,
3889           file_inspect_join, Init_file): ditto.
3891         * test/ruby/test_ruby_m17n.rb: add checks for encoding of string.
3893 Sat Jan 26 01:35:46 2008  Tanaka Akira  <akr@fsij.org>
3895         * marshal.c (r_byte): use getbyte instead of getc.
3896           (marshal_load): ditto.
3897           [ruby-dev:33264]
3899 Sat Jan 26 00:43:40 2008  Tanaka Akira  <akr@fsij.org>
3901         * io.c (rb_io_getline_fast): don't care ASCII incompatible encoding.
3902           (prepare_getline_args): generate a newline according to IO encoding
3903           when necessary.
3904           (rb_io_getline_1): call rb_io_getline_fast only for ASCII
3905           compatible encoding.
3907 Fri Jan 25 21:49:36 2008  Tanaka Akira  <akr@fsij.org>
3909         * string.c (rb_str_buf_cat_ascii): use rb_enc_cr_str_buf_cat.
3911 Fri Jan 25 19:38:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3913         * common.mk (version.$(OBJEXT)): depends on $(srcdir)/revision.h.
3915         * common.mk (revision.h): extracts revision number with ``svn info''.
3917         * common.mk (up): target to update from the repository.
3919         * Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
3920           file if changed.
3922         * tool/ifchange: for unixen.
3924         * win32/ifchange.bat: some fix
3926 Fri Jan 25 17:12:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3928         * ruby.c (load_file): set default to ASCII-8BIT explicitly if -K
3929           option is not given.
3931 Fri Jan 25 16:31:47 2008  Tanaka Akira  <akr@fsij.org>
3933         * include/ruby/intern.h (rb_str_buf_cat_ascii): declared.
3935         * string.c (rb_str_buf_cat_ascii): defined.
3937         * re.c (rb_reg_s_union): use rb_str_buf_cat_ascii to support ASCII
3938           incompatible encoding.
3940 Fri Jan 25 16:11:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3942         * ruby.c (process_options, load_file, rb_load_file): propagates script
3943           encoding by -K to libraries.  [ruby-dev:33156]
3945 Fri Jan 25 15:56:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3947         * ruby.c (cmdline_arguments): split argc and argv from cmdline_options.
3949         * ruby.c (process_options): not set encoding of -e option from -E
3950           option if they are not compatible.
3952 Fri Jan 25 13:15:23 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3954         * ruby.c (proc_options, process_options, load_file): shouldn't effect
3955           --encoding to script encoding. [ruby-dev:33169]
3957 Fri Jan 25 10:31:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3959         * */*.bat: set svn:mime-type to text/batch.
3961 Thu Jan 24 23:23:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3963         * enum.c (enum_one, enum_take_while, enum_drop_while): fix documents.
3965 Thu Jan 24 21:46:24 2008  Tanaka Akira  <akr@fsij.org>
3967         * parse.y (reg_fragment_setenc_gen): associate ASCII-8BIT only if
3968           str has only ASCII characters.
3970 Thu Jan 24 20:46:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3972         * test/ruby/test_m17n.rb: follow to the following changes.
3974 Thu Jan 24 20:21:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3976         * parser.y (parser_str_new): automatically update string literal's
3977           encoding from US-ASCII to ASCII-8BIT when script encoding is US-ASCII
3978           and the string includes non-ascii bytes. [ruby-dev:33348]
3980         * parser.y (reg_fragment_check_gen, reg_compile_gen): automatically
3981           update regexp literal's encoding from US-ASCII to ASCII-8BIT when
3982           script encoding is US-ASCII, the regexp has no kcode option and the
3983           regexp includes non-ascii bytes. [ruby-dev:33353]
3985 Thu Jan 24 19:36:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3987         * lib/uri/generic.rb (URI::Generic::inspect): use Kernel#to_s instead
3988           object_id with printf.  [ruby-dev:33347]
3990 Thu Jan 24 19:29:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3992         * sprintf.c (remove_sign_bits): returns pointer to the first char to
3993           be used, instead of copying.
3995         * sprintf.c (rb_str_format): negative indicator dots should come
3996           before sign digits always.  [ruby-dev:33224]
3998 Thu Jan 24 18:19:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4000         * include/ruby/encoding.h (rb_enc_is_newline): parenthesized arguments.
4002 Thu Jan 24 18:14:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4004         * re.c (rb_reg_fixed_encoding_p): no need to treat ASCII-8BIT specially.
4006 Thu Jan 24 16:53:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4008         * re.c (rb_reg_initialize): 7bit clean regexp should be US-ASCII.
4009           [ruby-dev:33346]
4011 Thu Jan 24 16:31:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4013         * io.c (rb_io_getline_fast): the end point of left_char_head()
4014           must be the last character.  [ruby-cvs:22445]
4016 Thu Jan 24 16:24:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4018         * parse.y (reg_fragment_setenc_gen): recognize regexp with option n as
4019           as ASCII-8BIT instead of US-ASCII. [ruby-dev:33339]
4021 Thu Jan 24 15:44:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4023         * array.c (collect_bang_i): use rb_ary_store() to avoid potential
4024           memory corruption.  a patch from Yusuke Endoh <mame@tsg.ne.jp>
4025           in [ruby-dev:33328].
4027         * array.c (ITERATE): remove unnecessary macro.
4029         * array.c (sort_1): remove ary_sort_check().  in-place sort keep
4030           original elements even when it's modified.
4032         * array.c (sort_2): ditto.
4034 Thu Jan 24 15:09:40 2008  Tanaka Akira  <akr@fsij.org>
4036         * time.c (make_time_t): revert round trip test.  [ruby-dev:33058]
4038 Thu Jan 24 11:14:56 2008  Tanaka Akira  <akr@fsij.org>
4040         * string.c (rb_enc_cr_str_buf_cat): ASCII incompatible encoding is
4041           not compatible with any other encoding.
4043 Thu Jan 24 07:34:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4045         * parse.y (STR_NEW0): set encoding as US-ASCII.
4047 Thu Jan 24 03:47:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4049         * lib/rexml/text.rb, lib/rubygems/open-uri.rb, lib/open-uri.rb,
4050           test/logger/test_logger.rb, test/ruby/test_regexp.rb:
4051           fix tests. [ruby-dev:33336]
4053 Thu Jan 24 03:23:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4055         * string.c (rb_str_each_line): use memchr(3) for faster newline
4056           search.
4058         * io.c (appendline): remove unused arguments
4060         * io.c (rb_io_getline_fast): make much simpler (and faster).
4062 Thu Jan 24 02:13:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4064         * insns.def (expandarray): fix stack inc.  [ruby-dev:32892]
4066         * bootstraptest/test_knownbug.rb, test_massign.rb: move a fixed test.
4068 Thu Jan 24 01:00:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4070         * encoding.{c, h} (rb_usascii_encoding): added.
4072         * parse.y (parser_str_new, rb_intern3): ascii only string literal is
4073           US-ASCII.
4075         * ruby.c (proc_optionc): -Kn means ASCII-8BIT.
4077 Wed Jan 23 23:54:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4079         * sprintf.c: fix comment.  [ruby-dev:33275]
4081         * math.c: fix comment.  [ruby-dev:33276]
4083 Wed Jan 23 22:47:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4085         * test/ruby/test_struct.rb: add tests to achieve over 90% test
4086           coverage of struct.c.
4088         * test/ruby/test_sprintf.rb: ditto for sprintf.c.
4090         * test/ruby/test_math.rb: ditto for math.c.
4092 Wed Jan 23 22:14:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4094         * enc/trans/japanese.c (rb_from_Windows_31J, rb_to_Windows_31J):
4095           provisional workaround for Windows-31J.  [ruby-dev:33320]
4097 Wed Jan 23 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4099         * time.c (time_strftime): copy encoding from format.  [ruby-dev:33303]
4101 Wed Jan 23 15:04:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4103         * string.c (str_make_independent): should set length.
4105         * string.c (rb_str_associate): hide associated array from ObjectSpace.
4107         * string.c (rb_str_associated): return associated array with freezing
4108           instead of false.  [ruby-dev:33282]
4110         * string.c (rb_str_freeze): freeze associated array together.
4112 Wed Jan 23 13:39:48 2008  Tanaka Akira  <akr@fsij.org>
4114         * re.c (rb_reg_prepare_re): fix SEGV by
4115           /a/ =~ "aa".force_encoding("utf-16be").
4117 Wed Jan 23 11:53:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4119         * string.c (str_mod_check, str_nth, str_offset): constified.
4121         * string.c (rb_str_dump): dump in ASCII-8BIT always.
4123 Wed Jan 23 10:18:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4125         * eval_method.c (rb_export_method): set ruby_vm_redefined_flag for
4126           visibility change as well.  reported by K.Kosako in
4127           http://d.hatena.ne.jp/kkos/20080122#1201012720.
4129 Tue Jan 22 22:26:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4131         * test/ruby/test_bignum.rb: change some tests because rational
4132           redefines Bignum#quo and Bignum#**.
4134 Tue Jan 22 20:58:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4136         * lib/mkmf.rb (create_makefile): need to output sodir rule.
4138 Tue Jan 22 19:37:16 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4140         * lib/mkmf.rb (create_makefile): lib files shouldn't depend on install
4141           dir because if the dir is newer than lib files, lib files will be
4142           always copied.
4144 Tue Jan 22 17:52:52 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
4146         * enc/trans/utf_16_32.c: Streamline parentheses, add more
4147           'static' qualifiers.
4149 Tue Jan 22 12:57:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4151         * configure.in (MINIRUBY): remove -I$(EXTOUT)/$(arch) from
4152           MINIRUBY since miniruby might not be able to load DLL.
4154         * test/ruby/test_m17n.rb: move tests from bootstrap test.
4156         * encoding.c (enc_find): should check name if ASCII compatible.
4158         * string.c (rb_str_end_with): should check character boundary.
4160         * encoding.c (rb_enc_compatible): encoding must be ASCII
4161           compatible before checking ENC_CODERANGE_7BIT.
4163         * encoding.c (rb_enc_compatible): wrong compatibility condition.
4164           [ruby-dev:33273]
4166 Tue Jan 22 09:26:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4168         * string.c (rb_str_each_char): iterates over a shadow.
4169           [ruby-dev:33243]
4171 Tue Jan 22 08:59:52 2008  Eric Hodel  <drbrain@segment7.net>
4173         * lib/rdoc/ri/formatter.rb:  Indent labeled lists like note lists.
4175         * test/rdoc/test_rdoc_ri_overstrike_formatter.rb:  Added.
4177         * test/rdoc/test_rdoc_ri_formatter.rb:  Added tests.
4179 Tue Jan 22 04:40:28 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4181         * parse.y (rb_intern3): do not call rb_enc_mbclen() if *m is
4182           ASCII.  [ruby-talk:287225]
4184         * string.c (rb_str_each_line): use rb_enc_is_newline() to gain
4185           performance if the record separator ($/) is not modified.
4187 Tue Jan 22 01:15:51 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4189         * ChangeLog: format-time-string under C locale. [ruby-dev:33261]
4191 Tue Jan 22 00:45:12 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4193         * test/ruby/test_bignum.rb: add tests for bignum.c.
4195 Tue Jan 22 00:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4197         * bignum.c (big_shift): fix a bug that caused infinite loop when
4198           left shifting.
4200 Mon Jan 21 20:09:38 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4202         * lib/date.rb (marshal_load): initialize the cache.
4204 Mon Jan 21 19:42:42 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
4206         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
4207           added UTF-32BE and UTF-32LE conversions.
4209 Mon Jan 21 14:36:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4211         * transcode.c (str_transcode): initialize transcoder in
4212           rb_transcoding.  [ruby-dev:33234]
4214         * transcode_data.h (rb_transcoding): transcoder constified.
4216 Mon Jan 21 12:50:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4218         * eval.c, gc.c (setjmp): sigsetjmp is a macro on cygwin.
4220 Mon Jan 21 12:35:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4222         * transcode.c (transcode_loop, str_transcoding_resize): use unsigned
4223           char.  [ruby-dev:33232]
4225         * transcode_data.h (rb_transcoding, rb_transcoder): removed callback
4226           parameters.
4228         * enc/trans/japanese.c: ditto.
4230         * enc/trans/utf_16_32.c: parenthesized bit-or operands.
4232 Mon Jan 21 11:59:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4234         * string.c (rb_str_each_char): move forward.  [ruby-dev:33231]
4236 Mon Jan 21 06:40:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4238         * transcode.c (transcode_dispatch): constified return value.
4240         * transcode_data.h (rb_transcoding): include pointer to rb_transcoder
4241           and auxiliary data.
4243         * transcode_data.h (rb_transcoder): all callback functions should have
4244           their own parameters.
4246         * enc/trans/{japanese,single_byte}.c: constified.
4248 Mon Jan 21 03:45:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4250         * string.c (rb_str_each_char): advance offset before get next char
4251           length.  [ruby-dev:33211]
4253 Sun Jan 20 20:00:20 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
4255         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
4256           added UTF-16LE conversions.
4258         * fixed changelog for last commit
4260 Sun Jan 20 17:54:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
4262         * added changelog for last commit
4264 Sun Jan 20 15:08:08 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
4266         * enc/trans/utf_16_32.c: new file, currently implementing
4267           UTF-16BE conversions only.
4269         * test/ruby/test_transcode.rb: Added tests for UTF-16BE;
4270           made check_both_ways() use force_encoding differently.
4272         * transcode_data.h, transcode.c: Support for more conversion
4273           functions.
4275 Sun Jan 20 13:06:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4277         * string.c (rb_str_each_char): performance improvement, and stop if
4278           shortened in the block.  [ruby-dev:33189]
4280 Sun Jan 20 09:12:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4282         * common.mk: use -Ks when read insns.def. [ruby-dev#33185]
4284         * parse.y: fix -e and stdin strings aren't set encoding.
4286 Sun Jan 20 05:12:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4288         * enc/make_encdb.rb: fix duplication check.
4290 Sun Jan 20 05:03:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4292         * ascii.c: remove definition of replica KOI8-U.
4294 Sun Jan 20 00:33:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4296         * enc/koi8_u.c: added.
4298         * regenc.c, enc/utf_8.c, enc/unicode.c, enc/gb18030.c: add ARG_UNUSED.
4300 Sat Jan 19 22:41:39 2008  Tanaka Akira  <akr@fsij.org>
4302         * string.c (coderange_scan): don't call mbclen functions for ASCII
4303           characters with ASCII compatible encoding.
4305 Sat Jan 19 21:00:34 2008  Tanaka Akira  <akr@fsij.org>
4307         * lib/rdoc/template.rb (RDoc): defined to avoid uninitialized constant
4308           error by `./ruby test/rubygems/test_gem_server.rb'.
4310 Sat Jan 19 20:41:29 2008  Tanaka Akira  <akr@fsij.org>
4312         * encoding.c (enc_new): don't free rb_encoding to avoid SEGV by
4313           `miniruby -e exit' on x86_64 GNU/Linux.
4315 Sat Jan 19 18:40:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4317         * lib/date.rb (once): use an instance variable which points a hash
4318           as cache. [experimental]
4320 Sat Jan 19 17:21:29 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4322         * lib/date.rb, lib/date/format.rb: parse's hints as an
4323           experimental function has been removed.
4325 Sat Jan 19 11:21:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4327         * configure.in (sigsetjmp): check if available.
4329         * eval.c, gc.c (setjmp): do not use _setjmp if sigsetjmp is available.
4331 Sat Jan 19 11:10:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4333         * configure.in: Remove wrong assumptions about Cygwin.  a patch from
4334           Corinna Vinschen in [ruby-Bugs-17018].
4336 Sat Jan 19 09:23:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
4338         * ext/win32ole/win32ole.c (ole_set_safe_array): should not use
4339           recursive calling.
4341         * test/win32ole/test_win32ole_variant.rb: ditto.
4343 Sat Jan 19 08:58:47 2008  Eric Hodel  <drbrain@segment7.net>
4345         * lib/rdoc/markup: Remove ListBase and Line constants.
4347         * lib/rdoc/ri: Allow output IO to be specified.
4349         * test/rdoc/parser/test_parse_c.rb: Move up one level, fixed.
4351         * test/rdoc/parser/test_rdoc_markup_attribute_manager.rb: Renamed to
4352           match new class name, updated to match new classes.
4354         * test/rdoc/test_rdoc_ri_formatter.rb: Start of RI formatting tests.
4356         * test/rdoc/test_rdoc_ri_attribute_manager.rb: Start of
4357           RDoc::RI::AttributeManager tests.
4359         * test/rdoc/test_simple_markup.rb: Moved to match new class name.
4361 Sat Jan 19 08:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4363         * parse.y (parser_prepare): get encoding from the first line.
4364           [ruby-dev:33168]
4366         * ruby.c (load_file): set encoding to input with set_encoding.
4368 Sat Jan 19 03:46:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4370         * thread.c (thread_create_core): prohibit thread creation in the
4371           frozen thread group.  a patch in [ruby-dev:33176] from sheepman
4372           <sheepman AT sheepman.sakura.ne.jp>.
4374         * thread.c (thread_create_core): should inherit ThreadGroup from
4375           the current thread.
4377 Sat Jan 19 00:37:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4379         * sprintf.c (rb_str_format): set result encoding for wider width.
4381 Sat Jan 19 00:13:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4383         * thread_win32.c (w32_wait_events): shouldn't invoke interrupt handle
4384           by timer_thread.
4386 Fri Jan 18 23:49:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4388         * thread.c (thread_create_core): set thread group before creating
4389           thread.
4391 Fri Jan 18 20:19:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4393         * parse.y (ripper_initialize): too early to set parser->enc.
4395 Fri Jan 18 20:03:05 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4397         * win32/setup.mak (BASERUBY): nmake cannot execute ruby correctly
4398           if the path of ruby.exe is quoted.
4400         * win32/setup.mak ($(ARCH)): if a macro is appended by $(APPEND),
4401           a space will be inserted on the top of the line.
4403 Fri Jan 18 17:56:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4405         * eval_intern.h, insnhelper.h, thread_pthread.h, vm_core.h, vm_opts.h:
4406           prefixed include guards with RUBY.
4408         * id.h: added include guard.
4410         * regenc.h, regint.h, regparse.h: prefixed include guards with
4411           ONIGURUMA.
4413 Fri Jan 18 15:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4415         * thread.c (thread_cleanup_func): ignore errors from destroying mutex
4416           of dead thread.  [ruby-core:15069]
4418         * thread_pthread.c, thread_win32.c (native_thread_destroy): ditto.
4420 Fri Jan 18 15:56:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4422         * encoding.c (rb_enc_name_list_i, rb_enc_aliases_enc_i): freeze
4423           element strings to be returned.
4425 Fri Jan 18 14:36:34 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4427         * test/ruby/test_m17n.rb (test_str_dump): added test for
4428           String#dump. [ruby-dev:33142]
4430 Fri Jan 18 12:25:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4432         * encoding.c (load_encoding): check if successfully loaded.
4434         * encoding.c (rb_enc_find_index): use original encoding name to
4435           replicate loaded encoding instead alias.
4437 Fri Jan 18 09:43:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4439         * re.c (rb_char_to_option_kcode): Regexp switch `s' should mean
4440           Windows-31J, as wells as `-Ks'.
4442 Fri Jan 18 09:22:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4444         * parse.y (parser_initialize): explicitly call rb_ascii8bit_encoding().
4446         * parse.y (parser_prepare): lex_input may not be have encoding (e.g. IO).
4448         * parse.y (rb_parser_compile_string): set encoding from input string.
4450         * encoding.c (rb_enc_find_index): use ASCII-8BIT if loading known
4451           encoding failed.
4453         * parse.y (ripper_initialize): move parser->enc initialization.
4455         * encoding.c (rb_enc_aliases_enc_i): exclude non alias names from
4456           Encoding.aliases.
4458         * encoding.c (rb_enc_find_index): use original encoding name to
4459           load DLL.
4461 Fri Jan 18 07:06:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4463         * io.c (Init_IO): stdin/stdout may not be duplex.
4465 Fri Jan 18 04:27:57 2008  Eric Hodel  <drbrain@segment7.net>
4467         * sample/rdoc/markup/rdoc2latex.rb:  Fix for new namespacing.
4469         * lib/rdoc/markup/to_latex.rb:  Fix namespacing.
4471 Fri Jan 18 02:02:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4473         * bootstraptest/runner.rb (assert_valid_syntax): added.
4475         * bootstraptest/test_knownbug.rb: added test for [ruby-list:44479]
4477 Fri Jan 18 01:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4479         * vm_insnhelper.c (vm_call_method): check argument number to
4480           attr_reader.  [ruby-core:15120]
4482 Fri Jan 18 00:49:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4484         * io.c (rb_io_check_readable): flush tied write IO too.
4486         * io.c (Init_IO): tie stdin with stdout.  [ruby-core:15107]
4488 Fri Jan 18 00:23:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4490         * encoding.c (enc_free): removed since rb_encoding may be used while
4491           cleanup.
4493 Fri Jan 18 00:17:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4495         * enc/euc_cn.c: split from enc/euc_kr.c.
4497 Fri Jan 18 00:03:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4499         * ext/stringio/stringio.c (strio_init): use default external encoding
4500           if nothing is given.  a patch from sheepman <sheepman AT
4501           sheepman.sakura.ne.jp> in [ruby-dev:33159].
4503 Thu Jan 17 23:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4505         * common.mk (encdb.h): give output file name to make_encdb.rb.
4507         * encoding.c (enc_table): simplified.
4509         * encoding.c (enc_register_at): lazy loading.  [ruby-dev:33013]
4511         * regenc.h (ENC_DUMMY): added.
4513         * enc/make_encdb.rb: now emits macros only.
4515         * enc/iso_2022_jp.h: split from encoding.c.
4517 Thu Jan 17 21:48:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4519         * re.c (rb_char_to_option_kcode): fixed typo.
4521 Thu Jan 17 21:01:25 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4523         * lib/date.rb (Date::Infinity#<=>): didn't work.  A patch from
4524           Dirkjan Bussink <d.bussink AT gmail.com> [ruby-core:15098].
4525           This is a bug obviously.  However it didn't affect the library's
4526           functions.
4528         * lib/date.rb, lib/date/format.rb: some trivial changes.
4530 Thu Jan 17 13:07:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4532         * string.c (rb_str_dump): preserve the encoding of source string
4533           if it is ASCII compatible.  otherwise, add '.force_encoding()'
4534           for ugly work around.  maybe we should implement some other way
4535           to keep non ASCII encoding in dumped string.  [ruby-dev:33142]
4537 Thu Jan 17 10:30:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4539         * io.c (io_fwrite): always flush IO on tty, even without newlines.
4540           [ruby-core:15107]
4542 Wed Jan 16 22:45:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4544         * encoding.c (enc_register_at): make own copy.  [ruby-dev:33136]
4546 Wed Jan 16 18:03:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4548         * io.c (pipe_open, rb_io_s_popen): clear temporary object to release
4549           and prevent from GC.
4551 Wed Jan 16 17:55:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4553         * numeric.c (fix_quo): typo. a patch from Shin-ichiro HARA
4554           <sinara AT blade.nagaokaut.ac.jp> in [ruby-dev:33130]
4556 Wed Jan 16 17:36:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4558         * test/test_delegate.rb: add new test file for delegate.rb.
4560 Wed Jan 16 16:14:00 2008  Akinori MUSHA  <knu@iDaemons.org>
4562         * ruby.1: Fix grammar.
4564 Wed Jan 16 15:26:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4566         * file.c (sys_fail2): get rid of unlimited alloca.
4568         * io.c (mode_enc, pipe_open, rb_io_s_popen): ditto.
4570         * load.c (rb_feature_p): ditto.
4572         * object.c (rb_cstr_to_dbl): ditto.
4574         * io.c (mode_enc): fixed uninitialized variable.
4576 Wed Jan 16 12:51:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4578         * include/ruby/intern.h (rb_str_tmp_new, rb_str_shared_replace):
4579           prototype moved.
4581 Tue Jan 15 23:52:51 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4583         * enc/*: add ARG_UNUSED.
4585         * enc/koi8_u.c: added.
4587 Tue Jan 15 23:00:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4589         * enc/utf_{16,32}{be,le}.c: remove some ARG_UNUSED.  replace struct
4590           OnigEncodingST by OnigEncoding.
4592 Tue Jan 15 22:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4594         * encoding.c (ENC_REGISTER): use &OnigEncoding*.
4595           (ENCINDEX_UTF_8): renamed from ENCINDEX_UTF8.
4596           (rb_enc_init): use ENC_REGISTER.
4598         * include/ruby/oniguruma.h (OnigEncodingUTF8, ONIG_ENCODING_UTF8):
4599           removed.
4601         * enc/*.c: remove use of &encoding_*; use enc argument instead.
4603 Tue Jan 15 18:44:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4605         * enc/utf_8.c: remove use of ONIG_ENCODING_UTF8 altogether; use
4606           enc argument instead.
4608 Tue Jan 15 18:05:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4610         * enc/utf_8.c (ONIG_ENCODING_UTF8): reverted.
4612 Tue Jan 15 18:01:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4614         * win32/Makefile.sub (MKFILES): add dependencies.
4616 Tue Jan 15 18:00:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4618         * enc/utf_8.c (OnigEncodingDefine): encoding name should be kept
4619           unchanged.
4621 Tue Jan 15 17:53:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4623         * enc/utf_8.c: renamed as IANA name.
4625         * enc/Makefile.in: ditto.
4627 Tue Jan 15 16:59:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4629         * ruby.c (proc_options): encoding libraries cannot be loaded until
4630           load path is set.
4632 Tue Jan 15 15:09:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4634         * win32/setup.mak: strip out empty lines from CPP output.
4636 Tue Jan 15 14:57:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4638         * {win,bcc}32/setup.mak (-basic-vars-): expand BASERUBY to full path
4639           to get rid of ./ruby.exe.
4641         * win32/enc-setup.mak: workaround for Borland make.
4643 Tue Jan 15 14:44:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4645         * encoding.c (rb_locale_charmap): use ASCII-8BIT in miniruby.
4647 Tue Jan 15 13:54:41 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4649         * {bcc32,win32}/Makefile.sub (RUNRUBY): need to set archdir when
4650           invoking ruby.
4652 Tue Jan 15 13:43:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4654         * common.mk (us_ascii.o): add dependencies. [ruby-dev:33111]
4656 Tue Jan 15 03:41:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4658         * eval.c (eval): check if backtrace is empty.  [ruby-core:15040]
4660 Tue Jan 15 01:28:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4662         * common.mk: simplified dummy objects dependencies.
4664 Tue Jan 15 01:19:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4666         * common.mk (OBJS): moved encoding.o from COMMONOBJS.
4668         * common.mk (dmyencoding.o): added.  [ruby-dev:33099]
4670         * configure.in, {win,bcc}32/Makefile.sub (MINIOBJS): added
4671           dmyencoding.o.
4673         * dmyencoding.c (rb_locale_charmap): returns nil for miniruby.
4675 Tue Jan 15 00:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4677         * io.c (appendline): specifying limit should not generate broken
4678           byte sequence.  strings should be rounded.  [ruby-dev:33088]
4680 Mon Jan 14 23:33:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4682         * ext/nkf/lib/kconv.rb (Kconv.tolocale): argument is str.
4684 Mon Jan 14 23:31:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4686         * configure.in (setup): add -I$(EXTOUT)/$(arch) to MINIRUBY.
4688         * bootstraptest/runner.rb (main): expand -I directory path.
4690 Mon Jan 14 23:28:10 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4692         * win32/enc-setup.mak (BUILTIN_ENCOBJS): depends on enc/Makefile.in.
4694 Mon Jan 14 22:48:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4696         * re.c (rb_char_to_option_kcode): use rb_enc_find_index() instead
4697           of using fixed index value.
4699         * enc/Makefile.in (encsrcdir): make US-ASCII built-in.
4701 Mon Jan 14 22:25:02 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
4703         * golf_prelude.rb: Shorter method name completion.  Same method
4704           used for const missing. do_while and do_until added.  Enumerator
4705           gains all of Array's abilities. Ex:
4706             '123'.m{|i|i*2} #=> "112233"
4707             '123'.pe #=> '123'.perm*' ' #=> "123 132 213 231 312 321"
4708           base on a patch from Darren Smith <darrenks AT ml1.net>.
4710 Mon Jan 14 21:10:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4712         * enc/us_ascii.c: wrong alias name: ANSI_X3.4-1986.
4714         * rubytest.rb: add -I#{srcdir} to load encoding DLL.
4716 Mon Jan 14 18:53:58 2008  Koichi Sasada  <ko1@atdot.net>
4718         * thread.c: clear thread structure.
4719           (TODO: survey that child process should clear mutex or not).
4721         * bootstraptest/test_knownbug.rb, test_thread.rb: move a fixed test.
4723 Mon Jan 14 18:43:38 2008  Koichi Sasada  <ko1@atdot.net>
4725         * bootstraptest/runner.rb: add "flunk" method.
4727         * bootstraptest/test_knownbug.rb: fix to use flunk.
4729 Mon Jan 14 18:10:59 2008  Koichi Sasada  <ko1@atdot.net>
4731         * vm.h: remove dangerous assembler sentence.
4733 Mon Jan 14 18:06:37 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4735         * encoding.c (rb_locale_encoding): return US-ASCII when charmap is
4736           nil.
4738 Mon Jan 14 16:12:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4740         * lib/shellwords.rb: scape should be an alias to shellescape.  a
4741           patch from Masahiro Kawato <m-kawato AT mwb.biglobe.ne.jp> in
4742           [ruby-dev:33060].
4744 Mon Jan 14 16:09:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4746         * ruby.1: a patch to describe --encoding.  a patch from Yugui
4747           <yugui AT yugui.sakura.ne.jp> in [ruby-dev:33079].
4749         * ruby.c: ditto.
4751 Mon Jan 14 13:49:26 2008  Tanaka Akira  <akr@fsij.org>
4753         * re.c (rb_reg_prepare_re): initialize error message buffer.
4754           (rb_reg_search): ditto.
4755           (rb_reg_check_preprocess): ditto.
4756           (rb_reg_new_str): ditto.
4757           (rb_enc_reg_new): ditto.
4758           (rb_reg_compile): ditto.
4759           (rb_reg_initialize_m): ditto.
4760           (rb_reg_s_union_m): ditto.
4762 Mon Jan 14 12:33:07 2008  Eric Hodel  <drbrain@segment7.net>
4764         * lib/rdoc/markup*:  Renamespace from SM::SimpleMarkup to
4765           RDoc::Markup.
4767 Mon Jan 14 10:45:45 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
4769         * enc/ascii.c: Exchanged order of arguments for one ENC_ALIAS
4771 Mon Jan 14 09:19:07 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4773         * lib/time.rb: do not reference Time directly from the inside of
4774           definitions. [ruby-dev:33059]
4776 Mon Jan 14 05:44:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4778         * enc/*.c: add replicas and aliases.
4780         * enc/make_encdb.h: add duplicate and undefined check.
4782 Mon Jan 14 02:03:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4784         * include/ruby/oniguruma.h: remove ONIG_ENCODING_* and OnigEncoding*
4785           which are not builtin.
4787         * regenc.{c,h} (onigenc_mb2_code_to_mbclen, onigenc_mb4_code_to_mbclen):
4788           fix prototype.
4790         * enc/big5.c, enc/euc_kr.c, enc/euc_tw.c, enc/gb18030.c,
4791           enc/koi8_r.c, enc/windows_1251.c: imported from Oniguruma.
4793 Sun Jan 13 22:47:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4795         * enc/make_encdb.h: sort encoding names by original name.
4797         * encoding.c, enc/*.c: define replicas and aliases.
4799 Sun Jan 13 20:24:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4801         * encoding.c: add documents.
4803 Sun Jan 13 18:41:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4805         * encoding.c (Init_Encoding): moved initialization from encdb.h.
4807         * enc/make_encdb.rb (enc_name_list): constified.
4809         * enc/make_encdb.rb (enc_init_db): moved some functions to encoding.c.
4811 Sun Jan 13 13:53:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4813         * ruby.c (load_file): local variable was not initialized when -x flag
4814           is given.
4816         * ruby.c (load_file): script files should not be affected by locale.
4817           [ruby-dev:33054]
4819 Sun Jan 13 12:01:32 2008  Eric Hodel  <drbrain@segment7.net>
4821         * lib/rdoc/generators*: Reorganize RDoc generators.
4823 Sun Jan 13 11:41:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4825         * encoding.c (ENCINDEX_EUC_JP, ENCINDEX_SJIS): removed.
4826           (rb_enc_init): EUC-JP and Shift_JIS are not builtin now.
4828         * enc/Makefile.in: ditto.
4830         * common.mk: ditto.
4832         * ruby.c (proc_options): ditto.
4834         * enc/shift_jis.c, enc/euc_jp.c: fixes for remove from builtin.
4836 Sun Jan 13 10:21:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4838         * encoding.c (enc_table): packed all enc_table stuff.
4840 Sun Jan 13 09:58:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4842         * encoding.c (rb_enc_init): revert removing SJIS.
4844         * enc/sjis.c: move to enc/shift_jis.c, to make encoding name equal to
4845           filename for convenience of loading lib.
4847         * enc/shift_jis.c: moved from enc/sjis.c.
4849         * common.mk: follows enc/shift_jis.c.
4851         * enc/Makefile.in: ditto.
4853 Sun Jan 13 09:22:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4855         * common.mk (incs): includes encdb.h.
4857 Sun Jan 13 09:17:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4859         * {bcc,win}32/Makefile.sub (MV): use move instead of ren.  [ruby-Bugs-17019]
4861 Sun Jan 13 01:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4863         * enc/make_encdb.rb: should work on Ruby 1.8.  [ruby-dev:33069]
4865         * common.mk (encdb.h): pass enc dir from outside to make_encdb.rb.
4867 Sun Jan 13 00:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4869         * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
4871         * regenc.h (ENC_REPLICATE, ENC_ALIAS): added for defining replica
4872           encoding and encoding alias.
4874         * encoding.c (rb_enc_init): move alias definitions to enc/*.c.
4875           (rb_enc_find_index): search original of replica and alias when no
4876           encoding library.
4877           (rb_enc_name_list, rb_enc_aliases_enc_i, rb_enc_aliases_str_i,
4878            rb_enc_aliases, Encoding.name_list, Encoding.aliases): added.
4879           (Init_Encoding): init encdb.
4881         * enc/ascii.c, enc/us_ascii.c, enc/euc_jp.c, enc/sjis.c:
4882           add replica encoding and encoding alias definition.
4884         * common.mk (dist-clean-local): add rule for remove encdb.h.
4886 Sat Jan 12 18:27:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4888         * eval.c (rb_define_alloc_func, rb_undef_alloc_func): should
4889           define/undef on a singleton class.  [ruby-core:09959]
4891 Sat Jan 12 12:44:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4893         * ext/nkf/nkf.c: rdoc update.
4895 Sat Jan 12 12:01:49 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4897         * lib/date.rb, lib/date/format.rb: tuning for performance.
4899 Sat Jan 12 11:29:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4901         * bootstraptest/test_proc.rb: fixed wrong expected result.  pointed
4902           out by Kornelius "murphy" Kalnbach <murphy AT rubychan.de> in
4903           [ruby-core:15022].
4905 Sat Jan 12 04:38:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4907         * ruby.c (process_options): -e'script' is locale encoding by default.
4908           (load_file): ruby script from stdin is locale encoding by default.
4910 Sat Jan 12 04:31:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4912         * ext/nkf/nkf-utf8/nkf.c: fix bug: -m was -m0.
4914 Fri Jan 11 23:22:31 2008  Tanaka Akira  <akr@fsij.org>
4916         * string.c (string.c): call rb_str_buf_append to update encoding of
4917           str1, even if str2 is empty.
4919 Fri Jan 11 20:20:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4921         * proc.c (proc_mark): needs to mark the receiver too.  a patch from
4922           Chris Heath <chris AT heathens.co.nz> in [ruby-core:14983].
4923           [ruby-core:14885]
4925 Fri Jan 11 18:28:49 2008  Eric Hodel  <drbrain@segment7.net>
4927         * lib/rdoc/usage.rb: Removed.
4929         * lib/getoptlong.rb: Update example to not use lib/rdoc/usage.rb.
4931 Fri Jan 11 18:17:10 2008  Eric Hodel  <drbrain@segment7.net>
4933         * lib/rdoc/ri/driver.rb (read_yaml): Follow namespace change
4934           [ruby-core:14964].
4936 Fri Jan 11 16:55:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4938         * string.c (rb_str_append): performance improvement.
4940 Fri Jan 11 12:35:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4942         * configure.in: moved broken syscall checks from process.c etc.
4944         * defines.h (WORDS_BIGENDIAN): honor __BIG_ENDIAN__ than the result of
4945           configure.
4947         * lib/rdoc/options.rb (check_diagram): more precise check, darwin
4948           is not Windows but mingw is on it.
4950 Fri Jan 11 09:59:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4952         * ext/nkf/nkf-utf8/nkf.c: update to r1.163.
4954         * ext/nkf/nkf.c: ASCII's canonical name is US-ASCII.
4956         * ext/nkf/lib/kconv.rb (Kconv.isjis): force_encoding('BINARY').
4958 Fri Jan 11 09:23:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4960         * encoding.c (set_base_encoding): must use rb_enc_dummy_p.
4962 Fri Jan 11 06:13:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4964         * encoding.c (rb_to_encoding_index, rb_to_encoding): disallow nil.
4965           [ruby-dev:33003]
4967 Fri Jan 11 01:08:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4969         * thread.c (rb_mutex_unlock): proper error message for unlocking
4970           mutex that is not locked.  a patch from Yusuke ENDOH
4971           <mame at tsg.ne.jp> in [ruby-dev:33010].
4973 Thu Jan 10 18:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4975         * prelude.rb (Mutex::synchronize): capture exception from unlock.
4976           [ruby-dev:32935]
4978 Thu Jan 10 10:15:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4980         * io.c (io_encoding_set): IO.pipe("euc-jp", nil) should work as
4981           IO.pipe("euc-jp", nil).  [ruby-dev:33000]
4983         * io.c (io_encoding_set): handle nil for v1.
4985 Thu Jan 10 02:41:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4987         * io.c (rb_io_binmode): should not alter encoding.  [ruby-dev:32918]
4989         * io.c (io_read_encoding): need not to return ASCII-8BIT for
4990           binary IO.
4992 Wed Jan  9 22:04:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4994         * lib/mathn.rb (Prime#each): returns an enumerator if no block
4995           given. [ruby-dev:32815]
4997 Wed Jan  9 22:03:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4999         * encoding.c (rb_enc_replicate): replica of dummy is a dummy.
5001 Wed Jan  9 20:55:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5003         * lib/e2mmap.rb (Exception2MessageMapper::Raise): define fail.
5004           [ruby-dev:32854]
5006 Wed Jan  9 20:35:42 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5008         * lib/webrick/httprequest.rb: support X-Forwarded-* header fields.
5009           WEBrick::HTTPRequest#{host,port,request_uri} is derived having
5010           regards to X-Forwarded-Proto and X-Forwarded-Host.
5012         * lib/webrick/httprequest.rb
5013           (WEBrick::HTTPRequest#server_name?): new method.
5014           (WEBrick::HTTPRequest#remote_ip?): new method.
5015           (WEBrick::HTTPRequest#ssl?): new method.
5017 Wed Jan  9 18:24:39 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
5019         * golf_prelude.rb (Array#to_s): alias to join.
5021         * golf_prelude.rb (FalseClass#to_s): return "".
5023 Wed Jan  9 16:59:54 2008  Tanaka Akira  <akr@fsij.org>
5025         * string.c (rb_enc_cr_str_buf_cat): fix self appending.
5027 Wed Jan  9 15:54:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5029         * ruby.c (process_options): give priority command line encoding option
5030           to RUBYOPT, and enable -E option in RUBYOPT.
5032         * ruby.c (load_file): deal with encoding option in shebang line if
5033           nothing in command line and RUBYOPT.
5035 Wed Jan  9 14:55:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5037         * parse.y (yycompile0): remove setting parser->enc because it is set
5038           in parser_prepare() by previous change of parser_prepare().
5040 Wed Jan  9 14:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5042         * string.c (rb_enc_cr_str_buf_cat, rb_str_buf_append): deal with self
5043           appending.
5045 Wed Jan  9 14:44:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5047         * parse.y (parser_prepare): set parser->enc from lex_input for ripper.
5049 Wed Jan  9 13:45:52 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5051         * lib/webrick/server.rb (WEBrick::HTTPServer#start):
5052           :DoNotReverseLookup option had not been performed.
5054 Wed Jan  9 13:03:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5056         * string.c (rb_enc_cr_str_buf_cat): do not recalculate coderange
5057           value if it's given from outside.
5059 Wed Jan  9 08:42:01 2008  James Edward Gray II  <jeg2@ruby-lang.org>
5061         * enum.c:  Updating the documentation of Enumerable#zip to reflect
5062           the recent changes Matz made to the method.
5064 Wed Jan  9 01:35:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5066         * enc/Makefile.in (BUILTIN_ENCS): UTF-{16,32}{BE,LE} are not builtin.
5068 Tue Jan  8 23:55:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5070         * encoding.c (rb_enc_init): UTF-{16,32}{BE,LE} are not builtin.
5072 Tue Jan  8 22:33:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5074         * encoding.c, Makefile.in, include/ruby/oniguruma.h,
5075           enc/Makefile.in: fix rules for UTF-{16,32}{BE,LE}.
5077 Tue Jan  8 20:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5079         * win{32,ce}/Makefile.sub: merged.
5081 Tue Jan  8 19:48:15 2008  Eric Hodel  <drbrain@segment7.net>
5083         * lib/rdoc/ri/driver.rb: Speed up Marshal.load. Fix bug with nested
5084           classes' methods.
5086 Tue Jan  8 19:17:29 2008  Eric Hodel  <drbrain@segment7.net>
5088         * lib/rdoc/*: Clean up namespacing of RI's classes.
5090 Tue Jan  8 18:05:35 2008  Eric Hodel  <drbrain@segment7.net>
5092         * bin/ri, lib/rdoc/ri/*: Replace with Ryan Davis' cached ri.
5094 Tue Jan  8 17:32:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5096         * enum.c (enum_zip): honor length of the receiver, not the
5097           shortest length.  [ruby-core:14738]
5099         * enum.c (enum_zip): returns array not enumerator for no block
5100           form.  [ruby-core:14738]
5102         * enumerator.c (next_ii): do not ignore multiple values yielded.
5104         * array.c (rb_ary_zip): faster version without creating generators.
5106 Tue Jan  8 15:47:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5108         * enc/utf{16,32}_{be,le}.c: use &OnigEncodingName(*) instead of
5109           ONIG_ENCODING_*.
5111 Tue Jan  8 15:40:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5113         * regenc.c (onigenc_strlen_null, onigenc_str_bytelen_null): suppressed
5114           warnings.
5116         * regenc.h, enc/unicode.c (onigenc_unicode_ctype_code_range): added
5117           encoding argument.
5119         * enc/utf{16,32}_{be,le}.c: added init functions.
5121         * enc/utf{16,32}_{be,le}.c: imported from Oniguruma 5.9.1.
5123 Tue Jan  8 15:03:10 2008  Tanaka Akira  <akr@fsij.org>
5125         * string.c (str_gsub): avoid appending empty pre-match substr.
5127 Tue Jan  8 13:05:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5129         * compile.c (iseq_build_from_ary), iseq.c (iseq_load): fix for format change.
5131 Tue Jan  8 07:56:11 2008  Tanaka Akira  <akr@fsij.org>
5133         * string.c (rb_str_buf_append): fix append itself.
5135 Tue Jan  8 01:13:50 2008  Tanaka Akira  <akr@fsij.org>
5137         * string.c (STR_ENC_GET): defined.  same as rb_enc_get without
5138           enc_capable.
5139           (coderange_scan): ASCII-8BIT test refined.
5140           (rb_enc_cr_str_buf_cat): new internal function to accumulate
5141           strings with encoding.
5142           (rb_enc_str_buf_cat): use rb_enc_cr_str_buf_cat.
5143           (rb_str_buf_append): ditto
5144           (str_gsub): use rb_str_buf_append.
5145           (rb_str_hash): use ENCODING_GET.
5146           (rb_str_comparable): ditto.
5147           (rb_str_cmp): compare encoding index, not rb_encoding address.
5149 Mon Jan  7 20:37:55 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5151         * lib/webrick/httpservlet/cgihandler.rb: external encoding of
5152           tempfiles is set to "ASCII-8BIT".
5154 Mon Jan  7 19:39:50 2008  Eric Hodel  <drbrain@segment7.net>
5156         * lib/rdoc/template.rb:  Use ERB instead of custom template language.
5158         * lib/rdoc/generators/template/html/old_html.rb:  Remove.
5160         * lib/rdoc/generators/template/*: Convert to ERB.
5162 Mon Jan  7 19:11:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5164         * string.c (Init_String): sym_match arity spec was wrong.  a patch
5165           from Hiroyuki Iwatsuki <don at na.rim.or.jp> in [ruby-dev:32957].
5167 Mon Jan  7 18:10:33 2008  Tanaka Akira  <akr@fsij.org>
5169         * string.c (str_gsub): move rb_enc_get(str) to out of loop.
5171 Mon Jan  7 15:52:10 2008  Tanaka Akira  <akr@fsij.org>
5173         * include/ruby/oniguruma.h (OnigEncodingType): new member
5174           ruby_encoding_index to avoid linear search in rb_enc_to_index.
5176         * include/ruby/encoding.h (rb_enc_to_index): macro defined to use
5177           ruby_encoding_index.
5179         * encoding.c (rb_enc_to_index): removed.
5180           (enc_register_at): initialize ruby_encoding_index member.
5182 Mon Jan  7 16:10:35 2008  Eric Hodel  <drbrain@segment7.net>
5184         * lib/rdoc/tokenstream.rb:  Namespace under RDoc.
5186 Mon Jan  7 16:06:09 2008  Eric Hodel  <drbrain@segment7.net>
5188         * lib/rdoc/dot.rb:  Namespace under RDoc.
5190         * lib/rdoc/diagram.rb:  Clean up formatting.
5192 Mon Jan  7 15:51:35 2008  Eric Hodel  <drbrain@segment7.net>
5194         * lib/rdoc/options.rb:  Convert to OptionParser, clean up -h output,
5195           namespace under RDoc.
5196         * lib/rdoc/*:  Namespace RDoc::Options.
5198 Mon Jan  7 15:42:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5200         * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
5201           removing rule of ext/ripper/y.output from common.mk to Makefiles
5202           that depend on platforms.
5204 Mon Jan  7 13:54:57 2008  Tanaka Akira  <akr@fsij.org>
5206         * re.c (rb_reg_preprocess): fix fixed_enc condition.
5208 Mon Jan  7 11:51:49 2008  Eric Hodel  <drbrain@segment7.net>
5210         * lib/rdoc/generators/ri_generator.rb:  Merge documentation from the
5211           same class on output.  Fixes bug where documentation could
5212           disappear.
5214         * lib/rdoc/options.rb:  Fix typo.
5216         * lib/rdoc/generators/*: Clean up some namespacing and make RDoc
5217           consistent.
5219 Mon Jan  7 11:44:45 2008  Tanaka Akira  <akr@fsij.org>
5221         * encoding.c (rb_enc_internal_get_index): extracted from
5222           rb_enc_get_index.
5223           (rb_enc_internal_set_index): extracted from rb_enc_associate_index
5225         * include/ruby/encoding.h (ENCODING_SET): work over ENCODING_INLINE_MAX.
5226           (ENCODING_GET): ditto.
5227           (ENCODING_IS_ASCII8BIT): defined.
5228           (ENCODING_CODERANGE_SET): defined.
5230         * re.c (rb_reg_fixed_encoding_p): use ENCODING_IS_ASCII8BIT.
5232         * string.c (rb_enc_str_buf_cat): use ENCODING_IS_ASCII8BIT.
5234         * parse.y (reg_fragment_setenc_gen): use ENCODING_IS_ASCII8BIT.
5236         * marshal.c (has_ivars): use ENCODING_IS_ASCII8BIT.
5238 Mon Jan  7 02:14:07 2008  Tanaka Akira  <akr@fsij.org>
5240         * string.c (coderange_scan): avoid rb_enc_to_index.
5241           (rb_enc_str_buf_cat): ditto.
5242           (str_cat_char): use rb_enc_str_buf_cat.
5243           (rb_str_inspect): ditto.
5245 Mon Jan  7 01:36:49 2008  Tanaka Akira  <akr@fsij.org>
5247         * string.c (coderange_scan): optimize ASCII-8BIT string.
5248           (rb_enc_str_buf_cat): don't call coderange_scan if possible.
5250 Mon Jan  7 01:05:45 2008  Tanaka Akira  <akr@fsij.org>
5252         * lib/erb.rb (ERB::Revision): cut off locale dependent string in Date
5253           keyword.
5255 Mon Jan  7 00:48:02 2008  Tanaka Akira  <akr@fsij.org>
5257         * Date keyword removed to avoid inclusion of locale dependent
5258           string.  [ruby-dev:32940]
5260 Sun Jan  6 21:14:12 2008  Tanaka Akira  <akr@fsij.org>
5262         * re.c (rb_reg_initialize_str): forbid raw non ASCII character
5263           for ASCII-8BIT regexp in non ASCII-8BIT script.
5265 Sun Jan  6 18:19:12 2008  Tanaka Akira  <akr@fsij.org>
5267         * include/ruby/encoding.h (rb_enc_str_buf_cat): declared.
5269         * string.c (coderange_scan): extracted from rb_enc_str_coderange.
5270           (rb_enc_str_coderange): use coderange_scan.
5271           (rb_str_shared_replace): copy encoding and coderange.
5272           (rb_enc_str_buf_cat): new function for linear complexity string
5273           accumulation with encoding.
5274           (rb_str_sub_bang): don't conflict substituted part and replacement.
5275           (str_gsub): use rb_enc_str_buf_cat.
5276           (rb_str_clear): clear coderange.
5278         * re.c (rb_reg_regsub): use rb_enc_str_buf_cat.
5280 Sun Jan  6 17:55:44 2008  Technorama Ltd.  <oss-ruby@technorama.net>
5282         * lib/securerandom.rb: Add Win32 support.
5284 Sun Jan  6 09:32:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
5286         * lib/date.rb, lib/date/format.rb: introduced some constants
5287           (for internal use) and aliases (minute and second).
5289         * sample/cal.rb: trivial adjustments.
5291 Sun Jan  6 01:38:07 2008  Tanaka Akira  <akr@fsij.org>
5293         * re.c (rb_reg_initialize_str): /\x80/n is not an error even if script
5294           encoding is EUC-JP.
5296 Sun Jan  6 00:48:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5298         * lib/resolv.rb (Resolv::DNS#each_address): get A record and then AAAA
5299           record. [ruby-dev:32925]
5301 Sat Jan  5 21:48:03 2008  Tanaka Akira  <akr@fsij.org>
5303         * vm_insnhelper.c (vm_callee_setup_arg): it is not inlinable because
5304           alloca is used.
5306 Sat Jan  5 16:50:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5308         * string.c (rb_str_resize): copy if old data is not empty
5309           [ruby-core:14785]
5311 Sat Jan  5 13:04:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5313         * ruby.c (proc_options): no need for intermediate object.
5315 Sat Jan  5 11:48:19 2008  Tanaka Akira  <akr@fsij.org>
5317         * encoding.c (Init_Encoding): alias csWindows31J to Windows-31J.
5318           IE6 accepts csWindows31J but Windows-31J.
5320 Sat Jan  5 02:21:10 2008  Tanaka Akira  <akr@fsij.org>
5322         * include/ruby/ruby.h (rb_intern): memorize interned ID for constant
5323           string, using gcc's __builtin_constant_p and statement expression.
5325 Sat Jan  5 02:14:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5327         * string.c (trnext): should enable backslash escape.
5329 Sat Jan  5 01:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5331         * eval.c (Init_eval): move instance_eval and instance_exec to
5332           BasicObject.  [ruby-core:14747]
5334         * lib/delegate.rb: should preserve new methods in BasicObject.
5336 Sat Jan  5 01:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5338         * ruby.c (proc_options): update according to the last API revert.
5340 Sat Jan  5 01:30:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5342         * include/ruby/intern.h, re.c (rb_reg_new): keep interface same as
5343           1.8.  [ruby-core:14583]
5345         * include/ruby/intern.h, re.c (rb_reg_new_str): renamed, and defines
5346           HAVE_RB_REG_NEW_STR macro to tell if it is available.
5348         * include/ruby/encoding.h (rb_enc_reg_new): added.
5350         * insns.def (toregexp), marshal.c (r_object0): use rb_reg_new_str().
5352         * re.c (rb_reg_regcomp, rb_reg_s_union): ditto.
5354 Fri Jan  4 23:08:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5356         * time.c (time_arg): use converted object.  [ruby-core:14759]
5358 Fri Jan  4 16:24:58 2008  Tanaka Akira  <akr@fsij.org>
5360         * ext/digest/lib/digest/hmac.rb (Digest::HMAC#initialize): use
5361           String#bytesize to avoid test errors on EUC-JP environment.
5363 Fri Jan  4 14:00:50 2008  Tanaka Akira  <akr@fsij.org>
5365         * re.c (rb_reg_prepare_re): check string encoding.  Oniguruma doesn't
5366           support invalid encoding.
5368 Fri Jan  4 10:22:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5370         * re.c (rb_reg_search): avoid inner loop for reverse search.
5372         * regexec.c: unset USE_MATCH_RANGE_MUST_BE_INSIDE_OF_SPECIFIED_RANGE
5373           which is turned on since oniguruma 5.9.1.
5375 Fri Jan  4 02:53:31 2008  Tanaka Akira  <akr@fsij.org>
5377         * enc/euc_jp.c: remove eucjp_ prefix.  breakpoint can be specified as
5378           euc_jp.c:mbc_enc_len.  avoid needless conflict by merge.
5380         * enc/sjis.c: remove sjis_ prefix.
5382         * enc/utf8.c: remove utf8_ prefix.
5384         * enc/iso_8859_1.c: remove iso_8859_1_ prefix.
5386         * enc/iso_8859_2.c: remove iso_8859_2_ prefix.
5388         * enc/iso_8859_3.c: remove iso_8859_3_ prefix.
5390         * enc/iso_8859_4.c: remove iso_8859_4_ prefix.
5392         * enc/iso_8859_5.c: remove iso_8859_5_ prefix.
5394         * enc/iso_8859_6.c: remove iso_8859_6_ prefix.
5396         * enc/iso_8859_7.c: remove iso_8859_7_ prefix.
5398         * enc/iso_8859_8.c: remove iso_8859_8_ prefix.
5400         * enc/iso_8859_9.c: remove iso_8859_9_ prefix.
5402         * enc/iso_8859_10.c: remove iso_8859_10_ prefix.
5404         * enc/iso_8859_11.c: remove iso_8859_11_ prefix.
5406         * enc/iso_8859_13.c: remove iso_8859_13_ prefix.
5408         * enc/iso_8859_14.c: remove iso_8859_14_ prefix.
5410         * enc/iso_8859_15.c: remove iso_8859_15_ prefix.
5412         * enc/iso_8859_16.c: remove iso_8859_16_ prefix.
5414 Fri Jan  4 02:47:06 2008  Tanaka Akira  <akr@fsij.org>
5416         * re.c (rb_reg_search): iterate onig_match for reverse mode.
5418 Fri Jan  4 01:20:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5420         * win32.h: only VC6 needs extern "C++" for math.h.  [ruby-talk:285660]
5422 Fri Jan  4 00:54:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5424         * include/ruby/oniguruma.h: Oniguruma 5.9.1 merged.
5426 Fri Jan  4 00:20:47 2008  Tanaka Akira  <akr@fsij.org>
5428         * io.c (io_ungetc): move data in buffer if it is required to store the
5429           argument.
5431 Thu Jan  3 21:56:07 2008  Tanaka Akira  <akr@fsij.org>
5433         * include/ruby/ruby.h (st_strcasecmp): declared for STRCASECMP.
5434           (st_strncasecmp): declared for STRNCASECMP.
5436 Thu Jan  3 20:24:48 2008  Koichi Sasada  <ko1@atdot.net>
5438         * eval_jump.c (rb_f_catch): Restore cfp if catched thrown object.
5440 Thu Jan  3 19:45:57 2008  Koichi Sasada  <ko1@atdot.net>
5442         * bootstraptest/test_eval.rb, test_knownbug.rb: move a fixed test.
5444 Thu Jan  3 18:39:12 2008  Tanaka Akira  <akr@fsij.org>
5446         * encoding.c: (rb_tolower, rb_toupper): body was exchanged.
5448 Thu Jan  3 17:54:01 2008  Tanaka Akira  <akr@fsij.org>
5450         * regenc.h (onigenc_ascii_is_code_ctype): put back.
5452 Thu Jan  3 17:33:09 2008  Tanaka Akira  <akr@fsij.org>
5454         * encoding.c (rb_isalnum): defined.
5455           (rb_isalpha): ditto.
5456           (rb_isblank): ditto.
5457           (rb_iscntrl): ditto.
5458           (rb_isdigit): ditto.
5459           (rb_isgraph): ditto.
5460           (rb_islower): ditto.
5461           (rb_isprint): ditto.
5462           (rb_ispunct): ditto.
5463           (rb_isspace): ditto.
5464           (rb_isupper): ditto.
5465           (rb_isxdigit): ditto.
5466           (rb_tolower): ditto.
5467           (rb_toupper): ditto.
5469         * include/ruby/ruby.h: don't include include/ruby/encoding.h.
5470           (rb_isascii): defined.
5471           (rb_isalnum): declared.
5472           (rb_isalpha): ditto.
5473           (rb_isblank): ditto.
5474           (rb_iscntrl): ditto.
5475           (rb_isdigit): ditto.
5476           (rb_isgraph): ditto.
5477           (rb_islower): ditto.
5478           (rb_isprint): ditto.
5479           (rb_ispunct): ditto.
5480           (rb_isspace): ditto.
5481           (rb_isupper): ditto.
5482           (rb_isxdigit): ditto.
5483           (rb_tolower): ditto.
5484           (rb_toupper): ditto.
5485           (ISASCII): simplified.
5486           (ISPRINT): ditto.
5487           (ISSPACE): ditto.
5488           (ISUPPER): ditto.
5489           (ISLOWER): ditto.
5490           (ISALNUM): ditto.
5491           (ISALPHA): ditto.
5492           (ISDIGIT): ditto.
5493           (ISXDIGIT): ditto.
5494           (TOUPPER): ditto.
5495           (TOLOWER): ditto.
5497         * include/ruby/encoding.h (rb_isascii): removed.
5498           (rb_isalnum): ditto.
5499           (rb_isalpha): ditto.
5500           (rb_isblank): ditto.
5501           (rb_iscntrl): ditto.
5502           (rb_isdigit): ditto.
5503           (rb_isgraph): ditto.
5504           (rb_islower): ditto.
5505           (rb_isprint): ditto.
5506           (rb_ispunct): ditto.
5507           (rb_isspace): ditto.
5508           (rb_isupper): ditto.
5509           (rb_isxdigit): ditto.
5510           (rb_tolower): ditto.
5511           (rb_toupper): ditto.
5513         * common.mk: dependency updated.
5515 Thu Jan  3 15:10:26 2008  Tanaka Akira  <akr@fsij.org>
5517         * include/ruby/encoding.h (rb_isascii): simplified.
5518           (rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
5519           (rb_isalpha): ditto.
5520           (rb_isblank): ditto.
5521           (rb_iscntrl): ditto.
5522           (rb_isdigit): ditto.
5523           (rb_isgraph): ditto.
5524           (rb_islower): ditto.
5525           (rb_isprint): ditto.
5526           (rb_ispunct): ditto.
5527           (rb_isspace): ditto.
5528           (rb_isupper): ditto.
5529           (rb_isxdigit): ditto.
5531         * include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
5532           moved from regenc.h.
5534 Thu Jan  3 14:37:17 2008  Tanaka Akira  <akr@fsij.org>
5536         * parse.y (parser_magic_comment): use STRNCASECMP.
5537           (set_file_encoding): ditto.
5539 Thu Jan  3 11:44:37 2008  Tanaka Akira  <akr@fsij.org>
5541         * time.c: don't mention an obsolete library, ParseDate.
5543 Thu Jan  3 11:28:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5545         * io.c (fptr_finalize): clear errno first.  [ruby-talk:284492]
5547 Thu Jan  3 05:02:36 2008  Tanaka Akira  <akr@fsij.org>
5549         * enc/us_ascii.c: add us_ascii_ prefix for functions to ease
5550           setting breakpoint when debugging.
5552         * enc/euc_jp.c: add eucjp_ prefix.
5554         * enc/sjis.c: add sjis_ prefix.
5556         * enc/iso_8859_1.c: add iso_8859_1_ prefix.
5558         * enc/iso_8859_2.c: add iso_8859_2_ prefix.
5560         * enc/iso_8859_3.c: add iso_8859_3_ prefix.
5562         * enc/iso_8859_4.c: add iso_8859_4_ prefix.
5564         * enc/iso_8859_5.c: add iso_8859_5_ prefix.
5566         * enc/iso_8859_6.c: add iso_8859_6_ prefix.
5568         * enc/iso_8859_7.c: add iso_8859_7_ prefix.
5570 Thu Jan  3 02:44:34 2008  Tanaka Akira  <akr@fsij.org>
5572         * bignum.c (conv_digit): use ISDIGIT, ISLOWER and ISUPPER.
5574 Wed Jan  2 23:50:15 2008  Tanaka Akira  <akr@fsij.org>
5576         * util.c (ruby_strtoul): "0x", "+" and "-" is not a valid integer.
5577           end of integer should be just after "0", the beginning, the
5578           beginning respectively.
5580 Wed Jan  2 15:23:15 2008  Tanaka Akira  <akr@fsij.org>
5582         * util.c (ruby_strtoul): locale independent strtoul is implemented to
5583           avoid "i".to_i(36) cause 0 under tr_TR locale on Debian GNU/Linux
5584           4.0 (Etch).
5585           This is newly implemented, not a copy of missing/strtoul.c.
5587         * include/ruby/ruby.h (ruby_strtoul): declared.
5588           (STRTOUL): defined to use ruby_strtoul.
5590         * bignum.c, pack.c, ext/socket/socket.c: use STRTOUL.
5592         * configure.in (strtoul): don't check.
5594         * missing/strtoul.c: removed.
5596         * include/ruby/missing.h (strtoul): removed.
5598         * common.mk (strtoul.o): removed.
5600         * LEGAL (missing/strtoul.c): removed.
5602 Wed Jan  2 14:41:08 2008  Tanaka Akira  <akr@fsij.org>
5604         * common.mk (strcasecmp.o): removed.
5605           (strncasecmp.o): removed.
5607         * include/ruby/missing.h (strcasecmp): removed.
5608           (strncasecmp): removed.
5610 Wed Jan  2 11:34:57 2008  Tanaka Akira  <akr@fsij.org>
5612         * missing/strcasecmp.c: removed.  Ruby don't use locale dependent
5613           strcasecmp.
5615         * missing/strncasecmp.c: ditto.
5617         * configure.in: don't check strcasecmp and strncasecmp.
5619         * LEGAL: missing/strcasecmp.c and missing/strncasecmp.c removed.
5621 Wed Jan  2 10:13:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
5623         * sample/time.rb: use Process.times instead of Time.times.
5625 Wed Jan  2 09:09:53 2008  Tadayoshi Funaba  <tadf@dotrb.org>
5627         * sample/goodfriday.rb: examples for date are enough.  retired.
5629 Wed Jan  2 08:58:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
5631         * sample/cal.rb: just updated with the newest version.
5633 Wed Jan  2 01:19:31 2008  Tanaka Akira  <akr@fsij.org>
5635         * enc/depend: dependency updated.
5637 Wed Jan  2 00:14:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5639         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: Update nkf.
5641         * ext/nkf/nkf.c: fix documents.
5643         * ext/nkf/lib/kconv.rb: fix documents.
5644           (Kconv.is*): use valid_encoding?.
5645           (Kconv.isjis): defined.
5647 Tue Jan  1 23:17:03 2008  Tanaka Akira  <akr@fsij.org>
5649         * common.mk: dependency updated.
5651 Tue Jan  1 21:11:33 2008  Tanaka Akira  <akr@fsij.org>
5653         * include/ruby/encoding.h (rb_isascii): defined.
5654           (rb_isalnum): ditto.
5655           (rb_isalpha): ditto.
5656           (rb_isblank): ditto.
5657           (rb_iscntrl): ditto.
5658           (rb_isdigit): ditto.
5659           (rb_isgraph): ditto.
5660           (rb_islower): ditto.
5661           (rb_isprint): ditto.
5662           (rb_ispunct): ditto.
5663           (rb_isspace): ditto.
5664           (rb_isupper): ditto.
5665           (rb_isxdigit): ditto.
5666           (rb_tolower): ditto.
5667           (rb_toupper): ditto.
5669         * include/ruby/st.h (st_strcasecmp): declared.
5670           (st_strncasecmp): ditto.
5672         * st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
5673           (st_strcasecmp): defined.
5674           (st_strncasecmp): ditto.
5676         * include/ruby/ruby.h: include include/ruby/encoding.h.
5677           (ISASCII): use rb_isascii.
5678           (ISPRINT): use rb_isprint.
5679           (ISSPACE): use rb_isspace.
5680           (ISUPPER): use rb_isupper.
5681           (ISLOWER): use rb_islower.
5682           (ISALNUM): use rb_isalnum.
5683           (ISALPHA): use rb_isalpha.
5684           (ISDIGIT): use rb_isdigit.
5685           (ISXDIGIT): use rb_isxdigit.
5686           (TOUPPER): defined.
5687           (TOLOWER): ditto.
5688           (STRCASECMP): ditto.
5689           (STRNCASECMP): ditto.
5691         * dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
5692           transcode.c, ext/readline/readline.c: use locale insensitive
5693           functions.  [ruby-core:14662]
5695 Tue Jan  1 17:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5697         * io.c (rb_io_mode_enc): encoding spec is not allowed in binary mode.
5698           [ruby-dev:32913]
5700 Tue Jan  1 14:41:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5702         * lib/rexml: 1.9 patch from Sam Ruby mentioned in his blog:
5703           <http://intertwingly.net/blog/2007/12/31/Porting-REXML-to-Ruby-1-9>
5704           [ruby-core:14639]
5706 Tue Jan  1 14:15:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5708         * string.c (rb_str_substr): offset movement bug.  a patch from
5709           Vincent Isambart <vincent.isambart at gmail.com> in
5710           [ruby-core:14647].  [ruby-core:14644]
5712 Tue Jan  1 01:29:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5714         * encoding.c (rb_to_encoding): raises for non-nil, non-encoding,
5715           non-string object.  [ruby-core:14634]
5717 Tue Jan  1 01:04:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5719         * ruby.c (process_options): rejects dummy encoding.
5721 Mon Dec 31 23:53:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5723         * ruby.c (proc_options, process_options): delays finding encoding
5724           until load_path is set.
5726 Mon Dec 31 23:27:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5728         * string.c (rb_str_resize): embeds if ptr is null.  [ruby-dev:32819]
5730 Mon Dec 31 23:17:22 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5732         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
5733           call do_XXX which correspond with request method.
5734           (WEBrick::HTTPProxyServer#do_CONNECT,do_GET,do_POST,do_HEAD): added.
5736         * test/webrick/test_httpproxy.rb: add test for WEBrick::HTTPProxyServer.
5738 Mon Dec 31 22:53:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
5740         * thread_pthread.c (native_sleep): timespec tv_sec may overflow on
5741           some platform.  a patch from zunda <zunda616e AT yahoo.co.jp> in
5742           [ruby-dev:32904].
5744 Mon Dec 31 19:35:20 2007  Tanaka Akira  <akr@fsij.org>
5746         * string.c (IS_7BIT): removed.
5747           (single_byte_optimizable): new function to test optimizationability
5748           using single byte string.
5749           (str_strlen): use single_byte_optimizable instead of
5750           is_ascii_string.
5751           (str_nth): rename argument: asc -> singlebyte.
5752           (str_offset): ditto.
5753           (rb_str_substr): use single_byte_optimizable instead of IS_7BIT.
5754           (rb_str_index): ditto.
5755           (rb_str_rindex): ditto.
5756           (rb_str_splice): ditto.
5757           (rb_str_justify): ditto.
5759 Mon Dec 31 07:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5761         * main.c, goruby.c (RUBY_MAIN_INIT): removed.
5763         * goruby.c (goruby_run_node): run after ruby_init_loadpath() so that
5764           require works, and protect the call.
5766 Mon Dec 31 06:50:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5768         * common.mk: not use -I$(srcdir)/lib with $(MINIRUBY) for cross
5769           compiling.
5771         * configure.in, {win,bcc}32/Makefile.sub (MINIRUBY): -I$(srcdir)/lib
5772           moved.
5774 Mon Dec 31 06:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5776         * include/ruby/encoding.h (rb_enc_sprintf, rb_enc_vsprintf): prototyped.
5778         * sprintf.c (rb_enc_sprintf, rb_enc_vsprintf): new functions to format
5779           arguments with encoding.
5781 Sun Dec 30 23:48:00 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5783         * golf_prelude.rb (String#/): define / as split, as association of
5784           Array#*.
5786 Sun Dec 30 23:19:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
5788         * golf_prelude.rb (@@golf_hash): for performance improvement.
5790 Sun Dec 30 22:44:50 2007  Tadayoshi Funaba  <tadf@dotrb.org>
5792         * lib/date.rb (_valid_time?): I'm not sure to recommend such an
5793           expression.  but anyway it is acceptable now.  [ruby-core:14580]
5795 Sun Dec 30 21:54:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5797         * parse.y (program, yycompile0): too early to drop lex_lastline in
5798           rules.
5800 Sun Dec 30 19:23:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5802         * bootstraptest/test_knownbug.rb: support DOSISH.
5804 Sun Dec 30 17:43:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5806         * encoding.c (Init_Encoding): registered rb_encoding differs from
5807           ONIG_ENCODINGs.
5809 Sun Dec 30 13:56:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5811         * parse.y (program): clear input strings after all process.
5813         * parse.y (parser_nextc, parser_yylex): should not drop lex_lastline
5814           while lex_p is valid.  [ruby-dev:32896]
5816 Sun Dec 30 10:54:49 2007  NARUSE, Yui  <naruse@ruby-lang.org>
5818         * configure.in: rm largefile.h.
5820         * common.mk: clean golf, conf*, preludes, and so on.
5822         * enc/depend: silent and ignore error for rm.
5824         * enc/Makefile.in: should define prefix and exec_prefix.
5826 Sun Dec 30 06:31:11 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5828         * encoding.c (Init_encoding): register Windows-31J and its alias.
5829           [ruby-dev:32843]
5831         * ruby.c (proc_options): -Ks options means Windows-31J, not Shift_JIS.
5833 Sun Dec 30 06:27:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5835         * lib/mkmf.rb (depend_rules): need to convert `/' to `\' for windows
5836           native commands.
5838 Sun Dec 30 01:43:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5840         * enc/Makefile.in (DLDFLAGS): like as extensions.  [ruby-core:14567]
5842 Sat Dec 29 23:48:13 2007  Tanaka Akira  <akr@fsij.org>
5844         * io.c (io_fflush): don't retry when wbuf modified by other threads.
5846 Sat Dec 29 22:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5848         * re.c (rb_reg_regsub): returns the given string itself if nothing
5849           changed.
5851         * string.c (rb_str_sub_bang): keeps code-range as possible.
5853         * string.c (str_gsub): adjusts code-range.  [ruby-core:14566]
5855 Sat Dec 29 21:54:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5857         * common.mk (clean, distclean, realclean): should include clean-enc
5858           and others.  [ruby-dev:32887]
5860 Sat Dec 29 13:29:29 2007  Tanaka Akira  <akr@fsij.org>
5862         * bootstraptest/test_knownbug.rb: add a test reported by
5863           Kazuhiro NISHIYAMA.  [ruby-dev:32819].
5864           add a test reported by Frederick Cheung.  [ruby-core:14556].
5866         * test/ruby/test_m17n.rb (test_gsub): add a test reported by
5867           Sam Ruby.  [ruby-core:14566]
5869 Sat Dec 29 04:46:58 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5871         * lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_throws):
5872           throw won't raise NameError nor ThreadError but ArgumentError on 1.9.
5873           (Test::Unit::Assertions#assert_not_throws): ditto.
5875         * test/testunit/test_assertions.rb: add assertions for throwing some
5876           objects other than Symbol.
5878 Sat Dec 29 03:10:12 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5880         * io.c (io_unread): fix typo.
5882 Sat Dec 29 02:18:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5884         * io.c (io_unread): adhoc workaround for non-binary mode of some DOSish
5885           platforms. this is not perfect and safety, but works with most cases.
5887 Fri Dec 28 23:53:18 2007  Tanaka Akira  <akr@fsij.org>
5889         * ext/strscan/strscan.c (str_new): new function for allocate an string
5890           with encoding propagation.
5891           (extract_range): use str_new.
5892           (extract_beg_len): ditto.
5893           (strscan_peek): ditto.
5894           (strscan_rest): ditto.
5896 Fri Dec 28 20:18:42 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
5898         * golf_prelude.rb (Object.say): derived from Perl 5.10.
5900 Fri Dec 28 19:39:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5902         * encoding.c (rb_locale_encoding): should check return value from
5903           rb_locale_charmap().
5905         * ruby.c (locale_encoding): removed.
5907         * ruby.c (process_options): use rb_locale_encoding() instead of
5908           locale_encoding().
5910         * ext/readline/readline.c (readline_readline): use locale encoding
5911           instead of input IO's encoding. [ruby-dev:32872]
5913 Fri Dec 28 19:29:07 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5915         * ext/readline/readline.c (readline_readline, readline_s_set_input):
5916           use mReadline directly because self is not always same.
5918 Fri Dec 28 19:11:28 2007  Tanaka Akira  <akr@fsij.org>
5920         * encoding.c (rb_locale_encoding): defined.
5922         * include/ruby/encoding.h (rb_locale_encoding): declared.
5924 Fri Dec 28 18:45:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5926         * ext/readline/readline.c (readline_readline): set encoding to result.
5928         * ext/readline/readline.c (readline_s_set_input, Init_readline): save
5929           input IO to hidden instance variable.
5931 Fri Dec 28 01:55:04 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
5933         * transcode.c (transcode_dispatch): reverted some of the changes
5934           in r14746.
5936         * transcode.c, enc/trans/single_byte.c: Added conversions to/from
5937           US-ASCII and ASCII-8BIT (using data tables).
5939         * enc/trans/single_byte.c: Some spacing/ordering changes due to
5940           automatic data file generation.
5942         * transcode_data.h, transcode.c: Preliminary code for using
5943           micro-conversion functions.
5945         * test/ruby/test_transcode.rb: Added some tests for US-ASCII and
5946           ASCII-8BIT conversions.
5948 Fri Dec 28 17:33:44 2007  Tanaka Akira  <akr@fsij.org>
5950         * time.c (make_time_t): verify mktime and timegm result.
5952 Fri Dec 28 16:36:33 2007  NARUSE, Yui  <naruse@airemix.com>
5954         * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
5956 Fri Dec 28 16:10:00 2007  Eric Hodel  <drbrain@segment7.net>
5958         * lib/rdoc/dot/dot.rb: Move to lib/rdoc/dot.rb. Fix namespacing.
5960         * lib/rdoc/diagram.rb: Update for 1.9.
5962 Fri Dec 28 15:38:29 2007  Eric Hodel  <drbrain@segment7.net>
5964         * lib/rdoc/markup/sample/: Move to sample/rdoc/markup directory.
5966 Fri Dec 28 15:15:12 2007  Akinori MUSHA  <knu@iDaemons.org>
5968         * lib/irb/completion.rb: Remove garbage ("X=1").
5970 Fri Dec 28 15:12:05 2007  Eric Hodel  <drbrain@segment7.net>
5972         * lib/rdoc, test/rdoc: Move RDoc tests out of lib/.
5974 Fri Dec 28 15:10:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5976         * encoding.c (set_base_encoding, enc_base_encoding): renamed
5977           based_encoding as base_encoding.
5979 Fri Dec 28 13:57:49 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
5981         * golf_prelude.rb (Integer#each): use alias simply.
5983 Fri Dec 28 13:45:21 2007  Akinori MUSHA  <knu@iDaemons.org>
5985         * golf_prelude.rb (Object.const_missing): No need to delegate to
5986           superclass.  Just raise a NameError when none matches.
5988 Fri Dec 28 13:18:47 2007  Kouhei Sutou  <kou@cozmixng.org>
5990         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.2 -> 0.2.3.
5992         * lib/rss/parser.rb, test/rss/test_parser.rb: supported "-" in tag name.
5993           Reported by Ray Chen. Thanks.
5995 Fri Dec 28 13:07:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5997         * gc.c (os_obj_of): returns an enumerator if no block given.  based on
5998           a patch from Yugui <yugui AT yugui.sakura.ne.jp>.  [ruby-dev:32828]
6000 Fri Dec 28 11:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6002         * tool/ytab.sed: skip yydestruct hack unless yymsg exists, for bison
6003           1.8 series.  [ruby-dev:32825]
6005 Fri Dec 28 11:39:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6007         * golf_prelude.rb (Object.quine): need to join because SCRIPT_LINES__[]
6008           returns an array of lines.
6010 Fri Dec 28 11:16:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6012         * golf_prelude.rb (Object.quine): get the script itself.
6014 Fri Dec 28 10:06:54 2007  Akinori MUSHA  <knu@iDaemons.org>
6016         * golf_prelude.rb (Object.const_missing): Auto-complete constants.
6018 Fri Dec 28 01:55:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6020         * transcode.c (transcode_dispatch): allows transcoding from/to
6021           ASCII-8BIT.
6023 Fri Dec 28 01:47:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6025         * golf_prelude.rb (Integer): Integer is now enumerable on goruby.
6027 Fri Dec 28 01:27:47 2007  Tanaka Akira  <akr@fsij.org>
6029         * lib/rdoc/rdoc.rb (parse_files): don't depend on the default external
6030           encoding.
6032 Fri Dec 28 00:01:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6034         * common.mk (golf_prelude.c): use MINIRUBY instead of BASERUBY because
6035           tool/compile_prelude.rb requires rbconfig.rb.
6037 Thu Dec 27 23:56:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6039         * mkconfig.rb: should not use the libraries under the source directory
6040           at cross compiling.
6042 Thu Dec 27 23:43:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6044         * cygwin/GNUmakefile.in (EXTOBJS): uses ruby.rc always for other than
6045           rubyw.exe.
6047 Thu Dec 27 22:31:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6049         * lib/rubygems/commands/update_command.rb (do_rubygems_update): use
6050           portable and safely ENV operation. reported in
6051           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
6053 Thu Dec 27 21:47:04 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6055         * mkconfig.rb (prefix): archdir is "1.9.0", not "1.9". reported in
6056           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
6058 Thu Dec 27 17:57:30 2007  Tanaka Akira  <akr@fsij.org>
6060         * parse.y, transcode_data.h, transcode.c, lib/weakref.rb,
6061           lib/irb/ruby-lex.rb, lib/irb/lc/error.rb, enc/trans/japanese.c:
6062           change "illegal" to "invalid" in a context which doesn't against
6063           a law.
6065 Thu Dec 27 16:37:06 2007  Tanaka Akira  <akr@fsij.org>
6067         * re.c (rb_reg_s_union): show encodings in error message.
6069 Thu Dec 27 15:25:16 2007  Tanaka Akira  <akr@fsij.org>
6071         * encoding.c (rb_enc_codelen): show codepoint in error message.
6073         * include/ruby/encoding.h (rb_enc_codelen): comment it returns
6074           positive integer.
6076         * string.c (rb_str_concat): rb_enc_codelen doesn't return 0.
6078 Thu Dec 27 15:18:44 2007  Tanaka Akira  <akr@fsij.org>
6080         * encoding.c (rb_enc_codelen): error message refined.
6082 Thu Dec 27 15:11:27 2007  Tanaka Akira  <akr@fsij.org>
6084         * encoding.c (rb_enc_check): show encodings in error message.
6086 Thu Dec 27 15:02:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6088         * string.c (rb_str_casecmp): fixed using a wrong variable.
6089           [ruby-list:44402]
6091 Thu Dec 27 14:34:38 2007  Tanaka Akira  <akr@fsij.org>
6093         * io.c (io_fflush): checks wbuf modification by other threads.
6094           not perfect.  it need locks.
6096 Thu Dec 27 10:44:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6098         * ext/socket/socket.c: a patch to support IRIX from Andrew
6099           Thompson <andrew@hijacked.us> in [ruby-core:14447].
6101 Thu Dec 27 02:25:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6103         * lib/mkmf.rb (create_tmpsrc): retry to create file if Errno::EACCES
6104           occurs. this is a workaround for mswin32.
6106 Wed Dec 26 22:47:31 2007  NARUSE, Yui <naruse@ruby-lang.org>
6108         * lib/resolv.rb (Resolv::DNS::Name.==): fix for other is array of
6109           Resolv::DNS::Label::Str.
6111         * lib/resolv.rb (Resolv::DNS::MessageEncoder#put_label): String#string
6112           is not defined, so replace to_s.
6114         * lib/resolv.rb (Resolv::IPv6#to_name): ip6.int is obsoleted by
6115           ip6.arpa.
6118 Wed Dec 26 21:27:02 2007  Tadayoshi Funaba  <tadf@dotrb.org>
6120         * lib/date/format.rb (_xmlschema): some improvements.
6122         * lib/date/format.rb (_parse): a new hint compfunc. [experimental]
6124 Wed Dec 26 17:31:08 2007  Tanaka Akira  <akr@fsij.org>
6126         * io.c (io_fflush): check closed fptr after rb_write_internal to avoid
6127           SEGV on MacOS X.
6129 Wed Dec 26 16:10:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6131         * string.c (Init_String): defines chars method.
6133 Wed Dec 26 14:38:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6135         * instruby.rb: install goruby if exists.
6137 Wed Dec 26 13:55:02 2007  James Edward Gray II  <jeg2@ruby-lang.org>
6139         * lib/csv.rb:  Cleaned up some code with Ruby 1.9 idioms.
6141 Wed Dec 26 13:29:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6143         * array.c (tmpbuf): use rb_str_tmp_new().
6145 Wed Dec 26 00:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6147         * ext/json/ext/generator/generator.c (Init_generator): requires
6148           json/common.rb for GeneratorError, when static linked.  a patch from
6149           Kenta Murata <muraken AT gmail.com> in [ruby-dev:32789].
6151 Tue Dec 25 23:33:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6153         * development version 1.9.0 released.
6155 Tue Dec 25 23:25:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6157         * lib/rexml/node.rb (REXML::Node::indent): should initialize rv
6158           variable.  a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
6159           [ruby-dev:32783].
6161 Tue Dec 25 23:16:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6163         * ruby.c (proc_options): encoding option in shebang and RUBYOPT did not
6164           work, do not store alloca()ed string in a parent scope struct.
6166 Tue Dec 25 22:56:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6168         * win32/Makefile.sub (config.status): keep this file.
6170 Tue Dec 25 22:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6172         * configure.in (TIMEZONE_VOID): typo.
6174 Tue Dec 25 22:45:10 2007  Koichi Sasada  <ko1@atdot.net>
6176         * insns2vm.rb: add encoding option to shebang.
6178 Tue Dec 25 22:13:51 2007  Koichi Sasada  <ko1@atdot.net>
6180         * bootstraptest/pending.rb: add pending issue.
6182 Tue Dec 25 22:12:40 2007  Koichi Sasada  <ko1@atdot.net>
6184         * thread.c: remove Thread.critical(=).
6186 Tue Dec 25 21:44:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6188         * tool/make-snapshot: add version number.
6190 Tue Dec 25 21:32:54 2007  Koichi Sasada  <ko1@atdot.net>
6192         * compile.c (iseq_compile_each): fix stack consistency error
6193           (break is compiled to throw instead of jump insn).
6194           these problems are reported by Yusuke ENDOH <mame AT tsg.ne.jp>
6196         * bootstraptest/test_knownbug.rb, test_syntax.rb: move fixed test.
6198 Tue Dec 25 21:32:44 2007  Tanaka Akira  <akr@fsij.org>
6200         * parse.y (struct parser_params): make parser_ruby_sourcefile common
6201           field.  it is used by node_newnode.
6202           new field parser_ruby_sourcefile_string for ripper.
6203           (parser_initialize): initialize parser_ruby_sourcefile in ripper.
6204           (ripper_initialize): initialize parser_ruby_sourcefile_string.
6206 Tue Dec 25 21:26:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6208         * common.mk (parse.c): depends on tool/ytab.sed.
6210         * tool/ytab.sed: hack for bison 2.1.
6212 Tue Dec 25 20:24:58 2007  Technorama Ltd.  <oss-ruby@technorama.net>
6214         * ext/openssl/ossl_ssl.c: Only show a warning if the default
6215           DH callback is actually used.
6217         * ext/openssl/ossl_rand.c: New method: random_add().
6219 Tue Dec 25 20:24:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6221         * tool/make-snapshot: argument check, and cleanup exported directory.
6223 Tue Dec 25 20:07:13 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
6225         * tool/make-snapshot: more portable.
6227 Tue Dec 25 19:01:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6229         * encoding.h (rb_enc_mbc_to_codepoint): wrapper for
6230           ONIGENC_MBC_TO_CODE().
6232         * string.c (rb_str_succ): deal with invalid sequence as binary.
6234 Tue Dec 25 18:40:46 2007  Koichi Sasada  <ko1@atdot.net>
6236         * iseq.c: all methods need $SAFE < 1.
6238          vm.c: comment out debug functions.
6240 Tue Dec 25 18:37:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6242         * io.c (appendline): move RS comparison to rb_io_getline_1().
6244 Tue Dec 25 18:27:51 2007  Tanaka Akira  <akr@fsij.org>
6246         * string.c (rb_str_each_line): don't call rb_enc_codepoint with empty
6247           string.
6249 Tue Dec 25 18:06:04 2007  Tanaka Akira  <akr@fsij.org>
6251         * string.c (rb_str_inspect): don't call rb_enc_codepoint with empty
6252           string.  fix '#'.inspect.
6254         * encoding.c (rb_enc_codepoint): raise on empty string.
6256 Tue Dec 25 17:48:28 2007  Shugo Maeda  <shugo@ruby-lang.org>
6258         * vm.c (rb_frame_method_id_and_class): new function to get the
6259           method id and class of the current frame.
6261 Tue Dec 25 17:32:04 2007  Akinori MUSHA  <knu@iDaemons.org>
6263         * lib/mkmf.rb (create_makefile): Add a missing dependency on the
6264           target directory for each .rb file.  This will hopefully fix
6265           parallel make (-jN).  Tested on FreeBSD.
6267 Tue Dec 25 16:51:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6269         * enc/trans/japanese.c (rb_{from,to}_{SHIFT_JIS,EUC_JP}): inversed
6270           from_encoding and to_encoding.
6272 Tue Dec 25 16:41:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6274         * golf_prelude.rb (h): add new method for all golfers.
6276 Tue Dec 25 16:37:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6278         * enc/trans/japanese.c (rb_to_EUC_JP): fixed typo.
6280 Tue Dec 25 16:34:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6282         * ext/dl/depend: add dependencies. [ruby-dev:32760]
6284 Tue Dec 25 16:26:48 2007  Koichi Sasada  <ko1@atdot.net>
6286         * include/ruby/ruby.h, thread.c: rename is_ruby_native_thread() to
6287           ruby_native_thread_p().
6289         * ext/tk/tcltklib.c: apply it.
6291 Tue Dec 25 16:15:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6293         * common.mk (clean-enc): clean encoding objects.
6295 Tue Dec 25 16:04:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6297         * common.mk, goruby.c, golf_prelude.rb: for golfers.
6299         * main.c (main): hook for embedding applications.
6301         * tool/compile_prelude.rb: can change initialize function name.
6303 Tue Dec 25 15:59:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6305         * encoding.c (rb_enc_register): do not use based_encoding to check if
6306           dummy encoding.
6308 Tue Dec 25 15:55:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6310         * string.c (rb_str_succ): fix for string with non-alphanumeric chars.
6312 Tue Dec 25 15:42:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6314         * io.c (rb_io_external_encoding): should return nil for
6315           pass-through write IO.  [ruby-dev:32740]
6317 Tue Dec 25 15:24:57 2007  Tanaka Akira  <akr@fsij.org>
6319         * io.c (appendline): initialize rslen to 1 if rsptr is 0.
6320           rslen is the length of the delimiter.
6321           if only delim is given, it should be 1.
6322           [ruby-dev:32746]
6324 Tue Dec 25 15:21:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6326         * transcode.c (transcode_dispatch): fix for multistep transcode.
6328 Tue Dec 25 15:07:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6330         * enc/trans/single_byte.c (Init_single_byte): renamed.
6332 Tue Dec 25 15:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6334         * enum.c (enum_yield): when multiple values yielded from #each
6335           pack them into an array.  [ruby-dev:32708]
6337         * enum.c: all method but all?, any?, one? and none? passed packed
6338           multiple values to the block.
6340         * enum.c (collect_all): should pack all values.  [ruby-core:14410]
6342 Tue Dec 25 14:57:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6344         * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans.
6346         * transcode_data.h (rb_transcoding, rb_transcoder): prefixed.
6348         * transcode.c (rb_register_transcoder, rb_declare_transcoder): split
6349           declaration and registration.  [ruby-dev:32704]
6351         * transcode.c (transcode_dispatch): autoload pre-declared transcoder.
6353         * transcode.c (str_transcode): use rb_define_dummy_encoding().
6355         * transcode.c (Init_transcode): initialize transcoder tables.
6357         * enc/trans/single_byte.c, enc/trans/japanese.c: moved from top.
6359 Tue Dec 25 14:20:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6361         * lib/mkmf.rb (map_dir): should generate path including $top_srcdir.
6363 Tue Dec 25 14:09:16 2007  James Edward Gray II  <jeg2@ruby-lang.org>
6365         * lib/csv.rb:  Fixed test failures caused by changes to Ruby.
6367         * test/csv/tc_serialization, test/csv/tc_csv_parsing, test/csv/tc_features:
6368           Fixed test failures caused by changes to Ruby.
6370 Tue Dec 25 14:11:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6372         * io.c (io_encoding_set): missing return type.
6374 Tue Dec 25 14:03:48 2007  NARUSE, Yui <naruse@ruby-lang.org>
6376         * test/rinda/test_rinda.rb (MockClock#{_forward, forward, sleep}):
6377           Change default value of n as @reso from nil.  If default value is
6378           nil, n.+ is not defined.
6380 Tue Dec 25 13:54:01 2007  Tanaka Akira  <akr@fsij.org>
6382         * test/ruby/test_io_m17n.rb (test_pipe): fixed.
6383           [ruby-dev:32743]
6385 Tue Dec 25 13:44:51 2007  Koichi Sasada  <ko1@atdot.net>
6387         * thread.c (rb_thread_wait_fd_rw): should check EBADF on select().
6389 Tue Dec 25 13:30:03 2007  Koichi Sasada  <ko1@atdot.net>
6391         * thread_pthread.c, thread_pthread.h, thread_win32.c,
6392           thread_win32.c: make some functions static functions.
6393           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
6394           in [ruby-core:14407]
6396 Tue Dec 25 13:23:13 2007  Tanaka Akira  <akr@fsij.org>
6398         * test/ruby/test_io_m17n.rb (test_write_noenc): don't mix text and
6399           binary mode.  [ruby-dev:32743]
6401 Tue Dec 25 13:13:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6403         * README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
6404           lex.c.blt, keywords, load.c, thread.c: more ANSI'ize.
6405           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
6406           in [ruby-dev:32725]
6408 Tue Dec 25 13:07:56 2007  Koichi Sasada  <ko1@atdot.net>
6410         * vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
6411           RUBY_VM_SET_TIMER_INTERRUPT(), RUBY_VM_INTERRUPTED().
6413         * thread.c, thread_pthread.c, thread_win32.c: fix to ignore time slice
6414           event until sleep.
6416         * bootstraptest/test_thread.rb: add a test for time limited join test.
6418 Tue Dec 25 12:42:59 2007  Koichi Sasada  <ko1@atdot.net>
6420         * vm.c (Init_VM): remove unused code.
6421           [ruby-dev:32732]
6423 Tue Dec 25 12:32:32 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
6425         * transcode.c: Moving a static counter from inside register_transcoder()
6426           and register_functional_transcoder() to outside the functions, renaming
6427           from n to next_transcoder_position. Fixes 3) in [ruby-dev:32715].
6429 Tue Dec 25 12:22:17 2007  NARUSE, Yui <naruse@ruby-lang.org>
6431         * sample/from.rb: follow Ruby 1.9 libraries.
6433 Tue Dec 25 12:21:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6435         * proc.c (method_inspect): preserve encoding of the method name.
6437 Tue Dec 25 12:07:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6439         * configure.in (BASERUBY): delayed error until BASERUBY is used.
6441 Tue Dec 25 11:48:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6443         * sample/README: removed obsoleted files: dbmtest.rb,
6444           getopts.test, mrshtest.rb, regx.rb.
6446 Tue Dec 25 11:45:34 2007  James Edward Gray II  <jeg2@ruby-lang.org>
6448         * lib/csv.rb:  Import the FasterCSV source as the new CSV class.
6450         * test/csv/*:  Added all applicable tests from FasterCSV.
6452 Tue Dec 25 11:33:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6454         * error.c (report_bug): uses ruby_description.
6456 Tue Dec 25 11:20:38 2007  Koichi Sasada  <ko1@atdot.net>
6458         * compile.c (iseq_compile_each): fix stack consistency error.
6459           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32720]
6461         * bootstraptest/test_syntax.rb: add 2 tests for above.
6463 Tue Dec 25 11:14:20 2007  Koichi Sasada  <ko1@atdot.net>
6465         * iseq.c, vm_core.h: comment out unused fields.
6467 Tue Dec 25 11:02:10 2007  Koichi Sasada  <ko1@atdot.net>
6469         * vm.c: check frame is FINAL when creating env.
6470           [ruby-core:14395]
6472         * bootstraptest/test_block.rb: add a test for above.
6474 Tue Dec 25 09:12:13 2007  Eric Hodel  <drbrain@segment7.net>
6476         * lib/rdoc/:  Enable RDoc debugging only with $DEBUG_RDOC.
6478 Tue Dec 25 08:37:43 2007  James Edward Gray II  <jeg2@ruby-lang.org>
6480         * lib/csv.rb, test/csv/test_csv.rb:  Removed in preparation for
6481           FasterCSV code import.
6483 Tue Dec 25 08:27:43 2007  Eric Hodel  <drbrain@segment7.net>
6485         * lib/rubygems.rb:  Fix test failures.
6487         * test/rubygems/test_gem.rb:  Fix test failure.
6489 Tue Dec 25 06:23:40 2007  Koichi Sasada  <ko1@atdot.net>
6491         * bootstraptest/test_knownbug.rb, test_literal.rb: move fixed test.
6493 Tue Dec 25 06:19:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
6495         * sample/biorhythm.rb: follow Ruby 1.9 libraries.
6497 Tue Dec 25 06:15:01 2007  Koichi Sasada  <ko1@atdot.net>
6499         * vm.c: add dummy toplevel frame.
6501 Tue Dec 25 05:44:56 2007  Eric Hodel  <drbrain@segment7.net>
6503         * lib/net/http.rb:  Fix uninitialized variable warning.
6504           [ruby-talk:284582]
6506         * lib/irb/output-method.rb:  Remove unused #foo method.
6507           [ruby-talk:284582]
6509 Tue Dec 25 05:24:12 2007  Koichi Sasada  <ko1@atdot.net>
6511         * compile.c (iseq_compile): clear local table if node == 0.
6512           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32530]
6514         * vm.c: clear VM stack.
6516 Tue Dec 25 04:23:32 2007  Tanaka Akira  <akr@fsij.org>
6518         * parse.y (rb_id2str): fill klass of returned string as rb_cString.
6519           some strings are allocated before rb_cString is created.
6520           This prevents a "called on terminated object" error by
6521           ObjectSpace.each_object(Module) {|m| p m.name }.
6523 Tue Dec 25 03:51:55 2007  Koichi Sasada  <ko1@atdot.net>
6525         * compile.c (iseq_compile_each): fix stack consistency bug.
6526           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
6528 Tue Dec 25 03:19:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
6530         * tool/make-snapshot: must create configure and lex.c.
6532 Tue Dec 25 03:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6534         * io.c (rb_io_s_pipe): now takes up to two arguments.  allow its
6535           external/internal encoding by Encoding objects.
6537         * io.c (rb_io_set_encoding): new method to set encoding of the IO.
6539         * io.c (argf_set_encoding): ditto.
6541 Tue Dec 25 03:08:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6543         * pack.c (pack_pack): use NUM2LONG instead of NUM2INT.
6545         * numeric.c (fix_lshift, fix_aref): use SIZEOF_LONG instead of
6546           SIZEOF_VALUE.
6548         * bignum.c (big2ulong, rb_big_aref): ditto.
6550 Tue Dec 25 02:55:26 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
6552         * lib/rexml/element.rb (REXML::Elements#each): yield in each
6553           should be called with one parameter. [ruby-dev:32708]
6555 Tue Dec 25 02:15:39 2007  Koichi Sasada  <ko1@atdot.net>
6557         * compile.c (iseq_compile_each): add a "pop" insn after break
6558           to fix stack consistency error.  [ruby-core:14385]
6560         * bootstraptest/test_syntax.rb: add tests for above.
6562         * bootstraptest/test_knownbug.rb: remove fixed bug.
6564 Tue Dec 25 01:54:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6566         * id.c (Init_id): remove several unused symbols. [ruby-core:14362]
6568         * compile.c (iseq_specialized_instruction): do not use
6569           VM_CALL_SEND_BANG flag any longer.
6571 Tue Dec 25 01:42:41 2007  Tanaka Akira  <akr@fsij.org>
6573         * lib/rdoc/rdoc.rb (parse_files): interpret coding cookie.
6575 Tue Dec 25 01:38:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6577         * proc.c (method_name): preserve Symbol's encoding.
6579         * numeric.c (fix_id2name): ditto.
6581 Tue Dec 25 01:19:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6583         * include/ruby/encoding.h (rb_enc_left_char_head): new utility macro.
6585         * include/ruby/encoding.h (rb_enc_right_char_head): ditto.
6587         * io.c (appendline): does multibyte RS search in the function.
6589         * io.c (prepare_getline_args): RS may be nil.
6591         * io.c (rb_io_getc): should process character based on external
6592           encoding, when transcoding required.
6594 Tue Dec 25 01:07:57 2007  Tanaka Akira  <akr@fsij.org>
6596         * lib/irb/output-method.rb: translate a comment to English to
6597           avoid mix of EUC-JP comment and UTF-8 Date keyword.
6598           svn substitute Date keyword with UTF-8 weekday on UTF-8 locale.
6600 Tue Dec 25 00:27:28 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
6602         * lib/webrick/httpservley/cgihandler.rb
6603           (WEBrick::HTTPServlet::CGIHandler#do_GET): m17nized.
6605 Mon Dec 24 23:55:29 2007  Tanaka Akira  <akr@fsij.org>
6607         * lib/cgi.rb (CGI::escape): m17nized.
6608           (CGI::unescape): ditto.
6609           (CGI::escapeHTML): ditto.
6610           (CGI::unescapeHTML): ditto.
6612 Mon Dec 24 23:32:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
6614         * transcode_data_japanese.c (select_iso_2022_mode): '\e' is not valid.
6616 Mon Dec 24 23:13:09 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
6618         * lib/rdoc/diagram.rb (RDoc::Diagram#initialize): use fileuitls
6619           instead of ftools.
6621 Mon Dec 24 23:04:57 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
6623         * lib/ftools.rb: removed obsoleted lib.  use fileutils instead (by eban).
6625         * lib/rdoc/rdoc.rb, lib/rdoc/generators/*, lib/rake.rb: let it use
6626           fileutils instead of ftools.
6628         * lib/shell/command-processor.rb: removed unused references to ftools.
6630         * lib/parsedate.rb: removed.  see [ruby-core:12535], [ruby-dev:31969].
6632         * lib/README: updated.
6634 Mon Dec 24 23:01:04 2007  Tanaka Akira  <akr@fsij.org>
6636         * lib/open-uri.rb (OpenURI::Buffer): use Meta ===.  [ruby-core:14295]
6638 Mon Dec 24 22:46:42 2007  NARUSE, Yui <naruse@ruby-lang.org>
6640         * transcode.c: register_functional_transcoder() added.
6641           (init_transcoder_table(: register ISO-2022-JP.
6642           (str_transcode): add preprocessor and postprocessor.
6644         * transcode_data_japanese.c: add ISO-2022-JP support.
6646         * transcode_data.h: moved transcoder and transcoding definition from
6647           transcode.c.
6649 Mon Dec 24 20:29:28 2007  Koichi Sasada  <ko1@atdot.net>
6651         * test/io/nonblock/test_flush.rb: fix test for 1.9.
6653 Mon Dec 24 20:23:44 2007  Koichi Sasada  <ko1@atdot.net>
6655         * test/rinda/test_rinda.rb: revert last commit because this test seems
6656           to have timing problem to halt all tests.
6658 Mon Dec 24 20:18:52 2007  Koichi Sasada  <ko1@atdot.net>
6660         * test/rinda/test_rinda.rb: enable rinda test.
6662 Mon Dec 24 20:16:54 2007  Koichi Sasada  <ko1@atdot.net>
6664         * instruby.rb: fix rdoc install dir.
6666 Mon Dec 24 18:37:32 2007  Tanaka Akira  <akr@fsij.org>
6668         * re.c (rb_reg_prepare_re): show regexp encoding in the error message.
6670 Mon Dec 24 18:23:32 2007  Tanaka Akira  <akr@fsij.org>
6672         * eval.c (rb_exc_raise): ANSI style.
6673           (rb_exc_fatal): ditto.
6674           (rb_raise_jump): ditto.
6675           (rb_jump_tag): ditto.
6676           (rb_block_given_p): ditto.
6678         * variable.c (original_module): ditto.
6680 Mon Dec 24 18:05:09 2007  Koichi Sasada  <ko1@atdot.net>
6682         * iseq.c (Init_ISeq): disable ISeq.load() because there is no verifier.
6684         * iseq.c, proc.c: add ISeq.disasm(method).
6686 Mon Dec 24 18:06:03 2007  Tanaka Akira  <akr@fsij.org>
6688         * eval_method.c (Init_eval_method): extracted from Init_eval
6689           for rdoc to find rb_mod_remove_method, rb_mod_undef_method and
6690           rb_mod_alias_method.
6692         * eval.c (Init_eval): call Init_eval_method.
6694 Mon Dec 24 17:59:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6696         * load.c (load_lock): reverted.
6698         * thread.c (rb_barrier_wait): check for recursive wait.
6700 Mon Dec 24 17:50:54 2007  Tanaka Akira  <akr@fsij.org>
6702         * eval.c (function_call_may_return_twice_jmp_buf): removed.
6703           (function_call_may_return_twice_false): removed.
6704           [ruby-core:14335]
6706 Mon Dec 24 17:40:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6708         * common.mk (node_name.inc, miniprelude.c, prelude.c): nmake cannot
6709           handle target vpath in other than implicit rules.
6711 Mon Dec 24 17:20:34 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
6713         * lib/{mailread.rb,getopts.rb,parsearg.rb}: removed.
6714           see [ruby-core:12535], [ruby-dev:31969].
6716 Mon Dec 24 17:12:57 2007  Tanaka Akira  <akr@fsij.org>
6718         * include/ruby/intern.h, random.c, array.c:
6719           change exported name.
6720           genrand_int32 -> rb_genrand_int32.
6721           genrand_real -> rb_genrand_real.
6722           [ruby-core:14335]
6724 Mon Dec 24 17:06:37 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
6726         * {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion
6727           at ruby-core and ruby-dev.  see [ruby-core:12535], [ruby-dev:31969].
6729 Mon Dec 24 17:06:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6731         * load.c (rb_feature_p): returns loading path name too.
6733         * load.c (search_required): returns path too if feature is being
6734           loaded.  [ruby-dev:32048]  [TODO: refactoring]
6736 Mon Dec 24 16:29:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
6738         * sample/openssl: reviewed and remove dependency on getopts.rb.
6740 Mon Dec 24 16:18:57 2007  Koichi Sasada  <ko1@atdot.net>
6742         * mkconfig.rb: add teeny to CONFIG['ruby_version'].
6744 Mon Dec 24 15:55:50 2007  Koichi Sasada  <ko1@atdot.net>
6746         * tool/compile.rb, getrev.rb, runruby.rb: remove unused tools.
6748 Mon Dec 24 15:42:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6750         * configure.in, cygwin/GNUmakefile.in, */Makefile.sub,
6751           djgpp/config.hin.: version dependent directory names now contain
6752           teeny.
6754 Mon Dec 24 15:29:13 2007  Tanaka Akira  <akr@fsij.org>
6756         * tool/serb.rb: removed.
6758 Mon Dec 24 13:55:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6760         * proc.c (rb_proc_new), vm.c (invoke_block): removed u3.state magic.
6761           [ruby-core:14310]
6763         * test/ruby/test_symbol.rb (test_to_proc): a test from Frederick
6764           Cheung <frederick.cheung AT gmail.com>.
6766 Mon Dec 24 13:43:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6768         * thread.c (rb_thread_atfork): should not leave living_threads
6769           referring freed table while allocating new table.
6771 Mon Dec 24 12:49:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6773         * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
6774           compiled output file name explicitly.
6776         * enc/Makefile.in, enc/depend: now makes compiler to put generated
6777           files under directories corresponding to the each source.
6778           enc/trans supported.
6780         * enc/make_encmake.rb: evaluates depend file before Makefile.in so
6781           that the former can influence to CONFIG.
6783 Mon Dec 24 12:35:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6785         * win{32,ce}/Makefile.sub (MFLAGS): defaulted to -l.
6787 Mon Dec 24 12:08:10 2007  Eric Hodel  <drbrain@segment7.net>
6789         * /, ext/:  Add svn:ignore for OS X Xcode 3's conftest.dSYM
6790           directories.
6792 Mon Dec 24 11:56:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6794         * common.mk: should not pass MAKEFLAGS to recursive make.
6795           + normal make: MFLAGS are set and command line options and macros
6796             are all passed silently.
6797           + GNU make: ditto, and all options and macros in MAKEFLAGS are in
6798             effect.
6799           + nmake: MFLAGS is not set and MAKEFLAGS has only options without
6800             hyphen, no macros exist in any variables.
6801           + Borland make: ditto, and command line macros cannot override
6802             macros in makefile, so passing them is vain.
6804         * {bcc32,win{32,ce}}/Makefile.sub (SET_MAKE): set MFLAGS which is not
6805           set by default, to get rid of chaotic situation of MFLAGS/MAKEFLAGS.
6807 Mon Dec 24 11:32:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6809         * string.c (rb_str_comparable): fixed to keep transitivity.
6810           [ruby-dev:32693]
6812 Mon Dec 24 11:20:31 2007  Eric Hodel  <drbrain@segment7.net>
6814         * lib/rdoc/ri/ri_options.rb:  Fix display of GEMDIRS, make command
6815           examples match ri's name.
6817         * lib/rdoc/ri/ri_paths.rb:  Only allow latest ri dirs in ri output.
6819 Mon Dec 24 10:49:04 2007  Eric Hodel  <drbrain@segment7.net>
6821         * lib/uri/mailto.rb, lib/uri/common.rb:  Fix Regexp warnings.  Patch
6822           #16524 from Kornelius Kalnbach, [ruby-core:14302].
6824 Mon Dec 24 10:37:38 2007  Eric Hodel  <drbrain@segment7.net>
6826         * gem_prelude.rb:  Remove methods from Gem, not QuickLoader, to fix
6827           warnings.
6829 Mon Dec 24 09:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
6831         * transcode.c, transcode_data_one_byte.c, transcode_data_japanese.c:
6832           added rb_ prefix to external data symbols.
6834 Mon Dec 24 05:32:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6836         * enum.c (enum_inject): updated documentation.  a patch from Keita
6837           Yamaguchi <keita.yamaguchi AT gmail.com> in [ruby-dev:32686].
6839         * README.EXT: updated.  a patch from Tadashi Saito
6840           <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14328].
6842         * array.c (rb_ary_at): updated documentation. a patch from Tadashi
6843           Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14330].
6845 Mon Dec 24 05:13:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6847         * string.c (tr_trans): should associate new encoding if modified.
6849 Mon Dec 24 04:04:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
6851         * test/net/http/test_https.rb: should rescue LoadError.
6853 Mon Dec 24 03:57:28 2007  Koichi Sasada  <ko1@atdot.net>
6855         * cont.c, vm.h: fix to support sparc machine.
6856           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
6858 Mon Dec 24 03:35:19 2007  Koichi Sasada  <ko1@atdot.net>
6860         * common.mk: remove additional "-".
6862 Mon Dec 24 02:59:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6864         * io.c (rb_io_check_readable): should not fill fptr->enc always.
6865           read-write IO (e.g. socket) does not work.  [ruby-dev:32685]
6867         * io.c (io_read_encoding): retrieve reading encoding.
6869         * io.c (prepare_getline_args): convert RS to external encoding.
6871         * string.c (str_new_shared): was setting embedding flag of wrong
6872           string object.  [ruby-dev:32685]
6874         * io.c (io_enc_str): should preserve default_external encoding.
6876         * io.c (appendline): should do multibyte aware RS search.
6878 Mon Dec 24 02:06:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6880         * io.c (rb_f_open): documentation update.
6882         * io.c (rb_io_s_pipe): ditto.
6884         * io.c (io_fwrite): wrong encoding destination.
6886         * io.c (rb_io_external_encoding): should return the encoding of
6887           the file reading.
6889         * io.c (rb_io_internal_encoding): should return the encoding of
6890           read string.
6892 Mon Dec 24 01:46:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6894         * io.c (rb_io_s_pipe): allow specifying read-side encoding.
6896         * io.c (io_enc_str): wrong encoding destination.
6898 Mon Dec 24 01:03:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6900         * string.c (rb_str_comparable): comparison including broken
6901           coderange strings do not consider encoding.
6903 Mon Dec 24 00:57:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6905         * io.c (open_key_args): IO direct methods (foreach, readlines,
6906           read) now takes keyword argument: encoding, mode, open_args.
6908 Mon Dec 24 00:52:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6910         * io.c (rb_io_s_read): encoding argument reverted.
6912         * io.c (mode_enc): independent function to share code.
6914         * io.c (rb_io_internal_encoding): new method.
6916 Mon Dec 24 00:47:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
6918         * test/ruby/test_beginendblock.rb (TestBeginEndBlock::test_endblockwarn):
6919           rename endblockwarn.rb to endblockwarn_rb to avoid unnecessary
6920           warning in make test.
6922 Sun Dec 23 23:03:13 2007  Tanaka Akira  <akr@fsij.org>
6924         * encoding.c (rb_enc_codepoint): implemented to raise invalid
6925           encoding.
6927         * include/ruby/encoding.h (rb_enc_codepoint): macro is replaced as a
6928           declaration.
6930 Sun Dec 23 19:45:22 2007  Tanaka Akira  <akr@fsij.org>
6932         * lib/time.rb (Time.httpdate): fix 2 digits year for 20xx.
6933           reported by Tadayoshi Funaba.  [ruby-dev:32687]
6935 Sun Dec 23 19:33:42 2007  Eric Hodel  <drbrain@segment7.net>
6937         * lib/open-uri.rb:  Fix method redefined warning.  [ruby-core:14304]
6939 Sun Dec 23 18:31:49 2007  NARUSE, Yui <naruse@ruby-lang.org>
6941         * ext/nkf/nkf.c (rb_nkf_enc_get): use rb_define_dummy_encoding.
6943         * ext/nkf/nkf.c (Init_nkf): use rb_nkf_enc_get("ASCII").
6945         * ext/nkf/nkf-utf8/nkf.c: Update 1.161.
6947         * ext/nkf/nkf-utf9/config.h: default output encoding is now UTF-8.
6949         * ext/nkf/lib/kconv.rb (Kconv.kconv): replace Encoding#name by
6950           Encoding#to_s.
6952 Sun Dec 23 18:02:52 2007  Eric Hodel  <drbrain@segment7.net>
6954         * lib/rubygems/gem_open_uri.rb:  Fix version check.
6956 Sun Dec 23 17:24:48 2007  Tanaka Akira  <akr@fsij.org>
6958         * encoding.c (rb_enc_init): add eucJP as an alias of EUC-JP.
6960 Sun Dec 23 17:00:23 2007  Tanaka Akira  <akr@fsij.org>
6962         * lib/time.rb (Time.httpdate): use Time.utc for
6963           "day-of-week, dd-mon-yy HH::MM:SS GMT" format.
6965 Sun Dec 23 16:12:40 2007  Eric Hodel  <drbrain@segment7.net>
6967         * lib/rdoc:  Fix 1.9 warnings.
6969 Sun Dec 23 15:28:37 2007  Eric Hodel  <drbrain@segment7.net>
6971         * lib/rubygems, test/rubygems:  Fix new 1.9 warnings.
6973 Sun Dec 23 14:43:10 2007  Eric Hodel  <drbrain@segment7.net>
6975         * gem_prelude.rb:  Use require to load rubygems.rb so the correct path
6976           is in $LOADED_FEATURES on RubyGems upgrade.
6978 Sun Dec 23 11:26:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6980         * string.c (sym_call): use exact argument array interface.
6981           [ruby-core:14279]
6983 Sun Dec 23 11:01:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6985         * io.c (rb_io_binmode_m): removed C99ism.
6987 Sun Dec 23 10:23:23 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
6989         * transcode_data_one_byte.c: Better (and more honest) optimization.
6991         * transcode_data_japanese.c: First optimization step.
6993 Sun Dec 23 09:07:02 2007  Tanaka Akira  <akr@fsij.org>
6995         * include/ruby/encoding.h, encoding.c, re.c, io.c, parse.y, numeric.c,
6996           ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding to
6997           rb_ascii8bit_encoding.  rb_ascii_encoding is ambiguous with
6998           ASCII-8BIT and US-ASCII.
7000 Sun Dec 23 03:35:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7002         * version.h: use patchlevel if revision is not set.
7004         * {bcc32,win{32,ce}}/setup.mak (-version-): skip including revision.h.
7006         * common.mk (srcs): new target to generated sources.
7008         * common.mk (encs, ext/ripper/ripper.c): MAKEFLAGS needs -.
7010         * enc/depend, enc/make_encmake.rb: use erb.
7012 Sun Dec 23 01:56:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7014         * io.c (rb_io_mode_enc): do not set encoding unless explicitly
7015           specified.
7017         * io.c (rb_io_check_readable): fill fptr->enc by default_external
7018           if it's empty.
7020         * io.c (io_enc_str): fptr->enc is always set for reading IO (by
7021           rb_io_check_readable(fptr)).
7023 Sun Dec 23 01:18:06 2007  David Flanagan  <david@davidflanagan.com>
7025         * io.c, io.h: temporary patch to partially implement
7026           transcode-on-read and transcode-on-write
7028 Sun Dec 23 00:48:05 2007  Shugo Maeda  <shugo@ruby-lang.org>
7030         * test/net/imap/test_imap.rb: added tests for SSL.
7032 Sat Dec 22 21:10:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7034         * ext/syck/rubyext.c (syck_genericresolver_node_import): should
7035           not set instance variable "@kind" before initializing it.
7036           [ruby-dev:32677]
7038 Sat Dec 22 19:52:23 2007  Koichi Sasada  <ko1@atdot.net>
7040         * bootstraptest/test_objectspace.rb: fix condition.
7042 Sat Dec 22 19:17:10 2007  Koichi Sasada  <ko1@atdot.net>
7044         * ext/probeprofiler/: removed.
7046 Sat Dec 22 19:14:38 2007  Koichi Sasada  <ko1@atdot.net>
7048         * process.c (rb_f_fork): Unsupport Kernel.fork() on NetBSD.
7050 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
7052         * test/ruby/test_transcode.rb: Added simple tests for
7053           EUC-JP and Shift_JIS and tests for ASCII-only range
7055 Sat Dec 22 18:20:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7057         * common.mk (version.o): add dependency. [ruby-dev:32680]
7059 Sat Dec 22 17:45:11 2007  NARUSE, Yui <naruse@ruby-lang.org>
7061         * ext/nkf/nkf.c (Init_nkf): use rb_ascii_encoding() for
7062           rb_nkf_enc_get("US-ASCII").
7063           * if use rb_nkf_enc_get("US-ASCII"), ruby will crash - this is bug?
7065 Sat Dec 22 17:39:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7067         * lib/mkmf.rb ($extmk): fixed broken condition.
7069 Sat Dec 22 17:35:59 2007  NARUSE, Yui <naruse@ruby-lang.org>
7071         * ext/nkf/nkf-utf8.c: Update nkf.c rev:1.157.
7073         * ext/nkf/nkf.c (rb_nkf_enc_get): replicate proper based encoding.
7075         * ext/nkf/kconv.c (Kconv#kconv, to*): use self.encoding as from_enc
7076           when from_enc isn't given.
7078 Sat Dec 22 17:06:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7080         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext.build): removed.
7082         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext#set_params):
7083           new method to set suitable SSL parameters.
7085         * lib/net/pop.rb, lib/net/http.rb, lib/net/imap.rb,
7086           test/openssl/test_ssl.rb: follow above change.
7088         * test/net/http/test_https.rb: refine error case.
7090 Sat Dec 22 16:58:49 2007  Shugo Maeda  <shugo@ruby-lang.org>
7092         * lib/net/imap.rb (encode_utf7): accept UTF-8 strings.
7094         * lib/net/imap.rb (decode_utf7): return UTF-8 strings.
7096 Sat Dec 22 15:56:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7098         * transcode_data_japanese: typo.
7100 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
7102         * ChangeLog: Information for last patch got lost, fixed
7104 Sat Dec 22 15:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
7106         * transcode_data_one_byte: slightly optimized
7108         * transcode_data_japanese: new data file for EUC-JP and SHIFT_JIS
7109           (not yet optimized; tests to follow; data from
7110           http://nkf.sourceforge.jp/ucm/{SJIS|eucJP}-nkf.ucm)
7112         * common.mk, transcode.c: Adjusted for transcode_data_japanese
7114 Sat Dec 22 15:30:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7116         * */Makefile.sub (MFLAGS): define unless defined.
7118 Sat Dec 22 15:17:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7120         * lib/mkmf.rb ($extmk): set true only when under ext/ or tool/.
7122 Sat Dec 22 15:14:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7124         * common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
7126         * configure.in (STRINGIZE): stringizing macro.
7128         * include/ruby/defines.h (STRINGIZE): fallback.
7130         * tool/make-snapshot: new file.
7132         * version.c (ruby_description, ruby_copyright): string constants for
7133           -v option.
7135 Sat Dec 22 15:03:37 2007  Shugo Maeda  <shugo@ruby-lang.org>
7137         * lib/net/imap.rb (initialize): fixed documentation.
7139 Sat Dec 22 15:01:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
7141         * lib/net/pop.rb (enable_ssl): use OpenSSL::SSL::SSLContext.build
7142           instead of SSLContext.new (default verify mode is now
7143           OpenSSL::SSL::VERIFY_PEER).
7145 Sat Dec 22 14:45:21 2007  Tadayoshi Funaba  <tadf@dotrb.org>
7147         * lib/date.rb: shouldn't freeze nil. [ruby-dev:32677]
7149 Sat Dec 22 14:27:27 2007  Tanaka Akira  <akr@fsij.org>
7151         * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c.
7153         * regenc.h (onigenc_ascii_is_code_ctype): declared.
7155         * enc/ascii.c: use onigenc_ascii_is_code_ctype.
7157         * enc/us_ascii.c: new file for US-ASCII.
7159 Sat Dec 22 14:30:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7161         * parse.y (reg_named_capture_assign_iter): allows non-ascii names and
7162           get rid of reserved word IDs.
7164 Sat Dec 22 14:18:45 2007  Koichi Sasada  <ko1@atdot.net>
7166         * test/ruby/test_float.rb, test_sprintf.rb: fix test place.
7168 Sat Dec 22 14:17:02 2007  Koichi Sasada  <ko1@atdot.net>
7170         * bootstraptest/test_objectspace.rb: skip frozen string.
7172 Sat Dec 22 14:02:58 2007  Koichi Sasada  <ko1@atdot.net>
7174         * array.c (rb_ary_permutation): add volatile to avoid GC problem.
7176 Sat Dec 22 11:47:42 2007  Koichi Sasada  <ko1@atdot.net>
7178         * eval.c (rb_obj_instance_eval): use class of immediate objects.
7180         * test/ruby/test_eval.rb: fix a test.
7182 Sat Dec 22 11:37:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7184         * encoding.c (rb_locale_charmap): win32 support.
7186 Sat Dec 22 11:31:14 2007  Eric Hodel  <drbrain@segment7.net>
7188         * gem_prelude.rb:  Place bin dir before lib dir so gem bin stubs work.
7190 Sat Dec 22 11:05:44 2007  Jim Weirich  <jim@tardis.local>
7192         * lib/rake.rb (Rake): Added Rake and related libraries to the
7193           source code base.
7195 Sat Dec 22 10:30:45 2007  Koichi Sasada  <ko1@atdot.net>
7197         * tool/insns2vm.rb: moved from lib/vm/instruction.rb.
7199 Sat Dec 22 10:25:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7201         * parse.y (reg_named_capture_assign_iter): captured name should
7202           not be reserved word.  a patch from Keita Yamaguchi
7203           <keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
7205         * parse.y (reg_named_capture_assign_iter): just ignore the
7206           captures that do not have valid local variable name.
7208 Sat Dec 22 10:19:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7210         * eval.c (rb_f_method_name): now __method__ and __callee__ are
7211           aliases.  [ruby-core:14244]
7213 Sat Dec 22 08:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7215         * string.c (rb_str_buf_append): improvement for non-broken coded
7216           strings.
7218 Sat Dec 22 06:30:04 2007  Koichi Sasada  <ko1@atdot.net>
7220         * bootstraptest/test_fork.rb: skip if fork is not unsupported.
7222         * bootstraptest/test_io.rb: skip if require failed.
7224 Sat Dec 22 06:09:12 2007  David Flanagan  <david@davidflanagan.com>
7226         * io.c: fix typo in rdoc comment
7228 Sat Dec 22 05:09:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7230         * parse.y (parser_str_new, rb_intern3): rb_default_encoding() renamed.
7232         * ext/nkf/nkf.c (rb_nkf_putchar): ditto.
7234 Sat Dec 22 03:54:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7236         * encoding.c (rb_ascii_encoding): renamed from previous
7237           rb_default_encoding().
7239 Sat Dec 22 02:49:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7241         * parse.y (command): block from cmd_brace_block was ignored.
7242           [ruby-dev:32644]
7244         * re.c (rb_reg_prepare_re): stop ENCODING_NONE warning if the
7245           encoding of the str is ASCII-8BIT.
7247 Sat Dec 22 01:52:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7249         * io.c (io_ungetc): avoid buffer relocation, which might cause
7250           serious problem under concurrent situation.
7252 Sat Dec 22 01:35:41 2007  Tanaka Akira  <akr@fsij.org>
7254         * re.c (ARG_ENCODING_NONE): defined for /.../n option.
7255           (REG_ENCODING_NONE): ditto.
7256           (rb_char_to_option_kcode): return ARG_ENCODING_NONE for n.
7257           (rb_reg_prepare_re): warn /ascii/n =~ "non-ascii".
7258           (rb_reg_initialize): set REG_ENCODING_NONE from ARG_ENCODING_NONE.
7260 Sat Dec 22 01:23:10 2007  Shugo Maeda  <shugo@ruby-lang.org>
7262         * test/json/test_json_addition.rb (test_core): do not use Time.now
7263           because JSON can't hold nsec.
7265 Sat Dec 22 01:10:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7267         * ext/tk/sample/tkextlib/vu/canvSticker2.rb,
7268           ext/tk/sample/demos-{en,jp}/bind.rb: fix typo. [ruby-dev:32668]
7270 Sat Dec 22 00:56:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7272         * sample/test.rb (valid_syntax): force_encoding input script.
7274 Fri Dec 21 23:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7276         * lib/mkmf.rb (depend_rules): suffixes list broken. fixed.
7278 Fri Dec 21 20:18:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7280         * bignum.c (rb_big_mul0): remove unused variable.
7282         * bignum.c (bigdivrem): ditto.
7284 Fri Dec 21 20:13:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7286         * include/ruby/ruby.h (rb_catch_obj, rb_throw_obj): prototyped.
7288         * include/ruby/intern.h (rb_fiber_alive_p): prototyped.
7290 Fri Dec 21 20:09:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7292         * string.c (rb_str_succ): retry increasing until valid char is found.
7294 Fri Dec 21 20:00:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7296         * encoding.c (rb_enc_replicate): now creates first class encoding.
7298         * encoding.c (rb_define_dummy_encoding): always based on the default
7299           encoding.
7301         * encoding.c (rb_enc_dummy_p): check if dummy.
7303         * encoding.c (enc_inspect): shows if dummy.
7305         * encoding.c (Init_Encoding): added dummy? method
7307         * include/ruby/encoding.h (ENCODING_INLINE_MAX): increased.
7309 Fri Dec 21 18:40:54 2007  Koichi Sasada  <ko1@atdot.net>
7311         * io.c: write() should be in blocking region.
7313         * bootstraptest/test_io.rb, test_knownbug.rb: move a fixed test.
7315 Fri Dec 21 17:56:30 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
7317         * ext/tk/tcltklib.c: provisional support on Ruby-VM.
7319         * ext/tk/MANUAL_tcltklib.eng, ext/tk/MANUAL_tcltklib.eucj:
7320           modify document about new functions.
7322         * ext/tk/lib/tk.rb, ext/tk/lib/tk/labelframe.rb,
7323           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/toplevel.rb,
7324           ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/message.rb,
7325           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/text.rb,
7326           ext/tk/lib/tk/scale.rb, ext/tk/lib/tk/entry.rb,
7327           ext/tk/lib/tk/ttk_selector.rb, ext/tk/lib/tk/menu.rb,
7328           ext/tk/lib/tk/label.rb, ext/tk/lib/tk/spinbox.rb,
7329           ext/tk/lib/tk/textmark.rb, ext/tk/lib/tk/winpkg.rb,
7330           ext/tk/lib/tk/checkbutton.rb, ext/tk/lib/tk/panedwindow.rb,
7331           ext/tk/lib/tk/texttag.rb, ext/tk/lib/tk/root.rb,
7332           ext/tk/lib/tk/textimage.rb, ext/tk/lib/tk/radiobutton.rb,
7333           ext/tk/lib/tk/package.rb, ext/tk/lib/tk/macpkg.rb,
7334           ext/tk/lib/tk/composite.rb, ext/tk/lib/tk/autoload.rb,
7335           ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/button.rb,
7336           ext/tk/lib/tk/textwindow.rb,
7337           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb,
7338           ext/tk/lib/tkextlib/tile/style.rb,
7339           ext/tk/lib/tkextlib/tile/tscrollbar.rb,
7340           ext/tk/lib/tkextlib/tile/tpaned.rb, ext/tk/lib/tkextlib/tile.rb,
7341           ext/tk/extconf.rb: support Tcl/Tk8.5 (partial, not complete).
7343         * ext/tk/sample/demos-jp/widget,
7344           ext/tk/sample/demos-jp/pendulum.rb,
7345           ext/tk/sample/demos-jp/bind.rb,
7346           ext/tk/sample/tkextlib/vu/canvSticker2.rb,
7347           ext/tk/sample/demos-en/pendulum.rb,
7348           ext/tk/sample/demos-en/bind.rb: remove $KCODE and minor bug fix.
7350 Fri Dec 21 17:49:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7352         * transcode.c (rb_str_transcode_bang): returns self if no conversion.
7353           [ruby-dev:32662]
7355 Fri Dec 21 17:44:47 2007  Eric Hodel  <drbrain@segment7.net>
7357         * lib/rubygems*:  Update to RubyGems 1.0.1, r1581
7359 Fri Dec 21 17:32:49 2007  Koichi Sasada  <ko1@atdot.net>
7361         * bootstraptest/pending.rb: renamed from featurebug.rb.
7362           This file contains bugs which is known but will not be
7363           fixed in days.
7365 Fri Dec 21 17:31:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7367         * debug.c (dummy_gdb_enums.various): added ENCODING and CODERANGE
7368           constants.
7370         * .gdbinit: use enum constants.
7372 Fri Dec 21 17:28:17 2007  Koichi Sasada  <ko1@atdot.net>
7374         * bootstraptest/featurebug.rb: added.
7376         * bootstraptest/test_knownbug.rb: move a feature bug.
7378 Fri Dec 21 17:25:22 2007  Koichi Sasada  <ko1@atdot.net>
7380         * thread.c (rb_thread_atfork): fix to mark thread object.
7381           [ruby-dev:32404]
7383         * bootstraptest/test_knownbug.rb, test_fork.rb: move a fixed test.
7385 Fri Dec 21 17:07:13 2007  Koichi Sasada  <ko1@atdot.net>
7387         * gc.h: extern variable should not be initialized.
7389         * thread_pthread.c: add a parameter.
7391 Fri Dec 21 16:50:43 2007  Tanaka Akira  <akr@fsij.org>
7393         * encoding.c (Init_Encoding): use enc_name as to_s.
7394           (enc_inspect): renamed from enc_to_s.  add "#" at beginning.
7396 Fri Dec 21 16:37:43 2007  NARUSE, Yui <naruse@ruby-lang.org>
7398         * ext/nkf/nkf-utf8/config.h (MIME_DECODE_DEFAULT, X0201_DEFAULT):
7399          defined as FALSE.  nkf and kconv don't decode MIME encoded string
7400          and don't convert JIS X 0201 Katakana.
7402         * test/nkf/test_kconv.rb: fix tests.
7404 Fri Dec 21 16:33:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7406         * enumerator.c (enumerator_iter_i): adjusted for rb_block_call_func.
7408         * include/ruby/ruby.h (rb_block_call_func): function to be called back
7409           as block.
7411 Fri Dec 21 16:25:25 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
7413         * common.mk, transcode_data_iso_8859.c: renamed to
7414           transcode_data_one_byte.c.
7416 Fri Dec 21 16:10:30 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
7418         * ext/bigdecimal/bigdecimal.c (VpMidRound): Round method bug
7419           pointed by Ryan Platte fixed(Patch to the patch from "NATORI
7420           Shin").  [ruby-talk:273360]
7422 Fri Dec 21 16:06:13 2007  Tanaka Akira  <akr@fsij.org>
7424         * re.c (append_utf8): use rb_utf8_encoding() instead of
7425           rb_enc_find("utf-8").
7427 Fri Dec 21 15:59:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7429         * encoding.c (rb_enc_init): use enc_register_at() directly.
7431         * encoding.c (rb_utf8_encoding): returns utf-8 encoding.
7433         * include/ruby/encoding.h (rb_utf8_encoding): prototyped.
7435         * parse.y (UTF8_ENC): uses rb_utf8_encoding().
7437 Fri Dec 21 15:31:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7439         * io.c (rb_io_s_read): allow specifying encoding explicitly.
7441         * io.c (rb_io_binmode): specifies encoding to ASCII-8BIT (binary).
7443         * io.c (rb_io_s_read): IO should be in binary mode when offset is
7444           specified.
7446         * encoding.c (rb_to_encoding): returns default encoding if no
7447           corresponding encoding found.
7449 Fri Dec 21 15:24:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
7451         * lib/net/imap.rb (initialize): accept service name.  changed
7452           the default value of the old style +verify+ argument to true.
7454 Fri Dec 21 15:15:44 2007  Tanaka Akira  <akr@fsij.org>
7456         * gc.c (rb_garbage_collect): new function for debugging.
7458 Fri Dec 21 15:16:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7460         * encoding.c (rb_to_encoding_index): should return error instead of
7461           exception even if type is incorrect.
7463 Fri Dec 21 14:58:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7465         * enumerator.c (enumerator_init_copy): prohibit cloning of
7466           generators since Fibers cannot be copied.
7468         * enumerator.c (enumerator_init_copy): typo fixed.
7470 Fri Dec 21 14:46:07 2007  Tanaka Akira  <akr@fsij.org>
7472         * io.c (Init_IO): define IO::BINARY even if O_BINARY is not exist.
7474 Fri Dec 21 14:01:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7476         * test/ruby/test_system.rb (TestSystem::valid_syntax): apply
7477           ASCII-8BIT encoding explicitly.
7479         * re.c (rb_reg_prepare_re): add encoding name in the message.
7481 Fri Dec 21 13:54:05 2007  Tanaka Akira  <akr@fsij.org>
7483         * re.c: change "character encodings differ" error messages.
7485 Fri Dec 21 13:46:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7487         * encoding.c (rb_enc_register): set encoding constant.
7489         * encoding.c (rb_enc_find_index): replace non-alphanumeric chars with
7490           underscores, so that initialize function can be called.
7492         * encoding.c (rb_enc_find_index): extension libraries have lower case
7493           names conventionally.
7495         * ruby.c (proc_options, process_options): finds encoding after
7496           load_path is initialized.
7498 Fri Dec 21 13:10:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7500         * io.c (rb_io_external_encoding): new method.
7502         * encoding.c (rb_enc_from_encoding): returns Qnil for NULL
7503           encoding.
7505         * io.c (rb_io_external_encoding): should fill delayed
7506           initialization for STDIN.
7508 Fri Dec 21 13:09:11 2007  Tanaka Akira  <akr@fsij.org>
7510         * encoding.c (rb_locale_charmap): return nil if no locale information.
7512 Fri Dec 21 12:55:39 2007  Tanaka Akira  <akr@fsij.org>
7514         * lib/runit, lib/rubyunit.rb, test/testunit/runit: removed.
7516 Fri Dec 21 12:45:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7518         * string.c (rb_str_chomp_bang): avoid unnecessary loop using
7519           ONIGENC_LEFT_ADJUST_CHAR_HEAD().
7521 Fri Dec 21 12:32:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7523         * file.c (Init_File): File.exists? revived.
7525         * dir.c (Init_Dir): Dir.exists? again.
7527 Fri Dec 21 12:26:36 2007  Koichi Sasada  <ko1@atdot.net>
7529         * compile.c: remove "illegal".
7531 Fri Dec 21 12:22:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7533         * keywords, parse.y (__ENCODING__): represent script encoding.
7535 Fri Dec 21 12:16:50 2007  Tanaka Akira  <akr@fsij.org>
7537         * string.c (rb_str_is_ascii_only_p): new method ascii_only?.
7539 Fri Dec 21 12:11:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7541         * io.c (rb_io_mode_enc): set default external encoding if no
7542           encoding specified explicitly.
7544 Fri Dec 21 12:00:34 2007  Tanaka Akira  <akr@fsij.org>
7546         * configure.in: check langinfo.h and locale.h.
7548         * encoding.c: use langinfo.h only if available.
7550         * main.c: use locale.h only if available.
7552 Fri Dec 21 11:47:56 2007  Tanaka Akira  <akr@fsij.org>
7554         * encoding.c: include locale.h
7555           (rb_locale_charmap): new method Encoding.locale_charmap for
7556           nl_langinfo(CODESET).
7558         * include/ruby/encoding.h (rb_locale_charmap): declared.
7560         * main.c (main): call setlocale with LC_CTYPE.
7562         * ruby.c (locale_encoding): use rb_locale_charmap.
7564 Fri Dec 21 11:35:10 2007  Koichi Sasada  <ko1@atdot.net>
7566         * vm.c, vm_dump.c: fix typo.  Reported by Yuki Mitsui.
7568 Fri Dec 21 11:28:00 2007  Tanaka Akira  <akr@fsij.org>
7570         * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
7571           compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
7572           ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
7573           ext/openssl/ossl_bn.c, numeric.c, vm.c,
7574           benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
7575           for non law violation context.
7577 Fri Dec 21 11:23:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7579         * common.mk (enc.mk): depends on $(RBCONFIG) instead of rbconfig.rb.
7581         * encoding.c (Init_Encoding): ISO-8859-1 is no longer a replica.
7583         * regenc.h (OnigEncodingDefine): names of extension and encoding can
7584           differ.
7586         * enc/Makefile.in: always shared.
7588         * enc/depend (deffile): should not upcase.
7590         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: fix for Init.
7592 Fri Dec 21 09:26:48 2007  Tanaka Akira  <akr@fsij.org>
7594         * tool/compile_prelude.rb: use erb.
7596 Fri Dec 21 08:07:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7598         * enumerator.c (enumerator_next): should call next_init() if fiber
7599           is dead already. [ruby-dev:32459]
7601 Fri Dec 21 01:21:49 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7603         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
7604           enable CRL checking by default.
7606 Fri Dec 21 01:20:56 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7608         * lib/net/http.rb (Net::HTTP#connect): use
7609           OpenSSL::SSL::SSLContext.build instead of SSLContext.new (default
7610           verify mode is now OpenSSL::SSL::VERIFY_PEER).
7612         * lib/net/https.rb: SSL parameters are defined by attr_accessor.
7614         * test/net/http/test_https.rb: add test for HTTPS features.
7616 Fri Dec 21 01:11:37 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7618         * io.c (select_internal): should return original value.
7620 Fri Dec 21 00:26:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7622         * string.c (tr_trans): wrong encoding check for tree strings.
7624         * test/ruby/test_m17n.rb (TestM17N::test_tr_s): "invalid mbstring
7625           sequence" is not an error to be tested.
7627         * test/ruby/test_m17n.rb (TestM17N::test_tr): ditto.
7629 Thu Dec 20 19:29:07 2007  Shugo Maeda  <shugo@ruby-lang.org>
7631         * lib/net/imap.rb (initialize): the second argument is an option
7632           hash now.  use SSLContext.build to specify SSL parameters.
7634 Thu Dec 20 19:11:56 2007  Koichi Sasada  <ko1@atdot.net>
7636         * thread_pthread.c (native_thread_apply_priority): check
7637           _POSIX_PRIORITY_SCHEDULING for OpenBSD.
7639 Thu Dec 20 18:33:54 2007  Koichi Sasada  <ko1@atdot.net>
7641         * configure.in: add libthr for FreeBSD.
7643 Thu Dec 20 18:17:14 2007  Koichi Sasada  <ko1@atdot.net>
7645         * common.mk, *.ci: renamed to *.c.
7647         * eval_load.c: renamed to load.c.
7649 Thu Dec 20 17:36:01 2007  Eric Hodel  <drbrain@segment7.net>
7651         * lib/rubygems*:  Import RubyGems 1.0.0, r1575.
7653 Thu Dec 20 17:18:38 2007  Koichi Sasada  <ko1@atdot.net>
7655         * proc.c: support Proc#binding.
7657         * sample/test.rb: add a test.
7659 Thu Dec 20 17:15:15 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
7661         * pack.c: Slight change to documentation ('character' ->
7662           'byte (C char)'). [ruby-core:13126], see also [ruby-core:13998].
7664 Thu Dec 20 17:07:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7666         * common.mk (enc.mk): depends on rbconfig.rb.
7668         * regenc.h (OnigEncodingDefine): external encoding definition macro.
7670         * enc/Makefile.in: fix for linking.
7672         * enc/depend, enc/make_encmake.rb: fix for Windows.
7674         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: renamed.
7676 Thu Dec 20 16:42:55 2007  Koichi Sasada  <ko1@atdot.net>
7678         * iseq.c (find_line_no): return 0 if not found.
7680 Thu Dec 20 16:04:17 2007  Koichi Sasada  <ko1@atdot.net>
7682         * insnhelper.ci, vm.c, vm_core.h: change interface of
7683           vm_invoke_block() to specify block ptr.  [ruby-talk:266422]
7685         * cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c:
7686           apply above change.
7688         * bootstraptest/test_knownbug.rb: move fixed bug.
7690         * bootstraptest/test_block.rb: ditto. and add a test.
7692 Thu Dec 20 15:47:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7694         * enc/iso_8859_{1..16}.c: renamed.
7696 Thu Dec 20 09:59:27 2007  Koichi Sasada  <ko1@atdot.net>
7698         * insnhelper.ci (vm_expandarray): fix sp increase place.
7699           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
7701         * bootstraptest/test_massign.rb: add a test for above.
7703         * bootstraptest/test_syntax.rb: fix last committed test.
7705 Thu Dec 20 09:47:58 2007  Koichi Sasada  <ko1@atdot.net>
7707         * bootstraptest/test_syntax.rb: add a test.
7709 Thu Dec 20 09:40:51 2007  Koichi Sasada  <ko1@atdot.net>
7711         * compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
7713 Thu Dec 20 09:42:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7715         * bignum.c (big2str_orig): access beyond memory region cause crash
7716           on interrupt.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in
7717           [ruby-dev:32651].  [ruby-dev:32641]
7719 Thu Dec 20 09:06:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7721         * string.c (rb_str_index): wrong starting position.
7723 Thu Dec 20 06:34:27 2007  Koichi Sasada  <ko1@atdot.net>
7725         * compile.c (iseq_compile_each): add pop after throw as return.
7727         * bootstraptest/test_knownbug.rb, test_syntax.rb: move resolved test.
7729         * vm_core.h, iseq.c, compile.h: add debug output code.
7731 Thu Dec 20 04:57:18 2007  Koichi Sasada  <ko1@atdot.net>
7733         * compile.c (iseq_compile_each): remove unused retry entry.
7735 Thu Dec 20 04:15:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7737         * */Makefile.sub (DEFS, RM): output to config.status.
7739 Thu Dec 20 02:59:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7741         * common.mk (encs): create encoding directory.
7743 Thu Dec 20 02:50:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7745         * enc/iso8859_{1..16}.c: adjust for ruby.
7747 Thu Dec 20 02:28:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7749         * enc/iso8859_{1..16}.c: imported from Onigiruma 5.9.0.
7751 Thu Dec 20 02:23:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7753         * enc/Makefile.in (RM): added.
7755         * enc/depend (encs): sort in alpha-numeric order.
7757         * enc/depend (clean, distclean): added.
7759 Thu Dec 20 01:10:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7761         * compile.c (iseq_compile_each): should handle upper level eval iseq
7762           from break/next, and COMPILE_ERROR() breaks only one block.
7763           [ruby-dev:31372]
7765 Thu Dec 20 00:07:36 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
7767         * test/drb/drbtest.rb (test_07_public_private_protected_missing):
7768           followed current Ruby specification.
7770 Wed Dec 19 23:57:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7772         * dir.c (dir_inspect, dir_path, dir_tell): check for frozen and closed
7773           is not needed.  [ruby-dev:32640]
7775 Wed Dec 19 22:59:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7777         * string.c (str_sublen): adjust position if position is not at the
7778           head of a character.
7780         * string.c (rb_str_chomp_bang): check if match start at the head
7781           of a character.
7783         * string.c (rb_str_chomp_bang): wrong adjust condition.
7785         * string.c (rb_str_rindex): comparison length should be based on
7786           bytes, not characters.
7788         * string.c (rb_str_rindex_m): too much adjustment.
7790         * re.c (reg_match_pos): pos adjustment should be based on
7791           characters.
7793         * test/ruby/test_m17n.rb (TestM17N::test_str_insert): test updated
7794           to check negative offset behavior.
7796         * string.c (rb_str_each_line): should consider rslen.
7798         * string.c (rb_str_buf_append): should propagate encoding.
7800         * string.c (rb_str_each_line): ditto.
7802         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): should
7803           check encoding as well.
7805         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): empty
7806           array can not propagate encoding;  should not check.
7808 Wed Dec 19 21:42:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7810         * re.c (rb_reg_regsub): should set checked encoding.
7812         * string.c (rb_str_sub_bang): applied r14212 too.
7814 Wed Dec 19 20:40:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7816         * bignum.c (bigmul1): C99ism.
7818         * bignum.c (bigdivrem1): need dummy return value.
7820 Wed Dec 19 19:18:06 2007  NARUSE, Yui <naruse@ruby-lang.org>
7822         * ext/nkf/nkf-utf8/nkf.c: Updated.
7824         * ext/nkf/nkf.c (rb_nkf_enc_get): added.
7825           (find encoding or replicate default encoding)
7827         * ext/nkf/nkf.c (NKF::<ENCODING>): redefine encoding constant.
7829         * ext/nkf/lib/kconv.rb (Kconv::<ENCODING>): redefined as Encoding.
7831         * ext/nkf/lib/kconv.rb: refactoring.
7833 Wed Dec 19 19:11:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7835         * bignum.c (rb_big_mul0): blocking check for bigger numbers.
7836           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32632].
7838         * bignum.c (bigdivrem): ditto.
7840 Wed Dec 19 17:34:50 2007  Koichi Sasada  <ko1@atdot.net>
7842         * compile.c (iseq_compile_each): remove "retry" in block.
7843           ("iter{retry}" cause syntax error)
7844           Currently, "begin; ...; rescue; iter{retry}; end" cause
7845           syntax error too.
7847         * bootstraptest/test_jump.rb: ditto.
7849         * lib/drb/invokemethod.rb: ditto.
7851         * sample/drb/darrayc.rb: ditto.
7853         * sample/test.rb: ditto.
7855         * test/drb/drbtest.rb: ditto.
7857         * test/ruby/test_iterator.rb: ditto.
7859         * sample/test.rb: add a 'test' directory on the SYSTEM test.
7861 Wed Dec 19 17:12:59 2007  Koichi Sasada  <ko1@atdot.net>
7863         * bootstraptest/test_knownbug.rb, test_block.rb:
7864           move fixed bug.
7866         * bootstraptest/test_m17n.rb: added.
7868 Wed Dec 19 16:59:55 2007  Koichi Sasada  <ko1@atdot.net>
7870         * eval.c (errinfo_place): skip if error is Fixnum.  [ruby-dev:32608]
7872         * bootstraptest/test_exception.rb, test_known_bug.rb: move fixed bug.
7874 Wed Dec 19 16:31:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7876         * parse.y (reg_named_capture_assign_iter): remove C99 dependency.
7878         * parse.y (reg_named_capture_assign_iter): get rid of creating
7879           unnecessary ID.
7881         * parse.y (rb_enc_symname2_p): check for non-nul-terminated string.
7883 Wed Dec 19 15:37:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7885         * insnhelper.ci (vm_yield_with_cfunc): call cfunc with
7886            (argv[0], data, argc, argv) to pass all arguments.
7888         * enumerator.c (enumerator_each_i): adapted to new calling
7889           convention.
7891 Wed Dec 19 15:13:20 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7893         * string.c (rb_str_justify): should propagate encoding from pad
7894           string too.
7896 Wed Dec 19 13:57:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7898         * configure.in (TIMEZONE_VOID): check whether timezone requires zero
7899           arguments.  [ruby-dev:32631]
7901 Wed Dec 19 13:22:14 2007  NARUSE, Yui <naruse@ruby-lang.org>
7903         * ext/nkf/nkf.c (NKF::_ENCODING): removed.
7905         * ext/nkf/nkf.c (rb_nkf_kconv): renamed to rb_nkf_convert.
7907         * ext/nkf/nkf.c (rb_nkf_convert): set encoding.
7909         * ext/nkf/nkf.c (rb_nkf_guess1): removed.
7911         * ext/nkf/nkf.c (rb_nkf_guess2): renamed to rb_nkf_guess.
7913         * ext/nkf/nkf.c (rb_nkf_guess):
7914           guess method now returns encoding object.
7916         * ext/nkf/nkf-utf8/nkf.c: Update to nkf 2.0.8 2007-12-19.
7918 Wed Dec 19 10:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7920         * bignum.c (rb_cstr_to_inum): an underscore succeeding after octal
7921           prefix is allowed.  [ruby-core:14139]
7923 Wed Dec 19 00:09:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
7925         * bignum.c (rb_cstr_to_inum): wrong radix check.  a patch from
7926           Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32628].
7928         * bignum.c (big2str_find_n1): ditto.
7930 Tue Dec 18 23:53:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7932         * compile.c (iseq_compile_each): fix for segfault.  [ruby-dev:31372]
7934 Tue Dec 18 23:44:32 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7936         * test/net/http/utils.rb: split TestNetHTTPUtils module from
7937           test/net/http/test_http.rb. and start HTTP server in each test case.
7939 Tue Dec 18 23:27:51 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7941         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
7942           should rescue Errno::EINVAL from TCPServer#accept. this exception
7943           might occur if the server socket is not in ready to listen.
7945         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
7946           don't call TCPServer#close if the :ShutdownSocketWithoutClose is set.
7948         * lib/webrick/config.rb (WEBrick::Config::General): add new parameter
7949           :ShutdownSocketWithoutClose.
7951 Tue Dec 18 22:51:47 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7953         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#shutdown):
7954           new method which calls TCPSocket#shutdown of the underlying socket.
7956 Tue Dec 18 22:11:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7958         * lib/rss/parser.rb, lib/rss/atom.rb, lib/rss/rss.rb,
7959           test/rss/rss-assertions.rb, test/rss/test_atom.rb: use
7960           pack/unpack("m") instead of base64 library.
7962         * lib/webrick/httpproxy.rb: use delete("\n") instead of chomp/chop
7963           because the result of pack("m") might be multi-line.
7965 Tue Dec 18 22:12:35 2007  Koichi Sasada  <ko1@atdot.net>
7967         * insnhelper.ci, vm.c: rewrite sp manipulation around method/block
7968           invocation.  [ruby-dev:32547]
7970 Tue Dec 18 22:11:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
7972         * ext/dl/win32/lib/win32/sspi.rb: use pack/unpack("m") instead of
7973           base64 library which was already removed.
7975 Tue Dec 18 21:09:23 2007  Koichi Sasada  <ko1@atdot.net>
7977         * vm.c (invoke_block): merge 2 stack overflow checks.
7979 Tue Dec 18 20:58:35 2007  Koichi Sasada  <ko1@atdot.net>
7981         * compile.c, insnhelper.ci, insns.def, object.c, vm.c, vm.h:
7982           optimize !@, != method invocation.
7984         * id.c, id.h: ditto.
7986         * bootstraptest/test_syntax.rb: add tests for above.
7988 Tue Dec 18 18:10:05 2007  Koichi Sasada  <ko1@atdot.net>
7990         * bootstraptest/test_knownbug.rb: add issues.
7992 Tue Dec 18 20:22:44 2007  Tanaka Akira  <akr@fsij.org>
7994         * parse.y (arg tMATCH arg): call reg_named_capture_assign_gen if regexp
7995           literal is used.
7996           (reg_named_capture_assign_gen): assign the result of named capture
7997           into local variables.
7998           [ruby-dev:32588]
8000         * re.c: document the assignment by named captures.
8002 Tue Dec 18 18:09:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8004         * string.c (rb_str_splice): propagate encoding.
8006         * string.c (rb_str_subpat_set): ditto.
8008 Tue Dec 18 17:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8010         * object.c (rb_obj_freeze): preserve frozen state of immediate
8011           values in internal hash table, a la generic_ivar.
8013         * object.c (rb_obj_frozen_p): check immediate values too.
8015         * variable.c (generic_ivar_set): add frozen check fro immediate
8016           values.
8018 Tue Dec 18 17:04:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8020         * transcode.c (rb_str_transcode_bang, rb_str_transcode): set new
8021           encoding even if no conversion is done because of 7bit only.
8022           [ruby-dev:32591]
8024 Tue Dec 18 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8026         * common.mk (encs, ext/ripper/ripper.c): other options must come
8027           before MAKEFLAGS in GNU make.
8029 Tue Dec 18 15:19:55 2007  Eric Hodel  <drbrain@segment7.net>
8031         * lib/rdoc/parsers/parse_rb.rb: Don't call private fail anymore.
8033 Tue Dec 18 15:17:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8035         * common.mk (encs, ext/ripper/ripper.c): pass MAKEFLAGS.
8037 Tue Dec 18 14:45:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8039         * parse.y (op_tbl): remove duplication to avoid symbol aliases.
8041 Tue Dec 18 14:39:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8043         * string.c (str_nth): need not to raise out-of-range exception.
8045         * test/ruby/test_m17n.rb (TestM17N::test_str_aref_len): removed
8046           debug print.
8048 Tue Dec 18 14:05:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8050         * enc/depend: get rid of target expanded as empty for nmake.
8052 Tue Dec 18 07:56:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8054         * proc.c (rb_obj_public_method): Object#public_method to retrieve
8055           public method object.
8057         * proc.c (rb_mod_public_instance_method): Module#public_instance_method
8058           to retrieve public instance method from class / module.
8060         * proc.c (mnew): visibility check added.
8062         * eval_error.ci (rb_print_undef): add rb_ prefix.
8064         * eval_error.ci (rb_print_undef): add visibility in the error
8065           message.
8067 Tue Dec 18 05:54:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8069         * lib/Env.rb, lib/base64.rb, lib/importenv.rb, lib/eregex.rb: removed.
8071         * lib/ping.rb, lib/readbytes.rb: removed
8073 Tue Dec 18 02:30:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8075         * configure.in (BUILTIN_ENCS): removed.
8077         * common.mk (enc.mk): pass BUILTIN_ENCS from command line.
8079         * enc/depend: ditto.
8081         * enc/make_encmake.rb: ditto.
8083 Tue Dec 18 01:46:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8085         * sprintf.c (rb_str_format): need to clear output buffer to avoid
8086           broken encoding compatibility check.
8088 Tue Dec 18 01:40:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8090         * lib/mkmf.rb (depend_rules): inserts ruby to only headers.
8092 Tue Dec 18 01:21:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8094         * parse.y (parser_encode_length): chomp eol style modifiers.
8096         * parse.y (parser_magic_comment): ditto.
8098         * parse.y (set_file_encoding): ditto.
8100 Tue Dec 18 01:15:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8102         * common.mk (encs): added dependencies.
8104         * enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.
8106         * lib/mkmf.rb (depend_rules): now takes content string, not file name.
8108         * win32/enc-setup.mak: overrides default target.
8110 Tue Dec 18 00:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8112         * re.c (rb_reg_initialize): raise error if non-Unicode fixed
8113           encoding option is specified for regexp literals with \u{}
8114           escapes.
8116         * string.c (rb_str_squeeze_bang): should squeeze multibyte
8117           characters as well.
8119 Mon Dec 17 21:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8121         * win32/enc-setup.mak: extracts BUILTIN_ENCOBJS.
8123         * tool/compile_prelude.rb: needs srcdir.
8125 Mon Dec 17 21:24:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8127         * common.mk (miniprelude.c): add -I$(srcdir).
8129 Mon Dec 17 20:53:27 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8131         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ssl_version):
8132           new method OpenSSL::SSL::SSLContext#ssl_version to wrap
8133           SSL_CTX_set_ssl_version.
8135         * ext/openssl/ossl_ssl.c (ossl_ssl_get_verify_result):
8136           new method OpenSSL::SSL::SSLSocket#verify_result to wrap
8137           SSL_get_verify_result.
8139         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
8140           new method to build OpenSSL::SSL::SSLContext with Hash parameters.
8141           this method provides safety default parameters than SSLContext.new.
8143         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL.verify_certificate_identity):
8144           new module function: pull out identity verification process
8145           from OpenSSL::SSL::SSLSocket#post_connection_check.
8147 Mon Dec 17 18:42:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8149         * string.c (scan_once): need no encoding compatibility check.
8150           it's done inside of re_reg_search().
8152         * string.c (rb_str_split_m): ditto.
8154         * re.c (rb_reg_regsub): ditto.
8156 Mon Dec 17 17:50:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8158         * string.c (rb_str_index): check if substring is broken.
8160         * string.c (rb_str_rindex): ditto.
8162         * string.c (rb_str_succ): should carry over.
8164 Mon Dec 17 17:47:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8166         * common.mk (encs): new target to compile external encodings.
8168         * enc/Makefile.in: became a serb template.
8170         * enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.
8172         * lib/mkmf.rb (relative_from): moved from ext/extmk.rb.
8174         * lib/mkmf.rb ($extmk): true if under to top source directory, not
8175           only ext.
8177         * lib/mkmf.rb (depend_rules): extracted from create_makefile.
8179         * tool/serb.rb (serb): splitted from tool/compile_prelude.rb.
8181 Mon Dec 17 17:32:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8183         * configure.in (MAKEFILES): removed enc/Makefile.
8185         * configure.in (EXTERNAL_ENCOBJS, ENCSOS): removed.
8187         * enc/Makefile.in (BUILTIN_ENCS): includes .c suffix.
8189         * enc/depend: splitted from Makefile.in.
8191         * {bcc32,win32,wince}/setup.mak (-encs-): extracts BUILTIN_ENCOBJS.
8193 Mon Dec 17 17:07:53 2007  Tanaka Akira  <akr@fsij.org>
8195         * string.c (rb_enc_str_asciionly_p): use rb_enc_str_coderange.
8197 Mon Dec 17 16:39:25 2007  Tanaka Akira  <akr@fsij.org>
8199         * string.c (rb_enc_str_coderange): set ENC_CODERANGE_BROKEN using
8200           rb_enc_precise_mbclen.
8201           (rb_str_valid_encoding_p): just check coderange is
8202           ENC_CODERANGE_BROKEN or not.
8204 Mon Dec 17 16:04:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8206         * ext/openssl/lib/openssl/buffering.rb (Buffering#gets): added second
8207           optional argument to specify maximum length limit.
8209 Mon Dec 17 16:02:30 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8211         * lib/webrick/httprequest.rb, lib/webrick/cgi.rb: Request-Line or
8212           header fields should be read with maximum length. [ruby-talk:231745]
8214 Mon Dec 17 14:03:39 2007  Tanaka Akira  <akr@fsij.org>
8216         * include/ruby/encoding.h (ENC_CODERANGE_VALID): rename from
8217           ENC_CODERANGE_8BIT.
8219         * string.c (rb_enc_str_coderange): follow the renaming.
8221 Mon Dec 17 13:56:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8223         * string.c (tr_find): wrong condition fixed.
8225         * sprintf.c (rb_str_format): check encoding based on result, not
8226           the format string.
8228         * string.c (rb_str_upto): add encoding check.
8230 Mon Dec 17 12:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8232         * Makefile.in (RUNRUBY): added RUNRUBYOPT.
8234 Mon Dec 17 11:38:59 2007  Tanaka Akira  <akr@fsij.org>
8236         * thread_win32.ci (native_thread_create): initialize
8237           th->machine_stack_maxsize as rb_gc_stack_maxsize.
8239 Sun Dec 16 17:07:35 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
8241         * transcode.c (transcode_loop): removed special case (-1)
8242           for undefined conversions.
8244         * transcode_data_iso_8859.c: Changed from character constants
8245           ('\xC2') to integer constants (0xC2) for shorter files and
8246           better readability; eliminated duplicated tables; changed
8247           from -1 offset to actual UNDEF entry (not yet distinguishing
8248           UNDEF and ILLEGAL correctly).
8250         * test/ruby/test_transcode.rb: added a test for UNDEF conversion.
8252 Sun Dec 16 14:51:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8254         * configure.in (MAKEFILES): should be enc/Makefile, not GNUmakefile.
8255           [ruby-dev:32609]
8257         * configure.in (BUILTIN_ENCS): removed escapes for OpenBSD.
8259 Sat Dec 15 23:58:46 2007  Tanaka Akira  <akr@fsij.org>
8261         * test/openssl/test_pair.rb (SSLPair#ssl_pair): join the thread, even
8262           on an error.
8264 Sat Dec 15 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
8266         * test/xmlrpc/webrick_testing.rb: join webrick server thread.
8268 Sat Dec 15 22:27:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8270         * configure.in (BUILTIN_ENCS): splitted command line instead of
8271           semicolons for Solaris.
8273 Sat Dec 15 21:38:24 2007  Tanaka Akira  <akr@fsij.org>
8275         * lib/timeout.rb: join the background thread to make sure it is dead.
8277 Sat Dec 15 20:20:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8279         * configure.in (enc/Makefile): add external encoding objects list.
8281         * common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.
8283         * configure.in (BUILTIN_ENCS): [] needs to be enclosed because of m4.
8285         * Makefile.in (BUILTIN_ENCOBJS): substituted by autoconf.
8287         * enc/Makefile.in: new file to compile external encoding sources.
8289         * encoding.c (rb_enc_find_index): auto-load external encoding objects
8290           as "ext/ENCODING_NAME".  [ruby-dev:32606]
8292 Sat Dec 15 13:04:30 2007  Tanaka Akira  <akr@fsij.org>
8294         * vm_core.h (rb_thread_t): new member machine_stack_maxsize and
8295           machine_register_stack_maxsize.
8297         * gc.c (rb_gc_stack_maxsize): new global variable for the thread size
8298           of the main thread.
8299           (STACK_LEVEL_MAX): use machine_stack_maxsize of current thread.
8300           (ruby_stack_check): check IA64 register stack.
8301           (ruby_set_stack_size): set rb_gc_stack_maxsize.
8302           (Init_stack): set rb_gc_stack_maxsize.
8304         * thread_pthread.ci (native_thread_create): initialize
8305           th->machine_stack_maxsize and th->machine_register_stack_maxsize.
8307         * vm.c (Init_BareVM): initialize th->machine_stack_maxsize and
8308           th->machine_register_stack_maxsize.
8310         * thread_win32.ci (native_thread_create): initialize
8311           th->machine_stack_maxsize.  not tested.  just a guess at all.
8313         [ruby-dev:32604]
8315 Sat Dec 15 12:58:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8317         * encoding.c (rb_enc_register, rb_enc_replicate, rb_enc_alias): check
8318           if already registered.
8320 Sat Dec 15 01:57:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8322         * lib/rdoc/options.rb (Options::parse): do not access $KCODE any
8323           longer.  [ruby-core:14079]
8325         * lib/irb/init.rb (IRB::IRB.parse_opts): ditto.
8327         * lib/cgi.rb (CGI::CGI): ditto.
8329 Fri Dec 14 18:18:31 2007  Tanaka Akira  <akr@fsij.org>
8331         * thread_pthread.ci (native_thread_create): twice the stack size.
8332           512KB is not enough to complete test-all on Debian GNU/Linux on
8333           IA64.
8335 Fri Dec 14 16:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8337         * io.c (rb_f_p): RDoc update.  a patch from murphy <murphy AT rubychan.de>.
8338           [ruby-core:14010]
8340 Fri Dec 14 16:06:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8342         * string.c (rb_str_cmp): encoding aware comparison.
8344         * string.c (rb_str_casecmp): ditto.
8346 Fri Dec 14 15:25:30 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
8348         * transcode.c (encoding_equal): new function.
8350         * transcode.c (str_transcode, transcode_dispatch): added two-step
8351           conversion logic via UTF-8.
8353         * transcode.c: some minor formatting fixes
8355         * transcode_data.h, transcode_data_iso_8859.c: Shortened
8356           extremely frequently used macros to shorten file length.
8358         * test/ruby/test_transcode.rb: Fixed name of test class;
8359           added setup method to ensure all necessary encodings exist;
8360           split tests into more test methods; added tests; fixed ordering
8361           of arguments in assert_equal to have expected result first.
8363 Fri Dec 14 13:47:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8365         * common.mk (ruby.imp): fix for circular dependency.  a patch from
8366           Yutaka Kanemoto <kinpoco AT gmail.com> in [ruby-dev:32590].
8368         * regint.h, st.c, ext/json/ext/generator/generator.c: suppress
8369           warnings on AIX.
8371 Fri Dec 14 12:36:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8373         * configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined
8374           and its type.
8376         * configure.in (timezone, altzone): check for recent cygwin.
8378         * missing/strftime.c (strftime): fix for timezone.  [ruby-dev:32536]
8380         * lib/mkmf.rb (try_var): should fail for functions.
8382         * ext/readline/extconf.rb: should use have_func for functions instead
8383           of have_var.
8385 Fri Dec 14 10:25:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8387         * lib/e2mmap.rb (Exception2MessageMapper::E2MM.Raise): $! no
8388           longer modifiable in 1.9.
8390 Fri Dec 14 08:17:24 2007  Tanaka Akira  <akr@fsij.org>
8392         * eval.c (rb_protect): restore root_jmpbuf even if proc exits by
8393           break such as dbm.delete_if { break }.
8395 Fri Dec 14 02:55:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8397         * string.c (str_nth): direct jump if string is 7bit only.  great
8398           performance boost for worst case.
8400         * string.c (str_strlen): direct size if string is 7bit only.
8402 Fri Dec 14 02:29:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8404         * encoding.c (rb_enc_compatible): 1st argument (typically the
8405           receiver) would have higher priority in encoding detection.
8407 Fri Dec 14 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8409         * io.c (rb_io_synchronized): should check if initialized.
8410           [ruby-dev:32585]
8412 Fri Dec 14 00:54:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8414         * re.c (rb_reg_initialize): embedded string may override encoding
8415           of the regular expression.
8417         * re.c (rb_reg_initialize): fix encoding of regular expression if
8418           embedded string has its own encoding specified.
8420 Thu Dec 13 22:16:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8422         * encoding.c (rb_enc_compatible): encoding should never fall back
8423           to ASCII-8BIT unless both encodings are ASCII-8BIT.
8425 Thu Dec 13 20:31:28 2007  Tanaka Akira  <akr@fsij.org>
8427         * string.c (rb_str_shared_replace): make str noembed after free.
8429 Thu Dec 13 20:09:09 2007  Tanaka Akira  <akr@fsij.org>
8431         * eval.c (rb_protect): restore root_jmpbuf to avoid SEGV by
8432           'IO.pipe; [].each.next' with gcc version 3.3.5 (Debian 1:3.3.5-13)
8433           on IA64.
8435 Thu Dec 13 17:51:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8437         * string.c (rb_str_split_m): need not to check encoding if regexp
8438           is empty.
8440         * string.c (rb_str_justify): associate encoding of original to the
8441           result.
8443         * string.c (rb_str_chomp_bang): need to check encoding of record
8444           separator.
8446         * string.c (str_gsub): should copy encoding to the result.
8448         * sprintf.c (rb_str_format): ditto.
8450         * string.c (rb_str_succ): should not enter infinite loop for
8451           non-ASCII, non-alphanumeric character at the bottom.
8453 Thu Dec 13 17:03:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8455         * encoding.c (rb_enc_compatible): should swap encoding indexes too.
8457 Thu Dec 13 16:41:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8459         * encoding.c (rb_enc_compatible): should not judge compatibility
8460           based on rb_enc_asciicompat().
8462 Thu Dec 13 13:09:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8464         * include/ruby/io.h (MakeOpenFile): fptr->enc should be
8465           initialized to zero.  [ruby-dev:32569]
8467 Thu Dec 13 08:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8469         * io.c (rb_io_getc): use default external encoding if fptr->enc is
8470           not set.  [ruby-dev:32565]
8472         * lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
8473           [ruby-dev:32565]
8475 Thu Dec 13 08:24:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8477         * io.c (read_all): should associate default external encoding.
8479         * io.c (io_read): should NOT associate default external encoding.
8481 Wed Dec 12 23:22:58 2007  Tanaka Akira  <akr@fsij.org>
8483         * re.c, regerror.c, string.c, parse.y, ruby.c, file.c:
8484           use capital letter for \xHH notation.  [ruby-dev:32511]
8486 Wed Dec 12 22:21:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8488         * io.c (rb_io_mode_enc): allow specifying external encoding in
8489           open mode, e.g. open(path, "r:utf-8").
8491 Wed Dec 12 21:26:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8493         * eval_method.ci (rb_alias): no need to skip aliasing when new
8494           equals to old.  [ruby-core:13990]
8496 Wed Dec 12 16:34:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8498         * io.c (rb_io_check_readable): set default external encoding to
8499           STDIN.
8501         * io.c (io_enc_str): associate encoding to output string.
8503 Wed Dec 12 12:44:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8505         * parse.y (expr): 'not' and '!' should act as conditional
8506           expression.   [ruby-dev:32548]
8508 Wed Dec 12 12:11:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8510         * re.c (rb_reg_regsub): should copy encoding.
8512         * string.c (rb_str_sub_bang, str_gsub): should check and copy encoding
8513           to be replaced.
8515 Tue Dec 11 23:04:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8517         * pack.c (pack_pack): RDoc update.  a patch from Gary Wright
8518           <radar2002 AT gmail.com>.  [ruby-core:13998]
8520         * pack.c (pack_unpack): ditto.
8522 Tue Dec 11 16:37:47 2007  Tanaka Akira  <akr@fsij.org>
8524         * encoding.c (rb_enc_ascget): renamed from rb_enc_get_ascii.
8526         * include/ruby/encoding.h: follow the renaming.
8528         * re.c: ditto.
8530 Tue Dec 11 16:19:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8532         * Makefile.in, */Makefile.sub (CP, MV): added.
8534         * common.mk (.y.c): not discard the old target until successfully
8535           created.
8537 Tue Dec 11 15:20:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8539         * object.c (Init_Object): singleton_method_{added,removed,undefined}
8540           hooks should be defined for BasicObject.  [ruby-dev:32531]
8542         * eval.c (Init_eval): method_missing should be defined for all
8543           objects; moved to BasicObject.
8545 Tue Dec 11 14:27:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8547         * transcode.c (transcode_loop): get rid of SEGV at sequence can not be
8548           converted.
8550         * transcode.c (rb_str_transcode_bang): copy encoding.  [ruby-dev:32532]
8552         * test/ruby/test_transcode.rb: added tests from Martin Duerst <duerst
8553           AT it.aoyama.ac.jp>.  [ruby-dev:32532]
8555 Tue Dec 11 12:05:51 2007  Tanaka Akira  <akr@fsij.org>
8557         * encoding.c (rb_enc_get_ascii): add an argument to provide the
8558           length of the returned character.
8560         * include/ruby/encoding.h (rb_enc_get_ascii): add the argument.
8562         * re.c (rb_reg_expr_str): modify rb_enc_get_ascii call.
8563           (rb_reg_quote): ditto.
8564           (rb_reg_regsub): ditto.
8566 Tue Dec 11 09:40:21 2007  Tanaka Akira  <akr@fsij.org>
8568         * include/ruby/oniguruma.h (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE):
8569           parenthesize an argument.
8571 Tue Dec 11 02:23:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8573         * eval.c (rb_method_missing): RDoc update patch from Hugh Sasse
8574           <hgs AT dmu.ac.uk>.  [ruby-core:12932]
8576 Tue Dec 11 01:51:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8578         * lib/net/http.rb (Net::HTTP::get): now supports gzip
8579           content-encoding.  a patch from Hugh Sasse <hgs AT dmu.ac.uk>.
8580           [ruby-core:13451]
8582 Tue Dec 11 01:21:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8584         * parse.y (shadowing_lvar_gen): no duplicate error for "_".
8586 Mon Dec 10 22:08:47 2007  Akinori MUSHA  <knu@iDaemons.org>
8588         * array.c (rb_ary_slice_bang): If an invalid range is given, do
8589           not raise an exception but return nil just like slice() does.
8591 Mon Dec 10 21:47:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8593         * transcode.c (str_transcode): allow non-registered encodings.
8594           [ruby-dev:32520]
8596 Mon Dec 10 21:00:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8598         * array.c (rb_ary_slice_bang): should return nil if position out
8599           of range.  a patch from Akinori MUSHA <knu AT iDaemons.org>.
8600           [ruby-dev:32518]
8602 Mon Dec 10 19:02:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8604         * re.c (rb_reg_match): should calculate offset by converted
8605           operand.  [ruby-cvs:21416]
8607 Mon Dec 10 18:28:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8609         * lib/uri/common.rb (URI::REGEXP::PATTERN): typo in REG_NAME
8610           regular expression.  a patch from Ueda Satoshi
8611           <s-ueda AT livedoor.jp>.  [ruby-dev:32514]
8613 Mon Dec 10 17:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8615         * string.c (rb_str_tmp_new): creates hidden temporary buffer.
8617         * transcode.c (transcoding): added a pointer to function to flush.
8619         * transcode.c (transcode_loop): do not use string internal.
8620           [ruby-dev:32512]
8622         * transcode.c (str_transcode): allow Encoding objects.
8624         * transcode_data.h (BYTE_LOOKUP): use actual struct name.
8626 Mon Dec 10 16:52:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8628         * string.c (rb_str_insert): should not add length in bytes to index in
8629           chars.
8631 Mon Dec 10 14:33:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8633         * eval.c (rb_f_public_send): rename invoke_method to public_send.
8634           it now invokes public method only no matter how it's called.
8636 Mon Dec 10 14:00:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8638         * transcode.c: new file to provide encoding conversion features.
8639           code contributed by Martin Duerst.
8641 Mon Dec 10 13:50:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8643         * re.c (rb_reg_search): return byte offset.  [ruby-dev:32452]
8645         * re.c (rb_reg_match, rb_reg_match2, rb_reg_match_m): convert byte
8646           offset to char index.
8648         * string.c (rb_str_index): return byte offset.  [ruby-dev:32472]
8650         * string.c (rb_str_split_m): calculate in byte offset.
8652 Mon Dec 10 09:56:29 2007  Koichi Sasada  <ko1@atdot.net>
8654         * benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: added.
8656 Mon Dec 10 07:48:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8658         * parse.y (parser_yylex): wrong token was generated.  [ruby-dev:32498]
8660         * object.c (rb_obj_not_match): wrong test.
8662 Mon Dec 10 06:44:47 2007  Tanaka Akira  <akr@fsij.org>
8664         * re.c (rb_reg_expr_str): use \xHH instead of \OOO.
8666         * regerror.c (to_ascii): ditto.
8667           (onig_snprintf_with_pattern): ditto.
8668           (onig_snprintf_with_pattern): ditto.
8670         * string.c (rb_str_inspect): ditto.
8671           (rb_str_dump): ditto.
8673         * parse.y (parser_yylex): ditto.
8675         * ruby.c (proc_options): ditto.
8677         * file.c (rb_f_test): ditto.
8679         [ruby-dev:32495]
8681 Mon Dec 10 06:41:00 2007  Tanaka Akira  <akr@fsij.org>
8683         * re.c (rb_reg_names): new method Regexp#names.
8684           (rb_reg_named_captures): new method Regexp#named_captures
8685           (match_regexp): new method MatchData#regexp.
8686           (match_names): new method MatchData#names.
8688         * lib/pp.rb (MatchData#pretty_print): show names of named captures.
8690         [ruby-dev:32493]
8692 Mon Dec 10 01:35:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8694         * parse.y (expr): redefinable not (!) operator.
8696         * parse.y (arg): ditto.
8698         * object.c (rb_obj_not): new method "!".
8700         * object.c (rb_obj_not_equal): new method "!=".
8702         * object.c (rb_obj_not_match): new method "!~".
8704 Sun Dec  9 22:31:36 2007  Tanaka Akira  <akr@fsij.org>
8706         * re.c (rb_reg_s_last_match): accept named capture's name.
8708 Sun Dec  9 15:57:53 2007  Tanaka Akira  <akr@fsij.org>
8710         * re.c (match_backref_number): new function for converting a backref
8711           name/number to an integer.
8712           (match_offset): use match_backref_number.
8713           (match_begin): ditto.
8714           (match_end): ditto.
8715           (name_to_backref_number): raise IndexError instead of RuntimeError.
8716           (match_inspect): show capture index.
8718 Sun Dec  9 14:59:15 2007  Koichi Sasada  <ko1@atdot.net>
8720         * eval_intern.h (CHECK_STACK_OVERFLOW): reserve frame size.
8721           [ruby-dev:32485]
8723 Sun Dec  9 14:38:25 2007  Koichi Sasada  <ko1@atdot.net>
8725         * vm.c (rb_thread_mark): use rb_gc_mark_maybe() for
8726           VM stack specified by mark_stack_len.  [ruby-dev:32462]
8728         * insnhelper.ci: clear vm stack extended by opt value.
8730 Sun Dec  9 14:08:47 2007  Tanaka Akira  <akr@fsij.org>
8732         * include/ruby/ruby.h (FilePathStringValue): defined.  similar to
8733           FilePathValue but no taint check.
8735         * file.c (rb_get_path_no_checksafe): implementation of
8736           FilePathStringValue.
8737           (rb_file_s_basename): use FilePathStringValue.
8738           (rb_file_s_dirname): ditto.
8739           (rb_file_s_extname): ditto.
8740           (rb_file_s_split): ditto.
8741           (rb_file_join): ditto.
8743         * dir.c (file_s_fnmatch): ditto.
8745 Sun Dec  9 12:49:34 2007  Tanaka Akira  <akr@fsij.org>
8747         * re.c (append_utf8): check unicode range.
8749 Sun Dec  9 12:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8751         * lib/cgi.rb (read_multipart): exclude blanks from header values.
8752           [ruby-list:44327]
8754 Sun Dec  9 12:18:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8756         * file.c (rb_get_path): use the original object if to_path method is
8757           not defined.  [ruby-dev:32473]
8759         * io.c (rb_f_open): call to_open on non-string objects, instead of
8760           to_str.  [ruby-dev:32473]
8762 Sun Dec  9 12:12:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8764         * string.c (tr_find): returns true if no characters to be removed is
8765           specified.
8767 Sun Dec  9 12:03:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8769         * parse.y (parser_magic_comment): delimits with a semicolon.
8771 Sun Dec  9 11:29:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8773         * string.c (tr_trans): get rid of segfaults when has multibytes but
8774           source sets have no multibytes.
8776 Sun Dec  9 04:01:28 2007  Tanaka Akira  <akr@fsij.org>
8778         * encoding.c (rb_enc_mbclen): return 1 if underlying implementation
8779           returns a length longer than e-p.
8780           (rb_enc_precise_mbclen): return needmore if underlying
8781           implementation returns a length longer than e-p.
8783 Sat Dec  8 17:59:40 2007  Tanaka Akira  <akr@fsij.org>
8785         * signal.c (posix_signal): return value.
8787 Sat Dec  8 17:22:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8789         * test/openssl/test_pkcs7.rb: Remove redundant module namespace.
8791 Sat Dec  8 17:07:10 2007  Tanaka Akira  <akr@fsij.org>
8793         * ruby.c (proc_options): make rb_raise format as a string literal to
8794           avoid warning.
8796 Sat Dec  8 16:18:16 2007  Tanaka Akira  <akr@fsij.org>
8798         * re.c (rb_reg_check_preprocess): new function for validating regexp
8799           fragment.
8801         * parse.y (regexp): invoke reg_fragment_check.
8802           (reg_fragment_check): defined.
8803           (reg_fragment_check_gen): defined.
8805 Sat Dec  8 11:06:29 2007  Tanaka Akira  <akr@fsij.org>
8807         * encoding.c (rb_enc_mbclen): make it never fail.
8808           (rb_enc_nth): don't check the return value of rb_enc_mbclen.
8809           (rb_enc_strlen): ditto.
8810           (rb_enc_precise_mbclen): return needmore(1) if e <= p.
8811           (rb_enc_get_ascii): new function for extracting ASCII character.
8813         * include/ruby/encoding.h (rb_enc_get_ascii): declared.
8815         * include/ruby/regex.h (ismbchar): removed.
8817         * re.c (rb_reg_expr_str): use rb_enc_get_ascii.
8818           (unescape_escaped_nonascii): use rb_enc_precise_mbclen to determine
8819           the termination of escaped non-ASCII character.
8820           (unescape_nonascii): use rb_enc_precise_mbclen.
8821           (rb_reg_quote): use rb_enc_get_ascii.
8822           (rb_reg_regsub): use rb_enc_get_ascii.
8824         * string.c (rb_str_reverse) don't check the return value of
8825           rb_enc_mbclen.
8826           (rb_str_split_m): don't call rb_enc_mbclen with e <= p.
8828         * parse.y (is_identchar): use ISASCII.
8829           (parser_ismbchar): removed.
8830           (parser_precise_mbclen): new macro.
8831           (parser_isascii): new macro.
8832           (parser_tokadd_mbchar): use parser_precise_mbclen to check invalid
8833           character precisely.
8834           (parser_tokadd_string): use parser_isascii.
8835           (parser_yylex): ditto.
8836           (is_special_global_name): don't call is_identchar with e <= p.
8837           (rb_enc_symname_p): ditto.
8839           [ruby-dev:32455]
8841         * ext/tk/sample/tkextlib/vu/canvSticker2.rb: remove coding cookie
8842           because the encoding is not UTF-8.  [ruby-dev:32475]
8844 Fri Dec  7 20:21:35 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8846         * ext/openssl/lib/net/ftptls.rb, ext/openssl/lib/net/telnets.rb:
8847           half-finished libraries are discontinued.
8849 Fri Dec  7 15:44:40 2007  Tanaka Akira  <akr@fsij.org>
8851         * lib/pp.rb: use Hash for recursion check as inspect.
8853 Fri Dec  7 15:04:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8855         * array.c (flatten): some performance improvements, based on a patch
8856           from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13877].
8857           [ruby-core:13851]
8859         * thread.c (rb_exec_recursive): use Hash instead of Array for
8860           performance improvement.  [ruby-core:13898]
8862         * thread.c (recursive_pop): use object ID.
8864 Thu Dec  6 19:52:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8866         * parse.y (arg): typo fixed ("!" -> "|") in the ripper code.
8868 Thu Dec  6 19:48:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
8870         * parse.y (arg): tUPLUS no longer works as identity operation any
8871           more.  inspired by [ruby-talk:265532].
8873 Thu Dec  6 18:22:11 2007  Tanaka Akira  <akr@fsij.org>
8875         * encoding.c (rb_enc_precise_mbclen): new function for mbclen with
8876           validation.
8878         * include/ruby/encoding.h (rb_enc_precise_mbclen): declared.
8879           (MBCLEN_CHARFOUND): new macro.
8880           (MBCLEN_INVALID): new macro.
8881           (MBCLEN_NEEDMORE): new macro.
8883         * include/ruby/oniguruma.h (OnigEncodingTypeST): replace mbc_enc_len
8884           by precise_mbc_enc_len.
8885           (ONIGENC_PRECISE_MBC_ENC_LEN): new macro.
8886           (ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND): new macro.
8887           (ONIGENC_CONSTRUCT_MBCLEN_INVALID): new macro.
8888           (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE): new macro.
8889           (ONIGENC_MBCLEN_CHARFOUND): new macro.
8890           (ONIGENC_MBCLEN_INVALID): new macro.
8891           (ONIGENC_MBCLEN_NEEDMORE): new macro.
8892           (ONIGENC_MBC_ENC_LEN): use ONIGENC_PRECISE_MBC_ENC_LEN.
8894         * enc/euc_jp.c: validation implemented.
8896         * enc/sjis.c: ditto.
8898         * enc/utf8.c: ditto.
8900         * string.c (rb_str_inspect): use rb_enc_precise_mbclen for invalid
8901           encoding.
8902           (rb_str_valid_encoding_p): new method String#valid_encoding?.
8904         * io.c (rb_io_getc): use rb_enc_precise_mbclen.
8906         [ruby-dev:32438]
8908 Thu Dec  6 01:37:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8910         * regparse.c (i_apply_case_fold): fix for negative character class.  a
8911           patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13884].
8913 Thu Dec  6 01:00:38 2007  NARUSE, Yui <naruse@ruby-lang.org>
8915         * ext/iconv/iconv.c (iconv_s_list): support NetBSD/Citrus iconv.
8917 Wed Dec  5 16:18:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8919         * proc.c (rb_proc_s_new): call initialize.  [ruby-core:13824]
8921         * proc.c (rb_proc_location): return file name and line number where
8922           the proc is defined.
8924         * thread.c (thread_s_new): call initialize.  [ruby-core:13835]
8926         * thread.c (thread_initialize): split initialize method.
8928 Wed Dec  5 15:25:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8930         * parse.y (rb_intern3): fix to changing encoding to default, and
8931           uncommented r13835, which is rare but not impossible.
8933 Wed Dec  5 15:15:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8935         * range.c (step_i, range_step): support non-fixnum steps.
8936           [ruby-talk:282100]
8938 Wed Dec  5 14:25:11 2007  Koichi Sasada  <ko1@atdot.net>
8940         * compile.c (iseq_compile_each): fix typo.
8942 Wed Dec  5 13:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8944         * parse.y (yycompile): get rid of tracing while parsing.
8945           [ruby-dev:31351]
8947         * thread.c (ruby_suppress_tracing): added a new parameter, which
8948           directs to call func always.
8950 Tue Dec  4 19:56:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8952         * ext/iconv/iconv.c (iconv_convert): should not set encoding unless
8953           the target encoding is supported.  [ruby-dev:32451]
8955 Tue Dec  4 17:34:17 2007  NARUSE, Yui  <naruse@ruby-lang.org>
8957         * ext/nkf/lib/kconv.rb (tojis, tosjis, toeuc, toutf8):
8958           set encoding. [ruby-dev:32447]
8960 Tue Dec  4 17:07:25 2007  NARUSE, Yui  <naruse@ruby-lang.org>
8962         * lib/json.rb, lib/json/*: moved to ext/json/lib.
8964 Tue Dec  4 16:34:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8966         * ext/iconv/iconv.c (iconv_create): achieve target encoding.
8968         * ext/iconv/iconv.c (iconv_convert, iconv_finish, iconv_iconv,
8969           iconv_conv): set result string encoding.  [ruby-dev:32446]
8971         * ext/iconv/iconv.c (iconv_initialize, iconv_s_open): set encoding to
8972           Iconv instance.
8974 Tue Dec  4 14:34:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8976         * ruby.c (process_options): reverted c flag.
8978 Tue Dec  4 11:23:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8980         * bignum.c (rb_cstr_to_inum): trailing spaces may exist at squeezing
8981           preceding 0s.  [ruby-core:13873]
8983 Mon Dec  3 11:51:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
8985         * ext/Win32API/*: removed or moved to ext/dl/win32.
8987         * ext/dl/win32/*: new. [ruby-dev:32387]
8989 Sun Dec  2 22:08:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8991         * parse.y (parser_tokadd_mbchar): fix for ASCII chars.  [ruby-dev:32432]
8993         * parse.y (parser_parse_string, parser_here_document): prevent false
8994           error messages.
8996 Sun Dec  2 20:43:22 2007  Tanaka Akira  <akr@fsij.org>
8998         * re.c (unescape_escaped_nonascii): fix mbclen argument.
9000 Sun Dec  2 15:47:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9002         * parse.y (parser_tokadd_mbchar): check insufficient multibyte char.
9003           [ruby-dev:32429]
9005 Sun Dec  2 15:42:16 2007  Kouhei Sutou  <kou@cozmixng.org>
9007         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.1 -> 0.2.2.
9009         * lib/rss/maker/itunes.rb: fixed new_itunes_category.
9010         * lib/rss/maker/taxonomy.rb: new_taxo_topic -> new_topic because
9011           of consistency.
9013         * test/rss/test_maker_itunes.rb, test/rss/test_itunes.rb: removed
9014           needless UTF-8 characters.
9016 Sun Dec  2 15:18:37 2007  Koichi Sasada  <ko1@atdot.net>
9018         * insnhelper.ci (vm_callee_setup_arg): fix error message.
9019           [ruby-dev:32430]
9021 Sun Dec  2 09:12:48 2007  Tanaka Akira  <akr@fsij.org>
9023         * parse.y (regexp): fix /#{}\xa1\xa2/e to be EUC-JP.
9024           (reg_fragment_setenc_gen): extracted from reg_compile_gen.
9026 Sun Dec  2 01:39:51 2007  Tanaka Akira  <akr@fsij.org>
9028         * include/ruby/intern.h (rb_uv_to_utf8): declared.
9030         * re.c (rb_reg_preprocess): new function for dynamic regexp with
9031           \u{} such as Regexp.new("\\u{6666}").
9032           (rb_reg_prepare_re): preprocess regexp for recompiling.
9033           (read_escaped_byte): new function.
9034           (unescape_escaped_nonascii): new function.
9035           (append_utf8): new function.
9036           (unescape_unicode_list): new function.
9037           (unescape_unicode_bmp): new function.
9038           (unescape_nonascii): new function.
9039           (rb_reg_initialize): preprocess regexp.
9041         * pack.c (rb_uv_to_utf8): renamed from uv_to_utf8.
9043         * parse.y (STR_NEW3): take func instead of has8 and hasmb.
9044           (parser_str_new): use default coderange mechanism except for regexp.
9045           (parser_tokadd_utf8): copy regexp source as-is.
9046           (parser_read_escape): UTF-8 stuff removed.
9047           (parser_tokadd_escape): has8bit and hasmb removed.
9048           (parser_tokadd_string): fix 8-bit single byte character with \u.
9049           (parser_parse_string): has8bit and hasmb removed.
9050           (parser_here_document): has8bit and hasmb removed.
9051           (parser_yylex): call parser_tokadd_utf8 instead of read_escape for
9052           UTF-8 character.
9054 Wed Dec  2 01:00:07 2007  James Edward Gray II  <jeg2@ruby-lang.org>
9056         * lib/xmlrpc/server.rb (XMLRPC::Server#server): Improve signal handling so
9057           pressing control-c in the controlling terminal or sending SIGTERM stops
9058           the XML-RPC server.
9060 Sat Dec  1 23:04:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9062         * encoding.c: rename primary_encoding -> default_external (encoding).
9064 Sat Dec  1 19:52:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
9066         * lib/date.rb (Time#to_datetime): use nsec instead of usec.
9068         * lib/date.rb (DateTime#to_time): second minute as an argument to
9069           Time::utc contains fractional part in rational; hence Time
9070           object may keep resolution at most nanosecond.
9072 Sat Dec  1 14:36:05 2007  Koichi Sasada  <ko1@atdot.net>
9074         * bootstraptest/test_knownbug.rb: move fixed bugs.
9076         * test/ruby/test_sprintf.rb: ditto.
9078         * test/yaml/test_yaml.rb: ditto.
9080 Sat Dec  1 13:24:47 2007  Koichi Sasada  <ko1@atdot.net>
9082         * insnhelper.ci (vm_yield_with_cfunc): fix to passing argc on third
9083           parameter of IFUNC.  [ruby-dev:32329]
9085         * enumerator.c: fix to pass exact number of argument.
9087         * eval.c (rb_yield_values2): added.
9089         * include/ruby/ruby.h: ditto.
9091         * bootstraptest/test_knownbug.rb: move a fixed test.
9093         * bootstraptest/test_block.rb: ditto.
9095 Sat Dec  1 10:45:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9097         * io.c (rb_f_open): use to_open for every non-string object.  path
9098           object may use method_missing.
9100 Sat Dec  1 09:44:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9102         * insns.def (concatarray, splatarray): use to_a instead of
9103           to_splat.
9105         * insnhelper.ci (caller_setup_args): ditto.
9107 Sat Dec  1 03:34:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9109         * parse.y (newline_node): always remove NODE_BEGIN.
9111 Fri Nov 30 23:48:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9113         * signal.c (ruby_signal): use SA_SIGINFO if available.
9114           [ ruby-Patches-6418 ]
9116 Fri Nov 30 22:52:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9118         * signal.c (trap_signm): SIGVTALRM no longer used for green
9119           thread.  [ruby-talk:281318]
9121         * signal.c (ruby_sig_finalize): do not install SIG_DFL handler if
9122           previous handler is sighandler().
9124 Fri Nov 30 21:02:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
9126         * lib/json.rb, lib/json/add/{core.rb, rails.rb},
9127           test/json/test_json_rails.rb: additional files of JSON 1.1.2.
9128           [ruby-dev:32405]
9130 Fri Nov 30 19:33:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9132         * ext/syck/rubyext.c (rb_syck_mktime): avoid segmentation fault.
9133           [ruby-core:13735]
9135 Fri Nov 30 19:05:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9137         * enum.c (enum_count): precise argument number check.
9139         * enum.c (enum_count): return Enumerator if no block given.
9141 Fri Nov 30 16:42:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9143         * enum.c (enum_take_while): returns Enumerator if no block given.
9145         * enum.c (enum_drop_while): ditto.
9147 Thu Nov 29 16:59:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9149         * parse.y (stmt): remove unnecessary NODE_BEGIN.  [ruby-core:13814]
9151 Thu Nov 29 06:45:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9153         * hash.c (rb_hash_eql): recursive comparison should be based on
9154           eql?  [ruby-core:13803]
9156 Wed Nov 28 18:08:00 2007  NARUSE, Yui  <naruse@ruby-lang.org>
9158         * ext/json, lib/json, test/json: Update to JSON 1.1.2.
9159           (RubyForge#15447)
9161         * math.c: fix typo.
9163 Wed Nov 28 16:29:35 2007  Koichi Sasada  <ko1@atdot.net>
9165         * insnhelper.ci (vm_invoke_block): should splat args.
9166           [ruby-dev:32392]
9168         * test/ruby/test_yield.rb: add tests for above.
9170 Wed Nov 28 14:43:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9172         * ext/extmk.rb (extract_makefile): use dldflags instead of DLDFLAGS to
9173           get rid of mixing $LDFLAGS and $ARCH_FLAG.
9175         * lib/mkmf.rb (configuration): ditto.
9177         * lib/mkmf.rb (create_makefile): support for extensions which has no
9178           shared object.
9180 Wed Nov 28 02:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9182         * bignum.c (big2str_find_n1): removed extraneous element.
9183           [ruby-dev:32351], [ruby-dev:32365]
9185         * bignum.c (big2str_find_n1): returns necessary digits now.
9187         * sprintf.c (remove_sign_bits): extends sign bit first.
9189 Tue Nov 27 15:53:43 2007  Koichi Sasada  <ko1@atdot.net>
9191         * compile.c (iseq_compile_each): "when *[],1" dumps core.
9192           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32350]
9194         * bootstraptest/test_syntax.rb: add a test for above.
9196 Tue Nov 27 15:40:05 2007  Koichi Sasada  <ko1@atdot.net>
9198         * compile.c (iseq_compile_each): "a[*b] += 1" dumps core.
9199           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32354]
9201         * bootstraptest/test_syntax.rb: add a test for above.
9203 Tue Nov 27 12:47:23 2007  Koichi Sasada  <ko1@atdot.net>
9205         * compile.c, insns.def: change return value of "defined?"
9206           for $&, $1, ... .  If such variables are defined,
9207           return "global-variable".
9209         * test/ruby/test_defined.rb: add tests.
9211         * bootstraptest/test_syntax.rb: fix a test.
9213 Tue Nov 27 11:54:46 2007  Koichi Sasada  <ko1@atdot.net>
9215         * insns.def: fix typo.
9217 Tue Nov 27 11:23:20 2007  Koichi Sasada  <ko1@atdot.net>
9219         * test_beginendblock.rb: add loop to wait signal.
9220           [ruby-dev:32332]
9222 Tue Nov 27 11:14:57 2007  Tanaka Akira  <akr@fsij.org>
9224         * include/ruby/encoding.h, encoding.c, re.c, string.c, parse.y:
9225           rename ENC_CODERANGE_SINGLE to ENC_CODERANGE_7BIT.
9226           rename ENC_CODERANGE_MULTI to ENC_CODERANGE_8BIT.
9227           Because single byte 8bit character, such as Shift_JIS 1byte katakana,
9228           is represented by ENC_CODERANGE_MULTI even if it is not multi byte.
9230 Tue Nov 27 10:45:45 2007  Koichi Sasada  <ko1@atdot.net>
9232         * eval.c (rb_method_missing): fix stack trace.
9234         * bootstraptest/test_knownbug.rb: move solved tests.
9236         * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto.
9238 Tue Nov 27 09:57:42 2007  Koichi Sasada  <ko1@atdot.net>
9240         * insns.def, compile.c: fix to allow dsym for alias/undef.
9241           [ruby-dev:32355]
9243         * bootstraptest/test_method.rb: add tests for above.
9245 Mon Nov 26 23:18:46 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
9247         * lib/drb/extserv.rb (initialize, stop_service): synchronize with
9248           ExtServManager.
9250         * test/drb/test_drb.rb (TestDRbEval): ignored.
9252 Mon Nov 26 17:32:16 2007  Tanaka Akira  <akr@fsij.org>
9254         * re.c (Init_Regexp): new method Regexp#fixed_encoding?
9255           [ruby-dev:32361]
9257 Mon Nov 26 13:28:14 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
9259         * lib/complex.rb: be able to create Complex(0, -0.0). [ruby-list:44268]
9261 Mon Nov 26 11:24:04 2007  Tanaka Akira  <akr@fsij.org>
9263         * re.c (rb_reg_fixed_encoding_p): extracted from rb_reg_prepare_re and
9264           rb_reg_s_union.
9265           (rb_reg_s_union): refactored.
9267 Mon Nov 26 10:44:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9269         * io.c (rb_read_internal, rb_sysopen_internal): remove C99 dependency.
9271 Sun Nov 25 22:21:35 2007  Tanaka Akira  <akr@fsij.org>
9273         * include/ruby/encoding.h (rb_enc_str_asciionly_p): declared.
9274           (rb_enc_str_asciicompat_p): defined.
9276         * re.c (rb_reg_initialize_str): use rb_enc_str_asciionly_p.
9277           (rb_reg_quote): return ascii-8bit string if the argument is
9278           ascii-only to generate encoding generic regexp if possible.
9279           (rb_reg_s_union): fix encoding handling.  [ruby-dev:32094]
9281         * string.c (rb_enc_str_asciionly_p): defined.
9283 Sun Nov 25 12:12:03 2007  Eric Hodel  <drbrain@segment7.net>
9285         * gem_prelude.rb: Import fast-loading gem_prelude.rb from RubyGems.
9287         * lib/rubygems*: Import RubyGems r1516.
9289 Sat Nov 24 23:25:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9291         * test/ruby/test_eval.rb (TestEval::test_instance_eval_cvar):
9292           updated not to modify class variable of Object class.
9294 Fri Nov 23 17:34:24 2007  Koichi Sasada  <ko1@atdot.net>
9296         * io.c: add rb_read_internal() as blocking function.
9298 Fri Nov 23 17:33:39 2007  Koichi Sasada  <ko1@atdot.net>
9300         * vm.c: fix comment.
9302 Fri Nov 23 17:26:11 2007  Koichi Sasada  <ko1@atdot.net>
9304         * bootstraptest/test_knownbug.rb: move solved tests.
9306         * bootstraptest/test_io.rb, test_marshal.rb, test_objectspace.rb:
9307           ditto.
9309         * test/ruby/test_integer.rb, test_regexp.rb: ditto.
9311 Fri Nov 23 15:59:04 2007  Tanaka Akira  <akr@fsij.org>
9313         * struct.c (rb_struct_alloc_noinit): new function.
9314           (rb_struct_define_without_accessor): add allocator to the arguments.
9316         * range.c (range_alloc): re-introduced using rb_struct_alloc_noinit.
9318 Fri Nov 23 15:27:43 2007  Tanaka Akira  <akr@fsij.org>
9320         * re.c (REG_CASESTATE): unused macro removed.
9321           (rb_reg_prepare_re): check encoding difference.
9322           (rb_reg_initialize): check 8bit byte.
9324         * parse.y (parser_tokadd_escape): fix has8bit.
9326           [ruby-dev:32113]
9328 Fri Nov 23 15:16:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9330         * variable.c (rb_f_global_variables): variable names should not
9331           duplicate.  [ruby-dev:32344]
9333 Fri Nov 23 13:34:08 2007  Tanaka Akira  <akr@fsij.org>
9335         * struct.c (rb_struct_define_without_accessor): new function.
9337         * range.c (range_alloc): removed.
9338           (Init_Range): use rb_struct_define_without_accessor.
9340           based on [ruby-dev:32327].
9342 Fri Nov 23 11:01:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9344         * re.c (match_begin): should return offset by character.
9345           [ruby-dev:32331]
9347         * re.c (match_end): ditto.
9349         * re.c (rb_reg_search): ditto.
9351 Fri Nov 23 10:44:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9353         * compile.c (defined_expr): defined(method(x)) dumped core.  a
9354           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32335]
9356 Wed Nov 21 18:03:49 2007  Koichi Sasada  <ko1@atdot.net>
9358         * vm.c: fix to recycle thread data (VM stack).
9360         * thread.c: ditto.
9362         * benchmark/bm_vm3_thread_create_join.rb: add loop count.
9364 Wed Nov 21 18:02:10 2007  Koichi Sasada  <ko1@atdot.net>
9366         * benchmark/driver.rb: add path to trunk/lib if driver runner is
9367           in build directory.
9369 Wed Nov 21 16:39:21 2007  Tanaka Akira  <akr@fsij.org>
9371         * test/fileutils/fileasserts.rb (assert_equal_timestamp): new assert
9372           to test tv_sec only for filestamp resolution portability.
9373           (assert_same_entry): use assert_same_entry for mtime comparison.
9375 Wed Nov 21 14:55:13 2007  Koichi Sasada  <ko1@atdot.net>
9377         * array.c (rb_ary_permutation): add gc guard codes.
9379 Wed Nov 21 11:16:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9381         * insnhelper.ci (vm_search_normal_superclass): rename function.
9383         * insnhelper.ci (vm_search_superclass): ditto.
9385         * proc.c (struct METHOD): rename rklass -> rclass.
9387 Wed Nov 21 03:12:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9389         * process.c (rb_f_system): returns nil on execution failure.
9390           [ruby-core:13715]
9392 Wed Nov 21 01:04:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9394         * object.c (nil_plus): remove unused function.  [ruby-core:13737]
9396 Tue Nov 20 21:46:46 2007  Tanaka Akira  <akr@fsij.org>
9398         * time.c (time_mload): ignore invalid digits in submicro.
9400 Tue Nov 20 20:33:32 2007  Koichi Sasada  <ko1@atdot.net>
9402         * include/ruby/ruby.h: rename RFloat#double_value -> float_value.
9404         * numeric.c, parse.y: ditto.
9406 Tue Nov 20 19:36:21 2007  Koichi Sasada  <ko1@atdot.net>
9408         * gc.h, vm_core.h: decl of rb_gc_save_machine_context()
9409           should be at vm_core.h.
9411         * include/ruby/ruby.h, intern.h: remove type rb_thread_t.
9413         * include/ruby/intern.h: change rb_unblock_function_t,
9414           rb_unblock_function_t.
9416         * file.c, process.c: apply above changes.
9418         * thread.c, thread_pthread.ci, thread_win32.ci: ditto.
9420         * io.c: support blocking open (2). [ruby-core:13614]
9422 Tue Nov 20 17:10:11 2007  Tanaka Akira  <akr@fsij.org>
9424         * io.c (rb_io_close_on_exec_p): new method IO#close_on_exec?.
9425           (rb_io_set_close_on_exec): new method IO#close_on_exec=.
9426           [ruby-dev:32323]
9428 Tue Nov 20 16:24:31 2007  Tanaka Akira  <akr@fsij.org>
9430         * gc.c (gc_mark_children): obj->as.file.fptr may be 0 for T_FILE.
9432 Tue Nov 20 15:09:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9434         * parse.y (parser_read_escape): has8bit flag may be set with control
9435           escape.  [ruby-core:13722]
9437         * parse.y (parser_prepare): set begging after BOM if exists.
9438           [ruby-core:13718]
9440 Tue Nov 20 14:55:37 2007  Eric Hodel  <drbrain@segment7.net>
9442         * lib/rubygems*: Update to RubyGems 0.9.5.
9444 Tue Nov 20 13:00:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
9446         * include/ruby/win32.h win32/win32.c (rb_w32_pipe_exec): use dual fd
9447           instead of socketpair when mode is RDWR.
9449         * io.c (pipe_open): pass &write_fd to rb_w32_pipe_exec().
9451         * io.c (popen_redirect): define only when HAVE_FORK.
9453 Tue Nov 20 12:12:04 2007  Tanaka Akira  <akr@fsij.org>
9455         * include/ruby/io.h (rb_io_t): add tied_io_for_writing member.
9457         * io.c: use tied_io_for_writing for duplex popen.
9459         * gc.c: mark tied_io_for_writing.
9461         * common.mk: gc.o depends io.h.
9463           [ruby-dev:32205]
9465 Tue Nov 20 11:59:33 2007  Tanaka Akira  <akr@fsij.org>
9467         * test/drb/test_drb.rb: rename TestRubyYield to TestDRbRubyYield to
9468           avoid name crash with test/ruby/test_yield.rb.
9469           TestRuby18Yield is renamed to TestDRbRuby18Yield too.
9471 Tue Nov 20 03:24:42 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
9473         * lib/drb/extservm.rb: merged from ruby_1_8 branch.
9475         * lib/drb/acl.rb: ditto.
9477         * lib/drb/ssl.rb: ditto.
9479         * lib/drb/unix.rb: ditto.
9481         * lib/drb/drb.rb: ditto.
9483         * lib/drb/observer.rb: ditto.
9485         * lib/drb/invokemethod.rb: ditto.
9487         * test/drb/test_drbssl.rb: ditto.
9489         * test/drb/test_drb.rb: ditto.
9491         * test/drb/drbtest.rb: ditto.
9493         * test/drb/test_drbunix.rb: ditto.
9495 Tue Nov 20 00:52:46 2007  Tanaka Akira  <akr@fsij.org>
9497         * test/fileutils/fileasserts.rb (assert_equal_time): show nsec if
9498           assertion fails but time.to_s equals.
9499           (assert_same_entry): use assert_equal_time.
9501         * test/fileutils/test_fileutils.rb (test_install): use
9502           assert_equal_time.
9504 Mon Nov 19 18:46:49 2007  Tanaka Akira  <akr@fsij.org>
9506         * file.c (utime_internal): fallback utimensat to utimes.
9508 Mon Nov 19 17:51:27 2007  Tanaka Akira  <akr@fsij.org>
9510         * configure.in: check struct timespec, clock_gettime, utimensat,
9511           struct stat.st_atim,
9512           struct stat.st_atimespec,
9513           struct stat.st_atimensec,
9514           struct stat.st_mtim,
9515           struct stat.st_mtimespec,
9516           struct stat.st_mtimensec,
9517           struct stat.st_ctim,
9518           struct stat.st_ctimespec,
9519           struct stat.st_ctimensec.
9521         * include/ruby/missing.h: provide struct timespec if not available.
9523         * time.c: support nanosecond-resolution using struct timespec.
9524           (time_nsec): new method: Time#nsec and Time#tv_nsec.
9526         * include/ruby/intern.h: provide rb_time_nano_new.
9528         * file.c (utime_internal): use utimensat if available.
9529           (rb_file_s_utime): refactored.
9530           (rb_f_test): use stat_atime, stat_mtime, stat_ctime.
9531           (rb_stat_cmp): check tv_nsec.
9532           (stat_atimespec): new function.
9533           (stat_atime): ditto.
9534           (stat_mtimespec): ditto.
9535           (stat_mtime): ditto.
9536           (stat_ctimespec): ditto.
9537           (stat_ctime): ditto.
9538           (rb_stat_atime): use stat_atime.
9539           (rb_file_s_atime): ditto.
9540           (rb_file_atime): ditto.
9541           (rb_stat_mtime): use stat_mtime.
9542           (rb_file_s_mtime): ditto.
9543           (rb_file_mtime): ditto.
9544           (rb_file_ctime): use stat_ctime.
9545           (rb_file_s_ctime): ditto.
9546           (rb_stat_ctime): ditto.
9548         * variable.c (rb_copy_generic_ivar): clear clone's instance variables
9549           if obj has no instance variable.
9551         * marshal.c (w_object): dump instance variables of generated string
9552           for TYPE_USERDEF, even if original object has instance variables.
9554         * lib/time.rb (Time#xmlschema): use nsec instead of usec.
9556         [ruby-dev:32306]
9558 Mon Nov 19 17:48:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9560         * object.c (rb_class_superclass): should not raise exception for
9561           BasicObject.  [ruby-Bugs-15668]
9563 Mon Nov 19 16:04:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9565         * array.c (rb_ary_permutation): gives all permutations of elements
9566           if no argument given.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
9567           [ruby-dev:32309]
9569 Mon Nov 19 02:44:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9571         * compile.c (iseq_compile_each): alias and undef accept dsyms as well
9572           as literals.  [ruby-dev:32308]
9574 Mon Nov 19 02:31:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9576         * eval_method.ci (rb_add_method): no redefinition warning for undef.
9578 Mon Nov 19 01:53:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9580         * parse.y (parser_read_escape): disallow control and meta modifiers
9581           for non-ASCII characters.  [ruby-core:13685]
9583 Sun Nov 18 20:47:41 2007  Tanaka Akira  <akr@fsij.org>
9585         * marshal.c (mark_dump_arg): it may be called after dump_ensure.
9587 Sun Nov 18 18:27:47 2007  Tanaka Akira  <akr@fsij.org>
9589         * time.c (time_minus): fix Time.at(2**60+1) - Time.at(2**60).
9591 Sun Nov 18 17:28:49 2007  Tanaka Akira  <akr@fsij.org>
9593         * time.c (time_arg): show actual year in 2-3 digits year warning.
9594           (time_mdump): show actual year in "year too big to marshal" error.
9596 Sun Nov 18 14:03:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9598         * eval_method.ci (rb_alias): do not call hook functions until
9599           initialization finishes.  [ruby-talk:279538]
9601 Sun Nov 18 09:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9603         * lib/mkmf.rb (String#tr_cpp): make preprocessor identifiers.
9605 Sun Nov 18 05:19:46 2007  Tanaka Akira  <akr@fsij.org>
9607         * lib/mkmf.rb (have_struct_member): define HAVE_type_member.
9609 Sat Nov 17 23:51:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
9611         * ext/win32ole/win32ole.c (ole_invoke): bug fix. [ruby-talk:279100]
9613 Sat Nov 17 23:21:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9615         * parse.y (parser_yylex): should clear parser->tokp as well.
9616           [ruby-dev:32250]
9618         * parse.y: remove NEED_ASSOC that break test_parser_events.
9620         * parse.y (parser_yylex): should not decrement line numbers at the
9621           end of file.
9623         * file.c (rb_find_file_ext): search .rb files first through in the
9624           loadpath.
9626 Fri Nov 16 23:31:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9628         * bignum.c (rb_big_odd_p): new method added.  a patch from Tadashi
9629           Saito <shiba AT mail2.accsnet.ne.jp>.  [ruby-dev:32305]
9631         * bignum.c (rb_big_even_p): ditto.
9633 Fri Nov 16 17:41:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9635         * ext/iconv/iconv.c (Document-class): moved the simplest example to
9636           the top.
9638         * ext/iconv/iconv.c (iconv_s_iconv): Document-method: needs class
9639           prefix for class method.  [ruby-core:13542]
9641         * ext/iconv/iconv.c (iconv_iconv): also instance method needs to be
9642           qualified.
9644 Fri Nov 16 16:26:57 2007  Shugo Maeda  <shugo@ruby-lang.org>
9646         * include/ruby/ruby.h: added some declarations for event hooks.
9648         * lib/profile.rb: set VM::InstructionSequence.compile_option.
9650 Fri Nov 16 11:16:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9652         * lib/yaml/rubytypes.rb (String#is_binary_data?): use Integer#fdiv.
9654 Fri Nov 16 03:36:01 2007  why the lucky stiff  <why@ruby-lang.org>
9656         * ext/syck/rubyext.c: Node#value defined twice.
9658         * lib/yaml/: several method redefinitions causing warnings.
9660 Fri Nov 16 03:01:00 2007  why the lucky stiff  <why@ruby-lang.org>
9662         * lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit.
9664 Fri Nov 16 02:51:59 2007  why the lucky stiff  <why@ruby-lang.org>
9666         * lib/yaml.rb (quick_emit): use combination of object_id and hash to
9667           identify repeated object references, since GC will reuse memory of
9668                 objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698]
9670 Thu Nov 15 19:49:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
9672         * ext/curses/extconf.rb: check macro if cannot find func.
9673           [ruby-list:44224]
9675 Thu Nov 15 18:04:06 2007  Tanaka Akira  <akr@fsij.org>
9677         * tool/compile_prelude.rb: fix TMP_RUBY_PREFIX for relative load path
9678           environment.
9680 Thu Nov 15 17:28:21 2007  Tanaka Akira  <akr@fsij.org>
9682         * tool/compile_prelude.rb: absolute path may not start with a slash.
9683           pointed by usa.
9685 Thu Nov 15 17:07:54 2007  Tanaka Akira  <akr@fsij.org>
9687         * tool/compile_prelude.rb: fix first substitution.
9688           use constant for prefix.
9689           pointed by Richard Kilmer.
9691 Thu Nov 15 14:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9693         * common.mk (prereq): added auto generated sources.  [ruby-dev:32280]
9695 Thu Nov 15 12:31:13 2007  Tanaka Akira  <akr@fsij.org>
9697         * tool/compile_prelude.rb: use constant for prefix.
9699 Thu Nov 15 12:24:39 2007  Tanaka Akira  <akr@fsij.org>
9701         * tool/compile_prelude.rb: use simple template system for source
9702           code generation.
9704 Thu Nov 15 12:19:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9706         * lib/cgi/session.rb (CGI::Session::FileStore::restore): use
9707           lockfile for exclusive locks.  a patch from <tommy AT tmtm.org>.
9708           [ruby-dev:32296]
9710 Thu Nov 15 12:14:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9712         * tool/compile_prelude.rb (c_esc): need to escape closing brace.
9714 Thu Nov 15 11:52:16 2007  Tanaka Akira  <akr@fsij.org>
9716         * tool/compile_prelude.rb: adjust RbConfig::CONFIG paths relative
9717           to the installation path.
9719 Thu Nov 15 11:25:20 2007  Tanaka Akira  <akr@fsij.org>
9721         * ruby.c (usage): fix typo on --disable-gems option.
9722           pointed by Richard Kilmer.
9724 Wed Nov 14 16:16:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9726         * test/net/http/test_https_proxy.rb
9727           (HTTPSProxyTest::test_https_proxy_authentication): initialize
9728           local variable 't' first.  [ruby-dev:32253]
9730 Wed Nov 14 15:39:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9732         * test/socket/test_socket.rb: update not to use 1.8 assignment to
9733           external local variable in the block parameters.  [ruby-dev:32251]
9735         * test/strscan/test_stringscanner.rb: avoid $KCODE, and use
9736           String#force_encoding().  [ruby-dev:32251]
9738 Wed Nov 14 14:04:42 2007  Tanaka Akira  <akr@fsij.org>
9740         * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
9741           rename ext_prelude.c to prelude.c
9743         * win32/Makefile.sub: ditto.
9745         * bcc32/Makefile.sub: ditto.
9747 Wed Nov 14 07:09:48 2007  Koichi Sasada  <ko1@atdot.net>
9749         * blockinlining.c, compile.c, compile.h, debug.c, debug.h,
9750           id.c, insnhelper.h, insns.def, thread.c, thread_pthread.ci,
9751           thread_pthread.h, thread_win32.ci, thread_win32.h, vm.h,
9752           vm_dump.c, vm_evalbody.ci, vm_opts.h: fix comments and
9753           copyright year.
9755 Wed Nov 14 07:07:51 2007  Koichi Sasada  <ko1@atdot.net>
9757         * tool/makedocs.rb, template/insnstbl.html: removed.
9759 Wed Nov 14 02:50:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9761         * common.mk (parse.c): dependency also needs vpath.
9763         * common.mk (node_name.inc, prelude.c): VPATH in nmake does not
9764           work for targets of explicit rules.
9766 Wed Nov 14 02:11:38 2007  Tanaka Akira  <akr@fsij.org>
9768         * missing/isinf.c (isinf): don't define if the macro is defined.
9770         * configure.in: no need to set ac_cv_func_isinf=yes on non-gcc
9771           solaris.
9773 Wed Nov 14 01:34:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9775         * numeric.c (round): fallback definition.
9777         * numeric.c (flo_divmod, flo_round): use round() always.
9778           [ruby-dev:32269]
9780 Wed Nov 14 00:33:49 2007  Koichi Sasada  <ko1@atdot.net>
9782         * include/ruby/ruby.h: introduce 2 macros:
9783           RFLOAT_VALUE(v), DOUBLE2NUM(dbl).
9784           Rename RFloat#value -> RFloat#double_value.
9785           Do not touch RFloat#double_value directly.
9787         * bignum.c, insns.def, marshal.c, math.c, numeric.c, object.c,
9788           pack.c, parse.y, process.c, random.c, sprintf.c, string.c,
9789           time.c: apply above changes.
9791         * ext/dl/mkcallback.rb, ext/json/ext/generator/generator.c:
9792           ditto.
9794 Wed Nov 14 00:15:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9796         * tool/ytab.sed: get rid of GNU sed feature.  a patch from Laurent
9797           Sansonetti <laurent.sansonetti AT gmail.com> in [ruby-core:13470].
9799 Tue Nov 13 21:41:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9801         * common.mk (parse.c), ext/ripper/depend (ripper.c): process after
9802           bison with sed.  [ruby-dev:32204]
9804         * ruby.c (proc_options): use yydebug in cmdline_options.
9806         * ruby.c (process_options): set yydebug flag of parser.
9808         * parse.y (yydebug): moved into struct parser_params.
9810         * parse.y (rb_parser_get_yydebug, rb_parser_set_yydebug): parser
9811           generic methods.
9813         * */Makefile.sub (parse.c): moved to common.mk.
9815         * tool/ytab.sed: comment out yydebug definition, and substitute
9816           yyerror with parser_yyerror.
9818 Tue Nov 13 16:33:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9820         * numeric.c (flodivmod): work around for infinity.
9822         * numeric.c (flo_divmod): work around for platforms have no round().
9823           [ruby-dev:32247]
9825 Tue Nov 13 15:26:33 2007  Tanaka Akira  <akr@fsij.org>
9827         * lex.c.blt: moved from lex.c.
9829         * lex.c.src: copied from keywords.  This is the source of lex.c.blt.
9831         * Makefile.in (lex.c): use lex.c.blt if keywords is same as lex.c.src.
9833         * win32/Makefile.sub (lex.c): re-introduce copy rule.
9835         * bcc32/Makefile.sub (lex.c): ditto.
9837         * wince/Makefile.sub (lex.c): ditto.
9839 Tue Nov 13 15:21:52 2007  Koichi Sasada  <ko1@atdot.net>
9841         * compile.c (iseq_specialized_instruction): check argc.
9843 Tue Nov 13 14:44:32 2007  why the lucky stiff  <why@ruby-lang.org>
9845         * test/yaml/test_yaml.rb: fixed the failing YAML Struct test
9846           at ko1's request.
9848 Tue Nov 13 02:57:04 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
9850         * numeric.c (flo_divmod): round to the nearest integer.
9851           [ ruby-Bugs-14540 ]
9853 Tue Nov 13 00:36:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
9855         * test/ruby/test_settracefunc.rb: fixed tests for set_trace_func.
9857 Mon Nov 12 19:47:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
9859         * thread.c (call_trace_proc): should return value.
9861 Mon Nov 12 19:45:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
9863         * {bcc,win}32/Makefile.sub (miniruby): use $(COMMONOBJS) and $(DMYEXT)
9864           instead of $(LIBRUBY_A).
9866 Mon Nov 12 18:32:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9868         * {bcc,win}32/Makefile.sub (MINIOBJS): added prelude.$(OBJEXT).
9870 Mon Nov 12 17:13:23 2007  Tanaka Akira  <akr@fsij.org>
9872         * Makefile.in, common.mk: add prelude.o to MINIOBJS.
9874 Mon Nov 12 16:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9876         * lib/mkmf.rb (create_makefile): rdoc about srcprefix.  a patch from
9877           Daniel Berger <djberg96 AT gmail.com> in [ruby-core:13378].
9879 Mon Nov 12 16:48:09 2007  Tanaka Akira  <akr@fsij.org>
9881         * Makefile.in, common.mk: add ext_prelude.o to OBJS.
9883 Mon Nov 12 13:57:39 2007  Tanaka Akira  <akr@fsij.org>
9885         * configure.in (MINIDLNOBJS): removed.
9886           (MINIOBJS): set to dln.o if dmydln.o is not used.
9888         * Makefile.in (miniruby): use MINIOBJS instead of MINIDLNOBJS.
9890 Mon Nov 12 13:53:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
9892         * misc/ruby-mode.el (ruby-parse-partial): handle stringified
9893           symbols properly using ruby-forward-string.
9895 Mon Nov 12 12:17:59 2007  Tanaka Akira  <akr@fsij.org>
9897         * configure.in (MINIDLNOBJS): defined.
9899         * Makefile.in (miniruby): use MINIDLNOBJS and COMMONOBJS instead of
9900           MINIOBJS and OBJS to avoid linking both dmydln.o and dln.o.
9902 Sun Nov 11 20:32:45 2007  Tanaka Akira  <akr@fsij.org>
9904         * {win32,wince,bcc32}/Makefile.sub: delete lex.c rule.
9906 Sun Nov 11 19:40:52 2007  Tanaka Akira  <akr@fsij.org>
9908         * Makefile.in (lex.c): simplified.
9910 Sun Nov 11 18:31:48 2007  Tanaka Akira  <akr@fsij.org>
9912         * Makefile.in (lex.c): touch lex.c if gperf failed but lex.c exists.
9913           Although this may cause non-updated lex.c,
9914           svn co may generate keywords newer than lex.c especially on
9915           a file system which can record fractional mtime such as XFS.
9917 Sun Nov 11 17:32:46 2007  Shugo Maeda  <shugo@ruby-lang.org>
9919         * insnhelper.ci (vm_call_method): pass mn->nd_clss to
9920           vm_call_cfunc() instead of klass.
9922         * vm.c (rb_thread_method_id_and_klass): traverse parent_iseq.
9924         * thread.c (call_trace_proc): use rb_thread_method_id_and_klass().
9926 Sun Nov 11 16:54:25 2007  Tanaka Akira  <akr@fsij.org>
9928         * lex.c: renamed from lex.c.blt.
9930         * Makefile.in (lex.c): use find command to check mtime.
9932 Sun Nov 11 05:34:13 2007  Eric Hodel  <drbrain@segment7.net>
9934         * bin/gem: Add forgotten gem command.
9936 Sat Nov 10 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
9938         * string.c (tr_trans): cast to unsigned char after dereference
9939           a pointer to a char to avoid SEGV with "\377".tr("a", "b").
9940           on FreeBSD/amd64.
9942 Sat Nov 10 23:08:53 2007  Tanaka Akira  <akr@fsij.org>
9944         * configure.in, common.mk, Makefile.in: don't generate
9945           libminiruby-static.a.
9947 Sat Nov 10 19:46:54 2007  Tanaka Akira  <akr@fsij.org>
9949         * configure.in, common.mk, Makefile.in: generate libminiruby-static.a
9950           which contains prelude.o for miniruby.
9952 Sat Nov 10 18:10:07 2007  Tanaka Akira  <akr@fsij.org>
9954         * gem_prelude.rb: new file for gem libraries.  currently empty.
9956         * common.mk: generate ext_prelude.c by prelude.rb and gem_prelude.rb.
9957           ruby (not miniruby) is linked with ext_prelude.o instead of
9958           prelude.o.
9960         * inits.c (rb_call_inits): don't call Init_prelude.
9962         * ruby.c: support --disable-gems option.
9963           (ruby_init_gems): new function to define Gem::Enable and
9964           invoke Init_prelude.
9965           (process_options): call ruby_init_gems just after
9966           ruby_init_loadpath.
9968         * tool/compile_prelude.rb: support multiple files.
9970 Sat Nov 10 17:27:55 2007  Shugo Maeda  <shugo@ruby-lang.org>
9972         * thread.c (call_trace_proc): don't call ID2SYM() for ID_ALLOCATOR
9973           to avoid SEGV.
9975 Sat Nov 10 16:37:07 2007  Eric Hodel  <drbrain@segment7.net>
9977         * lib/rubygems: Import RubyGems revision 1493.
9979         * lib/rubygems.rb: ditto.
9981         * lib/ubygems.rb: ditto.
9983         * lib/rbconfig/datadir.rb: ditto.
9985         * test/rubygems: ditto.
9987 Sat Nov 10 16:34:21 2007  Eric Hodel  <drbrain@segment7.net>
9989         * lib/soap/property.rb: Don't override Enumerable#inject for 1.9.
9991 Sat Nov 10 14:43:30 2007  David Flanagan  <davidflanagan@ruby-lang.org>
9993         * parse.y: use ASCII encoding for string literals that are
9994                 7-bit clean, fixing regression from my previous patch
9996 Sat Nov 10 13:18:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9998         * {bcc32,win32}/Makefile.sub: vendor_ruby support.
10000 Fri Nov  9 23:33:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10002         * parse.y (parser_nextc): added single line read forward buffer.
10004         * parse.y (parser_yylex): adjust line number for fluent interface.
10006 Fri Nov  9 22:04:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10008         * vm.h (FRAME_MAGIC_MASK_BITS): bits of FRAME_MAGIC_MASK.
10010         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): use shift operations.
10012 Fri Nov  9 21:46:28 2007  Koichi Sasada  <ko1@atdot.net>
10014         * eval.c (eval): should be volatile value for GC.
10016 Fri Nov  9 17:48:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10018         * ruby.c (locale_encoding): guesstimate encoding from environment
10019           variables.  [ruby-core:13315]
10021         * ruby.c (process_options): set primary encoding from environment.
10023 Fri Nov  9 16:51:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10025         * io.c (rb_io_each_byte): should update rbuf_off and rbuf_len for
10026           each iteration.  [ruby-dev:31659][ruby-dev:32192]
10028         * variable.c (rb_cvar_set): cvar assignment obey same rule to cvar
10029           reference.  [ruby-dev:32192]
10031 Fri Nov  9 15:52:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10033         * encoding.c (enc_check_encoding, rb_set_primary_encoding): ENCODING
10034           is no longer in FL_USERS flags.
10036 Fri Nov  9 15:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10038         * string.c (rb_str_squeeze_bang): initialize squeezing table if no
10039           arguments given.
10041 Fri Nov  9 13:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10043         * enum.c (each_with_index_i): use rb_yield_values() for
10044           compatibility with Enumerator#with_index().  a patch from Yusuke
10045           ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32195]
10047 Fri Nov  9 13:45:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10049         * test/ruby/test_iterator.rb (TestIterator::IterTest::each):
10050           #each_pair is now alias to #each.  [ruby-dev:32192]
10052         * test/ruby/test_iterator.rb (TestIterator::test_assoc_yield):
10053           ditto
10055 Fri Nov  9 12:56:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10057         * eval_load.c (loaded_feature_path): check with type of given feature.
10059 Fri Nov  9 12:43:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10061         * test/ruby/test_basicinstructions.rb: updated for new class
10062           behavior.  [ruby-dev:32192]
10064         * encoding.c (enc_name): Encoding should not rely on ENCODING in
10065           the FL_USERS flags.
10067         * encoding.c (rb_enc_from_encoding): do not call rb_enc_associate
10068           for encoding itself.
10070         * encoding.c (enc_register_at): ditto.
10072         * marshal.c (r_ivar): do not set real instance variable for
10073           encoding data associated.
10075 Fri Nov  9 10:43:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10077         * eval.c (send_internal): use self in the previous frame to check for
10078           protected methods.  [ruby-core:13254]
10080         * insnhelper.ci (vm_call_method): send! method has gone.
10082 Fri Nov  9 10:38:13 2007  Koichi Sasada  <ko1@atdot.net>
10084         * marshal.c (w_object): should be SPECIAL_CONST_P() instead of
10085           IMMEDIATE_P().
10087 Fri Nov  9 10:29:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10089         * eval.c (rb_invoke_method): check if invoked in function style.
10090           [ruby-core:13245]
10092         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): stores and returns VM
10093           calling flags.
10095         * vm.c (rb_vm_cfunc_funcall_p): returns if the current method is
10096           invoked in function style.
10098 Fri Nov  9 10:10:21 2007  Koichi Sasada  <ko1@atdot.net>
10100         * cont.c: add rb_context_t#type.
10102 Fri Nov  9 10:05:54 2007  Koichi Sasada  <ko1@atdot.net>
10104         * ruby.c (set_arg0): fix breaking environ bugs.
10106 Fri Nov  9 07:26:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10108         * random.c: update MT URL.[ruby-core:13305].
10110 Thu Nov  8 17:09:55 2007  David Flanagan  <davidflanagan@ruby-lang.org>
10112         * object.c: improve docs for Object.tap
10114         * ChangeLog: fix bogus dates on my previous entries
10116 Thu Nov  8 15:13:56 2007 David Flanagan <davidflanagan@ruby-lang.org>
10118         * parse.y: fix segfault with \x escapes in regexps
10119           delete unused #if 0 code regions from previous patch
10121 Thu Nov  8 12:12:10 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10123         * parse.y (parser_read_escape): remove C99/gcc-ism.
10125 Thu Nov  8 07:54:22 2007 David Flanagan <davidflanagan@ruby-lang.org>
10127         * parse.y: patch, based on Nobu's, work to support \u escapes
10128                    also modifications for better coderange detection
10130         * test/ruby/test_unicode_escapes.rb: test cases
10132         * test/ruby/test_mixed_unicode_escapes.rb: mixed encoding test cases
10134 Thu Nov  8 07:14:37 2007 David Flanagan <davidflanagan@ruby-lang.org>
10136         * parse.y (rb_intern3): commented out broken code that prevented
10137           correct interning of multi-byte symbols.  Without this patch
10138           :x==:x is false when x is a multi-byte character.
10140 Thu Nov  8 07:04:31 2007 David Flanagan <davidflanagan@ruby-lang.org>
10142         * string.c (tr_setup_table, tr_trans): fix test failures
10143           in test/ruby/test_string.rb
10145 Wed Nov  7 15:07:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10147         * enum.c (enum_each_with_index): make different arrays at each
10148           iteration.  [ruby-dev:32181]
10150 Wed Nov  7 05:17:24 2007  David Flanagan <davidflanagan@ruby-lang.org>
10152         * eval.c: fix typo in invoke_method documentation
10154 Wed Nov  7 03:52:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10156         * array.c (rb_ary_product): core dumped with non array arguments.
10157           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32180]
10159 Wed Nov  7 03:32:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10161         * lib/rexml/encodings/SHIFT-JIS.rb (REXML::Encoding): place -x for
10162           nkf conversion.  a patch from <moonwolf AT moonwolf.com>.
10163           [ruby-dev:32183]
10165 Wed Nov  7 02:59:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10167         * array.c (rb_ary_each_index): should return meaningful value.
10169 Tue Nov  6 16:37:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10171         * eval_load.c (loaded_feature_path): need to expand relative paths.
10173         * eval_load.c (rb_feature_p): check if the feature is loading with
10174           load path.  [ruby-dev:31932]
10176         * eval_load.c (load_lock): check the result of barrier waiting.
10178         * thread.c (rb_barrier_wait): check if owned by the current thread.
10180         * thread.c (rb_barrier_release): ditto.
10182 Mon Nov  5 08:01:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10184         * eval.c (Init_eval): move #send to Kernel module from BasicObject.
10186 Mon Nov  5 05:17:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10188         * lib/optparse.rb (OptionParser::Switch::summarize): fix for long form
10189           option with very long argument.  a patch from Kobayashi Noritada
10190           <nori1 AT dolphin.c.u-tokyo.ac.jp> in [ruby-list:44179].
10192 Mon Nov  5 01:20:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10194         * parse.y (call_args): remove "parenthesize argument(s) for future
10195           version" warning.  when I added this warning, I had a plan to
10196           reimplement the parser that is simpler than the current one.
10197           since we abandoned the plan, warning no longer required.
10199 Mon Nov  5 01:02:56 2007  Minero Aoki  <aamine@loveruby.net>
10201         * lib/net/http.rb (HTTPHeader#initialize): provide default
10202           User-Agent to fix 500 error on some corrupted HTTP servers.
10203           [ruby-core:13135]
10205 Mon Nov  5 00:32:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10207         * eval.c (rb_f_send): allow send/__send__ to call methods of all
10208           visibility again.  we no longer provide __send, __send!.
10210         * eval.c (rb_invoke_method): new method to honor private
10211           visibility.  if it's invoked in a function call style, it calls
10212           private methods as well (previous 1.9 send behavior).
10214 Mon Nov  5 00:24:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10216         * win32/Makefile.sub: vendor_ruby support.
10218         * configure.in (RUBY_LIB): duplicated.
10220 Mon Nov  5 00:01:33 2007  Tanaka Akira  <akr@fsij.org>
10222         * re.c (rb_reg_quote): quote \v as well.
10224 Sun Nov  4 23:51:59 2007  Tanaka Akira  <akr@fsij.org>
10226         * re.c (rb_reg_initialize_m): use StringValuePtr instead of
10227           StringValueCStr because \0 exists when Regexp.new("\0").
10229 Sun Nov  4 08:11:19 2007  Tanaka Akira  <akr@fsij.org>
10231         * gc.c (count_objects): count TOTAL.
10233 Sun Nov  4 03:58:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10235         * string.c (tr_setup_table): use C array for characters that fit
10236           in a byte to gain performance.
10238         * string.c (rb_str_delete_bang): ditto.
10240         * string.c (rb_str_squeeze_bang): ditto.
10242         * string.c (rb_str_count): ditto.
10244         * string.c (tr_trans): ditto.
10246 Sun Nov  4 00:06:40 2007  Tanaka Akira  <akr@fsij.org>
10248         * gc.c (count_objects): ObjectSpace.count_objects implemented.
10249           [ruby-core:12301]
10251 Sat Nov  3 22:49:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10253         * hash.c (rb_hash_each_pair): make Hash#each to be alias to
10254           Hash#each_pair for compatibility and clarity.
10256         * hash.c (env_each_pair): ditto.
10258 Sat Nov  3 22:41:05 2007  Tanaka Akira  <akr@fsij.org>
10260         * configure.in: --with-vendor-hdrdir implemented.
10262         * lib/mkmf.rb: check --vendor argument.
10264         * README.EXT: explain --vendor option for extconf.rb
10266         * README.EXT.ja: ditto.
10268 Sat Nov  3 20:30:48 2007  Tanaka Akira  <akr@fsij.org>
10270         * configure.in: --with-vendordir implemented.
10272         * mkconfig.rb: add config to vendorlibdir and vendorarchdir.
10274         * instruby.rb: make vendor library directories.
10276         * ruby.c: insert vendor library directories into load path.
10278 Fri Nov  2 20:55:49 2007  Kouhei Sutou  <kou@cozmixng.org>
10280         * lib/rss/content.rb, lib/rss/content/, lib/rss/maker/content.rb,
10281           test/rss/test_content.rb, test/rss/test_maker_content.rb,
10282           test/rss/rss-testcase.rb (RSS::TestCase): supported
10283           content:encoded with RSS 2.0.
10284           Suggested by Sam Lown. Thanks.
10286 Fri Nov  2 20:47:04 2007  Kouhei Sutou  <kou@cozmixng.org>
10288         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.0 -> 0.2.1.
10290 Thu Nov  1 21:56:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10292         * error.c (Init_Exception): make NameError to be subclass of
10293           StandardError again.
10295         * error.c (Init_Exception): make SecurityError to be subclass of
10296           Exception, since it's too important to be handled implicitly.
10298 Thu Nov  1 14:51:39 2007 David Flanagan <davidflanagan@ruby-lang.org>
10299         * enum.c (take_while_i, drop_while_i) add RTEST to handle nil return
10301 Thu Nov  1 02:12:50 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10303         * common.mk (prereq): update the path of prelude.c.
10305         * common.mk (prelude.c): rollback a part of r13675, because it is not
10306           documented and causes build error.
10308 Thu Nov  1 01:52:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10310         * enum.c (enum_drop): fix typo.
10312 Thu Nov  1 01:51:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10314         * vm_core.h (ruby_current_thread): RUBY_EXTERN'ed for probeprofiler.
10316 Thu Nov  1 00:46:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10318         * win32/configure.bat, setup.mak: now can recognize OS even if
10319           the ``--target'' option of configure is omitted.
10321         * win32/README.win32: update the descriptions about compiler.
10323 Wed Oct 31 03:13:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10325         * enum.c (enum_take_while): separate with-block form.
10327         * enum.c (drop_while_i): ditto.
10329         * enum.c (enum_butfirst): abandon butfirst method.  reverted.
10331 Tue Oct 30 10:03:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10333         * enum.c (enum_butfirst): add a new method to iterates over
10334           elements but first n.  RDoc need to be updated.
10336         * enumerator.c (Init_Enumerator): remove unnecessary symbol
10337           initialization.
10339 Mon Oct 29 18:42:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10341         * parse.y (bvar): block-local variable can shadow outer variable.
10342           [ruby-core:13036]
10344 Mon Oct 29 17:58:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10346         * string.c (rb_str_substr): performance improvement.  [ruby-dev:31806]
10348 Mon Oct 29 17:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10350         * encoding.c (rb_enc_replicate): new function to replicate encoding.
10352         * encoding.c (enc_based_encoding): Encoding#base_encoding returns
10353           based encoding of replica.
10355 Mon Oct 29 17:18:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10357         * encoding.c (rb_enc_compatible): ASCII encoding is compatible with
10358           ASCII-compatible encoding, even for non-string objects.
10360 Sun Oct 28 21:50:02 2007  Tanaka Akira  <akr@fsij.org>
10362         * lib/open-uri.rb: :redirect option implemented to disable redirects.
10363           (OpenURI::HTTPRedirect): new exception class for redirection.
10365 Fri Oct 26 17:38:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10367         * numeric.c (int_chr): take an optional encoding parameter.
10368           [ruby-core:12816]
10370 Fri Oct 26 17:14:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10372         * numeric.c (fix_pow): returns 1.0 for 0**0.0.
10374         * numeric.c (fix_pow): returns infinity for 0**-1.  [ruby-dev:32084]
10376 Fri Oct 26 15:00:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10378         * misc/ruby-style.el (ruby-style-{case,label}-indent): adjust for
10379           labels inside switch block.
10381 Fri Oct 26 05:48:57 2007  David Flanagan <davidflanagan@ruby-lang.org>
10382         * array.c: raise IndexError for negative length in rb_ary_fill
10384 Wed Oct 25 07:12:03 2007  James Edward Gray II  <jeg2@ruby-lang.org>
10386         * lib/net/telnet.rb (Net::Telnet#login): Allowing "passphrase" in
10387           addition to "password" for Telnet login prompts. [ruby-Bugs-10746]
10389 Wed Oct 25 06:34:11 2007  James Edward Gray II  <jeg2@ruby-lang.org>
10391         * lib/net/telnet.rb (Net::Telnet#login): Making the password prompt
10392           pattern case insensitive. [ruby-Bugs-10746]
10394 Fri Oct 26 04:21:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10396         * lib/net/pop.rb (Net::POP3::do_start): type fixed.  a patch from
10397           Dan Zwell <dzwell AT zwell.net> in [ruby-core:12941].
10399 Fri Oct 26 01:48:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10401         * array.c (rb_ary_assoc): check and convert inner arrays (assocs)
10402           using #to_ary.
10404         * hash.c (rb_hash_s_create): check and convert argument hash
10405           using #to_hash.
10407         * hash.c (rb_hash_s_create): Hash#[] now takes assocs as source of
10408           hash conversion.
10410 Thu Oct 25 16:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10412         * parse.y (parser_yylex): dot at the head of the line denote line
10413           continuation from previous one to support fluent interface.
10414           [experimental]
10416         * misc/ruby-mode.el (ruby-calculate-indent): support fluent dot.
10418 Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10420         * io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
10422 Thu Oct 25 13:59:53 2007 David Flanagan <davidflanagan@ruby-lang.org>
10424         * parse.y (parser_tokspace): increment tokidx
10425           fixes test failure at [test/ruby/test_stringchar.rb:72]
10427 Thu Oct 25 09:49:49 2007  akira yamada  <akira@ruby-lang.org>
10429         * lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
10430           scheme. [ruby-dev:31896]
10432 Wed Oct 25 06:23:14 2007  James Edward Gray II  <jeg2@ruby-lang.org>
10434         * lib/xmlrpc/parser.rb (XMLRPC::Convert::dateTime): Fixing a bug that
10435           caused time zone conversion to fail for some ISO 8601 date formats.
10436           [ruby-Bugs-12677]
10438 Wed Oct 25 04:59:28 2007  James Edward Gray II  <jeg2@ruby-lang.org>
10440         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Explicitly start
10441           the HTTP connection to support keepalive requests. [ruby-Bugs-9353]
10443 Wed Oct 25 04:46:53 2007  James Edward Gray II  <jeg2@ruby-lang.org>
10445         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Improving the error
10446           message for Content-Type check failures. [ruby-core:12163]
10448 Wed Oct 25 03:45:08 2007  James Edward Gray II  <jeg2@ruby-lang.org>
10450         * lib/xmlrpc/utils.rb (XMLRPC::ParseContentType#parse_content_type):
10451           Making Content-Type checks case insensitive. [ruby-Bugs-3367]
10453 Wed Oct 24 17:09:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10455         * parse.y (parser_tokspace): make space in token buffer.
10457         * parse.y (parser_yylex): fix encoding of single character literal.
10459 Tue Oct 23 13:44:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10461         * parse.y (call_args2): nd_head of NODE_BLOCK_PASS should be a list.
10462           [ruby-core:12850]
10464 Tue Oct 23 10:42:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10466         * ruby.c (process_options): encoding set by command line option takes
10467           priority over the encoding in the source, as the primary encoding.
10469 Mon Oct 22 19:24:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10471         * ruby.c (proc_options): allow space after -E (encoding) option.
10473 Mon Oct 22 11:03:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10475         * encoding.c (enc_check_encoding): returns index now.
10477         * encoding.c (rb_enc_compatible): check if two objects have compatible
10478           encodings.
10480         * encoding.c (enc_compatible_p): added Encoding.compatible?.
10482         * include/ruby/encoding.h (rb_enc_compatible): prototype.
10484 Sun Oct 21 18:29:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10486         * encoding.c (rb_enc_default, rb_enc_primary): return pointers to
10487           rb_encoding of default and primary respectively.  [ruby-core:12795]
10489         * encoding.c (set_primary_encoding): removed primary_encoding setter.
10491 Sat Oct 20 13:17:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10493         * enum.c (enum_cycle): hide temporary array from ObjectSpace.
10494           [ruby-core:12762]
10496 Sat Oct 20 11:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10498         * file.c (rb_get_path): returns frozen string.
10500         * file.c (rb_file_s_chown, rb_file_s_lchown): use uid_t and gid_t.
10502 Fri Oct 19 20:08:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10504         * encoding.c (rb_id_encoding): returns ID "encoding".
10506         * marshal.c (w_encoding): dump encoding name.
10508         * marshal.c (r_ivar): load encoding.
10510 Fri Oct 19 16:41:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10512         * parse.y (parser_regx_options, reg_compile_gen): relaxened encoding
10513           matching rule.
10515         * re.c (rb_reg_initialize): always set encoding of Regexp.
10517         * re.c (rb_reg_initialize_str): fix encoding for non 7bit-clean
10518           strings.
10520         * re.c (rb_reg_initialize_m): use ascii encoding for 'n' option.
10522 Fri Oct 19 11:09:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10524         * ruby.c (process_options): set primary encoding from the parser
10525           always.  [ruby-core:12758]
10527         * ruby.c (load_file): should not discard the parser parameter.
10529 Fri Oct 19 10:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10531         * range.c (range_last): removed unused variables.
10533 Thu Oct 18 17:08:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10535         * enum.c (enum_find_index): update RDoc.  a patch from David Flanagan
10536           <david AT davidflanagan.com> in [ruby-core:12710].
10538         * enum.c (enum_take, enum_drop): ditto.
10540         * enum.c (enum_cycle): should not cause infinite loop for empty
10541           arrays.  [ruby-core:12710]
10543         * range.c (Init_Range): typo fixed.
10545 Thu Oct 18 16:39:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10547         * lib/rexml/source.rb (REXML::SourceFactory::SourceFactory): more
10548           duck typed.  better performance on JRuby.
10549           http://headius.blogspot.com/2007/10/another-performance-discovery-rexml.html
10551 Thu Oct 18 09:33:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10553         * range.c (range_first): takes first n element if argument is
10554           given.  [ruby-core:12697]
10556         * range.c (range_last): returns last n elements if argument is
10557           given.
10559         * array.c (rb_ary_subseq, rb_ary_last): export.
10561 Wed Oct 17 17:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10563         * ruby.c (proc_options): fixed reversed condition.  [ruby-core:12722]
10565 Wed Oct 17 13:54:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10567         * re.c (rb_reg_s_union): the last check was not complete.
10569 Wed Oct 17 11:30:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10571         * encoding.c (rb_enc_from_encoding, rb_enc_register): associate index
10572           to self.
10574         * encoding.c (enc_capable): Encoding objects are encoding capable.
10576         * re.c (rb_reg_s_union): check if encoding matching by exact encoding
10577           objects.
10579 Wed Oct 17 06:18:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10581         * encoding.c (rb_enc_alias, rb_enc_find_index): changed
10582           enc_table_alias to a name-to-index hash.
10584         * encoding.c (rb_enc_init): use upper case names for aliases to use as
10585           constant names.
10587         * encoding.c (enc_find): allow symbols.
10589         * encoding.c (Init_Encoding): define encoding constants.
10591         * st.c (strcasehash): fix wrong code range condition.
10593 Wed Oct 17 05:07:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10595         * encoding.c (rb_primary_encoding): added Encoding.primary_encoding.
10597         * parse.y (rb_parser_encoding): added.
10599         * ruby.c (proc_options): added -E and --encoding options.
10601         * ruby.c (process_options): set primary encoding from command line
10602           option if set, or source encoding.
10604         * include/ruby/encoding.h (rb_enc_from_encoding,
10605           rb_get_primary_encoding, rb_set_primary_encoding): prototypes.
10607         * include/ruby/node.h (rb_parser_encoding): prototype.
10609 Wed Oct 17 03:37:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10611         * re.c (rb_reg_desc): set encoding.
10613         * re.c (rb_reg_s_union): check encodings.
10615         * enc/utf8.c (utf8_code_to_mbclen): 0xfe and 0xff are valid Unicode to
10616           be encoded to 2bytes in UTF-8.  [ruby-core:12700]
10618 Wed Oct 17 02:50:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10620         * string.c (rb_str_ord): use encoding.
10622 Wed Oct 17 01:57:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10624         * re.c (rb_reg_initialize_m): allow binary encoding option.
10625           [ruby-dev:32083]
10627 Tue Oct 16 19:48:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10629         * re.c (rb_reg_s_union): check for encoding of original object.
10631 Tue Oct 16 18:28:51 2007  Tanaka Akira  <akr@fsij.org>
10633         * debug.c: use enum for constants for gdb if possible.
10635 Tue Oct 16 18:20:10 2007  Tanaka Akira  <akr@fsij.org>
10637         * ruby.c, debug.c: move debug enum and constants to debug.c.
10639 Tue Oct 16 18:16:15 2007  Tanaka Akira  <akr@fsij.org>
10641         * ruby.c (RUBY_ENCODING_SHIFT): added as enum.
10643         * .gdbinit (rp): show encoding and coderange for strings.
10645 Tue Oct 16 14:48:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10647         * parse.y (parser_regx_options): check if regexp encoding option
10648           matches to current encoding.
10650         * re.c (char_to_option, rb_char_to_option_kcode): 'n' is not kcode
10651           option now.
10653         * re.c (rb_reg_to_s, rb_reg_error_desc): copy encoding rather than
10654           append as an option.
10656         * re.c (make_regexp, rb_reg_prepare_re): use encoding of Regexp and
10657           String instead of kcode.
10659         * re.c (rb_reg_initialize): set fixed option if none is set.
10661         * re.c (rb_reg_regcomp): ditto.
10663         * re.c (rb_reg_equal): check if encodings are equal.
10665         * re.c (rb_reg_initialize_m): encoding option is obsolete.
10667         * re.c (rb_kcode, rb_get_kcode, rb_set_kcode): removed.
10669         * re.c (Init_Regexp): removed Regexp#kcode method.
10671         * ruby.c (proc_options): allow long encoding name.
10673 Tue Oct 16 14:03:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10675         * re.c (rb_reg_s_union): encoding of all regexp objects should
10676           match.  [ruby-dev:32076]
10678 Tue Oct 16 13:49:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10680         * encoding.c (enc_to_s): rename function.
10682 Tue Oct 16 13:25:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10684         * string.c (rb_str_new4): should copy encoding.  a patch from NARUSE,
10685           Yui <naruse AT airemix.com>.  [ruby-dev:32076]
10687 Tue Oct 16 01:31:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10689         * enum.c (enum_inject): RDoc update.  a patch from David Flanagan
10690           <david AT davidflanagan.com> in [ruby-core:12710].
10692 Tue Oct 16 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10694         * encoding.c (Init_Encoding): define #to_s to show encoding name
10695           in to_s representation as well as #inspect.
10697 Mon Oct 15 13:24:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10699         * numeric.c (flo_round): should be number but not rounding factor.
10700           [ruby-dev:32060]
10702 Mon Oct 15 11:45:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10704         * marshal.c (r_bytes0): refined length check.  [ruby-dev:32059]
10706 Mon Oct 15 10:24:19 2007  Tanaka Akira  <akr@fsij.org>
10708         * process.c (pst_to_s): returns a string such as "pid 10220 exit 1"
10709           instead of "256".  [ruby-dev:32053]
10710           (pst_inspect): change format
10711           "#<Process::Status: pid=10220,exited(1)>" to
10712           "#<Process::Status: pid 10220 exit 1>".
10714 Mon Oct 15 09:58:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10716         * marshal.c (r_bytes0): check if source has enough data.
10717           [ruby-dev:32054]
10719 Mon Oct 15 01:15:09 2007  Tanaka Akira  <akr@fsij.org>
10721         * ext/socket/socket.c (s_accept_nonblock): make accepted fd
10722           nonblocking.  [ruby-talk:274079]
10724 Sun Oct 14 17:31:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10726         * encoding.c (rb_obj_encoding): rdoc update.  a patch from David
10727           Flanagan <david AT davidflanagan.com>.  [ruby-core:12664]
10729         * encoding.c (enc_dump, enc_load): marshaling feature.  a patch from
10730           David Flanagan.  [ruby-core:12665]
10732         * encoding.c (Init_Encoding): undefine allocator of Encoding.
10733           [ruby-core:12665], [ruby-core:12666]
10735         * test/ruby/test_encoding.rb: tests for Encoding from David Flanagan
10736           [ruby-core:12665]
10738 Sun Oct 14 11:09:09 2007  Tanaka Akira  <akr@fsij.org>
10740         * lib/pp.rb (PP::PPMethods#pp_hash): don't sort keys because hash is
10741           ordered.
10742           (ENV.pretty_print): call pp_hash with sorted hash.
10744 Sun Oct 14 04:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10746         * configure.in (AC_SYS_LARGEFILE): keep results also in command
10747           options, to vail out of mismatch.  [ruby-list:44114]
10749         * mkconfig.rb, lib/mkmf.rb (configuration): add DEFS.
10751 Sun Oct 14 03:55:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10753         * win32/mkexports.rb: deal with __fastcall name decorations.
10754           [ruby-list:44111]
10756 Sun Oct 14 02:20:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10758         * encoding.c (rb_cEncoding): new Encoding class.
10760         * encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
10762         * encoding.c (rb_obj_encoding): return Encoding object now.
10764         * gc.c (garbage_collect): mark Encoding objects.
10766         * inits.c (rb_call_inits): call Init_Encoding.
10768         * string.c (rb_str_force_encoding): accept Encoding object as well as
10769           encoding name.
10771         * include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
10772           prototypes.
10774 Sun Oct 14 01:03:30 2007  Tanaka Akira  <akr@fsij.org>
10776         * lib/open-uri.rb (OpenURI.open_http): fix :ssl_ca_cert option.
10778 Sat Oct 13 21:23:21 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
10780         * ext/win32ole/win32ole.c (foletype_s_ole_classes,
10781           foletype_s_typelibs): refactoring.
10783         * test/win32ole/test_win32ole_type.rb: add some test.
10785         * ext/win32ole/win32ole.c (Init_win32ole): change method name
10786           WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes.
10788         * test/win32ole/test_win32ole_typelib.rb: ditto.
10790         * test/win32ole/test_folderitem2_invokeverb.rb: check create
10791           shortcut string more strictly (This test is invoked in Japanese
10792           Windows environment).
10794 Sat Oct 13 09:11:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10796         * parse.y (set_file_encoding): case-insensitive search, a patch from
10797           David Flanagan <david AT davidflanagan.com> [ruby-core:12629]
10799 Sat Oct 13 09:02:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10801         * {bcc,win}32/mkexports.rb: explicit data.  [ruby-list:44108]
10803 Sat Oct 13 00:17:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10805         * lib/rexml/document.rb (REXML::Document::write): leaky
10806           modification trans -> transitive.  [ruby-dev:32040]
10808 Sat Oct 13 00:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10810         * parse.y: encoding specifier should work if the line matches
10811           /coding[:=] ?/, a la Python PEP-263, so that VIM comments like
10812           "# vim: set fileencoding=<encoding name>" should be recognized.
10814 Fri Oct 12 15:04:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10816         * parse.y (magic_comments): add "encoding" as same as "coding".
10818         * parse.y (set_file_encoding): special file encoding handling.
10820         * parse.y (parser_yylex): ditto.
10822 Fri Oct 12 12:44:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10824         * array.c (rb_ary_combination): fixed memory corruption due to too
10825           small memory allocation
10827         * array.c (rb_ary_product): accessing out of memory bounds.
10828           condition fixed.
10830 Fri Oct 12 11:22:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10832         * re.c (match_values_at): make #select to be alias to #values_at
10833           to adapt RDoc description.  [ruby-core:12588]
10835 Thu Oct 11 21:10:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10837         * include/ruby/node.h (NOEX_LOCAL): remove unused local visibility.
10839         * class.c (ins_methods_push): ditto.
10841         * class.c (rb_class_local_methods): method removed.
10843 Thu Oct 11 14:29:31 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10845         * */Makefile.sub (COMMON_MACROS): workaround for old SDK's bug.
10846           [ruby-core:12584]
10848 Thu Oct 11 06:35:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10850         * Makefile.in, */Makefile.sub (VPATH): add enc directory.
10852         * common.mk (ENCOBJS): encoding objects.
10854         * enc: directory for encodings.
10856 Thu Oct 11 00:04:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10858         * include/ruby/oniguruma.h (OnigEncodingTypeST): add OnigEncoding
10859           parameter to every function members.
10861         * include/ruby/oniguruma.h (OnigEncodingTypeST): add auxiliary
10862           data member to provide user defined data for an encoding.
10864 Wed Oct 10 23:32:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10866         * re.c (rb_reg_s_quote): no longer takes optional second argument
10867           that has never been documented.
10869 Wed Oct 10 15:39:04 2007  Tanaka Akira  <akr@fsij.org>
10871         * encoding.c (rb_enc_init): don't alias iso-8859-1 to ascii.
10873         * ascii.c (OnigEncodingASCII): change the name US-ASCII to ASCII-8BIT.
10875 Wed Oct 10 14:31:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10877         * string.c (rb_enc_str_coderange): fixed check for non-ascii.
10879 Tue Oct  9 21:35:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10881         * array.c (rb_ary_permutation, rb_ary_combination): missing type
10882           names.
10884         * array.c (rb_ary_permutation): used buffer should be t1.
10886         * array.c (rb_ary_permutation): use frozen shared hidden array.
10887           [ruby-dev:31985]
10889 Tue Oct  9 16:58:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10891         * array.c: remove to_a completely.
10893         * array.c (tmpbuf): keep DRY to clear klass of temporary objects.
10895 Tue Oct  9 16:33:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10897         * array.c (rb_ary_permutation, rb_ary_combination, rb_ary_product):
10898           hide internal buffer objects.  [ruby-dev:31982]
10900 Tue Oct  9 16:00:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
10902         * parse.y (parser_read_escape, parser_tokadd_escape): check code range.
10903           [ruby-dev:31980]
10905 Tue Oct  9 15:40:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10907         * parse.y (STR_NEW3): check for if single byte sequence.
10909 Mon Oct  8 20:06:29 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
10911         * lib/net/imap.rb, lib/net/smtp.rb, lib/net/pop.rb: hostname should
10912           be verified against server's identity as presented in the server's
10913           certificate. [ruby-dev:31960]
10915         * ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.
10917 Sun Oct  7 22:37:47 2007  Kouhei Sutou  <kou@cozmixng.org>
10919         * test/rss/test_taxonomy.rb, test/rss/test_parser_1.0.rb,
10920           test/rss/test_image.rb, test/rss/rss-testcase.rb: ensured
10921           declaring XML namespaces.
10923 Sun Oct  7 22:00:01 2007  Tanaka Akira  <akr@fsij.org>
10925         * include/ruby/node.h: make node flags as VALUE type.
10926           enum ruby_node_flags removed.
10928         * ruby.c: define RUBY_NODE_* as const for gdb.
10930 Sun Oct  7 18:57:12 2007  Tanaka Akira  <akr@fsij.org>
10932         * include/ruby/ruby.h: enum ruby_value_flags removed.  [ruby-dev:31959]
10934         * ruby.c: define RUBY_FL_* as const VALUE for gdb.
10936 Sun Oct  7 17:50:14 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
10938         * lib/net/http.rb: remove enable_post_connection_check flag.
10940         * lib/open-uri.rb: ditto.
10942 Sun Oct  7 15:48:40 2007  Koichi Sasada  <ko1@atdot.net>
10944         * insns.def (opt_eq): fix to use rb_str_equal().
10946 Sat Oct  6 23:14:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10948         * string.c (rb_str_to_i): update RDoc since base can be any value
10949           between 2 and 36.  [ruby-talk:272879]
10951 Sat Oct  6 16:24:02 2007  Koichi Sasada  <ko1@atdot.net>
10953         * cont.c (cont_free): check Fiber or Continuation.
10955         * bootstraptest/test_knownbug.rb: remove a fixed test.
10957 Sat Oct  6 14:56:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10959         * encoding.c (rb_enc_register): returns new index or -1 if failed.
10961         * encoding.c (rb_enc_alias): check if original name is registered.
10963         * encoding.c (rb_enc_init): register in same order as kcode options in
10964           re.c.  added new aliases.
10966         * string.c (rb_str_force_encoding): check if valid encoding name.
10968 Sat Oct  6 14:32:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10970         * insns.def (opt_eq): get rid of gcc bug.
10972 Sat Oct  6 02:34:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
10974         * include/ruby/defines.h: no longer provide DEFAULT_KCODE.
10976 Fri Oct  5 21:24:59 2007  Tanaka Akira  <akr@fsij.org>
10978         * re.c (rb_reg_s_union_m): Regexp.union accepts single argument which
10979           is an array of patterns.  [ruby-list:44084]
10981 Fri Oct  5 16:42:27 2007  Tanaka Akira  <akr@fsij.org>
10983         * bootstraptest/runner.rb (assert_not_match): new method.
10985 Fri Oct  5 16:15:52 2007  Akinori MUSHA  <knu@iDaemons.org>
10987         * configure.in: Turn on --enable-pthread by default for FreeBSD
10988           5.2.1-RELEASE and later, and remove pthread support for older
10989           versions which has never worked perfectly.
10991 Fri Oct  5 16:11:50 2007  Akinori MUSHA  <knu@iDaemons.org>
10993         * time.c (time_to_s): Fix documentation.  Time format changed.
10995 Fri Oct  5 04:02:39 2007  Akinori MUSHA  <knu@iDaemons.org>
10997         * lib/ipaddr.rb (in_addr, in6_addr, addr_mask): Make some minor
10998           code optimization.
11000 Fri Oct  5 03:25:51 2007  Akinori MUSHA  <knu@iDaemons.org>
11002         * lib/ipaddr.rb (<=>): Implement IPAddr#<=> and make IPAddr
11003           comparable.
11005         * lib/ipaddr.rb (succ): Implement IPAddr#succ.  You can now create
11006           a range between two IPAddr's, which (Range) object is
11007           enumerable.
11009         * lib/ipaddr.rb (to_range): A new method to create a Range object
11010           for the (network) address.
11012 Fri Oct  5 03:14:45 2007  Akinori MUSHA  <knu@iDaemons.org>
11014         * lib/ipaddr.rb (coerce_other): Support type coercion and make &,
11015           |, == and include? accept a string or an integer instead of an
11016           IPAddr object as the argument.
11018         * lib/ipaddr.rb (initialize): Give better error messages.
11020         * lib/ipaddr.rb: Improve documentation.
11022 Thu Oct  4 20:45:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11024         * process.c (Init_process): win32 has our own WNOHANG definition, so
11025           remove unnecessary #ifdef guard.
11027 Thu Oct  4 20:17:19 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11029         * array.c (rb_ary_permutation, rb_ary_product): support non C99
11030           compilers.
11032 Thu Oct  4 17:33:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11034         * re.c (kcode_setter): Perl-ish global variable `$=' no longer
11035           effective.
11037         * io.c (Init_IO): remove obsolete variables: $defout, $deferr.
11039         * re.c (Init_Regexp): remove obsolete const alias: MatchingData.
11041         * time.c (Init_Time): remove obsolete Time::times.
11043         * re.c (ignorecase_setter): change warning message.
11045         * re.c (ignorecase_getter): now gives warning.
11047         * string.c (rb_str_cmp_m): update RDoc document.
11049         * re.c (kcode_setter): restore erroneously removed setter.
11051 Thu Oct  4 16:28:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11053         * encoding.c (rb_obj_encoding): returns encoding of the given object.
11055         * parse.y (reg_compile_gen): copy encoding from source string if
11056           non-empty.
11058         * re.c (Init_Regexp): new method Regexp#encoding.
11060         * string.c (str_encoding): moved to encoding.c
11062 Thu Oct  4 15:49:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11064         * array.c (rb_ary_permutation): remove C99 dependency.
11065           [ruby-dev:31934]
11067         * array.c (rb_ary_product): ditto.
11069 Wed Oct  3 23:37:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11071         * ext/nkf/nkf.c, bin/ri, bin/irb: fixed typos in doc and comments.
11072           a patch from Eugene Ossintsev  <eugoss AT gmail.com>.
11073           [ruby-core:12375]
11075 Wed Oct  3 17:56:22 2007  Koichi Sasada  <ko1@atdot.net>
11077         * benchmark/driver.rb: enable specify label to executable.
11078           (-e "ruby1::/path/to/ruby1; ruby2::/path/to/ruby2; ...")
11080 Wed Oct  3 16:58:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11082         * parse.y (parser_str_new, parser_yylex, rb_intern3): set code-range
11083           bits.
11085         * parse.y (parser_tokadd_string): check code-range.
11087         * parse.y (parser_parse_string, parser_here_document): ditto.
11089         * parse.y (parser_set_encode): check if valid encoding.
11091 Wed Oct  3 15:43:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11093         * variable.c (rb_cvar_set): check whether class variable is
11094           defined in superclasses.  root classes have higher priority.
11095           removes lower class variable entry from IV_TBL (if it's defined
11096           in classes, not modules).
11098         * variable.c (rb_cvar_get): ditto.
11100 Wed Oct  3 10:06:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11102         * ruby.c (ruby_process_options): push frame with program name.
11103           [ruby-core:12351]
11105 Tue Oct  2 20:16:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11107         * win32/win32.c (init_env): refactoring. remove unused code.
11109 Tue Oct  2 12:30:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11111         * array.c (rb_ary_product): generalized product, now takes
11112           arbitrary number of arrays.  a patch from David Flanagan
11113           <david AT davidflanagan.com>.  [ruby-core:12346]
11115 Tue Oct  2 08:25:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11117         * array.c (rb_ary_permutation): implementation contributed from
11118           David Flanagan.  [ruby-core:12344]
11120         * array.c (rb_ary_combination): RDoc update to clarify.  a patch
11121           from David Flanagan.  [ruby-core:12344]
11123         * array.c (rb_ary_permutation): small dirty hack by Matz to avoid
11124           arrays on stack.
11126 Tue Oct  2 07:01:05 2007  Koichi Sasada  <ko1@atdot.net>
11128         * proc.c (proc_dup): proc->block.proc should be self.
11130         * bootstraptest/test_knownbug.rb, test_method.rb:
11131           move a fixed test.
11133 Mon Oct  1 16:17:44 2007  Tanaka Akira  <akr@fsij.org>
11135         * bootstraptest/test_method.rb: use assert_normal_exit to test
11136           [ruby-dev:31818].
11138 Mon Oct  1 15:57:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11140         * gc.c (id2ref): skip ICLASS.
11142 Mon Oct  1 15:29:35 2007  Tanaka Akira  <akr@fsij.org>
11144         * bootstraptest/runner.rb (assert_normal_exit): use `` instead of
11145           system.
11147 Mon Oct  1 15:17:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11149         * gc.c (id2ref): T_VALUES is less than T_BLOCK.  [ruby-dev:31911]
11151 Mon Oct  1 10:58:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11153         * ruby.c (require_libraries): use require method instead of calling
11154           rb_require directly.  [ruby-dev:31322]
11156 Mon Oct  1 10:52:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11158         * eval.c (ruby_options), ruby.c (proc_options, process_options): not
11159           call exit(2) directly.  [ruby-dev:31912]
11161         * eval.c (ruby_run_node): deal with direct exit code.
11163 Sun Sep 30 17:12:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11165         * string.c (rb_str_append): always set encoding, and coderange
11166           cache bits.
11168         * include/ruby/encoding.h (ENC_CODERANGE_SET): fixed a bug not to
11169           set cache bits.
11171 Sun Sep 30 11:52:11 2007  Tanaka Akira  <akr@fsij.org>
11173         * bootstraptest/runner.rb (pretty): don't show beginning empty line.
11175 Sun Sep 30 11:32:34 2007  Tanaka Akira  <akr@fsij.org>
11177         * numeric.c: use #ifdef for test LONG_LONG_VALUE.
11179 Sun Sep 30 04:30:55 2007  Tanaka Akira  <akr@fsij.org>
11181         * bignum.c: use SIZEOF_LONG instead of SIZEOF_ULONG which is not
11182           defined.
11184 Sun Sep 30 04:03:43 2007  Tanaka Akira  <akr@fsij.org>
11186         * re.c (Init_Regexp): test DEFAULT_KCODE in C code because
11187           KCODE_EUC, etc. are enum.
11189 Sun Sep 30 00:55:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11191         * variable.c (obj_ivar_each): get rid of warning.
11193 Sat Sep 29 17:45:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11195         * main.c (main): use platform-independent per-process initialization.
11196           [ruby-dev:31900]
11198         * ruby.c (ruby_sysinit): new function for per-process initialization.
11200         * include/ruby/ruby.h (RUBY_GLOBAL_SETUP): toplevel setup declaration.
11202         * include/ruby/win32.h, win32/mkexports.rb: alias NtInitialize
11203           ruby_sysinit.
11205         * win32/win32.c (rb_w32_sysinit): renamed from NtInitialize.
11207 Sat Sep 29 17:31:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11209         * array.c (rb_ary_combination): new method to give all combination
11210           of elements from an array.  [ruby-list:42671]
11212         * array.c (rb_ary_product): a new method to get all combinations
11213           of elements from two arrays.  can be extended to combinations of
11214           n-arrays, e.g. a.product(b,c,d).  anyone volunteer?
11216         * array.c (rb_ary_permutation): empty function body to calculate
11217           permutations of array elements.  need volunteer.
11219 Sat Sep 29 17:14:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11221         * marshal.c (r_leave): move proc invocation from r_entry() to
11222           avoid potential crash.
11224 Sat Sep 29 12:28:08 2007  Tanaka Akira  <akr@fsij.org>
11226         * bootstraptest/runner.rb (assert_normal_exit): new method.
11228         * bootstraptest/test_knownbug.rb: add test for Marshal.load.
11230 Sat Sep 29 10:12:20 2007  Tanaka Akira  <akr@fsij.org>
11232         * variable.c (rb_ivar_set): fix class instance variable.
11234         * object.c (rb_class_real): cl argument may be 0.
11236 Sat Sep 29 09:12:02 2007  Tanaka Akira  <akr@fsij.org>
11238         * object.c (rb_class_real): use BUILTIN_TYPE instead of TYPE.
11239           access flags directly instead of FL_TEST.
11240           they are enough because cl argument is a class.
11242 Sat Sep 29 08:57:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11244         * include/ruby/win32.h (strcasecmp): needed for type_strcasehash.
11246 Sat Sep 29 06:47:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11248         * ruby.c (struct cmdline_options): static variables packed.
11250 Sat Sep 29 05:29:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11252         * io.c (rb_io_fdopen): create IO object from fd.
11254         * parse.y (yycompile): use encoding of the source as default.
11256         * ruby.c (proc_options, load_file): ditto.
11258 Sat Sep 29 04:27:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11260         * encoding.c (rb_enc_alias): allow encodings multiple aliases.
11262         * encoding.c (rb_enc_find_index): search the encoding which has the
11263           given name and return its index if found, or -1.
11265         * st.c (type_strcasehash): case-insensitive string hash type.
11267         * string.c (rb_str_force_encoding): force encoding of self.  this name
11268           comes from [ruby-dev:31894] by Martin Duerst.  [ruby-dev:31744]
11270         * include/ruby/encoding.h (rb_enc_find_index, rb_enc_associate_index):
11271           prototyped.
11273         * include/ruby/encoding.h (rb_enc_isctype): direct interface to ctype.
11275         * include/ruby/st.h (st_init_strcasetable): prototyped.
11277 Sat Sep 29 03:53:26 2007  Koichi Sasada  <ko1@atdot.net>
11279         * cont.c: Thread local storage should be fiber local.
11281         * bootstraptest/test_knownbug.rb, test/ruby/test_fiber.rb:
11282           move a fixed test.
11284 Fri Sep 28 23:15:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11286         * insnhelper.ci (vm_call_method): allow send! to call protected
11287           methods as well.  [ruby-core:12280]
11289 Fri Sep 28 22:33:47 2007  Koichi Sasada  <ko1@atdot.net>
11291         * benchmark/bm_so_fasta.rb: added.
11293         * benchmark/bm_so_k_nucleotide.rb: added.
11295         * benchmark/bm_so_reverse_complement.rb: added.
11297         * benchmark/make_fasta_output.rb: added.
11299         * benchmark/prepare_so_k_nucleotide.rb: added.
11301         * benchmark/prepare_so_reverse_complement.rb: added.
11303 Fri Sep 28 19:14:51 2007  Koichi Sasada  <ko1@atdot.net>
11305         * benchmark/driver.rb: fix notations.
11307         * benchmark/bm_loop_whileloop.rb: ditto.
11309         * benchmark/bm_loop_whileloop2.rb: ditto.
11311         * benchmark/bm_app_uri.rb: added.
11313         * benchmark/bm_vm1_ivar_set.rb: ditto.
11315         * benchmark/bm_so_binary_trees.rb: added from Computer Language
11316           Benchmarks Game (http://shootout.alioth.debian.org/).
11318         * benchmark/bm_so_fannkuch.rb: ditto.
11320         * benchmark/bm_so_mandelbrot.rb: ditto.
11322         * benchmark/bm_so_meteor_contest.rb: ditto.
11324         * benchmark/bm_so_nbody.rb: ditto.
11326         * benchmark/bm_so_nsieve.rb: ditto.
11328         * benchmark/bm_so_nsieve_bits.rb: ditto.
11330         * benchmark/bm_so_partial_sums.rb: ditto.
11332         * benchmark/bm_so_pidigits.rb: ditto.
11334         * benchmark/bm_so_spectralnorm.rb: ditto.
11336 Fri Sep 28 16:22:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11338         * vm_core.h (rb_vm_struct): fix typo: bufferd -> buffered.
11340 Fri Sep 28 15:47:48 2007  Koichi Sasada  <ko1@atdot.net>
11342         * benchmark/driver.rb: fix to output benchmark results
11343           to file "bmlog-#{Time.now.strftime('%Y%m%d-%H%M%S')}.#{$$}".
11345         * benchmark/bm_io_file_create.rb: remove useless codes.
11347         * benchmark/bm_vm2_eval.rb: added.
11349 Fri Sep 28 15:05:24 2007  Tanaka Akira  <akr@fsij.org>
11351         * include/ruby/intern.h: export rb_ivar_foreach.
11353         * include/ruby/ruby.h: modify struct RObject and RClass for optimizing
11354           T_OBJECT space.  [ruby-dev:31853]
11355           (ROBJECT_LEN, ROBJECT_PTR)
11356           (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL)
11357           (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor
11358           defined.
11360         * variable.c: support the modified RObject and RClass.
11362         * object.c: ditto.
11364         * class.c: ditto.
11366         * gc.c: ditto.
11368         * marshal.c: ditto.
11370         * eval_method.ci: use the abstract accessor.
11372         * insns.def: ditto.
11374         * proc.c: ditto.
11376         * struct.c: ditto.
11378         * eval.c: ditto.
11380         * error.c: ditto.
11382         * vm.c: ditto.
11384         * insnhelper.ci: ditto.
11386         * ext/digest/digest.c: ditto.
11388 Fri Sep 28 13:20:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11390         * io.c (rb_io_getline_fast, rb_io_getline_1): set encoding to the
11391           result string, as well as getc.
11393 Fri Sep 28 12:51:42 2007  Koichi Sasada  <ko1@atdot.net>
11395         * benchmark/bm_app_erb.rb: added.
11397         * benchmark/bm_io_file_(create|read|write).rb: added.
11399 Fri Sep 28 12:49:05 2007  Koichi Sasada  <ko1@atdot.net>
11401         * benchmark/driver.rb: fix file selection algorithm.
11403 Fri Sep 28 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11405         * string.c (rb_str_comparable): need not to check asciicompat here.
11407         * encoding.c (rb_enc_check): ditto.
11409         * string.c (rb_enc_str_coderange): tuned a bit; no broken check.
11411         * encoding.c (rb_enc_check): new encoding comparison criteria.
11413 Thu Sep 27 17:36:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11415         * win32/REAMDE.win32: follow recent changes.
11417 Thu Sep 27 16:01:53 2007  Koichi Sasada  <ko1@atdot.net>
11419         * benchmark/driver.rb: fix to output some helpful messages.
11421 Thu Sep 27 15:44:51 2007  Koichi Sasada  <ko1@atdot.net>
11423         * benchmark/driver.rb: added.
11425         * common.mk: fix to use above driver.
11427         * benchmark/prepare_so_count_words.rb: added.
11429         * benchmark/bm_so_count_words.rb: fix benchmark process.
11431 Thu Sep 27 15:42:34 2007  Koichi Sasada  <ko1@atdot.net>
11433         * ext/fiber/fiber.c: modify prototype declaration.
11434           [ruby-core:12247]
11436 Thu Sep 27 09:42:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11438         * parse.y (strings, xstring, regexp, dsym): empty strings have
11439           US-ASCII encoding.
11441 Thu Sep 27 07:39:13 2007  Tanaka Akira  <akr@fsij.org>
11443         * bootstraptest/runner.rb (assert_finish): new method.
11445         * bootstraptest/test_knownbug.rb: add test for [ruby-dev:31866] using
11446           assert_finish.
11448 Thu Sep 27 04:46:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11450         * encoding.c (rb_enc_associate_index): deal with ASCII compatible
11451           flags.
11453         * encoding.c (rb_enc_check): allow ASCII compatible strings.
11455         * parse.y (rb_intern_str): use ASCII encoding for ASCII string.
11457         * string.c (rb_enc_str_coderange): check for code-range.
11459         * string.c (rb_str_modify): clear code-range flags.
11461         * string.c (rb_str_hash, rb_str_eql): ASCII compatible strings are
11462           comparable.
11464         * include/ruby/encoding.h: added code-range flags.
11466 Thu Sep 27 04:40:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11468         * gc.c (rb_mark_set): new function to mark keys.
11470         * marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
11471           data and compat_tbl entries.  [ruby-dev:31870]
11473 Thu Sep 27 03:17:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11475         * process.c (rb_waitpid): no needs to poll.  [ruby-dev:31871]
11477 Wed Sep 26 20:11:46 2007  Koichi Sasada  <ko1@atdot.net>
11479         * bootstraptest/test_knownbug.rb: remove a fixed test.
11481 Wed Sep 26 20:00:12 2007  Koichi Sasada  <ko1@atdot.net>
11483         * bootstraptest/test_knownbug.rb: move fixed tests.
11485         * bootstraptest/test_method.rb: ditto.
11487         * test/ruby/test_io.rb: ditto.
11489 Wed Sep 26 19:36:26 2007  Koichi Sasada  <ko1@atdot.net>
11491         * eval.c (eval): fix to check stack overflow.
11492           [ruby-dev:31850]
11494         * eval_intern.h, vm.h: move CHECK_STACK_OVERFLOW() macro.
11496 Wed Sep 26 19:27:11 2007  Koichi Sasada  <ko1@atdot.net>
11498         * insnhelper.ci (vm_throw): fix to move increment point.
11499           [ruby-dev:31840]
11501 Wed Sep 26 19:23:56 2007  Koichi Sasada  <ko1@atdot.net>
11503         * cont.c: Fiber as SemiCoroutine on default. [ruby-core:12146]
11505         * ext/fiber/fiber.c: enable Fiber#transfer.
11507 Wed Sep 26 18:38:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11509         * encoding.c (rb_enc_check): check for ASCII-compatibilities.
11511         * parse.y (parser_tokadd_string, parser_parse_string,
11512           parser_here_document, parser_yylex): set encoding to US-ASCII.
11514         * parse.y (rb_enc_symname_p): check if valid with encoding.
11516         * parse.y (rb_intern3): let symbols have encoding.
11518         * string.c (rb_str_hash): add encoding index.
11520         * string.c (rb_str_comparable, rb_str_equal, rb_str_eql): check if
11521           compatible encoding.
11523         * string.c (sym_inspect): made encoding aware.
11525         * insns.def (opt_eq): compare with encoding.
11527         * include/ruby/encoding.h (rb_enc_asciicompat): check if ASCII
11528           compatible.
11530         * include/ruby/encoding.h (rb_enc_get_index): added prototype.
11532         * include/ruby/intern.h (rb_str_comparable, rb_str_equal): ditto.
11534 Wed Sep 26 15:01:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11536         * eval_method.ci (rb_get_alloc_func): cast to suppress a warning.
11538         * eval_method.ci (remove_method): local variable to be initialized.
11540 Wed Sep 26 08:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11542         * Makefile.in (ext/extinit.o): use $(OUTFLAG) as well as other
11543           objects.  [ruby-Bugs-14228]
11545 Wed Sep 26 05:12:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11547         * parse.y (parser_yyerror): limit error message length.
11548           [ruby-dev:31848]
11550 Tue Sep 25 15:11:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11552         * io.c (io_ungetc): reallocate internal buffer if pushing data
11553           excess capacity.  [ruby-dev:31650]
11555 Tue Sep 25 13:43:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11557         * eval_method.ci (remove_method): should not remove undef place
11558           holder.  [ruby-dev:31816], [ruby-dev:31817]
11560 Tue Sep 25 09:51:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11562         * eval.c (rb_longjmp): source file information may be NULL.
11563           [ruby-dev:31849]
11565         * eval.c (ruby_finalize_0): clear trace_func before finalization.
11567 Mon Sep 24 22:36:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11569         * array.c (rb_ary_equal): should handle recursive array.
11571         * hash.c (hash_equal): should handle recursive hash.
11573 Mon Sep 24 22:14:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11575         * lib/weakref.rb (WeakRef): remove debug print.  [ruby-dev:31799]
11577         * hash.c (hash_i): avoid too frequent hash conflict where key and
11578           value are same.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
11579           [ruby-dev:31802]
11581 Mon Sep 24 17:56:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11583         * ext/strscan/strscan.c (strscan_initialize, strscan_getch): use the
11584           encoding of the target string instead of setting to StringScanner
11585           instance.  [ruby-dev:31831]
11587 Mon Sep 24 16:52:11 2007  Urabe Shyouhei  <shyouhei@ruby-lang.org>
11589         * lib/net/http.rb: fix typo.
11591 Mon Sep 24 06:49:15 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11593         * lib/net/http.rb: an SSL verification (the server hostname should
11594           be matched with its certificate's commonName) is added.
11595           this verification can be skipped by
11596           "Net::HTTP#enable_post_connection_check=(false)".
11597           suggested by Chris Clark <cclark at isecpartners.com>
11599         * lib/net/open-uri.rb: use Net::HTTP#enable_post_connection_check to
11600           perform SSL post connection check.
11602         * ext/openssl/lib/openssl/ssl.c
11603           (OpenSSL::SSL::SSLSocket#post_connection_check): refine error message.
11605 Sun Sep 23 09:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11607         * gc.c (os_obj_of, os_each_obj): hide objects to be finalized.
11608           [ruby-dev:31810]
11610 Sun Sep 23 08:58:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11612         * eval_method.ci (rb_attr): should not use alloca for unknown size
11613           input.  [ruby-dev:31818]
11615         * parse.y (rb_intern_str): prevent str from optimization.
11617 Sun Sep 23 06:16:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11619         * eval_method.ci (remove_method): check for undefined method.
11620           [ruby-dev:31816]
11622 Sun Sep 23 05:42:35 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
11624         * lib/rdoc/options.rb (Options::check_diagram): dot -V output
11625           changed. [ ruby-Bugs-11978 ], Thanks Florian Frank.
11627 Sat Sep 22 06:02:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11629         * lib/optparse.rb (OptionParser::List::summarize): use each_line if
11630           defined rather than each.  [ruby-Patches-14096]
11632 Sat Sep 22 05:19:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11634         * ext/stringio/stringio.c (strio_init): separate from strio_initialize
11635           to share with strio_reopen properly.  [ruby-Bugs-13919]
11637 Fri Sep 21 14:51:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11639         * gc.c (gc_mark_rest): copy just used part.
11641         * gc.c (gc_mark_children): mark u1 and u2 of NODE_ARGSCAT.
11643         * gc.c (os_obj_of): hide T_VALUES too.  [ruby-dev:31804]
11645         * gc.c (run_final): freeze temporary argument array.
11647 Fri Sep 21 04:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11649         * misc/ruby-style.el (ruby-style-label-indent): fix for function top
11650           level labels.
11652 Fri Sep 21 02:11:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11654         * re.c (rb_reg_match_m): evaluate a block if match.  it would make
11655           condition statement much shorter, if no else clause is needed.
11657         * string.c (rb_str_match_m): ditto.
11659 Fri Sep 21 02:02:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11661         * hash.c (hash_equal): should call rb_eql when argument eql is set.
11663 Thu Sep 20 17:28:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11665         * io.c (popen_exec), process.c (rb_spawn): stop other threads before
11666           exec.  [ruby-core:08262]
11668 Tue Sep 18 22:08:42 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
11670         * lib/matrix.rb: fix a coerce bug of Vector. [ruby-core: 12190]
11672 Mon Sep 17 21:06:03 2007  Minero Aoki  <aamine@loveruby.net>
11674         * lib/net/http.rb (HTTP::GenericRequest#initialize): check path is
11675           not nil. [ruby-dev:31149]
11677 Mon Sep 17 21:00:51 2007  Minero Aoki  <aamine@loveruby.net>
11679         * parse.y (ripper): rename event: arglist_* -> args_*.
11681         * parse.y (ripper): rename event: restparam -> rest_param.
11683         * parse.y (ripper): rename event: constpath_* -> const_path_*.
11685         * parse.y (ripper): rename event: topconst_* -> top_const_*.
11687         * parse.y (ripper): rename event: iter_block -> method_add_block.
11689         * parse.y (ripper): support block local parameter declaration.
11691         * parse.y (ripper): introduce new macro params_new.
11693         * ext/ripper/lib/ripper/sexp.rb: should not dispose event
11694           arguments whose name ends with "_new" but arity != 0.
11696 Sat Sep 15 23:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11698         * parse.y (struct parser_params): common members in the parser and
11699           ripper must be placed at each same location.
11701 Sat Sep 15 18:25:15 2007  Kouhei Sutou  <kou@cozmixng.org>
11703         * string.c (rb_str_rstrip_bang): fixed too much rstrip. [ruby-dev:31786]
11705 Sat Sep 15 17:32:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11707         * parse.y (parser_initialize): set default encoding.  [ruby-dev:31787]
11709         * ruby.c (load_file): make new parse instance after processing shebang
11710           line options.
11712 Sat Sep 15 17:04:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11714         * encoding.c (rb_enc_associate_index, rb_enc_get_index): check if
11715           object is encoding capable.  [ruby-dev:31780]
11717         * string.c (rb_str_subpat_set): check for if the argument is a String.
11719 Sat Sep 15 13:31:21 2007  Kouhei Sutou  <kou@cozmixng.org>
11721         * lib/rss.rb, lib/rss/, test/rss/:
11722           - 0.1.9 -> 0.2.0.
11723           - supported Slash module.
11725 Fri Sep 14 22:20:01 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
11727         * ext/win32ole/win32ole.c (fev_unadvise): no needs to reset
11728           event handlers.
11730 Fri Sep 14 17:28:32 2007  Koichi Sasada  <ko1@atdot.net>
11732         * test/ruby/test_io.rb: tests which cause SEGV should not be
11733           added.
11735         * bootstraptest/test_knownbug.rb: add above test to known bug.
11737 Fri Sep 14 16:24:04 2007  Koichi Sasada  <ko1@atdot.net>
11739         * insnhelper.ci (vm_expandarray): assignment should be placed
11740           after creating new array.
11742 Fri Sep 14 16:17:30 2007  Koichi Sasada  <ko1@atdot.net>
11744         * bootstraptest/runner.rb: add a stress test (-s).
11746 Fri Sep 14 16:14:28 2007  Koichi Sasada  <ko1@atdot.net>
11748         * vm.h, eval_intern.h: move some macros to eval_intern.h.
11750         * eval_jump.ci (rb_f_throw): fix to use NEW_THROW_OBJECT().
11752         * eval.c (rb_f_loop): remove additional macro.
11754 Fri Sep 14 16:12:10 2007  Koichi Sasada  <ko1@atdot.net>
11756         * insnhelper.ci (vm_expandarray): should be volatile value for GC.
11758 Thu Sep 13 15:42:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11760         * compile.c (iseq_compile_each): inline cache entries are overwritten
11761           in iseq_build_body().
11763 Thu Sep 13 14:00:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11765         * parse.y (brace_block): should use compstmt.  patch submitted by
11766           Kirill A. Shutemov <k.shutemov AT gmail.com>  [ruby-core:12154].
11768 Thu Sep 13 13:47:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11770         * parse.y (rb_id2str): fixed typo.
11772 Wed Sep 12 23:12:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11774         * ruby.c (proc_options): -W should be allowed in RUBYOPT
11775           environment variable.  [ruby-core:12118]
11777 Wed Sep 12 15:19:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11779         * io.c (rb_io_s_sysopen): should not use alloca for unknown size
11780           input.  [ruby-dev:31775]
11782         * parse.y (rb_id2str): ditto.
11784         * marshal.c (w_float): use snprintf instead of sprintf.
11786 Tue Sep 11 17:28:00 2007  Akinori MUSHA  <knu@iDaemons.org>
11788         * lib/tempfile.rb (Tempfile::make_tmpname): Allow to specify a
11789           suffix for a temporary file name.
11791         * lib/tempfile.rb (Tempfile::make_tmpname): Make temporary file
11792           names less predictable by including a random string.
11793           [inspired by: akr]
11795 Tue Sep 11 17:25:59 2007  Akinori MUSHA  <knu@iDaemons.org>
11797         * lib/shellwords.rb: Add shellescape() and shelljoin().
11799         * lib/shellwords.rb: Rename shellwords() to shellsplit() and make
11800           the former an alias to the latter.
11802         * lib/shellwords.rb: Add escape(), split(), join() as class
11803           methods, which are aliases to their respective long names
11804           prefixed with `shell'.
11806         * lib/shellwords.rb: Add String#shellescape(), String#shellsplit()
11807           and Array#shelljoin() for convenience.
11809 Mon Sep 10 15:48:31 2007  Tanaka Akira  <akr@fsij.org>
11811         * range.c: represent initialized state using EXCL instead of FL_USER3.
11813         * range.c (range_dumper): make uninitialized range dumpable.
11814           (range_loader): make uninitialized range loadable.
11816 Mon Sep 10 13:44:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11818         * array.c (rb_ary_cycle): avoid infinite loop for empty array.
11819           based on a patch from David Flanagan.  [ruby-core:12085]
11821 Mon Sep 10 01:21:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11823         * marshal.c (r_object0): struct allocation first to check if a
11824           class is a struct.  compatibility check should come next.
11826 Mon Sep 10 01:05:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11828         * range.c (range_step): fixed integer overflow.  [ruby-dev:31763]
11830 Sun Sep  9 08:57:27 2007  Tadayoshi Funaba  <tadf@dotrb.org>
11832         * lib/date/format.rb (_strptime): now also attaches an element
11833           which denotes leftover substring if exists.
11835 Sun Sep  9 01:59:08 2007  Tanaka Akira  <akr@fsij.org>
11837         * marshal.c (r_object0): check T_STRUCT type for structs.
11839 Sun Sep  9 01:17:05 2007  Tanaka Akira  <akr@fsij.org>
11841         * marshal.c (r_object0): don't call user-defined initialize for
11842           T_STRUCT objects.
11844         * include/ruby/intern.h (rb_struct_initialize): declared.
11846         * struct.c (rb_struct_initialize): export.
11848 Sat Sep  8 23:55:56 2007  Tanaka Akira  <akr@fsij.org>
11850         * eval_method.ci (rb_get_alloc_func): new function to get allocation
11851           function.
11853         * include/ruby/intern.h (rb_alloc_func_t): declared.
11854           (rb_define_alloc_func): declared.
11855           (rb_marshal_define_compat): declared.
11857         * range.c: use T_STRUCT for Range.
11859         * inits.c: move Init_marshal() prior to Init_Range() because
11860           Init_Range calls rb_marshal_define_compat which needs
11861           marshal's compat_allocator_tbl initialized.
11863         * marshal.c: support marshal format compatibility layer designed for
11864           marshaling T_STRUCT Range using T_OBJECT format.
11865           (rb_marshal_define_compat): defined.
11867         [ruby-dev:31710]
11869 Sat Sep  8 10:05:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11871         * struct.c (rb_struct_s_members): check if __members__ is an
11872           array to prevent segmentation fault.  [ruby-dev:31759]
11874 Sat Sep  8 09:33:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
11876         * lib/date/format.rb (str[fp]time): now check specifications more
11877           strictly.
11879 Sat Sep  8 02:56:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11881         * test/ruby/test_fiber.rb (TestFiber::test_throw): uncaught throw
11882           now raise ArgumentError exception.
11884 Sat Sep  8 02:45:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11886         * struct.c (rb_struct_s_members): should raise TypeError instead
11887           of call rb_bug().  [ruby-dev:31709]
11889         * marshal.c (r_object0): no nil check require any more.
11891 Sat Sep  8 01:46:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11893         * regenc.c, regenc.h (onigenc_single_byte_mbc_enc_len): should take
11894           two arguments. [ruby-dev:31754]
11896 Fri Sep  7 00:58:16 2007  Koichi Sasada  <ko1@atdot.net>
11898         * common.mk: fix typo.
11900 Fri Sep  7 00:28:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11902         * io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.
11904         * ext/stringio/stringio.c (strio_getc): rb_enc_mbclen() fix.
11906         * ext/stringio/stringio.c (strio_ungetc): ditto.
11908 Thu Sep  6 22:57:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11910         * lib/fileutils.rb (FileUtils::Entry_::copy): prevent self copy of
11911           directories.
11913         * lib/fileutils.rb (FileUtils::fu_each_src_dest0): use try_convert.
11915         * lib/fileutils.rb (FileUtils::fu_update_option): ditto.
11917 Thu Sep  6 21:36:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11919         * include/ruby/oniguruma.h (OnigEncodingTypeST): add end parameter
11920           to mbc_enc_len.
11922         * euc_jp.c (mbc_enc_len), sjis.c (mbc_enc_len),
11923           utf8.c (utf8_mbc_enc_len): ditto.
11925         * encoding.c (rb_enc_mbclen): add end parameter.
11927 Thu Sep  6 21:31:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11929         * array.c (rb_ary_cycle): typo in rdoc.  a patch from Yugui
11930           <yugui@yugui.sakura.ne.jp>.  [ruby-dev:31748]
11932 Thu Sep  6 12:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11934         * string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
11935           [ruby-dev:31734]
11937 Wed Sep  5 22:02:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11939         * array.c (rb_ary_subseq): need integer overflow check.
11940           [ruby-dev:31736]
11942         * array.c (rb_ary_splice): ditto.  [ruby-dev:31737]
11944         * array.c (rb_ary_fill): ditto.  [ruby-dev:31738]
11946         * string.c (rb_str_splice): integer overflow for length.
11947           [ruby-dev:31739]
11949 Tue Sep  4 20:43:44 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
11951         * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
11953         * test/win32ole/test_win32ole_event.rb: ditto.
11955 Mon Sep  3 15:37:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11957         * common.mk (vm.o): depends on st.h too.
11959 Sun Sep  2 23:38:29 2007  Tanaka Akira  <akr@fsij.org>
11961         * include/ruby/st.h (struct st_table): make num_entries bitfield
11962           instead of num_bins for speed.  num_entries has less access.
11964 Sun Sep  2 00:37:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
11966         * lib/date/format.rb (_parse): improved parsing of ordinal dates.
11968         * lib/date/format.rb (_parse): use named character classes in some
11969           regular expressions.
11971 Sat Sep  1 23:44:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11973         * eval_jump.ci (rb_f_throw): wrap tag and TAG_THROW in a NODE_MEMO
11974           node to make throw instruction to work well.
11976 Sat Sep  1 20:56:07 2007  Tanaka Akira  <akr@fsij.org>
11978         * include/ruby/ruby.h (struct RBignum): embed digits in RBignum for
11979           small bignums.
11981         * bignum.c: RBignum embedded digits implemented.
11983         * include/ruby/intern.h: declare rb_big_resize.
11985         * gc.c: don't free embedded digits.
11987         * numeric.c: replace direct bignum field accessor by abstract field
11988           accessor such as RBIGNUM(val)->sign to RBIGNUM_SIGN(val).
11990         * sprintf.c: ditto.
11992         * compar.c: ditto.
11994         * marshal.c: ditto.
11996         * random.c: ditto.
11998         * .gdbinit: support embedded small bignums.
12000         [ruby-dev:31689]
12002 Sat Sep  1 19:59:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
12004         * ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
12005           released.
12007         * ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
12008           released.
12010         * ext/win32ole/win32ole.c (fev_initialize): refactoring.
12012 Sat Sep  1 16:26:09 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12014         * test/socket/test_tcp.rb (test_recvfrom): same as mswin32 on mswin64.
12016 Sat Sep  1 14:24:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12018         * st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
12019           the former may be larger than the latter.
12021         * include/ruby/st.h (CHAR_BIT): get rid of magic number.
12023         * include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
12024           is larger than int.
12026 Sat Sep  1 10:43:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12028         * eval_jump.ci (rb_f_catch): generate new tag object if no argument is
12029           given.  backported from MatzRuby.  [ruby-dev:31609]
12031         * eval_jump.ci (rb_catch): call #catch without arguments if tag
12032           string is NULL.
12034         * eval_jump.ci (rb_f_throw): allow throwing non-symbol object.
12036         * eval_jump.ci (rb_catch_obj): new function to wait throw with arbitrary
12037           object.
12039         * eval_jump.ci (rb_throw_obj): new function to throw arbitrary object.
12041         * variable.c (check_autoload_table): prevent multiple calls from
12042           RSTRING_PTR().
12044 Fri Aug 31 07:12:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12046         * numeric.c (SQRT_LONG_MAX): use SIZEOF_LONG instead of SIZEOF_VALUE
12047           because SIZEOF_VALUE > SIZEOF_LONG on some platforms.
12049 Fri Aug 31 04:18:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12051         * parse.y (f_norm_arg, f_arg_item): not croak already erred names.
12052           [ruby-dev:31687]
12054         * parse.y (assignable_gen): ignore already erred names.
12056         * parse.y (shadowing_lvar_gen): always make new block local variable
12057           when shadowing outer local variable.  [ruby-dev:31507]
12059 Thu Aug 30 19:40:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12061         * regenc.h: check RUBY_EXTERN before including config.h and defines.h
12063         * common.mk: update header dependency.
12065 Thu Aug 30 14:06:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12067         * proc.c (rb_obj_define_method): reverted.  [ruby-talk:266637]
12069 Thu Aug 30 13:49:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12071         * lib/mkmf.rb: initialize $top_srcdir always.  [ruby-dev:31682]
12073         * lib/mkmf.rb (try_const, have_const): check for a const is defined.
12074           [ruby-core:04422]
12076 Thu Aug 30 08:00:12 2007  Tanaka Akira  <akr@fsij.org>
12078         * include/ruby/intern.h: declare rb_hash_tbl.
12080         * include/ruby/ruby.h (RHash): delay st_table allocation.
12081           rename tbl field to ntbl to detect direct reference to the st_table
12082           as a compile error.
12083           (RHASH_TBL): abstract accessor defined.
12084           (RHASH_ITER_LEV): ditto.
12085           (RHASH_IFNONE): ditto.
12086           (RHASH_SIZE): ditto.
12087           (RHASH_EMPTY_P): ditto.
12088           (hash_alloc0, hash_alloc): unified because hash_alloc doesn't
12089           allocate st_table now.
12091         * hash.c: delay st_table allocation.
12093         * gc.c: replace tbl by ntbl.
12095         * array.c: replace direct field accessor by abstract field accessor
12096           such as RHASH(hash)->tbl to RHASH_TBL(hash).
12098         * marshal.c: ditto.
12100         * insns.def: ditto.
12102         * ext/iconv/iconv.c: ditto.
12104         * ext/json/ext/generator/generator.c: ditto.
12106         * ext/json/ext/parser/parser.c: ditto.
12108         * ext/json/ext/parser/parser.rl: ditto.
12110         * ext/syck/rubyext.c: ditto.
12112         * ext/tk/tkutil/tkutil.c: ditto.
12114         [ruby-dev:31678]
12116 Wed Aug 29 18:36:06 2007  Tanaka Akira  <akr@fsij.org>
12118         * lib/open-uri.rb: add :ftp_active_mode option.  [ruby-dev:31677]
12120 Wed Aug 29 14:55:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12122         * string.c (str_gsub): should not use mbclen2() which has broken API.
12124         * re.c: remove rb_reg_mbclen2().
12126 Wed Aug 29 12:48:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12128         * parse.y (aref_args): args may not be a list.  [ruby-dev:31592]
12130 Wed Aug 29 11:30:10 2007  Tanaka Akira  <akr@fsij.org>
12132         * include/ruby/st.h (struct st_table): add entries_packed 1-bit
12133           bitfield.  decrease num_bins 1-bit.
12135         * st.c: pack numhash which have 5 or less entries in bins.
12136           (st_init_table_with_size): setup entries_packed flag.
12137           (st_clear): support packed mode.
12138           (st_lookup): ditto.
12139           (st_insert): ditto.
12140           (st_add_direct): ditto.
12141           (st_copy): ditto.
12142           (st_delete): ditto.
12143           (st_foreach): ditto.
12144           (st_reverse_foreach): ditto.
12145           (unpack_entries): new function for converting to unpacked mode.
12147         [ruby-list:43954]
12149 Wed Aug 29 10:46:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12151         * include/ruby/defines.h (flush_register_windows): call "ta 0x03"
12152           even on Linux/Sparc.  [ruby-dev:31674]
12154 Tue Aug 28 19:16:00 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
12156         * ext/win32ole/win32ole.c (ole_type_progid): progid getted by
12157           ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.
12159         * test/win32ole/test_win32ole.rb (test_raise_message): set negative
12160           compareMode value to raise WIN32OLERuntimeError.
12162         * test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
12163           support some environment which returns IShellDispatch5 instead
12164           of IShellDispatch.
12166 Tue Aug 28 15:42:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12168         * string.c (rb_str_subseq): retrieve substring based on byte offset.
12170         * string.c (rb_str_rindex_m): was confusing character offset and
12171           byte offset.
12173 Tue Aug 28 14:23:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12175         * string.c (rb_str_splice_0): should check to modify.  [ruby-dev:31665]
12177 Tue Aug 28 14:21:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12179         * parse.y (parser_prepare): set parser encode too when BOM exists.
12181 Tue Aug 28 00:51:22 2007  Koichi Sasada  <ko1@atdot.net>
12183         * thread.c: fix Mutex to be interruptable lock.
12185         * thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
12186           prepare native_cond_*() which are based on pthread_cond_*() spec.
12188         * prelude.rb: fix Mutex#synchronize method.
12190         * vm_core.h, include/ruby/intern.h: change unblock function interface
12191           (to pass some user data).
12193         * file.c, process.c: ditto.
12195         * benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
12197         * benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
12198           with contention.
12200         * benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
12202         * test/ruby/test_thread.rb: add a test.
12204         * common.mk: fix benchmark options.
12206 Mon Aug 27 23:14:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12208         * string.c (rb_str_rstrip_bang): wrong strip point.  [ruby-dev:31652]
12210         * string.c (rb_str_each_line): should swallow sequence of newlines
12211           if rs (optional argument) is an empty string.  [ruby-dev:31652]
12213 Mon Aug 27 22:39:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12215         * encoding.c (rb_enc_codelen): raises invalid sequence exception
12216           if ONIGENC_CODE_TO_MBCLEN() returns zero.  [ruby-dev:31661]
12218         * encoding.c (rb_enc_mbclen): check invalid sequence.
12220 Mon Aug 27 20:27:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
12222         * ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
12223           [ruby-dev:31576]
12225         * test/win32ole/test_win32ole_type.rb (test_initialize):
12226           remove duplicate assertions.
12228 Mon Aug 27 19:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12230         * ext/etc/etc.c (etc_getlogin): update documentation to note
12231           security issue.  [ruby-Bugs-11821]
12233 Mon Aug 27 15:56:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12235         * string.c (sym_encoding): return the encoding of a Symbol.
12237 Mon Aug 27 15:33:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12239         * util.c (IEEE_BIG_ENDIAN): use configured value.  [ruby-dev:31623]
12241         * util.c (Llong): set to LONG_LONG if available.
12243 Mon Aug 27 13:11:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12245         * string.c (tr_trans): wrong condition for mbmaxlen==1 strings.
12246           [ruby-dev:31652]
12248 Mon Aug 27 00:41:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12250         * io.c (rb_io_each_byte): caused infinite loop.  [ruby-dev:31652]
12252         * io.c (rb_io_getc): should return nil at EOF, not EOFError.
12254         * lib/delegate.rb (SimpleDelegator::__setobj__): use raise
12255           argument to specify backtrace.
12257         * test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test):
12258           String#include? no longer works for Fixnum.  use #chr.
12259           [ruby-dev:31652]
12261 Sun Aug 26 12:27:14 2007  Koichi Sasada  <ko1@atdot.net>
12263         * cont.c: fix to remove Fiber.new until fiber.so is not loaded.
12265         * test/ruby/test_continuation.rb: fix to use resume.
12267 Sun Aug 26 06:51:46 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
12269         * ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
12270           buffer should be NULL terminated.
12272 Sun Aug 26 06:04:13 2007  Koichi Sasada  <ko1@atdot.net>
12274         * insnhelper.ci (vm_setup_method): reorder code for branch prediction.
12276 Sun Aug 26 05:54:49 2007  Koichi Sasada  <ko1@atdot.net>
12278         * insnhelper.ci (vm_call_method): fix to relaxant safe level check
12279           ($SAFE > 2).  [ruby-core:11998]
12281         * bootstraptest/test_method.rb: add tests for above.
12283 Sun Aug 26 05:52:08 2007  Koichi Sasada  <ko1@atdot.net>
12285         * test/ruby/test_fiber.rb: fix to require 'continuation'.
12287 Sat Aug 25 23:52:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12289         * enumerator.c (enumerator_next): message changed.
12291 Sat Aug 25 23:22:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12293         * include/ruby/encoding.h: remove unused rb_enc_ismbchar().
12295 Sat Aug 25 22:50:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
12297         * ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
12298           fev_initialize): remove the connection ole_event_free and
12299           EVENTSINK_Destructor.
12301 Sat Aug 25 17:52:06 2007  Koichi Sasada  <ko1@atdot.net>
12303         * string.c, include/ruby/intern.h: export rb_str_length().
12305         * insns.def: use rb_str_length() in opt_length.
12307 Sat Aug 25 17:48:51 2007  Koichi Sasada  <ko1@atdot.net>
12309         * cont.c: rename FIBER_STACK_SIZE to FIBER_VM_STACK_SIZE.
12311 Sat Aug 25 17:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12313         * io.c (swallow): removed condition using an unset variable.
12315         * parse.y, re.c: re-applied revision 13092.
12317         * string.c (rb_str_splice): return from void function.
12319         * include/ruby/encoding.h (rb_enc_str_new): prototype added.
12321 Sat Aug 25 11:45:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12323         * encoding.c: provide basic features for M17N.
12325         * parse.y: encoding aware parsing.
12327         * parse.y (pragma_encoding): encoding specification pragma.
12329         * parse.y (rb_intern3): encoding specified symbols.
12331         * string.c (rb_str_length): length based on characters.
12332           for older behavior, bytesize method added.
12334         * string.c (rb_str_index_m): index based on characters.  rindex as
12335           well.
12337         * string.c (succ_char): encoding aware succeeding string.
12339         * string.c (rb_str_reverse): reverse based on characters.
12341         * string.c (rb_str_inspect): encoding aware string description.
12343         * string.c (rb_str_upcase_bang): encoding aware case conversion.
12344           downcase, capitalize, swapcase as well.
12346         * string.c (rb_str_tr_bang): tr based on characters.  delete,
12347           squeeze, tr_s, count as well.
12349         * string.c (rb_str_split_m): split based on characters.
12351         * string.c (rb_str_each_line): encoding aware each_line.
12353         * string.c (rb_str_each_char): added.  iteration based on
12354           characters.
12356         * string.c (rb_str_strip_bang): encoding aware whitespace
12357           stripping.  lstrip, rstrip as well.
12359         * string.c (rb_str_justify): encoding aware justifying (ljust,
12360           rjust, center).
12362         * string.c (str_encoding): get encoding attribute from a string.
12364         * re.c (rb_reg_initialize): encoding aware regular expression
12366         * sprintf.c (rb_str_format): formatting (i.e. length count) based
12367           on characters.
12369         * io.c (rb_io_getc): getc to return one-character string.
12370           for older behavior, getbyte method added.
12372         * ext/stringio/stringio.c (strio_getc): ditto.
12374         * io.c (rb_io_ungetc): allow pushing arbitrary string at the
12375           current reading point.
12377         * ext/stringio/stringio.c (strio_ungetc): ditto.
12379         * ext/strscan/strscan.c: encoding support.
12381 Sat Aug 25 10:59:19 2007  Koichi Sasada  <ko1@atdot.net>
12383         * cont.c: separate Continuation and Fiber from core.
12385         * ext/continuation/*, ext/fiber/*: ditto.
12387         * include/ruby/ruby.h: remove rb_cFiber.
12389         * include/ruby/intern.h: add the rb_fiber_new() declaration.
12391         * enumerator.c (next_init): fix to use rb_fiber_new().
12393         * test/ruby/test_enumerator.rb: remove next? tests.
12395         * test/ruby/test_continuation.rb: add a require 'continuation'.
12397         * test/ruby/test_fiber.rb: add a require 'fiber'.
12399 Sat Aug 25 10:20:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12401         * common.mk (prelude.o): depends on vm_core.h now.
12403         * common.mk (prelude.c): depends on tool/compile_prelude.rb too.
12405         * common.mk (prereq): updates all auto-generated sources.
12407         * tool/compile_prelude.rb: separated dynamic and static portions.
12409 Sat Aug 25 10:05:17 2007  Koichi Sasada  <ko1@atdot.net>
12411         * prelude.rb: add Thread.exclusive.  This class method
12412           is different from 1.8's.  Thread.exclusive only does
12413           synchronize with VM global mutex.
12415 Sat Aug 25 09:39:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12417         * array.c (rb_ary_s_try_convert): more document description.
12419         * re.c (rb_reg_s_try_convert): typo fixed.
12421 Sat Aug 25 08:54:12 2007  Koichi Sasada  <ko1@atdot.net>
12423         * id.h, id.c: remove idFuncall.
12425         * compile.c (iseq_specialized_instruction): ditto.
12427 Sat Aug 25 08:47:28 2007  Koichi Sasada  <ko1@atdot.net>
12429         * tool/compile_prelude.rb: fix to include "vm_core.h".
12431 Sat Aug 25 03:49:14 2007  Tanaka Akira  <akr@fsij.org>
12433         * test/ruby/sentence.rb (Sentence): include Enumerable.
12434           (Sentence#each): defined.
12436         * test/ruby/test_assignment.rb: use Sentence#expand.
12438 Sat Aug 25 03:08:57 2007  Koichi Sasada  <ko1@atdot.net>
12440         * prelude.rb: fix Mutex#synchronize definition.
12442 Sat Aug 25 02:08:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12444         * array.c (rb_ary_s_try_convert): a new class method to convert
12445           object or nil if it's not target-type.  this mechanism is used
12446           to convert types in the C implemented methods.
12448         * hash.c (rb_hash_s_try_convert): ditto.
12450         * io.c (rb_io_s_try_convert): ditto.
12452         * re.c (rb_reg_s_try_convert): ditto.
12454         * string.c (rb_str_s_try_convert): ditto.
12456 Sat Aug 25 00:49:44 2007  Koichi Sasada  <ko1@atdot.net>
12458         * benchmark/bm_loop_generator.rb: added.
12460 Sat Aug 25 00:22:31 2007  Koichi Sasada  <ko1@atdot.net>
12462         * prelude.rb: added.  run this script on startup.
12464         * tool/compile_prelude.rb: compile prelude.rb to C string.
12465           (prelude.rb -> prelude.c)
12467         * common.mk: fix to build with prelude.c.
12469         * inits.c (rb_call_inits): ditto.
12471         * thread.c (Init_Thread): move definition of Mutex#synchronize
12472           to prelude.rb.
12474 Sat Aug 25 00:08:43 2007  Koichi Sasada  <ko1@atdot.net>
12476         * compile.c (compile_massign_opt): fix to skip massign optimization
12477           with global variables.
12479         * bootstraptest/test_massign.rb: add some tests for above.
12481 Fri Aug 24 18:42:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12483         * test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
12485         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::initialize):
12486           initialize @workdir to stop warning.
12488 Fri Aug 24 18:30:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12490         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform_without_block):
12491           replace funcall by send!.  other files in the distribution as well.
12493 Fri Aug 24 17:06:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12495         * eval.c (rb_f_send_bang): abandon the name funcall for private
12496           aware method call.
12498 Fri Aug 24 15:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12500         * enumerator.c (enumerator_next): stop pre-fetching.
12502         * enumerator.c (Init_Enumerator): remove next? method.
12504 Fri Aug 24 15:14:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12506         * eval.c (rb_f_loop): now handles StopIteration exception.
12508 Thu Aug 23 20:31:31 2007  Koichi Sasada  <ko1@atdot.net>
12510         * compile.c: optimize simple massign.
12512 Thu Aug 23 20:02:25 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
12514         * ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
12515           of RegQueryValueEx.
12517         * ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
12518           that the function always returns Qnil.
12520         * test/win32ole/test_win32ole_type.rb (test_initialize): add some test.
12522 Thu Aug 23 17:25:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12524         * configure.in (group_member): check if presents.
12526         * configure.in (XCFLAGS): add _GNU_SOURCE on linux.
12528         * file.c (group_member): use system routine if available.
12530         * process.c: moved _GNU_SOURCE macro to Makefile.
12532 Thu Aug 23 16:59:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12534         * compile.c (compile_massign), insnhelper.ci (vm_throw): not use C99
12535           comment.
12537         * cont.c (rb_cont_call, fiber_switch, rb_fiber_resume, rb_fiber_yield):
12538           suppress warnings.
12540         * cont.c (rb_fiber_start): change on non-volatile variable between
12541           setjmp and longjmp may not has an effect.
12543         * enumerator.c (sym_call): initialize first.
12545         * enumerator.c (enum_iter): typedefed.
12547         * enumerator.c (next_i): suppress a warning.
12549 Thu Aug 23 16:04:11 2007  Koichi Sasada  <ko1@atdot.net>
12551         * compile.c, insns.def, parse.y: fix massign order.  This change
12552           causes performance problem.  Try vm1_swap benchmark.
12553           [ruby-dev:31522]
12555         * insns.def, insnhelper.ci: move process body of expandarray insn to
12556           vm_expandarray().
12558         * bootstraptest/test_knownbug.rb, bootstraptest/test_massign.rb:
12559           move a solved test.
12561 Thu Aug 23 15:51:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12563         * parse.y (f_norm_arg): ripper has no shadowing check.
12565         * parse.y (f_block_arg): dispatch blkarg_mark.
12567 Thu Aug 23 15:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12569         * compile.c (make_masgn_lhs, iseq_compile_each): fixed indent.
12571         * compile.c (iseq_translate_threaded_code),
12572           vm_evalbody.ci (get_insns_address_table),
12573           template/vmtc.inc.tmpl (insns_address_table): constified.
12575         * vm_evalbody.ci (vm_eval),
12576           template/insns_info.inc.tmpl (insn_stack_increase, insn_ret_num):
12577           suppress warnings.
12579 Thu Aug 23 13:19:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12581         * parse.y (f_norm_arg): check also nested arguments.  [ruby-dev:31502]
12583 Thu Aug 23 00:06:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12585         * util.c: updated for ANSI C only.  applied a patch from
12586           <snakagawa AT infoteria.co.jp>.  [ruby-dev:31591]
12588 Thu Aug 23 00:04:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12590         * missing/strtod.c: removed.  [ruby-dev:31588]
12592         * LEGAL: updated.
12594 Wed Aug 22 15:59:44 2007  Koichi Sasada  <ko1@atdot.net>
12596         * bootstraptest/test_knownbug.rb:
12597           fix typo of filename (test_knwonbug.rb).
12599 Wed Aug 22 14:04:53 2007  Koichi Sasada  <ko1@atdot.net>
12601         * bootstraptest/test_knwonbug.rb: added.  This file will contain
12602           test cases which point out known bug.  If bug is fixed, tests
12603           should move to the suitable place.
12605         * bootstraptest/test_massign.rb: move a test which show known bug
12606           to test_knownbug.rb.
12608 Wed Aug 22 13:02:26 2007  Tanaka Akira  <akr@fsij.org>
12610         * bootstraptest/runner.rb (in_temporary_working_directory):
12611           don't remove the directory specified by --dir.
12613 Wed Aug 22 05:51:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12615         * util.c (ruby_strtod): replaced by the implementation by David
12616           M. Gay inspired by William D. Clinger's paper "How to Read Floating
12617           Point Numbers Accurately" [Proc. ACM SIGPLAN '90, pp. 92-101].
12618           a patch from Satoshi Nakagawa <snakagawa AT infoteria.co.jp>.
12619           [ruby-dev:31582]
12621         * test/ruby/test_float.rb (TestFloat::test_float): add test for
12622           precision.
12624 Wed Aug 22 03:51:07 2007  Koichi Sasada  <ko1@atdot.net>
12626         * cont.c: add Fiber#resume and Fiber.yield.
12627           and Fiber::Core class to realize Coroutine.
12629         * include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume().
12631         * enumerator.c: use above api.
12633         * test/ruby/test_fiber.rb: fix and add tests for above changes.
12635 Tue Aug 21 21:09:48 2007  Tanaka Akira  <akr@fsij.org>
12637         * lib/tmpdir.rb (Dir.mktmpdir): make directory suffix specifiable.
12638           suggested by knu.  [ruby-dev:31568]
12640 Tue Aug 21 15:00:23 2007  Koichi Sasada  <ko1@atdot.net>
12642         * st.c (st_clear): reset num_entries too.
12644 Tue Aug 21 13:57:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12646         * hash.c (st_foreach_func, rb_foreach_func): typedefed.
12648         * hash.c (rb_hash_clear): use st_clear() unless iterating.
12650         * st.c (struct st_table_entry): add new members, fore and back, to
12651           iterate in inserted order.
12653         * include/ruby/st.h (struct st_table): ditto.
12655 Tue Aug 21 04:09:06 2007  Koichi Sasada  <ko1@atdot.net>
12657         * benchmark/bm_vm2_case.rb: add a new benchmark.
12658           YARV optimize case/when syntax.  If every conditions
12659           are literal (such as Symbol, Fixnum, String), dispatch
12660           calc order will be O(1).
12662 Tue Aug 21 04:08:07 2007  Koichi Sasada  <ko1@atdot.net>
12664         * test/ruby/test_enumerator.rb: fix last commit.
12666 Tue Aug 21 03:59:32 2007  Koichi Sasada  <ko1@atdot.net>
12668         * test_enumerator.rb (enum_test): fix to return sorted
12669           array (for Hash test).
12671 Tue Aug 21 03:55:20 2007  Koichi Sasada  <ko1@atdot.net>
12673         * enumerator.c (next_i): fix to return with Fiber#yield at
12674           the end of each block.  [ruby-dev:31470]
12676         * enumerator.c (enumerator_next_p): call init_next if not
12677           initialized.  [ruby-dev:31514]
12679         * test/ruby/test_enumerator.rb: add tests for Enumerator.
12681 Mon Aug 20 23:28:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12683         * string.c (Init_String): remove Symbol.intern and Symbol#dump.
12684           [ruby-dev:31525]
12686         * dir.c (dir_foreach): return Enumerator if no block given.
12687           [ruby-dev:31525]
12689         * io.c (rb_io_s_foreach): argument count check before making
12690           Enumerator.  [ruby-dev:31525]
12692 Mon Aug 20 23:17:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12694         * vm_core.h (struct rb_thread_struct): removed first_func_arg and
12695           reuse first_args instead.
12697 Sun Aug 19 13:31:40 2007  Tanaka Akira  <akr@fsij.org>
12699         * gc.c: use VALGRIND_MAKE_MEM_UNDEFINED to detect use of collected
12700           objects if valgrind is available.  It cannot detect first 2 words
12701           because they are used as the free list.
12703 Sun Aug 19 13:13:52 2007  Koichi Sasada  <ko1@atdot.net>
12705         * compile.c (iseq_compile_each/NODE_RESBODY): fix to add
12706           additional nop to prevent tailcall optimization.
12708         * vm_opts.h: clean up comments.
12710 Sun Aug 19 12:58:39 2007  Koichi Sasada  <ko1@atdot.net>
12712         * insnhelper.ci (vm_call_bmethod): fix to propagate information
12713           that this proc is "from Method".  [ruby-dev:31490]
12715         * proc.c (method_proc, rb_mod_define_method): ditto.
12717         * vm.c (vm_invoke_proc_core): removed.
12719         * vm_core.h: ditto.
12721 Sun Aug 19 12:36:11 2007  Tanaka Akira  <akr@fsij.org>
12723         * test/ruby/sentence.rb: new method Sentence().
12725 Sun Aug 19 12:32:39 2007  Koichi Sasada  <ko1@atdot.net>
12727         * insnhelper.ci (vm_callee_setup_arg): fix to mark enough VM stack.
12728           [ruby-dev:31492]
12730 Sat Aug 18 19:02:34 2007  Tanaka Akira  <akr@fsij.org>
12732         * test/ruby/test_yield.rb (TestYieldGen): relax array size check
12733           in nested parameters.
12734           [ruby-dev:31485]
12736 Sat Aug 18 17:44:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12738         * ext/tk/tcltklib.c (Init_tcltklib): use rb_set_end_proc().
12740 Sat Aug 18 17:40:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12742         * thread.c (is_ruby_native_thread): check properly.  [ruby-dev:31166]
12744 Sat Aug 18 16:44:15 2007  Koichi Sasada  <ko1@atdot.net>
12746         * insnhelper.ci (vm_call_bmethod),
12747           vm.c (vm_invoke_proc_core): fix to do not restore
12748           $SAFE when proc invoked by bmethod.
12750         * vm_core.h: ditto.
12752 Sat Aug 18 16:44:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12754         * eval_error.ci (ruby_error_print): call error_print.
12756         * eval_jump.ci, process.c (rb_exit, rb_f_exit, rb_f_abort): moved.
12758 Sat Aug 18 15:59:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12760         * process.c (detach_process_watcher): should not pass the pointer
12761           to an auto variable to the thread to be created.  pointed and
12762           fix by KUBO Takehiro <kubo at jiubao.org>  [ruby-dev:30618]
12764 Sat Aug 18 15:52:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12766         * insnhelper.ci (vm_send_optimize): use MEMMOVE to shift values inside
12767           an array.
12769 Sat Aug 18 15:45:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12771         * insnhelper.ci (vm_yield_setup_args): rsize and psize should not be
12772           negative.
12774 Sat Aug 18 14:35:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12776         * insnhelper.ci (vm_callee_setup_arg, vm_send_optimize,
12777           vm_yield_setup_args): bulk copy for arguments.
12779 Sat Aug 18 13:55:58 2007  Koichi Sasada  <ko1@atdot.net>
12781         * compile.c (iseq_compile_each): fix to allow self.x=
12782           if x= is private.
12784         * bootstraptest/test_method.rb: add a test for above.
12786 Sat Aug 18 14:05:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12788         * parse.y (reg_compile_gen): obtain error info from errinfo.
12790         * re.c (rb_reg_error_desc): make RegexpError for initialization error.
12792         * re.c (rb_reg_compile): return nil and set errinfo if error.
12794 Sat Aug 18 13:23:01 2007  Koichi Sasada  <ko1@atdot.net>
12796         * eval.c: $! should not be writable.
12798         * eval.c (rb_rubylevel_errinfo): added.  rb_errinfo() returns
12799           rb_thread_t#errinfo.  rb_rubylevel_errinfo() returns $! value.
12801 Sat Aug 18 13:14:40 2007  Koichi Sasada  <ko1@atdot.net>
12803         * insnhelper.ci (vm_callee_setup_arg): fix to check arguments
12804           correctly. [ruby-dev:31472]
12806 Sat Aug 18 13:13:06 2007  Koichi Sasada  <ko1@atdot.net>
12808         * bootstraptest/test_exception.rb: add escape character ("\") for
12809           editors.
12811 Sat Aug 18 12:42:50 2007  Tanaka Akira  <akr@fsij.org>
12813         * test/ruby/test_yield.rb (TestYieldGen): add test for yielding to
12814           lambda using lambda parameter passing emulator.
12816 Sat Aug 18 12:24:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12818         * sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
12819           comment lines first.
12821 Sat Aug 18 11:44:59 2007  Koichi Sasada  <ko1@atdot.net>
12823         * compile.c (iseq_set_arguments), insnhelper.ci
12824           (vm_callee_setup_arg, vm_yield_setup_args):
12825           fix to cause raise on "lambda{|a|}.call(1, 2)".
12826           [ruby-dev:31464]
12828         * bootstraptest/test_block.rb: add tests for above.
12830 Sat Aug 18 01:12:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12832         * eval.c (frame_func_id): return proper method ID.
12834 Fri Aug 17 22:43:11 2007  Koichi Sasada  <ko1@atdot.net>
12836         * compile.c (iseq_compile_each): massign should return rvalue(s).
12838 Fri Aug 17 22:10:19 2007  Koichi Sasada  <ko1@atdot.net>
12840         * test/ruby/test_basicinstructions.rb: fix old tests.
12841           class variables should be inherited.
12843 Fri Aug 17 21:20:44 2007  Koichi Sasada  <ko1@atdot.net>
12845         * eval.c (rb_call), eval_method.ci (rb_add_method, rb_alias),
12846           insnhelper.ci (vm_call_method): fix to save safelevel for
12847           method node.
12849         * include/ruby/node.h: ditto.
12851         * bootstraptest/test_method.rb: add a test for above.
12853 Fri Aug 17 16:02:50 2007  Koichi Sasada  <ko1@atdot.net>
12855         * thread.c (rb_thread_terminate_all): fix to ignore
12856           exceptions.
12858         * thread.c (thread_start_func_2): fix
12859           abort_on_exception process.  [ruby-dev:31394]
12861 Fri Aug 17 14:38:36 2007  Tanaka Akira  <akr@fsij.org>
12863         * bootstraptest/runner.rb (in_temporary_working_directory): use
12864           Dir.mktmpdir to create and remove temporary directory.
12865           (Dir.mktmpdir): define if not available.
12866           [ruby-dev:31431]
12868 Fri Aug 17 03:07:37 2007  Koichi Sasada  <ko1@atdot.net>
12870         * compile.c (iseq_compile_each): fix throw insn option of next.
12872 Fri Aug 17 01:25:23 2007  Koichi Sasada  <ko1@atdot.net>
12874         * compile.c (iseq_set_arguments), insnhelper.ci
12875           (vm_callee_setup_arg, vm_yield_setup_args): fix
12876           block parameter problems. [ruby-dev:31437], [ruby-dev:31440]
12878         * bootstraptest/test_block.rb: add a test of [ruby-dev:31440].
12880 Fri Aug 17 01:24:12 2007  Koichi Sasada  <ko1@atdot.net>
12882         * iseq.c (ruby_iseq_disasm): fix to show arg_simple value.
12884 Fri Aug 17 01:21:29 2007  Koichi Sasada  <ko1@atdot.net>
12886         * insns.def (throw): insert a RUBY_VM_CHECK_INTS(). [ruby-dev:31361]
12888 Thu Aug 16 20:40:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12890         * bignum.c (bigtrunc): RBIGNUM(x)->len may be zero.  out of bound
12891           access.  [ruby-dev:31404]
12893         * sprintf.c (rb_str_format): small float should not call
12894           rb_dbl2big().
12896 Thu Aug 16 22:10:06 2007  Koichi Sasada  <ko1@atdot.net>
12898         * compile.c (iseq_compile_each): fix next/redo stack consistency.
12899           [ruby-dev:31373]
12901         * bootstraptest/test_syntax.rb: add tests for above.
12903         * sample/test.rb: fix to use __FILE__ instead of $0 to know basedir.
12905 Thu Aug 16 21:14:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12907         * configure.in (BASERUBY): need AC_SUBST.  [ruby-dev:31438]
12909 Thu Aug 16 19:18:26 2007  Tanaka Akira  <akr@fsij.org>
12911         * test/ruby/sentence.rb: Sentence class implemented
12912           based on sentgen.rb
12914         * test/ruby/sentgen.rb: removed.
12916         * test/ruby/test_assignment.rb: use sentence.rb.
12918         * test/ruby/test_yield.rb: block parameter passing emulator
12919           implemented.
12921 Thu Aug 16 16:48:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12923         * configure.in (BASERUBY): check if base ruby is runnable first.
12924           [ruby-core:11900]
12926 Thu Aug 16 16:46:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12928         * configure.in (aix): enable shared by default.
12930         * configure.in (aix): for 64bit-mode AIX.  [ruby-dev:31401]
12931           + use CC for LDSHARED if non-gcc,
12932           + moved -G option from *LDFLAGS to LDSHARED,
12933           + set -brtl only in XLDFLAGS.
12935 Thu Aug 16 13:06:08 2007  Tanaka Akira  <akr@fsij.org>
12937         * bignum.c (big_lshift): make shift offset long type.
12938           (big_rshift): ditto.
12939           (rb_big_lshift): ditto.
12940           (big_rshift): ditto.
12941           [ruby-dev:31434]
12943 Thu Aug 16 06:29:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12945         * io.c (argf_readpartial): argf_forward needs argc and argv.
12947 Thu Aug 16 02:47:39 2007  Koichi Sasada  <ko1@atdot.net>
12949         * cont.c (rb_fiber_m_yield): added.  use this function
12950           for Fiber#yield instead of rb_fiber_yield.
12952 Thu Aug 16 00:36:52 2007  Tanaka Akira  <akr@fsij.org>
12954         * lib/tmpdir.rb (Dir.mktmpdir): new method.  [ruby-dev:31416]
12956 Wed Aug 15 18:57:30 2007  Koichi Sasada  <ko1@atdot.net>
12958         * gc.c (os_live_obj): fix to skip T_VALUES.
12960         * sample/test.rb: add an ObjectSpace test.
12962 Wed Aug 15 16:49:04 2007  Koichi Sasada  <ko1@atdot.net>
12964         * inits.c (rb_call_inits): change initializing order.
12965           [ruby-dev:31420]
12967 Wed Aug 15 16:44:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12969         * io.c (ARGF_FORWARD): wrongly compares with current_file with
12970           rb_stdout.  should be rb_stdin.  [ruby-cvs:20177]
12972 Wed Aug 15 14:59:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12974         * io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppress
12975           warnings.
12977 Wed Aug 15 14:22:05 2007  Koichi Sasada  <ko1@atdot.net>
12979         * parse.y: remove "//" type comment.
12981 Wed Aug 15 13:42:15 2007  Koichi Sasada  <ko1@atdot.net>
12983         * parse.y: fix rules around f_margs.  "make test" passes all tests.
12985         * bootstraptest/test_block.rb: add some tests for above.
12987 Wed Aug 15 13:50:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12989         * hash.c (rb_hash_delete_key): delete the entry without calling block.
12991         * hash.c (rb_hash_shift): should consider iter_lev too.
12993         * hash.c (delete_if_i): use rb_hash_delete_key() so that the block
12994           isn't called twice.  [ruby-core:11556]
12996 Wed Aug 15 13:39:25 2007  Koichi Sasada  <ko1@atdot.net>
12998         * process.c (proc_geteuid): fix strange conversion.  [ruby-dev:31417]
13000 Wed Aug 15 01:05:55 2007  Tanaka Akira  <akr@fsij.org>
13002         * bootstraptest/runner.rb (assert_check): don't call newtest.
13003           (assert_equal): call newtest.
13004           (assert_match): ditto.
13006 Tue Aug 14 21:43:39 2007  Tanaka Akira  <akr@fsij.org>
13008         * bootstraptest/runner.rb (assert_check): new method.
13009           (assert_match): new method.
13010           (assert_equal): use assert_check.
13011           (pretty): give failure description as an argument.
13013         * bootstraptest/test_exception.rb: use assert_match to describe the
13014           test for [ruby-dev:31407].  [ruby-dev:31412]
13016 Tue Aug 14 19:53:15 2007  Koichi Sasada  <ko1@atdot.net>
13018         * proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
13019           init place of exception_error.
13021         * inits.c: ditto.
13023         * eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
13024           [ruby-dev:31407]
13026         * bootstraptest/test_exception.rb: add a test for above.
13028 Tue Aug 14 19:51:20 2007  Koichi Sasada  <ko1@atdot.net>
13030         * common.mk: change test order (test -> btest).
13032 Tue Aug 14 00:04:27 2007  Kouhei Sutou  <kou@cozmixng.org>
13034         * lib/rss/rss.rb: 0.1.8 -> 0.1.9.
13036         * test/rss/test_version.rb: followed the above change.
13038         * lib/rss/parser.rb: fixed a bug that handles unintended elements.
13039           Thanks to Takuo Yonezawa. [ruby-list:43841]
13041 Mon Aug 13 17:23:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13043         * eval.c (rb_clear_trace_func, rb_thread_stop_timer_thread):
13044           declarations for forward references.
13046         * eval.c (rb_longjmp, eval): use local variable.
13048         * eval.c (rb_longjmp): string object not to be optimized.
13050 Mon Aug 13 13:21:58 2007  Tanaka Akira  <akr@fsij.org>
13052         * lib/open-uri.rb: make ftp passive mode to avoid NAT problem.
13053           [ruby-dev:31377]
13055 Mon Aug 13 09:18:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13057         * ext/stringio/stringio.c (strio_getc): should returns
13058           one-character string.
13060         * ext/stringio/stringio.c: remove unnecessary prototypes.
13062         * ext/stringio/stringio.c (strio_getbyte): new method.
13064         * ext/stringio/stringio.c (strio_readbyte): new method.
13066         * ext/stringio/stringio.c (strio_ungetc): should take a string as
13067           an input.
13069 Mon Aug 13 08:19:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13071         * io.c (argf_close): always close via method.
13073         * io.c (Init_IO): remove obsolete Kernel#getc.
13075 Mon Aug 13 05:03:53 2007  Koichi Sasada  <ko1@atdot.net>
13077         * thread.c (rb_thread_raise): check if target thread is
13078           thrown by another thread or not.  [ruby-dev:31371]
13080         * bootstraptest/test_thread.rb: add a test for above.
13082 Mon Aug 13 04:35:30 2007  Koichi Sasada  <ko1@atdot.net>
13084         * compile.c (iseq_peephole_optimize): fix peephole optimization
13085           bug. [ruby-dev:31360]
13087         * bootstraptest/test_syntax.rb: add a test for above.
13089 Mon Aug 13 04:02:29 2007  Koichi Sasada  <ko1@atdot.net>
13091         * vm_dump.c (debug_print_pre): fix to show control frame count.
13093         * insns.def (opt_call_c_function): fix operand type.
13095         * lib/vm/instruction.rb: ditto.
13097         * insnhelper.ci (vm_push_frame, vm_pop_frame): fix to show
13098           control stack status on if VMDEBUG == 2.
13100         * vm.h: add a comment about VMDEBUG.
13102         * iseq.c (find_prev_line_no): fix to skip bug report if
13103           line is not found.
13105         * lib/vm/instruction.rb: fix to use build_string() on
13106           source code generators.
13108 Mon Aug 13 03:57:32 2007  Koichi Sasada  <ko1@atdot.net>
13110         * template/yasmdata.rb.tmpl: fix type and name.
13112 Sat Aug 11 23:27:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13114         * io.c (argf_each_line): should use #each_line, not #each.
13116         * io.c (argf_each_line): simplified.
13118         * io.c (argf_getline): should handle non T_FILE object in ARGV.
13120         * io.c (argf_each_byte): each_byte should yield bytes not
13121           one-character strings.  [ruby-dev:31374]
13123 Sat Aug 11 07:24:55 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13125         * lib/date/format.rb: reverted some wrongly erased "o" options
13126           (pointed out by nobu).
13128 Sat Aug 11 00:01:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13130         * thread.c (thread_start_func_2): not re-raise to main thread if it is
13131           joining the current thread.
13133 Fri Aug 10 23:54:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13135         * thread.c (thread_create_core): inherit the priority of creating
13136           thread.  submitted at [ruby-core:11873] by David Flanagan <david AT
13137           davidflanagan.com>.  [ruby-core:11876]
13139 Fri Aug 10 05:12:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13141         * thread.c (thread_start_func_2): let abort_on_exception work.
13142           [ruby-core:11873]
13144 Fri Aug 10 04:47:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13146         * parse.y (internal_id_gen): internal ID must be bigger than
13147           tLAST_TOKEN.
13149 Thu Aug  9 16:04:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13151         * parse.y (stmt): check if rhs has value before assignment instead
13152           inside node_assign_gen().  [ruby-dev:31293]
13154         * parse.y (call_bin_op_gen, call_uni_op_gen): split call_op_gen.
13156 Thu Aug  9 14:01:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13158         * parse.y (f_marg_list): renamed from f_marg_head.
13160         * parse.y (f_margs): allow multiple mandatory arguments after a splat.
13161           [ruby-dev:31153]
13163 Thu Aug  9 02:02:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13165         * enum.c (enum_cycle): typo fixed.  a patch from Kazuhiro
13166           NISHIYAMA <zn AT mbf.nifty.com>.  [ruby-dev:31362]
13168 Wed Aug  8 19:17:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13170         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): no longer check
13171           HAVE_RB_IO_STDIO_FILE.
13173 Wed Aug  8 15:52:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13175         * enumerator.c (enumerator_next_p): should check correctly even when
13176           e.next has not been called before.
13178         * enumerator.c (enumerator_next): raise StopIteration (name taken
13179           from Python) instead of IndexError.
13181         * enum.c (enum_zip): catch StopIteration exception.
13183         * enumerator.c (enumerator_with_index): return Enumerator if no
13184           block is given.
13186         * test/ruby/test_iterator.rb (TestIterator::test_enumerator): add
13187           test for enumerators.
13189 Wed Aug  8 11:48:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13191         * bignum.c (rb_big2str0): should not use RTEST for non-VALUE.
13193 Wed Aug  8 11:25:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13195         * bignum.c (rb_big2str0): should preserve sign mark.
13197 Wed Aug  8 11:02:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13199         * common.mk (btest-miniruby, test-sample): split the test target
13200           so that -k option works.
13202 Tue Aug  7 14:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13204         * ext/pty/pty.c (establishShell): handshaking before close slave
13205           device.  [ruby-talk:263410]
13207         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): constified.
13209         * ext/pty/pty.c (SlaveName): removed static buffer.
13211         * ext/pty/expect_sample.rb: support for autologin.
13213 Tue Aug  7 13:58:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13215         * include/ruby/ruby.h (ruby_special_consts): added RUBY_SPECIAL_SHIFT.
13217         * .gdbinit: some improvements.
13219 Tue Aug  7 13:28:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13221         * common.mk (node_name.inc): use $? instead of $< for nmake.
13222           [ruby-dev:31356]
13224 Tue Aug  7 12:45:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13226         * configure.in (ac_cv_func_isinf): set yes also on OpenSolaris.
13227           [ruby-Bugs-12859]
13229 Tue Aug  7 12:31:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13231         * io.c (pipe_open): fix for win32 platforms.
13233 Tue Aug  7 02:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13235         * bignum.c (rb_big2str0): make Bignum#to_s even faster.  a patch
13236           from Kenta Murata <muraken AT gmail.com>.  [ruby-dev:31354]
13238 Tue Aug  7 01:42:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13240         * enum.c (enum_zip): zip no longer converts arguments into
13241           arrays, uses enumerators.
13243 Tue Aug  7 01:27:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13245         * cont.c (rb_fiber_yield): change argument ordering.  export.
13247         * cont.c (rb_fiber_current): export
13249         * include/ruby/intern.h: export several functions from cont.c.
13251         * enumerator.c (enumerator_next): new method to implement external
13252           iterator (generator) using fiber.
13254         * enumerator.c (enumerator_next_p): new method to check whether
13255           any element is left in the generator sequence.
13257         * enumerator.c (enumerator_rewind): a new method to rewind the
13258           generator sequence.
13260 Tue Aug  7 01:15:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13262         * enum.c (enum_cycle): new method to cycle enumerable forever.
13264 Tue Aug  7 00:05:38 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
13266         * irb/ruby-lex.rb: support for '\c'. [ruby-talk:263508]
13268 Mon Aug  6 20:29:22 2007  Koichi Sasada  <ko1@atdot.net>
13270         * insnhelper.ci, insns.def: move some statements to functions.
13272         * vm.c, vm.h, vm_evalbody.ci: fix include/typedef places.
13274 Mon Aug  6 18:41:12 2007  Koichi Sasada  <ko1@atdot.net>
13276         * lib/vm/instruction.rb (make_header_analysys): fix last commit.
13278 Mon Aug  6 18:33:22 2007  Koichi Sasada  <ko1@atdot.net>
13280         * lib/vm/instruction.rb (make_header_analysys): add to separate
13281           header addition process.
13283 Mon Aug  6 17:36:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13285         * lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax.
13287 Mon Aug  6 16:57:08 2007  Koichi Sasada  <ko1@atdot.net>
13289         * sample/test.rb: fix to output file name if it contains
13290           invalid syntax.
13292 Mon Aug  6 16:41:22 2007  Koichi Sasada  <ko1@atdot.net>
13294         * parse.y (value_expr_gen): fix to cause "void value expression"
13295           when jump expression such as "next" are shown on value_expr().
13296           [ruby-dev:31119]
13298         * bootstraptest/test_syntax.rb: fix to above change.
13300 Mon Aug  6 14:36:30 2007  Koichi Sasada  <ko1@atdot.net>
13302         * parse.y: fix a f_marg rule. [ruby-dev:31160]
13304 Mon Aug  6 14:29:30 2007  Koichi Sasada  <ko1@atdot.net>
13306         * bootstraptest/runner.rb (assert_equal): add additional
13307           message parameter.
13309 Mon Aug  6 13:34:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13311         * common.mk (INSNS): not chdir to srcdir.
13313         * common.mk (node_name.inc): auto-generate node name list.
13315         * iseq.c (ruby_node_name): ditto.
13317         * iseq.c (iseq_s_compile_option_get, Init_ISeq): added a new
13318           method VM::InstructionSequence::compile_option.
13320         * lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
13321           option.
13323         * tool/node_name.rb: to auto-generate node name list.
13325 Sun Aug  5 11:51:39 2007  Kouhei Sutou  <kou@cozmixng.org>
13327         * lib/rss, sample/rss, test/rss:
13328         - 0.1.7 -> 0.1.8.
13329         - supported <itunes:XXX>.
13330         - reverted backward incompatibility API changes introduced 0.1.7.
13332 Sun Aug  5 04:56:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13334         * io.c (pipe_open_v, pipe_open_s): separate array and string
13335           cases.  [ruby-dev:31344]
13337 Fri Aug  3 11:05:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13339         * ext/extmk.rb (extmake): save all CONFIG values.
13341         * ext/extmk.rb (extmake): remove mkmf.log at clean, and extconf.h at
13342           distclean, respectively.
13344         * ext/extmk.rb: remove rdoc at clean, and installed list file at
13345           distclean, respectively.
13347 Fri Aug  3 07:09:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13349         * lib/mkmf.rb: more verbose message.  [ruby-Bugs-12766]
13351         * lib/mkmf.rb (have_type): suppress a warning with -Wall.
13353         * lib/mkmf.rb (find_type): new method.
13355 Fri Aug  3 00:00:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13357         * bignum.c (big2str_table): base cannot be 0 or 1.
13359 Thu Aug  2 23:42:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13361         * parse.y (reg_compile_gen): set error if failed to compile regexp
13362           literal.  [ruby-dev:31336]
13364         * re.c (option_to_str, arg_kcode, opt_kcode): options conversion
13365           between int and string.
13367         * re.c (rb_reg_compile): should not use regexp which could not get
13368           initialized.  [ruby-dev:31333]
13369           return error message to let the parser know it.
13371         * re.c (rb_reg_compile): append regexp options to error message.
13372           [ruby-dev:31334]
13374 Thu Aug  2 22:05:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13376         * bignum.c (rb_big2str0): faster Bignum#to_s using Karatsuba
13377           algorithm.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
13378           in [ruby-dev:31312], slightly modified by Kenta Murata
13379           <muraken AT gmail.com> in [ruby-dev:31339].
13381 Thu Aug  2 13:46:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13383         * sprintf.c (rb_f_sprintf): should not check positional number as
13384           width.  [ruby-core:11838]
13386 Wed Aug  1 12:40:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13388         * generic.rb (URI::Generic::merge_path): behave as RFC 3986.
13389           [ruby-talk:252052]
13391 Tue Jul 31 23:38:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13393         * lib/date/format.rb (_parse): now interprets slashed numerical
13394           dates as a big endian (except dd/mm/yyyy). [experimental]
13396 Mon Jul 30 11:16:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13398         * bignum.c (rb_big_aref): check for Bignum index range.
13399           [ruby-dev:31271]
13401 Sat Jul 28 09:35:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13403         * ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
13404           infinite recursive const_missing call.  [ruby-talk:262193]
13406 Thu Jul 26 20:40:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13408         * range.c (range_eqq): call_super() in === does not work well
13409           since Enumerable#=== has different behavior.  [ruby-dev:31296]
13411 Thu Jul 26 13:57:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13413         * dln.c (load_1, dln_find_1): constified.
13415         * dln.c (conv_to_posix_path): removed.
13417         * ruby.c (usage): constified.
13419         * ruby.c (rubylib_mangled_path, rubylib_mangled_path2): return
13420           VALUE instead of a pointer to static buffer.
13422         * ruby.c (push_include_cygwin): fixed buffer overflow.
13423           [ruby-dev:31297]
13425         * ruby.c (ruby_init_loadpath): not convert built-in paths.
13427 Tue Jul 24 10:37:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13429         * io.c (rb_f_p): return nil if no argument.  [ruby-dev:31285]
13431 Tue Jul 24 01:05:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13433         * regint.h (USE_MATCH_RANGE_IS_COMPLETE_RANGE): undef to achieve old
13434           rindex behavior.  [ruby-dev:31265]
13436 Mon Jul 23 18:37:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13438         * include/ruby/oniguruma.h: upgrade to Oniguruma 5.9.0.  fixes
13439           some memory violation.  [ruby-dev:31070]
13441 Sun Jul 22 20:09:49 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13443         * lib/date/format.rb (Date._parse): now accepts some new
13444           hints. [experimental]
13446         * lib/parsedate.rb: followed the changes on
13447           lib/date/format.rb. [experimental]
13449 Sun Jul 22 16:06:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13451         * thread.c (is_ruby_native_thread): made an int function as
13452           well as version 1.8.
13454         * include/ruby/ruby.h (is_ruby_native_thread): moved prototype
13455           from intern.h as well as version 1.8.
13457 Sun Jul 22 14:33:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13459         * file.c (rb_file_s_rename): deleted code to get rid of a bug of
13460           old Cygwin.
13462         * file.c (rb_file_truncate): added prototype of GetLastError()
13463           on cygwin.  [ruby-dev:31239]
13465         * include/ruby/intern.h (is_ruby_native_thread): prototype.
13467         * missing/strftime.c (strftime): fix printf format and actual
13468           arguments.
13470         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
13472         * ext/tk/tcltklib.c (ip_finalize): ditto.
13474         * ext/win32ole/win32ole.c (lcid_installed): ditto.
13476         * ext/socket/getnameinfo.c: include stdio.h always.
13478 Sat Jul 21 21:39:12 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13480         * lib/date.rb, lib/date/format.rb (Date._parse): now can take some
13481           hints (its aim must be mainly determination of endianness of
13482           date). [experimental]
13484         * lib/date.rb, lib/date/format.rb (Date._parse): now completes
13485           truncated year as default action. [experimental]
13487         * lib/date.rb, lib/date/format.rb: added ::iso8601, ::rfc3339,
13488           ::xmlschema, ::rfc2822, ::httpdate, ::jisx0301, #xmlschema,
13489           #httpdate. [experimental]
13491 Sat Jul 21 17:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13493         * common.mk: inverted rules order.
13495         * thread_win32.ci (w32_create_thread): bcc does not have
13496           _beginthreadex().
13498         * lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
13499           only if extconf.h is created.
13501         * bcc32/Makefile.sub: headers have moved.
13503         * bcc32/{Makefile.sub,configure.bat,setup.mak: configure_args
13504           support.
13506         * bcc32/setup.mak: check runtime version.
13508         * win32/win32.c (rb_w32_open_osfhandle): prototype has changed
13509           in bcc 5.82.
13511         * {win32,wince,bcc32}/setup.mak (-version-): no RUBY_EXTERN magic.
13513         * win32/resource.rb: include patchlevel number.
13515 Sat Jul 21 12:06:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13517         * lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
13519 Sat Jul 21 01:45:03 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13521         * lib/date/format.rb (Date._parse): completes calendar week based year.
13523         * lib/date/format.rb (Date._parse): detects year of ordinal date in
13524           extended format.
13526 Fri Jul 20 16:30:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13528         * compile.c (iseq_set_sequence): raise SyntaxError instead of rb_bug
13529           since this function can be called from VM::InstructionSequence.load.
13531         * compile.c (insn_set_sc_state, iseq_set_sequence_stackcaching): ditto.
13533 Fri Jul 20 16:11:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13535         * compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
13536           initialize aggregations with dynamic values.  [ruby-talk:259306]
13538         * eval.c (rb_protect): not to initialize aggregations with dynamic
13539           values.  [ruby-talk:259306]
13541         * gc.c (mark_current_machine_context): ditto.
13543         * thread.c (thgroup_list, call_trace_func): ditto.
13545         * vm.c (vm_init_redefined_flag): ditto.
13547 Fri Jul 20 15:22:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13549         * ext/openssl/ossl_config.c (ossl_config_set_section): do not
13550           initialize aggregations with dynamic values.  [ruby-talk:259306]
13552 Fri Jul 20 10:39:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13554         * parse.y (stmt, mlhs_node, lhs, arg, var_ref): return dummy
13555           NODE_BEGIN after errors.  [ruby-dev:31100], [ruby-dev:31118]
13557         * parse.y (remove_begin): keep empty NODE_BEGIN, instead of null.
13558           [ruby-dev:31252], [ruby-dev:31263]
13560 Fri Jul 20 09:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13562         * bootstraptest/runner.rb (get_result_string): check $?.coredump?
13563           first.
13565         * bootstraptest/runner.rb (cleanup_coredump, check_coredump): see
13566           stackdump file too.
13568 Thu Jul 19 20:39:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13570         * parse.y (value_expr_gen): warn for empty expression ().
13571           [ruby-dev:31252]
13573 Thu Jul 19 19:24:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13575         * eval_error.ci (get_backtrace): check the result more.
13576           [ruby-dev:31261] [ruby-bugs-12398]
13578 Thu Jul 19 14:38:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13580         * bignum.c (rb_big_lshift, rb_big_rshift): separated functions
13581           to get rid of infinite recursion.  fixed calculation in edge
13582           cases.  [ruby-dev:31244]
13584         * numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
13586 Wed Jul 18 16:57:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13588         * bignum.c (rb_big_pow): refine overflow check.  [ruby-dev:31242]
13590 Wed Jul 18 09:19:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13592         * parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
13593           for node to the head.
13595         * ruby.c (proc_options): do nothing for -p/-n options if tree is null.
13596           submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
13598 Wed Jul 18 08:47:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13600         * time.c (time_succ): Time#succ should return a time object in the
13601           same timezone mode to the original.  [ruby-talk:260256]
13603 Mon Jul 16 23:07:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13605         * lib/base64.rb (Base64::b64encode): should not specify /o option
13606           for regular expression.  [ruby-dev:31221]
13608 Mon Jul 16 22:57:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13610         * sprintf.c (rb_str_format): make %u behave like %d for negative
13611           values, since decimal format does not work with preceding dots.
13612           [ruby-core:11575]
13614 Mon Jul 16 18:29:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13616         * string.c (rb_str_rindex_m): accept string-like object convertible
13617           with #to_str method, as well as rb_str_index_m.  [ruby-core:11692]
13619 Mon Jul 16 07:17:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13621         * insns.def (getspecial): lfp_svar_get() requires int for special
13622           global variables.
13624 Mon Jul 16 05:45:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13626         * sprintf.c (rb_f_sprintf): more checks for format argument.
13627           [ruby-core:11569], [ruby-core:11570], [ruby-core:11571],
13628           [ruby-core:11573]
13630 Mon Jul 16 00:26:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13632         * bignum.c (rb_big_pow): removed invariant variable.  [ruby-dev:31236]
13634 Sun Jul 15 22:24:37 2007  pegacorn  <subscriber.jp AT gmail.com>
13636         * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format.  [ruby-dev:31222]
13638         * ext/digest/digest.c (rb_digest_instance_update,
13639           rb_digest_instance_finish, rb_digest_instance_reset,
13640           rb_digest_instance_block_length): %s in rb_raise() expects char*.
13641           [ruby-dev:31222]
13643         * ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]
13645         * ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]
13647         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
13648           instead of rb_raise().  [ruby-dev:31222]
13650         * ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]
13652         * ext/syck/syck.h: include stdlib.h for malloc() and free().
13653           [ruby-dev:31232]
13655         * ext/syck/syck.h (syck_parser_set_input_type): prototype added.
13656           [ruby-dev:31231]
13658         * win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]
13660         * include/ruby/win32.h (rb_w32_getcwd): prototype added.
13661           [ruby-dev:31232]
13663 Sun Jul 15 21:07:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13665         * bignum.c (bigtrunc): do not empty Bignum.  [ruby-dev:31229]
13667 Sun Jul 15 19:05:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13669         * bignum.c (rb_cstr_to_inum): check leading non-digits.
13670           [ruby-core:11691]
13672 Sun Jul 15 04:42:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13674         * bignum.c (get2comp): do nothing for empty Bignum.  [ruby-dev:31225]
13676 Sat Jul 14 22:49:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13678         * numeric.c (fix_pow): integer power calculation: 0**n => 0,
13679           1**n => 1, -1**n => 1 (n: even) / -1 (n: odd).
13681         * test/ruby/test_fixnum.rb (TestFixnum::test_pow): update test
13682           suite.  pow(-3, 2^64) gives NaN when pow(3, 2^64) gives Inf.
13684 Sat Jul 14 18:46:35 2007  Tanaka Akira  <akr@fsij.org>
13686         * configure.in: add --with-valgrind.
13688         * gc.h (SET_MACHINE_STACK_END): new macro to replace
13689           rb_gc_set_stack_end.  it find out accurate stack boundary by
13690           asm using gcc on x86.
13692         * thread.c (rb_gc_set_stack_end): don't define if asm-version
13693           SET_MACHINE_STACK_END is available.
13695         * gc.c (mark_current_machine_context): extracted from garbage_collect.
13696           it use SET_MACHINE_STACK_END to not scan out of stack area.
13697           it notify conservative GC information to valgrind if
13698           --with-valgrind.
13700 Sat Jul 14 14:04:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13702         * enum.c (sort_by_cmp): check if reentered.  [ruby-dev:24291]
13704 Sat Jul 14 11:08:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13706         * ext/json/ext/generator/generator.c (check_max_nesting): wrong
13707           format specifier.  a patch from pegacorn <subscriber.jp AT gmail.com>.
13708           [ruby-dev:31217]
13710 Sat Jul 14 02:27:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13712         * numeric.c (int_pow): overflow detection using FIT_SQRT_LONG().
13713           [ruby-dev:31215]
13715 Sat Jul 14 02:05:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13717         * insns.def (opt_div): LONG2FIX() may not work for corner cases,
13718           use LONG2NUM() instead.  [ruby-dev:31210]
13720 Sat Jul 14 00:34:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13722         * numeric.c (int_round): should not return false, but self.
13723           [ruby-dev:31212]
13725 Fri Jul 13 18:31:27 2007  Koichi Sasada  <ko1@atdot.net>
13727         * include/ruby/intern.h: remove unused function declarations.
13729         * include/ruby/ruby.h: ditto.
13731 Fri Jul 13 17:32:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13733         * vm.c (vm_free): clear free'ed living_threads field.
13734           [ruby-dev:31163]
13736         * insns.def (opt_succ): use cast to shut a warning up.
13738 Fri Jul 13 16:10:00 2007  Tanaka Akira  <akr@fsij.org>
13740         * lib/open-uri.rb (URI::Generic#find_proxy): use ENV.to_hash to access
13741           http_proxy environment variable to avoid case insensitive
13742           environment search.
13744 Fri Jul 13 15:02:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13746         * win32/win32.c (CreateChild): enclose command line except for
13747           command.com which can not handle quotes.  [ruby-talk:258939]
13749 Fri Jul 13 11:33:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13751         * range.c (range_max, range_min): return nil for empty set as well as
13752           1.8 and Enumerable.  [ruby-dev:31198]
13754 Fri Jul 13 11:28:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13756         * parse.y (bvar): semicolon was lost for ripper description.
13757           [ruby-dev:31140]
13759 Fri Jul 13 11:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13761         * parse.y (program, stmt, primary): reduced duplicated code.
13763         * parse.y (dsym): convert also literals containing NUL to
13764           symbol.
13766         * parse.y (debug_lines): use rb_hash_lookup() to get rid of
13767           call of Hash#default.
13769         * parse.y (ripper_warningS): unused in ripper right now.
13771 Fri Jul 13 10:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13773         * array.c (rb_ary_flatten_bang): check argument if valid
13774           integer.  [ruby-dev:31197]
13776 Fri Jul 13 10:10:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13778         * lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
13779           ::CONFIG which is an alias of MAKEFILE_CONFIG.
13781 Thu Jul 12 21:38:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13783         * insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
13784           [ruby-dev:31199]
13786 Thu Jul 12 18:42:18 2007  Tanaka Akira  <akr@fsij.org>
13788         * range.c (range_max): use FIX2LONG instead of FIX2INT to avoid
13789           RangeError by ((-0x80000001)...(-0x80000001)).max on LP64.
13791         * insns.def (opt_plus): use FIX2LONG instead of FIX2INT to avoid
13792           RangeError by 0x3fffffffffffffff+1 on LP64.
13794         * insns.def (opt_succ): don't use 0x80000000 which assumes 32bit VALUE.
13795           use FIX2LONG instead of FIX2INT.
13796           [ruby-dev:31190]
13798 Thu Jul 12 17:03:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13800         * struct.c (rb_struct_init_copy): disallow changing the size.
13801           [ruby-dev:31168]
13803 Thu Jul 12 12:58:21 2007  Koichi Sasada  <ko1@atdot.net>
13805         * blockinlining.c: remove "yarv" prefix.
13807         * array.c, numeric.c: ditto.
13809         * insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
13811         * yarvcore.c: removed.
13813         * yarvcore.h: renamed to core.h.
13815         * cont.c, debug.c, error.c, process.c, signal.c : ditto.
13817         * ext/probeprofiler/probeprofiler.c: ditto.
13819         * id.c, id.h: added.
13821         * inits.c: ditto.
13823         * compile.c: rename internal functions.
13825         * compile.h: fix debug flag.
13827         * eval.c, object.c, vm.c: remove ruby_top_self.
13828           use rb_vm_top_self() instead.
13830         * eval_intern.h, eval_load: ditto.
13832         * gc.c: rename yarv_machine_stack_mark() to
13833           rb_gc_mark_machine_stack().
13835         * insnhelper.h: remove unused macros.
13837         * iseq.c: add iseq_compile() to create iseq object
13838           from source string.
13840         * proc.c: rename a internal function.
13842         * template/insns.inc.tmpl: remove YARV prefix.
13844         * thread.c: use rb_iseq_eval() and rb_str_new2().
13846         * vm.c (rb_iseq_eval): added.
13848         * vm.c: move some functions from yarvcore.c.
13850         * vm_dump.c: fix to remove compiler warning.
13852 Thu Jul 12 12:24:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13854         * insns.def (opt_succ): fixed typo.  [ruby-dev:31189]
13856 Thu Jul 12 10:30:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13858         * thread.c (thread_start_func_2): moved prototye from thread_*.ci.
13860         * thread_pthread.ci (thread_start_func_2): not use a directive
13861           inside a macro argument.  [ruby-talk:258763]
13863         * thread.c (thread_join): pthread_t may not be pointer.
13865         * thread_pthread.ci (ubf_select_each): ditto.
13867 Thu Jul 12 05:32:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13869         * include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
13871 Tue Jul 10 19:34:45 2007  Koichi Sasada  <ko1@atdot.net>
13873         * hash.c (rb_hash_lookup): added.  this function is similar to
13874           rb_hash_aref(), but doesn't call Hash#default when no entry
13875           exists.
13877         * include/ruby/intern.h: ditto.
13879         * insnhelper.ci (lfp_svar_get): use rb_hash_lookup().
13881 Tue Jul 10 19:16:28 2007  Koichi Sasada  <ko1@atdot.net>
13883         * eval.c, insnhelper.ci, vm.c: change cref index (-1 -> 2).
13885 Tue Jul 10 18:49:56 2007  Koichi Sasada  <ko1@atdot.net>
13887         * eval.c (exec_under): add proper casts.
13889 Tue Jul 10 16:58:16 2007  Koichi Sasada  <ko1@atdot.net>
13891         * vm.c, insnhelper.ci: fix svar interface.
13893         * compile.c (iseq_compile_each), yarvcore.h: fix to use new
13894           svar interface for flip flop.
13896         * eval.c: ditto.
13898         * insns.def: ditto.
13900         * include/ruby/intern.h: remove "rb_svar()" declaration.
13902 Tue Jul 10 16:52:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13904         * compile.c (rb_iseq_compile): formatted if/else to switch statement.
13906 Tue Jul 10 15:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13908         * bootstraptest/test_flip.rb: new test for flip-flop operator.
13910 Tue Jul 10 14:50:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13912         * bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
13914 Mon Jul  9 02:17:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13916         * cont.c (cont_restore_1): workaround for x64-mswin64's SEH.
13918 Sun Jul  8 02:08:53 2007  NARUSE, Yui  <naruse@ruby-lang.org>
13920         * lib/json.rb, lib/json/, ext/json/: import JSON 1.1.1
13922 Sat Jul  7 21:59:29 2007  Tanaka Akira  <akr@fsij.org>
13924         * lib/pp.rb (PP::PPMethods#pp_hash): sort condition changed:
13925           all keys have a same class which is kind of Comparable.
13927 Sat Jul  7 17:12:37 2007  Koichi Sasada  <ko1@atdot.net>
13929         * compile.c: use rb_bug() instead of rb_compile_error().
13931 Sat Jul  7 16:12:48 2007  Koichi Sasada  <ko1@atdot.net>
13933         * parse.y: fix node construction (around f_margs).
13934           [ruby-dev:31143]
13936         * bootstraptest/test_block.rb: add a test for above.
13938         * insnhelper.ci: fix indent.
13940 Sat Jul  7 15:36:50 2007  Tanaka Akira  <akr@fsij.org>
13942         * lib/pp.rb (PP::PPMethods#pp_hash): sort if
13943           all keys are strings, symbols or integers.
13945 Sat Jul  7 15:30:05 2007  Koichi Sasada  <ko1@atdot.net>
13947         * insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
13948           fix to pass nil as block parameter to yielded block.
13949           [ruby-dev:31147]
13951         * bootstraptest/test_block.rb: add a test for above.
13953 Fri Jul  6 19:55:10 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
13955         * lib/irb.rb: typo. Thanks, Giles Bowkett.
13957         * lib/irb/completion.rb: support Ruby1.9 changing return value
13958           String to Symbol for Object#methods, etc. [ruby-dev:31148].
13960 Fri Jul  6 18:20:50 2007  Koichi Sasada  <ko1@atdot.net>
13962         * bootstraptest/runner.rb: fix load path.
13964         * common.mk: fix "test" rule to run with "btest".
13966         * rubytest.rb, sample/test.rb: fix to show tests progress.
13968 Fri Jul  6 15:37:48 2007  Koichi Sasada  <ko1@atdot.net>
13970         * test/ruby/test_iterator.rb: fix test to 1.9 spec.
13972 Fri Jul  6 15:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13974         * eval.c (rb_interrupt): suppress a gcc's officious warning.
13976 Fri Jul  6 14:57:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13978         * parse.y (keyword_to_name): constified.
13980         * ext/ripper/eventids2.c (token_to_eventid): ditto.
13982 Fri Jul  6 14:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13984         * bootstraptest/runner.rb: added --quiet option.
13986 Fri Jul  6 14:35:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13988         * parse.y (f_marg): wrap f_norm_arg assignment node with NODE_LIST.
13989           [ruby-dev:31141]
13991 Fri Jul  6 12:15:01 2007  Tanaka Akira  <akr@fsij.org>
13993         * test/ruby/sentgen.rb: new file.
13995         * test/ruby/test_assignment.rb: tests implemented using assignment
13996           generator and emulator.
13998 Fri Jul  6 03:06:58 2007  Koichi Sasada  <ko1@atdot.net>
14000         * insns.def: remove unused code.
14002         * compile.c (compile_massign): fix to invoke to_splat on
14003           splat rhs (example: *a = *nil). [ruby-dev:31136]
14005         * bootstraptest/test_massign.rb: add tests for above.
14007         * compile.c (iseq_compile_each): disable excess optimization.
14008           [ruby-dev:31126]
14010 Fri Jul  6 02:08:25 2007  Koichi Sasada  <ko1@atdot.net>
14012         * insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
14013           [ruby-dev:31138].
14015         * bootstraptest/test_literal.rb: add tests for above.
14017 Thu Jul  5 19:45:55 2007  Koichi Sasada  <ko1@atdot.net>
14019         * yarvcore.h: rename rb_control_frame_t#magic to flag.
14021         * vm.h: add VM_FRAME_TYPE() and VM_FRAME_FLAG().
14023         * cont.c, insnhelper.ci, insns.def, vm.c, vm_dump.c,
14024           vm_evalbody.ci, yarvcore.c: apply above changes.
14026 Thu Jul  5 19:16:14 2007  Koichi Sasada  <ko1@atdot.net>
14028         * test/ruby/test_basicinstructions.rb: remove an assertion using
14029           unsupported hash literal (such as {1, 2}).
14031         * test/ruby/test_hash.rb: ditto.
14033 Thu Jul  5 19:12:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14035         * ruby.c: Qfalse is VALUE, not pointer.
14037 Thu Jul  5 18:42:01 2007  Koichi Sasada  <ko1@atdot.net>
14039         * compile.c (iseq_compile_each): add break catch point.
14041         * insns.def (throw): support correct "break" and "return".
14042           this commit achieve that "make test" passes all tests.
14044         * vm.c: ditto.
14046 Thu Jul  5 18:44:12 2007  Tanaka Akira  <akr@fsij.org>
14048         * parse.y (mlhs_basic): use mlhs_post after tSTAR.
14049           [ruby-dev:31109]
14051 Thu Jul  5 18:27:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14053         * include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
14054           eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
14055           yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
14056           ruby_nerrs): purge global variables.
14058         * ruby.c (proc_options): moved do_print and do_loop options
14059           handling from ruby_process_options().
14061 Thu Jul  5 16:37:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14063         * numeric.c (int_pow): fix previous nubu's commit.
14065         * test/ruby/test_fixnum.rb: new test.
14067 Thu Jul  5 15:56:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14069         * numeric.c (int_pow): even number multiplication never be negative.
14071 Thu Jul  5 10:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14073         * include/ruby/{node,ruby}.h, ruby.c: added enum constants for gdb
14074           support.  [ruby-dev:31066]
14076         * .gdbinit: some improvements.
14078 Thu Jul  5 10:13:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14080         * parse.y (global_symbols.last_id): reduce unused ID numbers.
14082         * include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
14083           constified.
14085 Wed Jul  4 23:36:27 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
14087         * lib/webrick/httpauth/authenticator.rb
14088           (WEBrick::HTTPAuth::Authenticator#check_scheme): auth-scheme must be
14089           treated as a case-insensitive token according to RFC 2617 section 1.2.
14091 Wed Jul  4 18:30:04 2007  Tanaka Akira  <akr@fsij.org>
14093         * parse.y (mlhs_inner): new rule.  [ruby-dev:31132]
14095 Wed Jul  4 05:11:57 2007  Koichi Sasada  <ko1@atdot.net>
14097         * iseq.c (set_relation): added.
14099 Wed Jul  4 04:58:30 2007  Koichi Sasada  <ko1@atdot.net>
14101         * insnhelper.ci (caller_setup_args): fix to show correct class
14102           on an error message (ex: m(&1)). [ruby-dev:31101]
14104 Wed Jul  4 04:30:32 2007  Koichi Sasada  <ko1@atdot.net>
14106         * compile.c (compile_array, iseq_compile_each): fix about array
14107           generation in void context. [ruby-dev:31102]
14109         * bootstraptest/test_literal.rb: add a test for above.
14111 Wed Jul  4 04:07:00 2007  Koichi Sasada  <ko1@atdot.net>
14113         * compile.c (compile_array): ignore NODE_ZARRAY.
14114           [ruby-dev:31110]
14116         * bootstraptest/test_method.rb: add a test for above.
14118 Wed Jul  4 04:04:02 2007  Koichi Sasada  <ko1@atdot.net>
14120         * compile.h: fix debug print level.
14122 Wed Jul  4 03:52:55 2007  Koichi Sasada  <ko1@atdot.net>
14124         * compile.c (iseq_compile_each): support v[&b]= type method call.
14125           [ruby-dev:31094]
14127         * bootstraptest/test_method.rb: add a test for above.
14129 Wed Jul  4 03:43:29 2007  Koichi Sasada  <ko1@atdot.net>
14131         * compile.c (compile_massign): fix massign compilation
14132           (example: a, *v, (*x) = ...).  [ruby-dev:31107]
14134         * bootstraptest/test_massign.rb: add tests for above.
14136 Tue Jul  3 23:12:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14138         * include/ruby/onigiruma.h (ONIG_EXTERN): use RUBY_EXTERN if defined.
14140         * regenc.h: include ruby/defines.h.
14142         * regint.h: x64-mswin64 support.
14144 Tue Jul  3 13:47:44 2007  Koichi Sasada  <ko1@atdot.net>
14146         * cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
14148 Mon Jul  2 21:45:53 2007  Koichi Sasada  <ko1@atdot.net>
14150         * compile.c: rename iseq_translate_direct_threaded_code()
14151           to iseq_translate_threaded_code().
14153         * eval_intern.h, yarvcore.h: mv EXEC_EVENT_HOOK() and
14154           exec_event_hooks() to yarvcore.h.
14156         * insnhelper.ci, vm.c: mv yarv_finish_insn_seq to vm.c.
14158         * insns.def (opt_call_c_function): fix to use RESTORE_REGS().
14160         * iseq.c (rb_iseq_build_for_ruby2cext): fix to allocate iseq.
14162 Mon Jul  2 11:59:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14164         * insns.def (defineclass): suppress a warning.
14166         * insns.def (opt_call_c_function): should raise the thrown exception
14167           instead of returning it.
14169 Mon Jul  2 08:53:47 2007  Koichi Sasada  <ko1@atdot.net>
14171         * eval_intern.h, yarvcore.h: move declaration of sysstack_error
14172           to yarvcore.h.
14174         * iseq.c: fix symbol name (:toplevel -> :top).
14176         * lib/vm/instruction.rb, template/vm.inc.tmpl: replaceable
14177           current file name.
14179 Mon Jul  2 05:29:07 2007  Koichi Sasada  <ko1@atdot.net>
14181         * compile.c, iseq.c: fix iseq some of load/store process.
14183 Mon Jul  2 03:09:36 2007  Koichi Sasada  <ko1@atdot.net>
14185         * yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
14186           rename structure names and field names.
14188         * insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
14190         * iseq.c: add rb_iseq_build_for_ruby2cext().
14192         * yarvcore.h, vm.h: move declaration of rb_insn_func_t
14193           to yarvcore.h.
14195 Sun Jul  1 03:25:53 2007  Koichi Sasada  <ko1@atdot.net>
14197         * insnhelper.h, vm.h: some refactoring.
14198           remove useless comments, etc.
14200 Sun Jul  1 03:02:29 2007  Koichi Sasada  <ko1@atdot.net>
14202         * yarvcore.h: some refactoring on rb_iseq_t.
14203           rename some variable names, add comments, etc.
14205         * compile.c, iseq.c, proc.c, vm.c: ditto.
14207 Sun Jul  1 02:57:57 2007  Koichi Sasada  <ko1@atdot.net>
14209         * vm.h: rename insn_func_type to rb_insn_func_type.
14211         * vm_evalbody.ci: ditto.
14213         * insns.def: add opt_call_native_compiled instruction
14214           instead of opt_call_native_compiled.
14216 Sat Jun 30 00:17:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14218         * parse.y (parser_yylex): return non-valid token for an invalid
14219           instance/class variable name.  a patch from Yusuke ENDOH
14220           <mame AT tsg.ne.jp>.  [ruby-dev:31095]
14222 Fri Jun 29 23:38:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14224         * parse.y (stmts): fix for ripper.
14226 Fri Jun 29 21:55:48 2007  Koichi Sasada  <ko1@atdot.net>
14228         * parse.y: fix to show line number of blank block.
14229           [ruby-dev:31093]
14231 Fri Jun 29 20:51:04 2007  Tanaka Akira  <akr@fsij.org>
14233         * lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
14234           follow Ruby 1.8.
14236 Fri Jun 29 17:10:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14238         * debug.h: constified.
14240         * debug.c (ruby_set_debug_option): separated from main.c.
14242         * gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed.
14244 Fri Jun 29 16:39:06 2007  Koichi Sasada  <ko1@atdot.net>
14246         * proc.c (proc_new): fix to return a proc object
14247           which block is contained ([ruby-dev:31056]).
14249 Fri Jun 29 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14251         * numeric.c (fix_pow): get rid of division by zero.  reported by
14252           Yusuke ENDOH <mame AT tsg.ne.jp> [ruby-dev:31040]
14254         * numeric.c (int_round): do nothing when rounding by zeroth digit.
14255           check underflow.  [ruby-dev:31043]
14257 Fri Jun 29 15:32:00 2007  Koichi Sasada  <ko1@atdot.net>
14259         * configure.in: add fastcall attribute check.
14261 Fri Jun 29 14:51:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14263         * parse.y (assoc_list): remove expanded hash literal (no splat).
14265         * lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::EOFError): adapt
14266           to new syntax.
14268 Fri Jun 29 14:48:18 2007  Koichi Sasada  <ko1@atdot.net>
14270         * tool/insns2vm.rb, lib/vm/instruction.rb: move process body
14271           to lib/vm/instruction.rb.
14273         * common.mk: fix aotc rule.
14274           experimental. bin/ruby2cext is not added yet.
14276 Fri Jun 29 11:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14278         * parse.y (dsym): return non-null NODE even if yyerror().  based on a
14279           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:31085]
14281 Thu Jun 28 23:29:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14283         * parse.y (assoc_list): odd number check only for NODE_ARRAY.
14284           [ruby-dev:31082]
14286 Thu Jun 28 22:24:33 2007  Koichi Sasada  <ko1@atdot.net>
14288         * win32/Makefile.sub: define FUNC_FASTCALL macro.
14290         * vm.h: fix to use FUNC_FASTCALL macro.
14291           TODO: add FUNC_FASTCALL macro by configure.
14293 Thu Jun 28 19:38:53 2007  Koichi Sasada  <ko1@atdot.net>
14295         * compile.c: fix to remove -Wall warnings on gcc.
14297         * compile.c (make_name_with_str): removed. use rb_sprintf() instead.
14299 Thu Jun 28 18:53:01 2007  Tanaka Akira  <akr@fsij.org>
14301         * bignum.c (rb_big_hash): fix hash area.
14303 Thu Jun 28 15:00:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14305         * ext/stringio/stringio.c (strio_getline): local variable to be
14306           initialized.  [ruby-dev:31077]
14308 Thu Jun 28 11:30:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14310         * gc.c (rb_obj_id): use SIGNED_VALUE instead of long.
14312 Thu Jun 28 05:01:56 2007  Koichi Sasada  <ko1@atdot.net>
14314         * common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
14316         * vm.c (rb_vm_set_finish_env): add a cast.
14318         * vm.h: support __fastcall for MSVC.
14320 Thu Jun 28 02:12:08 2007  Koichi Sasada  <ko1@atdot.net>
14322         * bootstraptest/runner.rb: fix to untouch $:.
14324 Thu Jun 28 02:03:07 2007  Koichi Sasada  <ko1@atdot.net>
14326         * compile.c (setup_args): change parameter type.
14328 Thu Jun 28 02:03:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14330         * parse.y (rb_intern2): unconstify cast.
14332 Thu Jun 28 01:44:31 2007  Tanaka Akira  <akr@fsij.org>
14334         * parse.y (rb_intern2): don't allocate a string object at first.
14335           [ruby-dev:31064]
14337 Thu Jun 28 01:24:02 2007  Koichi Sasada  <ko1@atdot.net>
14339         * bootstraptest/runner.rb: fix to show file name.
14341         * bootstraptest/test_*.rb: add bootstrap tests.
14343 Thu Jun 28 01:22:15 2007  Koichi Sasada  <ko1@atdot.net>
14345         * include/ruby/node.h, parse.y, gc.c, iseq.c: remove NODE_CREF.
14347 Thu Jun 28 01:19:43 2007  Koichi Sasada  <ko1@atdot.net>
14349         * compile.c (iseq_compile_each): fix popped backref and others.
14350           ([ruby-dev:31068]).
14352         * compile.c (iseq_compile_each): remove needless statements.
14354 Wed Jun 27 23:51:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14356         * win32/win32.c: remove unused functions.
14358 Wed Jun 27 20:46:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14360         * include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
14361           win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
14362           x64-mswin64 port.
14364 Wed Jun 27 20:31:07 2007  Koichi Sasada  <ko1@atdot.net>
14366         * compile.c (iseq_translate_direct_threaded_code): fix prototype
14367           function name.
14369         * vm.h: add correct cast.
14371 Wed Jun 27 17:08:42 2007  Koichi Sasada  <ko1@atdot.net>
14373         * vm_evalbody.ci: support OPT_CALL_THREADED_CODE.
14375         * insns.def, vm.c, vm.h: ditto.
14377         * vm.h: add VM_CFP_CNT() and VM_SP_CNT().
14379 Wed Jun 27 04:23:47 2007  Koichi Sasada  <ko1@atdot.net>
14381         * compile.c (iseq_compile_each): fix type error.
14383 Wed Jun 27 03:26:15 2007  Koichi Sasada  <ko1@atdot.net>
14385         * compile.c (compile_massign), insns.def (expandarray): support
14386           postarg with massign (a, *b, c = ...).
14388         * bootstraptest/test_massign.rb: add tests for above.
14390         * compile.h: fix debug macro names.
14392 Wed Jun 27 00:18:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14394         * string.c (rb_str_clear): need to check STR_EMBED_P() before
14395           free()ing memory.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
14396           [ruby-dev:31062]
14398 Tue Jun 26 16:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14400         * process.c (proc_getgroups): use GIDT2NUM for rb_gid_t.
14402 Tue Jun 26 16:28:24 2007  Koichi Sasada  <ko1@atdot.net>
14404         * thread.c (rb_thread_wait_fd_rw): terminate fdset.
14406 Tue Jun 26 16:26:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14408         * regint.h: IL32LLP64 support.
14410 Tue Jun 26 16:22:45 2007  Koichi Sasada  <ko1@atdot.net>
14412         * iseq.c (ruby_node_name): update node names.
14414 Tue Jun 26 15:21:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14416         * include/ruby/ruby.h: IL32LLP64 support.
14418         * bignum.c (bigfixize, rb_cstr_to_inum): ditto.
14420         * insns.def (opt_plus, opt_minus, opt_mult): ditto.
14422 Tue Jun 26 15:04:06 2007  Koichi Sasada  <ko1@atdot.net>
14424         * cont.c (rb_fiber_s_new): revert initializing VM stack.
14426         * yarvcore.c (th_init2): ditto.
14428         * vm.c, vm.h: fix to stop using Qundef on VM stack.  According to
14429           this change, VM stack should not include Qundef value.
14431         * insns.def (putundef): removed.
14433         * compile.c (iseq_compile_each): ditto.
14435         * eval.c (eval): fix spacing.
14437 Tue Jun 26 04:03:50 2007  Koichi Sasada  <ko1@atdot.net>
14439         * insnhelper.ci (vm_yield_with_cfunc), proc.c: fix Method#to_proc
14440           to return lambda Proc ([ruby-dev:31021], [ruby-dev:31037]).
14442 Tue Jun 26 03:46:08 2007  Koichi Sasada  <ko1@atdot.net>
14444         * cont.c (rb_fiber_s_new): fix to clear rb_thread_t#tag.
14445           [ruby-dev:30995]
14447 Tue Jun 26 03:38:31 2007  Koichi Sasada  <ko1@atdot.net>
14449         * cont.c (rb_fiber_s_new), yarvcore.c (th_init2): fix to clear
14450           VM stack ([ruby-dev:31046]).
14452 Tue Jun 26 03:15:27 2007  Koichi Sasada  <ko1@atdot.net>
14454         * compile.c: rename setup_arg() to setup_args().
14455           fix to use setup_args() at processing NODE_YIELD.
14457 Tue Jun 26 02:50:24 2007  Koichi Sasada  <ko1@atdot.net>
14459         * compile.c (setup_arg): support kind of "m(*ary, x)" method call.
14460           ([ruby-dev:31048]).
14462 Tue Jun 26 00:28:44 2007  Koichi Sasada  <ko1@atdot.net>
14464         * insnhelper.ci, vm.c: complete block parameter support.
14465           post arguments, optional arguments, block argument.
14467         * compile.c, parse.y: fix {|a|} parameter.
14469         * insnshelper.ci, insns.def: revert caller_setup_args() option
14470           (need_block_check) parameter.
14472 Mon Jun 25 20:18:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14474         * gc.c (RVALUE): in RVALUE and RBasic, flags must be the same type.
14476 Mon Jun 25 18:02:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14478         * ext/pty/extconf.rb: skip wince and win64.
14480 Mon Jun 25 17:59:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14482         * include/ruby/node.h (NODE_LMASK, nd_line): shouldn't use int and/or
14483           long carelessly.
14485 Mon Jun 25 11:36:35 2007  Koichi Sasada  <ko1@atdot.net>
14487         * gc.h: add RUBY_ prefix to debug macros.
14489         * cont.c, proc.c, yarvcore.c,
14491         * gc.c: define ruby_gc_debug_indent variable to debug mark/free.
14493         * vm.c, insnhelper.ci: rename some functions to vm_* or rb_vm_*.
14494           move some functions, definitions, declarations to suitable files.
14496         * eval.c, yarvcore.h, eval_error.ci, insnhelper.ci: ditto.
14498 Mon Jun 25 09:45:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14500         * eval_error.ci, eval_jump.ci, eval_method.ci, eval_safe.ci: c-mode.
14502 Mon Jun 25 05:27:54 2007  Koichi Sasada  <ko1@atdot.net>
14504         * eval.c: remove ruby_current_node and change eval() prototype.
14505           fix to use rb_sourcefile/line() instead of ruby_sourcefile/line.
14507         * error.c, eval_error.ci, eval_load.c, eval_safe.ci, gc.c,
14508           include/ruby/intern.h, parse.y, process.c, ruby.c: ditto.
14510         * vm.c: fix spaces.
14512 Mon Jun 25 04:20:14 2007  Koichi Sasada  <ko1@atdot.net>
14514         * eval_*.h: rename to eval_*.ci.
14516         * common.mk: ditto.
14518         * eval_error.ci: remove ruby_set_current_source().
14520         * error.c, eval.c, ruby.c: ditto.
14522         * eval_safe.c, proc.c: remove unused macros.
14524 Mon Jun 25 03:37:20 2007  Koichi Sasada  <ko1@atdot.net>
14526         * insnhelper.ci (caller_setup_args): add need_block_check option.
14528         * insns.def: ditto.
14530         * yarvcore.h: add GetCoreDataFromValue().
14532 Mon Jun 25 02:14:30 2007  Koichi Sasada  <ko1@atdot.net>
14534         * call_cfunc.ci: removed.
14536         * insnhelper.ci: added. this function includes all functions that
14537           vm insns need.
14539         * common.mk: ditto.
14541         * insnhelper.h, vm.h, vm.c: move some declaration.
14543         * gc.h: remove GC_CHECK() macro because GC.stress is more useful.
14545         * compile.c, iseq.c, vm_dump: ditto.
14547         * gc.h, thread.c: move a prototype declaration.
14549         * debug.c, debug.h: rename some functions.
14551         * compile.h: ditto.
14553 Mon Jun 25 00:45:02 2007  Koichi Sasada  <ko1@atdot.net>
14555         * insns.def (invokesuper): fix error message.
14557 Mon Jun 25 00:14:13 2007  Koichi Sasada  <ko1@atdot.net>
14559         * vm.c: some refactoring.
14560           * rename th_* to vm_*.
14561           * remove unused variables functions.
14562           * add prototypes.
14564         * blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
14565           eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
14566           proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
14567           vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
14569 Sun Jun 24 22:32:00 2007  Koichi Sasada  <ko1@atdot.net>
14571         * eval_method.h (rb_add_method): fix to check 0.
14573 Sun Jun 24 22:00:17 2007  Koichi Sasada  <ko1@atdot.net>
14575         * insn_send.ci: removed.
14577         * common.mk: ditto.
14579         * vm.c (vm_call_bmethod), isnsn.def: added.  fix to use this
14580           function instead of using goto.
14582         * vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
14584         * vm.c (vm_method_missing): renamed from eval_method_missing().
14586         * vm_evalbody.ci: remove tmp_* variables.
14588         * insnhelper.h: add some macros.
14590         * insns.def: forbid zsuper from method defined by define_method().
14592         * test/ruby/test_super.rb: ditto.
14594 Sun Jun 24 20:01:08 2007  Koichi Sasada  <ko1@atdot.net>
14596         * vm_macro.def: removed.
14598         * insn_send.ci: added.  this file includes send instruction body.
14600         * common.mk: ditto.
14602         * insns.def: ditto.
14604         * tool/insns2vm.rb: ditto.
14606         * vm.c: ditto.
14608 Sun Jun 24 19:30:37 2007  Koichi Sasada  <ko1@atdot.net>
14610         * insnhelper.h (RESTORE_REGS): add do/while(0) around macro.
14612         * vm.c, vm_macro.def: remove macro_eval_invoke_func() and
14613           add vm_setup_method().  use it instead.
14615 Sun Jun 24 19:02:33 2007  Koichi Sasada  <ko1@atdot.net>
14617         * vm.c, vm_macro.def : remove macro_eval_invoke_cfunc() and
14618           add vm_call_cfunc().
14620 Sun Jun 24 17:54:13 2007  Koichi Sasada  <ko1@atdot.net>
14622         * insns.def, vm.c: add/fix stack overflow check.
14624 Sun Jun 24 17:28:52 2007  Koichi Sasada  <ko1@atdot.net>
14626         * insnhelper.h: change CHECK_STACK_OVERFLOW() to throw exception.
14628         * vm.c (caller_setup_arg), vm_macro.def: remove
14629           macro_eval_setup_send_arguments and add caller_setup_arg().
14631         * insns.def: ditto.
14633         * bootstraptest/test_method.rb: add splat arg tests.
14635 Sun Jun 24 16:35:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14637         * proc.c (proc_to_s): used a variable before initialized.
14639 Sun Jun 24 16:05:45 2007  Koichi Sasada  <ko1@atdot.net>
14641         * vm.c (callee_setup_arg): added.  support correct post arg.
14643         * vm_macro.def (macro_eval_invoke_func): fix to use
14644           callee_setup_arg.
14646         * compile.c (set_arguments): adjust for above changes.
14648         * compile.c (iseq_compile_each): ditto.
14650         * iseq.c (ruby_iseq_disasm): ditto.
14652         * yarvcore.h: add rb_iseq_t#post_arg_start and arg_size.
14654         * bootstraptest/test_method.rb: add post arg tests.
14656 Sun Jun 24 16:10:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14658         * proc.c (proc_to_s): suppress warning, and reduced duplicated code.
14660 Sun Jun 24 15:33:47 2007  Koichi Sasada  <ko1@atdot.net>
14662         * bootstraptest/runner.rb: set default directory to
14663           '/tmp/bootstraptest.tmpwd' and add --dir option.
14664           fix to output driver and target information.
14666         * common.mk: fix to run btest on BASERUBY and
14667           add OPTS to pass option ("make btest OPTS=...").
14669 Sun Jun 24 03:05:00 2007  Tanaka Akira  <akr@fsij.org>
14671         * enum.c (enum_minmax): fix SEGV by [].minmax.
14673 Sat Jun 23 17:18:19 2007  Tanaka Akira  <akr@fsij.org>
14675         * re.c (match_inspect): MatchData#inspect implemented.
14677 Sat Jun 23 15:00:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14679         * enum.c (enum_minmax): new method to get the minimum and maximum
14680           values from the enumerable at once.
14682         * enum.c (enum_minmax_by): ditto.
14684 Sat Jun 23 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14686         * hash.c (rb_hash_assoc): new method.
14688         * hash.c (rb_hash_rassoc): ditto.
14690         * hash.c (rb_hash_flatten): ditto.
14692 Fri Jun 22 23:55:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14694         * string.c (rb_str_upto): add optional argument to specify
14695           exclusiveness.
14697         * range.c (range_step): use String#upto with optional argument.
14699         * range.c (range_each): ditto.
14701 Fri Jun 22 19:55:51 2007  Tanaka Akira  <akr@fsij.org>
14703         * proc.c (proc_to_s): revert the change from %p to %lx at YARV
14704           merge time.
14706 Fri Jun 22 19:33:49 2007  Tanaka Akira  <akr@fsij.org>
14708         * proc.c (proc_to_s): show is_lambda.
14710 Thu Jun 21 20:36:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14712         * hash.c (rb_hash_sort): remove hash specific implementation.
14714 Thu Jun 21 20:28:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14716         * hash.c (rb_hash_select): returns new hash, not assoc array.
14717           [ruby-core:11504]
14719         * hash.c (env_select): ditto.
14721 Thu Jun 21 23:08:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14723         * parse.y (rb_intern2): ID_JUNK test based on len, not by NUL.
14725 Thu Jun 21 19:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14727         * yarvcore.c (rb_thread_mark): mark also thrown_errinfo.
14729 Thu Jun 21 17:13:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14731         * parse.y (rb_intern2): name may not be NUL-terminated.
14733 Wed Jun 20 08:27:57 2007  Tanaka Akira  <akr@fsij.org>
14735         * eval_error.h (error_print): show full stacktrace on
14736           non-SystemStackError.
14738 Wed Jun 20 04:45:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14740         * parse.y (rb_intern2): use rb_intern2 to intern without trailing
14741           equal sign.
14743         * parse.y (rb_intern2, ripper_id2sym): fixed indent.
14745 Tue Jun 19 10:55:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14747         * eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
14748           pointer.  [ruby-Bugs-11659]
14750 Mon Jun 18 08:47:54 2007  Technorama Ltd.  <oss-ruby@technorama.net>
14752         * ext/openssl/{extconf.rb,ossl_ssl_session.c}:
14753           Fix ruby-Bugs-11513.
14755         * ext/openssl/ossl_pkey_ec.c
14756           New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
14757           By default output the same key form as the openssl command.
14759         * ext/openssl/ossl_rand.c
14760           New method Random.status?
14762         * test/openssl/test_ec.rb
14763           New tests.
14765 Mon Jun 18 17:04:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14767         * eval_load.c (rb_require_safe, ruby_init_ext): load with ruby level
14768           cfp.  [ruby-core:10779]
14770         * eval_intern.h, vm.c (rb_vm_call_cfunc): new function to call a
14771           function with ruby level cfp.
14773 Mon Jun 18 16:57:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14775         * parse.y (yycompile): disable trace while creating ruby_debug_lines.
14776           [ruby-talk:253586]
14778         * thread.c (ruby_suppress_tracing): new function to call a function
14779           with suppressing trace.
14781         * lib/debug.rb, lib/tracer.rb: for YARV.
14783 Mon Jun 18 13:54:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14785         * eval.c (ruby_cleanup): return EXIT_FAILURE if any exceptions occurred
14786           in at_exit blocks.  [ruby-core:11263]
14788 Mon Jun 18 02:49:16 2007  Koichi Sasada  <ko1@atdot.net>
14790         * vm.c (env_mark): fix to mark block.proc.
14792         * vm.c (th_make_proc_from_block): set created proc to block->proc.
14794 Mon Jun 18 02:48:12 2007  Koichi Sasada  <ko1@atdot.net>
14796         * vm_dump.c (vm_stack_dump_raw): hide VM stack trace.
14798 Mon Jun 18 02:43:53 2007  Koichi Sasada  <ko1@atdot.net>
14800         * signal.c (sigsegv): clear gc_stress flag on SEGV.
14802 Mon Jun 18 01:14:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14804         * variable.c (rb_path2class): get rid of dangling pointer caused by
14805           optimized out value.
14807         * variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,
14808           rb_generic_ivar_table, generic_ivar_get, generic_ivar_set,
14809           generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar,
14810           rb_free_generic_ivar, rb_copy_generic_ivar,
14811           rb_obj_instance_variables): suppress warnings.
14813 Sun Jun 17 11:11:07 2007  Tanaka Akira  <akr@fsij.org>
14815         * eval.c (rb_method_missing): avoid a warning "too many arguments
14816           for format string" on "./ruby -ve 'def m() super end; m'".
14818 Sat Jun 16 22:24:17 2007  Tanaka Akira  <akr@fsij.org>
14820         * gc.c (garbage_collect): re-introduce ruby_current_node marking code.
14821           [ruby-dev:31005]
14823 Sat Jun 16 21:37:43 2007  Tanaka Akira  <akr@fsij.org>
14825         * gc.c (gc_sweep): re-introduce heap extension strategy change.
14826           [ruby-dev:31005]
14828 Fri Jun 15 22:59:37 2007  Tanaka Akira  <akr@fsij.org>
14830         * .gdbinit: new file to ease debugging using gdb.
14832 Fri Jun 15 22:33:55 2007  Tanaka Akira  <akr@fsij.org>
14834         * signal.c (default_handler): func argument removed.
14835           (trap_handler): support SYSTEM_DEFAULT.  call default_handler
14836           internally.
14837           (sig_trap): don't call default_handler.
14838           [ruby-dev:30999]
14840 Fri Jun 15 22:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14842         * common.mk (realclean): separate local and ext.
14844         * ext/extmk.rb: not remove unrelated directories.
14846 Fri Jun 15 20:50:02 2007  Tanaka Akira  <akr@fsij.org>
14848         * keywords: enclose C code in declaration section by %{ and %} to
14849           avoid extra semicolon after #ifdef RIPPER.
14850           pointed by eban.
14852 Fri Jun 15 18:56:52 2007  Tanaka Akira  <akr@fsij.org>
14854         * signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrong
14855           trap error because SIG_DFL may be zero.
14857 Fri Jun 15 15:55:55 2007  Koichi Sasada  <ko1@atdot.net>
14859         * insns.def (setconstant, toregexp): fix to mark object correctly.
14861 Fri Jun 15 13:24:18 2007  Koichi Sasada  <ko1@atdot.net>
14863         * hash.c: exchange semantics of Hash#each and Hash#each_pair.
14864           pointed out by [ruby-dev:30997].
14866         * test/ruby/test_iterator.rb: ditto.
14868         * test/ruby/test_yield.rb: ditto.
14870 Fri Jun 15 12:38:29 2007  Koichi Sasada  <ko1@atdot.net>
14872         * test/ruby/test_iterator.rb: remove debug code (GC.stress=true).
14874 Fri Jun 15 12:25:33 2007  Koichi Sasada  <ko1@atdot.net>
14876         * vm.c (th_yield_setup_args): |v| should work as |v,|.
14877           ex) def m;yield 1, 2; end; m{|v| p v} #=> 1
14879         * parse.y: apply above change for "for" statement.
14881         * test/ruby/test_assignment.rb: ditto
14883         * test/ruby/test_basicinstructions.rb: ditto.
14885         * test/ruby/test_iterator.rb: ditto.
14887         * test/ruby/test_yield.rb: ditto.
14889         * compile.c (iseq_compile_each): fix debug.
14891 Fri Jun 15 12:22:10 2007  Koichi Sasada  <ko1@atdot.net>
14893         * eval.c (ruby_finalize_1): rb_thread_t#errinfo should be clear with
14894           Qnil.
14896 Fri Jun 15 12:20:11 2007  Koichi Sasada  <ko1@atdot.net>
14898         * cont.c (rb_cont_call): forbid cross fiber continuation call.
14900         * test/ruby/test_fiber.rb: ditto.
14902 Fri Jun 15 12:14:07 2007  Koichi Sasada  <ko1@atdot.net>
14904         * sample/test.rb: fix to show line information whether test succeeds.
14906 Thu Jun 14 17:16:05 2007  Tanaka Akira  <akr@fsij.org>
14908         * eval_load.c (Init_load): delay allocating an array for rb_load_path
14909           to avoid GC problem in very early stage.
14910           (RUBY_GC_STRESS causes GC in such stage.)
14912         * variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in
14913           very early stage.
14915         * thread.c (thread_cleanup_func) [IA64]: clear register stack position.
14916           (thread_start_func_2) [IA64]: record the beginning of register
14917           stack using extra argument.
14918           (rb_gc_save_machine_context) [IA64]: record the end of register
14919           stack.
14921         * gc.c [IA64] (SET_STACK_END): record the end of register stack.
14922           (garbage_collect) [IA64]: use recorded register stack area for
14923           GC marking.
14924           (yarv_machine_stack_mark) [IA64]: GC mark from the register stack
14925           area.
14927         * yarvcore.c [IA64] (rb_gc_register_stack_start): defined.
14928           (Init_VM): store th->self on stack to fix GC problem.
14929           (Init_yarv) [IA64]: initialize the beginning of register stack.
14931         * yarvcore.h (struct rb_thread_struct) [IA64]: new members for
14932           register stack area.
14934         * thread_pthread.ci (thread_start_func_1) [IA64]: call
14935           thread_start_func_2 with the end of register stack.
14937         * cont.c (struct rb_context_struct) [IA64]: new members for register
14938           stack area.
14939           (cont_mark) [IA64]: GC mark from register stack area.
14940           (cont_free) [IA64]: free saved register stack.
14941           (cont_save_machine_stack) [IA64]: record the position and contents
14942           of the register stack.
14943           (cont_capture): store cont->self on stack to fix GC problem.
14944           (cont_restore_1) [IA64]: restore the register stack.
14945           [IA64] (register_stack_extend): new function.
14946           (cont_restore_0) [IA64]: call register_stack_extend instead of
14947           cont_restore_1.
14949         [ruby-dev:30982]
14951 Thu Jun 14 17:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14953         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser): handle more
14954           extensions.  [ruby-dev:30972]
14956 Thu Jun 14 14:40:42 2007  Tanaka Akira  <akr@fsij.org>
14958         * lib/securerandom.rb: document updated.
14959           suggested by NaHi.  [ruby-dev:30966]
14961 Wed Jun 13 22:42:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14963         * gc.c (garbage_collect): update IA64 register stack code.
14964           [ruby-dev:30971]
14966 Wed Jun 13 06:05:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14968         * configure.in (darwin): prohibit loading extension libraries to
14969           miniruby.
14971 Tue Jun 12 21:50:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14973         * parse.y (call_args): no allow splat after assocs.  takes
14974           consistency over compatibility.
14976         * parse.y (call_args2): ditto
14978 Tue Jun 12 14:53:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14980         * lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
14981           use it.  [ruby-core:10909]
14983         * lib/mkmf.rb (find_header): use header names in the message.
14985 Sun Jun 10 18:37:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14987         * ext/probeprofiler/probeprofiler.c: clean warnings.
14989 Sun Jun 10 18:32:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14991         * missing/isinf.c, missing/dup2.c, missing/strtod.c, missing/x68.c,
14992           missing/alloca.c: use "ruby/config.h".
14994 Sun Jun 10 17:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14996         * instruby.rb (install_recursive): should check parent directories of
14997           the destination.  [ruby-dev:30947]
14999 Sun Jun 10 16:59:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15001         * parse.y (do_block, brace_block): fix line numbers.  [ruby-dev:30831]
15003 Sun Jun 10 16:57:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15005         * instruby.rb (install_recursive): add :glob option rather than
15006           using FNM_DOTMACH.
15008         * instruby.rb (ext-comm): make header directory first.
15010 Sun Jun 10 16:10:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15012         * test/ruby/test_beginendblock.rb: typo.
15014 Sun Jun 10 16:07:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15016         * instruby.rb (install_recursive): skip .svn directories.
15018 Sun Jun 10 15:44:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15020         * win32/Makefile.sub (config.status): rubyhdrdir was missing.
15022 Sun Jun 10 15:26:36 2007  Tanaka Akira  <akr@fsij.org>
15024         * Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
15026 Sun Jun 10 15:11:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15028         * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
15030         * ext/extmk.rb: prepend also topdir to mflags at last.
15032 Sun Jun 10 13:47:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15034         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
15035           get rid of invoking shell.  [ruby-dev:30942]
15037 Sun Jun 10 12:56:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15039         * include/ruby: moved public headers.
15041         * instruby.rb (install_recursive): skip backup files.
15043         * instruby.rb (ext-comm): install only current platform headers.
15045 Sun Jun 10 10:42:04 2007  Tanaka Akira  <akr@fsij.org>
15047         * lib/securerandom.rb: renamed from lib/secrand.rb.
15048           suggested by NaHi.  [ruby-dev:30934]
15050 Sat Jun  9 06:40:05 2007  Tanaka Akira  <akr@fsij.org>
15052         * lib/secrand.rb: rename SecRand() to SecRand.random_number.
15053           suggested by NaHi.  [ruby-dev:30934]
15055 Fri Jun  8 16:34:20 2007  Tanaka Akira  <akr@fsij.org>
15057         * ext/zlib/zlib.c (gzfile_s_open): use FilePathValue to support
15058           to_path.
15060 Fri Jun  8 16:11:00 2007  Koichi Sasada  <ko1@atdot.net>
15062         * eval_jump.h: th->errinfo should clear with nil.
15064 Fri Jun  8 14:53:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15066         * parse.y (call_args): allow splat argument after unpacked
15067           assocs like 1.8 does.
15069         * parse.y (call_args): ditto.
15071 Fri Jun  8 14:26:18 2007  Tanaka Akira  <akr@fsij.org>
15073         * lib/secrand.rb: new file for secure random interface.
15075         * lib/cgi/session.rb: use secrand for generating cookies.
15077 Fri Jun  8 12:44:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15079         * {win32,wince}/Makefile.sub: add lex.c rule.
15081 Fri Jun  8 11:54:18 2007  Tanaka Akira  <akr@fsij.org>
15083         * lex.c.blt: moved from lex.c.
15085         * Makefile.in: use lex.c.blt if gperf is not available.
15086           [ruby-list:8212], [ruby-list:8214], [ruby-list:24667],
15087           [ruby-talk:120857], [ruby-dev:28102]
15089 Thu Jun  7 21:38:39 2007  Koichi Sasada  <ko1@atdot.net>
15091         * thread.c (rb_thread_execute_interrupts): invoke ensure when
15092           main thread exits.
15094 Thu Jun  7 19:02:48 2007  Tanaka Akira  <akr@fsij.org>
15096         * lib/pp.rb: call original "method" method instead of redefined one.
15098 Thu Jun  7 17:20:57 2007  Koichi Sasada  <ko1@atdot.net>
15100         * iseq.c (prepare_iseq_build): freeze filename and name string.
15102         * variable.c: freeze class name string.
15104 Thu Jun  7 12:48:33 2007  Koichi Sasada  <ko1@atdot.net>
15106         * cont.c (cont_restore_1): fix to check root fiber [ruby-dev:30911].
15108         * test/ruby/test_fiber.rb: add a test.
15110 Thu Jun  7 07:24:36 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15112         * lib/json/common.rb: Ponder offering parse! method.
15114         * lib/json/editor.rb: be a bit more robust while loading data.
15116         * ext/json/ext/{generator,parser}/extconf.rb:
15117           add a have_header directive for st.h
15119         * test/json: fix some tests.
15121 Thu Jun  7 03:29:18 2007  Koichi Sasada  <ko1@atdot.net>
15123         * test_fiber.rb: add a test (Continuation and Fiber).
15125 Thu Jun  7 03:17:24 2007  Koichi Sasada  <ko1@atdot.net>
15127         * cont.c (cont_new): add debug message.
15129         * cont.c (cont_restore_1): copy stack information from fiber.
15131         * cont.c (rb_fiber_s_new): fix to mark created fiber.
15133         * test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
15135         * yarvcore.c (thread_free): fix to skip freeing stack if root fiber
15136           is available.
15138 Thu Jun  7 01:03:20 2007  Koichi Sasada  <ko1@atdot.net>
15140         * eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
15142         * cont.c (rb_fiber_start): remove zero-clearing tag.
15144 Wed Jun  6 20:23:46 2007  Koichi Sasada  <ko1@atdot.net>
15146         * insns.def (invokeblock): fix of splat argument.
15147           (splat same as normal method dispatch)
15149 Wed Jun  6 16:27:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15151         * insns.def: fixed indentation.
15153 Wed Jun  6 10:58:23 2007  Koichi Sasada  <ko1@atdot.net>
15155         * eval.c (rb_yield): fix to check Qundef.
15157 Wed Jun  6 10:57:45 2007  Koichi Sasada  <ko1@atdot.net>
15159         * test/ruby/test_continuation.rb: add a test for last commit.
15161 Wed Jun  6 10:55:42 2007  Koichi Sasada  <ko1@atdot.net>
15163         * cont.c (rb_cont_call): forbid calling dead fiber with
15164           Continuation#call.
15166 Wed Jun  6 10:50:01 2007  Koichi Sasada  <ko1@atdot.net>
15168         * compile.c (iseq_compile_each): fix around yield arguments
15169           (with NODE_ARGSCAT).
15171 Wed Jun  6 02:50:53 2007  Koichi Sasada  <ko1@atdot.net>
15173         * cont.c (rb_fiber_start): clear th->tag and check error to fix
15174           [ruby-dev:30888] and [ruby-dev:30889].
15176         * eval_intern.h: fix rb_fiber_start() prototype.
15178         * test/ruby/test_fiber.rb: add tests for above.
15180 Wed Jun  6 02:40:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15182         * insnhelper.h, insns.def (DEC_SP): shouldn't use unary minus operator
15183           in pointer operation. some compilers (such as VC++8 x64) cannot deal
15184           it with expected way.
15186 Wed Jun  6 02:19:48 2007  Koichi Sasada  <ko1@atdot.net>
15188         * parse.y (new_yield), compile.c (iseq_compile_each): fix
15189           passing parameter.
15191         * eval.c, eval_jump.h: simplify rb_yield*.
15193         * proc.c (proc_mark): fix to mark proc->block.proc.
15195         * proc.c (Init_Proc): add Proc#lambda?
15197         * test/ruby/test_lambda.rb: add some tests.
15199         * vm.c (invoke_block): fix to check lambda block or not.
15201         * vm.c (th_yield_setup_args): fix to check arguments size
15202           when lambda block.
15204 Tue Jun  5 16:30:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15206         * io.c (rb_f_p): returns arguments to intervene.  [ruby-dev:29736]
15208 Tue Jun  5 14:07:55 2007  Koichi Sasada  <ko1@atdot.net>
15210         * insns.def (invokeblock): check block is created by lambda
15211           or Proc.new.
15213         * vm.c (block_proc_is_lambda): added.
15215 Tue Jun  5 14:47:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15217         * lib/pp.rb (PP::PPMethods::seplist): revert last change to work
15218           around wrapper bug.  [ruby-dev:30840]
15220 Tue Jun  5 14:11:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15222         * ext/nkf/nkf-utf8/nkf.c (kanji_convert): Fix guess fallback.
15224 Tue Jun  5 13:32:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15226         * compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
15227           pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
15228           thread_pthread.ci, thread_win32.ci: fixed indentation.
15230         * call_cfunc.ci: protoized.
15232         * thread_win32.ci: fixed typo.
15234 Tue Jun  5 13:17:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15236         * call_cfunc.ci, compile.c, dir.c, eval.c, eval_jump.h, numeric.c,
15237           pack.c, re.c, thread.c, thread_win32.ci, vm.c, vm_dump.c: fixed
15238           indentation.
15240 Mon Jun  4 21:15:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15242         * lib/json.rb, lib/json, ext/json, test/json:
15243           import JSON library.
15245         * ext/nkf: import nkf.c rev:1.124
15246           Support CP10001.
15248 Mon Jun  4 20:52:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15250         * numeric.c (int_round): should not just truncate.
15252 Sat Jun  2 16:48:55 2007  Koichi Sasada  <ko1@atdot.net>
15254         * cont.c (Fiber#pass): rename to Fiber#yield.  Block parameter
15255           of fiber body receive first yield values.
15256           e.g.: Fiber.new{|x| p x}.yield(:ok) #=> :ok
15258         * cont.c: rename rb_context_t#retval to rb_context_t#value.
15260         * test/ruby/test_fiber.rb: ditto.
15262 Sat Jun  2 16:45:21 2007  Koichi Sasada  <ko1@atdot.net>
15264         * proc.c (Init_Proc): remove a line break.
15266 Sat Jun  2 01:27:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15268         * numeric.c (int_round): small optimization to handle bignums.
15270 Fri Jun  1 13:02:35 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15272         * insnhelper.h (INC_SP): shouldn't cast ``x'' to unsigned type because
15273           it might be a negative value.
15275         * insnhelper.h, insns.def: shouldn't use unary minus operator in index
15276           operator. some compilers (such as VC++8 x64) cannot deal it with
15277           expected way.
15279 Fri Jun  1 11:33:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15281         * numeric.c (num_round): should convert self to Float.
15282           [ruby-dev:30860]
15284 Fri Jun  1 02:01:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15286         * numeric.c (flo_round): now takes optional argument to specify
15287           number of digits, like round() in Python/PHP.
15289         * numeric.c (num_round): ditto.
15291 Fri Jun  1 01:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15293         * enum.c (each_with_index_i): should work well with continuation.
15294           a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
15295           [ruby-dev:30846]
15297 Thu May 31 17:27:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15299         * lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
15300           argument unintentionally.  [ruby-talk:253676]
15302 Wed May 30 14:43:00 2007  Koichi Sasada  <ko1@atdot.net>
15304         * cont.c (cont_capture): store all local variables in heap
15305           ([ruby-dev:30832]).
15307         * vm.c (th_stack_to_heap): added.
15309         * test/ruby/test_continuation.rb: add a test for above.
15311         * eval_intern.h (th_get_ruby_level_cfp): fix to clean code.
15313 Wed May 30 13:32:34 2007  Shugo Maeda  <shugo@ruby-lang.org>
15315         * lib/net/imap.rb (ResponseParser#next_token): fixed
15316           error message.
15318         * lib/net/imap.rb (ResponseParser#parse_error): fixed
15319           the condition not to refer @token.symbol unexpectedly.
15320           Thanks, Dick Monahan.
15322 Wed May 30 13:24:33 2007  Shugo Maeda  <shugo@ruby-lang.org>
15324         * lib/net/ftp.rb (Net::FTP#transfercmd): skip 2XX
15325           responses for some FTP servers.
15327 Wed May 30 04:18:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15329         * eval.c (rb_eval_cmd): just return if no exceptions.
15330           [ruby-dev:30820]
15332 Wed May 30 02:14:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15334         * signal.c (interrupt_init): needs to pass nil for Interrupt.
15335           [ruby-core:11038]
15337         * signal.c (trap): fixed segfaults.  [ruby-dev:30830]
15339 Wed May 30 00:50:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15341         * gc.c (rb_source_filename, obj_free): suppress warnings.
15343         * gc.c (garbage_collect, yarv_machine_stack_mark): fixed typo.
15344           http://bugs.debian.org/426267
15346 Wed May 30 00:24:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15348         * parse.y (open_args, arg_ambiguous, parser_warning): should not use
15349           rb_warning in the parser.
15351 Tue May 29 12:31:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15353         * win32/win32.c (rb_w32_opendir): removed duplicated code.
15355 Tue May 29 10:55:24 2007  Koichi Sasada  <ko1@atdot.net>
15357         * cont.c: fix bug around Continuation and Fiber.
15359         * test/ruby/test_continuation.rb: add tests for Continuation.
15361 Tue May 29 10:54:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15363         * win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
15364           numbers.
15366 Mon May 28 10:27:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15368         * cont.c: fixed a function name.
15370 Mon May 28 03:56:44 2007  Koichi Sasada  <ko1@atdot.net>
15372         * cont.c: support Fiber.  Check test/ruby/test_fiber.rb for detail.
15373           Fiber is known as "Micro Thread", "Coroutine", and other terms.
15374           At this time, only Fiber#pass is supported to change context.
15375           I want to know more suitable method name/API for Fiber (... do you
15376           know more suitable class name instead of Fiber?) as "suspend/resume",
15377           "call", "yield", "start/kick/stop/restart", ....
15379         * eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
15381 Sat May 26 00:38:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15383         * eval.c (ruby_exec_internal): do nothing if no code.
15385         * compile.c (rb_iseq_compile): check node if NULL before check
15386           nd_type.  [ruby-talk:252956]
15388 Sat May 26 00:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15390         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
15391           skip tests for exitstatus and termsig on the platforms where
15392           signals not supported.
15394 Fri May 25 16:04:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15396         * yarvcore.c (Init_VM): wrap already initialized structs to use
15397           it directly.
15399 Fri May 25 11:09:47 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15401         * regint.h (include): on some platform, defines.h redefines
15402           SIZE_OF_LONG_LONG so shouldn't re-include config.h after included
15403           defines.h.
15405         * regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
15407 Thu May 24 12:07:27 2007  Koichi Sasada  <ko1@atdot.net>
15409         * cont.c: check across trap violation.
15411         * eval.c, yarvcore.h: ditto.
15413 Thu May 24 11:46:55 2007  Koichi Sasada  <ko1@atdot.net>
15415         * gc.c, yarvcore.c: fix to mark VM structure on startup.
15417         * yarvcore.h: disable USE_CACHED_VALUE.
15419 Thu May 24 01:54:53 2007  Koichi Sasada  <ko1@atdot.net>
15421         * cont.c: support callcc which everyone love.
15422           incomplete. please give me bug reports.
15424         * common.mk, inits.c, thread.c: ditto.
15426         * yarvcore.c: export thread_mark().
15428         * yarvcore.h: disable value cache option.
15430         * eval_intern.h: set th_get_ruby_level_cfp to inline.
15432 Wed May 23 15:39:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15434         * common.mk: add a rule for regsyntax.c.
15436 Wed May 23 10:31:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15438         * oniguruma.h: updated to Oniguruma 5.7.0.
15440         * regsyntax.c, unicode.c: new files along with Oniguruma 5.x.
15442 Wed May 23 06:51:46 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
15444         * lib/cgi.rb (CGI#[]): get rid of exceptions being raised.
15445           [ruby-dev:30740], Thanks Kentaro KAWAMOTO.
15447 Wed May 23 05:49:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15449         * ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
15450           load path to get rid of load pre-installed extensions/libraries.
15451           [ruby-core:11017]
15453 Tue May 22 16:37:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15455         * ruby.c (set_arg0): support RSTRING_LEN on HP-UX.  a patch from
15456           WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>.  [ruby-dev:30806]
15458 Mon May 21 13:40:00 2007  Koichi Sasada  <ko1@atdot.net>
15460         * compile.c, vm_macro.def: support tail call optimization
15461           (on default, this feature is not enabled).
15463         * iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
15464           option.
15466         * sample/test.rb (test_ok): fix to adjust tailcall stack layout.
15468         * insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
15469           add opt_gt, opt_le instructions.
15471 Mon May 21 03:34:06 2007  Minero Aoki  <aamine@loveruby.net>
15473         * lib/net/smtp.rb: CRAM-MD5 authentication did not work.
15474           [ruby-dev:30770]
15476 Sat May 19 10:26:01 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15478         * lib/date/format.rb (Date._parse): detects some OFX dates
15479           (Of course not fully).
15481 Sat May 19 03:08:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15483         * enum.c (enum_inject): minor improvement.  [ruby-dev:30792]
15485         * enum.c (one_i): no needs to iterate once the result became false.
15487         * enum.c (enum_one): fix for an example.
15489         * enum.c (one_iter_i, none_iter_i): DRY.;
15491 Sat May 19 01:07:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15493         * enum.c (enum_inject): it is now can work without block.  you
15494           have to specify two argument method name as the first argument.
15496         * enum.c (Init_Enumerable): reduce is new alias to inject.
15498 Sat May 19 01:05:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15500         * file.c (Init_File): method definition mismatch.
15502 Fri May 18 16:44:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15504         * file.c (Init_File): add to_path method to File objects.
15506 Fri May 18 11:12:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15508         * ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
15509           to DllMain instead of VirtualQuery so that loadpath becomes relative
15510           from the DLL on WinCE too.
15512 Thu May 17 17:03:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15514         * misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
15516 Thu May 17 13:30:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15518         * parse.y (f_arg): remove typo from ripper description.
15520 Thu May 17 13:23:38 2007  Koichi Sasada  <ko1@atdot.net>
15522         * parse.y, compile.c (set_arguments): fix to support in-paren
15523           parameter (ex: def foo((a, b))).
15525 Thu May 17 13:01:52 2007  Koichi Sasada  <ko1@atdot.net>
15527         * iseq.c (ruby_iseq_disasm): fix to show post arg info.
15529 Thu May 17 12:56:52 2007  Koichi Sasada  <ko1@atdot.net>
15531         * debug.c (ruby_debug_node): fix to show node line.
15533 Wed May 16 21:48:44 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
15535         * lib/logger.rb (Logger::Application): remove meaningless logdev
15536           attribute and added logger attribute instead.  [ruby-core:11143]
15537           also added Logger#formatter rdoc comment.
15539 Tue May 15 16:40:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15541         * test/ruby/test_beginendblock.rb (test_endblockwarn): now parser
15542           warnings emit source names and line numbers.
15544 Tue May 15 15:01:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15546         * win32/win32.c (init_stdhandle): stderr should be without buffering,
15547           but mswin32 use buffering when stderr is not connected to tty.
15549 Mon May 14 02:12:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15551         * array.c (rb_ary_zip): a.zip(b,c) should return an array, not
15552           enumerator.
15554         * array.c (rb_ary_zip): a.zip(b,c) should return array with size
15555           truncated to the size of its shortest argument array.
15556           [incompatible]
15558 Mon May 14 01:54:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15560         * array.c (rb_ary_choice): should return nil when the array is
15561           empty.
15563 Sat May 12 18:26:36 2007  Minero Aoki  <aamine@loveruby.net>
15565         * lib/net/http.rb (tokens): forgot to add strip. [ruby-core:11120]
15567         * test/net/http/test_http.rb: test Net::HTTP.post_form.
15569 Fri May 11 15:27:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15571         * iseq.c (iseq_data_to_ary): internal IDs must not be exposed.
15572           [ruby-core:11073]
15574         * parse.y (internal_id_gen): now returns scope local ID instead of
15575           global one.
15577 Thu May 10 15:15:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15579         * test/ruby/test_super.rb: add tests.
15581 Thu May 10 15:14:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15583         * ext/iconv/iconv.c (iconv_s_conv): rdoc fix.
15585 Thu May 10 15:09:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15587         * parse.y (POINTER_P): pointer may be larger than long.
15589         * parse.y (vtable_size, vtable_included, vtable_tblcpy,
15590           vtable_to_tbl): constified.
15592 Thu May 10 10:13:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15594         * thread.c (rb_thread_priority): rdoc fix; the initial value is
15595           inherited from the creating thread.  [ruby-core:10607]
15597 Wed May  9 12:28:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15599         * bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
15600           aliases of quo.  [ruby-dev:30771]
15602 Tue May  8 23:39:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15604         * lib/date/format.rb (Date._parse): revised treatment of
15605           hyphened/separatorless dates.
15607         * lib/date/format.rb: some trivial adjustments.
15609 Tue May  8 20:23:07 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15611         * lib/date/format.rb: reverted.
15613 Tue May  8 19:32:18 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
15615         * lib/rational.rb: fix high-precision Rationals cannot be
15616           converted to Floats. [ruby-Bugs:10502], [ruby-core:11069],
15617           [ruby-dev:30743]
15619 Mon May  7 10:59:55 2007  Kouhei Sutou  <kou@cozmixng.org>
15621         * lib/rss/image.rb, test/rss/test_image.rb: fixed Image module
15622           namespace URI. reported by Dmitry Borodaenko. Thanks.
15624 Sun May  6 18:44:11 2007  Minero Aoki  <aamine@loveruby.net>
15626         * lib/net/http.rb (Net::HTTP.post_form): allow an Array of String
15627           for pairs argument. [ruby-Bugs:10340]
15629         * lib/net/http.rb (Net::HTTP#set_form_data): ditto.
15631 Sun May  6 17:54:36 2007  Minero Aoki  <aamine@loveruby.net>
15633         * lib/net/http.rb: Connection header field might include both of
15634           "keep-alive" token and "close" token. [ruby-core:10818]
15636 Sat May  5 16:26:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15638         * lib/date/format.rb (Format::Bag#method_missing): get rid of
15639           modifying original argument.  [ruby-core:11090]
15641 Thu May  3 22:20:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15643         * configure.in, defines.h, eval_load.c (rb_feature_p, rb_provided,
15644           search_required, rb_require_safe), ext/extmk.rb: Fix
15645           a bug where a statically linked extension cannot be autoloaded.
15646           [ruby-dev:30023] / [ruby-dev:30239]
15648         * thread.c: added an internal class, Barrier.
15650         * thread.c: copied rdocs from fastthread.
15652         * yarvcore.h (struct rb_vm_struct): moved loading_table from global.
15654 Thu May  3 18:10:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15656         * vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
15657           renamed to get rid of name clash.  [ruby-dev:30504]
15659         * yarvcore.c (ruby_thread_init): ditto.
15661 Wed May  2 18:52:58 2007  Koichi Sasada  <ko1@atdot.net>
15663         * vm.c, yarvcore.h, yarvcore.c, insns.def: fix to mark VM stack
15664           in correct range.
15666 Wed May  2 17:13:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15668         * bignum.c (rb_big_quo): now calculate in integer.  [ruby-dev:30753]
15670 Wed May  2 15:14:56 2007  Koichi Sasada  <ko1@atdot.net>
15672         * eval_method.h: add redefine checks ([ruby-dev:30751]).
15674 Wed May  2 11:22:52 2007  Koichi Sasada  <ko1@atdot.net>
15676         * compile.c: use Qtrue instead of 2.
15678         * vm.c, insns.def: support "lambda" calling convention.
15680 Wed May  2 06:46:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15682         * error.c, parse.y, ruby.h (rb_compile_warn, rb_compile_warning): warn
15683           for compilation.  the parser should no longer use rb_warn() and
15684           rb_warning().  [ruby-dev:30121]
15686 Wed May  2 05:45:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15688         * parse.y (assoc): result of assoc_new needs to be an assoc.
15690 Wed May  2 05:40:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15692         * bignum.c (rb_big_pow): improvement by calculating from MSB and using
15693           factorization.  <http://yowaken.dip.jp/tdiary/20070426.html#p01>
15695 Tue May  1 18:45:45 2007  Koichi Sasada  <ko1@atdot.net>
15697         * sample/test.rb: import matzruby's sample/test.rb.
15699 Tue May  1 17:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15701         * array.c (rb_ary_choice): a new method to choose an element
15702           randomly from an array.
15704         * array.c (rb_ary_choice): fixed mistake from RDoc.
15706 Tue May  1 13:59:18 2007  Koichi Sasada  <ko1@atdot.net>
15708         * proc.c (proc_arity): fix an arity bug ([ruby-core:11060]).
15710 Tue May  1 13:12:49 2007  Koichi Sasada  <ko1@atdot.net>
15712         * yarvcore.h, compile.c (set_arguments): support post arguments.
15714         * test/ruby/test_method.rb: add tests for above.
15716         * test/ruby/test_proc.rb: ditto.
15718         * proc.c: fix an arity bug ([ruby-core:11029]).
15720         * vm.c, vm.h, insns.def, vm_dump.h: fix bmethod process.
15722         * vm.c: support block argument on block parameter.
15724 Fri Apr 27 17:05:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15726         * numeric.c (int_pow): bugfix of overflow detection.
15728         * numeric.c (int_pow): rb_big_pow() may return other than Bignum.
15730 Fri Apr 27 01:51:50 2007  Koichi Sasada  <ko1@atdot.net>
15732         * compile.c: support multiple splat (e.g, [a, *b, *c, e, *f]).
15734 Fri Apr 27 00:03:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15736         * bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
15738 Thu Apr 26 17:31:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15740         * bignum.c (rb_big_pow): reduce multiplying for even number.
15742         * numeric.c (int_pow): calculate power in Fixnum as possible.
15743           [ruby-dev:30726]
15745 Thu Apr 26 17:18:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15747         * parse.y: fixes for ripper.
15749         * parse.y (primary): reduced duplicated code.
15751         * parse.y (f_arg_item): should not override by meaningless value.
15753         * parse.y (f_arg, assocs): should not use $$ before assigned.
15755         * parse.y (assoc_list): dispatch assoclist_from_args for assocs as
15756           well as args.
15758         * parse.y (assoc): return assoc if dispatched result is $1.
15760 Thu Apr 26 13:54:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15762         * misc/ruby-style.el: new file.  C/C++ style for ruby source code.
15764 Wed Apr 25 19:49:16 2007  Tanaka Akira  <akr@fsij.org>
15766         * ext/socket/socket.c (unix_send_io, unix_recv_io): use CMSG_DATA to
15767           align file descriptor appropriately.
15769 Wed Apr 25 15:23:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15771         * win32/win32.c (NtInitialize, exit_handler): add initializing and
15772           cleanup of critical section object for select.
15774         * win32/win32.c (do_select): block reentrance.
15776         * win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
15777           workaround because winsock cannot do select at same socket at the
15778           same time by two or more threads.
15780 Wed Apr 25 14:10:47 2007  Koichi Sasada  <ko1@atdot.net>
15782         * ext/probeprofiler/probeprofiler.c: fix function name and
15783           return value.
15785 Wed Apr 25 12:42:40 2007  Koichi Sasada  <ko1@atdot.net>
15787         * yarvcore.h: remove rb_control_frame_t#callee_id.
15789         * vm_macro.def: ditto.
15791         * eval_intern.h (exec_event_hooks): fix to check event flags
15793         * eval_intern.h (EXEC_EVENT_HOOK): fix to re-check event flags.
15795         * ext/probeprofiler : added.  this profiler is sampling based
15796           profiler.
15798         * vm.c: add rb_thread_current_status() API for probeprofiler.
15800         * thread.c (rb_thread_execute_interrupts): add comments.
15802 Wed Apr 25 10:36:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15804         * eval_intern.h (PUSH_TAG): no argument now.
15806         * eval.c, eval_error.h, eval_jump.h, eval_load.c, proc.c, thread.c:
15807           ditto.
15809         * thread.c (alloc_event_hook, rb_thread_remove_event_hook): should
15810           return value.
15812 Tue Apr 24 09:33:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15814         * dir.c (do_stat, do_lstat, do_opendir): should not warn ENOTDIR.
15815           [ruby-talk:248288]
15817 Mon Apr 23 22:14:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15819         * ext/extmk.rb ($ruby): add extout directory to include path.
15820           [ruby-core:11003]
15822         * lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
15823           directory.
15825         * lib/mkmf.rb (init_mkmf): add current directory to default
15826           library path with highest priority.  [ruby-core:10960]
15828         * lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.
15830 Fri Apr 20 16:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15832         * configure.in (LIBPATHFLAG, RPATHFLAG): no needs to be quoted,
15833           it is done by libpathflag in mkmf.rb.
15835 Fri Apr 20 12:27:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15837         * lib/optparse.rb: fix to override conv proc.
15839 Fri Apr 20 12:21:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15841         * eval.c (ruby_cleanup): fixed access to out of bound, and inverted
15842           the order of errinfos.
15844 Fri Apr 20 10:33:23 2007  Koichi Sasada  <ko1@atdot.net>
15846         * eval_intern.h: add prototypes of rb_sourceline() and
15847           rb_sourcefile().
15849 Fri Apr 20 02:37:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15851         * eval.c (ruby_cleanup): re-send signal.  [ruby-dev:30516]
15853         * eval_error.h (error_handle): no message when exiting by signal.
15855         * intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes.
15857         * signal.c (esignal_init): takes a signal number and an optional
15858           signal name.
15860         * signal.c (interrupt_init): pass SIGINT always.
15862         * signal.c (ruby_default_signal): invoke system default signal
15863           handler.
15865         * signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT.
15867         * signal.c (rb_signal_exec, trap): handle SIGTERM.  [ruby-dev:30505]
15869         * thread.c (rb_thread_signal_raise): now takes signal number instead
15870           of signal name.
15872         * thread.c (rb_thread_signal_exit): since rb_make_exception() calls
15873           #exception method, rb_class_new_instance() is not needed here.
15875         * yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process):
15876           exit_code is no longer stored in VM.
15878 Thu Apr 19 18:37:49 2007  Koichi Sasada  <ko1@atdot.net>
15880         * eval.c, node.h, thread.c, yarvcore.[ch], eval_intern.h:
15881           support set_trace_func (incomplete.  id and klass
15882           don't be passed).  And support Thread#set_trace_func
15883           which hook only specified thread and Thread#add_trace_func
15884           which add new trace func instead of replace old one.
15885           C level API was modified.  See thread.c (logic) and
15886           yarvcore.h (data structures).
15888         * vm.c, vm_macro.def: add hook points.
15890         * compile.c, insns.def: fix "trace" instruction.
15892         * iseq.c, vm_macro.h: add compile option "trace_instruction".
15894         * test/ruby/test_settracefunc.rb: hook "c-return" of set_trace_func.
15896 Thu Apr 19 20:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15898         * parse.y (symbol): symbols should be followed by EXPR_ENDARG.
15900         * parse.y (dsym): ditto.
15902         * parse.y (parser_yylex): strings should be followed by
15903           EXPR_ENDARG.
15905         * parse.y (parser_yylex): ditto for numbers.
15907         * parse.y (parser_yylex): EXPR_ENDARG after ']' and '}'.
15909 Thu Apr 19 17:46:36 2007  Koichi Sasada  <ko1@atdot.net>
15911         * lib/optparse.rb: fix to override conv proc.
15913 Wed Apr 18 10:41:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15915         * util.c (ruby_strtod): exponent is radix 10.  [ruby-talk:248272]
15917 Wed Apr 18 02:50:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15919         * yarvcore.c (th_init2): push initial blockptr value for
15920           rb_block_given_p() outside ruby_exec().  [ruby-core:10923]
15922 Wed Apr 18 02:30:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15924         * configure.in (LDFLAGS): prepend -L. instead appending it to
15925           XLDFLAGS.  [ruby-core:10933]
15927         * configure.in (Makefile): remove $U for automake from MISSING.
15928           [ruby-talk:248171]
15930 Mon Apr 16 22:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15932         * ext/pty/expect_sample.rb: avoid symbolic link representation for
15933           expect.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
15934           [ruby-dev:30714]
15936 Mon Apr 16 22:51:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15938         * sample: replace TRUE, FALSE with true, false respectively.
15939           a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
15940           [ruby-dev:30713]
15942 Mon Apr 16 17:08:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15944         * lib/optparse.rb (make_switch): do not clobber converter if pattern
15945           has no convert method.  reported by sheepman in [ruby-dev:30709].
15947 Mon Apr 16 16:49:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15949         * ext/stringio/stringio.c (strio_seek): consistent behavior with
15950           IO#seek.  patch by sheepman in [ruby-dev:30710].
15952 Mon Apr 16 16:34:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15954         * parse.y (parser_yylex): should set command_start after block
15955           starting "do"s and braces.  [ruby-core:10916]
15957 Mon Apr 16 10:51:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15959         * enum.c (enum_each_with_index): each_with_index to forward
15960           arguments to each.  [ruby-core:10921]
15962 Mon Apr 16 10:43:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15964         * time.c (time_arg): should allow to specify 24:00.
15965           [ruby-core:10915]
15967 Sun Apr 15 09:12:54 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15969         * lib/date/format.rb: added some zone names.
15971         * lib/date/format.rb (_parse): now interprets doted numerical
15972           dates as a big endian (except dd.mm.yyyy).
15974 Thu Apr 12 17:13:22 2007  Koichi Sasada  <ko1@atdot.net>
15976         * thread.c (mutex_try_lock): check and set owner thread.
15978         * thread_pthread.ci: fix to show error code in error message.
15980 Thu Apr 12 17:11:54 2007  Koichi Sasada  <ko1@atdot.net>
15982         * eval.c (rb_rescue2): restore cfp ([ruby-dev:30582]).
15984 Thu Apr 12 16:06:48 2007  Koichi Sasada  <ko1@atdot.net>
15986         * eval.c (rb_protect): restore cfp ([ruby-dev:30671]).
15988 Thu Apr 12 16:04:31 2007  Koichi Sasada  <ko1@atdot.net>
15990         * compile.c (iseq_compile_each): check node->nd_state == 1, not !0.
15992 Wed Apr 11 16:35:16 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15994         * win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
15995           need to reject reentrance. removed.
15997         * rubysig.h (RUBY_CRITICAL): follow above changes.
15999         * rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.
16001 Tue Apr 10 17:02:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16003         * win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
16004           before calling original fclose()/close().
16006 Tue Apr 10 16:14:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16008         * thread_win32.ci (w32_wait_events): check whether interrupt_event is
16009           valid handle or not.
16011         * thread_win32.ci (native_thread_destroy): clear interrupt_event when
16012           close it.
16014 Tue Apr 10 15:53:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16016         * thread_pthread.ci (native_thread_create): initialize sleep_cond.
16017           fixed: [ruby-dev:30675]
16019 Mon Apr  9 18:48:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16021         * thread.c (do_select): ubf_select() is not necessary. interrupt is
16022           checked in the loop.
16024 Mon Apr  9 18:27:26 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16026         * thread.c (do_select): use ubf_select() as UBF on windows.
16028         * win32/win32.c (do_select): shouldn't call catch_interrupt() here.
16029           fixed: [ruby-dev:30674], reported by wanabe.
16031 Mon Apr  9 09:24:32 2007  Shugo Maeda  <shugo@ruby-lang.org>
16033         * lib/net/imap.rb (disconnect): call shutdown for
16034           SSLSocket. Thanks, Technorama Ltd.
16036 Sun Apr  8 13:28:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16038         * compile.c (defined_expr): test arguments of NODE_CALL and so
16039           on as well as NODE_ATTRASGN.  [ruby-core:10886]
16041 Fri Apr  6 10:56:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16043         * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_get_group): get rid of
16044           warning. we are aware of it.
16046 Fri Apr  6 04:00:24 2007  Technorama Ltd.  <oss-ruby@technorama.net>
16048         * ext/openssl/ossl_{bn,x509{attr,cert,name,store}}.c:
16049           Add documentation.
16051 Thu Apr  5 17:59:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16053         * compile.c (defined_expr): support for assignment.
16054           [ruby-core:10867]
16056         * compile.h (ADD_CATCH_ENTRY): removed temporary variable.
16058 Thu Apr  5 15:13:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16060         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_alloc): should
16061           return value.
16063 Thu Apr  5 14:58:49 2007  Technorama Ltd. <oss-ruby@technorama.net>
16065         * ext/openssl/ossl_pkcs5.c: New module.
16067         * ext/openssl/ossl_{cipher,digest,pkcs7,pkcs12}.c:
16068           Remove redundant module namespace.
16070         * ext/openssl/lib/openssl/{cipher,digest}.rb
16071           Add backwards compatible classes for rearranged classes.
16073         * ext/openssl/ossl_{pkcs7,pkcs12}.c: Add documentation.
16075 Thu Apr  5 00:42:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16077         * error.c (rb_notimplement), io.c (pipe_open): removed definite
16078           articles and UNIX manual section from messages.  [ruby-dev:30690]
16080 Wed Apr  4 17:09:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16082         * io.c (pipe_open): refined the message of NotImplementedError.
16083           [ruby-dev:30685]
16085 Wed Apr  4 12:29:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16087         * error.c (rb_notimplement): should show the name of this func,
16088           not callee.
16090 Wed Apr  4 10:18:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16092         * io.c (popen_exec): should not close close-on-exec FDs.
16093           [ruby-dev:30679]
16095         * io.c (pipe_open): raise NotImplementedError for command "-" on
16096           platforms where fork(2) is not available.  [ruby-dev:30681]
16098 Tue Apr  4 04:17:18 2007  Technorama Ltd. <oss-ruby@technorama.net>
16100         * ext/openssl/ossl_ssl.c: Add documentation.
16102 Tue Apr  3 16:22:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16104         * ext/openssl/extconf.rb: check for functions added in 1.9.
16106         * ext/openssl/ruby_missing.h: check per features instead by
16107           checking version code.  [ruby-core:10845]
16109 Tue Apr  3 16:02:44 2007  Technorama Ltd. <oss-ruby@technorama.net>
16111         * ext/openssl/ossl_bn.c: More documentation.
16113         * ext/openssl/lib/ossl_{pkey,pkey_ec}.[ch]: Add elliptic curves.
16115 Tue Apr  3 15:50:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16117         * ext/socket/socket.c (s_recv, s_recvfrom): some systems (such as
16118           windows) doesn't set fromlen if the socket is connection-oriented.
16119           reported by Bram Whillock in [ruby-core:10512] [ruby-Bugs#9061]
16121 Tue Apr  3 09:36:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16123         * ext/openssl/ruby_missing.h: need to include version.h to check
16124           RUBY_VERSION_CODE.
16126 Mon Apr  3 07:10:12 2007  Technorama Ltd. <oss-ruby@technorama.net>
16128         * ext/openssl/ossl_{ssl.[ch],ssl_session.c},
16129           ext/openssl/lib/openssl/lib/openssl/ssl.rb:
16130           New SSL::Session class.  Add session cb's, getter/setters,
16131           config, and statistics methods.
16133 Mon Apr  3 04:00:23 2007  Technorama Ltd. <oss-ruby@technorama.net>
16135         * ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
16137         * ext/openssl/ossl_hmac.c Add reset method.
16139         * ext/openssl/ossl_cipher.c (Cipher#update) Take additional
16140           buffer argument.
16142         * ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h}
16143           compatibility with 1.8.
16145 Mon Apr  2 21:55:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16147         * insns.def (throw), thread.c, yarvcore.h (throwed_errinfo): fixed
16148           typo.
16150 Fri Mar 30 11:46:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16152         * win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
16153           wanabe [ruby-dev:30672]
16155         * win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
16156           instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]
16158 Fri Mar 30 02:29:04 2007  Technorama  <oss-ruby@technorama.net>
16160         * ext/openssl/ossl_{bn,cipher,digest,hmac,rand,pkey_{dh,dsa,rsa}}.c:
16161           Add Documentation for various methods.
16163         * ext/openssl/lib/openssl/cipher.rb: Ditto
16165         * ext/openssl/ossl_bn.c: add lshift! and rshift! methods.
16167         * ext/openssl/ossl_digest.c: GetDigestPtr() also accept a string.
16169 Fri Mar 23 11:28:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16171         * win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
16172           rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
16173           rb_w32_get_environ): use strlcpy() and strlcat().
16175         * win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().
16177         * win32/win32.c (rb_w32_closedir): check NULL before free pointers.
16179 Fri Mar 23 00:24:52 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
16181         * lib/shell: commit miss(support for ruby 1.9(YARV) thread model).
16183 Thu Mar 22 13:32:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16185         * win32/Makefile.sub (LIBS): remove an unnecessary library.
16187 Thu Mar 22 10:27:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16189         * test/ruby/test_bignum.rb (test_to_s): add tests for Bignum#to_s.
16191 Wed Mar 21 20:38:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16193         * marshal.c (w_short, w_long, w_object): get rid of VC++ warnings.
16195 Wed Mar 21 20:05:07 2007  Koichi Sasada  <ko1@atdot.net>
16197         * compile.c, parse.y, eval.c, intern.h, iseq.c, lex.c, node.h,
16198           proc.c, vm.c, vm_macro.def, vm_macro.def, yarvcore.c, yarvcore.h,
16199           debug.c, debug.h: merge half-baked-1.9 changes.  The biggest change
16200           is to change node structure around NODE_SCOPE, NODE_ARGS.  Every
16201           scope (method/class/block) has own NODE_SCOPE node and NODE_ARGS
16202           represents more details of arguments information.  I'll write a
16203           document about detail of node structure.
16205 Wed Mar 21 17:04:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16207         * bignum.c (rb_big2str0): round up for the most significant digit.
16208           [ruby-core:10686]
16210 Tue Mar 21 08:20:00 2007  Nathaniel Talbott  <ntalbott@ruby-lang.org>
16212         * test/testunit/collector/test_dir.rb: Fixed test/unit tests that
16213           were breaking due to Module#public_instance_methods now
16214           returning a Symbol instead of a String.
16216         * test/testunit/collector/test_objectspace.rb: Ditto.
16218 Tue Mar 20 22:54:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16220         * marshal.c (w_extended): erroneous check condition when dump
16221           method is defined.  [ruby-core:10646]
16223 Tue Mar 20 21:36:47 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
16225         * lib/shell.rb, lib/shell: support for ruby 1.9(YARV) thread model.
16227 Tue Mar 20 16:36:08 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
16229         * distruby.rb: Add zip generation.
16231 Tue Mar 20 16:20:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16233         * eval.c (rb_f_callee_name): add __method__ and __callee__ again.
16234           __callee__ need to rework to adopt YARV.  [ruby-core:10671]
16236 Tue Mar 20 11:09:00 2007  Akinori MUSHA  <knu@iDaemons.org>
16238         * lib/set.rb: Revise rdoc.
16240         * lib/set.rb (Set#freeze, Set#taint, Set#untaint): Implement
16241           Set#freeze, Set#taint, and Set#untaint; requested by: Dan
16242           Hutchings <dan AT moltoagitato.com> in [ruby-bugs:PR#9359].
16244 Tue Mar 20 09:13:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16246         * process.c (rb_fork): flush stdouts always before fork(2).
16247           fixed: [ruby-dev:30612]
16249 Tue Mar 20 01:38:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16251         * thread.c (thread_start_func_2): store the result of first_func
16252           as well as first_proc.
16254         * thread.c (thread_create_core): block is not used if first_func
16255           is given.
16257 Mon Mar 19 16:58:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16259         * missing/{strlcat,strlcpy}.c, missing.h: new functions.
16261         * LEGAL: add copyright notice about above files.
16263         * configure.in: check whether strlcat and strlcpy are exist or not.
16265         * {bcc32,win32,wince}/Makefile.sub: use above files.
16267 Mon Mar 19 14:12:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16269         * lib/matrix.rb (Matrix::inverse_from): adding partial pivoting to
16270           the Gauss-Jordan algorithm, making it stable.  a patch from
16271           Peter Vanbroekhoven.  [ruby-core:10641]
16273 Mon Mar 19 12:13:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16275         * regparse.c, etc.: K&R to ANSI code cleanup patch from Stefan
16276           Huehner <stefan at huehner.org>.  [ruby-core:10543]
16278 Mon Mar 19 11:27:13 2007  Minero Aoki  <aamine@loveruby.net>
16280         * lib/net/protocol.rb (rbuf_read): extend buffer size for speed.
16282 Sun Mar 18 08:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16284         * win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
16285           rb_w32_closedir): get rid of possible buffer-overflows.
16287 Sat Mar 17 19:10:39 2007  Kouhei Sutou  <kou@cozmixng.org>
16289         * lib/rss, test/rss:
16290         - supported Atom.
16291         - bumped version 0.1.6 to 0.1.7.
16292         * sample/rss/convert.rb: added new sample.
16294 Fri Mar 16 22:32:20 2007  Minero Aoki  <aamine@loveruby.net>
16296         * lib/net/pop.rb: change default verification mode from
16297           VERIFY_PEER to VERIFY_NONE because most POPS server does not have
16298           true certification.
16300 Fri Mar 16 22:19:24 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16302         * ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
16303           a little bit supporting ActiveX control. [ruby-talk:241188]
16305 Fri Mar 16 22:16:58 2007  Minero Aoki  <aamine@loveruby.net>
16307         * lib/net/http.rb: merge Ruby-SSPI patch contributed by Justin
16308           Bailey.
16310         * ext/Win32API/lib/win32/sspi.rb: new file.
16312 Wed Mar 14 12:30:00 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
16314         * ext/bigdecimal/bigdecimal.c: BigDecimal("-.31") is now
16315           treated as ("-0.31") not as ("0.31").
16317 Tue Mar 13 19:04:30 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
16319         * lib/sync.rb: support for ruby 1.9(YARV) thread model.
16321 Tue Mar 13 09:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16323         * common.mk (clear-installed-list): separated from install-prereq.
16325 Tue Mar 13 07:23:20 2007  Shugo Maeda  <shugo@ruby-lang.org>
16327         * lib/monitor.rb (mon_try_enter): call @mon_muetx.try_lock.
16328           Thanks, Keiju ISHITSUKA. [ruby-dev:30507]
16330 Tue Mar 13 02:42:58 2007  Akinori MUSHA  <knu@iDaemons.org>
16332         * lib/cgi.rb (CGI::header): IIS >= 5.0 does not need the nph
16333           assumption any more; submitted by MIYASAKA Masaru <alkaid AT
16334           coral.ocn.ne.jp> in [ruby-dev:30537].
16336 Mon Mar 12 10:53:28 2007  Akinori MUSHA  <knu@iDaemons.org>
16338         * ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
16339           externally defined modules; submitted by Technorama
16340           Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].
16342         * ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.
16344         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.
16346         * ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.
16348         * ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.
16350         * ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.
16352         * ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.
16354         * ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.
16356         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.
16358         * ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.
16360         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.
16362 Sun Mar 11 18:42:01 2007  Akinori MUSHA  <knu@iDaemons.org>
16364         * misc/ruby-mode.el (ruby-block-end-re): Support for the
16365           experimental ';;' terminator had been dropped.
16367 Sun Mar 11 05:45:46 2007  Akinori MUSHA  <knu@iDaemons.org>
16369         * misc/README, misc/rdebug.el: Add rdebug.el, Emacs ruby-debug
16370           interface based on rubydb3x.el; submitted by Martin Nordholts
16371           <enselic AT gmail.com> in [ruby-bugs:PR#9023].
16373 Sat Mar 10 07:20:28 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16375         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
16376           WIN32OLE_TYPELIB#visible?.
16378         * test/win32ole/test_win32ole_typelib.rb: ditto.
16380 Thu Mar  8 09:17:59 2007  Minero Aoki  <aamine@loveruby.net>
16382         * compile.c: iseq_compile -> rb_iseq_compile.
16384         * iseq.c: ditto.
16386         * intern.h: provide function prototype of Init_jump.
16388         * eval_jump.h (Init_jump): declare function type.
16390         * thread.c: platform-dependent functions should be surrounded by #ifdef.
16392         * iseq.c (iseq_data_to_ary): remove unused variable.
16394         * compile.c (set_arguments): ditto.
16396         * thread.c (set_unblock_function): ditto.
16398         * thread_pthread.ci: reduce printf warning.
16400         * vm_dump.c: ditto.
16402 Tue Mar  6 16:35:04 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
16404         * lib/shell/process-controller.rb: fix thread synchronization problem for [ruby-dev:30477].
16406 Tue Mar  6 11:53:25 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
16408         * ext/tk/sample/irbtkw.rbw: fails to exit process.
16410 Tue Mar  6 10:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16412         * runruby.rb: added --pure (turned on by default) and --debugger
16413           options.
16415 Mon Mar  5 09:19:33 2007  Minero Aoki  <aamine@loveruby.net>
16417         * lib/timeout.rb (Timeout.timeout): should return the block value
16418           always.
16420         * lib/timeout.rb (Timeout.timeout): should yield sec argument
16421           always.
16423         * lib/timeout.rb (Timeout.timeout): fix document.
16425 Mon Mar  5 09:16:40 2007  Minero Aoki  <aamine@loveruby.net>
16427         * lib/net/smtp.rb: support automatic STARTTLS.
16429         * lib/net/smtp.rb: check server advertisement.
16431         * lib/net/smtp.rb: introduce new class SMTP::Response.
16433         * lib/net/smtp.rb (getok): should not use sprintf.
16435         * lib/net/smtp.rb (get_response): ditto.
16437         * lib/net/protocol.rb: reduce syntax warning on 1.9.
16439 Mon Mar  5 07:13:28 2007  Minero Aoki  <aamine@loveruby.net>
16441         * lib/net/smtp.rb: reconstruct SMTPS/STARTTLS interface.  New
16442           interface is incompatible from current 1.9 interface at all.
16444         * lib/net/smtp.rb: All SSL-related class methods are removed; use
16445           instance methods instead.
16447         * lib/net/smtp.rb: rename methods: *ssl -> *tls (with alias
16448           "ssl").
16450         * lib/net/smtp.rb: rename methods: *tls -> *starttls.
16452 Mon Mar  5 01:36:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16454         * parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
16455           indentation broken at YARV merger.
16457 Sun Mar  4 23:41:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16459         * file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
16460           rb_gid_t instead of int.
16462         * file.c (rb_stat_s_utime): fixed a commit miss for the platforms
16463           where utimes() does not exist.
16465         * lib/fileutils.rb (touch): ditto.
16467 Sun Mar  4 14:46:56 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
16469         * util.c (push_element): should return a int value.
16471 Sun Mar  4 01:01:25 2007  Akinori MUSHA  <knu@iDaemons.org>
16473         * lib/set.rb (Set#^, Set#&): Correct documentation.  Those methods
16474           return sets, not arrays; noted by Oliver Frank Wittich <nietz AT
16475           mangabrain.de>.
16477 Sat Mar  3 22:54:33 2007  Minero Aoki  <aamine@loveruby.net>
16479         * lib/fileutils.rb (touch): last #touch change causes error when
16480           :mtime option was not given.
16482 Sat Mar  3 22:51:29 2007  Minero Aoki  <aamine@loveruby.net>
16484         * lib/fileutils.rb (mv): could not move directory between
16485           different file systems. [ruby-dev:30411]
16487 Sat Mar  3 22:37:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16489         * file.c (rb_file_s_utime): allow nil to set the current time.
16491         * lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
16492           options.  fixed: [ruby-talk:219037]
16494 Sat Mar  3 15:52:26 2007  Akinori MUSHA  <knu@iDaemons.org>
16496         * object.c (instance_variable_get): Restore rdoc markups lost in
16497           the last commit.
16499 Fri Mar  2 21:17:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16501         * ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
16502           ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
16503           ): fix some bugs of WIN32OLE_VARIANT.new when variant type is
16504           VT_ARRAY|VT_BSTR or VT_BYREF.
16506         * ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
16507           WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
16508           is defined as instance method of WIN32OLE_VARIANT.
16510         * test/win32ole/test_win32ole_variant.rb: add some test for
16511           VT_ARRAY, VT_BYREF variant type.
16513 Fri Mar  2 07:58:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16515         * object.c (rb_obj_ivar_set): RDoc updated according to a
16516           suggestion from Brian Candler <B.Candler AT pobox.com>.
16517           [ruby-core:10469]
16519 Thu Mar  1 21:38:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16521         * parse.y (stmt, arg): should not omit lhs of OP_ASGN1 even if
16522           empty.  [ruby-dev:30455]
16524 Thu Mar  1 02:55:25 2007  Akinori MUSHA  <knu@iDaemons.org>
16526         * ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
16527           Digest::Base subclasses, which was unintentionally made
16528           impossible while restructuring Digest classes.
16530 Thu Mar  1 02:05:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16532         * mkconfig.rb (patchlevel): read from version.h.
16534 Wed Feb 28 21:15:00 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
16536         * configure.in (ac_cv_func_fcntl): fcntl support for MinGW.
16538         * missing/flock.c: workaround for MinGW.
16540 Wed Feb 28 20:51:32 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
16542         * pack.c (pack_unpack): properly ignore non-base64 octets such as
16543           UTF-8 encoded BOMs; submitted by SOUMA Yutaka <holon@radastery.jp>
16544           to fix [ruby-core:10437]
16546 Wed Feb 28 18:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16548         * ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
16549           they are already checked at configure.
16550           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
16552 Wed Feb 28 18:23:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16554         * lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
16555           should be the first elements of library paths list.
16556           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
16558 Wed Feb 28 10:33:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16560         * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
16561           specific thread model.
16563         * compile.h, regint.h, vm.h, array.c: removed unnecessary #include.
16565 Wed Feb 28 04:03:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16567         * enum.c (take_i): small cosmetic / documentation patch from
16568           Tadashi Saito <shiba AT mail2.accsnet.ne.jp>. [ruby-dev:30446]
16570 Wed Feb 28 01:20:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16572         * test/{dbm,gdbm}/test_{dbm,gdbm}.rb: shouldn't use host_os. use
16573           target_os instead. reported by KOBAYASHI Yasuhiro [ruby-list:43225]
16575 Wed Feb 28 00:08:11 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
16577         * mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
16579         * common.mk: new target dist
16581         * distruby.rb: new file
16583 Tue Feb 27 22:18:45 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
16585         * configure.in (--enable-auto-image-base): avoid the necessity to
16586           rebase the shared libs as much as possible;
16587           submitted by Corinna Vinschen <spam at vinschen.de> in
16588           [ruby-talk:240964].
16590 Tue Feb 27 21:36:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
16592         * util.c (__crt0_glob_function): use ruby_glob() instead of rb_globi().
16594 Tue Feb 27 21:33:04 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
16596         * configure.in (ac_cv_func_setrlimit): workaround for djgpp.
16598 Tue Feb 27 20:35:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16600         * common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
16602 Tue Feb 27 19:26:31 2007  Akinori MUSHA  <knu@iDaemons.org>
16604         * ext/nkf/nkf.c (rb_str_resize, rb_nkf_kconv, rb_nkf_guess1,
16605           rb_nkf_guess2): Silence warnings regarding char * vs. unsigned
16606           char * mismatch; submitted by Lyle Johnson
16607           <lyle.johnson@gmail.com> in [ruby-core:10416].
16609 Tue Feb 27 19:15:01 2007  Akinori MUSHA  <knu@iDaemons.org>
16611         * lib/base64.rb (Base64::b64encode): Fix documentation; submitted
16612           by David Symonds <dsymonds@gmail.com> in [ruby-core:10432].
16614 Tue Feb 27 18:59:42 2007  Akinori MUSHA  <knu@iDaemons.org>
16616         * ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
16617           regarding char * vs. unsigned char * mismatch; submitted by Lyle
16618           Johnson <lyle.johnson@gmail.com> in [ruby-core:10416].
16620         * ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto.
16622         * ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto.
16624         * ext/digest/digest.c (rb_digest_base_finish,
16625           rb_digest_base_update): Ditto.
16627 Tue Feb 27 18:12:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16629         * enum.c (enum_take): new method.  [ruby-dev:30407]
16631         * enum.c (enum_drop): ditto.
16633 Tue Feb 27 07:47:24 2007  Koichi Sasada  <ko1@atdot.net>
16635         * yarvcore.h, vm.h: rename th_invoke_yield() to th_yield().
16637         * blockinlining.c: ditto.
16639         * eval.c: ditto.
16641         * vm.c, insns.def: rename th_invoke_yield_cfunc()
16642           to th_yield_with_cfunc().
16644         * yarvcore.h, yarvcore.c: rename theYarvVM to ruby_current_vm and
16645           yarvCurrentThread to ruby_current_thread.  remove yarvVMArray.
16647 Tue Feb 27 00:45:23 2007  Minero Aoki  <aamine@loveruby.net>
16649         * test/ruby/test_optimization.rb: restore method before calling
16650           assert_equal.
16652 Mon Feb 26 00:58:39 2007  Koichi Sasada  <ko1@atdot.net>
16654         * yarvcore.h: add rb_thread_t#top_wrapper, top_self.
16656         * eval_load.c (rb_load): support eval in wrapper module
16657           (load(file, true)).
16659         * eval.c: ditto.
16661         * eval_jump.h: ditto.
16663         * iseq.c: ditto.
16665         * vm.c: ditto.
16667         * yarvcore.c: ditto.
16669         * insns.def: add a empty line.
16671 Mon Feb 26 00:54:36 2007  Koichi Sasada  <ko1@atdot.net>
16673         * common.mk: change "gdb" rule.  You can debug miniruby with
16674           $(srcdir)/test.rb on gdb by this rule (type "make gdb").
16675           If you write break points to "breakpoints.gdb" on $srcdir,
16676           gdb runs with this file.
16678 Sun Feb 25 11:46:58 2007  Koichi Sasada  <ko1@atdot.net>
16680         * win32/Makefile.sub: enable -Zi (debug) option.
16682 Sun Feb 25 11:38:40 2007  Koichi Sasada  <ko1@atdot.net>
16684         * ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.
16686         * intern.h: ditto.
16688         * signal.c (posix_signal): remove unused function
16689           posix_nativethread_signal().
16691 Sun Feb 25 11:31:13 2007  Koichi Sasada  <ko1@atdot.net>
16693         * thread.c (rb_thread_run): fix to ANSI style.
16695 Sun Feb 25 11:09:16 2007  Minero Aoki  <aamine@loveruby.net>
16697         * bootstraptest/runner.rb: show source code in error message.
16699 Sun Feb 25 09:39:50 2007  Koichi Sasada  <ko1@atdot.net>
16701         * yarvcore.h:
16702           rename:
16703             rb_iseq_t#file_name -> filename
16704             rb_iseq_t#local_tbl -> local_table
16705           add:
16706             rb_iseq_t#local_table_size
16708         * compile.c: separate local_table_size and local_size
16709           (local variable size)
16711         * blockinlining.c: apply above rename.
16713         * compile.h: ditto.
16715         * eval.c: ditto.
16717         * iseq.c: ditto.
16719         * proc.c: ditto.
16721         * vm.c: ditto.
16723         * vm_dump.c: ditto.
16725 Sun Feb 25 10:27:17 2007  Minero Aoki  <aamine@loveruby.net>
16727         * bootstraptest/runner.rb: add lib/ to load path.
16729 Sat Feb 25 10:16:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16731         * rubyio.h (HAVE_RB_IO_T): macro to tell if rb_io_t is defined.
16733 Sat Feb 24 19:39:16 2007  Minero Aoki  <aamine@loveruby.net>
16735         * common.mk: new target "btest", to run bootstraptests.
16737 Sat Feb 24 19:30:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16739         * file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
16740           renamed from OpenFile.
16742         * ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
16743           ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
16744           ext/readline/readline.c, ext/socket/socket.c: ditto.
16746 Sat Feb 24 19:28:23 2007  Minero Aoki  <aamine@loveruby.net>
16748         * bootstraptest/runner.rb: new option -v,--verbose.
16750 Sat Feb 24 18:55:50 2007  Minero Aoki  <aamine@loveruby.net>
16752         * yarvtest/test_method.rb: removed (merged to bootstraptest).
16754         * yarvtest/test_class.rb: ditto.
16756 Sat Feb 24 18:44:39 2007  Minero Aoki  <aamine@loveruby.net>
16758         * bootstraptest/test_class.rb: new file.
16760         * bootstraptest/test_method.rb: add tests.
16762 Sat Feb 24 18:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16764         * intern.h (rb_thread_blocking_region): add prototype.
16766         * file.c (rb_thread_flock, rb_file_flock): use UBF feature.
16768         * process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
16770         * thread.c (rb_thread_debug): added runtime debugging flag.
16772         * thread.c (BLOCKING_REGION): restore previous UBF.
16774         * thread.c (rb_thread_blocking_region): default UBF to interrupt
16775           in system dependent way by RB_UBF_DFL.
16776           + ubf_select() on posix system
16777           + ubf_handle() on Win32
16778           + none on cygwin
16780         * thread_win32.ci (rb_w32_wait_events_blocking): blocking version.
16782         * win32/win32.c (waitpid): use rb_w32_wait_events_blocking().
16784 Sat Feb 24 17:45:48 2007  Minero Aoki  <aamine@loveruby.net>
16786         * parse.y (f_arg, opt_f_block_arg): ripper should export VALUE.
16788 Sat Feb 24 16:52:55 2007  Minero Aoki  <aamine@loveruby.net>
16790         * bootstraptest/runner.rb: fix syntax error.
16792 Sat Feb 24 16:51:09 2007  Minero Aoki  <aamine@loveruby.net>
16794         * bootstraptest/runner.rb: new option --help.
16796 Sat Feb 24 16:47:33 2007  Minero Aoki  <aamine@loveruby.net>
16798         * bootstraptest: new test suite.
16800         * bootstraptest/runner.rb: new file.
16802         * bootstraptest/test_literal.rb: new file.
16804         * bootstraptest/test_method.rb: new file.
16806 Sat Feb 24 16:29:15 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16808         * win32/win32.c (StartSocket): remove unnecessary code.
16810 Sat Feb 24 16:04:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16812         * parse.y (struct local_vars): remove unused nofree member from
16813           struct.
16815         * parse.y (parser_free): ditto.
16817 Sat Feb 24 15:57:19 2007  Shugo Maeda  <shugo@ruby-lang.org>
16819         * lib/thread.rb (ConditionVariable#broadcast): use Mutex
16820           instead of Thread.exclusive.
16822         * lib/monitor.rb (MonitorMixin#mon_exit): unset @mon_owner
16823           before calling Mutex#unlock.
16825 Sat Feb 24 15:51:45 2007  Minero Aoki  <aamine@loveruby.net>
16827         * parse.y (program): remove useless assignment to reduce warning.
16829 Sat Feb 24 15:41:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16831         * parse.y (lambda): remove unused clause from the rule to stop
16832           warning.
16834 Sat Feb 24 15:41:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
16836         * lib/thread.rb: do not redefine Mutex#synchronize.
16838 Sat Feb 24 15:14:02 2007  Shugo Maeda  <shugo@ruby-lang.org>
16840         * lib/monitor.rb: rewritten using Mutex/ConditionVariable.
16842 Sat Feb 24 13:25:32 2007  Koichi Sasada  <ko1@atdot.net>
16844         * lib/soap/mapping/factory.rb: catch up with spec changes (return
16845           Symbols instead of Strings).
16847         * lib/soap/mapping/mapping.rb: ditto.
16849 Sat Feb 24 10:49:55 2007  Koichi Sasada  <ko1@atdot.net>
16851         * parse.y, node.h, compile.c: change node tree structure.  a purpose
16852           of this change is to unify argument structure of method and block.
16853           this change prohibits duplicate block parameter name.
16854           new argument information:
16855             NODE_ARGS     [m: int, o: NODE_OPT_ARG, ->]
16856             NODE_ARGS_AUX [r: ID, b: ID, ->]
16857             NODE_ARGS_AUX [Pst: id, Plen: int, init: NODE*]
16858           optarg information:
16859             NODE_OPT_ARGS [idx, expr, ->]
16861         * vm_macro.def: ditto.
16863         * gc.c: ditto.
16865         * iseq.c: ditto.
16867         * compile.h: fix debug function name.
16869         * test/ripper/test_scanner_events.rb: |_,_,foo| -> |_1,_2,foo|
16871         * test/ruby/test_lambda.rb: disable test temporarily.
16873 Sat Feb 24 10:46:28 2007  Koichi Sasada  <ko1@atdot.net>
16875         * test/testunit/test_testcase.rb: catch up with current instance
16876           variable spec.
16878 Sat Feb 24 10:32:59 2007  Koichi Sasada  <ko1@atdot.net>
16880         * common.mk: change vm_macro.def rule.
16882 Sat Feb 24 10:38:05 2007  Minero Aoki  <aamine@loveruby.net>
16884         * ext/racc/cparse/cparse.c (cparse_params_mark): remove useless
16885           rb_gc_mark.  Thanks Tomoyuki Chikanaga. [ruby-dev:30405]
16887 Sat Feb 24 07:31:35 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16889         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
16890           WIN32OLE_VARIANT#value=, refactoring.
16892         * test/win32ole/test_win32ole_variant.rb: add some test for
16893           WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.
16895 Fri Feb 23 18:37:55 2007  Minero Aoki  <aamine@loveruby.net>
16897         * test/ruby/test_yield.rb: new test.
16899         * yarvtest/test_yield.rb: removed (moved to test_yield.rb).
16901 Fri Feb 23 18:27:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16903         * thread.c (rb_thread_polling): check interrupts here.
16905         * thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
16906           now receive multiple event handles.
16908         * win32/win32.c (wait_events, rb_w32_main_context): removed.
16910         * thread_win32.ci (rb_w32_wait_events): new function.
16912         * thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
16913           from win32/win32.c to thread_win32.ci, and use w32_wait_events().
16915 Fri Feb 23 18:13:22 2007  Minero Aoki  <aamine@loveruby.net>
16917         * test/ruby/test_optimization.rb: new test (merges test_opts.rb).
16919         * yarvtest/test_opts.rb: removed.
16921 Fri Feb 23 16:59:39 2007  Minero Aoki  <aamine@loveruby.net>
16923         * test/ruby/test_assignment.rb: merge yarvtest/test_massign.
16925         * yarvtest/test_massign.rb: removed (merged to
16926           test_assignment.rb).
16928 Fri Feb 23 15:58:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16930         * signal.c (sighandler): need to re-install sighandler on some
16931           platforms.
16933 Fri Feb 23 15:05:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16935         * win32/win32.c (set_pioinfo_extra): simplified.
16937 Fri Feb 23 14:23:20 2007  Minero Aoki  <aamine@loveruby.net>
16939         * test/ruby/test_literal.rb: new test.
16941 Fri Feb 23 12:40:12 2007  James Edward Gray II  <james@grayproductions.net>
16943         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): Make the
16944           Content-Length parameter optional for responses in
16945           xmlrpc/client.rb; suggested by Daniel Berger
16946           <Daniel.Berger@qwest.com> and approved by the maintainer.
16948         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Add DateTime
16949           support to xmlrpc; approved by the maintainer.
16951 Fri Feb 23 12:24:46 2007  Minero Aoki  <aamine@loveruby.net>
16953         * parse.y (lambda): add ripper event.  This fixes bus error on
16954           "make test-all".
16956         * ext/ripper/extconf.rb: do not stop build.
16958 Fri Feb 23 12:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16960         * parse.y: remove dyna_check_gen() prototype.
16962 Fri Feb 23 11:41:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16964         * parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,
16965           object.c, string.c, variable.c, vm_macro.def: revert private
16966           instance variable feature, which is postponed until next major
16967           release.
16969         * marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to
16970           8th version.
16972 Fri Feb 23 10:53:21 2007  Shugo Maeda  <shugo@ruby-lang.org>
16974         * thread_pthread.ci (native_mutex_lock): do not call
16975           pthread_mutex_trylock().
16977 Fri Feb 23 10:31:16 2007  Minero Aoki  <aamine@loveruby.net>
16979         * dln.c: use dlopen on Mac OS X 10.3 or later.
16981 Fri Feb 23 10:03:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16983         * string.c (rb_str_ord): need not to check string length;  ord
16984           returns a codepoint for the first character in the string.
16986 Wed Feb 21 22:29:45 2007  Akinori MUSHA  <knu@iDaemons.org>
16988         * numeric.c (fix_equal): A bit more optimization.
16990 Wed Feb 21 17:40:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16992         * numeric.c (fix_equal): remove FIX2LONG() to optimize.  suggested
16993           in http://t-a-w.blogspot.com/2007/02/making-ruby-faster.html.
16994           [ruby-talk:240223]
16996         * numeric.c (fix_cmp): ditto.
16998 Wed Feb 21 09:14:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17000         * eval_load.c (rb_require_safe): should restore safe level.
17002 Tue Feb 20 21:19:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17004         * ext/win32ole/win32ole.c (installed_code_page_proc,
17005           ole_variant2val): small refactoring.
17007 Tue Feb 20 15:11:42 2007  Koichi Sasada  <ko1@atdot.net>
17009         * eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
17010           vm.c from eval.c.  change th_call_super() to static function.
17012 Tue Feb 20 15:08:25 2007  Koichi Sasada  <ko1@atdot.net>
17014         * test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
17015           another thread close IO object which current thread is blocking with.
17017 Tue Feb 20 15:03:29 2007  Koichi Sasada  <ko1@atdot.net>
17019         * thread.c (do_select, rb_thread_wait_fd_rw): raise sys error if
17020           errno is not 0 and EBADF.
17022 Mon Feb 19 22:15:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17024         * configure.in (RUBY_REPLACE_TYPE): cache convertible type info.
17026         * intern.h (rb_detach_process): use rb_pid_t instead of pid_t.
17028         * ruby.h (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM, NUM2GIDT):
17029           defaulted to conversion using long.
17031 Mon Feb 19 17:14:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17033         * ext/socket/socket.c (unix_peeraddr): wrong syscall name in error
17034           message for #peeraddr. a patch from Sam Roberts
17035           <sroberts at uniserve.com>.  [ruby-core:10366]
17037 Sun Feb 18 22:56:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17039         * ext/etc/etc.c (etc_getgrgid): missed to replace a macro.
17041 Sun Feb 18 19:33:00 2007  Tadayoshi Funaba  <tadf@dotrb.org>
17043         * lib/date/format.rb: updated based on date2 4.0.3.
17045 Sun Feb 18 13:11:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17047         * configure.in (pid_t, uid_t, gid_t): check if defined.
17049         * intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
17050           rb_{pid,uid,gid}_t instead of plain int.  [ruby-dev:30376]
17052         * ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
17053           NUM2GIDT): moved to configure.in.
17055 Fri Feb 16 21:34:33 2007  Koichi Sasada  <ko1@atdot.net>
17057         * object.c (rb_obj_ivar_set/get/defined): fix to check :@_v/C id.
17059         * test/testunit/test_testcase.rb: fix to use instance_variable_get()
17060           to access @_result.
17062 Fri Feb 16 20:59:10 2007  Koichi Sasada  <ko1@atdot.net>
17064         * intern.h: add a prototype of rb_sym_to_s().
17066 Fri Feb 16 19:24:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17068         * math.c (math_log): update document to mention second optional
17069           argument for logarithm base.
17071 Fri Feb 16 19:19:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17073         * parse.y (mrhs): need to append by arg_append().
17074           [ruby-talk:239385]
17076 Fri Feb 16 11:18:21 2007  Eric Hodel  <drbrain@segment7.net>
17078         * lib/.document: Apply patch for irb, e2mmap and README by Hugh Sasse
17079           <hgs at dmu.ac.uk> from [ruby-core:10135]
17081         * lib/prettyprint.rb: Suppress RDoc for PrettyPrint test suite.
17083 Thu Feb 15 20:48:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17085         * win32/win32.c (set_pioinfo_extra): new function for VC++8 SP1
17086           workaround. [ruby-core:10259]
17088         * win32/win32.c (NtInitialize): call above function.
17090 Thu Feb 15 16:25:54 2007  Akinori MUSHA  <knu@iDaemons.org>
17092         * lib/uri/generic.rb (URI::Generic::userinfo): Considering how
17093           `scheme://user:@...', `scheme://:password@...' and
17094           `scheme://:@...' are parsed, an empty user name or password
17095           should be allowed and represented as it is.
17097 Thu Feb 15 01:52:53 2007  Koichi Sasada  <ko1@atdot.net>
17099         * vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to
17100           ruby_vm_global_state_version.
17102 Thu Feb 15 01:50:26 2007  Koichi Sasada  <ko1@atdot.net>
17104         * test/fileutils/test_fileutils.rb (check_singleton): fix to use
17105           symbol instead of string.
17107         * test/io/nonblock/test_flush.rb: enable tests.
17109         * test/xmlrpc/test_webrick_server.rb: ditto.
17111 Thu Feb 15 01:43:45 2007  Koichi Sasada  <ko1@atdot.net>
17113         * lib/delegate.rb: catch up with class local variable (@_v) spec.
17115         * lib/singleton.rb: ditto.
17117 Wed Feb 14 22:52:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17119         * ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
17120           support VT_I8, VT_UI8.
17122 Wed Feb 14 22:10:21 2007  Koichi Sasada  <ko1@atdot.net>
17124         * configure.in: change stack limit to 2MB from 32MB.
17126         * win32/Makefile.sub: ditto.
17128 Wed Feb 14 21:39:36 2007  Akinori MUSHA  <knu@iDaemons.org>
17130         * ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
17131           autoloads for sha2 classes in favor of handling in
17132           const_missing(), to work around a problem exposed on OS X.
17134 Wed Feb 14 21:19:47 2007  Koichi Sasada  <ko1@atdot.net>
17136         * thread_pthread.ci (native_thread_create): adjust 4KB (page size)
17137           alignment.
17139 Wed Feb 14 21:12:36 2007  Koichi Sasada  <ko1@atdot.net>
17141         * thread_pthread.ci (CHECK_ERR): call rb_bug()
17142           instead of printf() and exit().
17144 Wed Feb 14 16:48:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17146         * lib/date/format.rb (Date::Format::Bag::method_missing): need not
17147           to use instance variables corresponding each method; use Hash
17148           instead.
17150 Wed Feb 14 13:12:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17152         * re.c (reg_operand): allow symbols to be operands for regular
17153           expression matches.
17155         * string.c (Init_String): allow Symbol#===.
17157         * lib/date/format.rb (Date::Format::Bag::to_hash): string
17158           added prefixes.
17160 Wed Feb 14 12:58:38 2007  Koichi Sasada  <ko1@atdot.net>
17162         * thread.c (do_select): fix to iterate select().
17163           on cygwin/mswin32, iterate in unblocking region.
17165         * thread.c (rb_thread_select): don't iterate on this function.
17166           (iterate in do_select).
17168 Wed Feb 14 11:39:18 2007  Koichi Sasada  <ko1@atdot.net>
17170         * thread.c (set_unblock_function): fix function interface.
17172 Wed Feb 14 11:12:02 2007  Koichi Sasada  <ko1@atdot.net>
17174         * eval_load.c, yarvcore.h: use rb_vm_t#loaded_features instead of
17175           rb_features (global variable).
17177         * yarvcore.c: mark rb_vm_t#loaded_features.
17179 Wed Feb 14 08:46:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17181         * compile.c (defined_expr): no longer distinguish ordinary local
17182           variables and in-block local variables in defined? value.
17184 Wed Feb 14 03:14:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17186         * lib/uri/generic.rb (URI::Generic::userinfo): should support
17187           empty password.  [ruby-core:10290]
17189         * lib/uri/generic.rb (URI::Generic::set_password): password can be
17190           cleared by nil.  [ruby-core:10290]
17192 Wed Feb 14 03:10:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17194         * parse.y (struct local_vars): no need to warn out-of-scope
17195           variables; remove dnames member from struct.
17197 Wed Feb 14 03:04:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17199         * parse.y: RVarmap no longer used as yytype; removed.
17201         * parse.y (dyna_push_gen): no longer need return value.
17203         * parse.y (dyna_pop_gen): no longer need argument.
17205         * parse.y (local_push_gen): initialize nofree.
17207 Wed Feb 14 00:30:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17209         * ext/socket/socket.c (init_unixsock): path may contain NUL for
17210           abstract unix sockets.  [ruby-core:10288]
17212 Tue Feb 13 02:21:12 2007  Sam Roberts  <sroberts@uniserve.com>
17214         * io.c (rb_f_syscall): Fix buffer overflow with syscall
17215           arguments.  [ruby-bugs:PR#8541]
17217 Mon Feb 12 13:57:30 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17219         * ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
17221 Mon Feb 12 11:48:52 2007  Kouhei Sutou  <kou@cozmixng.org>
17223         * lib/rss/dublincore.rb, lib/rss/maker/dublincore.rb: dc_rightses
17224           -> dc_rights_list. dc_rightses still exists for backward
17225           compatibility. [ruby-core:8350]
17227         * test/rss/test_maker_dc.rb: added tests for dc_rights_list.
17229 Sun Feb 11 22:40:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17231         * ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
17232           should not return "VARIANT,VARIANT".
17234 Sun Feb 11 22:11:05 2007  Kouhei Sutou  <kou@cozmixng.org>
17236         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#initialize):
17237           kept backward compatibility.
17239 Sun Feb 11 22:10:08 2007  Kouhei Sutou  <kou@cozmixng.org>
17241         * lib/rss/parser.rb (RSS::ListenerMixin#start_else_element): used
17242           const_defined? instead of constants.include?.
17244 Sun Feb 11 18:47:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17246         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
17247           WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.
17249         * test/win32ole/test_win32ole_variant.rb: ditto.
17251         * ext/win32ole/win32ole.c: small refactoring.
17253 Sun Feb 11 07:42:25 2007  Akinori MUSHA  <knu@iDaemons.org>
17255         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Properly parse
17256           a quoted-string in a Content-Disposition value.
17258 Sat Feb 10 20:21:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17260         * ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
17261           thanks to Mikael Pahmp.
17263         * test/win32ole/test_win32ole.rb: ditto.
17265 Sat Feb 10 17:46:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17267         * common.mk: targets which depend on yarvcore.h now depend on
17268           rubysig.h too.
17270         * yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.
17272 Sat Feb 10 00:13:11 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
17274         * ext/tk/lib/tk.rb: fix typo (TkConfigMethod::__confinfo_cmd,
17275           __conv_keyonly_opts).
17277 Fri Feb  9 12:33:40 2007  Koichi Sasada  <ko1@atdot.net>
17279         * thread_win32.ci (w32_show_error_message): renamed to w32_error.
17280           this function do rb_bug().
17282         * thread_win32.ci (w32_set_event, w32_reset_event, w32_close_handle,
17283           w32_resume_thread): added. fix to use these functions instead calling
17284           win32api directly.
17286         * thread_win32.ci (w32_create_thread): create suspend thread
17287           (caller must call w32_resume_thread()).
17289 Fri Feb  9 11:03:40 2007  Koichi Sasada  <ko1@atdot.net>
17291         * test/ruby/test_readpartial.rb: tests are working on mswin32/cygwin.
17293 Fri Feb  9 05:08:17 2007  Koichi Sasada  <ko1@atdot.net>
17295         * thread.c, thread_pthread.ci, thread_win32.ci (thread_start_func_1):
17296           move cleanup function to thread_start_func_2().
17298         * thread.c, thread_pthread.ci, thread_win32.ci:
17299           add more destruct functions.
17300           (native_thread_destroy() and native_mutex_destroy())
17302         * thread_pthread.ci, thread_pthread.h: make native_mutex_* functions
17303           (check error, etc), it's not macro any more.
17305         * thread_win32.ci (thread_start_func_1): store some values before
17306           running thread (to release these after running thread).
17308         * thread_win32.ci (native_thread_create): fix spaces.
17310 Thu Feb  8 22:44:04 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17312         * ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
17313           ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
17314           1st argument is empty array, and when 2nd argument is
17315           VT_ARRAY|VT_BYREF.
17317         * test/win32ole/test_win32ole_variant.rb: ditto.
17319 Thu Feb  8 22:39:09 2007  Koichi Sasada  <ko1@atdot.net>
17321         * yarvtest/yarvtest.rb: check target command names.
17323 Thu Feb  8 22:31:45 2007  Koichi Sasada  <ko1@atdot.net>
17325         * test/ruby/test_clone.rb: fix to current spec
17326           (Module should not be occur many times in ancestors).
17328 Thu Feb  8 22:26:14 2007  Koichi Sasada  <ko1@atdot.net>
17330         * test/ruby/test_string.rb: ("foo" == :foo) and ("foo" === :foo)
17331           should be false.
17333         * ChangeLog: fix last messages.
17335 Thu Feb  8 22:24:06 2007  Koichi Sasada  <ko1@atdot.net>
17337         * test/ruby/test_module.rb: fix to use Symbol instead of String.
17339         * test/ruby/test_module.rb: remove space before argument parentheses.
17341 Thu Feb  8 22:02:14 2007  Koichi Sasada  <ko1@atdot.net>
17343         * test/ruby/marshaltestlib.rb: eval(sym) -> eval(sym.to_s)
17345 Thu Feb  8 21:35:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17347         * test/win32ole/test_propertyputref.rb (setup): fix typo.
17349         * test/win32ole/test_win32ole_event.rb: should not use
17350           InternetExplorer.gohome to test.
17352 Thu Feb  8 21:02:07 2007  Koichi Sasada  <ko1@atdot.net>
17354         * thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
17356         * thread.c (rb_thread_run_parallel): rename to
17357           rb_thread_blocking_region().
17359 Thu Feb  8 15:48:44 2007  Koichi Sasada  <ko1@atdot.net>
17361         * yarvcore.h, thread.c: fix to use pthread on cygwin.
17363         * yarvcore.h, thread.c: move GVL_UNLOCK_BEGIN() and GVL_UNLOCK_END()
17364           from yarvcore.h to thread.c.
17366         * thread.c: change GVL_UNLOCK_RANGE() arguments
17367           (adding ubf as 2nd argument).
17369         * thread.c: fix to use polling in select on cygwin and mswin32.
17371         * thread.c, thread_pthread.ci, thread_win32.ci, yarvcore.h:
17372           rename:
17373           * rb_thread_t#interrupt_function -> unblock_function
17374           * rb_interrupt_function_t -> rb_unblock_function
17375           * some interrupt function name -> ubf_*
17376           * yarv_* -> *
17378 Thu Feb  8 16:08:02 2007  Koichi Sasada  <ko1@atdot.net>
17380         * common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
17382         * common.mk ($(INSNS) rule): remove $(PROGRAM) first.
17384 Thu Feb  8 15:43:05 2007  Koichi Sasada  <ko1@atdot.net>
17386         * process.c: fix to use rb_status_line_set/get/clear().
17388         * eval_intern.h: fix line break.
17390 Thu Feb  8 15:00:14 2007  Koichi Sasada  <ko1@atdot.net>
17392         * blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
17393           eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
17394           thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
17395           vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
17396           fix typo (rb_thead_t -> rb_thread_t).
17398         * eval_intern.h: remove unused definitions.
17400         * common.mk: fix around vm_opts.h path
17401           and remove harmful argument passed to insns2vm.rb.
17403 Thu Feb  8 03:11:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17405         * lib/cgi.rb (CGI::unescapeHTML): invalid decoding for single
17406           unescaped ampersand.  a patch from Tietew
17407           <tietew+ruby-dev at tietew.net> in [ruby-dev:30292].
17408           fixed: [ruby-dev:30289]
17410 Wed Feb  7 23:25:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17412         * eval.c (specific_eval): suppress warning.
17414         * thread_win32.h: undefine _WIN32 on cygwin.  [ruby-dev:30303]
17416 Wed Feb  7 22:41:34 2007  Koichi Sasada  <ko1@atdot.net>
17418         * eval_intern.h: remove UNSUPPORTED() macro.
17420         * thread.c: fix to define Continuation methods
17421           (they only do rb_notimplement()).
17423 Wed Feb  7 22:33:58 2007  Koichi Sasada  <ko1@atdot.net>
17425         * eval_intern.h, yarvcore.h: remove unused macro definition.
17427 Wed Feb  7 22:30:28 2007  Koichi Sasada  <ko1@atdot.net>
17429         * eval.c: fixed to use ANSI function style.
17431 Wed Feb  7 09:35:32 2007  Koichi Sasada  <ko1@atdot.net>
17433         * this commit is a result of refactoring. only renaming functions,
17434           moving definitions place, add/remove prototypes, deleting
17435           unused variables and removing yarv.h.
17436           This commit doesn't change any behavior of ruby/vm.
17438         * yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
17440         * error.c, eval_intern.h: include yarvcore.h instead yarv.h
17442         * rename some functions:
17443           * debug.[ch]: debug_*() -> ruby_debug_*()
17444           * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
17445           * iseq.c: node_name() -> ruby_node_name()
17446           * vm.c: yarv_check_redefinition_opt_method() ->
17447                   rb_vm_check_redefinition_opt_method()
17449         * some refactoring with checking -Wall.
17451         * array.c: remove rb_ary_ptr() (unused) and remove unused
17452           local variables.
17454         * object.c: add a prototype of rb_mod_module_exec().
17456         * eval_intern.h (ruby_cref): set it inline.
17458         * eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
17460         * parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
17462         * process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
17464         * thread.c: remove raw_gets() function (unused) and fix some format
17465           mismatch (format mismatches have remained yet. this is todo).
17467         * thread.c (rb_thread_wait_fd_rw): fix typo on label name.
17469         * thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
17471         * vm.c (rb_svar, rb_backref_get, rb_backref_get,
17472           rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
17474         * vm.c (yarv_init_redefined_flag): add a prototype and rename
17475           yarv_opt_method_table to vm_opt_method_table.
17477         * vm.c (rb_thread_eval): moved from yarvcore.c.
17479         * yarvcore.c: remove unused global variables and fix to use nsdr().
17481 Wed Feb  7 03:39:32 2007  Koichi Sasada  <ko1@atdot.net>
17483         * blockinlining.c, compile.c, compile.h, error.c, eval.c,
17484           eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
17485           eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
17486           process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
17487           vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
17488           yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
17489           * yarv_*_t -> rb_*_t
17490           * yarv_*_struct -> rb_*_struct
17491           * yarv_tag -> rb_vm_tag
17492           * YARV_* -> RUBY_VM_*
17494         * proc.c, vm.c: move functions about env object creation
17495           from proc.c to vm.c.
17497         * proc.c, yarvcore.c: fix rb_cVM initialization place.
17499         * inits.c: change Init_ISeq() order (after Init_VM).
17501         * ruby.h, proc.c: change declaration place of rb_cEnv
17502           from proc.c to ruby.c.
17504 Tue Feb  6 22:06:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
17506         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c}:
17507           imported nkf 2007-01-28.
17508           * Fixed: can't decode MIME encode JIS string.
17509           * Fixed: Fullwidth-halfwidth conversion.
17510           * Support DoCoMo's and Softbank's EMOJI
17511           * Support CP932, CP5022x, eucJP-ms UDC
17512           * Support UTF-32 encoding
17513           * Support beyond BMP
17514           [ruby-dev:29700] [ruby-dev:29922] [ruby-dev:30144]
17516 Tue Feb  6 20:36:19 2007  Kouhei Sutou  <kou@cozmixng.org>
17518         * lib/rss/rss.rb, lib/rss/parser.rb: followed current Ruby
17519           specification. [ruby-dev:30274]
17521 Tue Feb  6 20:29:44 2007  Kouhei Sutou  <kou@cozmixng.org>
17523         * lib/rss/rss.rb, lib/rss/parser.rb: removed needless code for
17524           backward compatibility.
17526 Tue Feb  6 18:43:17 2007  Shugo Maeda  <shugo@ruby-lang.org>
17528         * lib/net/ftp.rb: moved fixes for EPIPE to the correct
17529           place. [ruby-core:10204]
17531 Tue Feb  6 16:38:08 2007  Koichi Sasada  <ko1@atdot.net>
17533         * vm_opts.h: set properties:
17534           svn:keywords:  Author Date Id Revision
17535           svn:eol-style: native
17537 Tue Feb  6 15:55:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17539         * variable.c (ivar_i): need to support class local instance
17540           variables.
17542 Tue Feb  6 15:44:11 2007  Koichi Sasada  <ko1@atdot.net>
17544         * compile.c (iseq_compile_each): fix setting is_local flag.
17546         * yarvtest/test_class.rb: add a test for class local instance variable.
17548 Tue Feb  6 14:15:34 2007  Koichi Sasada  <ko1@atdot.net>
17550         * compile.c, insns.def: remove (get|set)instancevariable2 and add a
17551           operand is_local to (get|set)instancevariable.
17553         * yarvtest/test_class.rb: add a test for class local instance variable.
17555         * parse.y (rb_decompose_ivar2): remove unused variable oid.
17557         * tool/insns2vm.rb: remove needless require.
17559 Tue Feb  6 11:18:41 2007  Shugo Maeda  <shugo@ruby-lang.org>
17561         * lib/net/ftp.rb: check the control connection on EPIPE.
17562           Thanks, Simon Williams. [ruby-core:9547]
17564 Tue Feb  6 11:03:27 2007  Koichi Sasada  <ko1@atdot.net>
17566         * complement last commit.
17568         * common.mk (*.inc): use VPATH.
17570         * vm_opts.h: renamed from vm_opts.h.base.
17572 Tue Feb  6 10:02:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17574         * tool/insns2vm.rb: use vm_opts.h in VPATH.
17576 Tue Feb  6 03:47:58 2007  Koichi Sasada  <ko1@atdot.net>
17578         * proc.c: support Binding#eval.
17580         * yarvtest/test_eval.rb: add a test for above change.
17582 Tue Feb  6 03:13:33 2007  Koichi Sasada  <ko1@atdot.net>
17584         * proc.c: refactoring (remove K&R style, move Binding stuffs from
17585           Init_Proc() to Init_Binding()).
17587 Tue Feb  6 01:07:14 2007  Koichi Sasada  <ko1@atdot.net>
17589         * intern.h: prepare rb_last_status_get() and rb_last_status_set().
17590           Use these functions instead of rb_last_status ([ruby-dev:30264]).
17592         * process.c: define above functions.
17594         * ext/pty/pty.c: use above functions.
17596         * io.c (pipe_finalize): ditto.
17598         * process.c: ditto.
17600 Mon Feb  5 21:26:56 2007  Koichi Sasada  <ko1@atdot.net>
17602         * ruby.h: add a prototype of rb_id2str().
17604 Mon Feb  5 21:06:50 2007  Koichi Sasada  <ko1@atdot.net>
17606         * eval_thread.c, common.mk: remove eval_thread.c.
17608         * yarvcore.c: rename cYarvThread to rb_cThread.
17610         * gc.c: remove YARV_* prefix.
17612         * gc.h: add an include guard and prototype of rb_gc_set_stack_end().
17614         * inits.c: fix to ANSI prototype style and reorder Init_*().
17616         * io.c (pipe_finalize): TODO: comment out last_status.
17618         * process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
17619           rb_last_status and make last_status_get() to access $?.
17621         * yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
17623         * ruby.h: add declarations of rb_cISeq and rb_cVM.
17625         * thread.c: move eval_thread.c codes to thread.c and remove yarv_*
17626           function prefix.
17628         * thread.c (thread_start_func_2): use yarv_thread_t#first_func if
17629           it is not null.
17631         * vm.c: fix copyright year.
17633         * yarvcore.c (Init_vm): rename to Init_VM().
17635 Mon Feb  5 04:09:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17637         * eval.c (rb_frame_callee): check if prev_cfp can be accessible.
17638           a patch from Yoshinori Sano <yoshinori.sano at gmail.com> in
17639           [ruby-dev:30252].  solves [ruby-dev:30200] and [ruby-core:9856].
17641 Sun Feb  4 20:34:41 2007  Kouhei Sutou  <kou@cozmixng.org>
17643         * test/rss/rss-assertions.rb: removed needless code for backward
17644           compatibility.
17646 Sun Feb  4 02:22:59 2007  Akinori MUSHA  <knu@iDaemons.org>
17648         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
17649           print.
17651 Sat Feb  3 23:51:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17653         * parse.y (rb_compose_ivar2): function to create a new ivar2
17654           symbol from a symbol and a class.  back-ported from matzruby.
17656         * parse.y (rb_decompose_ivar2): reverse function of
17657           rb_compose_ivar2().
17659         * marshal.c (w_symbol): support class local instance variables.
17661         * marshal.c (r_object0): ditto.
17663         * compile.c (defined_expr): ditto.
17665         * compile.c (iseq_compile_each): ditto.
17667         * insns.def: add two new instructions: getinstancevariable2 and
17668           setinstancevariable2.
17670 Sat Feb  3 23:21:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17672         * insns.def (setclassvariable): remove unnecessary operand.
17674         * compile.c (iseq_compile_each): ditto.
17676         * common.mk (insns_info.inc): add dependency for insns_info.inc.
17678 Sat Feb  3 14:32:58 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17680         * ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
17681           fix the bug of WIN32OLE_VARIANT.new when variant type is
17682           VT_ARRAY.
17684         * ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.
17686         * test/win32ole/test_win32ole.rb: add some test.
17688         * test/win32ole/test_win32ole_variant.rb: ditto.
17690 Sat Feb  3 03:35:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17692         * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
17694         * common.mk (runruby, benchmark, benchmark-each, tbench): use
17695           PROGRAM for the file to be built.
17697         * proc.c (yarv_proc_alloc): needs return.
17699         * call_cfunc.ci, compile.c, compile.h, debug.h, eval.c,
17700           eval_error.h, eval_jump.h, eval_load.c, eval_thread.c, gc.c,
17701           insnhelper.h, insns.def, iseq.c, main.c, numeric.c, parse.y,
17702           range.c, ruby.h, signal.c, thread.c, thread_win32.ci, vm.c,
17703           vm.h, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
17704           fixed indents and non-C90 comments.
17706         * regenc.h: revert to before YARV.
17708         * lib/mkmf.rb (create_makefile): make object files depend on
17709           extconf.h even if depend file exists.
17711 Fri Feb  2 23:39:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17713         * common.mk (bin): add more dependency.  a patch from Tadashi
17714           Saito <shiba at mail2.accsnet.ne.jp>.  [ruby-dev:30245]
17716 Fri Feb  2 18:44:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17718         * insns.def (setclassvariable): remove warn argument.
17720 Fri Feb  2 18:36:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17722         * common.mk (compile.$(OBJEXT)): add config.h to vm.c and
17723           compile.c.
17725 Fri Feb  2 18:27:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17727         * eval.c: remove duplicated global variables rb_cProc and
17728           rb_cBinding.  [ruby-dev:30242]
17730 Fri Feb  2 00:13:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17732         * ruby.h (SYMBOL_P): make Symbol immediate again for performance.
17734         * string.c: redesign symbol methods.
17736 Thu Feb  1 23:25:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17738         * parse.y (rb_id2str): store Strings for operator symbols.
17739           [ruby-dev:30235]
17741 Thu Feb  1 21:04:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17743         * parse.y (assignable_gen): no need to generate NODE_CVDECL.
17745         * compile.c (iseq_compile_each): no NODE_CVDECL.
17747 Thu Feb  1 20:53:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17749         * vm.c (eval_get_cvar_base): destination for class variable access
17750           is now strictly innermost surrounding class or module.  warned
17751           if accessed from toplevel.
17753         * variable.c (rb_cvar_get): new class variable look-up scheme:
17754           1) look up in the class.  2) if the class is singleton attached
17755           to a class (i.e. metaclass) then start look up in the attached
17756           class and its ancestors. 3) otherwise, look-up in ancestors of
17757           the class.
17759         * eval.c (cvar_cbase): destination for class variable access is
17760           the class/module that holds the method, or cbase outside of
17761           methods.
17763 Thu Feb  1 20:31:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17765         * variable.c (rb_cvar_set): remove warn argument.
17767 Wed Jan 31 14:52:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17769         * test/ruby/test_iterator.rb (TestIterator::test_block_given_within_iterator):
17770           add new test.  [ruby-core:10125]
17772 Tue Jan 30 17:01:21 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17774         * string.c (rb_str_sub_bang): calling rb_str_modify() should be just
17775           before actually modifying the string.
17776           fixed: [ruby-dev:30211] (originally reported by zunda)
17778 Tue Jan 30 13:24:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17780         * numeric.c (int_pred): add Integer#pred corresponding
17781           Integer#succ.  [RCR#5]
17783 Tue Jan 30 12:05:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17785         * mkconfig.rb: autoconf 2.61 support.  [ruby-core:10016]
17787 Mon Jan 29 23:52:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17789         * tool/compile.rb: replace YARVCore by VM class.
17791 Mon Jan 29 17:52:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17793         * lib/date/format.rb (Date::Format::Bag::method_missing): add
17794           prefix to avoid making t class-local instance variable.
17796 Mon Jan 29 21:32:37 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17798         * ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
17799           WIN32OLE_VARIANT#vartype.
17801         * test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
17802           WIN32OLE.locale.
17804         * test/win32ole/test_win32ole_variant.rb: add test for
17805           WIN32OLE_VARIANT#vartype.
17807 Mon Jan 29 14:14:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17809         * tool/parse.rb: replace YARVCore by VM class.
17810           http://d.hatena.ne.jp/ysano2005/20070128
17812 Sun Jan 28 08:41:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17814         * ext/win32ole/win32ole.c: refactoring.
17816 Sat Jan 27 18:36:33 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17818         * ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
17819           WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
17820           when variant type is VT_ARRAY.
17822         * test/win32ole/test_win32ole_variant.rb: add some test.
17824 Fri Jan 26 23:55:56 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17826         * ext/win32ole/win32ole.c: bug fix of WIN32OLE_VARIANT when variant
17827           type is VT_BYREF|VT_VARIANT.
17829         * test/win32ole/test_win32ole_variant_with_ie.rb: ditto.
17831 Fri Jan 26 12:03:39 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
17833         * ext/tk/lib/tk.rb (TkConfigMethod#__confinfo_cmd,
17834           __conv_keyonly_optkeys): make them private [ruby-dev:30074].
17836         * ext/tk/lib/tk/txtwin_abst.rb: fix typo [ruby-dev:30073].
17838         * ext/tk/lib/tk/canvas.rb (TkCanvas#scan_dragto): lack of an argument.
17840         * ext/tk/lib/tk/canvas.rb: clarify the including module name
17841           [ruby-dev:30080].
17843         * ext/tk/lib/tk/scrollable.rb: change primary name of modules
17844           [ruby-dev:30080].
17846 Fri Jan 26 07:48:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17848         * enumerator.c (enumerator_init_copy): need to copy internal
17849           structure on clone and dup.  [ruby-dev:30192]
17851 Wed Jan 24 20:34:51 2007  Kouhei Sutou  <kou@cozmixng.org>
17853         * test/ruby/test_iterator.rb: removed a needless workaround.
17855 Wed Jan 24 18:05:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17857         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): fix
17858           regexp font-lock bug.  [ruby-talk:235758]
17860 Tue Jan 23 18:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17862         * lib/cgi.rb (CGI::QueryExtension::read_multipart): use == instead
17863           of ===.  [ruby-dev:30176]
17865 Tue Jan 23 15:39:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17867         * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
17868           setup.mak}: add --with-baseruby configure option.
17870 Mon Jan 22 14:57:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17872         * ext/socket/socket.c: fix errors in socket sample code.
17873           [ruby-core:09992]
17875 Sat Jan 20 21:05:18 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17877         * ext/win32ole/win32ole.c (fole_s_set_code_page): WIN32OLE.codepage=
17878           accepts installed codepage.
17880         * test/win32ole/test_win32ole.rb (test_s_codepage_changed): ditto.
17882 Sat Jan 20 11:18:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17884         * ext/win32ole/win32ole.c (ole_invoke, ole_invoke2, ole_propertyput):
17885           modify WIN32OLERuntimeError message.
17887         * test/win32ole/test_win32ole.rb: ditto.
17889 Sat Jan 20 06:45:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17891         * eval_proc.c (method_receiver): add new method to get the bound
17892           receiver of the method object.  [ruby-talk:234949]
17894         * eval_proc.c (method_name): new method to get the name of a
17895           method.
17897         * eval_proc.c (method_owner): a new method to get the class or
17898           module that defines the method.
17900 Fri Jan 19 17:12:23 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17902         * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_VARIANT::Empty,
17903           WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
17905         * test/win32ole/test_win32ole_variant.rb: ditto.
17907         * test/win32ole/test_nil2vtempty.rb(test_openSchema): ditto.
17909 Fri Jan 19 06:53:38 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17911         * ext/win32ole/win32ole.c (olevariant_free): fix memory leak.
17913         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
17914           WIN32OLE_VARIANT.new accepts nil as first argument for some VARIANT
17915           TYPE.
17917         * test/win32ole/test_win32ole_variant.rb: ditto.
17919 Wed Jan 17 17:31:28 2007  Koichi Sasada  <ko1@atdot.net>
17921         * some refactoring around yarvcore and proc.
17923         * eval_proc.c: renamed to proc.c.
17925         * common.mk: ditto.
17927         * yarvcore.h, yarvcore.c: rename or remove some global variables
17928           removed: mYarvCore, mYarvInsns
17929           renamed: cYarvISeq -> rb_cISeq,
17930                    cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
17931           ::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
17932           And change/remove some functions which added with YARV.
17934         * compile.c: ditto.
17936         * eval.c: ditto.
17938         * iseq.c: ditto.
17940         * vm.c: ditto.
17942         * inits.c: rename Init_yarvcore to Init_vm.
17944         * yarvcore.c, proc.c: move some functions and initialization
17945           from yarvcore.c to proc.c.
17947         * intern.h, proc.c: add global function rb_binding_new(void).
17949 Tue Jan 16 17:49:29 2007  Koichi Sasada  <ko1@atdot.net>
17951         * vm.c (eval_search_super_klass): rename to search_super_klass() and
17952           use it by th_call_super().
17954         * insns.def: ditto.
17956 Tue Jan 16 17:48:11 2007  Koichi Sasada  <ko1@atdot.net>
17958         * common.mk: fix ruby script path.
17960 Tue Jan 16 17:39:44 2007  Koichi Sasada  <ko1@atdot.net>
17962         * vm.c (invoke_block): fix to specify self.
17964 Tue Jan 16 12:12:27 2007  Koichi Sasada  <ko1@atdot.net>
17966         * env.h: removed
17968 Tue Jan 16 12:00:06 2007  Koichi Sasada  <ko1@atdot.net>
17970         * eval_proc.c (rb_proc_new): added.
17972         * string.c (sym_to_proc): supported.
17974         * vm.c (invoke_block, th_invoke_yield, th_invoke_proc): fix to support
17975           rb_proc_new.
17977         * yarvcore.c: add a test code.
17979 Sat Jan 13 23:24:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17981         * ext/win32ole/win32ole.c (ole_free, ole_type_free,
17982           olemethod_free, olevariable_free, oleparam_free,
17983           ole_event_free): fix memory leak.  [ruby-core:09846]
17985 Wed Jan 10 00:10:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17987         * array.c (rb_ary_replace): use ptr and len of orig instead of
17988           shared.  fixed: [ruby-dev:30116]
17990 Tue Jan  9 17:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17992         * file.c (rb_find_file): should not call fpath_check() with NULL.
17993           fixed: [ruby-core:09867]
17995 Tue Jan  9 12:29:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17997         * ext/etc/etc.c (etc_getpwuid, etc_getgrgid): fix to correctly
17998           convert uid/gid from VALUE.
18000         * ext/etc/etc.c (etc_getpwuid): ditto.
18002 Tue Jan  9 03:54:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18004         * string.c (rb_str_upto): String#upto from empty string makes
18005           infinite loop.  [ruby-core:09864]
18007         * string.c (rb_str_upto): use RSTRING_LEN().
18009 Sun Jan  7 18:36:05 2007  Koichi Sasada  <ko1@atdot.net>
18011         * thread.c (rb_thread_stop_timer_thread(), rb_thread_reset_timer_thread(),
18012           rb_thread_start_timer_thread()): added.
18014         * thread_pthread.ci: add a native_thread_join() and move
18015           rb_thread_reset_timer_thread() definition to thread.c.
18017         * thread_win32.ci: ditto
18019         * process.c: fix before_exec(), after_exec() to stop timer thread
18020           (and restart timer thread if exec failed).  and fix to reset
18021           timer thread information when forked child process starts
18022           (to fix [ruby-core:09822]).
18024 Sun Jan  7 18:28:17 2007  Koichi Sasada  <ko1@atdot.net>
18026         * common.mk: add a "compare" rule and fix MATZRUBY variable
18028 Sun Jan  7 17:47:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18030         * test/win32ole/test_win32ole.rb: add test for WIN32OLE#[],
18031           WIN32OLE#[]=.
18033         * ext/win32ole/win32ole.c: update comment for rdoc of
18034           WIN32OLE#[] and WIN32OLE#[]=.
18036 Sun Jan  7 12:13:26 2007  Eric Hodel  <drbrain@segment7.net>
18038         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_class_comment):
18039           Look for class and module comments above rb_define_class and
18040           rb_define_module.  Patch by Daniel Berger <djberg96 at gmail.com>
18042 Sun Jan  7 10:32:12 2007  Eric Hodel  <drbrain@segment7.net>
18044         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
18045           Properly handle escaping of : in comments.
18046         * test/rdoc/parsers/test_parse_c.rb:
18047           Test RDoc::C_Parser#do_classes and Rdoc::C_Parser#find_class_comment.
18049 Sun Jan  7 09:31:18 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18051         * lib/date/format.rb: updated based on date2 4.0.1.
18053 Sat Jan  6 18:46:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18055         * io.c (rb_io_getline_fast, rb_io_getline): increase lineno
18056           when met the delimiter or EOF.  fixed: [ruby-dev:30081]
18058         * io.c (prepare_getline_args, rb_io_getline_1): split
18059           preparation of arguments and reading.  [ruby-dev:30085]
18061 Sat Jan  6 13:48:36 2007  Koichi Sasada  <ko1@atdot.net>
18063         * insns.def (send): fix to optimize send() with Symbol.
18065         * yarvtest/test_method.rb: add another test.
18067 Sat Jan  6 13:43:55 2007  Koichi Sasada  <ko1@atdot.net>
18069         * common.mk: add PHONY dependency to some rules
18071 Sat Jan  6 11:50:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18073         * io.c (argf_read): fix wrong replacement.  [ruby-dev:30070]
18075 Sat Jan  6 09:10:52 2007  Koichi Sasada  <ko1@atdot.net>
18077         * insns.def: support direct method dispatch with "send" or "funcall".
18078           This means that "obj.send :m" skips "BasicObject#send" invocation
18079           (method frame creation, etc) and "obj.m" invokes directly.
18080           If you make backtrace, there are no entries of "send" method.
18082         * compile.c (iseq_specialized_instruction): fix to support above
18084         * eval.c: ditto (remove "static" from rb_f_send and rb_f_funcall
18086         * yarvcore.c: ditto (add a external IDs for compiler)
18088         * yarvcore.h: ditto (add a VM_CALL_SEND_BIT macro)
18090         * yarvtest/test_method.rb: add tests for above changes
18092         * eval.c: remove unused "Kernel#send" declaration
18094 Sat Jan  6 08:29:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18096         * ext/win32ole/win32ole.c (Init_win32ole): add
18097           WIN32OLE::VARIANT::VT_EMPTY, WIN32OLE::VARIANT::VT_NULL
18099         * test/win32ole/test_win32ole_variant_m.rb (test_variant): ditto.
18101 Sat Jan  6 03:49:22 2007  Koichi Sasada  <ko1@atdot.net>
18103         * benchmark/run.rb: change option format
18105         * common.mk: ditto
18107 Fri Jan  5 22:21:08 2007  Koichi Sasada  <ko1@atdot.net>
18109         * benchmark/bm_app_pentomino.rb: use Array#dup instead of
18110           Array#clone
18112         * benchmark/bmx_temp.rb: removed
18114         * benchmark/run.rb: use run.rb instead of run_rite.rb
18116         * common.mk: ditto
18118         * benchmark/run_rite.rb: removed
18120         * common.mk: use $(srcdir)/test.rb to run a test program
18121           with "make run"
18123         * benchmark/bmx_temp.rb: removed and
18124           set svn:ignore (bmx_*.rb) to benchmark/
18126         * test.rb: set svn:ignore
18128 Fri Jan  5 21:03:08 2007  Koichi Sasada  <ko1@atdot.net>
18130         * yarvtest/yarvtest.rb: fix to compare results
18132 Fri Jan  5 20:52:56 2007  Koichi Sasada  <ko1@atdot.net>
18134         * compile.c, compile.h: add ADD_CALL_RECEIVER() macro.
18136         * insns.def (send): use GET_SELF() direct if FCALL.
18138         * eval.c (rb_f_send): check method dispatch type to permit
18139           invoking private method when dispatch type is FCALL/VCALL
18141         * insns.def (opt_ltlt): remove useless statement.
18143         * vm.h: remove unused macros.
18145 Fri Jan  5 20:50:31 2007  Koichi Sasada  <ko1@atdot.net>
18147         * benchmark/run_rite.rb: fix to use readlines instead of
18148           read(...).lines (because 1.8 doesn't have String#lines).
18150 Fri Jan  5 20:28:19 2007  Koichi Sasada  <ko1@atdot.net>
18152         * thread_win32.ci (rb_thread_reset_timer_thread):
18153           added ([ruby-dev:30086]).
18155 Fri Jan  5 20:20:36 2007  Koichi Sasada  <ko1@atdot.net>
18157         * common.mk: add .SUFFIXES rule
18159 Fri Jan  5 15:58:15 2007  Koichi Sasada  <ko1@atdot.net>
18161         * eval_method.h (rb_alias): fix to check search result
18163 Fri Jan  5 13:59:53 2007  Koichi Sasada  <ko1@atdot.net>
18165         * eval_method.h (rb_add_method): fix to check old_node
18167 Fri Jan  5 12:03:07 2007  Koichi Sasada  <ko1@atdot.net>
18169         * compile.c (iseq_compile_each, set_block_local_tbl):
18170           support NODE_LAMBDA (partly).
18172         * sample/test.rb: restore test of NODE_LAMBDA
18174         * test/ruby/test_lambda.rb: ditto
18176 Fri Jan  5 12:31:23 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18178         * thread_pthread.ci (native_sleep): fix tv_nsec overflow.
18180 Thu Jan  4 20:01:29 2007  Koichi Sasada  <ko1@atdot.net>
18182         * common.mk: rename yarv-test-[all/each] to compare-test[/-each].
18183           purpose of "compare-test" rule is to compare ruby (trunk) and
18184           matzruby (branches/matzruby) binary in miniruby level.  MATZRUBY
18185           parameter means an path to miniruby of matzruby binary.  to do this
18186           comparison test, you should build matzruby branch.
18188         * yarvtest/yarvtest.rb: fix to use command line option as
18189           command names to be compared.
18191         * yarvtest/runner.rb: remove a debug output.
18193 Thu Jan  4 19:12:27 2007  Koichi Sasada  <ko1@atdot.net>
18195         * common.mk: fix to use test.rb script in build directory.
18196           ($(srcdir)/test.rb -> test.rb)
18198 Thu Jan  4 17:28:05 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18200         * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler#initialize):
18201           Arrays could not be modified in its each block. [ruby-dev:30063]
18203 Thu Jan  4 16:57:14 2007  Koichi Sasada  <ko1@atdot.net>
18205         * yarv_version.h: removed.
18207         * common.mk: remove yarv_version.h from rules
18209         * yarvcore.h (Init_yarvcore): remove useless constants
18211 Thu Jan  4 17:00:06 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18213         * ext/openssl/ossl_asn1.c (Init_ossl_asn1):
18214           OpenSSL::ASN1::ASN1Data#value,#tag,#tag_class and
18215           OpenSSL::ASN1::BitString#unused_bits should be public.
18217 Thu Jan  4 13:45:10 2007  Koichi Sasada  <ko1@atdot.net>
18219         * thread_pthread.ci: fix last changes around PTHREAD_STACK_MIN.
18221 Thu Jan  4 13:42:47 2007  Koichi Sasada  <ko1@atdot.net>
18223         * common.mk: restore changes.
18225 Thu Jan  4 10:33:54 2007  Koichi Sasada  <ko1@atdot.net>
18227         * thread_pthread.ci: fix to skip using PTHREAD_STACK_MIN.
18228           [ruby-dev:30063]
18230 Thu Jan  4 10:30:11 2007  Koichi Sasada  <ko1@atdot.net>
18232         * benchmark/run_rite.rb (bm): fix to use lines.
18234 Wed Jan  3 18:49:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18236         * io.c (rb_io_getline): lineno update condition was wrong.
18237           [ruby-dev:30065]
18239         * io.c (rb_io_getline_fast): ditto.
18241 Wed Jan  3 11:36:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18243         * io.c (ruby_dup): start GC on ENOMEM as well.
18245 Tue Jan  2 10:29:54 2007  Eric Hodel  <drbrain@segment7.net>
18247         * ext/zlib/zlib.c: fix to compile on YARV
18248           ruby_errinfo -> rb_errinfo()
18250 Mon Jan  1 08:07:06 2007  Koichi Sasada  <ko1@atdot.net>
18252         * ext/tk/tcltklib.c: fix to compile on YARV
18253           ruby_errinfo -> rb_errinfo(),
18254           ruby_safe_level -> rb_safe_level().
18256 Mon Jan  1 07:57:17 2007  Koichi Sasada  <ko1@atdot.net>
18258         * test/drb/test_drbssl.rb: fix to skip drb tests.
18260 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
18262         * lib/rdoc/parsers/c_parser.rb: Make Rdoc accessible.  Update constant
18263           value information.
18265 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
18267         * ext/bigdecimal/bigdecimal.c: Update constant comments to provide
18268           values for RDoc.
18270 Mon Jan  1 06:05:55 2007  Eric Hodel  <drbrain@segment7.net>
18272         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
18273           Allow RDoc comment to give friendly value for rb_define_const.  Patch
18274           by Daniel Berger <djberg96 at gmail.com>, [ruby-patches-7499].
18275         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants): Fix
18276           whitespace handling in constant comments.
18278 Mon Jan  1 00:00:00 2007  Koichi Sasada  <ko1@atdot.net>
18280         * Merge YARV
18282 Sun Dec 31 16:22:48 2006  Eric Hodel  <drbrain@segment7.net>
18284         * array.c: Fix Array#reject.
18286 Sun Dec 31 00:46:25 2006  Tadayoshi Funaba  <tadf@dotrb.org>
18288         * lib/date2.rb: removed.
18290 Sun Dec 31 00:15:13 2006  Tadayoshi Funaba  <tadf@dotrb.org>
18292         * lib/date.rb, lib/date/format.rb: updated based on date2 4.0.
18294 Sat Dec 30 04:38:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18296         * enum.c (enum_each_with_index): reuse array for yield parameters.
18298         * enum.c (enum_min, enum_max): ditto.
18300 Sat Dec 30 04:25:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18302         * enum.c (enum_inject): reuse array for yield parameters.
18304 Sat Dec 30 02:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18306         * ext/stringio/stringio.c (strio_gets): accepts limit argument.
18308         * ext/stringio/stringio.c (strio_readline, strio_each,
18309           strio_readlines): ditto.
18311 Sat Dec 30 02:22:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18313         * ext/stringio/stringio.c (strio_getline): add limit capability.
18315         * io.c (rb_io_gets_m): accepts limit argument.  [ruby-talk:231563]
18317         * io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline):
18318           ditto.
18320         * io.c (appendline): add limit capability.
18322         * io.c (rb_io_getline_fast, rb_io_getline): ditto.
18324         * io.c (rb_io_getline): small refactoring for DRY.
18326         * io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring.
18328 Thu Dec 28 15:27:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18330         * lib/cgi.rb (CGI::Cookie::initialize): use Array() again.
18331           [ruby-core:09781]
18333 Wed Dec 27 20:52:32 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18335         * ext/win32ole/win32ole.c: remove WIN32OLE::PROPERTY class.
18337         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
18339 Wed Dec 27 10:04:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18341         * object.c (rb_Array): returns 1-element array if the argument
18342           does not have to_ary nor to_a.
18344 Tue Dec 26 21:02:14 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18346         * test/win32ole/test_folderitem2_invokeverb.rb: The argument
18347           of Shell.NameSpace should not be file path.
18349 Tue Dec 26 06:13:08 2006  Minero Aoki  <aamine@loveruby.net>
18351         * ext/bigdecimal/bigdecimal.c: remove useless method
18352           BigDecimal#!=. [ruby-dev:30050]
18354 Thu Dec 21 15:37:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18356         * string.c (rb_str_slice_bang): rdoc description bug fixed.
18357           [ruby-core:09754]
18359 Wed Dec 20 12:54:31 2006  Koichi Sasada  <ko1@atdot.net>
18361         * Convert CVS repository to Subversion repository.
18363 Mon Dec 18 08:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18365         * lib/cgi.rb (CGI::Cookie::initialize): Array(string) no longer
18366           works.  [ruby-core:09738]
18368 Fri Dec 15 00:19:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18370         * win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
18372         * lib/mkmf.rb (create_makefile): remove static library before update,
18373           to get rid of sludge of Borland tlib.exe.
18375 Thu Dec 14 18:29:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18377         * ext/readline/readline.c: NetBSD editline does not have
18378           rl_username_completion_function() and rl_completion_matches().
18379           a patch from Takahiro Kambe <taca at back-street.net>.
18380           [ruby-dev:30008]
18382 Thu Dec 14 18:20:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18384         * lib/irb/locale.rb (IRB::Locale::puts): typo fixed.  a patch from
18385           NAKAMURA Usaku <usa@ruby-lang.org>.  [ruby-dev:30012]
18387 Tue Dec 12 23:33:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18389         * lib/optparse.rb (Switch#parse_arg, Switch#conv_arg): splat failures.
18391 Mon Dec 11 11:51:10 2006  Akinori MUSHA  <knu@iDaemons.org>
18393         * ext/digest/sha2/lib/sha2.rb: Moved one level up from under
18394           the superfluous subdirectory digest/.
18396 Mon Dec 11 11:46:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18398         * variable.c (rb_define_const): typo fixed.
18400 Mon Dec 11 09:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18402         * string.c (rb_str_aset): index double decode problem.
18403           [ruby-core:09695]
18405 Sat Dec  9 21:39:24 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18407         * eval.c (ruby_cleanup): keep the exception till after END blocks.
18408           [ruby-core:09675]
18410 Sat Dec  9 11:22:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18412         * lib/irb/locale.rb (IRB::Locale::search_file): use File.exist?
18413           instead of File.exists?.  a patch from Yutaka Kanemoto
18414           <kinpoco at gmail.com> in [ruby-dev:30000].
18416 Fri Dec  8 18:11:18 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
18418         * lib/optparse.rb: cannot put :nodoc: before method definition.
18419           put after it.
18421 Fri Dec  8 17:00:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
18423         * bin/rdoc: use File.exist? instead of File.exists?.
18425 Thu Dec  7 23:50:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18427         * object.c (Init_Object): new method Dir.exist?(path).
18428           [ruby-core:09663]
18430         * file.c (Init_File): remove File.exists?; use File.exist?
18431           instead.
18433         * file.c: rename functions to test_* to rb_file_*_p.
18435 Thu Dec  7 09:29:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18437         * lib/weakref.rb (WeakRef::__setobj__): should support
18438           marshaling.  [ruby-talk:228508]
18440 Wed Dec  6 23:58:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18442         * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
18443           command does not run.  fixed: [ruby-dev:29994]
18445         * win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
18446           [ruby-core:09572]
18448 Tue Dec  5 19:01:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
18450         * configure.in (SITE_DIR): fixed to empty RUBY_SITE_LIB in config.h on
18451           NetBSD.  fixed: [ruby-dev:29358]
18453 Tue Dec  5 18:38:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18455         * lib/matrix.rb (Matrix::rank): use quo method to avoid integer
18456           division problem.  [ruby-core:09644]
18458         * lib/matrix.rb (Matrix::rank_e): ditto.
18460 Tue Dec  5 00:59:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18462         * misc/ruby-mode.el (ruby-parse-partial): need to parse "/=" as
18463           self assignment operator, not regex.  [ruby-talk:227324]
18465 Tue Dec  5 00:19:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18467         * intern.h, object.c, variable.c (rb_mod_constants): added an optional
18468           flag to search ancestors, which is defaulted to true, as well as
18469           const_defined? and const_get.  [ruby-dev:29989]
18471 Mon Dec  4 23:49:28 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18473         * instruby.rb (install_recursive): get rid of warning.
18475         * lib/optparse.rb (CompletingHash#match): get rid of splat failure.
18477 Mon Dec  4 19:16:39 2006  Akinori MUSHA  <knu@iDaemons.org>
18479         * ext/digest/lib/digest/hmac.rb: Do alias << update.
18481 Mon Dec  4 10:48:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18483         * ruby.h (OFFT2NUM): use LONG2NUM() if sizeof(long) equals to
18484           sizeof(off_t).
18486 Mon Dec  4 08:32:25 2006  Shugo Maeda  <shugo@ruby-lang.org>
18488         * lib/cgi.rb (CGI::QueryExtension::read_multipart): should quote
18489           boundary. JVN#84798830
18491 Sun Dec  3 16:16:53 2006  Akinori MUSHA  <knu@iDaemons.org>
18493         * ext/digest/lib/digest/hmac.rb: Fix problems with update
18494           timing. [Reported by: oss-ruby@technorama.net]
18496 Sat Dec  2 07:33:53 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18498         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):
18499           HTTPUtils::parse_header() takes a string.  [ruby-dev:29931]
18501         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header):
18502           String does no longer have each method.
18504         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data):
18505           ditto.
18507 Sat Dec  2 07:09:04 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18509         * ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
18510           subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]
18512 Fri Dec  1 16:31:53 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
18514         * ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
18515           [ruby-talk: 227408]
18517 Tue Nov 28 17:25:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18519         * array.c (ary_iter_check): should check modification (size
18520           change) during iteration.
18522         * array.c (rb_ary_initialize, rb_ary_shift, rb_ary_unshift,
18523           rb_ary_splice, rb_ary_reverse, rb_ary_sort, rb_ary_delete,
18524           rb_ary_delete_at, rb_ary_reject_bang, rb_ary_replace,
18525           rb_ary_clear, rb_ary_fill, rb_ary_uniq_bang, rb_ary_compact,
18526           rb_ary_shuffle): add iteration check.
18528 Mon Nov 27 09:00:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18530         * string.c (rb_str_ord): typo fixed.  reported from Kornelius
18531           Kalnbach <murphy@rubychan.de>.  [ruby-core:09621]
18533 Sun Nov 26 16:36:46 2006  URABE Shyouhei  <shyouhei@ruby-lang.org>
18535         * version.h: addition of RUBY_PATCHLEVEL.
18536         * version.c: ditto.
18538 Wed Nov 22 16:00:49 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
18540         * ext/tk/extconf.rb: support --with-X11/--without-X11 option.
18542         * ext/tk/README.tcltklib: add description about --with-X11-* option
18543           [ruby-talk:225166] and --with-X11/--without-X11 option.
18545         * ext/tk/tkutil/extconf.rb: able to be called manually
18546           [ruby-talk:225950].
18548 Sat Nov 18 23:39:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18550         * object.c (rb_obj_tap): a new method.  [ruby-talk:224013]
18552 Wed Nov 15 23:22:54 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18554         * file.c (test_grpowned, rb_stat_grpowned): should honor
18555           supplementary group IDs.  [ruby-core:09546]
18557 Tue Nov  7 18:35:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18559         * eval.c (formal_assign): need to pack rest arg information in
18560           argc.
18562 Tue Nov  7 18:05:01 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
18564         * ext/tk/lib/tk/itemconfig.rb: minor bug fix.
18566 Tue Nov  7 17:52:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18568         * class.c (rb_include_module): revert duplicate inclusion of
18569           modules.  [ruby-dev:29793]
18571 Tue Nov  7 17:18:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18573         * eval.c (method_missing): update old argument adjustment.
18575 Tue Nov  7 16:41:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18577         * eval.c (when_check): need to splat for NODE_ARGSCAT as well.
18578           [ruby-dev:29860]
18580 Mon Nov  6 22:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18582         * string.c (Init_String): remove duplicated definition of
18583           Symbol#to_s.
18585 Mon Nov  6 18:54:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18587         * eval.c (svalue_to_avalue): need to splat but no error.
18589         * eval.c: new macros - YIELD_CALL, YIELD_VALUES.
18591         * eval.c (rb_yield_values): specify YIELD_VALUES.
18593         * eval.c (rb_yield_0): use new macros.
18595         * eval.c (proc_invoke): slightly modified to separate YIELD_CALL
18596           and YIELD_VALUES from YIELD_ARY_ARGS.
18598         * object.c (Init_Object): add nil.to_splat => [].
18600 Mon Nov  6 15:41:55 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
18602         * ext/tk/lib/tk/itemconfig.rb: ext/tk/lib/tk/itemconfig.rb: bug
18603           fix on 'itemconfiginfo' method, and modify to make it easy to
18604           override 'itemconfiginfo' method.
18606         * ext/tk/lib/tkextlib/tile/treeview.rb: support Tile 0.7.8.
18608         * ext/tk/lib/tkextlib/version.rb: [new] add Tk::Tkextlib_RELEASE_DATE
18609           to get the information from scripts.
18611         * ext/tk/lib/tk.rb: load 'tkextlib/version.rb', and update RELEASE_DATE
18613         * ext/tk/lib/tkextlib/SUPPORT_STATUS: update.
18615         * ext/tk/sample/editable_listbox.rb: [new] the listbox with editable
18616           items. It's one of the example about usage of Place geometry manager.
18618         * ext/tk/sample/tktextio.rb: improve the functions of TkTextIO class.
18619           Those are required by 'irbtkw.rbw'.
18621         * ext/tk/sample/irbtkw.rbw: [new] IRB on Ruby/Tk. It doesn't need any
18622           real console. IRB works on a text widget without I/O blocking. That
18623           is, thread switching on IRB will work properly, even if on Windows.
18625 Mon Nov  6 00:42:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18627         * parse.y (arg_dup_check): vid may be nameless internal id.
18629 Sun Nov  5 19:52:19 2006  Tadayoshi Funaba  <tadf@dotrb.org>
18631         * lib/date.rb: updated based on date2 3.9.7.
18633 Sat Nov  4 13:09:31 2006  Shugo Maeda  <shugo@ruby-lang.org>
18635         * lib/net/imap.rb: accept NOMODSEQ. [ruby-core:9002]
18637 Fri Nov  3 00:16:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18639         * ext/socket/socket.c (ruby_getnameinfo__aix): AF_INET6 workaround
18640           for AIX.  a patch from Yutaka Kanemoto <kinpoco AT gmail.com>.
18641           [ruby-dev:29744]
18643 Thu Nov  2 14:19:44 2006  Akinori MUSHA  <knu@iDaemons.org>
18645         * lib/set.rb (Set#^): Fix XOR operation against a container that
18646           holds duplicate values. [ruby-core:9372]
18648 Thu Nov  2 10:00:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18650         * string.c: class Symbol is no longer subclass of String. also
18651           covers [ruby-core:09366]
18653 Thu Nov  2 08:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18655         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol should
18656           come earlier than String.
18658         * lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap):
18659           ditto.
18661         * lib/set.rb (TC_Set::test_s_new): strings are no longer
18662           Enumerable
18664         * lib/soap/property.rb (Property::load): ditto.
18666         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto.
18668         * lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto.
18670 Thu Nov  2 09:08:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18672         * array.c: revert lfree shift/unshift boost patch to avoid unknown
18673           memory error.
18675 Wed Nov  1 23:24:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18677         * ruby.h (struct RArray): revert embedding ptr in RVALUE.
18679         * array.c: ditto.
18681 Wed Nov  1 23:01:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18683         * string.c (hash): use Bob Jenkins' hash algorithm.
18685 Wed Nov  1 02:22:31 2006  Akinori MUSHA  <knu@iDaemons.org>
18687         * ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
18688           optimization.
18690         * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
18691           a digest instance with another of a different class.
18693 Wed Nov  1 01:05:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
18695         * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
18696           fixed: [ruby-list:42928]
18698 Tue Oct 31 17:03:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18700         * time.c (time_dup): duplicate the class of original time.
18701           [ruby-core:09357]
18703         * lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
18704           should respect subclasses.  [ruby-core:09357]
18706 Tue Oct 31 16:25:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18708         * array.c (ary_shared_first): should address offset after
18709           ary_shared_array().  [ruby-core:09358]
18711 Mon Oct 30 23:40:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18713         * Makefile.in (miniruby): add XLDFLAGS.
18715         * configure.in (aix): use -bE option for miniruby.  [ruby-dev:29698]
18717         * dir.c (glob_helper): get rid of possible memory leak.
18719         * win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
18720           rb_w32_get_environ): not to use GC before initialization.
18722 Mon Oct 30 19:28:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
18724         * bignum.c (rb_big2str0): use better approximation.
18726 Mon Oct 30 18:35:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18728         * bignum.c (rb_big2str0): wrong allocation length.  a patch from
18729           U.Nakamura <usa at garbagecollect.jp> [ruby-dev:29710]
18731 Mon Oct 30 12:34:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18733         * eval.c (rb_eval): fix commit miss.  [ruby-dev:29707]
18735 Mon Oct 30 11:15:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18737         * sprintf.c (rb_str_format): should preserve leading zero
18738           information for negative %b and %x.  [ruby-talk:221347]
18740 Sun Oct 29 19:51:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
18742         * regexec.c: invalid offset value was used in STATE_CHECK_BUFF_INIT().
18744 Sat Oct 28 20:13:18 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
18746         * oniguruma.h: Version 4.4.5
18748         * regint.h: ditto.
18750         * regerror.c: ditto.
18752         * regexec.c: ditto.
18754         * regcomp.c ditto.
18756         * regparse.c ditto.
18758 Sat Oct 28 07:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18760         * marshal.c (r_object0): missing break.  [ruby-core:09345]
18762 Fri Oct 27 17:30:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18764         * enumerator.c (enum_each_cons): move RETURN_ENUMERATOR() after
18765           argument check.
18767 Thu Oct 26 21:05:48 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
18769         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
18770           (fix http://bugs.debian.org/394336)
18772         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.
18774 Thu Oct 26 15:23:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18776         * enumerator.c: remove by_slice and by_cons.
18778 Thu Oct 26 15:12:12 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
18780         * ext/digest/digest.c (Init_digest): typo.
18782 Wed Oct 25 17:16:05 2006  Akinori MUSHA  <knu@iDaemons.org>
18784         * test/digest/test_digest_hmac.rb: added.
18786 Wed Oct 25 16:34:31 2006  Akinori MUSHA  <knu@iDaemons.org>
18788         * ext/digest/test.sh: make this script work again.
18790 Wed Oct 25 07:59:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
18792         * lib/date/format.rb: updated based on date2 3.9.6.
18793           [ruby-core:09323]
18795 Wed Oct 25 00:58:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18797         * win32/mkexports.rb, win32/resource.rb: use unique variable names.
18799 Tue Oct 24 19:18:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18801         * enumerator.c (enumerator_by_slice): new method added.
18803         * enumerator.c (enumerator_by_cons): ditto.
18805 Tue Oct 24 18:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18807         * enumerator.c (enum_each_slice, enum_each_cons): returns
18808           Enumerable::Enumerator if no block is given.  [ruby-dev:29246]
18810         * enumerator.c: remove methods: enum_with_index, enum_slice,
18811           enum_cons.  [ruby-dev:29246]
18813 Tue Oct 24 18:51:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18815         * enum.c (enum_zip): add RETURN_ENUMERATOR() to zip method.
18817 Mon Oct 23 04:30:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18819         * marshal.c (r_object0): use return value from proc given as the
18820           second argument to Marshal#load() to allow value replacement in
18821           the restoring data.
18823 Sun Oct 22 14:48:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18825         * signal.c (Init_signal): avoid duplicated installation of SIGCHLD
18826           handler.
18828 Sun Oct 22 16:47:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18830         * string.c (rb_str_substr): should be infected with only original
18831           string, but not the shared string.  fixed: [ruby-core:09152]
18833         * string.c (rb_str_new4): keep shared string untainted when original
18834           string is tainted.  fixed: [ruby-dev:29672]
18836 Sun Oct 22 07:55:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18838         * string.c (rb_str_upcase, rb_str_downcase, rb_str_downcase,
18839           rb_str_upcase_bang, rb_str_downcase_bang, rb_str_swapcase_bang):
18840           add RDoc description that case conversion to be effective only
18841           in ASCII region.
18843 Sun Oct 22 05:20:34 2006  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
18845         * configure.in: alloca is broken; use C_ALLOCA instead.
18846           [ruby-dev:29416]
18848 Sat Oct 21 17:50:40 2006  Akinori MUSHA  <knu@iDaemons.org>
18850         * ext/digest/lib/digest.rb: Follow the framework updates.
18852 Fri Oct 20 22:00:43 2006  Akinori MUSHA  <knu@iDaemons.org>
18854         * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
18856         * ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
18858 Fri Oct 20 20:28:37 2006  Akinori MUSHA  <knu@iDaemons.org>
18860         * ext/digest: Prefix C constants with RUBY_ and C type names with
18861           rb_ to avoid name clash in writing extensions.
18863         * ext/digest: Introduce Digest::Class and Digest::Instance for
18864           ease of implementing subclasses and add-ons, inspired by
18865           gotoyuzo.
18867         * ext/digest: The Digest::Instance module now requires and assumes
18868           that any instance be resettable and clonable, and add some
18869           convenient instance methods such as "new()", for creating a new
18870           copy, parameter taking "digest()" and "hexdigest()", for instant
18871           calculation.  These methods make digest instances work just like
18872           digest classes.
18874         * ext/digest/sha2/lib/digest/sha2.rb:
18875           Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256,
18876           SHA384 and SHA512, hoping this module would make a decent
18877           example of a digest subclass written in Ruby.
18879         * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2
18880           classes.
18882         * ext/digest/lib/digest/hmac.rb: Follow the framework updates.
18884 Fri Oct 20 10:47:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
18886         * lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
18888 Fri Oct 20 08:42:38 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18890         * common.mk (NULLCMD): dummy command.
18892         * bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
18893           command-less double-colon rules.  [ruby-dev:29676]
18895 Fri Oct 20 00:37:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18897         * bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
18899         * ext/extmk.rb: workaround for Borland make.
18901 Wed Oct 18 23:02:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18903         * array.c (rb_ary_shift): shorten copy size.  fixed: [ruby-list:42907]
18905         * signal.c (Init_signal): handle SIGTERM.  fixed: [ruby-list:42895]
18907         * win32/win32.c (rb_w32_utime): allow NULL to set the current time.
18908           [ruby-talk:219248]
18910 Wed Oct 18 13:25:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18912         * string.c (rb_str_each_line): String#lines now works when a block
18913           is given.  in other words, lines become an alias to each_line.
18914           [ruby-core:09218]
18916         * string.c (rb_str_each_byte): ditto for bytes in place of lines.
18918 Wed Oct 18 00:55:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18920         * parse.y (parser_yylex): use particular enums.  [ruby-core:09221]
18922 Tue Oct 17 22:03:08 2006  Minero Aoki  <aamine@loveruby.net>
18924         * lib/erb.rb: String#each was removed, use #each_line instead.
18926 Tue Oct 17 12:27:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18928         * array.c (ary_shared_array): should set NOEMBED flag for a copied
18929           array.
18931 Tue Oct 17 08:04:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18933         * string.c (rb_str_lines): now takes optional argument for the
18934           line separator.
18936         * io.c (rb_io_lines, rb_io_bytes): new methods.
18938 Mon Oct 16 23:33:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18940         * array.c (rb_ary_unshift_m): a bug in lfree shift length
18941           calculation.
18943 Mon Oct 16 08:30:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18945         * mkconfig.rb: *OBJS are not needed for extension libraries.
18947         * {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
18948           missing comma.
18950 Mon Oct 16 00:44:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18952         * pack.c (pack_unpack): execute block if given with unpacked value
18953           instead of creating an array.  an idea from Tim Bray.
18955 Sun Oct 15 01:03:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18957         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): append base
18958           directory but not prepend.
18960         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): do not
18961           join with dot.  fixed: [ruby-core:09179]
18963 Sat Oct 14 23:39:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18965         * parse.y (singleton): no need to re-create NODE_SELF() again.
18966           [ruby-core:09177]
18968 Sat Oct 14 23:25:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
18970         * parse.y (parser_warning, parser_warn): some error message may
18971           contain format specifiers.  a patch from Akinori MUSHA <knu at
18972           iDaemons.org>.  [ruby-dev:29657]
18974         * regparse.c (onig_rb_warning, onig_rb_warn): ditto.
18976         * ext/bigdecimal/bigdecimal.c (VpException): ditto.
18978         * ext/dl/handle.c (rb_dlhandle_initialize): ditto.
18980         * ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.
18982 Sat Oct 14 08:15:42 2006  Akinori MUSHA  <knu@iDaemons.org>
18984         * ext/digest/digest.c, ext/digest/digest.h,
18985           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
18986           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c:
18987           Introduce API versioning.
18989         * ext/digest/digest.c, ext/digest/digest.h,
18990           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
18991           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove
18992           the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into
18993           instance methods digest_length() and block_length().  Class
18994           methods with the same names are also provided, which take extra
18995           parameters for a digest method.
18997         * ext/digest/lib/digest/hmac.rb: Completely redesign the somewhat
18998           bizarre API, now that Digest classes can take hashing
18999           parameters.
19001 Sat Oct 14 05:54:05 2006  Akinori MUSHA  <knu@iDaemons.org>
19003         * ext/digest/digest.c: Improve RDoc documentation further more.
19005 Sat Oct 14 04:33:33 2006  Akinori MUSHA  <knu@iDaemons.org>
19007         * ext/digest/digest.c: Improve RDoc documentation.
19009         * ext/digest/digest.c (Init_digest, rb_digest_base_s_digest,
19010           rb_digest_base_s_hexdigest): Make Digest::Base::digest() and
19011           Digest::Base::hexdigest() take extra arguments, which are passed
19012           through to the constructor in an internal call.
19014         * ext/digest/bubblebabble/bubblebabble.c
19015           (rb_digest_base_s_bubblebabble): Ditto for
19016           Digest::Base::bubblebabble().
19018 Sat Oct 14 00:55:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19020         * bcc32/Makefile.sub (post-install-ext): no longer needed.
19022         * bcc32/configure.bat: get rid of a quirk of Borland make, which
19023           sets empty macro in command line to "1".
19025 Fri Oct 13 22:49:02 2006  Tadayoshi Funaba  <tadf@dotrb.org>
19027         * lib/date.rb: updated based on date2 3.9.5.
19029 Fri Oct 13 21:00:01 2006  Akinori MUSHA  <knu@iDaemons.org>
19031         * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
19032           digest modules when a specified digest class is missing.
19034         * ext/digest/lib/digest.rb: Define Digest(name) for ease of
19035           dynamically selecting a hashing algorithm.
19037 Fri Oct 13 20:53:37 2006  Akinori MUSHA  <knu@iDaemons.org>
19039         * ext/digest/digest.c (Init_digest): Digest::Base.new() does no
19040           longer take an initial string to feed.  This change allows
19041           subclasses to take hashing parameters.  A statement such as
19042           ``md = Digest::MD5.new(s)'' can be easily rewritten as
19043           ``md = Digest::MD5.new << s'' or
19044           ``md = Digest::MD5.new.update(s)''.
19046 Fri Oct 13 20:51:55 2006  Akinori MUSHA  <knu@iDaemons.org>
19048         * ext/digest/digest.c, ext/digest/md5/md5init.c,
19049           ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c,
19050           ext/digest/sha2/sha2init.c: Add RDoc documentation.
19052         * ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in
19053           favor of embedded RDoc documentation.
19055 Fri Oct 13 20:38:12 2006  Akinori MUSHA  <knu@iDaemons.org>
19057         * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
19058           support out of the base class and have a separate module named
19059           digest/bubblebabble.
19061 Fri Oct 13 19:53:59 2006  Akinori MUSHA  <knu@iDaemons.org>
19063         * ext/digest/digest.c (rb_digest_base_equal): Again, should call
19064           digest() of a subclass instead of the one defined in the base
19065           class.
19067 Fri Oct 13 18:19:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19069         * object.c: Class#inherited RDoc added.  a patch from Daniel
19070           Berger <djberg96 at gmail.com>  [ruby-core:08942]
19072 Fri Oct 13 02:42:00 2006  Akinori MUSHA  <knu@iDaemons.org>
19074         * ext/digest/digest.c (rb_digest_base_equal): Should call digest()
19075           of a subclass instead of the one defined in the base class.
19077 Fri Oct 13 02:30:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19079         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): prepend
19080           base directory to load path.
19082         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): should
19083           use the given File-like interface, but not File directly.
19085         * test/testunit/collector/test_dir.rb (TestDir::FileSystem): implement
19086           File-like methods correctly.
19088 Fri Oct 13 01:48:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19090         * lib/date.rb (Date::self.complete_hash): need to check if g is
19091           nil before dereference.  [ruby-core:09116]
19093 Fri Oct 13 01:05:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19095         * string.c (rb_str_partition): RDoc update.  a patch from
19096           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09160]
19098         * hash.c (rb_hash_compare_by_id): ditto.
19100 Fri Oct 13 00:34:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19102         * object.c (rb_mod_cvar_defined): wrong id check.  a patch from
19103           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09158]
19105         * object.c (rb_mod_cvar_get): typo fixed.  [ruby-core:09168]
19107         * object.c (rb_mod_cvar_set): ditto.
19109 Thu Oct 12 22:58:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19111         * hash.c (rb_hash_compare_by_id): somehow we lost renaming from
19112           Hash#identical.  [ruby-core:09163]
19114 Thu Oct 12 18:25:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19116         * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
19117           character literal (1 char string).
19119         * lib/mkmf.rb: shut up some warnings from tk's extconf.rb.
19121 Thu Oct 12 02:15:24 2006  Akinori MUSHA  <knu@iDaemons.org>
19123         * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
19125 Thu Oct 12 02:12:31 2006  Akinori MUSHA  <knu@iDaemons.org>
19127         * ext/digest/digest.c (get_digest_base_metadata): Use an instance
19128           variable of a class object instead of a class variable for
19129           metadata.  This change is only crucial for ruby 1.8 because
19130           class variables are inherited to subclasses prior to 1.9, but
19131           applying it also to 1.9 will assure compatibilities.
19133         * ext/digest/md5/md5init.c (Init_md5): Ditto.
19135         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
19137         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
19139         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
19141 Wed Oct 11 21:36:47 2006  Akinori MUSHA  <knu@iDaemons.org>
19143         * ext/digest/digest.c (rb_digest_base_alloc,
19144           rb_digest_base_equal): Simplify the equality check and just
19145           compare resulted digests since state-level equality should
19146           not be so significant.
19148         * ext/digest/digest.h: Ditto.
19150         * ext/digest/*/*.[ch]: Ditto.
19152 Wed Oct 11 17:11:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19154         * eval.c (rb_obj_define_method): add half boiled RDoc document.
19156 Wed Oct 11 16:57:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19158         * array.c (rb_ary_replace): should shift lfree pointer before
19159           calling xfree.
19161 Wed Oct 11 15:07:42 2006  Akinori MUSHA  <knu@iDaemons.org>
19163         * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
19164           HMAC keyed-hashing algorithm.
19166 Wed Oct 11 15:03:55 2006  Akinori MUSHA  <knu@iDaemons.org>
19168         * ext/digest/digest.c (rb_digest_base_reset): Do not make
19169           recursive calls, but call initialize() when reset() is not
19170           defined in a subclass.
19172 Wed Oct 11 14:56:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19174         * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
19175           SHA_BLOCK_LENGTH.
19177 Wed Oct 11 14:03:31 2006  Akinori MUSHA  <knu@iDaemons.org>
19179         * ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
19180           Digest::Base#reset.
19182         * ext/digest/digest.h: Update the header comment.
19184         * ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5):
19185           Define DIGEST_LENGTH and BLOCK_LENGTH.
19187         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
19189         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
19191         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
19193         * ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES
19194           rather than adding make targets. [Pointed out by: nobu]
19196 Tue Oct 10 16:39:08 2006  Akinori MUSHA  <knu@iDaemons.org>
19198         * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
19199           Perform StringValue() checks properly.
19201 Tue Oct 10 13:21:21 2006  Akinori MUSHA  <knu@iDaemons.org>
19203         * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
19204           dependencies.
19206 Mon Oct  9 23:46:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19208         * lib/parsedate.rb: documentation patch from Konrad Meyer
19209           <konrad.meyer@gmail.com>.  [ruby-doc:1238]
19211         * lib/open3.rb, lib/ping.rb: ditto.
19213 Mon Oct  9 23:40:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19215         * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
19216           lib/shellwords.rb: get rid of shadowing outer local variable.
19218 Mon Oct  9 22:56:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19220         * lib/rexml/encoding.rb (REXML::Encoding::check_encoding): spaces
19221           are allowed around equal sign.  [ruby-core:09032]
19223         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser): ditto.
19225 Mon Oct  9 01:56:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19227         * eval.c (rb_obj_define_method): add new method
19228           Kernel#define_singleton_method.  [ruby-list:42851]
19230 Sat Oct  7 23:53:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19232         * string.c (rb_str_scan): small documentation fix.
19233           [ruby-core:09007]
19235 Sat Oct  7 23:44:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19237         * bignum.c (rb_big_rshift): a bug in right shift of negative
19238           bignums.  [ruby-core:09020]
19240 Sat Oct  7 23:33:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19242         * eval.c (formal_assign): packed post splat arguments may conflict
19243           with normal arguments.  [ruby-core:09021]
19245         * eval.c (rb_call0): ditto.
19247 Sat Oct  7 11:53:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19249         * object.c (rb_mod_initialize): since module_eval no longer passes
19250           self, use module_exec instead.  fixed: [ruby-dev:29637]
19252 Sat Oct  7 00:27:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19254         * class.c (rb_include_module): remove unnecessary check.
19255           [ruby-talk:218402]
19257 Fri Oct  6 15:19:59 2006  Akinori MUSHA  <knu@iDaemons.org>
19259         * ext/digest/depend: Fix header installation when the build
19260           directory is different from srcdir. [Pointed out by: eban]
19262 Fri Oct  6 09:56:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
19264         * {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
19265           copy command instead of install. use -run install.
19267 Fri Oct  6 06:53:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19269         * eval.c (rb_yield_0): small refactoring.
19271         * parse.y (bparam_item): fixed bugs in handling parenthesized LHS.
19273 Fri Oct  6 04:47:07 2006  Akinori MUSHA  <knu@iDaemons.org>
19275         * ext/digest/depend: Install digest.h.
19277 Fri Oct  6 04:27:40 2006  Akinori MUSHA  <knu@iDaemons.org>
19279         * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
19280           compatibility stub libraries.
19282         * sample/openssl/c_rehash.rb: Use digest/md5 instead of obsolete md5.
19284 Fri Oct  6 04:09:51 2006  Akinori MUSHA  <knu@iDaemons.org>
19286         * ext/digest/digest.c: Make hexdigest() always call digest() internally.
19288         * ext/digest/digest.c: Add bubblebabble().
19290 Fri Oct  6 02:38:42 2006  Akinori MUSHA  <knu@iDaemons.org>
19292         * ext/digest/digest.c: Allow subclassing in Ruby.
19294 Fri Oct  6 02:06:10 2006  Akinori MUSHA  <knu@iDaemons.org>
19296         * ext/digest/digest.c (hexdigest_str_new): Add a string size check.
19298 Thu Oct  5 19:28:35 2006  Akinori MUSHA  <knu@iDaemons.org>
19300         * ext/digest/digest.[ch]: Since the argument order of
19301           hash_final_func_t was inconsistent with others, change it and
19302           rename to hash_finish_func_t to avoid confusion.
19304         * ext/digest/digest.[ch]: Remove and eliminate the use of
19305           hash_end_func_t.  Implement hexdigest conversion in the base
19306           class.
19308         * ext/digest/md5/md5.c, ext/digest/md5/md5.h,
19309           ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c,
19310           ext/digest/md5/md5ossl.h: Remove MD5_End() and change
19311           MD5_Final() to MD5_Finish().
19313         * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb,
19314           ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h,
19315           ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c,
19316           ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h:
19317           Remove unused functions RMD160_End(), RMD160_File(),
19318           RMD160_Data() and change RMD160_Final() to RMD160_Finish().
19320         * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c,
19321           ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c,
19322           ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c,
19323           ext/digest/sha1/sha1ossl.h: Likewise.
19325         * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c,
19326           ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c,
19327           ext/digest/sha2/sha2init.c: Likewise.
19329 Wed Oct  4 18:47:25 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
19331         * ext/tk/lib/tkextlib/*: bugfix and update
19332           (see ext/tk/ChangeLog.tkextlib).
19334 Wed Oct  4 17:25:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19336         * eval.c (rb_call): check protected visibility based on real self,
19337           not ruby_frame->self.  [ruby-talk:217822]
19339 Wed Oct  4 15:46:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19341         * parse.y (block_param): should interpret single parenthesized
19342           left hand side expression.
19344 Wed Oct  4 08:52:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19346         * test/optparse/test_getopts.rb: changed the class name of test case
19347           to get rid of conflict with test_optparse.rb.
19349 Tue Oct  3 21:04:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19351         * parse.y (dyna_in_block): inline using macro.
19353         * parse.y (mlhs): simplifies the rule a bit.
19355         * parse.y (block_param): restrict block parameters to be local
19356           variables only.
19358         * test/ruby/test_iterator.rb (TestIterator::test_nested_iterator):
19359           update test suite to conform the last change.
19361 Tue Oct  3 02:31:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19363         * eval.c (splat_value): use "to_splat" instead of "to_ary" to
19364           prepare splat values as an array.
19366         * array.c (Init_Array): define to_splat.
19368         * range.c (range_to_splat): new method.
19370         * enumerator.c (enumerator_to_splat): ditto.
19372 Tue Oct  3 01:36:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19374         * string.c (rb_str_lines): returns an Enumerator instead of an
19375           array of lines.
19377         * string.c (rb_str_bytes): a new method.
19379 Mon Oct  2 23:47:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19381         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::COLLECTORS):
19382           base directory should be lower precedence.  fixed: [ruby-dev:29622]
19384         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): typo.
19386         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
19387           load expanded path.  fixed: [ruby-dev:29621]
19389 Mon Oct  2 15:47:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
19391         * instruby.rb: batfile should be CRLF'ed.
19393 Mon Oct  2 01:24:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19395         * common.mk (test-all): separate directory where running test cases
19396           from source tree.
19398         * lib/test/unit/autorunner.rb (options): added --basedir, --workdir
19399           and --load-path options.
19401         * lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
19402           base directory support.
19404 Sun Oct  1 23:56:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19406         * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
19407           LIBRUBY_SO unless need to be removed.
19409 Sun Oct  1 23:12:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19411         * lib/optparse.rb (OptionParser#make_switch): pass arguments directly.
19413 Sat Sep 30 15:11:26 2006  Tadayoshi Funaba  <tadf@dotrb.org>
19415         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.4.
19417 Fri Sep 29 13:18:24 2006  Akinori MUSHA  <knu@iDaemons.org>
19419         * ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
19420           breakage.  Point out by NAKAMURA Usaku in [ruby-dev:29619].
19422 Fri Sep 29 12:11:04 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
19424         * jcode.rb (succ!): call original succ! if $KCODE == 'n'.
19425           fixed: [ruby-talk:216845]
19427 Fri Sep 29 11:43:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19429         * lib/mkmf.rb (try_func): revert fallback checking undeclared function.
19430           fixed: [ruby-core:08949]
19432 Fri Sep 29 09:56:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19434         * ext/extmk.rb: extout is needed for also clean.
19435           fixed: [ruby-core:08944]
19437         * lib/optparse.rb (OptionParser::Switch#conv_arg): unsplat by
19438           Proc#call if no conversion is given.
19440 Thu Sep 28 23:59:31 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19442         * node.h (struct thread): declare win32_exception_list on cygwin and
19443           win32 regardless if it is implemented.  Provisional fix for
19444           [ruby-core:08917].
19446 Thu Sep 28 20:49:20 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
19448         * lib/tmpdir.rb: use return value of getdir.call for length.
19450 Wed Sep 27 22:08:16 2006  Akinori MUSHA  <knu@iDaemons.org>
19452         * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
19453           require "digest" rather than "digest.so".
19455         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
19457         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
19459         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
19461 Wed Sep 27 21:21:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19463         * string.c (rb_str_startwith): rename startwith? to start_with?,
19464           endwith? to endwith?, respectively.  [ruby-talk:216685]
19466 Wed Sep 27 13:29:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19468         * lib/cgi.rb (CGI::TagMaker::nOE_element_def): replace to_s by
19469           join.  some other methods as well.  [ruby-dev:29613]
19471 Wed Sep 27 01:04:49 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19473         * lib/mkmf.rb (try_func): check function pointer first and macro next.
19475         * lib/mkmf.rb (have_type): simplified with typedef and sizeof.
19477 Wed Sep 27 00:08:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19479         * array.c (rb_ary_shift): shift/unshift performance boost patch,
19480           based on the patch from Eric Mahurin <eric_mahurin at yahoo.com>.
19481           [ruby-core:05861]
19483         * array.c (rb_ary_unshift_m): ditto.
19485         * array.c (ary_make_shared): ditto.
19487         * array.c (RESIZE_CAPA): ditto.
19489         * array.c (rb_ary_free): new function to free memory.  code moved
19490           from gc.c.
19492         * string.c (rb_str_free): ditto.
19494 Tue Sep 26 23:57:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19496         * lib/optparse.rb (OptionParser#getopts): use strings as key.
19497           fixed: [ruby-dev:29614]
19499 Tue Sep 26 15:29:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
19501         * {win32,wince}/Makefile.sub (CPP): check predefined value.
19503 Tue Sep 26 07:55:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19505         * array.c (rb_ary_shift): should not move memory region if array
19506           body is shared.  a patch from Kent Sibilev <ksruby at gmail.com>.
19507           [ruby-core:08922]
19509 Mon Sep 25 23:10:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19511         * dir.c (rb_push_glob): need not to check by FilePathValue().
19512           [ruby-dev:29599]
19514         * dir.c (dir_globs): ditto.
19516 Mon Sep 25 22:26:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19518         * file.c (rb_path_end): skip root directory.  fixed: [ruby-core:08913]
19520         * lib/mkmf.rb (rm_f): get rid of NUL.
19522         * lib/mkmf.rb (init_mkmf): set default $LDFLAGS.  Patch by Michal
19523           Suchanek <hramrach at centrum.cz>.  [ruby-talk:216256]
19525 Mon Sep 25 15:06:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19527         * sample/test.rb: "print nil" now prints empty string.
19529         * test/ruby/test_system.rb (TestSystem::test_system): ditto.
19531 Mon Sep 25 11:26:25 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19533         * hash.c (recursive_hash): remove unused local variable.
19535         * parse.y (parser_yylex): ditto.
19537         * parse.y (rb_gc_mark_symbols): fix unmatched prototype .
19539         * file.c (rb_get_path): check NUL byte in the path string.
19541 Mon Sep 25 08:14:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19543         * array.c (rb_ary_shift): should clear shifting top element.
19544           [ruby-talk:216055]
19546         * array.c (rb_ary_shift): avoid creating shared object if array
19547           size is small.
19549 Mon Sep 25 08:11:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19551         * random.c (rb_f_rand): RDoc typo fix.  a patch from Frederick
19552           Cheung <fred at 82ask.com>.  [ruby-talk:216047]
19554 Sun Sep 24 21:19:24 2006  Guy Decoux  <ts@moulon.inra.fr>
19556         * gc.c (gc_mark_children): NODE_POSTEXE holds Ruby VALUE.
19557           [ruby-core:08912]
19559 Sun Sep 24 22:28:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19561         * runruby.rb: extension library scripts moved into common directory.
19563 Sun Sep 24 12:10:04 2006  Tadayoshi Funaba  <tadf@dotrb.org>
19565         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.3.
19567 Sun Sep 24 06:55:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19569         * io.c (rb_io_print): no special handling for nil as well as puts.
19570           fixed: [ruby-dev:29586]
19572 Sun Sep 24 06:25:53 2006  why the lucky stiff  <why@ruby-lang.org>
19574         * eval.c (rb_thread_save_context, rb_thread_restore_context):
19575           sandbox hook to save and restore sandbox state.
19577         * eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
19579         * eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
19580           to circumvent ensure, in order to prevent endless loops.
19581           contributed by MenTaLguY. [ruby-core:08768]
19583         * eval.c (rb_thread_kill): fix Thread#kill docs, which returns
19584           the thread object in all cases.
19586         * node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
19587           with the thread flags.  used by the sandbox extension.
19589         * ruby.h: extern rb_eThreadError, so sandbox can swap it.
19591 Sat Sep 23 21:34:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19593         * lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
19594           may be empty.  a patch from Jamis Buck <jamis at 37signals.com>.
19596 Sat Sep 23 20:54:28 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
19598         * oniguruma.h: Version 4.4.4
19600         * regexec.c: ditto.
19602         * regcomp.c ditto.
19604 Sat Sep 23 08:35:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19606         * lib/rdoc/ri/ri_options.rb: prevent NameError.  [ruby-dev:29597]
19608 Sat Sep 23 01:02:57 2006  Tadayoshi Funaba  <tadf@dotrb.org>
19610         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.2.
19612 Fri Sep 22 18:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19614         * string.c (rb_str_partition): no need to call rb_call_super(),
19615           since String is no longer includes Enumerable.
19617 Fri Sep 22 17:33:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19619         * hash.c (rb_hash_eql): new method to be used by Hash.
19621         * hash.c (rb_hash_hash): ditto.
19623 Fri Sep 22 06:53:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19625         * bignum.c (rb_big_hash): use rb_memhash().
19627         * numeric.c (flo_hash): simplified.  klass need not to affect
19628           resulting hash value.
19630 Fri Sep 22 02:06:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19632         * .cvsignore: ignore timestamp files and installed list file.
19634 Fri Sep 22 01:36:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19636         * instruby.rb: include FileUtils unconditionally.
19638 Fri Sep 22 00:36:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19640         * numeric.c (Init_Numeric): fix_odd_p and fix_even_p are for Fixnum.
19641           patch from Ondrej Bilka <neleai at seznam.cz>.  [ruby-core:08904]
19643 Thu Sep 21 22:56:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19645         * common.mk (no-install): not install rdoc actually.
19647         * common.mk (install-doc, no-install-doc): use instruby.rb.
19649         * instruby.rb: rdoc installation.
19651         * ext/extmk.rb: expand ruby executable names.
19653 Thu Sep 21 20:19:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19655         * string.c (str_new3): embed shorter strings more eagerly.
19657 Thu Sep 21 17:44:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19659         * string.c (rb_str_startwith): a new method to check if a string
19660           starts with given prefix.
19662         * string.c (rb_str_endwith): the opposite of String#startwith?.
19664 Thu Sep 21 16:29:02 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
19666         * rubytest.rb: use each_line instead of each.
19668 Thu Sep 21 15:06:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19670         * numeric.c (int_odd_p): a new method to check even or odd.
19671           [RCR#337]
19673         * numeric.c (int_even_p): ditto.
19675 Thu Sep 21 13:55:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19677         * ext/etc/etc.c (etc_getpwuid): uid integer should be wrapped in
19678           uid_t value.  [ruby-core:08897]
19680         * ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
19681           'int' type.
19683 Thu Sep 21 10:07:09 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19685         * string.c (rb_str_partition): RDoc typo fixed.  [ruby-core:08898]
19687         * string.c (rb_str_rpartition): fixed separation seek bug.
19689 Thu Sep 21 09:38:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19691         * string.c (rb_str_lines): new method to split a string into lines.
19693         * string.c (Init_String): Strings are no longer Enumerable.  use
19694           each_line or lines method explicitly.
19696         * string.c (Init_String): remove each method. use each_lines.
19698 Wed Sep 20 23:17:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19700         * common.mk (pre-install-doc): create data directory before install.
19702         * lib/mkmf.rb (dir_re): fixed typo.
19704         * lib/mkmf.rb (install_dirs): remove extra slash.
19706 Wed Sep 20 22:41:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19708         * numeric.c (fix_mul): typo again.  patch from Tadashi Saito
19709           <shiba at mail2.accsnet.ne.jp>.  fixed: [ruby-core:08893]
19711 Wed Sep 20 19:32:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19713         * string.c (rb_str_partition): a new method to separate the string
19714           by a separator.  taken from Python 2.5.
19716         * string.c (rb_str_rpartition): ditto.
19718 Wed Sep 20 09:49:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
19720         * {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
19721           this macro to install.
19723 Wed Sep 20 09:43:10 2006  Shugo Maeda  <shugo@ruby-lang.org>
19725         * lib/net/imap.rb: allow extra spaces in responses.
19726           Thanks, Tom Soderlund.
19728 Wed Sep 20 09:25:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19730         * ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
19731           Adolphs <futzilogik at users dot sourceforge dot net>.
19732           [ruby-doc:1223]
19734 Tue Sep 19 00:42:15 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19736         * object.c (rb_obj_ivar_defined, rb_mod_cvar_defined): new methods,
19737           Kernel#instance_variable_defined? and Module#class_variable_defined?.
19738           [ruby-dev:29587]
19740         * lib/date/format.rb (Date::Bag#method_missing): use new method,
19741           instance_variable_defined? to check if an instance variable is
19742           defined.  fixed: [ruby-dev:29554]
19743           -- This didn't fix anything.
19745 Tue Sep 19 00:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19747         * string.c (sym_eql): fail early to gain performance.
19749         * string.c (sym_hash): cache hash value in aux.shared if possible.
19751         * gc.c (rb_obj_id): no need to treat symbols specially.
19753         * lib/fileutils.rb (FileUtils::FileUtils): singleton_methods() no
19754           longer return an array of strings, but of symbols.
19756         * lib/delegate.rb (DelegateClass): ditto.
19758 Mon Sep 18 15:29:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19760         * dir.c (dir_s_glob): restore GC protection volatile variable.
19761           [ruby-dev:29588]
19763         * re.c (rb_reg_regcomp): ditto.
19765 Mon Sep 18 12:16:48 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19767         * numeric.c (fix_mul): get rid of shift overflow.
19769 Mon Sep 18 10:47:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19771         * dir.c (dir_s_glob): remove unused variable.
19773         * math.c (math_log): ditto.
19775         * re.c (rb_reg_regcomp): ditto.
19777         * eval.c (break_jump): ditto.
19779         * eval.c (rb_thread_yield_0): remove unused function.
19781 Sun Sep 17 23:44:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19783         * lib/rdoc/rdoc.rb (RDoc::RDoc#document): scan only files modified
19784           after the previous generation.
19786 Sun Sep 17 17:42:13 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19788         * common.mk (install-doc): reverted.
19790         * instruby.rb: stores file name list without destdir prefix.
19792         * lib/rdoc/generators/ri_generator.rb: do not chdir twice.
19794 Sun Sep 17 10:42:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19796         * numeric.c (fix_mul): fixed typo.  fixed: [ruby-core:08885]
19798 Sat Sep 16 19:47:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19800         * README.EXT: should mention new macros: RSTRING_PTR, RSTRING_LEN,
19801           RARRAY_PTR, RARRAY_LEN.
19803         * README.EXT.ja: ditto.
19805 Sat Sep 16 16:39:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19807         * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
19808           use instruby.rb to install extensions instead of ext/extmk.rb.
19810         * instruby.rb: store installed list into the file.
19812         * ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
19814         * ext/io/wait/extconf.rb: suspicious checking_for.
19816         * ext/pty/pty.c (establishShell): parent pid is not used.
19818         * ext/pty/pty.c (freeDevice): not used.
19820         * lib/mkmf.rb (checking_for): improved the messages.
19822 Sat Sep 16 11:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19824         * array.c (ary_shared_first): should create embedded copies
19825           instead of sharing memory region for smaller arrays.
19827 Sat Sep 16 09:37:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19829         * struct.c (inspect_struct): do not display a class name for
19830           anonymous struct.  The member fields are sufficient.
19832 Fri Sep 15 20:22:15 2006  NARUSE, Yui  <naruse@ruby-lang.org>
19834         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 rev.110.
19835           * Fix: check_bom cuts \xfe\xff\xXX\xXX of UTF-32LE.
19836           * Add support --ic=UTF-32.
19837           * Fix: can't guess UTF-16 and UTF-32.
19838           * Fix: can't decode beyond BMP of UTF-16LE.
19840         * ext/nkf/nkf.c (guess): Support UTF-32.
19842         * ext/nkf/lib/kconv.rb (kconv): Support UTF-32.
19844         * ext/nkf/lib/kconv.rb (to_utf32): new method.
19846 Fri Sep 15 05:23:24 2006  NARUSE, Yui  <naruse@ruby-lang.org>
19848         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 2006-09-15.
19849           Add support for U+10000 - U+10FFFF
19850           Add support UTF-32
19852 Fri Sep 15 00:03:07 2006  Tanaka Akira  <akr@fsij.org>
19854         * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
19855           mode.  suggested by Kazuhiro NISHIYAMA.  [ruby-dev:29579]
19857 Thu Sep 14 17:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19859         * numeric.c (fix_mul): avoid bignum multiplication as far as
19860           possible.  a patch from Ondrej Bilka <neleai at seznam.cz>.
19861           [ruby-core:08825]
19863 Thu Sep 14 16:34:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19865         * string.c (rb_str_intern): allow zero length symbols.
19866           [ruby-core:08861]
19868 Thu Sep 14 16:11:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19870         * string.c (rb_str_intern): raise SecurityError only when $SAFE
19871           level is greater than zero.  [ruby-core:08862]
19873         * parse.y (rb_interned_p): new function to check if a string is
19874           already interned.
19876         * string.c (str_to_id): use rb_str_intern().
19878 Thu Sep 14 14:37:45 2006  Tanaka Akira  <akr@fsij.org>
19880         * ext/digest/lib/digest.rb (Digest::Base.file): new method.
19881           [ruby-dev:29572]
19883 Thu Sep 14 08:30:02 2006  Tanaka Akira  <akr@fsij.org>
19885         * ext/digest/digest.c (rb_digest_base_inspect): new method.
19886           [ruby-dev:29573]
19888 Thu Sep 14 01:13:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
19890         * gc.c (ruby_init_stack): decrease "stack level too deep" in Windows.
19891           [ruby-dev:29569]
19893 Thu Sep 14 01:02:25 2006  Tanaka Akira  <akr@fsij.org>
19895         * ext/digest/lib/digest.rb: new file.
19896           [ruby-dev:28689]
19898 Wed Sep 13 18:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19900         * README.EXT: English adjustment.  [ruby-core:08851] and
19901           [ruby-core:08852]
19903 Wed Sep 13 18:25:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19905         * misc/ruby-mode.el (ruby-parse-partial): better here-doc support.
19906           a patch from Marshall T. Vandegrift <llasram at gmail.com>.
19907           [ruby-core:08804]
19909 Wed Sep 13 16:43:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19911         * string.c (rb_str_intern): prohibit interning tainted string.
19913 Wed Sep 13 01:14:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19915         * lib/optparse.rb (OptionParser#getopts): works with pre-registered
19916           options.  [ruby-core:08826]
19918 Tue Sep 12 03:58:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19920         * hash.c (rb_hash_compare_by_identity): rename Hash#identical to
19921           Hash#compare_by_identity.
19923 Mon Sep 11 16:52:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19925         * hash.c (rb_hash_identical): a new method to make a hash to
19926           compare keys by their identity.
19928         * hash.c (rb_hash_identical_p): new method to tell if a hash is
19929           identical or not.
19931         * st.c (st_numcmp, st_numhash): export hash type functions.
19933 Mon Sep 11 11:42:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19935         * lib/rexml/source.rb (REXML::Source::encoding): should not
19936           convert the body twice.  [ruby-core:08828]
19938         * lib/rexml/encoding.rb (REXML::Encoding::encoding):
19939           Encoding#encoding= to return boolean value to tell if the body
19940           is really converted or not.
19942         * lib/rexml/encoding.rb (REXML::Encoding::encoding): Specific
19943           conversion library (e.g. rexml/encodings/UTF-16.rb) to have
19944           higher preceding.
19946         * lib/rexml/encodings/UTF-16.rb (REXML::Encoding::decode_utf16):
19947           UTF-16#decode_utf16 should work strings without BOM.
19949 Mon Sep 11 07:39:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19951         * string.c (sym_equal): "sym == str" should compare them as
19952           strings.  [ruby-dev:29554]
19954 Sun Sep 10 22:59:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19956         * instruby.rb (parse_args): remove splat.
19958 Sun Sep 10 20:25:30 2006  Tadayoshi Funaba  <tadf@dotrb.org>
19960         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.1.
19962 Sun Sep 10 09:41:29 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19964         * file.c: ISPRINT() needs ctype.h
19966 Sun Sep 10 09:19:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19968         * lib/optparse.rb: splat parsed arguments.
19970 Tue Jan 10 09:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19972         * eval.c (rb_require_safe): prevent extension from loading twice.
19973           fixed: [ruby-dev:29523]
19975 Sat Sep  9 23:55:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
19977         * file.c (rb_f_test): test(0) should not have any special
19978           meaning.  [ruby-dev:29425]
19980         * file.c (rb_f_test): properer error message.
19982 Sat Sep  9 14:08:38 2006  Eric Hodel  <drbrain@segment7.net>
19984         * lib/test/unit/testcase.rb (Test::Unit::TestCase#run): Rescue
19985           Exception in Test::Unit::TestCase#run.  [ruby-core:08783]
19987 Sat Sep  9 04:55:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19989         * lib/pstore.rb: open all in binary mode, and get rid of the quirk of
19990           msvcrt.  fixed: [ruby-dev:29518]
19992 Sat Sep  9 04:47:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19994         * Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
19996         * mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
19997           warnings with $VERBOSE.
19999         * win32/resource.rb: only file which has more than one icon is DLL.
20001 Fri Sep  8 16:53:30 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20003         * string.c (str_alloc): should allocate a String object, even when
20004           asked to allocate a Symbol object.  [ruby-dev:29529]
20006 Fri Sep  8 16:36:27 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20008         * ext/extmk.rb (extmake): follow Array#to_s.
20010         * lib/mkmf.rb (create_makefile): ditto.
20012         * win32/resource.rb: ditto.
20014 Fri Sep  8 10:00:12 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
20016         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookies): new
20017           method to parse multiple cookies per Set-Cookie header.
20018           Thanks to Aaron Patterson <aaron_patterson at speakeasy.net>.
20019           [ruby-core:08802]
20021 Fri Sep  8 08:59:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20023         * win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
20024           name transform.
20026 Fri Sep  8 08:25:39 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20028         * lib/optparse.rb: suppress `assigning void value' warning.
20030 Fri Sep  8 01:16:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20032         * array.c (Init_Array): #to_s to be an alias to #inspect.
20033           [ruby-dev:29520]
20035         * hash.c (Init_Hash): ditto.
20037         * lib/mkmf.rb (create_makefile): replace "print array" by
20038           "print *array".
20040         * mkconfig.rb: ditto.
20042 Thu Sep  7 21:02:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20044         * object.c (nil_to_s): returns the empty string again.
20045           [ruby-dev:29520]
20047 Thu Sep  7 23:27:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20049         * file.c (path_check_0, fpath_check): disable path check on cygwin.
20050           [ruby-talk:213074]
20052 Thu Sep  7 02:03:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20054         * time.c (time_to_s): adopt new date format using digits
20055           e.g. "2006-09-07 02:03:45 +9000".
20057 Thu Sep  7 01:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20059         * string.c (sym_equal): override.  check equivalence.
20061 Wed Sep  6 13:25:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20063         * parse.y (symbols_i): need to initialize early-created symbols.
20064           [ruby-dev:29496]
20066 Wed Sep  6 12:05:19 2006  NARUSE, Yui  <naruse@ruby-lang.org>
20068         * ext/nkf/lib/kconv.rb (Kconv::toeuc): remove -m0 [ruby-dev:29505]
20070 Tue Sep  5 22:06:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20072         * ext/tk/tcltklib.c: use rb_ary_new3() since RARRAY_LEN() is not l-value.
20074         * ext/tk/tkutil/tkutil.c: use RARRAY_PTR() and RARRAY_LEN() and etc.
20075           fixed: [ruby-dev:29473]
20077 Tue Sep  5 06:47:22 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20079         * time.c (time_to_s): variable declaration after an execution
20080           statement.
20082 Tue Sep  5 05:49:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20084         * file.c (path_check_0): check if sticky bit is set on parent
20085           directories for executable path.  fixed: [ruby-dev:29415]
20087 Tue Sep  5 05:03:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20089         * numeric.c (fix_plus): addition in Fixnum will never overflow
20090           long.  a patch from Ondrej Bilka <neleai at seznam.cz>.
20091           [ruby-core:08794]
20093         * numeric.c (fix_minus): ditto.
20095         * bignum.c (rb_big_pow): eagerly truncate resulting bignum.
20096           [ruby-core:08794]
20098 Mon Sep  4 23:15:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20100         * time.c (time_to_s): make it conform to RFC2822 date format.
20101           [ruby-dev:29467]
20103 Mon Sep  4 21:43:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20105         * ext/dbm/extconf.rb: create makefile according to the result of check
20106           for dbm header.  fixed: [ruby-dev:29445]
20108 Mon Sep  4 21:39:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
20110         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.
20112 Mon Sep  4 21:14:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20114         * time.c (time_strftime): include nul character.  fixed: [ruby-dev:29422]
20116 Mon Sep  4 16:39:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20118         * lib/cgi.rb (CGI::out): specify -x option for nkf.
20120         * lib/cgi.rb (CGI::out): should not convert utf-8 implicitly using
20121           NKF.  it is too Japanese centric.
20123 Mon Sep  4 14:23:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20125         * ext/dbm/extconf.rb (db_check): remove debug print.
20127 Mon Sep  4 06:46:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20129         * parse.y (rb_id2sym): intern if id is attrset_id.
20130           [ruby-dev:29420] [ruby-dev:29447]
20132 Mon Sep  4 01:25:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20134         * eval.c (rb_f_local_variables): list symbols.
20136         * struct.c (rb_struct_s_members_m): ditto.
20138         * variable.c (ivar_i): ditto.
20140         * variable.c (gvar_i): ditto.
20142         * variable.c (cv_i): ditto.
20144 Sun Sep  3 20:47:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20146         * ruby.h (SYMBOL_P): Qnil and Qfalse are not Symbol.
20148 Sun Sep  3 15:32:44 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20150         * lib/mkmf.rb: get rid of nil.to_s.
20152 Sun Sep  3 06:24:38 2006  Tanaka Akira  <akr@fsij.org>
20154         * ext/socket/socket.c (ruby_connect): sockerrlen should be socklen_t.
20156 Sun Sep  3 04:40:42 2006  Tanaka Akira  <akr@fsij.org>
20158         * ext/socket/extconf.rb: check arpa/inet.h for ntohs.
20160         * ext/socket/socket.c: include arpa/inet.h if available.
20162 Sat Sep  2 23:59:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20164         * string.c (Init_String): undef Symbol#new.
20166         * struct.c (rb_struct_s_def): wrong symbol detection.
20168 Sat Sep  2 23:59:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20170         * string.c (str_to_id): a bug caused by premature optimization.
20172 Sat Sep  2 23:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20174         * object.c (Init_Object): move symbol related code to string.c
20176         * string.c (Init_String): Symbol as subclass of String.
20178         * parse.y (rb_intern2): handle symbol as strings.
20180         * string.c (str_new): substring of symbols are mere strings, not
20181           symbols.
20183 Sat Sep  2 23:37:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20185         * ruby.h (struct RArray): embed small arrays.
20186           (RARRAY_LEN): defined for accessing array members.
20187           (RARRAY_PTR): ditto.
20189         * array.c: use RARRAY_LEN and RARRAY_PTR.
20191 Sat Sep  2 13:23:01 2006  Tanaka Akira  <akr@fsij.org>
20193         * common.mk (ia64.o): use the compiler driver to assemble ia64.s
20194           to use appropriate ABI.
20196 Sat Sep  2 12:06:35 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
20198         * lib/soap/generator.rb (SOAP::SOAPGenerator#encode_tag): do not dump
20199           XML attribute which value is nil.  value "" and nil both were dumped
20200           as 'attr="value"'.  [ruby-dev:29395]
20202 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20204         * eval.c (rb_eval): should handle when in else clause.  a patch
20205           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
20207         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
20209 Sat Sep  2 12:00:32 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
20211         * lib/csv.rb (CSV::IOReader#initialize): use String#[](pos, len)
20212           instead of String#[](idx) to check utf BOM.  follows String#[](idx)
20213           behavior change of 1.9.
20215 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20217         * eval.c (rb_eval): should handle when in else clause.  a patch
20218           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
20220         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
20222 Fri Sep  1 22:07:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20224         * ruby.h (RSTRING_EMBED_LEN_MASK): uses 5 bits to support 64bit
20225           environment.  [ruby-dev:29369]
20227 Fri Sep  1 22:02:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20229         * string.c (rb_str_resize): should copy embedded string to
20230           malloc'ed buffer.  a patch from <nobu at ruby-lang.org> in
20231           [ruby-dev:29369].  fixed: [ruby-dev:29368]
20233         * string.c (rb_str_ord): use %ld specifier since STRING_LEN() is a
20234           long.  [ruby-dev:29369]
20236 Fri Sep  1 21:41:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20238         * ext/socket/socket.c (socks_init): typo fixed.  a patch from Sven
20239           Klemm <sven at c3d2.de>.  [ruby-core:08770]
20241 Fri Sep  1 14:22:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
20243         * array.c (rb_ary_shuffle): RDoc fixed.
20245 Fri Sep  1 13:52:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
20247         * ext/tk/lib/tk/font.rb: TkFont#current_configinfo() doesn't work
20248           on Tcl/Tk8.x.
20250 Fri Sep  1 09:32:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20252         * lib/irb/ruby-lex.rb (RubyLex::getc): should not push nil into
20253           reading buffer (@readed).  reported in
20254           <http://jarp.does.notwork.org/diary/200608c.html#200608311>.
20256 Thu Aug 31 23:59:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20258         * lib/mkmf.rb (configuration): follow nil.to_s.
20260 Thu Aug 31 20:50:46 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20262         * lib/mkmf.rb (create_makefile): follow nil.to_s.
20264         * win32/resource.rb: ditto.
20266 Thu Aug 31 20:21:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20268         * eval.c (search_required): use RSTRING_PTR and RSTRING_STR.
20270         * file.c (test_identical, rb_file_s_truncate): ditto.
20272         * io.c (pipe_open, rb_io_reopen): ditto.
20274         * object.c (nil_plus): ditto.
20276         * process.c (proc_spawn_n, rb_spawn): ditto.
20278         * util.c (ruby_add_suffix): ditto.
20280         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
20282         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): ditto.
20284         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): ditto.
20286         * ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.
20288         * ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.
20290 Thu Aug 31 18:23:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20292         * ruby.h (struct RString): embed small strings.
20293           (RSTRING_LEN): defined for accessing string members.
20294           (RSTRING_PTR): ditto.
20296         * string.c: use RSTRING_LEN and RSTRING_PTR.
20298 Thu Aug 31 17:16:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20300         * array.c (rb_ary_shuffle_bang): new method.
20302         * array.c (rb_ary_shuffle): ditto.
20304         * random.c (genrand_real): ditto.
20306         * random.c (genrand_int32): export the function.
20308         * random.c (Init_Random): initialize random seed at the
20309           beginning.
20311 Thu Aug 31 13:12:06 2006  why the lucky stiff  <why@ruby-lang.org>
20313         * eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
20314           along with ruby_cref, for use by the sandbox. [ruby-core:08762]
20316         * node.h: ditto.
20318 Wed Aug 30 12:01:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20320         * numeric.c (flo_hash): improve collision.
20322         * string.c (rb_memhash): new generic function to calculate hash value
20323           for memory chunk.
20325 Tue Aug 29 19:10:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20327         * hash.c (rb_hash_s_create): fixed memory leak, based on the patch
20328           by Kent Sibilev <ksruby at gmail.com>.  fixed: [ruby-talk:211233]
20330 Mon Aug 28 11:29:46 2006  Eric Hodel  <drbrain@segment7.net>
20332         * eval.c, parse.y: Revert.
20333         * ext/.document: Add digest.c.
20334         * ext/digest/digest.c: Make RDoc show up.
20335         * ext/io/wait.c: Fix call-seq in RDoc.
20337 Mon Aug 28 08:03:20 2006  Eric Hodel  <drbrain@segment7.net>
20339         * ext/.document: Add C files with RDoc.
20340         * ext/digest/digest.c: Convert to RDoc.
20341         * ext/io/wait.c: ditto.
20342         * lib/rdoc/parsers/parse_rb.rb: Fix typo.  Submitted by
20343           <calamitas at gmail.com>.  [ruby-core:08724]
20345 Mon Aug 28 07:21:47 2006  Eric Hodel  <drbrain@segment7.net>
20347         * file.c (File#size?): Fix documentation submitted by Rick Ohnemus.
20348           ruby-Bugs-5529.  [ruby-core:08725]
20350 Sun Aug 27 21:41:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
20352         * oniguruma.h: Version 4.4.0
20354         * regint.h: ditto.
20356         * regparse.h: ditto.
20358         * regexec.c: ditto.
20360         * regcomp.c ditto.
20362         * regparse.c: ditto.
20364 Sat Aug 26 08:03:03 2006  Tadayoshi Funaba  <tadf@dotrb.org>
20366         * lib/date.rb, lib/date/format.rb: updated based on date2 3.8.2.
20368 Fri Aug 25 21:15:22 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
20370         * common.mk: add regint.h and oniguruma.h to dependence.
20372         * ext/strscan/depend: ditto.
20374 Fri Aug 25 20:35:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20376         * test/wsdl/document/echo.rb: removed.
20378         * test/wsdl/document/test_rpc.rb: remove echo.rb after test.
20379           [ruby-dev:29337]
20381 Fri Aug 25 17:02:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20383         * gc.c (gc_sweep): typo fixed.
20385 Fri Aug 25 16:05:50 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20387         * object.c (sym_call): check if the receiver is given.
20389 Fri Aug 25 01:10:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20391         * object.c (rb_Integer): Integer(nil) should raise TypeError.
20392           [ruby-talk:210205]
20394         * object.c (nil_to_s): no longer returns empty string but "nil".
20395           [ruby-talk:210205]
20397         * lib/mkmf.rb: avoid COMMON_HEADERS being nil.
20399 Wed Aug 23 00:25:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20401         * lib/rexml/source.rb (REXML::IOSource#initialize): encoding have to
20402           be set with the accessor.  fixed: [ruby-list:42737]
20404 Tue Aug 22 19:21:00 2006  Minero Aoki  <aamine@loveruby.net>
20406         * lib/net/smtp.rb: parameter `to_addrs' might be an Array,
20407           .flatten is required. [ruby-dev:29316]
20409 Tue Aug 22 18:47:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20411         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_method):
20412           rdoc documents C module methods as instance methods. a patch in
20413           [ruby-core:08536].
20415 Tue Aug 22 12:35:57 2006  NARUSE, Yui  <naruse@ruby-lang.org>
20417         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): fix regexp for
20418           euc-jp [ruby-dev:29344]
20420 Sun Aug 20 11:46:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20422         * numeric.c (num_step): also return an enumerator object if no block
20423           is given.
20425 Sat Aug 19 16:47:51 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
20427         * ext/win32ole/win32ole.c (hash2named_arg): accept hash argument
20428           of symbol key.
20430         * test/win32ole/test_win32ole.rb
20431           ditto.
20433 Sat Aug 19 11:28:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20435         * file.c (rb_file_s_rename): use errno if set properly.
20436           fixed: [ruby-dev:29293]
20438 Fri Aug 18 01:05:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20440         * lib/cgi.rb (CGI::out): specify -m0 to disable MIME decode.  a
20441           patch from Fujioka <fuj at rabbix.jp>.  [ruby-dev:29284]
20443 Thu Aug 17 19:15:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20445         * file.c (rb_stat_[rRwWxX]): check for super user.
20446           fixed: [ruby-core:08616]
20448 Thu Aug 17 14:47:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20450         * lib/mkmf.rb: added rdoc by Daniel Berger.  [ruby-core:08177]
20452 Wed Aug 16 17:46:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20454         * marshal.c (r_byte): IO#getc returns one byte string now.
20455           fixed: [ruby-dev:29255]
20457 Wed Aug 16 17:22:44 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20459         * common.mk (pre-install-local): remove unnecessary code.
20460           [ruby-dev:29249]
20462 Wed Aug 16 11:45:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20464         * process.c (proc_setuid, proc_setgid, proc_seteuid, proc_setegid):
20465           get rid of bogus implementations on Mac OS X.
20467 Wed Aug 16 11:09:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20469         * ruby.c (set_arg0): fill argv other than the first with an empty
20470           string instead of NULL.
20472 Tue Aug 15 11:21:08 2006  Minero Aoki  <aamine@loveruby.net>
20474         * lib/net/smtp.rb: support SMTP/SSL.  Thanks Kazuhiro NISHIYAMA.
20476         * lib/net/smtp.rb: new method SMTP.use_ssl?
20478         * lib/net/smtp.rb: new method SMTP.enable_ssl.
20480         * lib/net/smtp.rb: new method SMTP.disable_ssl.
20482         * lib/net/smtp.rb: new method SMTP.default_ssl_port.
20484         * lib/net/smtp.rb: new method SMTP.default_tls_port.
20486         * lib/net/smtp.rb: now SMTP#enable_tls accepts a SSLContext
20487           object, instead of a verity and cert.  [FEATURE CHANGE]
20489         * lib/net/smtp.rb: new method SMTP.ssl_context.
20491         * lib/net/smtp.rb: new method SMTP.default_ssl_context.
20493         * lib/net/smtp.rb: export SMTP.authenticate.
20495         * lib/net/smtp.rb: export SMTP.auth_plain.
20497         * lib/net/smtp.rb: export SMTP.auth_login.
20499         * lib/net/smtp.rb: export SMTP.auth_cram_md5.
20501         * lib/net/smtp.rb: export SMTP.starttls.
20503         * lib/net/smtp.rb: export SMTP.helo.
20505         * lib/net/smtp.rb: export SMTP.ehlo.
20507         * lib/net/smtp.rb: export SMTP.mailfrom.
20509         * lib/net/smtp.rb: export SMTP.rcptto.
20511         * lib/net/smtp.rb: export SMTP.rcptto_list.
20513         * lib/net/smtp.rb: export SMTP.data.
20515         * lib/net/smtp.rb: export SMTP.quit.
20517 Sat Aug 12 22:33:06 2006  Eric Hodel  <drbrain@segment7.net>
20519         * string.c (String#split): Describe grouping behavior.  Patch by Jan
20520           Svitok <jan.svitok at gmail.com>.  [ruby-core:08603]
20522 Sun Aug 13 12:08:02 2006  Tanaka Akira  <akr@fsij.org>
20524         * ext/socket/socket.c: ANSIfied.  [ruby-core:08601]
20526 Sat Aug 12 15:55:32 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20528         * configure.in, bcc32/Makefile.sub, win32/Makefile.sub, win32/dir.h,
20529           win32/win32.c, win32/win32.h: large file support for win32.
20531 Fri Aug 11 15:39:25 2006  Eric Hodel  <drbrain@segment7.net>
20533         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_body): Make RDoc
20534           ignore C function prototypes.  Patch by Tilman Sauerbeck
20535           <tilman at code-monkey.de>.  [ruby-core:8574]
20536         * lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
20537           documented.
20539 Wed Aug  9 16:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20541         * lib/net/smtp.rb (Net::SMTP::auth_cram_md5): use ord to retrieve
20542           bytes from strings.  a patch from WATANABE Tetsuya
20543           <Tetsuya.WATANABE at nifty.com>.  [ruby-dev:29240]
20545 Tue Aug  8 23:49:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20547         * lib/irb/extend-command.rb (IRB::ExtendCommandBundle): pacify
20548           RDoc.  a patch from Eric Hodel <drbrain at segment7.net>.
20549           [ruby-core:08522]
20551 Tue Aug  8 19:26:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20553         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_string):
20554           affected by str[0] returns 1 char string.  [ruby-dev:29223]
20556         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_labels):
20557           ditto.
20559 Tue Aug  8 12:28:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20561         * parse.y (arg): allow newlines before ternary colon.  [ruby-dev:29189]
20563 Mon Aug  7 17:56:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20565         * ext/bigdecimal/bigdecimal.c, ext/digest/rmd160/rmd160ossl.c,
20566           ext/digest/sha1/sha1ossl.c, ext/readline/readline.c: move
20567           inclusion of config.h to pacify AIX.  a patch from Yutaka
20568           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29197]
20570 Mon Aug  7 15:55:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20572         * ext/syck/syck.c (syck_move_tokens): should avoid negative
20573           memmove.  [ruby-list:42625]
20575 Mon Aug  7 14:37:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20577         * configure.in, common.mk: AIX link issue.  a patch from Yutaka
20578           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29190]
20580         * ext/socket/socket.c: AIX socket support.  [ruby-dev:29190]
20582 Mon Aug  7 12:05:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20584         * dln.c, eval.c, gc.c, ruby.h: shut up AIX alloca warning.
20585           a patch from Yutaka Kanemoto <kinpoco at gmail.com>.
20586           [ruby-dev:29191]
20588 Sun Aug  6 20:34:24 2006  Tadayoshi Funaba  <tadf@dotrb.org>
20590         * lib/date/format.rb (str[fp]time): %[EO]U didn't denote %U.
20592 Sun Aug  6 17:12:12 2006  Tanaka Akira  <akr@fsij.org>
20594         * io.c (io_reopen): STDERR.reopen(open("/dev/tty", "w")) should not
20595           clear FMODE_PREP in STDERR.
20597 Sat Aug  5 22:53:41 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
20599         * oniguruma.h: Version 4.2.2
20601         * regint.h: ditto.
20603         * regparse.h: ditto.
20605         * regexec.c: ditto.
20607         * regcomp.c ditto.
20609         * regerror.c: ditto.
20611         * regparse.c: ditto.
20613 Sat Aug  5 17:07:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20615         * parse.y (top_local_setup): local_vars[-1] should point
20616           ruby_scope itself to protect local_tbl from garbage collection.
20617           [ruby-dev:29049]
20619 Sat Aug  5 13:49:43 2006  Tadayoshi Funaba  <tadf@dotrb.org>
20621         * lib/date/format.rb (str[fp]time): "%\n" means "\n".
20623 Fri Aug  4 12:13:22 2006  Eric Hodel  <drbrain@segment7.net>
20625         * lib: Clean up files for RDoc.
20626         * lib/.document: Include most of the standard library in RDoc
20627           generation.
20628         * lib/rdoc/ri/ri_formatter.rb: Don't unescape HTML in HtmlFormatter.
20629           Submitted by <ksruby at gmail.com>.  [ruby-core:08392].
20630         * lib/drb/ssl.rb: Close socket on SSLError [ruby-core:7197]
20632 Fri Aug  4 18:59:49 2006  Keiju Ishitsuka  <keiju@ruby-lang.org>
20634         * lib/irb/{init.rb,ruby-lex.rb,slex.rb}: can't input '\c' for
20635           [ruby-core: 7122]. and support for ruby1.8.X
20637 Fri Aug  4 14:02:14 2006  James Edward Gray II  <james@grayproductions.net>
20639         * lib/date/format.rb (__strptime, strftime): allow multi-line patterns
20640           in Date#strftime the same as Time#strftime accepts.
20641           fixed: [ruby-core:08466]
20643 Fri Aug  4 13:56:51 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20645         * pack.c (pack_pack): check argument overrun for 'P'.  based on a
20646           patch by rucila <rucila at yahoo.cojp>.  fixed: [ruby-dev:29182]
20648 Fri Aug  4 02:42:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20650         * sprintf.c (rb_str_format): a bug in %c type check.
20652 Fri Aug  4 01:28:19 2006  Tanaka Akira  <akr@fsij.org>
20654         * io.c (io_reopen): STDERR.reopen(File.open("/dev/null", "w")) should
20655           not fclose stderr.
20657 Thu Aug  3 15:16:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20659         * range.c (range_include): should always call Enumerable#include?
20660           (not #===) for non numeric end points.  [ruby-core:08477]
20661           [ruby-core:08496]
20663 Mon Jul 31 16:51:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20665         * win32/win32.c (exit_handler): new function; release winsock and
20666           environment work area.
20668         * win32/win32.c (NTInitialize): setup exit_handler.
20670         * win32/win32.c (StartSockets): use exit_handler.
20672         * win32/win32.c (rb_w32_getenv): use GetEnvironmentStrings() instead
20673           of GetEnvironmentVariable(), because the latter cannot distinguish
20674           whether a null environment variable exists or not.
20675           fixed: [ruby-talk:205123]
20677 Mon Jul 31 16:15:13 2006  Tanaka Akira  <akr@fsij.org>
20679         * test/ruby/test_process.rb (TestProcess#test_rlimit_nofile):
20680           setrlimit may fail with EINVAL.
20681           reported by MIYAMUKO Katsuyuki.  [ruby-dev:29174]
20683 Mon Jul 31 09:22:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20685         * ruby.h: use ifdef (or defined) for macro constants that may or
20686           may not be defined to shut up gcc's -Wundef warnings.
20687           [ruby-core:08447]
20689 Mon Jul 31 13:38:13 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
20691         * lib/webrick/httprequest.rb (WEBrick::HTTPReuqest#parse_uri): improve
20692           for the value of IPv6 address in the Host: header field.
20694 Sun Jul 30 23:26:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20696         * eval.c (rb_call0): trace call/return of method defined from block.
20697           fixed: [ruby-core:08329]
20699         * eval.c (rb_trap_eval): make the current thread runnable to deal with
20700           exceptions which occurred within the trap.  fixed: [ruby-dev:27729]
20702         * lib/cgi/session.rb, lib/cgi/session/pstore.rb: suppress warnings.
20703           fixed: [ruby-talk:204896]
20705 Sat Jul 29 06:12:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
20707         * ext/tk/lib/multi-tk.rb: freeze ip_name for security reason.
20709 Sat Jul 29 01:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20711         * lib/logger.rb: improves the amount of documentation that Rdoc
20712           picks up when processing logger.rb by moving the require
20713           statement back before the comment block.  a patch from Hugh
20714           Sasse <hgs at dmu.ac.uk>.  [ruby-core:08422]
20716 Fri Jul 28 17:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20718         * ext/curses/curses.c (NUM2CH, CH2FIX): use single char strings.
20720 Fri Jul 28 14:09:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20722         * eval.c (rb_call): fixed typo in cache look-up.  [ruby-dev:29167]
20724 Fri Jul 28 10:41:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20726         * eval.c (rb_call): a bug in method cache look-up.
20727           http://www.rubyist.net/~matz/20060720.html#c04
20729 Fri Jul 28 10:19:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20731         * sprintf.c (rb_f_sprintf): documentation update patch from Jacob
20732           Fugal <lukfugl at gmail.com>.  [ruby-core:08418]
20734 Fri Jul 28 09:41:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20736         * time.c (time_to_s): fixed typo.  [ruby-dev:29162]
20738 Fri Jul 28 00:26:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20740         * math.c (domain_check): ANSI style function arguments
20742         * math.c (math_log): too few argument to domain_check().
20744 Thu Jul 27 21:19:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20746         * math.c (domain_check): a new function to check domain error
20747           explicitly for systems that return NaN like FreeBSD.
20748           [ruby-core:07019]
20750         * math.c (math_acos, math_asin, math_acosh, math_atanh, math_log,
20751           math_log10, math_sqrt): use domain_check().
20753         * math.c (math_sqrt): fix documentation flaw.
20755 Thu Jul 27 22:21:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20757         * time.c (time_to_s): fixed format mismatch.
20759 Thu Jul 27 18:12:12 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
20761         * time.c: need to declare time_utc_offset.
20763 Thu Jul 27 17:01:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20765         * io.c (io_close): always calls "close" method of the receiver.
20766           [ruby-core:6911] [ruby-core:8112]
20768 Thu Jul 27 16:41:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20770         * ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
20771           Solaris compiler.  [ruby-core:08114]
20773         * time.c (time_to_s): use +0900 style timezone string for local time.
20774           [ruby-dev:29143]
20776 Wed Jul 26 22:20:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20778         * configure.in: add support for as and ASFLAGS.  [ruby-dev:29138]
20780 Wed Jul 26 21:59:33 2006  Minero Aoki  <aamine@loveruby.net>
20782         * lib/net/http.rb (Net::HTTP#post, request_post, request): should
20783           set Content-Type: x-www-form-urlencoded by default.
20785         * lib/net/http.rb (Net::HTTPHeader#content_type): should return
20786           nil when there's no Content-Type.
20788         * lib/net/http.rb (Net::HTTPHeader#sub_type): should return nil
20789           when there's no sub Content-Type (e.g. "Content-Type: text").
20791         * lib/net/http.rb (Net::HTTPHeader#type_params): wrongly failed
20792           when there's no Content-Type.
20794 Wed Jul 26 18:38:13 2006  Minero Aoki  <aamine@loveruby.net>
20796         * ext/strscan/strscan.c (strscan_do_scan): always return nil if
20797           p->curr exceeds string size.
20799 Wed Jul 26 18:33:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20801         * eval.c (Init_eval): rename #invoke_method and
20802           #invoke_functional_method to __send and __send! respectively.
20804         * eval.c (remove_method): prohibit removing __send and __send!.
20806         * eval.c (rb_undef): prohibit undef'ing  __send and __send!.
20808         * eval.c (rb_eval): prohibit redefining  __send and __send!.
20810         * lib/delegate.rb (Delegator): preserve __send.
20812 Wed Jul 26 18:14:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20814         * ext/pty/pty.c (getDevice): retry once after GC on failure.
20815           [ruby-core:08282]
20817 Wed Jul 26 17:43:20 2006  Minero Aoki  <aamine@loveruby.net>
20819         * ext/strscan/strscan.c (strscan_do_scan):
20820           StringScanner.new("").scan(//) should return "". [ruby-Bugs:4361]
20822 Wed Jul 26 17:28:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20824         * sprintf.c (rb_str_format): prepend ".." to %u for negative bignum,
20825           but not "-".  fixed: [ruby-core:08167]
20827 Wed Jul 26 16:39:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20829         * string.c (rb_str_scan): add string modification check.
20830           [ruby-core:7216]
20832 Wed Jul 26 16:06:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20834         * lib/cgi.rb (CGI::QueryExtension::read_multipart): check
20835           multipart boundary end.  a patch from Fujioka <fuj at rabbix.jp>
20836           [ruby-dev:28470]
20838 Wed Jul 26 01:02:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20840         * configure.in: suppress warnings by automake 1.8 or later.
20842 Tue Jul 25 14:46:14 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20844         * lib/mkmf.rb (configuration): typo.
20846 Tue Jul 25 13:14:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20848         * process.c (rb_proc_times): rename hz to hertz to avoid name
20849           crash on AIX.  [ruby-dev:29126]
20851 Mon Jul 24 22:03:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20853         * eval.c (backtrace): skip frames successive on node and method name.
20855 Mon Jul 24 15:51:52 2006  Tanaka Akira  <akr@fsij.org>
20857         * ext/readline/readline.c (readline_readline): rl_deprep_term_function
20858           may be NULL with libedit.  reported by Ryan Davis.  [ruby-dev:29070]
20860 Mon Jul 24 15:19:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20862         * eval.c (rb_call0): revert last change.  [ruby-dev:29112]
20863           [ruby-core:08374]
20865 Sun Jul 23 22:59:49 2006  Tanaka Akira  <akr@fsij.org>
20867         * test/socket/test_unix.rb: disabled on cygwin.
20868           reported by Kouhei Yanagita.  [ruby-dev:29080]
20870 Fri Jul 21 23:57:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20872         * ruby.c (proc_options): script is never used while recursing.
20874 Fri Jul 21 21:21:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20876         * eval.c (rb_call0): include funcalled methods in caller list.
20877           fixed: [ruby-core:08290]
20879 Fri Jul 21 17:52:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20881         * object.c (rb_cstr_to_dbl): "9_e8" should consider "_e8" as
20882           trailing garbage so that it should return 9.0.  [ruby-dev:29088]
20884 Fri Jul 21 12:11:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20886         * ext/extmk.rb, lib/mkmf.rb (with_destdir): remove drive letter before
20887           prepending destdir on DOSISH.
20889 Fri Jul 21 04:17:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20891         * eval.c (rb_call): try local method look-up first for fcall, then
20892           normal method look-up.  [ruby-talk:202564]
20894         * eval.c (rb_get_method_body): save local method cache separately.
20896         * eval.c (search_method): export info whether method is local or
20897           not.
20899 Thu Jul 20 20:27:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20901         * object.c (rb_mod_attr): make Module#attr to be an alias to
20902           attr_reader.  [RCR#331]
20904 Thu Jul 20 15:07:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20906         * ruby.h: export classes/modules to implement sandbox.
20907           [ruby-core:08283]
20909 Wed Jul 19 19:40:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20911         * eval.c (rb_yield_0): should check args_args before lambda
20912           argument check.  [ruby-dev:29029]
20914 Tue Jul 18 23:53:59 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20916         * process.c (rb_f_system): shouldn't block SIGCHLD if it's not
20917           exist.
20919 Tue Jul 18 22:10:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20921         * process.c (rb_f_system): block SIGCHLD during the process
20922           execution, like glibc system(3) does.  [ruby-talk:202361]
20924 Tue Jul 18 23:10:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20926         * win32/win32.c (open_ifs_socket): should not use plain malloc.
20928         * win32/win32.c (rb_w32_opendir): should not use plain realloc.
20930 Tue Jul 18 18:05:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20932         * test/ruby/test_float.rb (TestFloat::test_strtod): update test to
20933           conform strtod change.
20935 Tue Jul 18 16:52:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20937         * eval.c (yield_under_i): argument should be passed in avalue
20938           form.  [ruby-dev:29044]
20940 Tue Jul 18 15:49:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20942         * pack.c (pack_unpack): propagate association array to copied
20943           string.  [ruby-core:08223]
20945         * pack.c (pack_unpack): return referenced string itself if it has
20946           same length as specified.  a patch from <nobu at ruby-lang.org>
20947           in [ruby-core:08225].
20949         * pack.c (pack_pack): taint 'p' packed strings.
20951 Tue Jul 18 15:19:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
20953         * intern.h (st_foreach_safe): fix prototype.
20955         * node.h (NODE_LMASK): bigger than long on LLP64.
20957         * missing/vsnprintf.c (BSD__uqtoa): new function to support LLP64.
20958           all changes are derived from [ruby-dev:29045]
20960 Tue Jul 18 14:03:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20962         * lib/webrick/httpserver.rb (WEBrick::HTTPServer::unmount): remove
20963           inpect argument from sprintf.  [ruby-dev:29039]
20965 Tue Jul 18 10:53:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20967         * object.c (rb_cstr_to_dbl): limit out-of-range message.
20969         * util.c (ruby_strtod): return end pointer even if ERANGE occurred.
20970           fixed: [ruby-dev:29041]
20972 Mon Jul 18 00:43:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20974         * util.c (ruby_strtod): stop at dot not followed by digits.
20975           fixed: [ruby-dev:29035]
20977 Tue Jul 18 00:01:27 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20979         * ext/extmk.rb: remove LIBRUBY_SO if static linked extensions exist.
20981 Mon Jul 17 23:30:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20983         * configure.in (rb_cv_msvcrt): defaulted to msvcrt.  Workaround for a
20984           bug of cygwin 1.5.20.
20986 Mon Jul 17 22:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20988         * ext/io/wait/wait.c (io_ready_p): protoize.
20990 Mon Jul 17 13:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
20992         * pack.c (define_swapx): should not use plain malloc.
20994         * ext/curses/curses.c (curses_getmouse): ditto.
20996 Mon Jul 17 12:58:41 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
20998         * configure.in: should use ac_cv_lib_dl_dlopen=no on MinGW.
21000 Mon Jul 17 11:47:35 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21002         * st.c: still need to include config.h on some platforms.
21004 Sat Jul 15 01:09:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21006         * st.c (malloc): use xmalloc/xcalloc instead of plain
21007           malloc/calloc, to detect memory allocation failure.  see
21008           <http://www.nongnu.org/failmalloc/>.
21010 Fri Jul 14 13:08:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21012         * ext/tk/lib/tk.rb: add methods for new features of latest Tcl/Tk8.5.
21014         * ext/tk/lib/tk/namespace.rb: ditto.
21016 Fri Jul 14 02:30:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21018         * lib/monitor.rb: document patch from Hugh Sasse <hgs at dmu.ac.uk>.
21019           [ruby-core:08205]
21021 Fri Jul 14 00:10:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21023         * array.c (rb_ary_pop): may cause realloc oscillation.  a patch
21024           from MORITA Naoyuki <mlgetter at kidou.sakura.ne.jp>.
21025           [ruby-dev:29028]
21027 Thu Jul 13 22:23:56 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21029         * ext/tk/lib/tk/composite.rb: improve handling of the classname on the
21030           option database for the widget class which includes TkComposite.
21032 Thu Jul 13 00:40:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21034         * ruby.h (FIX2LONG): returns integer of size of VALUE.
21035           [ruby-dev:29024]
21037         * ruby.h (FIX2ULONG): ditto.
21039 Wed Jul 12 20:05:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21041         * parse.y (f_args): allow post mandatory arguments after optional
21042           arguments.  [ruby-dev:29014]
21044         * parse.y (new_args_gen): allow post_args without rest_args.
21046         * eval.c (formal_assign): ditto.
21048         * parse.y (new_args_gen): check post argument duplication.
21050 Tue Jul 11 20:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21052         * ruby.h: export rb_cMethod.  [ruby-talk:201259]
21054 Tue Jul 11 19:13:33 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21056         * ext/tk/lib/multi-tk.rb: remove restriction on the class of
21057           pseudo-toplevel.
21059 Tue Jul 11 18:00:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21061         * ext/tk/lib/multi-tk.rb: security fix.
21063 Tue Jul 11 17:28:08 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21065         * string.c (rb_str_dump): need to extend len for \b.
21067 Tue Jul 11 15:29:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21069         * bignum.c (rb_int2big): use SIGNED_VALUE.  [ruby-dev:29019]
21071         * bignum.c (rb_int2inum, rb_uint2inum): use VALUE sized integer.
21073         * bignum.c (rb_big2long, rb_big2ulong): ditto.
21075         * numeric.c (rb_num2long, rb_num2ulong): ditto.
21077         * numeric.c (check_int, check_uint): ditto.
21079         * bignum.c (rb_quad_pack): typo fixed.
21081 Tue Jul 11 13:40:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21083         * bignum.c (bignorm): sizeof(long) may be smaller than
21084           sizeof(VALUE).  [ruby-dev:29013]
21086         * ruby.h (FIXNUM_MAX): fixnum may be bigger than long.
21088         * ruby.h (SIGNED_VALUE): signed integer of size of VALUE.
21090 Mon Jul 10 23:37:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21092         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_doc): remove
21093           splat star from return statements.
21095         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_obj): retrieve
21096           the first value from the result array if response has only one
21097           value.
21099 Mon Jul 10 22:00:00 2006  Shigeo Kobayashi  <shigek@ruby-lang.org>
21101         * ext/bigdecimal/bigdecimal.c: Allows '_' to appear within
21102           digits.  [ruby-dev:28872]
21104         * ext/bigdecimal/lib/bigdecimal/util.rb: Bug in to_r reported by
21105           [ruby-list:42533] fixed.
21107 Mon Jul 10 19:22:19 2006  Tanaka Akira  <akr@fsij.org>
21109         * gc.c (gc_sweep): expand heap earlier.
21110           reported by MORITA Naoyuki.  [ruby-dev:28960]
21112 Mon Jul 10 18:59:34 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21114         * ext/tk/lib/tk/font.rb: sorry. mistaken to patch.
21116 Mon Jul 10 18:46:52 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21118         * ext/tk/tcltklib.c: make SEGV risk lower at exit.
21120         * ext/tk/lib/tk.rb: ditto.
21122         * ext/tk/lib/multi-tk.rb: fail to call function-style methods on slave
21123           interpreters. The strategy (MultiTkIp_PseudoToplevel_Evaluable) to
21124           fix the problem is a little tricky. You may have to take care of
21125           conflicting with it.
21127         * ext/tk/lib/tk.rb: a little change for the pseudo-toplevel strategy.
21129         * ext/tk/lib/tk/font.rb: ditto.
21131         * ext/tk/lib/tk/msgcat.rb: ditto.
21133         * ext/tk/lib/tkextlib/itk/incr_tk.rb: ditto.
21135         * ext/tk/sample/demos-en/widget: fail to call function-style methods
21136           on sample scripts. To fix it, a strategy which similar to the way
21137           on MultiTiIp is used. Please take care when re-write and re-run a
21138           demo script on the Widget-Demo code viewer.
21140         * ext/tk/sample/demos-jp/widget: ditto.
21142 Mon Jul 10 17:32:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21144         * sample/test.rb: update test suites.
21146         * test/ruby/test_assignment.rb (TestAssignment::test_yield): ditto.
21148         * test/ruby/test_iterator.rb (TestIterator::test_itertest): ditto.
21150 Mon Jul 10 14:43:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21152         * eval.c (rb_call): remove erroneously restored prot_tag->blkid
21153           initialization.  [ruby-dev:28997]  [ruby-dev:29000]
21155 Mon Jul 10 13:58:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21157         * signal.c (install_nativethread_sighandler): commented out.
21159 Mon Jul 10 09:29:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21161         * eval.c (rb_clear_cache_for_remove): clear entries for included
21162           module.  fixed: [ruby-core:08180]
21164 Mon Jul 10 02:22:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21166         * eval.c (proc_invoke): should not overwrite block information in
21167           current frame.  [ruby-dev:28957]
21169         * eval.c (rb_yield_0): retrieve proper block object from the frame
21170           record.
21172         * eval.c (proc_alloc): return preserved block object if it's
21173           available.
21175 Mon Jul 10 01:48:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21177         * st.h (st_data_t): use pointer sized integer for st_data_t.
21178           [ruby-dev:28988]
21180 Sun Jul  9 18:06:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21182         * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling.
21184         * lib/mkmf.rb (create_makefile): prevent substitution of macro
21185           definition.  fixed: http://www.yotabanana.com/lab/20060624.html#p02
21187 Sun Jul  9 07:58:48 2006  Ryan Davis  <ryand@zenspider.com>
21189         * lib/rdoc/parsers/parse_f95.rb: massive overhaul from Yasuhiro
21190           Morikawa including new file suffixes, function support, public
21191           variables and constants, derived-types, defined operators and
21192           assignments, namelists, and subroutine and function
21193           arguments. Truly massive.
21195         * lib/rdoc/diagram.rb: diagrams are now cached.
21197         * lib/irb/completion.rb: fixed a crasher when completing against
21198           an unnamed class/module.
21200         * lib/rdoc/parsers/parse_c.rb: private comment (--/++) support in
21201           C-file rdoc.
21203         * lib/debug.rb: minor clarification in help.
21205         * lib/pp.rb: minor clarification on exception.
21207 Sun Jul  9 00:54:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21209         * eval.c (next_jump): deal with destination of next.
21210           fixed: [ruby-core:08169]
21212 Fri Jul  7 17:49:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21214         * string.c (rb_str_ord): extract lower byte.  fixed: [ruby-dev:28980]
21216         * lib/jcode.rb (String#succ!): fix for 1.9.  fixed: [ruby-dev:28979]
21218 Fri Jul  7 14:05:03 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21220         * win32/Makefile.sub (config.h): define FUNC_STDCALL/FUNC_CDECL.
21221           from [ruby-dev:28970].
21223 Fri Jul  7 00:38:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21225         * hash.c (rb_hash_default): should not call default procedure if
21226           no key is given.  [ruby-list:42541]
21228 Thu Jul  6 23:30:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21230         * process.c (rb_proc_times): use sysconf(_SC_CLK_TCK) value prior to
21231           HZ and CLK_TCK.  fixed: [ruby-talk:200293]
21233 Thu Jul  6 21:50:06 2006  Minero Aoki  <aamine@loveruby.net>
21235         * ext/racc/cparse/cparse.c: sync with original code, rev 1.8.
21237         * ext/racc/cparse/cparse.c: should mark CparseParams objects.
21239         * lib/racc/parser.rb: sync with original code, rev 1.8.
21241         * lib/racc/parser.rb: update coding style.
21243 Wed Jul  5 05:28:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21245         * parse.y (block_param): should allow block argument after splat
21246           and post splat args.
21248 Wed Jul  5 01:12:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21250         * test/ruby/test_lambda.rb (TestLambdaParameters::test_lambda_as_iterator):
21251           -> style block no longer available.  [ruby-dev:28958]
21253 Tue Jul  4 21:48:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21255         * ruby.c (proc_options): suppress warning on DOSISH.
21257 Tue Jul  4 15:12:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21259         * eval.c (rb_call): should not set prot_tag->blkid since it would
21260           never catch breaks at this level.  [ruby-dev:28922]
21262 Tue Jul  4 04:48:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21264         * bignum.c: ruby 1.9 HEAD 64 bit warnings clean up from
21265           <ville.mattila at stonesoft.com>.   [ruby-core:08120]
21267 Mon Jul  3 19:04:38 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21269         * ext/tk/tcltklib.c (ip_make_menu_embeddable): help to make a menu
21270           widget embeddable (pack, grid, and so on) like as a general widget.
21271           However, an embeddable menu may require to be defined some event
21272           bindings for general use.
21274         * ext/tk/lib/tk/event.rb: [bug fix] Tk.callback_break and
21275           Tk.callback_continue don't work on MultiTkIp.
21277         * ext/tk/lib/multi-tk.rb: ditto.
21279         * ext/tk/lib/tk.rb: lack of Tk.callback_return.
21281         * ext/tk/lib/tk/menu.rb: improve creating clone menus.
21283 Mon Jul  3 14:42:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21285         * ext/etc/extconf.rb (PW_UID2VAL, PW_GID2VAL): defaulted to conversion
21286           from int, and sys/types.h needs to be included before grp.h.
21287           fixed: [ruby-dev:28938]
21289 Mon Jul  3 10:44:01 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21291         * io.c (popen_exec): close file descriptors other than standard I/Os.
21292           fixed: [ruby-dev:28924]
21294 Mon Jul  3 05:15:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
21296         * test/openssl/test_asn1.c: String#[]= doesn't accept Integer.
21298 Mon Jul  3 01:14:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21300         * string.c (rb_str_inspect): encode \b (\010) for escape.
21301           [ruby-dev:28927]
21303         * string.c (rb_str_dump): ditto.
21305 Sun Jul  2 19:03:30 2006  Minero Aoki  <aamine@loveruby.net>
21307         * ext/racc/cparse/cparse.c: sync with original code, rev 1.7.
21309         * ext/racc/cparse/cparse.c: must require version.h to get
21310           RUBY_VERSION_CODE.
21312 Sun Jul  2 18:42:27 2006  Minero Aoki  <aamine@loveruby.net>
21314         * ext/racc/cparse/cparse.c: sync with original source code, rev
21315           1.6.
21317         * ext/racc/cparse/cparse.c: do not use rb_iterate to give a block
21318           to the method, use rb_block_call instead. [ruby-dev:28445]
21320 Sun Jul  2 11:22:03 2006  Tanaka Akira  <akr@m17n.org>
21322         * io.c (io_reopen): STDOUT.reopen(filename, "w+") didn't work.
21323           (rb_io_reopen): STDOUT.reopen(File.open(filename, "w+")) didn't work.
21325 Sat Jul  1 23:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21327         * eval.c (PUSH_FRAME): initialize frame->self.  [ruby-dev:28911]
21329 Sat Jul  1 17:00:42 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
21331         * test/webrick/utils.rb: use Proc#yield instead of Proc#call.
21332           [ruby-dev:28914]
21334 Sat Jul  1 15:15:49 2006  Tanaka Akira  <akr@m17n.org>
21336         * test/socket/test_nonblock.rb: add timeout to send/receive
21337           an empty UDP packet.
21338           [ruby-dev:28820]
21340 Fri Jun 30 23:46:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21342         * configure.in: should test isinf for Solaris with GCC compiler.
21343           a patch from <ville.mattila at stonesoft.com>.  [ruby-core:07791]
21345         * configure.in: -shared patch from Andrew Morrow
21346           <andrew.c.morrow at gmail.com>.  [ruby-core:08100]
21348 Fri Jun 30 19:35:41 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
21350         * lib/webrick/httputils.rb (WEBrick::HTTPUtils._escape): should
21351           use String#ord to get ascii code from the one-character string.
21352           [ruby-dev:28901]
21354 Thu Jun 29 23:56:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21356         * gc.c (gc_mark_children): a bug in NODE_BLOCK_PASS marking.
21357           [ruby-dev:28908]
21359 Thu Jun 29 23:04:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21361         * parse.y: use ARGSPUSH instead of ARGSCAT to prevent too much
21362           splat expansion.
21364         * eval.c (when_check): need to handle ARGSPUSH as well.
21366         * eval.c (block_orphan): lambda and proc from method are always
21367           orphan.
21369         * gc.c (gc_mark_children): proper marking for NODE_LAMBDA.
21371 Thu Jun 29 22:47:30 2006  Tanaka Akira  <akr@m17n.org>
21373         * eval.c (SETUP_ARGS0): avoid GC problem.
21374           [ruby-dev:28902]
21376 Thu Jun 29 18:58:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21378         * ext/bigdecimal/bigdecimal.c (BigDecimal_version): fix patch
21379           failure.
21381 Thu Jun 29 18:00:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21383         * ext/bigdecimal/bigdecimal.c: add RDoc document.  a patch from
21384           mathew <meta at pobox.com>.   [ruby-core:07050]
21386 Wed Jun 28 14:53:09 2006  Eric Hodel  <drbrain@segment7.net>
21388         * lib/optparse.rb: RDoc patch from Robin Stocker <robin@nibor.org>
21389           [ruby-core:08087]
21391 Wed Jun 28 23:23:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21393         * object.c (rb_cstr_to_dbl): underscores should appear only
21394           between digits.  [ruby-dev:28891]
21396 Wed Jun 28 19:04:34 2006  Tanaka Akira  <akr@m17n.org>
21398         * test/socket/test_unix.rb: test_seqpacket_pair removed.
21399           [ruby-dev:28846]
21401 Wed Jun 28 13:51:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21403         * eval.c (when_check): arbitrary values are allowed after splats.
21404           fixed: [ruby-dev:28879]
21406 Wed Jun 28 09:16:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21408         * parse.y (primary): remove meaningless else-only case statement
21409           syntax.
21411 Wed Jun 28 08:08:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21413         * eval.c (rb_eval): problem to handle else part.  [ruby-dev:28873]
21415 Wed Jun 28 01:48:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21417         * eval.c (rb_eval): support splat in when expression list.
21418           [ruby-dev:28822]
21420         * eval.c (when_check): a new auxiliary function for case match.
21422         * eval.c (when_cond): ditto.
21424 Wed Jun 28 01:05:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21426         * object.c (rb_cstr_to_dbl): should not skip '_' at the beginning
21427           of a string.  [ruby-dev:28830]
21429         * bignum.c (rb_cstr_to_inum): ditto.
21431 Tue Jun 27 23:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21433         * string.c: RDoc update for =~ method.  a patch from Alex Young
21434           <alex at blackkettle.org>.  [ruby-core:08068]
21436 Tue Jun 27 22:47:18 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21438         * ext/tk/tcltklib.c: forgot to update TCLTKLIB_RELEASE_DATE.
21440         * ext/tk/lib/tk.rb (tk_tcl2ruby): [bug fix] sometimes fail to convert
21441           a tcl string to a ruby object if the tcl string includes "\n".
21443 Tue Jun 27 20:05:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21445         * io.c (pipe_open): backout unnecessary fix on 2006-06-26.
21446           [ruby-dev:28865]
21448         * eval.c (rb_yield_0): exact argument number check now done only
21449           for lambda Proc.
21451         * eval.c (rb_yield_0): add check for number of arguments, if
21452           there's one lambda block parameter.
21454 Tue Jun 27 16:04:05 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
21456         * win32/win32.h: define isascii on MinGW for msvcrt compatibility.
21458         * configure.in: set ac_cv_header_sys_time_h=no on MinGW
21459           for msvcrt compatibility.
21461 Tue Jun 27 11:36:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21463         * ext/etc/etc.c (setup_passwd, setup_group): allow bignum uid, gid and
21464           so on.  [ruby-talk:199102]
21466 Tue Jun 27 10:46:53 2006  Tanaka Akira  <akr@m17n.org>
21468         * eval.c (rb_yield_0): avoid core dump.  [ruby-dev:28840]
21470 Mon Jun 26 11:03:00 2006  Eric Hodel  <drbrain@segment7.net>
21472         * lib/rdoc/ri: Add options to limit the ri search path.
21474 Tue Jun 27 01:31:59 2006  Tanaka Akira  <akr@m17n.org>
21476         * ext/socket/socket.c (bsock_recv_nonblock): new method
21477           BasicSocket#recv_nonblock.
21478           (udp_recvfrom_nonblock): renamed from ip_recvfrom_nonblock.
21479           IPSocket#recvfrom_nonblock is moved to UDPSocket#recvfrom_nonblock.
21480           (unix_recvfrom_nonblock): removed.
21481           UNIXSocket#recvfrom_nonblock is removed.
21483 Tue Jun 27 00:52:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21485         * ext/ripper/eventids2.c (token_assoc): added tCHAR, which is not
21486           under 256 now.  fixed: [ruby-dev:28832]
21488 Mon Jun 26 23:42:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21490         * eval.c (call_trace_func): no check for argument number of the
21491           callback.  fixed: [ruby-dev:28812]
21493 Mon Jun 26 18:37:44 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21495         * ext/tk/tcltklib.c (ip_delete): fix SEGV when a slave-ip is
21496           deleted on callback.
21498 Mon Jun 26 15:40:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21500         * ext/socket/socket.c (sock_accept): revert to avoid ambiguity of
21501           argument evaluation order.  [ruby-dev:28861]
21503         * ext/socket/socket.c (sock_accept_nonblock): ditto.
21505 Mon Jun 26 10:47:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21507         * io.c (pipe_open): avoid closing uninitialized file descriptors.
21508           a patch from <tommy at tmtm.org> [ruby-dev:28600]
21510 Sun Jun 25 23:02:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21512         * Makefile.in, mkconfig.rb: catch-up for latest autoconf.
21514 Sun Jun 25 17:44:16 2006  Tanaka Akira  <akr@m17n.org>
21516         * parse.y (paren_args): wrap $2 by escape_Qundef because it may be
21517           Qundef.  [ruby-dev:28843]
21519 Sun Jun 25 17:18:33 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
21521         * ext/win32ole/win32ole.c(ole_invoke): support some kind of
21522           method of word. [ruby-Bugs#3237]
21524         * test/win32ole/test_word.rb: ditto.
21526 Sat Jun 24 23:48:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21528         * parse.y: replace terminal token names with more descriptive
21529           name, i.e. kEND to keyword_end.  [ruby-list:42477]
21531 Sat Jun 24 23:37:41 2006  Tanaka Akira  <akr@m17n.org>
21533         * eval.c (rb_eval): use rb_ary_new2 instead of rb_ary_new4 to avoid
21534           GC problem.
21535           (rb_yield_values): use rb_ary_new2 instead of rb_ary_new4.
21537         * array.c (rb_ary_new4): don't set len as n if contents is not
21538           initialized.  make it safe with GC.
21540           [ruby-dev:28826]
21542 Fri Jun 23 23:35:32 2006  Tanaka Akira  <akr@m17n.org>
21544         * ruby.h, lib/drb/drb.rb, lib/drb/invokemethod.rb: remove Values class.
21545           [ruby-dev:28805]
21547 Fri Jun 23 17:27:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21549         * eval.c (rb_block_pass): removed.
21551         * eval.c (rb_thread_start_1): use rb_proc_yield() instead of
21552           rb_block_pass().  fixed: [ruby-dev:28794]
21554 Thu Jun 22 11:52:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21556         * lib/net/http.rb (Net::HTTPResponse): duplicated error 501;
21557           HTTPInternalServerError should be error 500.  [ruby-core:08037]
21559 Thu Jun 22 11:47:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21561         * variable.c (rb_mod_name): returns nil for anonymous modules.
21562           [ruby-talk:198440]
21564 Thu Jun 22 10:31:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21566         * string.c (rb_str_aref): "abc"[3] should not return an empty
21567           string but nil.  [ruby-dev:28786]
21569 Thu Jun 22 05:15:58 2006  Tanaka Akira  <akr@m17n.org>
21571         * ext/socket/socket.c (sock_s_socketpair): try GC only once.
21572           [ruby-dev:28778]
21574 Wed Jun 21 21:20:31 2006  Tadayoshi Funaba  <tadf@dotrb.org>
21576         * lib/date.rb (jd_to_commercial): now works fine even if in
21577           mathn-ized context.
21579 Wed Jun 21 17:29:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21581         * ext/socket/getaddrinfo.c (freeaddrinfo, get_name): fixed typo.
21583         * ext/tk/tcltklib.c (tcl_eval, tcl_global_eval): ditto.
21585         * ext/zlib/zlib.c (rscheck): constified.
21587 Wed Jun 21 17:18:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21589         * lib/pp.rb (PP::PPMethods::seplist): should have preserved
21590           original reference to the array.  [ruby-dev:28747]
21592 Wed Jun 21 14:35:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21594         * parse.y (block_param): do not use multiple assignment for a sole
21595           block parameter.  [ruby-dev:28710]
21597         * eval.c (rb_yield_0): pass a raw yielded value to a sole block
21598           parameter if a value is passed by yield.
21600         * eval.c (proc_invoke): args may not be an array.
21602         * eval.c (rb_proc_yield): pass original value without wrapping
21603           it in an array.
21605 Wed Jun 21 14:06:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21607         * parse.y (method_call): remove (fn)(args) style lambda
21608           invocation, add fn.(args) instead.
21610 Wed Jun 21 08:39:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21612         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): merge Date
21613           and Time processing.  [ruby-core:08033]
21615 Wed Jun 21 03:01:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21617         * eval.c, file.c, etc.: code-cleanup patch from Stefan Huehner
21618           <stefan at huehner.org>.  [ruby-core:08029]
21620 Wed Jun 21 01:40:25 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21622         * parse.y (reswords): modifier token is no longer returned in fname
21623           state.  fixed: [ruby-dev:28775]
21625 Tue Jun 20 23:28:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21627         * ext/extmk.rb (parse_args): provisional catch-up for the recent changes.
21629         * lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto.
21631 Tue Jun 20 11:07:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21633         * eval.c (proc_invoke): intercept break and return from lambda
21634           Proc objects.  [ruby-dev:28742]
21636         * eval.c (proc_invoke): remove unnecessary YIELD_PROC_CALL flag.
21638         * eval.c (YIELD_EXACT_ARGS): renamed from YIELD_LAMBDA_CALL, which
21639           is no longer related to the behavior turned on by this flag.
21641         * eval.c (return_jump): no need to care about PROT_YIELD.
21643         * eval.c (break_jump): no jump to toplevel PROT_THREAD tag.
21645         * eval.c (rb_yield_0): fix confusion between lambda (which is a
21646           property of a proc) and pcall (which depends on whether it's
21647           called via yield or call).
21649         * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL.
21651         * eval.c (rb_block_pass): update blkid in prot_tag.
21653 Mon Jun 19 23:40:59 2006  NARUSE, Yui  <naruse@ruby-lang.org>
21655           * ext/nkf/lib/kconv.rb: remove default -m0 and fix document.
21657           * ext/nkf/nkf-8/{nkf.c, config.h, utf8tbl.c, utf8tbl.h}:
21658             imported nkf 2.0.7.
21660 Mon Jun 19 17:02:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21662         * sample/test.rb (proc_return3): return within non lambda block
21663           should terminate surrounding method.  [ruby-dev:28741]
21665 Mon Jun 19 13:22:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21667         * ext/socket/socket.c (unix_sysaccept): typo fixed.
21669         * ext/socket/socket.c (sock_connect): remove an unused local
21670           variable tmpaddr.
21672 Mon Jun 19 02:10:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21674         * ext/socket/socket.c (tcp_accept_nonblock): forgot to remove
21675           abandoned hacks.  [ruby-dev:28740]
21677 Mon Jun 19 00:00:17 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21679         * ext/tk/lib/multi-tk.rb: fix bug: initialize improper tables.
21681 Sun Jun 18 20:28:43 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
21683         * ext/win32ole/win32ole.c (fole_methods): The return value
21684           of WIN32OLE#ole_methods should include PROPERTYPUTREF methods.
21686         * ext/win32ole/win32ole.c (fole_put_methods): The return value
21687           of WIN32OLE#ole_put_methods should include PROPERTYPUTREF methods.
21689         * test/win32ole/test_ole_methods.rb: ditto.
21691         * ext/win32ole/win32ole.c (ole_propertyput): support
21692           PROPERTYPUTREF. [ruby-talk:183042]
21694         * test/win32ole/test_propertyputref.rb: ditto.
21696 Sat Jun 17 23:42:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21698         * eval.c (Init_eval): add aliases invoke_method and
21699           invoke_functional_method corresponding send and funcall
21700           respectively.  [ruby-talk:197512]
21702         * parse.y (parser_yylex): returns the most typical keyword token
21703           on EXPR_FNAME.  [ruby-core:7995]
21705         * ext/socket/socket.c: protoize.
21707 Sat Jun 17 22:17:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21709         * lib/mathn.rb (Integer::prime_division): raise ZeroDivisionError
21710           on zeros.  [ruby-dev:28739]
21712 Sat Jun 17 14:53:32 2006  Tanaka Akira  <akr@m17n.org>
21714         * lib/pathname.rb (Kernel#Pathname): new method.
21716 Sat Jun 17 02:01:00 2006  Tanaka Akira  <akr@m17n.org>
21718         * lib/pp.rb (Kernel#pretty_inspect): defined for pretty printed
21719           string.
21721 Fri Jun 16 01:41:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21723         * eval.c (rb_proc_arity): get rid of segfault for mere splat.
21725         * gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked.
21727 Thu Jun 15 22:06:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21729         * parse.y (then): remove ':' from 'then' and 'do' rules.
21731 Wed Jun 14 18:00:20 2006  Eric Hodel  <drbrain@segment7.net>
21733         * enum.c (enum_any): Documentation typo.
21735 Wed Jun 14 15:01:09 2006  Eric Hodel  <drbrain@segment7.net>
21737         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#warn): Don't print
21738           warnings when -q is set.
21740 Wed Jun 14 16:11:37 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21742         * eval.c (rb_f_method_name, rb_f_callee_name): document typo.
21744 Wed Jun 14 15:19:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21746         * hash.c (env_aset): raise TypeError on nil with more descriptive
21747           message.  [ruby-core:07990]
21749 Tue Jun 13 17:22:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21751         * ext/socket/socket.c (Init_socket): remove obsolete constants:
21752           IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket,
21753           UNIXsocket, UNIXserver.
21755 Tue Jun 13 09:07:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21757         * eval.c (formal_assign): post splat arguments should have had
21758           higher priority than optional arguments, since they are
21759           mandatory.  [ruby-dev:28715]
21761         * eval.c (VIS_MASK): broken. should be 15.  [ruby-dev:28715]
21763         * io.c (argf_getc): should return one-character string.
21764           [ruby-dev:28715]
21766         * io.c (rb_io_readchar): ditto.
21768 Sun Jun 11 23:20:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21770         * object.c (sym_call): disallow to call private methods.
21772         * lib/optparse.rb (OptionParser::Arguable#getopts): pass self to the
21773           parser.
21775 Sun Jun 11 09:56:41 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21777         * win32/win32.h (write): not need to define on bcc.
21779 Sun Jun 11 08:30:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21781         * lib/optparse.rb (OptionParser#getopts): new methods.
21783 Sun Jun 11 07:27:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21785         * lib/rdoc/ri/ri_writer.rb: use String#ord.
21787 Sun Jun 11 04:38:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21789         * object.c (sym_to_proc): imported Symbol#to_proc from ActiveSupport.
21791 Sat Jun 10 18:02:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21793         * ext/bigdecimal/lib/bigdecimal/newton.rb (Newton::nlsolve): typo
21794           fixed: raize -> raise.  [ruby-talk:196608]
21796 Sat Jun 10 17:49:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21798         * string.c (rb_str_ord): new method.
21800         * parse.y (rbracket): allow optional newline before closing
21801           brackets.
21803 Sat Jun 10 15:12:29 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21805         * eval.c (rb_f_method_name, rb_f_callee_name): new functions.
21806           new global method `__method__' and `__callee__'.
21808 Sat Jun 10 10:13:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21810         * lib/getoptlong.rb (GetoptLong#set_options): receive arguments
21811           as Array.
21813         * lib/irb/slex.rb: use Proc#yield.
21815         * lib/rdoc/markup/simple_markup/inline.rb: follow the new behavior
21816           of String#[].
21818         * lib/rdoc/ri/ri_writer.rb: ditto.
21820 Sat Jun 10 08:17:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21822         * math.c (log2): may be a macro.
21824         * parse.y (args, block_param, f_args): pass f_post_arg to #params.
21826         * util.c (powersOf10): constified.
21828         * ext/readline/readline.c: include extconf.h first.
21830         * ext/ripper/eventids2.c: removed tLAMBDA_ARG.
21832         * ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.
21834         * ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
21835           defined as const now.
21837         * ext/win32ole/win32ole.c (fole_missing): ditto.
21839         * lib/mkmf.rb (create_makefile): force to create extconf header.
21841         * lib/optparse.rb (order!): use Proc#yield.
21843 Sat Jun 10 06:53:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21845         * eval.c (CALLARGS): remove last semicolon. C90 compiler doesn't
21846           allow any lines (even if they're empty) within variable
21847           declarations.
21849 Fri Jun  9 09:56:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21851         * sprintf.c (rb_str_format): allow %c to print one character
21852           string (e.g. ?x).
21854 Thu Jun  8 14:00:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21856         * win32/win32.[ch] (rb_w32_read, rb_w32_write): new functions.
21857           use recv() and send() when fd is socket. fixed: [ruby-dev:28694]
21859 Wed Jun  7 16:22:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21861         * lib/tempfile.rb (Tempfile::make_tmpname): put dot between
21862           basename and pid.  [ruby-talk:196272]
21864 Wed Jun  7 16:16:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21866         * parse.y (do_block): remove -> style block.
21868         * parse.y (parser_yylex): remove tLAMBDA_ARG.
21870 Wed Jun  7 14:51:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21872         * win32/win32.c (errmap): add some winsock errors.
21874 Wed Jun  7 09:14:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21876         * eval.c (rb_call0): binding for the return event hook should have
21877           consistent scope.  [ruby-core:07928]
21879 Tue Jun  6 23:25:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21881         * eval.c (proc_invoke): return behavior should depend whether it
21882           is surrounded by a lambda or a mere block.
21884 Mon Jun  5 18:12:12 2006  Tanaka Akira  <akr@m17n.org>
21886         * ext/socket/socket.c (sock_s_unpack_sockaddr_in): reject
21887           non-AF_INET/AF_INET6 sockaddr.
21888           (sock_s_unpack_sockaddr_un): reject non-AF_UNIX sockaddr.
21889           [ruby-dev:28691]
21891 Sun Jun  4 20:40:19 2006  Tanaka Akira  <akr@m17n.org>
21893         * ext/socket/socket.c: fix sockaddr_un handling.
21894           [ruby-dev:28677]
21896 Sat Jun  3 23:53:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21898         * eval.c (formal_assign): handles post splat arguments.
21900         * eval.c (rb_call0): ditto.
21902 Sat Jun  3 13:10:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21904         * st.c (strhash): use FNV-1a hash.
21906 Fri Jun  2 20:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21908         * parse.y (parser_yylex): removed experimental ';;' terminator.
21910 Fri Jun  2 19:00:40 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
21912         * ext/openssl/extconf.rb: use create_header.
21914         * ext/openssl/ossl.h, ext/openssl/openssl_missing.h:
21915           include RUBY_EXTCONF_H.
21917 Fri Jun  2 17:16:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21919         * lib/mkmf.rb (CLEANINGS): remove extconf.h by distclean if created.
21921 Fri Jun  2 00:11:19 2006  Tanaka Akira  <akr@m17n.org>
21923         * ext/socket/socket.c (s_recvfrom): alen may be zero with UNIXSocket
21924           too.  (tested on NetBSD 3.0)
21925           (s_recvfrom_nonblock): extracted from sock_recvfrom_nonblock.
21926           (sock_recvfrom_nonblock): use s_recvfrom_nonblock.
21927           (ip_recvfrom_nonblock): new method: IPSocket#recvfrom_nonblock
21928           (unix_recvfrom_nonblock): new method: UNIXSocket#recvfrom_nonblock
21929           (s_accept_nonblock): extracted from sock_accept_nonblock.
21930           (sock_accept_nonblock): use s_accept_nonblock.
21931           (tcp_accept_nonblock): new method: TCPServer#accept_nonblock
21932           (unix_accept_nonblock): new method: UNIXServer#accept_nonblock
21934 Thu Jun  1 19:12:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21936         * win32/win32.c (rb_w32_cmdvector): backslashes inside single-quotes
21937           no longer has special meanings.  fixed: [ruby-list:42311]
21939 Thu Jun  1 17:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21941         * eval.c (rb_node_arity): should be aware of post splat arguments.
21943         * eval.c (rb_proc_arity): ditto.
21945 Thu Jun  1 16:17:26 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21947         * win32/win32.c (rb_w32_getcwd): runtime's getcwd() will not success
21948           if the length of the cwd is longer than MAX_PATH.
21949           fixed [ruby-list:42335]
21951 Thu Jun  1 16:07:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21953         * parse.y (f_args): syntax rule enhanced to support arguments
21954           after the splat.
21956         * parse.y (mlhs_basic): ditto for multiple assignments
21958         * parse.y (block_param): ditto for block parameters.
21960         * parse.y (f_post_arg): mandatory formal arguments after the splat
21961           argument.
21963         * parse.y (new_args_gen): generate nodes for mandatory formal
21964           arguments after the splat argument.
21966         * eval.c (rb_eval): dispatch mandatory formal arguments after the
21967           splat argument.
21969 Thu Jun  1 11:33:32 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
21971         * win32/win32.c (rb_w32_getcwd): set errno if not set.
21972           fixed [ruby-list:42346]
21974 Thu Jun  1 00:45:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21976         * parse.y (args): allow more than one splat in the argument list.
21978 Wed May 31 18:38:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21980         * parse.y (method_call): allow aref [] to accept all kind of
21981           method argument, including assocs, splat, and block argument.
21983         * eval.c (SETUP_ARGS0): prepare block argument as well.
21985 Tue May 30 18:13:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21987         * lib/mathn.rb (Integer): remove Integer#gcd2. [ruby-core:07931]
21989 Mon May 29 22:40:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
21991         * eval.c (error_line): print receivers true/false/nil specially.
21993         * eval.c (rb_proc_yield): handles parameters in yield semantics.
21995         * eval.c (nil_yield): gives LocalJumpError to denote no block
21996           error.
21998         * io.c (rb_io_getc): now takes one-character string.
22000 Sat May 27 22:46:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22002         * eval.c (proc_invoke): save and restore block in the current frame.
22003           fixed: [ruby-core:07833], [ruby-talk:191639]
22005 Sat May 27 11:29:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22007         * ext/extmk.rb (extmake): remove extinit files if no statically linked
22008           extensions.
22010 Fri May 26 19:56:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22012         * string.c (rb_str_hash): use FNV-1a hash from Fowler/Noll/Vo
22013           hashing algorithm.
22015 Fri May 26 09:05:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22017         * ruby.h, lib/mkmf.rb (create_header): clear command line options for
22018           macros moved to extconf.h.
22020         * ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
22021           EXTSTATIC permanent.
22023         * ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.
22025         * {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
22026           $(INCFLAGS).
22028         * lib/mkmf.rb (configuration): add $defs unless extconf.h was created.
22030 Thu May 25 01:52:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22032         * lib/mkmf.rb (pkg_config): particular config commands support.
22034         * ext/extmk.rb: deal with $static set in extconf.rb.
22036         * mkconfig.rb: merge multiple entries to an entry with multiple lines.
22038         * lib/mkmf.rb: allow a series of commands to link.
22040         * win32/Makefile.sub: embed manifests.
22042         * win32/setup.mak: suffix OS name by runtime version.
22044 Wed May 24 23:52:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22046         * configure.in (ac_install_sh): ignore dummy install-sh.
22047           [ruby-talk:193876]
22049 Wed May 24 17:55:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22051         * string.c (rb_str_aref): str[0] now returns 1 character string,
22052           instead of a fixnum.  [Ruby2]
22054         * parse.y (parser_yylex): ?c now returns 1 character string,
22055           instead of a fixnum.  [Ruby2]
22057         * string.c (rb_str_aset): no longer support fixnum insertion.
22059 Wed May 24 03:10:44 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22061         * ext/openssl/lib/openssl/ssl.rb
22062           (OpenSSL::SSL::SocketForwarder#setsockopt,getsockopt): typo fixed.
22064 Mon May 22 16:32:03 2006  Tanaka Akira  <akr@m17n.org>
22066         * rubyio.h (rb_io_set_nonblock): declared.
22068         * io.c (rb_io_set_nonblock): new function.
22069           (io_getpartial): nonblocking read support.
22070           (io_read_nonblock): new method: IO#read_nonblock.
22071           (io_write_nonblock): new method: IO#write_nonblock.
22073         * ext/socket/socket.c (s_accept): retry for EWOULDBLOCK.
22074           revert [ruby-talk:113807].
22075           (sock_connect_nonblock): new method: Socket#connect_nonblock.
22076           (sock_accept_nonblock): new method: Socket#accept_nonblock.
22077           (sock_recvfrom_nonblock): new method: Socket#recvfrom_nonblock.
22079           [ruby-core:7917]
22081 Mon May 22 15:57:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22083         * eval.c (umethod_bind): should not update original class.
22084           [ruby-dev:28636]
22086 Mon May 22 13:38:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22088         * eval.c (ev_const_get): should support constant access from
22089           within instance_eval().  [ruby-dev:28327]
22091 Sun May 21 09:50:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22093         * regexec.c: add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
22094           [ruby-list:42234]
22096 Thu May 18 22:37:20 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22098         * lib/webrick/config.rb (WEBrick::Config::HTTP): add new parameters,
22099           :InputBufferSize and :OutputBufferSize.
22101         * lib/webrick/utils.rb (WEBrick::Utils.timeout): add new timeout
22102           method. this implementation is expected to be compatible with
22103           timeout.rb and faster than timeout.rb.
22105         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#_read_data):
22106           Timeout.timeout is replaced by WEBrick::Utils.timeout.
22108         * lib/webrick/httprequest.rb: WEBrick::HTTPRequest::BUFSIZE is
22109           replaced by config[:InputBufferSize].
22111         * lib/webrick/httpresposne.rb: WEBrick::HTTPResponse::BUFSIZE is
22112           replaced by config[:OutputBufferSize].
22114         * lib/webrick/server.rb: get rid of unnecessary require.
22116         * test/webrick/test_utils.rb: test for WEBrick::Utils.timeout.
22118 Thu May 18 17:51:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22120         * time.c (time_timeval): should round for usec floating
22121           number.  [ruby-core:07896]
22123         * time.c (time_add): ditto.
22125 Thu May 18 00:42:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22127         * ext/extmk.rb, lib/mkmf.rb: use BUILD_FILE_SEPARATOR in Makefiles.
22129 Wed May 17 17:55:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22131         * dir.c (sys_warning): should not call a vararg function
22132           rb_sys_warning() indirectly.  [ruby-core:07886]
22134 Tue May 16 17:23:19 2006    <sinara@blade.nagaokaut.ac.jp>
22136         * numeric.c (flo_divmod): the first element of Float#divmod should
22137           be an integer. [ruby-dev:28589]
22139         * test/ruby/test_float.rb: add tests for divmod, div, modulo and remainder.
22141 Tue May 16 15:34:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22143         * re.c (rb_reg_initialize): should not allow modifying literal
22144           regexps.  frozen check moved from rb_reg_initialize_m as well.
22146 Tue May 16 09:20:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22148         * re.c (rb_reg_initialize): should not modify untainted objects in
22149           safe levels higher than 3.
22151         * re.c (rb_memcmp): type change from char* to const void*.
22153         * dir.c (dir_close): should not close untainted dir stream.
22155         * dir.c (GetDIR): add tainted/frozen check for each dir operation.
22157 Mon May 15 21:37:12 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22159         * re.c (rb_reg_prepare_re): don't use onig_recompile().
22161 Mon May 15 17:42:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22163         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_symbol_arg):
22164           typo fixed.  a patch from Florian Gross <florg at florg.net>.
22166 Sat May 13 16:14:05 2006  Tanaka Akira  <akr@m17n.org>
22168         * lib/pp.rb (PP.mcall): new method.
22169           (Struct#pretty_print): call Kernel#class and Struct#members even if
22170           overridden.
22171           (Struct#pretty_print_cycle): ditto.
22172           [ruby-core:7865]
22174 Fri May 12 15:54:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22176         * eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
22177           event_hooks.  no guarantee for arbitrary hook deletion.
22178           [ruby-dev:28632]
22180 Thu May 11 19:57:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22182         * util.c (ruby_strtod): differ addition to minimize error.
22183           [ruby-dev:28619]
22185 Thu May 11 18:30:11 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22187         * ext/openssl/ossl_cipher.c (add_cipher_name_to_ary): should return
22188           value. [ruby-dev:28627]
22190 Thu May 11 18:10:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22192         * util.c (ruby_strtod): should not raise ERANGE when the input
22193           string does not have any digits.  [ruby-dev:28629]
22195 Wed May 10 23:40:21 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22197         * oniguruma.h: Version 4.0.3
22199         * regexec.c: ditto.
22201 Mon May  8 09:10:31 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22203         * ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.
22205         * ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method
22206           OpenSSL::Cipher.ciphers. it returns all the cipher names.
22208         * ext/openssl/ossl_cipher.c (ossl_cipher_init): refine warning message.
22210         * ext/openssl/lib/openssl/cipher.rb: reimplement without eval() and
22211           add constants AES128, AES192, AES256. [ruby-dev:28610]
22213         * ext/openssl/lib/openssl/digest.rb: reimplement without eval().
22215         * test/openssl/test_cipher.rb, test_digest: fix about reimplemented
22216           features.
22218         * sample/openssl/cipher.rb: rewrite all.
22220 Sun May  7 03:09:51 2006  Stephan Maka  <stephan@spaceboyz.net>
22222         * lib/resolv.rb (Resolv::DNS::Requester::ConnectedUDP#initialize):
22223           Use AF_INET6 for nameservers containing colons.
22225 Sat May  6 23:40:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22227         * eval.c (proc_invoke): should restore old ruby_frame->block.
22228           thanks to ts <decoux at moulon.inra.fr>.  [ruby-core:07833]
22229           also fix [ruby-dev:28614] as well.
22231 Sat May  6 00:38:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22233         * signal.c (trap): sig should be less then NSIG.  Coverity found
22234           this bug.  a patch from Kevin Tew <tewk at tewk.com>.
22235           [ruby-core:07823]
22237 Thu May  4 22:13:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22239         * math.c (math_log2): add new method inspired by
22240           [ruby-talk:191237].
22242         * math.c (math_log): add optional base argument to Math::log().
22243           [ruby-talk:191308]
22245 Thu May  4 02:24:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22247         * ext/syck/emitter.c (syck_scan_scalar): avoid accessing
22248           uninitialized array element.  a patch from Pat Eyler
22249           <rubypate at gmail.com>.  [ruby-core:07809]
22251         * array.c (rb_ary_fill): initialize local variables first.  a
22252           patch from Pat Eyler <rubypate at gmail.com>.  [ruby-core:07810]
22254         * ext/syck/yaml2byte.c (syck_yaml2byte_handler): need to free
22255           type_tag.  a patch from Pat Eyler <rubypate at gmail.com>.
22256           [ruby-core:07808]
22258 Wed May  3 02:12:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22260         * ext/socket/socket.c (make_hostent_internal): accept ai_family
22261           check from Sam Roberts <sroberts at uniserve.com>.
22262           [ruby-core:07691]
22264 Mon May  1 17:58:16 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22266         * ext/win32ole/win32ole.c (add_event_call_back): should not
22267           delete event handler when the event name is not entried.
22269 Mon May  1 08:32:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22271         * ext/win32ole/win32ole.c (ole_param_ole_type): should return
22272           "unknown type" string when ITypeInfo::GetFuncDesc failed.
22274 Sat Apr 29 22:43:37 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22276         * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): should initialize
22277           flag. [ruby-core:07785]
22279 Fri Apr 28 10:53:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22281         * util.c (ruby_strtod): should not cut off 18 digits for no
22282           reason.  [ruby-core:07796]
22284 Thu Apr 27 01:38:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22286         * array.c (rb_ary_fill): internalize local variable "beg" to
22287           pacify Coverity.  [ruby-core:07770]
22289 Wed Apr 26 16:59:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22291         * pack.c (pack_unpack): now supports CRLF newlines.  a patch from
22292           <tommy at tmtm.org>.  [ruby-dev:28601]
22294 Wed Apr 26 16:55:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22296         * applied code clean-up patch from Stefan Huehner
22297           <stefan at huehner.org>.  [ruby-core:07764]
22299 Tue Apr 25 18:00:05 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22301         * ext/tk/tcltklib.c (delete_slaves): maybe increment the reference
22302           count of a NULL Tcl_Obj [ruby-core:07759].
22304 Tue Apr 25 07:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22306         * lib/jcode.rb (String::tr_s): should have translated non
22307           squeezing character sequence (i.e. a character) as well.  thanks
22308           to Hiroshi Ichikawa <gimite at gimite.ddo.jp> [ruby-list:42090]
22310 Fri Apr 21 15:19:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22312         * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer
22313           [ruby-core:07744] and memory leak.
22315 Fri Apr 21 12:14:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22317         * ext/socket/socket.c: document update patch from Sam Roberts
22318           <sroberts at uniserve.com>.  [ruby-core:07701]
22320 Thu Apr 20 08:43:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22322         * lib/mathn.rb (Integer): need not to remove gcd2.  a patch from
22323           NARUSE, Yui <naruse at airemix.com>.  [ruby-dev:28570]
22325 Wed Apr 19 13:55:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22327         * parse.y (arg): too much NEW_LIST()
22329         * eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.
22331 Wed Apr 19 11:57:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22333         * eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
22334           [ruby-dev:28585]
22336         * parse.y (arg): use NODE_ARGSCAT for placeholder.
22338 Wed Apr 19 11:13:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22340         * lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
22341           mathew <meta at pobox.com>.  [ruby-core:07738]
22343 Wed Apr 19 10:13:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22345         * variable.c (rb_const_set): raise error when no target klass is
22346           supplied.  [ruby-dev:28582]
22348 Tue Apr 18 17:40:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22350         * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
22352         * ext/tk/lib/tk.rb: update RELEASE_DATE.
22354         * ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
22356         * ext/tk/stubs.c: fix potential bugs about handling rb_argv0.
22358 Mon Apr 10 01:03:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22360         * prec.c (prec_prec_f): documentation patch from
22361           <gerardo.santana at gmail.com>.  [ruby-core:07689]
22363 Sat Apr  8 02:34:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22365         * bignum.c (rb_big_pow): second operand may be too big even if
22366           it's a Fixnum.  [ruby-talk:187984]
22368 Sat Apr  8 02:12:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22370         * README.EXT: update symbol description.  [ruby-talk:188104]
22372 Sat Apr  8 18:06:28 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22374         * ext/win32ole/win32ole.c: add WIN32OLE_METHOD#inspect,
22375           WIN32OLE_PARAM#inspect.
22377         * test/win32ole/test_win32ole_method.rb: ditto.
22379         * add test/win32ole/test_win32ole_param.rb.
22381 Fri Apr  7 22:11:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22383         * ext/win32ole/win32ole.c(foletypelib_initialize): WIN32OLE_TYPELIB.new
22384           accepts OLE file.
22386         * test/win32ole/test_win32ole_typelib.rb(test_initialize): ditto.
22388 Thu Apr  6 23:28:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22390         * COPYING: explicitly note GPLv2.  [ruby-talk:187922]
22392 Thu Apr  6 16:43:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22394         * intern.h (rb_obj_instance_exec, rb_mod_module_exec): add declaration.
22396 Thu Apr  6 11:18:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22398         * ext/tk/lib/tk/panedwindow.rb: lack of arguments. [ruby-core:7681]
22400 Thu Apr  6 01:04:47 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22402         * ext/tk/tcltklib.c: fix SEGV when embedding to an application.
22403           [ruby-core:7600]
22405         * ext/tk/tcltklib.c: fix SEGV at exit. [ruby-talk:186489]
22407         * ext/tk/tkutil/tkutil.c: follow to changing specification of
22408           instance_eval on ruby-1.9.x.
22410         * ext/tk/lib/tk.rb: ditto.
22412         * ext/tk/lib/multi-tk.rb: ditto.
22414         * ext/tk/lib/tk.rb: remove warning about redefinition of methods.
22416         * ext/tk/lib/tk/variable.rb: remove warning about unseting Tcl
22417           variables.
22419 Wed Apr  5 00:22:54 2006  Tanaka Akira  <akr@m17n.org>
22421         * lib/pathname.rb: use a subclass for instantiation except
22422           methods take pathname argument.  suggested by Evan Phoenix.
22423           [ruby-core:7618]
22425 Tue Apr  4 22:15:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22427         * parse.y: remove some obsolete syntax rules (unparenthesized
22428           method calls in argument list).
22430 Sat Apr  1 15:11:27 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22432         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#inspect,
22433           WIN32OLE_VARIABLE#inspect
22435         * remove ext/win32ole/tests/testOLEVARIABLE.rb, testOLETYPE.rb
22436           testOLETYPELIB.rb.
22438         * testall.rb: ditto.
22440         * add test/win32ole
22442 Fri Mar 31 14:24:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22444         * enumerator.c (enumerator_with_index): removed suspicious return
22445           statement.
22447 Wed Mar 29 23:06:48 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22449         * ext/win32ole/win32ole.c (ole_invoke): change the behavior of
22450           WIN32OLE#[], WIN32OLE#[]=. These methods invoke DISPID_VALUE.
22452         * ext/win32ole/sample/excel2.rb: ditto.
22454         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
22456 Wed Mar 29 10:11:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22458         * ext/nkf/nkf-utf8/nkf.c (nkf_each_char_to_hex, encode_fallback_subchar,
22459           e2w_conv): support C90 compiler.
22461 Mon Mar 27 22:45:37 2006  NARUSE, Yui  <naruse@ruby-lang.org>
22463         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: imported nkf 2.0.6.
22464           * Add --ic / --oc option and mapping tables.
22465           * Add fallback option.
22466           * Add --no-best-fit-chars option.
22467           * Fix some bugs.
22469         * ext/nkf/nkf.c (nkf_split_options): added for parse option string.
22471         * ext/nkf/lib/kconv.rb (Kconv.to*): add -m0.
22472           Note that Kconv.to* still imply -X.
22474         * ext/nkf/test.rb: Removed.  Obsolete by test/nkf.
22476         * ext/.document: enabled documents in nkf and kconv
22478         * ext/nkf/nkf.c, ext/nkf/lib/kconv.rb: Add rdoc.
22480 Mon Mar 27 03:17:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22482         * eval.c (rb_call0): insecure calling should be checked for non
22483           NODE_SCOPE method invocations too.
22485         * eval.c (rb_alias): should preserve the current safe level as
22486           well as method definition.
22488 Sun Mar 26 22:02:51 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22490         * re.c: refactoring for options.
22492         * parse.y: ditto.
22494 Fri Mar 24 21:11:02 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22496         * re.c (match_aref): RDoc description updated.
22498         * string.c (rb_str_sub): ditto.
22500         * string.c (rb_str_gsub): ditto.
22502 Fri Mar 24 17:20:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22504         * process.c (rb_f_sleep): remove RDoc description about SIGALRM
22505           which is not valid on the current implementation. [ruby-dev:28464]
22507 Thu Mar 23 21:40:47 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22509         * re.c (rb_reg_regsub): prohibit \1, \2 ...\9 in replaced string
22510           for named regex pattern.
22512 Thu Mar 23 21:06:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22514         * oniguruma.h: Version 4.0.2
22516         * regparse.c: ditto.
22518         * regcomp.c ditto.
22520         * regerror.c: ditto.
22522 Thu Mar 23 10:47:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22524         * eval.c (method_missing): should support argument splat in
22525           super.  a bug in combination of super, splat and
22526           method_missing.  [ruby-talk:185438]
22528 Thu Mar 23 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22530         * re.c (rb_reg_regsub): add back reference by name \k<name> in
22531           replace string.
22533         * re.h: add regexp argument to rb_reg_regsub().
22535         * string.c (rb_str_sub_bang): ditto.
22537         * string.c (str_gsub): ditto.
22539 Tue Mar 21 22:14:01 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22541         * re.c (match_alloc): initialize member regexp.
22543         * re.c (match_aref): add String and Symbol argument. [ruby-dev:28448]
22545         * re.h: add member regexp to RMatch.
22547         * gc.c (gc_mark_children): add gc_mark() to regexp member.
22549 Mon Mar 20 12:05:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22551         * configure.in: Solaris SunPro compiler -rapth patch from
22552           <kuwa at labs.fujitsu.com>.  [ruby-dev:28443]
22554 Mon Mar 20 11:12:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22556         * ext/win32ole/win32ole.c (folevariant_value): could not compile
22557           with C90 compiler.
22559 Mon Mar 20 09:40:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22561         * configure.in: remove enable_rpath=no for Solaris.
22562           [ruby-dev:28440]
22564 Sun Mar 19 09:46:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22566         * ext/win32ole/win32ole.c (ole_val2olevariantdata): change behavior
22567           of converting  OLE Variant object with VT_ARRAY|VT_UI1 and Ruby
22568           String object.
22570         * ext/win32ole/win32ole.c (folevariant_value): ditto.
22572         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
22574 Wed Mar 15 16:51:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22576         * lib/mkmf.rb (create_makefile): support libraries without *.so.
22578 Wed Mar 15 16:39:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22580         * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: should use
22581           "rb_str_new(0, 0)" to make empty string.
22583 Sun Mar 12 17:02:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22585         * ext/win32ole/win32ole.c(ole_val2olevariantdata): support VT_ARRAY in
22586           WIN32OLE_VARIANT.new().
22588         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
22590         * ext/win32ole/tests/testOLEPARAM.rb: test method name should not be
22591           duplicated.
22593 Sat Mar 11 14:24:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22595         * ruby.1: a clarification patch from David Lutterkort
22596           <dlutter at redhat.com>.  [ruby-core:7508]
22598 Sun Mar  5 18:40:58 2006  Minero Aoki  <aamine@loveruby.net>
22600         * lib/fileutils.rb: do not repeat command options.
22602 Sun Mar  5 18:35:03 2006  Minero Aoki  <aamine@loveruby.net>
22604         * lib/net/http.rb (send_request_with_body): #content_type never
22605           return false, use #main_type instead. [ruby-core:07476]
22607 Sat Mar  4 15:26:40 2006  Tanaka Akira  <akr@m17n.org>
22609         * gc.c (id2ref): fix symbol test.
22611 Sat Mar  4 01:08:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22613         * lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
22614           directories.  a patch from Eric Hodel <drbrain at segment7.net>.
22615           [ruby-core:07423]
22617 Fri Mar  3 17:59:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22619         * eval.c (rb_clear_cache_by_class): clearing wrong cache.
22621 Fri Mar  3 21:22:42 2006  Tanaka Akira  <akr@m17n.org>
22623         * lib/fileutils.rb (FileUtils.cp_r): implement :remove_destination
22624           option.
22626         * ext/extmk.rb: use :remove_destination to install extension libraries
22627           to avoid SEGV.  [ruby-dev:28417]
22629 Fri Mar  3 14:41:04 2006  Minero Aoki  <aamine@loveruby.net>
22631         * ext/dl/.cvsignore: ignore callback.h.
22633         * ext/ripper/.cvsignore: ignore eventids2table.c.
22635         * ext/socket/.cvsignore: ignore constants.h.
22637 Thu Mar  2 18:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22639         * eval.c (rb_thread_fd_writable): should not re-schedule output
22640           from KILLED thread (must be error printing).
22642 Thu Mar  2 09:12:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22644         * array.c (rb_ary_flatten_bang): allow specifying recursion
22645           level.  [ruby-talk:182170]
22647         * array.c (rb_ary_flatten): ditto.
22649 Thu Mar  2 08:02:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22651         * gc.c (add_heap): a heap_slots may overflow.  a patch from Stefan
22652           Weil <weil at mail.berlios.de>.
22654 Wed Mar  1 17:13:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22656         * eval.c (rb_call): use separate cache for fcall/vcall
22657           invocation.
22659         * eval.c (rb_eval): NODE_FCALL, NODE_VCALL can call local
22660           functions.
22662         * eval.c (rb_mod_local): a new method to specify newly added
22663           visibility "local".
22665         * eval.c (search_method): search for local methods which are
22666           visible only from the current class.
22668         * class.c (rb_class_local_methods): a method to list local methods.
22670 Thu Mar  2 17:54:45 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22672         * gc.c: commited magic for reducing RVALUE size on windows. (24->20byte)
22673           [ruby-core:7474]
22675 Thu Mar  2 14:12:26 2006  Tanaka Akira  <akr@m17n.org>
22677         * gc.c: align VALUE with sizeof(RVALUE) globally.
22678           (is_pointer_to_heap): check alignment out of loop.
22679           (id2ref): avoid collision between symbols and objects.
22680           (rb_obj_id): ditto.  moved from object.c.
22681           [ruby-talk:178364] [ruby-core:7305]
22683 Thu Mar  2 12:55:16 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22685         * win32/win32.c (filetime_to_unixtime): should set tm_isdst to -1.
22686           stat() didn't treat daylight saving time property on WinNT.
22687           [ruby-talk:182100]
22689 Wed Mar  1 00:15:51 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22691         * lib/rdoc/parsers/parse_rb.rb (read_escape): could not handle /\^/.
22692           merged Mr. Ishizuka's lib/irb/ruby-lex.rb 's patch rev 1.29.
22693           [ruby-talk:181631] [ruby-dev:28404]
22695 Tue Feb 28 19:32:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22697         * object.c (Init_Object): add BasicObject class as a top level
22698           BlankSlate class.
22700 Mon Feb 27 00:19:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22702         * ruby.h (SYM2ID): should not cast to signed long.
22703           [ruby-core:07414]
22705 Fri Feb 24 20:21:38 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
22707         * test/drb/drbtest.rb (add_service_command): quote pathnames in the
22708           server's command line for space contained directory names.
22709           Thanks, arton. [ruby-dev:28386]
22711 Fri Feb 24 12:10:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22713         * instruby.rb: install *.exe.manifest and *.dll.manifest if exist.
22714           It's for VC++8.
22716 Fri Feb 24 11:17:45 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22718         * win32/win32.c (NtInitialize): need to set a handler for VC++8.
22720 Thu Feb 23 22:39:59 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22722         * bcc32/Makefile.sub: use borlndmm.dll if possible. bcc32's RTL internal
22723           memory manager cannot handle large memory block properly.
22724           ex: 10000.times { "" << "." * 529671; GC.start } # crash
22725           [ruby-dev:28230]
22727 Thu Feb 23 13:23:03 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22729         * eval.c (SETUP_ARGS0): fixed memory corruption. [ruby-dev:28360]
22731 Wed Feb 22 21:16:55 2006  Tanaka Akira  <akr@m17n.org>
22733         * lib/pathname.rb (Pathname#each_filename): use split_names properly.
22735 Wed Feb 22 16:24:05 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22737         * test/webrick/test_cgi.rb: should support platforms which search
22738           library path from the interpreter's path.
22739           And, support test without install incidentally.
22741 Wed Feb 22 14:21:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22743         * bignum.c (bignorm): x may not be a bignum.  [ruby-dev:28367]
22745 Wed Feb 22 09:22:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22747         * eval.c (proc_alloc): add proper check for creation of a lambda
22748           without a block.
22750 Tue Feb 21 02:07:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22752         * parse.y (f_arglist): should set command_start = Qtrue for
22753           command body.  [ruby-talk:180648]
22755 Mon Feb 20 22:30:17 2006  Tanaka Akira  <akr@m17n.org>
22757         * mkconfig.rb: alias Config to RbConfig for compatibility.
22759 Mon Feb 20 18:21:41 2006  Tanaka Akira  <akr@m17n.org>
22761         * io.c (rb_io_reopen): flush before reopening a file.
22762           reported by Mathieu Bouchard.  [ruby-core:7396]
22764 Mon Feb 20 17:29:50 2006  Tanaka Akira  <akr@m17n.org>
22766         * mkconfig.rb: generate RbConfig instead of Config.
22768         * instruby.rb, rubytest.rb, runruby.rb, bcc32/Makefile.sub,
22769           ext/extmk.rb, ext/dl/extconf.rb, ext/iconv/charset_alias.rb,
22770           lib/mkmf.rb, lib/rdoc/ri/ri_paths.rb,
22771           lib/webrick/httpservlet/cgihandler.rb,
22772           test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb,
22773           test/ruby/envutil.rb, test/soap/calc/test_calc_cgi.rb,
22774           test/soap/header/test_authheader_cgi.rb, test/soap/ssl/test_ssl.rb,
22775           win32/mkexports.rb, win32/resource.rb: Use RbConfig instead of
22776           Config.
22778 Mon Feb 20 13:46:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22780         * lib/find.rb: should raise ENOENT if root entry does not exist,
22781           without opening it. [ruby-dev:28345]
22783 Mon Feb 20 12:27:53 2006  Kent Sibilev  <ksruby@gmail.com>
22785         * lib/rational.rb (Integer::gcd): small typo fix.
22786           [ruby-core:07395]
22788 Mon Feb 20 10:03:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22790         * variable.c (rb_const_get_0): Object should have been the lowest
22791           in const lookup precedence.  [ruby-dev:28343]
22793 Mon Feb 20 09:17:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22795         * lib/delegate.rb (Delegator): should not delegate "funcall".
22797 Mon Feb 20 09:13:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22799         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler):
22800           qualify the access for Config constant.  [ruby-dev:28338]
22802         * lib/resolv.rb (Resolv::DNS::Resource::IN::A): qualify
22803           ClassValue.  [ruby-dev:28338]
22805 Mon Feb 20 01:05:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22807         * lib/rational.rb (Integer::gcd): replaced by gcd4 in
22808           [ruby-core:07390].  [ruby-core:07377]
22810 Mon Feb 20 00:57:02 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
22812         * ext/openssl/ossl.h (OSSL_Debug): should not use __func__.
22813           [ruby-dev:28339]
22815 Mon Feb 20 00:13:49 2006  Tanaka Akira  <akr@m17n.org>
22817         * lib/open-uri.rb: add :ssl_verify_mode option.
22818           suggested by Will Glynn.
22820         * lib/open-uri.rb: add :ssl_ca_cert option.
22822 Sun Feb 19 04:46:29 2006  Guy Decoux  <ts@moulon.inra.fr>
22824         * eval.c: initial value for block_unique must be 1.
22825           [ruby-talk:180420]
22827 Sat Feb 18 23:58:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22829         * lib/tracer.rb (Tracer::Tracer.add_filter): turn on tracer mode
22830           only when caller() level size is one.  [ruby-core:07389]
22832         * lib/rdoc/parsers/parse_rb.rb: need not to require "tracer".
22833           [ruby-core:07389]
22835         * sample/rtags.rb: ditto.
22837 Sat Feb 18 21:16:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22839         * eval.c (rb_obj_instance_eval): RDoc description updated.  a
22840           patch from Ozgur Murat Homurlu <ozgurmurath at gmail.com>.
22841           [ruby-core:07381]
22843 Sat Feb 18 01:01:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22845         * variable.c (rb_const_get_0): skip ruby_wrapper in const search
22846           to give it lower priority (just above Object).  need not to
22847           change rb_const_defined_0() since it's only a precedence matter;
22848           they are defined anyway.
22850 Sat Feb 18 00:22:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22852         * lib/tracer.rb: merged a minor clarification patch from Daniel
22853           Berger <Daniel.Berger at qwest.com>.  [ruby-core:07376]
22855 Fri Feb 17 17:30:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22857         * eval.c (ev_const_get): simplified using rb_const_get_fallback().
22859         * eval.c (ev_const_defined): adopt to ev_const_get() using
22860           rb_const_defined_fallback().
22862         * variable.c (rb_const_get_fallback): new function to implement
22863           constant search.
22865         * variable.c (rb_const_defined_fallback): new function to
22866           implement constant definition check.
22868         * variable.c (rb_const_get_0): adopt to new behavior.  constants
22869           are looked up in the order of: current class, super classes (but
22870           Object), lexically external classes/modules, and Object.
22872         * variable.c (rb_const_defined_0): ditto.
22874 Fri Feb 17 11:20:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22876         * util.c (ruby_strtod): Float("1e") should fail. [ruby-core:7330]
22878         * pack.c (EXTEND32): unpack("l") did not work where sizeof(long) != 4.
22879           [ruby-talk:180024]
22881         * pack.c (pack_unpack): fixed integer overflow on template "w".
22882           [ruby-talk:180126]
22884 Fri Feb 17 09:39:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22886         * eval.c (rb_thread_wait_for): sleep should always sleep for
22887           specified amount of time.  [ruby-talk:180067]
22889 Wed Feb 15 16:52:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22891         * eval.c (rb_eval): NODE_OP_ASGN1 should allow splat in its
22892           argument list.  [ruby-core:07366]
22894         * parse.y (arg): avoid unnecessary extra argument.
22895           [ruby-core:07366]
22897         * eval.c (rb_eval): honor visibility on OP_ASGN1 and
22898           OP_ASGN2. [ruby-core:07366]
22900 Wed Feb 15 15:20:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22902         * eval.c (error_line): remove void control path.  [ruby-dev:28335]
22904 Wed Feb 15 10:09:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22906         * eval.c (yield_under_i): should not pass self as an argument to
22907           the block for instance_eval.  [ruby-core:07364]
22909 Wed Feb 15 09:20:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22911         * eval.c (rb_obj_instance_eval): should be no singleton classes for
22912           true, false, and nil.  [ruby-dev:28186]
22914 Tue Feb 14 20:26:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22916         * enumerator.c (enumerator_each): return self if no block is
22917           given.  [yarv-dev:882]
22919 Tue Feb 14 18:48:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22921         * eval.c (DMETHOD_P): accessing wrong frame.  [ruby-dev:28181]
22923         * eval.c (proc_invoke): preserve FRAME_DMETH flag.
22925 Tue Feb 14 15:15:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
22927         * ext/zlib/zlib.c: suppress warning on test/zlib. [ruby-dev:28323]
22929 Tue Feb 14 13:47:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22931         * win32/win32.c (rb_w32_utime): drop read-only attribute before
22932           changing file time.
22934 Tue Feb 14 13:38:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22936         * win32/Makefile.sub (config.h): should define HAVE_LONG_LONG with
22937           VC++8.
22939 Tue Feb 14 11:42:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
22941         * time.c (search_time_t): support non 32bit time_t environments.
22943         * win32/Makefile.sub (config.h): VC++8 has ``long long'' type.
22945         * win32/Makefile.sub (config.h): VC++8's time_t is 64bit value.
22947 Mon Feb 13 18:01:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22949         * eval.c (copy_node_scope): remove duplicated semicolons at end.
22950           a patch from KIMURA Koichi <kimura.koichi at canon.co.jp>.
22951           [ruby-dev:28332]
22953         * eval.c (VIS_MODE): remove unnecessary argument.
22954           [ruby-dev:28332]
22956 Mon Feb 13 13:49:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22958         * parse.y (parser_parse_string): mention "regexp" in a error
22959           message.  a patch from Mauricio Fernandez <mfp at acm.org>
22960           [ruby-core:07340]
22962 Mon Feb 13 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
22964         * oniguruma.h: Version 4.0.1
22966         * regparse.c (onig_free_shared_cclass_table): fix memory leaks.
22968         * regcomp.c (optimize_node_left): change from IS_POSIXLINE() to IS_MULTILINE().
22970         * regint.h: rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
22972         * regparse.h: ditto.
22974         * regexec.c: ditto.
22976 Sat Feb 11 21:57:29 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22978         * ext/win32ole/win32ole.c: add WIN32OLE.create_guid.
22980         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
22982 Sat Feb 11 01:57:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22984         * eval.c (rb_f_autoload): check if ruby_cbase is nil (during
22985           instance_eval for objects cannot have singleton classes,
22986           e.g. fixnums and symbols).  [ruby-dev:28178]
22988 Fri Feb 10 12:31:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22990         * eval.c (rb_eval): should support NODE_ZSUPER in NODE_ITER.
22991           [ruby-dev:28326]
22993         * eval.c (ZSUPER_ARGS): support macro.
22995 Wed Feb  8 10:26:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
22997         * gc.c (rb_gc_call_finalizer_at_exit): turn on during_gc while
22998           invoking finalizers.
23000         * gc.c (rb_gc_finalize_deferred): ditto.
23002 Tue Feb  7 23:03:13 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23004         * ext/zlib/zlib.c: should not access ruby objects in finalizer.
23005           [ruby-dev:28286]
23007 Tue Feb  7 18:42:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23009         * io.c (rb_write_error2): use fwrite(3) if rb_stderr is not
23010           updated or is already freed.  [ruby-dev:28313]
23012 Mon Feb  6 16:02:51 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
23014         * file.c (rb_thread_flock): ERROR_NOT_LOCKED is not an error on Cygwin.
23015           In such situation, flock() should return 0.
23017 Mon Feb  6 14:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23019         * eval.c (error_line): include the class name of a surrounding
23020           method in error position description.
23022 Mon Feb  6 00:14:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23024         * enum.c (enum_find_index): a new method Enumerable#find_index.
23025           [ruby-talk:178495]
23027 Sun Feb  5 23:29:31 2006  Tanaka Akira  <akr@m17n.org>
23029         * ruby.h (struct RStruct): embed 3 or less elements structs.
23030           (RSTRUCT_LEN): defined for accessing struct members.
23031           (RSTRUCT_PTR): ditto.
23033         * struct.c: use RSTRUCT_LEN and RSTRUCT_PTR.
23034           (struct_alloc): allocate small structs in embedded format.
23035           (rb_struct_init_copy): ditto.
23037         * gc.c (gc_mark_children): use RSTRUCT_LEN and RSTRUCT_PTR.
23038           (obj_free): ditto.
23040         * marshal.c (w_object): use RSTRUCT_LEN and RSTRUCT_PTR.
23042 Sun Feb  5 21:01:49 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23044         * numeric.c (fix_to_s): removed workaround for radix 2. Historically,
23045           rb_fix2str could only handle radix 8, 10, 16. (Rev1.37) But for now,
23046           it can handle radix 2..36. [ruby-Bugs#3438] [ruby-core:7300]
23048 Sun Feb  5 18:49:00 2006  Minero Aoki  <aamine@loveruby.net>
23050         * lib/net/http.rb (add_field, get_fields): keep 1.8.2
23051           compatibility.  This patch is contributed by Rob Pitt.
23053 Sun Feb  5 16:33:50 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23055         * lib/mkmf.rb (create_makefile): Kernel#sub! was removed on HEAD.
23057 Sun Feb  5 14:26:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23059         * lib/pstore.rb: should return default value if name is not found.
23060           [ruby-core:7304]
23062         * lib/pstore.rb: should raise PStore::Error if not in transaction.
23064 Sat Feb  4 22:51:43 2006  Tanaka Akira  <akr@m17n.org>
23066         * eval.c: apply the FreeBSD getcontext/setcontext workaround
23067           only before FreeBSD 7-CURRENT.
23069 Sat Feb  4 21:10:06 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
23071         * win32/win32.c (LK_ERR): ERROR_NOT_LOCKED is not an error.
23072           In such situation, flock() should return 0.
23074 Sat Feb  4 15:52:56 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23076         * numeric.c (fix_to_s): (2**32).to_s(2) fails with exception where
23077           sizeof(int) == 4 < sizeof(long). [ruby-core:7300]
23079 Sat Feb  4 15:02:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23081         * oniguruma.h: merge Oniguruma 4.0.0  [ruby-dev:28290]
23083 Fri Feb  3 19:25:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23085         * ruby.h: fixed prototype.
23087         * ext/syck/rubyext.c: defined symbol ID as global variable as others.
23089 Fri Feb  3 17:57:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23091         * eval.c: unify ruby_class (for method definition) and ruby_cbase
23092           (for constant reference).
23094 Fri Feb  3 15:02:10 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23096         * ext/syck/syck.c (syck_move_tokens): should reset p->cursor or etc
23097           even if skip == 0. This causes buffer overrun.
23098           (ex: YAML.load('--- "..' + '\x82\xA0' * 511 + '"'))
23100 Fri Feb  3 00:01:31 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23102         * ext/syck/emitter.c (syck_emitter_write): should not set '\0' on
23103           emitter's marker. if marker points to the end of buffer, this is
23104           buffer overrun. (ex: YAML.dump("." * 12288))
23106 Thu Feb  2 17:13:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
23108         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#get_tk): added
23109           support of :'string' style Symbol.
23111 Thu Feb  2 16:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23113         * eval.c (rb_call0): use TMP_ALLOC() instead of allocating
23114           a temporary array object.
23116         * eval.c (eval): need not to protect $SAFE value.
23117           [ruby-core:07177]
23119         * error.c (Init_Exception): change NameError to direct subclass of
23120           Exception so that default rescue do not handle it silently.
23122 Thu Feb  2 14:45:53 2006  Ville Mattila  <ville.mattila@stonesoft.com>
23124         * configure.in: The isinf is not recognized by autoconf
23125           library guesser on solaris 10. [ruby-core:7138]
23127 Wed Feb  1 22:01:47 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23129         * configure.in, hash.c (ruby_setenv): use setenv(3) and unsetenv(3)
23130           where they are supported. modifying environ variable seems to
23131           segfault solaris 10. [ruby-core:7276] [ruby-dev:28270]
23133         * ruby.c (set_arg0): if use setenv(3), environ space cannot be used
23134           for altering argv[0].
23136 Tue Jan 31 14:46:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23138         * struct.c (rb_struct_select): update RDoc description.
23139           [ruby-core:7254]
23141 Tue Jan 31 11:58:51 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23143         * ext/tk/lib/multi-tk.rb: add MultiTkIp#eval and bg_eval.
23145         * ext/tk/lib/tk/namespace.rb: TkNamespace#eval was enbugged at the
23146           last commit. Now it will return a proper object.
23148 Tue Jan 31 08:07:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23150         * numeric.c (int_upto): return an enumerator if no block is
23151           attached to the method.
23153         * numeric.c (int_downto): ditto.
23155         * numeric.c (int_dotimes): ditto.
23157         * enum.c (enum_first): new method Enumerable#first to take first n
23158           elements from an enumerable.
23160         * enum.c (enum_group_by): new method Enumerable#group_by that
23161           groups enumerable values according to their block values.
23163 Tue Jan 31 00:08:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23165         * ext/syck/rubyext.c (syck_resolver_transfer): workaround for SEGV.
23166           ex: ruby -ryaml -e 'YAML.load("!map:B {}")' [ruby-core:7217]
23168 Sat Jan 28 07:49:30 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23170         * lib/rdoc/usage.rb: support "a:0:33" style caller[-1]. In this case
23171           file name is "a:0". I don't know this really happens though...
23172           [ruby-Bugs:3344]
23174 Thu Jan 26 15:55:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23176         * ext/socket/socket.c: turn on do_not_reverse_lookup by default.
23178 Wed Jan 25 22:29:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23180         * configure.in, dln.c, file.c, intern.h, missing.h (eaccess): use
23181           system routine if provided.  fixed: [ruby-core:07195]
23183 Sun Jan 22 23:27:13 2006  Go Noguchi  <gonoguti@yahoo.co.jp>
23185         * lib/test/unit/autorunner.rb (process_args): ignore arguments after
23186           '--' so that test scripts can handle them.  fixed: [ruby-dev:28258]
23188 Sun Jan 22 22:09:52 2006  Tanaka Akira  <akr@m17n.org>
23190         * eval.c (POST_GETCONTEXT): define separately from PRE_GETCONTEXT on
23191           IA64 to avoid reusing variable address.
23193 Sun Jan 22 20:03:35 2006  Tanaka Akira  <akr@m17n.org>
23195         * eval.c (ruby_setjmp): define PRE_GETCONTEXT and POST_GETCONTEXT
23196           instead of FUNCTION_CALL_MAY_RETURN_TWICE.
23197           define PRE_GETCONTEXT to clear carry flag for workaround of
23198           FreeBSD/i386 getcontext/setcontext bug.
23199           [ruby-dev:28263]
23201 Thu Jan 19 22:19:18 2006  Minero Aoki  <aamine@loveruby.net>
23203         * lib/fileutils.rb (mv): should remove file after copying.
23204           [ruby-dev:28223]
23206 Wed Jan 18 23:37:06 2006  Tanaka Akira  <akr@m17n.org>
23208         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): don't clobber %l7 of SPARC
23209           if enable-shared.
23210           (ruby_setjmp): call FUNCTION_CALL_MAY_RETURN_TWICE after getcontext
23211           too.
23212           reported by Pav Lucistnik and Marius Strobl.
23213           http://lists.freebsd.org/pipermail/freebsd-sparc64/2006-January/003739.html
23215 Tue Jan 17 23:59:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23217         * object.c (rb_mod_const_get, rb_mod_const_defined): added optional
23218           flag to search ancestors, which is defaulted to true.
23219           fixed: [ruby-talk:175899]
23221         * eval.c (rb_mod_method_defined): ditto.
23223 Tue Jan 17 11:31:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
23225         * win32/setup.mak (MAKE): workaround for nmake 8.
23227 Tue Jan 17 11:06:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
23229         * win32/Makefile.sub: invoke .bat via shell. workaround for nmake 8.
23231 Mon Jan 16 10:13:38 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23233         * ext/syck/emitter.c (syck_emit_seq, syck_emit_map, syck_emit_item):
23234           should output complex key mark even if map's key is empty seq/map.
23235           [ruby-core:7129]
23237 Sat Jan 14 03:38:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23239         * file.c (rb_file_s_chmod): avoid warning where sizeof(int) !=
23240           sizeof(void*).
23242 Fri Jan 13 19:26:15 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23244         * lib/rdoc/diagram.rb:
23245             - properly quote bare element attributes
23246             - terminates dangling elements (e.g. <img>, <br>, <link>, etc)
23247             - converts "CVS" to the more HTML-friendly acronym element
23248             - adds missing type attributes to style elements
23250           based on Paul Duncan's patch <pabs@pablotron.org> [ruby-core:7028]
23252         * lib/rdoc/generators/html_generator.rb: ditto.
23253         * lib/rdoc/generators/template/html/hefss.rb: ditto.
23254         * lib/rdoc/generators/template/html/html.rb: ditto.
23255         * lib/rdoc/generators/template/html/kilmer.rb: ditto.
23257 Thu Jan 12 11:53:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23259         * ext/tk/sample/tkballoonhelp.rb: [bug fix] couldn't add to a widget
23260           which is constructed with TkComposite module.
23261           [new feature] support 'command' option which is called just before
23262           popping up the balloon help.
23264 Wed Jan 11 00:12:29 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
23266         * lib/erb.rb (ERB::Compiler): add instance variable @insert_cmd to
23267           change <%='s behavior.
23269 Tue Jan 10 19:42:33 2006  Tanaka Akira  <akr@m17n.org>
23271         * gc.c (garbage_collect): mark ruby_current_node.
23272           if an exception is raised in a finalizer written in C called by
23273           rb_gc_call_finalizer_at_exit, ruby_set_current_source may use
23274           collected ruby_current_node and mark_source_filename may corrupt
23275           memory.
23277 Tue Jan 10 13:30:34 2006  akira yamada  <akira@ruby-lang.org>
23279         * ext/syck/rubyext.c (syck_resolver_transfer): should be able to load
23280           !ruby/object:Bignum syntax 1.8.3 dumped. [ruby-core:6159]
23282 Tue Jan 10 12:47:41 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23284         * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in
23285           ruby 1.8.3/1.8.4. [ruby-core:6115]
23287         * lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not
23288           be dumped properly. [ruby-core:7047]
23290 Tue Jan 10 12:00:48 2006  Aaron Schrab  <aaron @nospam@ schrab.com>
23292         * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted
23293           Symbols broken. [ruby-Bugs:2535]
23295 Tue Jan 10 07:26:52 2006  Tanaka Akira  <akr@m17n.org>
23297         * gc.c (gc_stress): renamed from always_gc and enabled by default.
23298           (gc_stress_get): new function for GC.stress.
23299           (gc_stress_set): new function for GC.stress=.
23301 Mon Jan  9 19:58:56 2006  arton  <artonx@yahoo.co.jp>
23303         * ext/zlib/extconf.rb: zlib compiled DLL version 1.2.3 distributed by
23304           http://www.zlib.net/ has zdll.lib. [ruby-dev:28209]
23306 Mon Jan  9 14:25:00 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23308         * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag,
23309           (VisualC++6) so use -O2b2xg- if  $(MSC_VER) < 1400. [ruby-core:7040]
23311 Mon Jan  9 14:25:00 2006  Kero van Gelder  <rubyforge @nospam@ kero.tmfweb.nl>
23313         * lib/webrick/httpservlet/filehandler.rb: fixed typo. [ruby-core:7075]
23315 Sun Jan  8 14:15:27 2006  Tanaka Akira  <akr@m17n.org>
23317         * eval.c (GCC_VERSION_BEFORE): check __INTEL_COMPILER.
23318           Intel C++ Compiler defines __GNUC__.
23319           http://www.intel.com/software/products/compilers/clin/docs/ug_cpp/lin1077.htm
23321 Sat Jan  7 15:40:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23323         * parse.y (singleton): get rid of segfault on syntax error.
23324           fixed: [ruby-core:07070]
23326 Sat Jan  7 06:24:18 2006  Tanaka Akira  <akr@m17n.org>
23328         * eval.c (rb_fd_isset): compare the result of FD_ISSET with 0 to
23329           avoid FreeBSD bug.  FreeBSD defines FD_ISSET as just a bitmap of
23330           unsigned long.  So returning the value from rb_fd_isset discards
23331           upper 32bits on LP64 environment.
23332           http://www.freebsd.org/cgi/query-pr.cgi?pr=ia64/91421
23334 Fri Jan  6 02:20:18 2006  Tanaka Akira  <akr@m17n.org>
23336         * configure.in: don't force getcontext on IA64.
23338         * eval.c (ruby_setjmp): add an argument for just before getcontext.
23339           (THREAD_SAVE_CONTEXT): call rb_thread_save_context just
23340           before getcontext.
23341           [ruby-dev:28205]
23343 Sun Jan  1 15:28:46 2006  Tanaka Akira  <akr@m17n.org>
23345         * missing.h (isinf): avoid macro expansion
23346           "extern int isinf(double);" to
23347           "extern int ((sizeof(double)==sizeof(float))?_Isinff(double):_Isinf(double));" on
23348           HP-UX.
23350 Sun Jan  1 14:42:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23352         * win32/win32.c (rb_w32_seekdir): should not segfault even if passed
23353           the location which rb_w32_telldir didn't return. (and should change
23354           `bits' position) [ruby-core:7035]
23356         * win32/dir.h: ditto. (stores `loc' instead of `bitpos')
23358         * test/ruby/test_dir.rb: added.
23360 Sat Dec 31 22:57:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23362         * eval.c (rb_thread_save_context): should not recycle scope object used
23363           in a thread.  fixed: [ruby-dev:28177]
23365 Sat Dec 31 19:50:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23367         * ext/syck/rubyext.c: attribute name was truncated with Rev1.64.
23369 Sat Dec 31 11:53:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23371         * lib/generator.rb: (Generator#initialize): should kill @loop_thread
23372           before starting new thread. (occurs when called via Generator#rewind)
23373           [ruby-dev:28184]
23375 Fri Dec 30 18:22:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23377         * gc.c (garbage_collect): mark objects referred from aborting threads.
23378           [ruby-dev:28190]
23380         * win32/Makefile.sub: VC++8 support.
23382 Fri Dec 30 15:17:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23384         * lib/generator.rb (Generator#initialize): ensured to stop @loop_thread.
23385           Mr. Tanaka pointed out one Thread.pass is not enough. [ruby-dev:28185]
23387 Fri Dec 30 12:20:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23389         * lib/generator.rb (Generator#initialize): fixed dead lock. this occurred
23390           when end? was called before @loop_thread was stopped. [ruby-core:7029]
23392 Fri Dec 30 01:04:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23394         * lib/generator.rb: should work with another thread. (more robust code)
23395           [ruby-dev:28177]
23397 Thu Dec 29 23:59:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23399         * eval.c (rb_gc_mark_threads): keep unmarked threads which won't wake
23400           up alone, and mark threads in the loading table.  [ruby-dev:28154]
23402         * eval.c (rb_gc_abort_threads), gc.c (gc_sweep): kill unmarked
23403           threads.  [ruby-dev:28172]
23405 Thu Dec 29 17:02:07 2005  Tanaka Akira  <akr@m17n.org>
23407         * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of
23408           "miniruby".  [ruby-dev:28140]
23410 Thu Dec 29 14:35:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23412         * eval.c (rb_mod_define_method): should save safe_level in the
23413           proc object.  [ruby-dev:28146]
23415 Thu Dec 29 11:22:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23417         * lib/generator.rb: reimplemented Generator class with Thread instead of
23418           callcc, in order to fix memory leak. [ruby-dev:28142]
23420 Wed Dec 28 14:10:05 2005  Tanaka Akira  <akr@m17n.org>
23422         * ia64.s: remove .pred.safe_across_calls directive.
23423           reported by WATANABE Tetsuya.  [ruby-dev:28141]
23425 Wed Dec 28 01:32:39 2005  Tanaka Akira  <akr@m17n.org>
23427         * eval.c (struct thread): add bstr_max.
23428           (rb_thread_save_context): use realloc instead of REALLOC_N
23429           to avoid GC.
23431 Tue Dec 27 23:59:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23433         * lib/optparse.rb (CompletingHash#match): fix for 1.9.
23435 Tue Dec 27 16:59:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23437         * test/drb/drbtest.rb (DRbService::self.ext_service): increase
23438           timeout limit.  a patch from Kazuhiro NISHIYAMA
23439           <zn at mbf.nifty.com>. [ruby-dev:28132]
23441 Tue Dec 27 14:17:55 2005  Tanaka Akira  <akr@m17n.org>
23443         * configure.in: define IA64 for portability.  (HP aC++/ANSI C doesn't
23444           define __ia64__.)
23445           don't check libunwind stuff.
23446           check __libc_ia64_register_backing_store_base.
23448         * defines.h: declare rb_ia64_bsp and rb_ia64_flushrs.
23449           (flush_register_windows): call rb_ia64_flushrs on IA64.
23451         * ia64.s: new file for IA64.
23452           it is separated from C program files because
23453           Intel C++ Compiler for IA64 doesn't support inline assembly.
23455         * common.mk (ia64.$(OBJEXT)): new target.
23457         * ruby.h (RUBY_INIT_STACK): defined.
23458           (ruby_init_stack): declared for RUBY_INIT_STACK.
23460         * main.c (main): precedes RUBY_INIT_STACK before ruby_init.
23462         * gc.c (rb_gc_register_stack_start): new global variable on IA64.
23463           (garbage_collect): simplify register stack marking code.
23464           don't use libunwind.
23465           (Init_stack): initialize rb_gc_register_stack_start.
23466           (ruby_init_stack): new function for RUBY_INIT_STACK.
23468         * eval.c (struct thread): add bstr_pos member for original position of
23469           register stack.
23470           (rb_thread_save_context): simplify register stack saving code.
23471           don't use libunwind.
23472           (rb_thread_restore_context_0): new function.  moved from
23473           rb_thread_restore_context except the stack position checking code.
23474           don't use libunwind for IA64 register stack.
23475           (register_stack_extend): new function.
23476           (stack_extend): make it self-recursive with
23477           the stack position checking code in old rb_thread_restore_context.
23478           (rb_thread_restore_context): just call stack_extend.
23479           (flush_register_windows): removed.
23481           [ruby-dev:28127]
23483 Tue Dec 27 14:09:39 2005  Minero Aoki  <aamine@loveruby.net>
23485         * process.c: new method Process.exec. [ruby-dev:28107]
23487 Tue Dec 27 08:22:15 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
23489         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_check):
23490           treat wildcard character in commonName. [ruby-dev:28121]
23492 Mon Dec 26 08:50:36 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23494         * eval.c (ev_const_get): fixed a bug in constant reference during
23495           instance_eval.  [yarv-dev:707]
23497         * eval.c (ev_const_defined): ditto.
23499         * lib/yaml.rb (YAML::add_domain_type): typo fixed.  a patch from
23500           Joel VanderWerf <vjoel at path.berkeley.edu>.
23501           [ruby-talk:165285] [ruby-core:6995]
23503 Fri Dec 23 10:30:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23505         * ext/digest/sha2/sha2.c (ULL): support AIX C.  a patch from
23506           Kailden <kailden at gmail.com>.  [ruby-core:06984]
23508 Wed Dec 21 16:47:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23510         * file.c (w32_io_info): should return handle because FileIndex is
23511           valid only while file is open. [ruby-dev:28088]
23513 Wed Dec 21 12:12:21 2005  Tanaka Akira  <akr@m17n.org>
23515         * test/pathname/test_pathname.rb (test_kernel_open): use
23516           File.identical?.
23517           [ruby-talk:171804]
23519 Tue Dec 20 22:41:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23521         * eval.c (eval_under_i): evaluate source in caller's frame.
23522           [ruby-dev:28076]
23524 Tue Dec 20 12:53:23 2005  why the lucky stiff  <why@ruby-lang.org>
23526         * ext/syck/rubyext.c (syck_emitter_reset): to ensure compatibility
23527           with previous Ruby versions, documents are no longer headless.
23529 Tue Dec 20 12:33:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23531         * ext/syck/rubyext.c (syck_node_transform): ruby object holding
23532           explicitly freed SyckNode caused SEGV. [ruby-dev:28067]
23534         ... I think syck GC problem was solved now!
23536 Tue Dec 20 01:46:48 2005  Tanaka Akira  <akr@m17n.org>
23538         * io.c (rb_f_backquote): fix a GC problem on
23539           IA64 with gcc 4.0.3 20051216 (prerelease) -O3.
23541 Mon Dec 19 23:32:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23543         * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub.
23545         * main.c (always_gc): dllimport is required for VC to import a DLL
23546           symbol.  fixed: [ruby-dev:28051]
23548         * parse.y (rb_symname_p): fixed wrong validation.  [ruby-dev:28047]
23550 Mon Dec 19 23:09:24 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23552         * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
23553           in gram.c to insert node from rb_syck_bad_anchor_handler into
23554           SyckParser's hash table. if GC occurs in st_insert, it's not under
23555           SyckParser's mark system yet. so RString can be released wrongly.
23557         * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
23558           NULL or not before S_FREE.
23560         * ext/syck/rubyext.c (syck_parser_assign_io): rb_check_string_type can
23561           return new RString. if so, it becomes unreachable from GC after
23562           returns syck_parser_assign_io, and can be freed by GC. (dangling
23563           in syck io system) so extends its life time till syck_parse is called.
23565         * ext/syck/rubyext.c (syck_parser_s_alloc): always allocates bonus,
23566           so no need to check if NULL, and "volatile VALUE hash"
23567           is not needed. (bonus->port was not protected in syck_emitter_reset)
23569         * ext/syck/rubyext.c (syck_mark_parser): ditto.
23571         * ext/syck/rubyext.c (syck_parser_load): ditto.
23573         * ext/syck/rubyext.c (syck_parser_load_documents): ditto.
23575         * ext/syck/rubyext.c (syck_emitter_s_alloc): ditto.
23577         * ext/syck/rubyext.c (syck_mark_emitter): ditto.
23579         * ext/syck/rubyext.c (syck_emitter_reset): ditto.
23581         * ext/syck/rubyext.c (syck_scalar_value_set): "should set newly
23582           allocated memory instead of RString's internal storage" stuff again.
23583           by this, should call syck_free_node instead of rb_syck_free_node.
23585         * ext/syck/rubyext.c (syck_node_type_id_set): ditto.
23587         ... I believe syck GC problem was solved by this.
23589 Mon Dec 19 12:20:59 2005  Tanaka Akira  <akr@m17n.org>
23591         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): activate only
23592           before gcc 4.0.3 on SPARC and IA64.
23594 Mon Dec 19 11:37:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23596         * ext/syck/rubyext.c: sorry, I reverted my "should set newly
23597           allocated memory instead of RString's internal storage" stuff.
23598           node allocated in rubyext.c seems to be freed by rb_syck_free_node
23599           not syck_free_node, and it won't free data.str->ptr and type_id.
23601          (I still think this is unsafe because RString(foo)->ptr becomes
23602           dangling pointer when RString is modified or freed, but anyway
23603           I misunderstood, so go back to original code for now)
23605 Sat Dec 17 21:50:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23607         * ext/syck/rubyext.c (syck_emitter_reset): should initialize
23608           emitter->bonus->oid. otherwise rb_gc_mark crashes.
23610         * ext/syck/rubyext.c (syck_mark_parser): should mark anchor nodes
23611           because they hold ruby objects. (ie: rb_syck_bad_anchor_handler)
23613 Sat Dec 17 11:00:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23615         * ext/syck/rubyext.c (rb_syck_compile): avoid potential memory
23616           leak.
23618         * ext/syck/rubyext.c (syck_set_ivars): avoid potential memory
23619           leak by explicit symbol allocation.
23621 Sat Dec 17 03:57:01 2005  Tanaka Akira  <akr@m17n.org>
23623         * bignum.c (rb_big_rshift): fix a GC problem on
23624           IA64 with gcc 4.0.3 20051216 (prerelease).
23626 Sat Dec 17 03:30:23 2005  Tanaka Akira  <akr@m17n.org>
23628         * eval.c (bmcall): fix a GC problem by tail call on
23629           IA64 with gcc 4.0.3 20051216 (prerelease).
23631 Fri Dec 16 17:53:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23633         * ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.
23635         * ext/syck/rubyext.c: should protect global variable from GC.
23637 Fri Dec 16 11:44:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23639         * ext/syck/rubyext.c (syck_resolver_tagurize): fixed memory leak.
23641         * ext/syck/rubyext.c (syck_node_type_id_set): should set newly
23642           allocated memory instead of RString's internal storage.
23644         * ext/syck/rubyext.c (syck_scalar_value_set): ditto.
23646         ... these fixes won't fix [ruby-dev:27839]. more work is needed.
23648 Fri Dec 16 04:38:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23650         * lib/delegate.rb (Delegator::method_missing): should delegate
23651           block as well.
23653 Thu Dec 15 19:57:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23655         * lib/cgi.rb (CGI::QueryExtension::MorphingBody): fix criteria to
23656           use Tempfile.  A fix from Zev Blut <rubyzbibd at ubit.com>.
23657           [ruby-core:06076]
23659         * string.c: remove global functions work on $_.
23661 Thu Dec 15 12:35:14 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23663         * lib/tmpdir.rb: merged RDoc patch from Eric Hodel <drbrain at
23664           segment7.net>.  [ruby-core:06894]
23666 Thu Dec 15 01:33:31 2005  Tanaka Akira  <akr@m17n.org>
23668         * ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
23669           x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
23671 Wed Dec 14 23:50:20 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23673         * lib/rdoc/parsers/parse_c.rb (find_class_comment): fix for class
23674           document with prototypes.  [ruby-core:06863]
23676 Wed Dec 14 23:39:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23678         * dir.c (has_magic): glob names contain alphabets to enable case fold
23679           search.  [ruby-dev:27735]
23681         * dir.c (Init_Dir): FNM_SYSCASE which is default case fold flag.
23682           [ruby-dev:23296]
23684 Wed Dec 14 12:01:26 2005  Tanaka Akira  <akr@m17n.org>
23686         * marshal.c (r_object0): fix a GC problem for reading a bignum on
23687           IA64 with gcc 3.3.5 (Debian 1:3.3.5-13).
23689 Tue Dec 13 12:23:47 2005  Tanaka Akira  <akr@m17n.org>
23691         * re.c (rb_reg_regcomp): fix a GC problem on x86_64 with
23692           gcc 3.3.5 (Debian 1:3.3.5-13).
23694 Tue Dec 13 01:44:16 2005  Tanaka Akira  <akr@m17n.org>
23696         * array.c (rb_ary_diff): fix a GC problem on IA64 with
23697           gcc 3.3.5 (Debian 1:3.3.5-13).
23698           When rb_ary_push is called, there was no register which contains
23699           `hash' but `&RHASH(hash)->tbl' instead.
23701 Tue Dec 13 00:08:09 2005  Tanaka Akira  <akr@m17n.org>
23703         * sprintf.c (rb_str_format): fix a GC problem.
23704           [ruby-dev:28001]
23706 Mon Dec 12 15:51:22 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
23708         * test/openssl/test_ssl.rb (test_parallel): call GC.start to close
23709           unused files. [ruby-dev:27981]
23711 Mon Dec 12 09:58:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23713         * range.c (range_cover): new method Range#cover? added.  the
23714           method name might be changed.  thanks to takano32 at
23715           http://www.rubyist.net/~matz/20051210.html#c08 for name
23716           suggestion.  [ruby-talk:167182]
23718 Mon Dec 12 00:33:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23720         * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
23721           protect temporary context object.  [ruby-dev:27979]
23723         * ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
23724           be called before actual variable initialization.
23725           [ruby-dev:27986]
23727 Sun Dec 11 23:54:07 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23729         * ext/tk/*: update to support libraries in ActiveTcl8.4.12.0
23730           (see ext/tk/ChangeLog.tkextlib).
23732         * ext/tk/sample/scrollframe.rb: add a new sample.
23734 Sun Dec 11 22:07:58 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
23736         * test/rinda/test_rinda.rb (test_remote_array_and_hash): pseudo remote
23737           objects are protected against GC. [ruby-dev:27911]
23739 Sat Dec 10 01:06:06 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
23741         * lib/matrix.rb: add Matrix#determinant_e, Matrix#rank_e.
23742           [ruby-dev:27820] and related thread.
23744 Sat Dec 10 00:31:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23746         * eval.c (calling_scope_t): gave names to magic numbers for rb_call().
23747           [ruby-dev:27978]
23749 Fri Dec  9 23:31:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23751         * lib/rexml/encoding.rb (encoding=): give priority to particular
23752           conversion to iconv.  [ruby-core:06520]
23754 Fri Dec  9 23:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23756         * range.c (range_include): return false unless included in numeric
23757           range.  fixed: [ruby-dev:27975]
23759 Thu Dec  8 02:07:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23761         * eval.c (umethod_bind): adjust invoking class for module method.
23762           [ruby-dev:27964]
23764 Thu Dec  8 00:40:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23766         * eval.c (call_trace_func): klass parameter should be a
23767           class/module that defines calling method.  [ruby-talk:169307]
23769 Wed Dec  7 17:10:27 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
23771         * sprintf.c (rb_f_sprintf): [ruby-dev:27967]
23773 Wed Dec  7 16:39:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23775         * range.c (range_include): use discrete membership for non Numeric
23776           values, for example, String.
23778         * numeric.c (num_scalar_p): new method. [ruby-dev:27936]
23780         * lib/complex.rb (Complex#scalar?): ditto.
23782 Wed Dec  7 15:31:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23784         * sprintf.c (rb_str_format): integer overflow check added.
23786         * sprintf.c (GETASTER): ditto.
23788 Wed Dec  7 01:02:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23790         * ext/tk/README.macosx-aqua: [new document] tips to avoid the known
23791           bug on platform specific dialogs of Tcl/Tk Aqua on MacOS X.
23793         * ext/tk/tcltklib.c: fix bug on switching threads and waiting on the
23794           deleted interpreter on vwait and tkwait command.
23796         * ext/tk/lib/multi-tk.rb: kill the meaningless loop for the deleted Tk
23797           interpreter.
23799         * ext/tk/sample/demos-jp/image3.rb: [bug fix] wrong argument.
23801         * ext/tk/sample/demos-en/image3.rb: ditto.
23803         * ext/tk/sample/demos-jp/menu.rb: fix message for MacOS X.
23805         * ext/tk/sample/demos-jp/menu8x.rb: ditto.
23807         * ext/tk/sample/demos-en/menu.rb: ditto.
23809 Tue Dec  6 16:48:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23811         * gc.c (ruby_xmalloc2): change check condition for integer
23812           overflow.  [ruby-dev:27399]
23814         * gc.c (ruby_xrealloc2): ditto.
23816 Tue Dec  6 16:37:57 2005  Yuya Nishida  <yuya@j96.org>
23818         * eval.c (exec_under): avoid accessing ruby_frame->prev.
23819           [ruby-dev:27948]
23821 Fri Dec  2 19:06:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23823         * dir.c (Compare): should not fold double byte alphabet on win9x.
23825 Thu Dec  1 00:50:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23827         * eval.c (rb_funcall2): allow to call protected methods.
23828           fixed: [ruby-dev:27890]
23830 Wed Nov 30 23:52:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23832         * parse.y (struct parser_params): fields common to ripper must be
23833           placed at each same offset.
23835         * parse.y (NEWHEAP, ADD2HEAP): set count after pointer was set.
23836           fixed: [ruby-dev:27896]
23838 Wed Nov 30 13:43:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23840         * misc/ruby-mode.el (ruby-expr-beg): support $! at the end of
23841           expression.   [ruby-dev:27868]
23843 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
23845         * lib/pp.rb (PP::PPMethods#object_address_group): mask an address with
23846           word size.
23848 Tue Nov 29 23:57:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23850         * parse.y (struct parser_params): heap must be placed at same offset
23851           also in ripper.y.  fixed: [ruby-dev:27846]
23853         * parse.y (yycompile): prevent vparser from tail call optimization.
23854           fixed: [ruby-dev:27851]
23856         * parse.y (parser_mark): value needs to be marked.
23857           fixed: [ruby-dev:27845]
23859 Tue Nov 29 22:45:30 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
23861         * lib/drb/observer.rb (notify_observers): follow change of observer.rb.
23862           fixed: [ruby-core:6796]
23864 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
23866         * lib/pp.rb (PP::PPMethods#object_address_group): adjust address format.
23868 Mon Nov 28 18:55:22 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
23870         * ext/socket/socket.c (init_inetsock_internal): remove setting
23871           SO_REUSEADDR option on server socket on Cygwin.
23872           fixed: [ruby-core:6765] ([ ruby-Bugs-2872 ])
23874 Mon Nov 28 13:11:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23876         * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken
23877           error message on bccwin32 + winsock)
23879 Mon Nov 28 09:15:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23881         * lib/mkmf.rb (create_makefile): should not change sodir with
23882           dir.gsub!. (bccwin32 failed to install third party extensions)
23883           [ruby-dev:27834]
23885 Sun Nov 27 05:37:20 2005  Tanaka Akira  <akr@m17n.org>
23887         * lib/pathname.rb: use File.basename to decompose pathnames.
23888           experimental Windows support.
23890 Sun Nov 27 00:56:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
23892         * lib/wsdl/xmlSchema/complexContent.rb: missing
23893           ComplexContent#elementformdefault method.
23895 Sat Nov 26 19:57:45 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
23897         * dln.c (conv_to_posix_path): should initialize posix.
23899 Fri Nov 25 20:34:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23901         * lib/xmlrpc/datetime.rb (DateTime::to_a): comparison with non
23902           array-convertible object must return false.
23904 Fri Nov 25 14:34:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23906         * range.c (range_max): treat end exclusion without iteration if
23907           the end value is an integer.  [ruby-talk:167433]
23909 Fri Nov 25 12:52:57 2005  Kouhei Sutou  <kou@cozmixng.org>
23911         * lib/rss/rss.rb: added backward compatibility codes.
23912         * lib/rss/parser.rb: ditto.
23913         * test/rss/test_parser.rb: ditto.
23914         * test/rss/test_2.0.rb: ditto.
23916         * test/rss/test_content.rb: use #__send__ instead of #funcall for
23917           no private method.
23919 Fri Nov 25 12:39:56 2005  Kouhei Sutou  <kou@cozmixng.org>
23921         * lib/rss/rss.rb: improved type conversion.
23922         * lib/rss/1.0.rb: ditto.
23923         * lib/rss/0.9.rb: ditto.
23924         * lib/rss/2.0.rb: ditto.
23925         * lib/rss/image.rb: ditto.
23926         * lib/rss/syndication.rb: ditto.
23928         * test/rss/test_2.0.rb: added type conversion tests.
23929         * test/rss/test_accessor.rb: ditto.
23930         * test/rss/test_to_s.rb: ditto.
23931         * test/rss/test_syndication.rb: ditto.
23932         * test/rss/test_setup_maker_2.0.rb: ditto.
23933         * test/rss/test_setup_maker_1.0.rb: ditto.
23934         * test/rss/test_setup_maker_0.9.rb: ditto.
23935         * test/rss/test_maker_sy.rb: ditto.
23936         * test/rss/test_maker_image.rb: ditto.
23937         * test/rss/test_maker_2.0.rb: ditto.
23938         * test/rss/test_maker_0.9.rb: ditto.
23939         * test/rss/test_image.rb: ditto.
23941         * test/rss/test_maker_1.0.rb: use assert instead of assert_equal.
23943         * test/rss/rss-assertions.rb: improved type conversion assertions.
23945 Fri Nov 25 10:38:20 2005  Kouhei Sutou  <kou@cozmixng.org>
23947         * lib/rss/image.rb: added Image prefix.
23949         * lib/rss/maker/image.rb: ditto.
23951 Fri Nov 25 10:33:02 2005  Kouhei Sutou  <kou@cozmixng.org>
23953         * test/rss/test_2.0.rb: added RSS 2.0 tests.
23955         * test/rss/rss-assertions.rb: extended XML stylesheet assertion.
23957         * lib/rss/0.9.rb: added initialize method.
23959         * test/rss/test_1.0.rb: cleanup.
23961 Fri Nov 25 10:29:48 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23963         * range.c (range_min): use <=> comparison rather than iteration.
23964           [ruby-talk:167420]
23966         * range.c (range_max): ditto.
23968 Thu Nov 24 01:31:44 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
23970         * file.c (w32_io_info): CreateFile failed on Win9x if file was already
23971           opened. (FILE_SHARE_READ was needed, but actually I don't understand
23972           the flags of CreateFile well...)
23974 Wed Nov 23 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
23976         * numeric.c (num_div): use floor rather than rb_Integer().
23977           [ruby-dev:27674]
23979 Wed Nov 23 22:34:15 2005  Kouhei Sutou  <kou@cozmixng.org>
23981         * lib/rss/parser.rb: added entity handling type predicate.
23982         * lib/rss/rexmlparser.rb: ditto.
23983         * lib/rss/xmlparser.rb: ditto.
23984         * lib/rss/xmlscanner.rb: ditto.
23986         * lib/rss/xmlscanner.rb: more robust entity handling.
23988         * test/rss/test_parser.rb: added an entity handling test.
23990 Wed Nov 23 20:59:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23992         * ext/tk/lib/tk.rb: add Tk.pkgconfig_list and Tk.pkgconfig_get
23993           [Tk8.5 feature].
23995         * ext/tk/lib/tk/text.rb: supports new indices modifiers on a Text
23996           widget [Tk8.5 feature].
23998         * ext/tk/lib/tk/virtevent.rb: add TkNamedVirtualEvent.
24000         * ext/tk/lib/tk/autoload.rb: ditto.
24002         * ext/tk/lib/tk/event.rb: add :data key for virtual events [Tk8.5
24003           feature].
24005 Wed Nov 23 18:52:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24007         * file.c (w32_io_info): should not call GetFileInformationByHandle
24008           for pipe.
24010         * file.c (w32_io_info): checks return value from rb_w32_get_osfhandle.
24012         * file.c (w32_io_info): now can identify directory on WinNT.
24014 Wed Nov 23 18:46:53 2005  Kouhei Sutou  <kou@cozmixng.org>
24016         * lib/rss/: use #__send__ instead of #send.
24017         * test/rss/: ditto.
24019 Wed Nov 23 18:32:56 2005  Kouhei Sutou  <kou@cozmixng.org>
24021         * test/rss/test_taxonomy.rb: use #reject directory.
24023 Wed Nov 23 18:26:00 2005  Kouhei Sutou  <kou@cozmixng.org>
24025         * lib/rss/taxonomy.rb: changed class or module prefix to
24026           Taxonomy from Taxo.
24027         * lib/rss/maker/taxonomy.rb: ditto.
24029 Wed Nov 23 18:21:11 2005  Kouhei Sutou  <kou@cozmixng.org>
24031         * lib/rss/maker/taxonomy.rb: implemented taxonomy module for RSS
24032           Maker.
24033         * lib/rss/taxonomy.rb: supported RSS Maker.
24034         * lib/rss/maker.rb: added taxonomy module support.
24036         * lib/rss/rss.rb: adjusted to other element API.
24037         * lib/rss/1.0.rb: adjusted to other element API but backward
24038           compatibility is reserved.
24039         * lib/rss/0.9.rb: ditto.
24041         * test/rss/test_maker_taxo.rb: added test case for taxonomy module
24042           for RSS Maker.
24043         * test/rss/test_setup_maker_1.0.rb: added tests for taxo:topic.
24045         * test/rss/test_setup_maker_1.0.rb: added backward compatibility
24046           test.
24047         * test/rss/test_setup_maker_0.9.rb: ditto.
24048         * test/rss/test_setup_maker_2.0.rb: ditto.
24050         * test/rss/rss-testcase.rb: added convenience method for setting
24051           up taxo:topic.
24052         * test/rss/rss-assertions.rb: added assertion for taxo:topic.
24054         * sample/rss/blend.rb: followed new API.
24056 Wed Nov 23 17:42:24 2005  Kouhei Sutou  <kou@cozmixng.org>
24058         * lib/rss/rss.rb: fixed a indentation bug.
24060         * lib/rss/taxonomy.rb: fixed <taxo:topic> #to_s bug.
24062         * test/rss/test_taxonomy.rb: added a #to_s test.
24064 Wed Nov 23 03:40:49 2005  Guy Decoux  <ts@moulon.inra.fr>
24066         * re.c (KR_REHASH): should cast to unsigned for 64bit CPU.
24067           [ruby-core:06721]
24069 Wed Nov 23 07:26:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24071         * ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.
24073         * ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use
24074           OPENSSL_malloc to allocate X509V3_CTX.
24076         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use
24077           X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which
24078           values are placed in separate section).
24080         * test/openssl/test_x509ext.rb: new file.
24082 Wed Nov 23 01:22:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24084         * file.c (test_identical): test if two files are identical.
24086         * file.c (rb_f_test): support DOSISH systems where st_ino is not
24087           reliable.  fixed: [ruby-core:06672]
24089         * win32.h, win32.c (rb_w32_osid): check the running platform.
24091 Tue Nov 22 23:52:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24093         * lib/optparse.rb: match incomplete (in current enconding) multibyte
24094           string.  http://inamode6.tokuhirom.dnsalias.org/show/1551
24096 Tue Nov 22 18:36:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24098         * win32/win32.c (winnt_stat): set mapped errno instead of ENOENT.
24100 Tue Nov 22 14:36:54 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24102         * file.c (rb_file_s_basename): skip slashes just after UNC top slashes.
24104         * test/ruby/test_path.rb (test_dirname, test_basename): follow new
24105           spec. and add new tests.
24107 Tue Nov 22 13:30:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24109         * win32/win32.c (rb_w32_stat): Dir.chdir('//server/shared');
24110           p Dir.glob('*') should work on WinNT. (implemented our own
24111           stat(2) on WinNT) [ruby-list:41552] [ruby-dev:27711]
24113 Tue Nov 22 02:31:53 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24115         * ext/tk/lib/tkextlib/tile.rb: bug fix (Tk::Tile::USE_TTK_NAMESPACE
24116           is not defined).
24118 Tue Nov 22 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24120         * file.c (rb_file_s_basename): DOSISH_UNC is defined on cygwin but
24121           DOSISH is not.  fixed: [ruby-dev:27797]
24123 Mon Nov 21 22:50:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24125         * file.c (rb_path_skip_prefix, rb_file_s_basename): UNC without path
24126           should not be splitted.  fixed: [ruby-dev:27776] [ruby-dev:27786]
24128         * parse.y (dsym): prohibit empty symbol literal by interpolation.
24129           fixed: [ruby-talk:166529]
24131 Mon Nov 21 16:03:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24133         * win32/setup.mk: findstr doesn't exist on win9x.
24134           fixed: [ruby-dev:27756]
24136 Sun Nov 20 21:39:27 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
24138         * regparse.c (fetch_token_in_cc): tok->escaped should be
24139           initialized.  [ruby-dev:27763]
24141 Sun Nov 20 22:34:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24143         * parse.y (rb_symname_p): [ not followed by ] is not valid symbol.
24144           fixed: [ruby-talk:166520]
24146 Sat Nov 19 19:57:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24148         * lib/fileutils.rb (FileUtils::ln): ln documentation fix.
24149           [ruby-core:06661]
24151 Sat Nov 19 08:19:38 2005  Zach Dennis  <zdennis@mktec.com>
24153         * ext/socket/socket.c: Socket Documentation. [ruby-core:6552]
24155 Sat Nov 19 07:34:32 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24157         * ext/tk/lib/tk/font.rb: remove dependency on Ruby's version (1.8
24158           or 1.9).
24160         * ext/tk/lib/tkextlib/ICONS/icons.rb: ditto.
24162         * ext/tk/sample/tkextlib/treectrl/demo.rb: ditto.
24164 Fri Nov 18 18:07:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24166         * file.c (rb_file_s_dirname): should use skipprefix for UNC path.
24167           pointed out by nobu ([ruby-dev:27744]). fixed: [ruby-core:5076]
24169 Fri Nov 18 17:35:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24171         * ext/tk/lib/multi-tk.rb: add restriction to access the entried
24172           command table and manipulate other IPs (for reason of security).
24173           Now, a IP object can be controlled by only its master IP or the
24174           default IP.
24176         * ext/tk/lib/remote-tk.rb: add restriction to manipulate.
24178         * ext/tk/tcltklib.c (ip_is_slave_of_p): add TclTkIp#slave_of?(ip)
24179           to check manipulability.
24181         * ext/tk/lib/tk.rb: bug fix on handling of Tcl's namespaces.
24183         * ext/tk/lib/tk/namespace.rb: ditto.
24185 Fri Nov 18 16:47:33 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24187         * file.c (rb_file_s_dirname): added checks for some patterns with drive
24188           letter. fixed: [ruby-dev:27738]
24190         * test/ruby/test_path.rb (test_dirname): added tests for above
24191           patterns.
24193 Fri Nov 18 12:19:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24195         * win32/win32.h (S_IFIFO): r,w = IO.pipe; r.stat.pipe? now
24196           returns true on VisualC++6.
24198 Thu Nov 17 17:58:00 2005  Kouhei Sutou  <kou@cozmixng.org>
24200         * lib/rss/1.0.rb: added convenience method 'resources'.
24202         * lib/rss/taxonomy.rb: ditto.
24204         * test/rss/rss-assertions.rb: added test for 'resources'.
24206         * test/rss/test_taxonomy.rb: ditto.
24208 Thu Nov 17 17:53:30 2005  Kouhei Sutou  <kou@cozmixng.org>
24210         * lib/rss/taxonomy.rb: implemented taxonomy module.
24212         * test/rss/test_taxonomy.rb: added tests for taxonomy support.
24214 Thu Nov 17 17:40:19 2005  Kouhei Sutou  <kou@cozmixng.org>
24216         * lib/rss/1.0.rb: added rdf:Bag.
24218 Thu Nov 17 13:52:00 2005  Kouhei Sutou  <kou@cozmixng.org>
24220         * lib/rss/rss.rb: removed needless argument 'prefix'.
24222         * lib/rss/parser.rb: ditto.
24224 Wed Nov 16 23:24:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24226         * common.mk (static-ruby): overridable.
24228         * ext/extmk.rb (parse_args): force to link extensions statically only
24229           if static is given for extstatic.
24231         * ext/extmk.rb (RUBY, RUBYW): overridable.
24233 Wed Nov 16 01:29:31 2005  Kouhei Sutou  <kou@cozmixng.org>
24235         * lib/rss/trackback.rb: added TrackBack prefix.
24237         * lib/rss/maker/trackback.rb: ditto.
24239 Wed Nov 16 01:26:13 2005  Kouhei Sutou  <kou@cozmixng.org>
24241         * lib/rss/rss.rb (RSS::VERSION): 0.1.5 -> 0.1.6.
24243         * test/rss/test_version.rb (RSS::TestVersion#test_version): ditto.
24245 Tue Nov 15 23:54:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24247         * file.c (file_load_ok): eaccess() returns 0 on success.
24248           fixed: [ruby-dev:27713]
24250 Tue Nov 15 16:36:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24252         * array.c (rb_ary_fill): previous commit disabled this usage:
24254             a = [0,1,2,3,4,5,6,7,8,9]
24255             a.fill {|i| a[i] * 10} #=> [nil, nil, ...., nil]
24257           previous commit has the advantage of early garbage collection, but
24258           potentially this would break some script. so I reverted behavior.
24260 Tue Nov 15 16:15:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24262         * file.c (file_load_ok): use eaccess() instead of actually opening
24263           the file.  [ruby-talk:156378]
24265         * lib/jcode.rb (String::reverse): add new methods.
24266           [ruby-list:41245]
24268 Tue Nov 15 15:49:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24270         * array.c (rb_ary_fill): tail elements were vanished when the middle
24271           part of array was filled. (ie: [0,1,2,3,4].fill(-1,2,1) => [0,1,-1])
24273         * test/ruby/test_array.rb (test_fill): added.
24275 Tue Nov 15 14:39:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24277         * array.c (rb_ary_fill): should adjust array length correctly when
24278           an array is expanded in the fill process.  [ruby-core:06625]
24280 Mon Nov 14 23:49:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24282         * file.c (rb_file_s_readlink): ERANGE will occur only on GPFS.
24283           [ruby-dev:27699]
24285 Mon Nov 14 17:36:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24287         * array.c (rb_ary_first): RDoc update from Daniel Berger
24288           <djberg96@yahoo.com>.  [ruby-core:06577].
24290 Sun Nov 13 10:55:24 2005  Minero Aoki  <aamine@loveruby.net>
24292         * lib/uri/common.rb (escape): regard second argument as a
24293           character set. [ruby-dev:27692]
24295 Sat Nov 12 08:36:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24297         * configure.in, eval.c, intern.h: check fd_mask type.
24299         * configure.in (socketpair): need to be checked.
24301 Fri Nov 11 19:53:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24303         * eval.c, intern.h: failed to compile where NFDBITS is defined but
24304           howmany() is not defined. [ruby-dev:27680]
24306         * io.c (is_socket): failed to compile where S_ISSOCK is not defined.
24308         * io.c (pipe_open): failed to compile where socketpair is not supported.
24310 Fri Nov 11 08:20:56 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24312         * Makefile.in (OUTFLAG): keep trailing spaces.  [ruby-dev:27666]
24314         * mkconfig.rb: substitution references added.
24316 Fri Nov 11 07:39:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24318         * configure.in: undef HAVE_LINK on BeOS. (link(2) always returns
24319           EINVAL, and this causes error in test/fileutils.)
24321         * file.c: override chown(2) and fchown(2) on BeOS. (these functions
24322           should not change user/group id if -1 is passed as corresponding
24323           argument, and this causes error in test/fileutils too)
24324           [ruby-dev:27672]
24326 Thu Nov 10 21:05:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24328         * lib/shellwords.rb: fix for blank but not empty string.
24329           fixed: [ruby-dev:27663]
24331 Wed Nov  9 08:39:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24333         * lib/shellwords.rb: refactored.  [ruby-core:06581]
24335 Tue Nov  8 17:35:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24337         * intern.h, eval.c (rb_thread_signal_raise): constified.
24339         * signal.c: cosmetic change.
24341 Tue Nov  8 15:32:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24343         * lib/drb/ssl.rb (DRb::SSLConfig#accept): fixed typo.
24344           [ruby-dev:27560] [ruby-core:4627]
24346 Mon Nov  7 20:54:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24348         * ext/iconv/iconv.c: iconvctl() support.  [EXPERIMENTAL]
24350 Mon Nov  7 16:23:23 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24352         * ext/openssl/ossl.h: need to include winsock2.h before including
24353           windows.h by some openssl headers.
24355 Mon Nov  7 13:43:51 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24357         * ext/tk/stubs.c (_nativethread_consistency_check): use simpler
24358           (low cost) way to check whether the Tcl interpreter was compiled
24359           with threads enabled of not.
24361         * ext/tk/tcltklib.c: reduce warnings.
24363         * ext/tk/tkutil/tkutil.c: ditto.
24365 Mon Nov  7 00:06:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24367         * lib/yaml.rb: removed :nodoc: to generate Kernel doc. [ruby-core:6324]
24369 Sun Nov  6 23:39:13 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24371         * ext/iconv/iconv.c (Iconv::BrokenLibrary): exception when detected a
24372           bug of underlying library.
24374 Sun Nov  6 21:43:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24376         * ext/tk/stubs.c (ruby_tcl_create_ip_and_stubs_init): should touch
24377           interpreter after initialization is done. [ruby-dev:27638]
24379 Sun Nov  6 20:13:27 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24381         * file.c (rb_file_s_readlink): readlink(2) on AIX fails with ERANGE if
24382           buffer size is less than required.  fixed: [ruby-dev:27634]
24384 Sat Nov  5 13:42:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24386         * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias
24387           symbols.  [ruby-dev:27532]
24389         * bcc32/mkexports.rb, win32/mkexports.rb: make aliases in DLL.
24391         * win32/win32.c, win32/win32.h: replace symbols only when RUBY_EXPORT
24392           is defined.
24394 Thu Nov  3 07:57:39 2005  Minero Aoki  <aamine@loveruby.net>
24396         * lib/open-uri.rb (open_loop): find_proxy should return nil when
24397           proxy does not exist. [ruby-dev:27630]
24399 Wed Nov  2 20:25:28 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24401         * ext/tk/extconf.rb: ext/tk/extconf.rb: change the check parameter
24402           for Win32.
24404 Wed Nov  2 19:03:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24406         * ext/tk/tcltklib.c (ip_rbUpdateObjCmd, ip_rb_threadUpdateObjCmd):
24407           passed improper flags to DoOneEvent().
24409         * ext/tk/tkutil/tkutil.c: use rb_obj_respond_to() instead of
24410           rb_respond_to().
24412 Tue Nov  1 14:20:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24414         * eval.c (rb_call_super): should call method_missing if super is
24415           called from Kernel method.
24417         * eval.c (exec_under): frame during eval should preserve external
24418           information.
24420 Tue Nov  1 10:48:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24422         * ext/openssl/extconf.rb: should check ERR_peek_last_error().
24423           [ruby-dev:27597]
24425         * ext/openssl/ossl.c (ossl_raise): ditto.
24427 Mon Oct 31 17:34:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24429         * configure.in: use proper option for Sun linker. A patch from
24430           Shinya Kuwamura <kuwa at labs.fujitsu.com>.  [ruby-dev:27603]
24432 Mon Oct 31 05:46:08 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24434         * ext/openssl/ossl_cipher.c (ossl_cipher_update): input data must
24435           not be empty. [ruby-talk:161220]
24437         * test/openssl/test_cipher.rb: add test for Cipher#update("").
24439 Mon Oct 31 05:38:26 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24441         * lib/webrick/httpservlet/cgihandler.rb
24442           (WEBrick::HTTPServlet::CGIHandler#do_GET): the value of Set-Cookie:
24443           header field should be splited into each cookie.  [ruby-Bugs:2199]
24445         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookie): new method
24446           to parse the value of Set-Cookie: header field.
24448         * test/webrick/test_cookie.rb, test/webrick/test_cgi.rb,
24449           test/webrick/webrick.cgi: add some test for cookie.
24451 Mon Oct 31 02:33:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24453         * numeric.c (fix_rshift): RDoc fix.  [ruby-core:6351]
24455         * util.h (strtod): add #undef for platforms defines strtod()
24456           macro.   [ruby-dev:27563]
24458 Mon Oct 31 02:31:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24460         * test/ruby/test_float.rb (test_precision): test by assert_in_delta.
24461           [ruby-dev:27575]
24463 Sat Oct 29 01:58:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24465         * ext/etc/etc.c: document update from mathew <meta@pobox.com>.
24466           [ruby-core:06473]
24468         * ext/fcntl/fcntl.c: ditto.
24470 Sat Oct 29 16:56:03 2005  Tadayoshi Funaba  <tadf@dotrb.org>
24472         * lib/date.rb: added seven predicates sunday? to saturday?.
24474         * lib/date.rb: added two methods {prev,next}_month,
24475           that are almost same as << and >>.
24477 Thu Oct 27 20:34:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24479         * enumerator.c (enumerator_allocate): allow subclassing.
24481 Thu Oct 27 16:45:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24483         * string.c (scan_once): wrong condition to use mbclen2().
24484           [ruby-dev:27535]
24486 Thu Oct 27 11:53:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24488         * missing.h, missing/memcmp.c, missing/memmove.c:
24489           ANSI compatible interface.
24491 Wed Oct 26 09:15:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24493         * ext/syck/implicit.c (syck_type_id_to_uri): should return
24494           newly allocated memory. otherwise, type_id will be freed
24495           twice. [ruby-dev:27384] [ruby-core:6385]
24497 Wed Oct 26 01:58:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24499         * configure.in (RUBY_EXTERN): macro to export symbols in shared
24500           library.  [ruby-core:05528]
24502         * defines.h, {bcc32,win32,wince}/Makefile.sub (RUBY_EXTERN): moved to
24503           configuration pass.
24505         * ext/extmk.rb (extmake): RUBY_EXTERN for static linked extensions.
24507 Tue Oct 25 20:06:59 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24509         * ruby.h (Qfalse, Qtrue, Qnil, Qundef): make sure these immediate
24510           values have VALUE type. there is an environment where sizeof(VALUE)
24511           != sizeof(int) like IA64. if 32bit integer (Qtrue) is passed to ANYARGS
24512           and received by 64bit integer (VALUE), upper bits may have garbage value.
24513           [ruby-dev:27513]
24515 Tue Oct 25 15:32:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24517         * lib/rational.rb: applied documentation patch from Gavin Sinclair
24518           <gsinclair@gmail.com>.  [ruby-core:06364]
24520         * lib/irb.rb (IRB::Irb::eval_input): handle prompts with newlines
24521           in irb auto-indentation mode.  [ruby-core:06358]
24523 Tue Oct 25 14:21:46 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24525         * gc.c (garbage_collect): sorry, previous commit was incorrect.
24526           [ruby-core:6386]
24528 Tue Oct 25 13:40:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24530         * gc.c (garbage_collect): return now whether there're rooms for new
24531           objects, rather than whether GC run. fixed: [ruby-core:6376]
24533 Tue Oct 25 02:12:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24535         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::LABEL_LIST_RE):
24536           reduce redundant backtrack.  [ruby-talk:161771]
24538 Tue Oct 25 00:35:33 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
24540         * lib/rinda/*: RDoc documentation from Eric Hodel
24541           <drbrain@segment7.net> added.
24543 Mon Oct 24 21:14:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24545         * configure.in, io.c: use sys/syscall.h if syscall.h is not available.
24546           [ruby-core:06247]
24548 Mon Oct 24 20:38:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24550         * ext/Win32API/lib/win32/resolv.rb (get_info): support multiple DNS.
24551           fixed: [ruby-list:40058], [ruby-dev:27479]
24553 Mon Oct 24 11:01:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24555         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
24556           typo fixed.  [ruby-talk:162187]
24558         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
24559           ditto.  [ruby-core:06359]
24561 Mon Oct 24 07:57:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24563         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
24564           typo fixed.  [ruby-talk:162187]
24566         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
24567           ditto.  [ruby-core:06359]
24569         * lib/matrix.rb (Matrix::initialize): use funcall instead of send
24570           to allow private methods to be called.  A report from
24571           Jean-Claude Arbaut <jcarbaut@laposte.net>.  [ruby-core:06359]
24573 Mon Oct 24 00:41:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24575         * time.c (time_sunday): added predicate methods for the days of the
24576           week.  [ruby-list:41340]
24578 Sun Oct 23 07:11:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24580         * ext/tk/extconf.rb: improve messages [ruby-core:06325].
24582         * ext/tk/lib/tk.rb, ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/entry.rb,
24583           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/image.rb,
24584           ext/tk/lib/tk/itemconfig.rb, ext/tk/lib/tk/labelframe.rb,
24585           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/menu.rb,
24586           ext/tk/lib/tk/radiobutton.rb, ext/tk/lib/tk/scale.rb,
24587           ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tk/text.rb,
24588           ext/tk/lib/tk/toplevel.rb: improve conversion of option values.
24590         * ext/tk/lib/tkextlib/*: ditto.
24592         * ext/tk/lib/tkextlib/*: update to support ActiveTcl8.4.11.2.
24594         * ext/tk/lib/tkextlib/trofs/*: support Trofs 0.4.3.
24596         * ext/tk/lib/tkextlib/tile/*: support Tile 0.7.2.
24598         * ext/tk/lib/tkextlib/vu/*: support vu 2.3.0.
24600         * ext/tk/lib/tkextlib/tcllib/*: support Tcllib 1.8 (Tklib 0.3).
24602 Sat Oct 22 23:54:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24604         * ext/extmk.rb, lib/mkmf.rb (with_config): support --with-extension
24605           options.  [ruby-dev:27449]
24607 Sat Oct 22 14:25:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24609         * util.[hc] (ruby_add_suffix): constified.
24611         * util.[hc] (ruby_scan_{oct,hex}): fixed typo. (renamed from
24612           scan_{oct,hex})
24614         * util.c: almostly ANSI styled. (except for functions depending on
24615           macro and K&R technique)
24617 Sat Oct 22 13:26:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24619         * object.c (sym_inspect), parse.y (parser_yylex, rb_symname_p): check
24620           if valid as a symbol name more strictly.  [ruby-dev:27478]
24622         * test/ruby/test_symbol.rb: tests for [ruby-core:03573].
24624         * time.c (rb_strftime): removed meaningless volatile modifiers, and
24625           concatenate successive nul characters at once.  [ruby-dev:27472]
24627         * ext/tk/lib/tk/font.rb, ext/tk/lib/tkextlib/ICONS/icons.rb,
24628           ext/tk/sample/tkextlib/treectrl/demo.rb, lib/net/imap.rb,
24629           lib/rss/parser.rb, test/rss/test_content.rb,
24630           test/rss/test_dublincore.rb, test/rss/test_syndication.rb,
24631           test/rss/test_trackback.rb, test/ruby/test_eval.rb,
24632           test/socket/test_socket.rb, test/socket/test_udp.rb:
24633           Object#fcall was renamed as Object#funcall.
24635 Sat Oct 22 10:08:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24637         * missing.h, missing/*.c: SUSv3 compatible strcasecmp and strncasecmp,
24638           ANSI compatible strtol and strtoul, and ANSI styled other functions.
24640 Fri Oct 21 19:16:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24642         * rubysig.h (CHECK_INTS): fixed typo. (I believe bit-or is improper)
24644 Fri Oct 21 17:49:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24646         * bin/erb (ERB::Main::run): typo fixed.  [ruby-core:06337]
24648 Fri Oct 21 15:42:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24650         * intern.h, struct.c (rb_struct_iv_get): constified.
24652         * marshal.c: avoid one VC++6 warning for implicit conversion
24653           from int to char.
24655         * ruby.h: ANSI styled.
24657         * bcc32/Makefile.sub (HAVE_HYPOT): added.
24659         * ext/socket/extconf.rb: BeOS is only one platform should call
24660           closesocket, so check __BEOS__ macro directly. (I was worried
24661           accidently HAVE_CLOSESOCKET is defined on windows again because
24662           it has it)
24664         * ext/socket/{getaddrinfo.c,socket.c}: ditto.
24666         ... these are all cosmetic changes.
24668 Fri Oct 21 15:23:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24670         * bignum.c (bignew_1): convertion from `int' to `char' discards
24671           upper bits, (ie. (char)0xff00 -> 0) so it's better to test if
24672           nonzero and set 0 or 1 instead of simply casting ... as a flag usage.
24673           (but I believe this won't cause actual bug in current implementation)
24674           [ruby-dev:27055]
24676         * time.c: should use LONG_LONG instead of `long long'.
24678 Thu Oct 20 22:22:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24680         * parser.y (struct parser_params): parser never modify input string.
24682         * ext/ripper/tools/preproc.rb (prelude): do not append surplus
24683           newlines to fix line numbers.
24685 Thu Oct 20 11:41:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24687         * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff
24688           protoize generated to ANYARGS.
24690 Thu Oct 20 11:18:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24692         * eval.c, file.c, ruby.c: removed strchr, strrchr, strstr definition
24693           because they are defined in missing.h.
24695         * missing.h, missing/strchr.c, missing/strstr.c: ANSI styled.
24697 Thu Oct 20 09:36:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24699         * lib/mkmf.rb (create_makefile): Borland make seems not to allow
24700           empty dependency list. If this change is not good, please correct
24701           it.
24703 Thu Oct 20 07:55:09 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24705         * lib/mkmf.rb (create_makefile): get rid of a restriction
24706           of Borland make.  fixed: [ruby-dev:27460]
24708         * ext/ripper/depend: ditto.
24710 Wed Oct 19 23:58:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24712         * lib/mkmf.rb (create_makefile): do not create unnecessary empty
24713           directories.  fixed: [ruby-dev:27451]
24715 Wed Oct 19 08:28:32 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24717         * file.c (rb_file_join): elements may contain null pointer strings.
24718           report and fixed by Lloyd Zusman (hippoman): [ruby-core:06326]
24720 Wed Oct 19 02:34:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24722         * enumerator.c, eval.c, gc.c, parse.y, regparse.c, sjis.c, time.c:
24723           made internal symbols static.  [ruby-dev:27435]
24725 Tue Oct 18 10:58:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24727         * ext/dl/depend, ext/dl/extconf.rb, ext/socket/depend,
24728           ext/socket/extconf.rb: shouldn't define DESTCLEANFILES in depend,
24729           use $distcleanfiles in extconf.rb.
24731         * win32/Makefile.sub (distclean-local): should remove .config.h.time.
24733 Mon Oct 17 09:42:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24735         * mkconfig.rb: fixup configure_args for mswin32 configure.
24737         * win32/configure.bat (srcdir, target): ditto.
24739 Mon Oct 17 05:01:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24741         * env.h: move struct METHOD and struct BLOCK from eval.c to
24742           support NodeWrap and ParseTree.
24744 Sun Oct 16 22:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24746         * ext/extmk.rb: omit non-existing directories.
24748 Sun Oct 16 14:40:54 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
24750         * lib/rinda/rinda.rb (Rinda::Tuple#initialize): check remote hash
24751           tuple. fixed: [ruby-list:41227]
24753         * test/rinda/test_rinda.rb: test it.
24755 Sun Oct 16 03:38:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24757         * rubysig.h (CHECK_INTS): prevent signal handler to run during
24758           critical section.  [ruby-core:04039]
24760         * eval.c (load_wait): need not to call rb_thread_schedule()
24761           explicitly.  [ruby-core:04039]
24763         * eval.c (rb_thread_schedule): clear rb_thread_critical.
24764           [ruby-core:04039]
24766 Sun Oct 16 00:13:14 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24768         * win32/configure.bat: remove unnecessary line which prevents
24769           creating Makefile.
24771 Sat Oct 15 23:52:07 2005  Shugo Maeda  <shugo@ruby-lang.org>
24773         * lib/net/ftp.rb: (getbinaryfile): allow nil for localfile, and
24774           returns retrieved data if localfile is nil.
24776         * lib/net/ftp.rb: (gettextfile): ditto.
24778 Sat Oct 15 19:51:29 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
24780         * bin/erb: typo fixed, again. thanks, Doug Kearns.
24782 Fri Oct 14 23:09:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24784         * win32/Makefile.sub (MKFILES): update MKFILES if configure files get
24785           changed.
24787         * win32/configure.bat, win32/setup.mak (configure_args): store
24788           arguments to configure files.
24790 Fri Oct 14 22:05:45 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24792         * win32/win32.c (ioctl): should set errno.
24794 Fri Oct 14 16:39:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24796         * lib/webrick/config.rb (Config::FileHandler): :UserDir should be nil.
24797           It is harmful to permit the access to ~/public_html by default.
24798           suggested by Hiroyuki Iwatsuki.
24800 Fri Oct 14 04:58:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24802         * eval.c (rb_obj_instance_exec): create instance_exec and
24803           module_exec which pass arguments to the block.
24805         * eval.c (rb_f_funcall): rename fcall to funcall to follow
24806           tradition.
24808 Thu Oct 13 23:29:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24810         * parse.y (HEAPCNT): bison allocates indivisible size.
24811           fixed: [ruby-core:06261]
24813         * io.c, pack.c, ext/syck/rubyext.c, ext/syck/syck.h, missing/isinf.c:
24814           get rid of warnings.  fixed: [ruby-core:06247]
24816 Wed Oct 12 12:51:56 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24818         * ext/openssl/ossl.c (Init_openssl): should call
24819           OpenSSL_add_ssl_algorithms().
24821 Wed Oct 12 11:08:54 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
24823         * file.c (rb_f_test): typo in RDoc comments.
24825 Tue Oct 11 21:41:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24827         * configure.in (RUBY_FUNC_ATTRIBUTE): check prefixed attribute form
24828           first.  [ruby-dev:27398]
24830         * array.c, enum.c, eval.c, util.c: safer function pointer usage.
24831           fixed: [ruby-core:06143]
24833         * util.h (qsort): removed the definition incompatible to ANSI.
24834           fixed: [ruby-core:06147]
24836         * eval.c (rb_obj_respond_to): check if obj responds to the given
24837           method with the given visibility.  [ruby-dev:27408]
24839         * eval.c (rb_respond_to): conform to Object#respond_to?.  [ruby-dev:27411]
24841 Tue Oct 11 00:01:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24843         * st.c (st_free_table): do not call free() but xfree().
24844           [ruby-core:06205]
24846 Sat Oct  8 19:49:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24848         * eval.c (Init_Binding): add Binding#dup method.  [yarv-dev:666]
24850         * io.c (rb_io_init_copy): clear PREP flag for copied IO.
24851           fixed: [ruby-dev:27371]
24853         * parse.y (rb_parser_malloc, rb_parser_free): manage parser stack on
24854           heap.  [ruby-list:41199]
24856         * parse.y (ripper_initialize): use rb_respond_to().
24858         * ext/ripper/depend (check): get rid of re-generating ripper.y always.
24860         * ext/iconv/charset_alias.rb: parse config.charset_alias file directly.
24862         * ext/nkf/lib/kconv.rb (Kconv.conv): get rid of nil.to_a.
24864         * lib/scanf.rb (Scanf::FormatSpecifier#letter, #width): use matched
24865           substring directly.
24867         * test/ruby/test_assignment.rb, test/ruby/test_iterator.rb: followed
24868           change of sample/test.rb.
24870         * test/net/http/test_http.rb: removed superfluous splatting stars.
24872 Fri Oct  7 16:41:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24874         * eval.c (splat_value): call rb_Array() to convert svalue to
24875           values.  [ruby-dev:27397]
24877 Fri Oct  7 09:54:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24879         * lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
24880           not be parsed correctly.  A patch from August Z. Flatby
24881           (augustzf) in [ruby-Patches-2595].  [ruby-core:06183]
24883 Thu Oct  6 22:51:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24885         * object.c (rb_Array): Array() to raise error for objects without
24886           to_ary, nor to_a.
24888         * object.c (nil_to_a): revert NilClass#to_a.
24890 Thu Oct  6 20:10:38 2005  Minero Aoki  <aamine@loveruby.net>
24892         * ext/strscan/strscan.c (strscan_free): remove useless code.
24893           [ruby-dev:26368] [ruby-dev:27389]
24895 Thu Oct  6 01:02:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24897         * range.c (rb_range_beg_len): should return Qfalse for non-range
24898           object.
24900 Wed Oct  5 04:42:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24902         * lib/xmlrpc/server.rb (XMLRPC::Server#initialize): should mount the
24903           servlet on "/".
24905 Wed Oct  5 04:06:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24907         * lib/xmlrpc/server.rb (XMLRPC::Server#serve): delete wrong call
24908           of "join".
24910 Mon Oct  3 00:04:00 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
24912         * pack.c (EXTEND16): [ruby-dev:27383]
24914 Sat Oct  1 23:55:24 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24916         * win32/win32.c (do_select, rb_w32_select): brush up.
24918 Sat Oct  1 12:57:02 2005  Tanaka Akira  <akr@m17n.org>
24920         * bignum.c (rb_big_rand): removed.  [ruby-dev:25405]
24922 Sat Oct  1 01:46:51 2005  Tanaka Akira  <akr@m17n.org>
24924         * lib/open-uri.rb (OpenURI.open_loop): prohibit multiple proxy
24925           options.
24927 Thu Sep 29 10:26:18 2005  Tanaka Akira  <akr@m17n.org>
24929         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): abolish sizeof(FILE).
24930           [ruby-dev:27317]
24932 Thu Sep 29 10:15:14 2005  Tanaka Akira  <akr@m17n.org>
24934         * lib/open-uri.rb (:proxy_http_basic_authentication): new option.
24936 Thu Sep 29 07:22:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24938         * eval.c (rb_f_send): underscores need to be escaped.
24939           fixed by Doug Kearns.  [ruby-core:06053]
24941 Thu Sep 29 00:57:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24943         * eval.c (ev_const_get), variable.c (rb_const_get_0): retry only when
24944           autoload succeeded.
24946         * variable.c (rb_autoload_load): now return true if autoload
24947           succeeded.  fixed: [ruby-dev:27331]
24949 Wed Sep 28 23:40:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24951         * file.c (rb_stat_inspect): constified.
24953 Wed Sep 28 15:12:28 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24955         * lib/webrick/cgi.rb (WEBrick::CGI#start): req.query_string should
24956           refer the value of QUERY_STRING. [ruby-list:41186]
24958         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#query_string=):
24959           add new method.
24961 Wed Sep 28 10:45:44 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24963         * ext/tk/tcltklib.c: cannot compile with Tcl/Tk8.0.x [ruby-dev:27335].
24965 Wed Sep 28 07:56:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24967         * lib/yaml/basenode.rb (YAML::BaseNode::match_segment): fix typo.
24968           [ruby-dev:27237], [ruby-core:05854]
24970         * lib/yaml/tag.rb (Module#yaml_as): suppress warnings.
24972         * lib/yaml/types.rb (YAML::PrivateType, YAML::DomainType): ditto.
24974 Wed Sep 28 03:16:41 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
24976         * rubysig.h: fixed build problem with --enable-pthread on platforms
24977           which don't have setitimer().
24979 Mon Sep 26 22:32:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
24981         * eval.c (set_trace_func): add rb_secure(4) to prevent adding
24982           tracing function.
24984 Mon Sep 26 20:59:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24986         * parse.y: changed to ANSI function style.
24988 Sun Sep 25 12:02:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
24990         * bin/erb: typo fixed.
24992 Sun Sep 25 11:54:11 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
24994         * lib/rinda/tuplespace.rb (Rinda::TemplateEntry::initialize): pull
24995           up method. Tabs converted to spaces.
24997 Sun Sep 25 09:34:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
24999         * parse.y: replaced `foo _((boo))' with `foo(boo)'.
25001 Sun Sep 25 08:19:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25003         * test/rss/test_content.rb, test/rss/test_syndication.rb: use fcall
25004           instead of send in order to override visibility.
25006 Sun Sep 25 01:46:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25008         * misc/ruby-mode.el (ruby-calculate-indent): arrange deep-indent
25009           closing parenthesis at same column as the opening.
25011 Sun Sep 25 01:33:41 2005  Tanaka Akira  <akr@m17n.org>
25013         * process.c (proc_setrlimit): make the third argument (rlim_max)
25014           optional.
25016 Sun Sep 25 00:42:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25018         * misc/ruby-mode.el (ruby-expr-beg): deal with heredoc separately.
25019           fixed: [ruby-list:41168]
25021         * misc/ruby-mode.el (ruby-calculate-indent): not to deepen indent
25022           level for continuous line inside parentheses.
25023           http://nabeken.tdiary.net/20050915.html#p02
25025 Sat Sep 24 21:19:39 2005  Minero Aoki  <aamine@loveruby.net>
25027         * ext/strscan/strscan.c: document enhancement.
25029         * ext/strscan/strscan.c: update copyright year.
25031         * ext/strscan/strscan.c: update coding style.
25033 Sat Sep 24 20:20:05 2005  Minero Aoki  <aamine@loveruby.net>
25035         * test/net/http/test_http.rb (teardown): Net::HTTP.version_1_1 breaks
25036           many other tests; ensure that Net::HTTP is version 1.2 after test.
25037           [ruby-dev:27312]
25039 Sat Sep 24 11:44:28 2005  Minero Aoki  <aamine@loveruby.net>
25041         * test/net/http/test_http.rb: new file.
25043 Sat Sep 24 08:54:05 2005  Minero Aoki  <aamine@loveruby.net>
25045         * lib/fileutils.rb (cd): no longer accept :noop option, related
25046           code is useless. [ruby-core:05858] [ruby-Bugs:2494]
25048 Sat Sep 24 08:30:00 2005  Tanaka Akira  <akr@m17n.org>
25050         * lib/pathname.rb (Pathname#sub): new method.
25052 Sat Sep 24 08:29:36 2005  Minero Aoki  <aamine@loveruby.net>
25054         * lib/fileutils.rb: fix visibility of FileUtils::NoWrite, Verbose,
25055           DryRun. [ruby-core:05954]
25057         * test/fileutils/test_nowrite.rb: test it.
25059         * test/fileutils/test_dryrun.rb: new file.
25061         * test/fileutils/test_verbose.rb: new file.
25063 Sat Sep 24 07:59:01 2005  Minero Aoki  <aamine@loveruby.net>
25065         * sample/ripper/colorize.rb: removed (replaced by ruby2html.rb).
25067         * sample/ripper/ruby2html.rb: added.
25069 Sat Sep 24 06:35:15 2005  Minero Aoki  <aamine@loveruby.net>
25071         * ext/ripper: no longer generates .rb files.
25073         * parse.y (Init_ripper): ripper_init_eventids*() takes 1 argument,
25074           self (class Ripper).
25076         * ext/ripper/depend: target removed: `lib/ripper/core.rb'.
25078         * ext/ripper/depend: new target `eventids2table.c'.
25080         * ext/ripper/depend: new target `check'.
25082         * ext/ripper/eventids2.c: include eventids2table.c.
25084         * ext/ripper/eventids2.c: initialize SCANNER_EVENT_TABLE.
25086         * ext/ripper/extconf.rb: update $cleanfiles list.
25088         * ext/ripper/tools/generate.rb: no longer generate ripper/core.rb.
25090         * ext/ripper/tools/generate.rb: new mode `check'.
25092         * ext/ripper/tools/generate.rb: new mode `eventids2table'.
25094         * ext/ripper/lib/ripper/core.rb.in: removed.
25096         * ext/ripper/lib/ripper/core.rb: added.
25098         * ext/ripper/lib/ripper/filter.rb: update copyright year.
25100         * ext/ripper/lib/ripper/lexer.rb: ditto.
25102         * ext/ripper/lib/ripper/sexp.rb: ditto.
25104 Sat Sep 24 02:40:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25106         * lib/delegate.rb: document update from James Edward Gray II
25107           <james@grayproductions.net>.  [ruby-core:05942]
25109 Sat Sep 24 02:05:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25111         * process.c (proc_daemon): should restrict execution on levels
25112           higher than $SAFE=2.  suggested by URABE Shyouhei
25113           <shyouhei@ice.uec.ac.jp>.
25115 Fri Sep 23 20:10:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25117         * ext/ripper/tools/generate.rb, ext/ripper/tools/preproc.rb: StringIO
25118           is not available for miniruby.  fixed: [ruby-dev:27307]
25120 Fri Sep 23 17:36:48 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
25122         * ext/win32ole/win32ole.c: avoid core dump with WIN32OLE_EVENT.
25123           [ruby-dev:27133]
25125 Fri Sep 23 16:27:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25127         * lib/forwardable.rb: replaced by new implementation from
25128           <Daniel.Berger@qwest.com>.  [ruby-core:05899]
25130 Fri Sep 23 07:07:47 2005  Minero Aoki  <aamine@loveruby.net>
25132         * test/ripper/depend: use --output option instead of redirect;
25133           nmake does not remove a target when the target file is created by
25134           redirect. [ruby-dev:26466]
25136         * test/ripper/tools/preproc.rb: new option --output.
25138 Fri Sep 23 06:57:52 2005  Minero Aoki  <aamine@loveruby.net>
25140         * test/ripper/tools/generate.rb: check parser event arity.
25142         * test/ripper/tools/generate.rb: detect crash of parser-event-IDs
25143           and scanner-event-IDs.
25145 Fri Sep 23 06:01:30 2005  Minero Aoki  <aamine@loveruby.net>
25147         * test/ruby/test_file.rb: check File#chown(nil,nil).
25148           [ruby-dev:27140]
25150 Fri Sep 23 05:57:23 2005  Minero Aoki  <aamine@loveruby.net>
25152         * ext/ripper: refactoring code generation tools. [ruby-dev:27247]
25153           [ruby-dev:27273]
25155         * ext/ripper/depend: use generate.rb.
25157         * ext/ripper/lib/ripper/core.rb: removed.
25159         * ext/ripper/tools/generate-eventids1.rb: removed (code moved to
25160           generate.rb).
25162         * ext/ripper/tools/generate-ripper_rb.rb: removed (code moved to
25163           generate.rb).
25165         * ext/ripper/tools/list-parse-event-ids.rb: removed (code moved to
25166           generate.rb).
25168         * ext/ripper/tools/list-scan-event-ids.rb: removed (code moved to
25169           generate.rb).
25171         * ext/ripper/lib/ripper/core.rb: removed.
25173         * ext/ripper: refactoring tests. [ruby-dev:27273]
25175         * ext/ripper/test/check-event-arity.rb: removed (code moved to
25176           tools/generate.rb).
25178         * ext/ripper/test/check-event-coverage.rb: removed (code moved to
25179           test/ripper/test_parser_events.rb).
25181         * ext/ripper/test/check-scanner-event-coverage.rb: removed (code
25182           moved to test/ripper/test_scanner_events.rb).
25184         * ext/ripper/test/list-called-events.rb: removed.
25186         * ext/ripper/test/src_rb: removed.
25188         * ext/ripper/test/validate.rb: removed.
25190         * test/ripper/test_scanner_events.rb: check event coverage.
25192         * ext/ripper/lib/ripper/core.rb.in: update copyright year.
25194 Thu Sep 22 23:40:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25196         * lib/mkmf.rb (find_executable0): default path if environment is not
25197           set.  [ruby-dev:27281]
25199         * ext/ripper/extconf.rb (have_command): replaced with find_executable.
25201 Thu Sep 22 17:31:48 2005  Shugo Maeda  <shugo@ruby-lang.org>
25203         * test/readline/test_readline.rb (TestReadline::replace_stdio):
25204           merged the patch of [ruby-dev:25232] instead of [ruby-dev:25223].
25205           (merged from ruby_1_8 branch)
25207 Wed Sep 21 23:30:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25209         * lib/mkmf.rb (configuration): generalized nmake dependent code.
25211 Wed Sep 21 14:16:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
25213         * ext/ripper/depend (SUFFIXES): no longer needed.
25215         * ext/ripper/depend (c): avoid nmake problem. fixed [ruby-dev:27191]
25217 Wed Sep 21 08:52:25 2005  why the lucky stiff  <why@ruby-lang.org>
25219         * ext/syck/token.c: correctly compute indentation of a block
25220           scalar's parent node. [ruby-talk:150620]
25222 Wed Sep 21 08:20:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25224         * README.EXT, README.EXT.ja: add new features.
25226 Wed Sep 21 07:43:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25228         * lib/optparse.rb (default_argv, Arguable#options): defaults strings
25229           to be parsed to Arguable instance.
25231 Wed Sep 21 02:44:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25233         * file.c (path_check_0): disallow sticky world writable directory
25234           in PATH (and $LOAD_PATH).  [ruby-dev:27226]
25236 Wed Sep 21 00:32:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25238         * numeric.c (fix_idiv): 1.div(1.0) should return integer value.
25239           [ruby-dev:27235]
25241 Tue Sep 20 22:25:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25243         * ext/io/wait/lib/nonblock.rb: disable on platforms non-blocking flag
25244           is not available.  fixed: [ruby-dev:27187]
25246         * file.c (rb_stat_inspect): protoized function pointer.
25248 Tue Sep 20 18:23:04 2005  Tanaka Akira  <akr@m17n.org>
25250         * eval.c (thread_mark): mark th->last_status.  [ruby-dev:27179]
25252 Tue Sep 20 18:20:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25254         * lib/yaml.rb: require 'yaml/constants'.  [ruby-core:5776]
25256 Tue Sep 20 17:48:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25258         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): add charset
25259           information to content-type header.[ruby-core:5127]
25261         * lib/xmlrpc/server.rb (CGIServer::serve): ditto.
25263         * lib/xmlrpc/server.rb (ModRubyServer::serve): ditto.
25265         * lib/xmlrpc/server.rb (WEBrickServlet::service): ditto.
25267 Tue Sep 20 17:26:42 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25269         * test/webrick/test_cgi.rb: set ENV["PATH"] to CGIEnvPath on
25270           windows. bcc32's runtime is not installed into system directory,
25271           so it cannot be found without this setting. [ruby-dev:27166]
25273 Tue Sep 20 17:14:10 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25275         * io.c: PIPE_BUF is not defined on BeOS. use _POSIX_PIPE_BUF instead.
25276           [ruby-dev:27185]
25278 Tue Sep 20 17:10:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25280         * test/dbm/test_dbm.rb (TestDBM::test_s_open_error): remove
25281           test_s_open_error test to detect duplicate open.
25282           [ruby-dev:27202]
25284 Tue Sep 20 15:39:40 2005  why the lucky stiff  <why@ruby-lang.org>
25286         * ext/syck/emitter.c (syck_scan_scalar): prevent indicators from
25287           appearing alone or at the end of plain scalars. [ruby-core:5826]
25289         * ext/syck/emitter.c (syck_emit_scalar): treat typed scalar nodes
25290           as complex keys.
25292         * lib/syck.h: version 0.60.
25294         * lib/yaml/basenode.rb (YAML::BaseNode#at): transform keys during
25295           key searches.
25297         * ext/syck/rubyext.c: loading of binary-typed nodes.  prevent
25298           emission of plain strings that look like symbols, but which aren't.
25300 Tue Sep 20 05:48:26 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25302         * test/xmlrpc/test_webrick_server.rb (setup_http_server):
25303           should not include 'webrick/https' unless 'use_ssl' because
25304           it fails where openssl is not installed.
25306 Tue Sep 20 01:24:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25308         * eval.c (splat_value): use to_a to splat non Array object.
25310         * object.c (nil_to_a): remove nil.to_a.  [experimental]
25312 Tue Sep 20 01:01:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25314         * lib/mathn.rb (Fixnum): remove debug print.
25316         * lib/rational.rb (Rational): ditto.
25318 Tue Sep 20 00:34:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25320         * io.c (io_close): call rb_io_close() directly if io is a T_FILE
25321           object.  [ruby-dev:27156]
25323 Mon Sep 19 18:58:10 2005  Minero Aoki  <aamine@loveruby.net>
25325         * file.c (rb_file_chown): should accept nil. [ruby-dev:27171]
25327 Mon Sep 19 18:29:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25329         * file.c (file_expand_path): allow pathnames to expand.
25330           [ruby-dev:27152]
25332 Mon Sep 19 15:12:15 2005  Minero Aoki  <aamine@loveruby.net>
25334         * ext/ripper/depend: do not make ripper/core.rb. [ruby-dev:26462]
25336 Mon Sep 19 14:49:19 2005  Minero Aoki  <aamine@loveruby.net>
25338         * ext/ripper/eventids2.c: add prefix `t' to tLAMBDA-related lexer
25339           events.
25341         * ext/ripper/lib/ripper/core.rb: updated.
25343 Mon Sep 19 14:39:46 2005  Minero Aoki  <aamine@loveruby.net>
25345         * parse.y (do_block): do_block event dispatches 2 args.
25346           [ruby-dev:26964]
25348         * ext/ripper/lib/ripper/core.rb: updated.
25350         * ext/ripper/tools/list-parser-event-ids.rb: check arity mismatch.
25352 Mon Sep 19 07:45:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25354         * ext/openssl/ossl_pkey.h, ossl_pkey_rsa.c, ossl_pkey_dsa.c:
25355           an instance variable "private" is added to OpenSSL::PKey class.
25356           this ivar is a flag that shows whether there is a private key
25357           in the instance.
25359         * ext/openssl/ossl_engine.c: (ossl_engine_load_privkey): set private
25360           key flag.
25362         * test/openssl/test_pkey_rsa.rb: add test about private detection.
25364 Mon Sep 19 06:38:03 2005  Minero Aoki  <aamine@loveruby.net>
25366         * lib/fileutils.rb: method renaming: collect_methods ->
25367           collect_method.
25369 Mon Sep 19 05:58:59 2005  Minero Aoki  <aamine@loveruby.net>
25371         * lib/fileutils.rb: use module_function instead of single extend.
25373         * test/fileutils/test_fileutils.rb: test existence of singleton
25374           methods.
25376 Mon Sep 19 05:32:41 2005  Minero Aoki  <aamine@loveruby.net>
25378         * lib/fileutils.rb (remove_entry_secure): does not use chdir(2).
25380 Mon Sep 19 03:17:48 2005  Tanaka Akira  <akr@m17n.org>
25382         * file.c (rb_thread_flock): wrap the flock system call by
25383           TRAP_BEG/TRAP_END to enable signals.  [ruby-dev:27122]
25385         * ext/socket/socket.c (bsock_send): wrap the sendto and send system
25386           call by TRAP_BEG/TRAP_END to enable signals when writing to a socket
25387           which is full.  [ruby-dev:27132]
25389         * io.c (rb_io_syswrite): wrap the write system call by
25390           TRAP_BEG/TRAP_END to run signal hander in syswrite method.
25391           [ruby-dev:27134]
25393 Mon Sep 19 01:07:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25395         * numeric.c (Init_Numeric): should define Fixnum#div.
25396           [ruby-dev:27129]
25398         * file.c (rb_thread_flock): wrap flock(2) by TRAP_BEG and
25399           TRAP_END.  [ruby-dev:27122]
25401         * file.c (rb_file_join): call FilePathValue() to all Pathnames to
25402           join.  [ruby-dev:27127]
25404         * file.c (rb_get_path): call StringValueCStr() to ensure no nul
25405           bytes in path strings.
25407         * gc.c (garbage_collect): need value for return.  [ruby-dev:27127]
25409 Sun Sep 18 02:10:47 2005  why the lucky stiff  <why@ruby-lang.org>
25411         * lib/yaml/rubytypes.rb: remove comments that are bungling up
25412           the rdoc and ri output.  output symbols as plain scalars.
25414         * ext/syck/rubyext.c (syck_emitter_reset): emit headless
25415           documents always.
25417         * ext/syck/emitter.c (syck_scan_scalar): quote scalars with any
25418           kind of surrounding line space, tabs or spaces alike.
25420         * ext/syck/token.c: accept tabs as whitespace, not for indentation,
25421           but strip from plain scalars.
25423         * test/yaml/test_yaml.rb: remove outdated tests.
25425 Sun Sep 18 01:10:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25427         * gc.c (garbage_collect): return false if no GC run.
25429 Sat Sep 17 23:25:04 2005  sheepman  <sheepman@sheepman.sakura.ne.jp>
25431         * lib/mathn.rb (Rational::inspect): should preserve original
25432           operand.  [ruby-core:05806]
25434 Sat Sep 17 23:20:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25436         * lib/cgi.rb (CGI::Cookie): should handle multiple values for a
25437           cookie name.  [ruby-talk:156140]
25439         * test/socket/test_tcp.rb (TestTCPSocket::test_recvfrom): typo
25440           fixed.  [ruby-dev:27123]
25442 Sat Sep 17 20:58:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25444         * win32/win32.c (rb_w32_select): fixed deadlock bug.
25445           because select(2) modifies its fd_set arguments, it must be
25446           restored sometimes.
25448         * win32/win32.c (rb_w32_select): performance improvement when
25449          'always readable/writable handles' and sockets are passed.
25450           sockets should be polled every time.
25452             require "net/http"
25454             Thread.new {
25455               loop do
25456                 STDOUT.write(".") # busy on console (this is worst case though)
25457               end
25458             }
25460             # socket operation took long time. (sometimes timed out)
25461             Net::HTTP.start("www.ruby-lang.org") do |http|
25462                 http.get("/cgi-bin/cvsweb.cgi/ruby/array.c?rev=1.179")
25463             end
25465 Sat Sep 17 14:54:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25467         * test/ruby/test_readpartial.rb (test_open_pipe, test_with_stdio):
25468           these tests are working now, so turned on. (windows)
25470 Sat Sep 17 14:18:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25472         * win32/win32.c (rb_w32_select): I hope performance problem was
25473           solved.
25475 Sat Sep 17 13:45:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25477         * win32/win32.c (rb_w32_select): console support is back.
25478           but still has performance problem because I loosely took 1 second
25479           for wait time. I'll fix it later. (The reason I drastically changed
25480           the code is that I wanted to implement the fileset management as
25481           single function, and I was worried that if pipe or console
25482           was always available, socket may not be processed any time)
25484 Sat Sep 17 11:24:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25486         * win32/win32.c (rb_w32_select): select for socket didn't work.
25487           this caused deadlock in drb test. this happened because GetFileType
25488           for socket handle returns FILE_TYPE_PIPE. Of course, it's not a
25489           pipe. So socket handle didn't reach winsock's select function.
25491         * win32/win32.c (rb_w32_select): read for pipe was still blocked
25492           even if writer handle was closed.
25494             r,w = IO.pipe
25496             Thread.new {
25497               sleep 3; puts "------- 1"
25498               w.puts("foo")
25499               sleep 3; puts "------- 2"
25500               w.puts("boo")
25501               sleep 3; puts "------- 3"
25502               w.close
25503             }
25505             until r.eof? # should break by w.close but didn't.
25506               puts r.gets
25507             end
25509         * win32/win32.c (rb_w32_select): temporary reverted console support
25510           but it'll be back soon.
25512 Sat Sep 17 10:42:13 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25514         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
25515           should call Kernel.eval on caller's safe-level instead of slave's
25516           safe-level (Of course, the given script should be evaluated on
25517           slave's safe-level).
25519 Sat Sep 17 09:45:26 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25521         * string.c (rb_str_substr): should propagate taintness even for
25522           empty strings.  [ruby-dev:27121]
25524         * string.c (rb_str_aref): should infect result if range argument
25525           is tainted.  [ruby-dev:27121]
25527 Sat Sep 17 08:35:39 2005  Kouhei Sutou  <kou@cozmixng.org>
25529         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#normalize): fixed
25530           strange RSS::Maker::Item#max_size behavior.
25531           Thanks to Kazuhiko <kazuhiko@fdiary.net>.
25533         * test/rss/test_maker_1.0.rb (RSS::TestMaker10#test_items): ditto.
25535 Sat Sep 17 08:02:53 2005  Shugo Maeda  <shugo@ruby-lang.org>
25537         * lib/net/imap.rb: supported DIGEST-MD5.  Thanks, Mathieu Arnold.
25539         * lib/net/imap.rb: use fcall instead of send.  Thanks, Satoru
25540           Takabayashi.
25542 Fri Sep 16 22:45:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25544         * file.c (rb_file_s_extname): empty string for path name ending with a
25545           period.  fixed: [ruby-core:05651]
25547         * file.c (rb_file_join): smarter behavior at edge cases.
25548           fixed: [ruby-core:05706]
25550         * gc.c (rb_memerror, ruby_xmalloc, ruby_xrealloc, rb_newobj): just
25551           abondon if no memory available, when interpreter is not running.
25552           [ruby-dev:27104]
25554         * gc.c (garbage_collect): return whether GC could run.
25556         * dir.c (rb_push_glob): fix delimiter bug.  fixed: [ruby-dev:27105]
25558         * dir.c (dir_s_aref, dir_s_glob): allow multiple patterns.
25559           [ruby-dev:27110]
25561         * win32/win32.c (cmdglob): enable brace expansion.
25563 Fri Sep 16 18:34:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25565         * ext/syck/node.c (syck_replace_str): was using return from the
25566           void function.  a patch from MIYAMUKO Katsuyuki
25567           <miyamuko at mtb.biglobe.ne.jp>.  [ruby-dev:27111]
25569 Fri Sep 16 14:48:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25571         * ext/tk/lib/multi-tk.rb: fix typo on MultiTkIp#bg_eval_string
25573 Fri Sep 16 12:02:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25575         * ext/syck/rubyext.c (syck_resolver_transfer): remove C++ style
25576           comment (//).  [ruby-core:05793]
25578 Fri Sep 16 00:17:03 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
25580         * test/logger/test_logger.rb: unintentionally overwritten changes by
25581           Usa.  reverted.
25583 Fri Sep 16 00:03:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25585         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#initialize): should set
25586           $stdout.binmode.
25588 Thu Sep 15 23:25:21 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
25590         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.5.
25592           #nnn is a ticket number at http://dev.ctor.org/soap4r
25594           * SOAP
25596             * allow to configure an envelope namespace of SOAP request. (#124)
25597                 TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope'
25598                 @client.options["soap.envelope.requestnamespace"] =
25599                   TemporaryNamespace
25600                 @client.options["soap.envelope.responsenamespace"] =
25601                   TemporaryNamespace
25602                 @client.do_proc(...)
25604             * let SOAP request XML indent space configuable.  see
25605               "soap.envelope.no_indent" option. (#130)
25607             * let external CES configuable.
25608               ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used
25609               by default. (#133)
25610                 external CES ::= CES used in Ruby object of client and server
25611                 internal CES ::= CES used in SOAP/OM
25613             * add iso-8859-1 external CES support. (#106)
25615             * fixed illegal 'qualified' handling of elements.  it caused
25616               ASP.NET inteoperability problem. (#144)
25618             * added 'soap.envelope.use_numeric_character_reference' (boolean)
25619               option to let query XML use numeric character reference in XML,
25620               not plain UTF-8 character.  !GoogleSearch server seems to not
25621               allow plain UTF-8 character since 2005-08-15 update. (#147)
25623             * SOAP::Header::SimpleHeader (de)serialization throws an exception
25624               on !SimpleHeader.on_(in|out)bound when header is a String.  so we
25625               could not use a simple single element headerItem.  fixed.  thanks
25626               to emil. (#129)
25628             * out parameter of rpc operation did not work.  (#132)
25630             * follow HTTP redirect only if using http-access2.  (#125) (#145)
25632             * add a workaround for importing an WSDL whose path begins with
25633               drive letter.  (#115)
25635           * WSDL
25637             * SOAP Data which is defined as a simpletype was not mapped
25638               correctly to Ruby obj when using wsdl2ruby.rb generated classdef
25639               file. (#123)
25641             * rpc/literal support. (#118)
25643             * re-implemented local element qualify/unqualify control.  handles
25644               elementFormDefault and form in WSDL.  (#119)
25646             * Array of an element which has simpleType causes a crash. (#128)
25648             * prarmeterOrder may not contain return part so it can be shorter
25649               than parts size.  Thanks to Hugh.  (#139)
25651           * Samples
25653             * added !BasicAuth client sample. (#117)
25655             * added Base64 client/server sample.
25657             * added Flickr SOAP interface client sample. (#122)
25659             * added !SalesForce client sample. (#135)
25661             * updated Thawte CA certificate for !GoogleAdWords sample.
25663             * updated a client script with the newer version made by Johan.
25664               thanks!
25666             * shortened long file names. (#120)
25668             * fixed typo in authheader sample. (#129)
25670             * updated deprecated method usage.  (#138)
25672 Thu Sep 15 22:40:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
25674         * test/ruby/test_signal.rb (test_exit_action): skip the test using
25675           fork on fork-less platforms.
25677 Thu Sep 15 13:54:33 2005  Tanaka Akira  <akr@m17n.org>
25679         * lib/open-uri.rb: add :read_timeout option.
25680           [ruby-core:4848]
25682 Thu Sep 15 11:39:18 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25684         * ext/tk/lib/tk/dialog.rb: If a dialog does not show up yet,
25685           TkDialogObj#name raises an exception. [ruby-talk:156109]
25687 Thu Sep 15 11:01:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
25689         * win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().
25691         * win32/win32.c (extract_console_fd, peek_console): new functions.
25693         * win32/win32.c (rb_w32_select): check consoles by polling them.
25695 Thu Sep 15 00:18:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25697         * lib/net/telnet.rb (Net::Telnet::waitfor): replace sysread with
25698           readpartial.  [ruby-talk:127641]
25700 Wed Sep 14 23:28:28 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
25702         * win32/win32.c (collect_file_fd): rename from extract_file_fd.
25704         * win32/win32.c (extract_pipe_fd, peek_pipe): new functions.
25706         * win32/win32.c (rb_w32_select): check pipes by polling them.
25708 Wed Sep 14 22:40:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25710         * dir.c (ruby_glob): glob function not using ruby exception system.
25712 Wed Sep 14 17:24:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25714         * dir.c: changed `foo (*bar)_((boo))' to `foo (*bar)(boo)`.
25716         * enumerator.c, eval.c, gc.c, intern.h, io.c, process.c, ruby.c,
25717           ruby.h, signal.c: ditto.
25719 Wed Sep 14 15:06:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25721         * bignum.c: changed `foo _((boo))' to `foo(boo)`. [ruby-dev:27056]
25723         * defines.h, dir.c, dln.h, enumerator.c, env.h, error.c, eval.c, file.c,
25724           gc.c, hash.c, inits.c, intern.h, io.c, lex.c, marshal.c, missing.h,
25725           node.h, numeric.c, pack.c, process.c, re.h, ruby.c, ruby.h, rubyio.h,
25726           rubysig.h, signal.c, sprintf.c, st.h, string.c, struct.c, time.c,
25727           util.c, util.h, variable.c: ditto.
25729 Tue Sep 13 22:09:40 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
25731         * lib/logger.rb (Logger): added formatter accessor to logger for
25732           dictating the way in which the logger should format the messages it
25733           displays.  Thanks to Nicholas Seckar (cf. [ruby-talk:153391]) and
25734           Daniel Berger.
25736         * lib/logger.rb (Logger): added VERSION constant.
25738         * lib/logger.rb: removed document for LogDevice. It is an
25739           implementation detail and is not a public interface.
25741         * test/logger/test_logger.rb: added tests.
25743 Tue Sep 13 21:47:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25745         * eval.c (BEGIN_CALLARGS): pop halfly pushed status.
25746           fixed: [ruby-dev:26881]
25748 Tue Sep 13 20:24:37 2005  Tanaka Akira  <akr@m17n.org>
25750         * ruby.h (PRINTF_ARGS): new macro for printf style argument checking.
25752 Tue Sep 13 15:41:29 2005  Minero Aoki  <aamine@loveruby.net>
25754         * lib/net/http.rb: wrote docuemntation of HTTPRequest/HTTPResponse
25755           classes.
25757 Tue Sep 13 14:27:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25759         * string.c, missing.h: failed to build on powerpc-apple-darwin7.9.0
25760           because of crypt argument's constness mismatch. (I hope this works)
25761           (http://mput.dip.jp/autobuild/ruby-trunk/log/20050913T110001.gz)
25763 Tue Sep 13 12:33:05 2005  why the lucky stiff  <why@ruby-lang.org>
25765         * lib/yaml.rb: reworking YAML::Stream to use the new
25766           emitter.
25768         * lib/yaml/stream.rb: ditto.
25770         * lib/yaml/rubytypes.rb: added Object#yaml_new.
25772         * lib/yaml/tag.rb: the tag_subclasses? method now
25773           shows up in the class.  allow taguri to be set using an accessor.
25774           continue support of Object#to_yaml_type.
25776         * ext/syck/rubyext.c: new emitter code.  yaml_new and yaml_initialize
25777           get called, should they be present.  consolidated all the diaspora of           internal node types into the family below YAML::Syck::Node -- Map,
25778           Seq, Scalar -- all of whom are SyckNode structs pointing to
25779           Ruby data.  moved Object#yaml_new into the node_import and made it
25780           the default behavior.  the target_class is always called wih
25781           yaml_new, prepended a parameter, which is the klass.  loaded nodes
25782           through GenericResolver show their style.
25783           new Resolver#tagurize converts type ids to taguris.
25785         * ext/syck/implicit.re: were 'y' and 'n' seriously omitted??
25787         * ext/syck/emitter.c: renovated emitter, walks the tree in advance.
25788           consolidated redundant block_styles struct into
25789           the scalar_style struct.  (this means loaded nodes can now
25790           be sent back to emitter and preserve at least its very basic
25791           formatting.)
25793         * ext/syck/gram.c: headless documents of any kind allowed.
25795         * ext/syck/node.c: new syck_replace_str methods and syck_empty_*
25796           methods for rewriting node contents, while keeping the ID
25797           and other setup info.  added syck_seq_assign.
25799         * ext/syck/syck.h: reflect block_styles and new node functions.
25801 Tue Sep 13 08:09:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25803         * lib/ostruct.rb (new_ostruct_member): Object#send no longer call
25804           private methods.  [ruby-dev:27044]
25806         * test/rss/test_dublincore.rb, test/rss/test_trackback.rb,
25807           test/ruby/test_eval.rb, test/socket/test_socket.rb: ditto.
25809         * test/ruby/test_lambda (test_call_with_block): lambda makes new scope
25810           for formal block parameter.
25812 Tue Sep 13 01:17:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25814         * eval.c (proc_save_safe_level): no need to restrict safe level
25815           memoize in $SAFE>=3.  [ruby-dev:27050]
25817 Tue Sep 13 00:02:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25819         * file.c (apply2files): stricter callback definition.
25821         * file.c (rb_path_check): constified.
25823 Mon Sep 12 20:53:06 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25825         * test/openssl/test_pkcs7.rb (test_enveloped): skip this test
25826           to avoid a bug of PKCS7_enctypt() (only if ext/openssl is
25827           compiled with OpenSSL-0.9.7d or earlier versions).
25828           http://www.mail-archive.com/openssl-dev@openssl.org/msg17376.html
25830 Mon Sep 12 20:32:00 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25832         * win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest change
25833           to avoid incompatible pointer warning. (mingw32)
25835 Mon Sep 12 19:58:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25837         * dln.c: avoid warning of const to non-const convertion.
25838           [ruby-dev:27041]
25840         * eval.c, io.c, ruby.c: ditto.
25842 Mon Sep 12 19:26:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25844         * array.c: moved to ANSI function style from K&R function style.
25845           (used protoize on windows, so still K&R remains on #ifdef part of
25846            other platforms. And  `foo _((boo))' stuff is still there)
25847            [ruby-dev:26975]
25849         * bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
25850           enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
25851           io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
25852           prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
25853           regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
25854           sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
25855           version.c: ditto.
25857 Mon Sep 12 14:03:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25859         * test/dbm/test_dbm.rb: remove locking test, which may not be
25860           supported on some platforms.  [ruby-dev:27030]
25862 Sun Sep 11 23:23:02 2005  Shugo Maeda  <shugo@ruby-lang.org>
25864         * lib/net/imap.rb (starttls): supported the STARTTLS command.
25866 Sun Sep 11 22:18:07 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
25868         * bin/erb (ERB::Main#run): set ERB#filename so that it is used
25869           when reporting syntax/runtime errors. Tabs converted to spaces.
25871 Sat Sep 10 22:34:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25873         * array.c, bignum.c: protoize.
25875 Sat Sep 10 00:23:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25877         * eval.c (splat_value): simpler and consistent array conversion
25878           for argument splat.  [yarv-dev:599]
25880 Fri Sep  9 16:45:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25882         * string.c (rb_str_times): make empty strings to keep taintness,
25883           and a little improvement.  [ruby-dev:26900]
25885         * ext/iconv/iconv.c (iconv_try), ext/iconv/extconf.rb: get rid of meta
25886           characters in command line option.  fixed: [ruby-talk:155369]
25888         * ext/iconv/iconv.c: protoized.
25890 Thu Sep  8 14:58:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25892         * merged a patch from Takahiro Kambe <taca at back-street.net> to
25893           support DragonFly BSD.  [ruby-dev:26984]
25895 Thu Sep  8 13:14:57 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
25897         * missing/strchr.c (strrchr): fixed a bug in detecting NUL in a
25898           string.  [ruby-dev:26985]
25900 Wed Sep  7 17:29:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25902         * ext/openssl/ossl_engine.c (ossl_engine_s_by_id):
25903           OpenSSL::Engine.by_id calls given block before calling
25904           ENGINE_init (block parameter is the return value of this method
25905           itself).  this functionality is useful to load dynamic shared
25906           engines.
25908                 require "openssl"
25909                 pkcs11 = OpenSSL::Engine.by_id("dynamic"){|e|
25910                   e.ctrl_cmd("SO_PATH", "/usr/lib/opensc/engine_pkcs11.so")
25911                   e.ctrl_cmd("LIST_ADD", "1")
25912                   e.ctrl_cmd("LOAD")
25913                 }
25914                 pkcs11.ctrl_cmd("PIN", "secret")
25915                 key = pkcs11.load_private_key
25917         * ext/openssl/ossl_engine.c (ossl_engine_ctrl_cmd): new method
25918           OpenSSL::Engine#ctrl_cmd. it wraps ENGINE_ctrl_cmd_string.
25920         * ext/openssl/ossl_engine.c (ossl_engine_get_cmds): new method
25921           OpenSSL::Engine#cmds. it returms engine command definitions.
25923 Wed Sep  7 15:48:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25925         * ext/openssl/ossl_asn1.c (asn1str_to_str): new function.
25927         * ext/openssl/ossl_pkcs7.c: new class OpenSSL::PKCS7::RecipientInfo.
25928           this class wraps PKCS7_RECIP_INFO struct.
25930         * ext/openssl/ossl_pkcs7.c: OpenSSL::PKCS7::Signer is renamed to
25931           OpenSSL::PKCS7::SignerInfo. ("Signer" remains as an alias of
25932           SignerInfo.)
25934         * test/openssl/test_pkcs7.rb: new file.
25936 Wed Sep  7 12:55:08 2005  Tanaka Akira  <akr@m17n.org>
25938         * lib/open-uri.rb: abolish mod === tempfile to avoid a problem
25939           [ruby-dev:26967].
25941 Wed Sep  7 10:45:15 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25943         * eval.c (rb_thread_switch): convert all exceptions to
25944           SystemExit.  fixed: [ruby-core:05724]
25946         * eval.c (rb_thread_terminated): show backtrace before propagate
25947           exceptions to main thread.
25949 Wed Sep  7 09:21:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
25951         * win32/win32.[hc] (rb_w32_utime): constified.
25953         * win32/win32.h (rb_w32_stat): added prototype.
25955         * win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn):
25956           changed `char *const *' to `const char *const *'. (constify string)
25958 Wed Sep  7 08:35:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25960         * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
25961           extension libraries.
25963         * bignum.c (bignew_1, bigadd): K&R style argument actually can't be
25964           defined as char.
25966         * missing/vsnprintf.c: ANSI compiler supports const keyword.
25968         * ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
25969           but no 64bit integer.
25971         * lib/mkmf.rb (what_type?): guesstimate type.
25973         * ext/etc/etc.c (setup_passwd), ext/etc/extconf.rb: pw_age might be
25974           char*.  fixed: [ruby-core:05470]
25976 Wed Sep  7 08:32:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25978         * string.c (rb_str_times): should taint empty strings as well.
25980         * object.c (Init_Object): make class_variable_{get,set} public.
25981           [ruby-dev:26965]
25983 Mon Sep  5 22:28:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25985         * parse.y (stmt, mlhs_node, lhs, arg, method_call): aref_args might be
25986           nothing.  fixed: [ruby-dev:26952]
25988         * ext/ripper/eventids2.c: added new tokens.  fixed: [ruby-dev:26952]
25990 Mon Sep  5 17:03:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
25992         * lib/find.rb: should raise ENOENT if root entry does not exist.
25993           [ruby-list:41054]
25995         * lib/ostruct.rb: a patch from Florian Gross <florgro at gmail.com>
25996           merged to allow recursive inspect (and to_s) for OpenStruct.
25997           [ruby-core:05532]
25999 Mon Sep  5 08:20:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26001         * lib/observer.rb: a patch from nornagon <nornagon at gmail.com>
26002           merged to allow arbitrary names for update methods.
26003           [ruby-core:05416]
26005 Mon Sep  5 07:01:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26007         * ext/openssl/openssl/lib/openssl/buffering.rb (Buffering#do_write):
26008           should clear data from the buffer which already been output.
26010 Sun Sep  4 15:01:35 2005  Minero Aoki  <aamine@loveruby.net>
26012         * parse.y (f_arg): Ripper should not do semantic check.
26013           [ruby-dev:26948]
26015 Sat Sep  3 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26017         * eval.c (rb_f_fcall): new method to avoid inefficiency of
26018           obj.instance_eval{send(...)} tricks.
26020 Sat Sep  3 13:59:31 2005  Tanaka Akira  <akr@m17n.org>
26022         * lib/pathname.rb (Pathname#descend): Pathname.new("./a/b/c").descend
26023           didn't yield "."
26024           (Pathname#ascend): ditto.
26026 Fri Sep  2 23:51:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26028         * parse.y (f_arg): f_norm_arg is a VALUE in ripper, not an ID.
26029           fixed: [ruby-dev:26942]
26031         * lib: do not use __send__ to access private methods.  [ruby-dev:26935]
26033 Thu Sep  1 17:11:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26035         * eval.c (rb_call0): wrong condition for $SAFE restoration.
26037 Thu Sep  1 14:12:45 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26039         * ext/tk/lib/multi-tk.rb: On Tcl8.5, MultiTkIp#invoke_hidden doesn't
26040           work (gives wrong order of arguments).
26042         * ext/tk/lib/multi-tk.rb: add MultiTkIp#invoke_hidden_on_namespace
26043           to support '-namespace' option of 'interp invokehidden' command
26044           on Tcl8.5.
26046 Wed Aug 31 14:41:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26048         * win32/Makefile.sub (OPTFLAGS): default global optimization to
26049           disabled for all VC++ versions.  fixed: [ruby-dev:26897]
26051 Wed Aug 31 10:36:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26053         * process.c (proc_detach, proc_setmaxgroups): missing argument type
26054           declaration. (I recommend ANSI-style function)
26056 Wed Aug 31 06:59:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26058         * string.c (rb_str_scan): already String#scan behaves differently
26059           regarding if block is given.
26061 Tue Aug 30 23:49:34 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26063         * array.c, dir.c, enum.c, hash.c, io.c, range.c, string.c, struct.c:
26064           let enumerable methods return Enumerator.  [ruby-dev:26924]
26066         * intern.h (RETURN_ENUMERATOR): utility macro for enumerable methods.
26068 Tue Aug 30 23:25:45 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26070         * lib/debug.rb: no need to restart at exit.
26072 Tue Aug 30 23:20:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26074         * eval.c (rb_rescue2): initialization miss.  fixed: [ruby-dev:26917]
26076         * lib/mkmf.rb (xsystem, xpopen): no longer expand by Config.
26078         * lib/mkmf.rb (link_command, cc_command, cpp_command): expand
26079           variables at once, and quote hdrdir.  fixed: [ruby-core:05680]
26081         * lib/mkmf.rb (libpathflag): quote paths.
26083 Tue Aug 30 19:34:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26085         * ext/digest/md5/md5ossl.h, ext/digest/rmd160/rmd160ossl.h,
26086           ext/digest/sha1/sha1ossl.h: include <stddef.h> to avoid
26087           error in compilation with OpenSSL-0.9.8. [ruby-list:41068]
26089 Tue Aug 30 16:19:40 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
26091         * lib/irb/init.rb: bug fix. [ruby-dev: 26920]
26093 Tue Aug 30 16:13:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26095         * enum.c (enum_count): new method.  [ruby-dev:26895]
26097 Tue Aug 30 12:45:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26099         * eval.c (rb_f_send): do not call private methods if the receiver
26100           is specified.  [ruby-talk:153672]
26102 Mon Aug 29 19:47:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26104         * lib/rdoc/usage.rb: improper exceptions. [ruby-dev:26870]
26106         * lib/rdoc/usage.rb: support the case when non-ruby code exists before
26107           shebang. (this is needed when ri.bat is executed on windows)
26109 Mon Aug 29 18:58:05 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
26111         * lib/irb/init.rb: make IRB -I option that is same befavior for ruby.
26112           [ruby-dev:26872]
26114         * lib/irb/locale.rb: support to print help message when OS locale is
26115           ja_JP.utf-8. [ruby-dev:26872]
26117 Mon Aug 29 01:43:05 2005  Tanaka Akira  <akr@m17n.org>
26119         * lib/pathname.rb (Pathname#descend): new method.
26120           (Pathname#ascend): ditto.
26122 Mon Aug 29 00:35:09 2005  Tanaka Akira  <akr@m17n.org>
26124         * lib/time.rb: require 'date/format' instead of 'parsedate'.
26125           (Time.parse): extract fractional seconds using Date._parse.
26126           (Time.strptime): extract fractional seconds using Date._strptime.
26127           [ruby-talk:153859]
26129 Sat Aug 27 20:13:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26131         * ext/curses/curses.c ({curses,window}_clrtoeol): added. suggested
26132           by Reyn Vlietstra.
26134         * ext/curses/curses.c: chtype in curses is not `char', rahter `long'.
26135           [ruby-Bugs:2298]
26137         * ext/curses/view.rb: String =~ String is deprecated.
26139 Thu Aug 25 15:48:58 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26141         * ext/win32ole/win32ole.c: supress warnings. (win32)
26143 Wed Aug 24 11:01:26 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26145         * test/logger/test_logger.rb (test_shifting_size): should close log
26146           device before unlink, since some platform cannot unlink opened
26147           file.
26149 Tue Aug 23 06:07:02 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26151         * ext/openssl/lib/digest.rb: added SHA224, SHA256, SHA384 and SHA512.
26152           these features are enabled if this library is compiled with
26153           OpenSSL 0.9.8 or later.
26155         * test/openssl/test_digest.rb: add test for new digests.
26157 Tue Aug 23 05:47:04 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26159         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): try to decode
26160           the argument as a string.
26162         * ext/openssl/ossl_ns_pki.c (ossl_spki_to_der): new method.
26164         * ext/openssl/ossl_x509store.c (ossl_x509store_initialize): should
26165           set @time to avoid warning.
26167         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths,
26168           X509_STORE_add_cert, X509_STORE_add_crl): should raise error if
26169           wrapped functions fails.
26171         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): fix error message.
26173         * ext/openssl/ossl_x509req.c (ossl_x509req_set_attributes): get rid
26174           of unused variable.
26176         * test/openssl/test_ns_spki.rb: add new file.
26178         * test/openssl/test_x509store.rb: add test for error.
26180 Tue Aug 23 01:11:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26182         * sprintf.c (ruby__sfvwrite): should move `buf' to the end of
26183           `result'. [ruby-dev:26859]
26185 Mon Aug 22 23:51:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26187         * parse.y: ONIG_OPTION_CAPTURE_GROUP conflicts with
26188           RE_OPTION_ONCE.  [ruby-dev:26852]
26190 Mon Aug 22 20:11:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26192         * missing/vsnprintf.c (BSD__sprint): needs to call vwrite function
26193           pointer.  fixed: [ruby-dev:26854]
26195 Sat Aug 20 23:55:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26197         * parse.y (parser_yylex): update paren_nest for brackets [].
26199 Sun Aug 21 00:10:23 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26201         * lib/wsdl/xmlSchema/importer.rb (WSDL::XMLSchema::Importer#fetch): add
26202           a workaround for importing an WSDL whose path begins with drive
26203           letter.  [ruby-dev:26242]
26205 Sat Aug 20 22:05:25 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
26207         * regexec.c (code_is_in_cclass_node): check code size.
26208           [ruby-dev:26840]
26210 Sat Aug 20 22:37:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26212         * lib/logger.rb (write, shift_log?, shift_log): file shifting race
26213           condition bug fixed.  [ruby-dev:26764]
26215         * test/logger/test_logger.rb: tests.
26217 Fri Aug 19 18:13:39 2005  Tanaka Akira  <akr@m17n.org>
26219         * lib/time.rb (Time.apply_offset): fix a problem with last day of
26220           month.  reported by Lucas Nussbaum.  [ruby-talk:152866]
26222 Thu Aug 18 11:05:36 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26224         * win32/win32.c (socketpair_internal): need to call open_ifs_socket()
26225           to create sockets instead of winsock's socket().
26226           fixed: [yarv-dev:581]
26228 Wed Aug 17 23:58:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26230         * eval.c (terminate_process): take String message.
26232         * eval.c (rb_thread_switch): propagate the exception caused thread
26233           termination directly.  fixed: [ruby-core:05552]
26235 Wed Aug 17 21:20:05 2005  NARUSE, Yui  <naruse@ruby-lang.org>
26237         * ext/nkf/lib/kconv.rb: ensure that symbol_to_option is private_class_method
26238           and all other methods are module_function
26239           fixed: [ruby-dev:26808]
26241 Wed Aug 17 00:05:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26243         * eval.c (rb_add_method): preserve safe level in the environment
26244           where a method is defined .
26246         * eval.c (rb_call0): restore preserved safe level in the method
26247           execution.
26249         * parse.y (lambda): need separate block variable stack
26250           manipulation and lpar_beg maintenance.  based on a patch found
26251           in [ruby-core:05551] from Mauricio Fernandez <mfp at acm.org>.
26253         * parse.y (parser_yylex): adjust lpar_beg after tLAMBEG and
26254           kDO_LAMBDA. [ruby-core:05551]
26256 Mon Aug 15 07:24:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26258         * intern.h (rb_check_to_integer): add declaration.
26260         * object.c (rb_to_integer, rb_check_to_integer): argument constified.
26262 Mon Aug 15 00:38:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26264         * eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.
26265           [ruby-dev:26800]
26267         * range.c (range_check, range_init): reduce uselse exceptions.
26269 Mon Aug 15 00:34:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26271         * parse.y (yycompile): remove unreachable code.  [yarv-dev:570]
26273 Sat Aug 13 22:16:12 2005  Minero Aoki  <aamine@loveruby.net>
26275         * lib/fileutils.rb (remove_entry_secure): forgot final chdir.
26277 Sat Aug 13 22:07:49 2005  Minero Aoki  <aamine@loveruby.net>
26279         * lib/fileutils.rb (remove_entry_secure): uses chdir(2) and check
26280           if current directory is correct. [ruby-dev:26100] [ruby-dev:26226]
26282 Sat Aug 13 21:11:05 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
26284         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT class.
26286         * ext/win32ole/tests/testall.rb: ditto.
26288         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
26290 Sat Aug 13 18:51:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26292         * eval.c (rb_block_pass): distinguish current block from others.
26293           fixed: [ruby-dev:26274]
26295         * ext/stringio/stringio.c (strio_set_string): disallow nil.
26296           http://www.rubyist.net/~nobu/t/20050811.html#c05
26298 Sat Aug 13 08:01:59 2005  NARUSE, Yui  <naruse@ruby-lang.org>
26300         * ext/nkf/lib/kconv.rb: Kconv.kconv is now alias of Kconv.conv
26301         * ext/nkf/lib/kconv.rb: remove nkf dependend symbols fomr SYMBOL_TO_OPTION
26303 Fri Aug 12 17:06:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26305         * parse.y (f_larglist): allow optional arguments even when
26306           parentheses are omitted.  based on Nobu's patch from
26307           http://www.rubyist.net/~nobu/t/20050805.html
26309         * parse.y (parser_yylex): update & maintain lpar_beg for detect
26310           lambda parameters.
26312 Thu Aug 11 23:29:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26314         * ext/stringio/stringio.c: keep holding string after closed.
26316 Thu Aug 11 20:48:40 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
26318         * numeric.c (fix_equal, fix_cmp, fix_gt, fix_ge, fix_lt, fix_le):
26319           reduce coercing when a method knows about a operand type.
26320           [ruby-dev:26789]
26322 Thu Aug 11 13:01:48 2005  Kouhei Sutou  <kou@cozmixng.org>
26324         * lib/rss: fixed sort bug. [ruby-list:41018]
26326         * lib/rss/1.0.rb (RSS::RDF::Channel#setup_maker_attributes):
26327           removed self.
26329         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#<=>): use #date
26330           instead of @date.
26331           (RSS::Maker::Base::self.def_array_element): added #size.
26333         * lib/rss/maker/1.0.rb
26334           (RSS::Maker::RSS10::Channel#to_rss,
26335            RSS::Maker::RSS10::Items::Item#to_rss): cleared dc_dates set
26336           upped by using #date.
26338         * lib/rss/maker/dublincore.rb
26339           (RSS::Maker::ChannelBase, RSS::Maker::ItemsBase::ItemBase):
26340           fixed opposite alias.
26342         * test/rss/test_setup_maker_1.0.rb
26343           (RSS::TestSetupMaker10::test_setup_maker_items_sort): added some
26344           tests for RSS::Maker::ItemsBase#do_sort.
26346 Wed Aug 10 12:01:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26348         * lib/delegate.rb: simplifies Delegator classes; SimpleDelegator
26349           now uses method_missing for all methods.
26351 Wed Aug 10 10:38:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26353         * bignum.c (rb_big_mul0): multiply two numbers (x, y) without
26354           normalizing the result.  x should be a big number.
26355           [ruby-dev:26778]
26357         * bignum.c (rb_big_pow): use rb_big_mul0() instead of
26358           rb_big_mul().
26360         * array.c (rb_ary_or, rb_ary_and, rb_ary_plus, rb_ary_diff):
26361           revert the change on 2005-08-03.  Set operation on other item
26362           should have in separate methods.
26364         * parse.y (shadowing_lvar_gen): warn when arguments shadows
26365           external local variables.
26367         * parse.y (f_opt): optional arguments should not clobber external
26368           local variables.
26370         * parse.y (f_rest_arg): rest arguments should not clobber external
26371           local variables.
26373 Wed Aug 10 10:29:40 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26375         * ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
26377         * ext/tk/lib/tk/itemconfig.rb: fix bug on handling
26378           __item_ruby2val_optkeys().
26380         * ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys().
26382         * ext/tk/lib/tkextlib/blt/component.rb: ditto.
26384 Tue Aug  9 21:53:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26386         * eval.c (formal_assign): let default values override
26387           arguments to zsuper.  fixed: [ruby-dev:26743]
26389 Tue Aug  9 20:30:19 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
26391         * bignum.c (rb_big_coerce): allow bignum x bignum coercing.
26392           [ruby-dev:26778]
26394 Tue Aug  9 15:12:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26396         * ext/tk/tcltklib.c: remove dangerous 'rb_jump_tag's.
26398         * ext/tk/lib/tk.rb: add __val2ruby_optkeys and __ruby2val_optkeys to
26399           help to convert option values between ruby and tcl.
26401         * ext/tk/lib/tk/itemconfig.rb: add __item_val2ruby_optkeys and
26402           __item_ruby2val_optkeys to help to convert option values between
26403             ruby and tcl.
26405         * ext/tk/lib/tk/radiobutton.rb: use __ruby2val_optkeys for 'variable'
26406           option (for the reason of backward compatibility).
26408         * ext/tk/lib/tk/composite.rb: clarify the arguments of super().
26410         * ext/tk/lib/tk/spinbox.rb: ditto.
26412         * ext/tk/lib/tk/text.rb: ditto.
26414         * ext/tk/lib/tk/validation.rb: ditto.
26416         * ext/tk/lib/tkextlib/*: support to treat tkvariable-type
26417           configure options.
26419 Tue Aug  9 08:24:05 2005  Mauricio Fernandez  <mfp@acm.org>
26421         * parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamic
26422           variable lambda arguments.  [ruby-core:05540]
26424 Mon Aug  8 22:13:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26426         * eval.c (assign): deal with new block argument.
26427           fixed: [ruby-core:05536]
26429         * eval.c (rb_node_arity): follow change of NODE_ARGS.
26430           fixed: [ruby-dev:26761]
26432 Mon Aug  8 21:28:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26434         * test/ruby/test_fnmatch.rb: separated from test_file.rb.
26436 Mon Aug  8 20:40:35 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26438         * test/ruby/test_method.rb: added.  [ruby-dev:26761]
26440 Mon Aug  8 01:26:37 2005  Mauricio Fernandez  <mfp@acm.org>
26442         * parse.y (f_larglist): mistake in syntax rule.  [ruby-core:05535]
26444 Mon Aug  8 05:16:55 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26446         * ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_error
26447           to get last error on the current thread. And should report
26448           if errors are on the stack while OpenSSL.debug is true.
26450         * ext/openssl/ossl.c (ossl_get_errors): new method for debugging
26451           this library.
26453 Mon Aug  8 05:15:19 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26455         * lib/webrick/httpproxy.rb (HTTPProxyServer#intialize),
26456           lib/webrick/httpserver.rb (HTTPServer#intialize),
26457           lib/webrick/httpservlet/cgihandler.rb (CGIHandler#initialize),
26458           lib/webrick/httpservlet/erbhandler.rb (ERBHandler#initialize),
26459           lib/webrick/httpservlet/filehandler.rb(DefaultFileHandler#initialize):
26460           super (called with no arguments) takes default value of optional
26461           arguments. [ruby-dev:26743]
26463         * lib/webrick/httputils.rb: add a media-type "text/html" for .xhtml.
26465 Sun Aug  7 23:52:39 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26467         * test/ruby/test_super.rb: added optional arg tests.  [ruby-dev:26743]
26468           the tests expects 1.8 behavior at this time.
26470 Sat Aug  6 12:35:24 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26472         * ext/tk/lib/{tk.rb,tk/itemconfig.rb}: configure creates
26473           TkVariable if key name is 'variable' or 'textvariable'
26474           by default. [ruby-dev:26749]
26476         * ext/tk/lib/tk/{label,radiobutton}.rb: removed its own
26477           {variable,textvariable} function.
26479         * ext/tk/lib/tk/variable.rb: retains backward conpatibility.
26481 Fri Aug  5 12:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26483         * ext/tk/tcltklib.c: fixed memory leak when tk_funcall raised
26484           exception. (copies argv into heap in tk_funcall instead of
26485           caller)
26487 Fri Aug  5 12:36:40 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26489         * lib/mkmf.rb (create_makefile): need to convert path separetor
26490           before invoking install command.
26492 Fri Aug  5 08:08:05 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26494         * eval.c (return_jump): fix "can't across thread" error message
26495           when no thread associated.
26496           http://www.namikilab.tuat.ac.jp/~sasada/diary/200507.html#d31
26498 Fri Aug  5 00:25:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26500         * ext/tk/tcltklib.c: refactoring - extract ruby string <->
26501           tcl object conversion as get_str_from_obj and get_obj_from_str.
26503 Fri Aug  5 00:19:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26505         * enumerator.c (Init_Enumerator): provided features should have
26506           extensions.
26508         * eval.c (rb_feature_p): returns type of the feature instead of
26509           extension.
26511         * eval.c (search_required): ruby library should be prior to statically
26512           linked extentions.  fixed: [ruby-dev:26711]
26514         * eval.c (formal_assign): returns position of rest arguments variable.
26516         * parse.y (f_rest_arg): use anonymous variable for rest arguments.
26517           fixed: [ruby-dev:26647]
26519         * extmk.rb (extmake): needs to be wrapped in an Array.
26521 Thu Aug  4 20:03:18 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
26523         * numeric.c (Init_Numeric): do not share implementation among
26524           Fixnum#/ and Fixnum#div.  [ruby-core:05531]
26526 Thu Aug  4 18:38:36 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26528         * ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
26530         * ext/tk/tcltklib.c: add nativethread consistency check.
26532         * ext/tk/stubs.c: ditto.
26534         * ext/tk/lib/tk.rb: forgot to define TclTkIp.encoding and encoding=
26535           when Tcl is 7.6 or 8.0.
26537         * ext/tk/lib/tk/wm.rb: support to make some methods as options of
26538           root or toplevel widget. [ruby-talk:150336]
26540         * ext/tk/lib/tk/root.rb: ditto.
26542         * ext/tk/lib/tk/toplevel.rb: ditto.
26544         * ext/tk/lib/tkextlib/SUPPRT_STATUS: update RELEASE_DATE
26546 Thu Aug  4 13:30:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26548         * numeric.c (fix_div): should not convert the result into
26549           integer.  [ruby-core:05524]
26551 Thu Aug  4 08:03:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26553         * ext/extmk.rb (extmake): should not modify $mflags for each
26554           extentions.
26556 Thu Aug  4 00:25:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26558         * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
26559           macro definitions.
26561         * bcc32/Makefile.sub: LIBRUBY_SO should use DLDOBJS, not EXTOBJS.
26563         * {win32,wince}/Makefile.sub: separate config.h for compiler versions.
26565 Thu Aug  4 00:24:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26567         * sprintf.c: replacing is no longer needed.
26569 Wed Aug  3 21:59:16 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26571         * ext/tk/lib/tk/variable.rb: TkVariable#trace didn't work on
26572           TkVariable retrived from TkVariable.new_hash.ref. [ruby-dev:26721]
26574 Wed Aug  3 12:40:28 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
26576         * numeric.c (fix_plus): reduce coercing when a method knows about
26577           a operand type.  [ruby-dev:26723]
26579         * numeric.c (fix_minus, fix_mul, fix_quo, fix_div, fix_mod,
26580           fix_divmod, fix_pow): ditto.
26582         * bignum.c (rb_big_div, rb_big_modulo): export to reduce
26583           coercing.
26585 Wed Aug  3 10:13:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26587         * configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,
26588           HAVE_VSNPRINTF): use win32/win32.c's implementation instead of
26589           missing/vsnprintf.c's.
26591         * win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted.
26593 Wed Aug  3 10:05:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26595         * configure.in: check vsnprintf() and snprintf().
26597         * sprintf.c, missing/vsnprintf.c: made vsnprintf() and snprintf()
26598           private.  fixed: [ruby-dev:26651]
26600 Wed Aug  3 08:22:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26602         * ext/socket/socket.c (ruby_connect): revert [ruby-talk:111654]
26603           changes at 2004-09-07.  [ruby-dev:26656]
26605 Wed Aug  3 06:53:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26607         * array.c (rb_ary_or): wraps the operand in an array if it is not
26608           an array.  [ruby-talk:150495] [EXPERIMENTAL]
26610         * array.c (rb_ary_and, rb_ary_plus, rb_ary_diff): ditto.
26612 Tue Aug  2 10:23:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26614         * ext/tk/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
26615           Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)
26617         * ext/tk/tcltklib.c: use ip_{get,set,unset}_variable2_core from
26618           ip_{get,set,unset}_variable.
26620         * ext/tk/tcltklib.c: replaced Tcl_Panic with rb_bug.
26622 Tue Aug  2 01:40:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26624         * lib/ping.rb (Ping.pingecho): should rescue StandardError.
26625           [ruby-dev:26677]
26627 Mon Aug  1 19:02:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26629         * ext/tk/tcltklib.c: refactoring - replaced rb_ivar_defined &
26630           rb_ivar_get with single rb_attr_get call.
26632 Mon Aug  1 18:44:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26634         * ext/tk/tcltklib.c (Tcl_GetStringResult): refactoring - define
26635           alternative macro on Tcl7.x or earlier.
26637 Mon Aug  1 13:53:55 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26639         * ext/tk/tcltklib.c (deleted_ip): refactoring - interpreter
26640           deletion check. [ruby-dev:26664]
26642 Mon Aug  1 01:08:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
26644         * lib/drb/drb.rb (check_insecure_method): use private_methods and
26645           protected_methods instead of respond_to? to check method visibility.
26646           [ruby-dev:26616]
26648         * test/drb/drbtest.rb: ditto.
26650         * test/drb/ut_drb.rb: ditto.
26652 Sat Jul 30 18:49:44 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
26654         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#ole_typelib,
26655           WIN32OLE_TYPE#implemented_ole_types.
26657         * ext/win32ole/tests/testOLETYPE.rb: ditto.
26659 Fri Jul 29 16:12:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
26661         * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955]
26663 Fri Jul 29 09:59:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26665         * eval.c (rb_call0): fix calling zsuper from a method with anonymous
26666           rest argument.  [ruby-dev:26639]
26668         * eval.c (rb_yield_0): push yielded node instead of yielding.
26669           fixed: [yarv-dev:549]
26671 Thu Jul 28 21:49:17 2005  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
26673         * parse.y (rb_parser_end_seen_p): exclude from ripper.
26674           <http://moonrock.jp/~don/d/200507.html#d28_t2>
26676         * sprintf.c (clearerr): remove standard macro before re-definition.
26677           <http://moonrock.jp/~don/d/200507.html#d28_t3>
26679 Thu Jul 28 18:09:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26681         * ext/tk/stubs.c: When --enable-tcltk-stubs, the initialize
26682           routine creates a Tcl/Tk interpreter and deletes it. However,
26683           init cost of Tk's MainWindow is not so small. And that makes it
26684           impossible to use libraries written with Tcl functions only on
26685           an environment without a graphical display. This changes support
26686           delaying initalization of Tk_Stubs until the script needs Tk.
26688         * ext/tk/stubs.h: New file. Define prototypes and return codes of
26689           functions on stubs.c.
26691         * ext/tk/tcltklib.c: Support delaying initalization of Tk_Stubs
26692           until the script needs Tk.
26694         * ext/tk/tcltklib.c: Show friendly error messages for errors on
26695           initialization.
26697         * ext/tk/tcltklib.c: Avoid SEGV on ip_finalize() when ruby is
26698           exiting and $DEBUG is true. (Not fix. If you know the reason of
26699           why, please fix it.)
26701         * ext/tk/tkutil/tkutil.c (ary2list, ary2list2): bug fix on handling
26702           of encoding.
26704         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
26705           don't work propery.
26707         * ext/tk/lib/tk.rb: Forget extending Tk::Encoding module to Tk.
26709         * ext/tk/lib/tk/variable.rb: TkVarAccess fails to initialize the
26710           object for an element of a Tcl's array variable.
26712 Thu Jul 28 17:23:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26714         * parse.y (f_larglist): allow block argument in lambda parameter
26715           list without parenthesis.
26717 Thu Jul 28 17:14:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26719         * hash.c (each_i): typo fixed.  [ruby-dev:26622]
26721 Thu Jul 28 15:04:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26723         * parse.y (f_arg): better argument name duplication check
26725         * parse.y (new_args_gen): factored out name duplication check for
26726           optional and rest arguments.
26728         * parse.y (new_bv_gen): allow shadowing outer local variables;
26729           warning remains.
26731 Thu Jul 28 13:46:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26733         * parse.y (ripper_warningS): the argument was omitted.
26734           [ruby-dev:26621]
26736 Thu Jul 28 11:30:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26738         * parse.y (f_larglist): allow bv_decl at the end of lambda
26739           argument list.  [EXPERIMENTAL]
26741         * parse.y (new_bv_gen): allow local variable shadowing, with
26742           warning in verbose mode.
26744 Wed Jul 27 23:23:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26746         * gc.c (obj_free): make message format consistent with one from
26747           gc_mark().  [ruby-talk:149668]
26749         * sprintf.c (quad_t): prepare quad_t as well.  [ruby-talk:149668]
26751 Wed Jul 27 22:11:37 2005  Kouhei Sutou  <kou@cozmixng.org>
26753         * sample/rss/tdiary_plugin: removed. because the plugin
26754           is imported in the tDiary plugin packages.
26756 Wed Jul 27 19:11:53 2005  Minero Aoki  <aamine@loveruby.net>
26758         * lib/fileutils.rb (cd): follow :noop option change. (This patch
26759           is contributed by Doug Kearns)
26761 Wed Jul 27 16:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26763         * parse.y (lambda): Perl6 style -> lambda expression. [NEW]
26764           [VERY EXPERIMENTAL]
26766 Wed Jul 27 10:43:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26768         * gc.c (id2ref): must not assign pointers to long int.  use
26769           LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
26770           [ruby-talk:149645]
26772         * ruby.h: use LONG_LONG to simplify the change.
26773           [ruby-talk:149645]
26775 Wed Jul 27 10:59:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26777         * dir.c (dir_each): rewinddir(3) before iteration.
26778           [ruby-talk:149628]
26780 Wed Jul 27 02:34:58 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26782         * eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
26783           [ruby-talk:149553]
26785         * missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
26786           size pointer.  [ruby-talk:149553]
26788 Tue Jul 26 22:41:28 2005  Minero Aoki  <aamine@loveruby.net>
26790         * ext/ripper/lib/ripper/sexp.rb: new method Ripper.sexp_raw.
26792         * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp): returns more
26793           readable tree.  This is suggested by Kirill A. Shutemov.
26795 Tue Jul 26 22:05:12 2005  Minero Aoki  <aamine@loveruby.net>
26797         * lib/net/http.rb: merge a patch contributed by Daniel Berger,
26798           with some modification. (RubyForge #2128)
26800 Tue Jul 26 18:11:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26802         * ruby.h: support LLP64 model.  [ruby-talk:149524]
26804 Tue Jul 26 12:57:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26806         * ext/openssl/openssl_missin.c: include <openssl/engine.h> before
26807           <openssl/x509_vfy.h> to avoid compilation error of mswin32.
26808           suggested by NAKAMURA Usaku.
26810 Mon Jul 25 23:48:55 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26812         * win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.
26814 Mon Jul 25 21:30:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26816         * common.mk: Borland MAKE doesn't look for file names which have paths
26817           from VPATH.  fixed: [ruby-dev:26604]
26819         * ruby.h (NORETURN, DEPRECATED): moved just after config.h.
26821         * {win32,wince}/Makefile.sub: vsnprintf() is in missing now.
26823         * {bcc32,win32,wince}/Makefile.sub: moved CPPFLAGS only for ruby
26824           source to XCFLAGS.
26826 Mon Jul 25 14:10:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26828         * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
26830 Mon Jul 25 13:45:18 2005  NAJIMA Hiroki  <najima@mickey.ai.kyutech.ac.jp>
26832         * io.c: check HAVE_SYS_IOCTL_H before including the header.
26833           [ruby-dev:26610]
26835 Sat Jul 23 16:48:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26837         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should check
26838           OPENSSL_NO_STATIC_ENGINE.
26840 Sat Jul 23 11:46:30 2005  Tanaka Akira  <akr@m17n.org>
26842         * eval.c (rb_fd_select): the all three fd_sets must be long enough for
26843           select.  fixed: [ruby-talk:149059]
26845 Sat Jul 23 10:01:41 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26847         * sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
26848           using missing/vsnprintf.c.  [ruby-dev:26580]
26850         *  missing/vsnprintf.c: made the output changeable.
26852 Fri Jul 22 21:06:08 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
26854         * bignum.c (rb_big_eq): reduce isnan().  [ruby-dev:26600]
26856         * numeric.c (flo_eq, flo_gt, flo_ge, flo_lt, flo_le): ditto.
26858 Fri Jul 22 15:02:39 2005  Kouhei Sutou  <kou@cozmixng.org>
26860         * lib/rss/rss.rb: moved copyright description to lib/rss.rb.
26862         * lib/rss.rb: added for convenience.
26864         * sample/rss/re_read.rb: added #to_s sample.
26866         * sample/rss/blend.rb: use 'require "rss"' instead of
26867           'require "rss/*"'.
26868         * sample/rss/list_description.rb: ditto.
26869         * sample/rss/rss_recent.rb: ditto.
26870         * sample/rss/tdiary-plugin/rss-recent.rb: ditto.
26872         * sample/rss/tdiary-plugin/rss-recent.rb: 0.0.6 -> 0.0.7.
26874 Fri Jul 22 14:37:43 2005  Kouhei Sutou  <kou@cozmixng.org>
26876         * lib/rss/parser.rb (RSS::Parser#initialize): accept HTTP/FTP
26877           URI and local file path too.
26879         * test/rss/test_parser.rb (RSS::TestParser#test_parse): test
26880           for the above.
26882 Fri Jul 22 07:01:42 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26884         * ext/tk/tkutil/tkutil.c (tk_conv_args): forget to revert
26885           thread_critical and gc_disable when raise ArgumentError.
26887         * ext/tk/lib/remote-tk.rb: RemoteTkIp doesn't need to include TkUtil.
26889         * ext/tk/tcltklib.c: add TclTkIp#has_mainwindow? method.
26891         * ext/tk/lib/tk.rb: add Tk.has_mainwindow? method.
26893         * ext/tk/lib/multi-tk.rb: add MultiTkIp#has_mainwindow? method.
26895         * ext/tk/lib/remote-tk.rb: add RemoteTkIp#has_mainwindow? method.
26897         * ext/tk/lib/multi-tk.rb: slave IP fail to exit itself when $SAFE==4.
26899         * ext/tk/lib/multi-tk.rb: remove constants from MultiTkIp module to
26900           avoid access from external.
26902         * ext/tk/lib/multi-tk.rb: check_root flag is ignored on slave IPs'
26903           mainloop.
26905         * ext/tk/lib/multi-tk.rb: hang-up Tk.mainloop called on a slave IP
26906           with $SAFE==4.
26908         * ext/tk/lib/multi-tk.rb: MultiTkIp#bg_eval_proc doesn't work
26909           properly.
26911         * ext/tk/lib/multi-tk.rb: add MultiTkIp#set_cb_error(proc) and
26912           cb_error(exc) to log errors at callbacks on safe slave IPs.
26914         * ext/tk/lib/multi-tk.rb: fail to get an available slave IP object
26915           when call Tk.mainloop in the block which is given to new_* method,
26916             because cannot finish initialize while the root widget is alive.
26918         * ext/tk/lib/multi-tk.rb: fail to control a slave IP when Tk.mainloop
26919           runs on the IP.
26921 Thu Jul 21 01:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
26923         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
26924           import 1.76
26925           [ruby-dev:26592] nkf constification
26927 Wed Jul 20 19:18:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
26929         * io.c (S_ISREG): need to define S_ISREG before it is used first.
26931 Wed Jul 20 18:33:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26933         * io.c (wsplit_p): patch for the environment where
26934           fcntl(F_GETFL, O_NONBLOCK) is not supported. in that case,
26935           set FMODE_WSPLIT without fcntl check. [ruby-dev:26566]
26937 Wed Jul 20 18:07:11 2005  Tanaka Akira  <akr@m17n.org>
26939         * io.c (rb_io_ctl): update FMODE_WSPLIT_INITIALIZED and FMODE_WSPLIT
26940           by F_SETFL.
26942 Wed Jul 20 10:04:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26944         * variable.c (rb_class_path): need to adjust snprintf() len for
26945           teminating NUL.  [ruby-dev:26581]
26947 Wed Jul 20 03:58:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26949         * ext/socket/socket.c: sorry, BeOS also uses HAVE_CLOSESOCKET,
26950           so reverted.
26952         * ext/socket/extconf.rb: should not define HAVE_CLOSESOCKET
26953           on windows.
26955 Wed Jul 20 03:12:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26957         * ext/socket/socket.c: should not undef close() on win32.
26958           it's defined to rb_w32_close(), otherwise handle leaks.
26959           [ruby-Bugs-2131]
26961 Wed Jul 20 00:48:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26963         * error.c (syserr_initialize): don't use str before StringValue()
26964           check.  [ruby-dev:26579]
26966 Tue Jul 19 22:47:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26968         * error.c (syserr_initialize): add 1 byte for snprintf() size for
26969           NUL at the end.  [ruby-dev:26574]
26971 Tue Jul 19 17:16:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
26973         * signal.c (trap): remove sigexit(); handle "EXIT" via sig_exec().
26974           [ruby-dev:26440]
26976         * io.c (rb_io_inspect): replace sprintf() with "%s" format all
26977           over the place by snprintf() to avoid integer overflow.
26979 Tue Jul 19 14:10:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26981         * ext/tk/tcltklib.c: rbtk_eventloop_depth is used as int.
26983         * ext/tk/tcltklib.c: rbtk_pending_exception is tested with
26984           NIL_P, so should assign Qnil instead of 0 (Qfalse).
26986         * ext/tk/tcltklib.c (ip_invoke_real): fixed memory leak when
26987           ip is deleted.
26989 Tue Jul 19 13:19:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26991         * ext/tk/lib/tk/variable.rb: For symmetry, add TkVariable#string. It
26992           returns a string even if the default value type of the TkVariable
26993           object is not "string".
26995 Mon Jul 18 21:39:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
26997         * eval.c (rb_call0): make the pointer to NODE volatile
26998           instead of NODE itself.
27000 Mon Jul 18 14:32:21 2005  Tanaka Akira  <akr@m17n.org>
27002         * eval.c (rb_call0): make body volatile to avoid possible optimization
27003           problem.
27004           [ruby-dev:26195]
27006 Mon Jul 18 12:23:27 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27008         * ext/io/wait/wait.c: wrong backport from trunk, and compile error on
27009           platforms fd_set is not a bit set.  fixed: [ruby-dev:26562]
27011 Mon Jul 18 09:36:25 2005  Tanaka Akira  <akr@m17n.org>
27013         * rubyio.h (FMODE_WSPLIT, FMODE_WSPLIT_INITIALIZED): new constant.
27015         * io.c (wsplit_p): new function.
27016           (io_fflush): split writing data by PIPE_BUF if wsplit_p is true in
27017           multi-threaded mode.
27018           (io_fwrite): ditto.
27019           [ruby-dev:26540]
27021 Mon Jul 18 05:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
27023         * ext/nkf/nkf-utf8/nkf.c: import nkf.c 1.73
27024           fix: TestKconv 1F
27026 Sun Jul 17 13:46:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27028         * ext/io/wait/extconf.rb, ext/io/wait/wait.c: Win32 platforms support.
27030 Sat Jul 16 23:43:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27032         * enumerator.c (Init_Enumerator): wrong argument specs.
27033           [ruby-core:05481]
27035 Sat Jul 16 15:52:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27037         * win32/win32.[hc]: constified socket functions. [ruby-dev:26553]
27039 Fri Jul 15 23:59:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27041         * lib/rdoc/parsers/parse_c.rb (handle_class_module): handle a
27042           module enclosed in a built-in module.  fixed: [ruby-talk:148239]
27044         * lib/rdoc/parsers/parse_c.rb (find_body): allow macros as methods.
27046         * lib/rdoc/parsers/parse_c.rb (find_call_seq): allow :nodoc: modifier
27047           in C.  [ruby-core:04572]
27049 Fri Jul 15 23:20:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27051         * enumerator.c (Init_Enumerator): use an internal directly.
27053 Fri Jul 15 07:58:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27055         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
27056           sockets should be non-blocking mode. [ruby-dev:26405]
27058         * lib/webrick/utils.rb (WEBrick::Utils.set_non_blocking): new method.
27060 Fri Jul 15 00:11:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27062         * enum.c (enumeratorize): create new enumerator for current method if
27063           no block is given.
27065         * enumerator.c: moved from ext/enumerator.
27067 Thu Jul 14 18:27:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27069         * win32/win32.c (rb_w32_strerror): should return correct message
27070           for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]
27072         * win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
27073           (bcc32) [ruby-dev:26533]
27075 Thu Jul 14 00:45:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27077         * LEGAL (ext/nkf/nkf-utf8): updated from nkf1.7 to nkf-utf8.
27079 Wed Jul 13 22:44:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27081         * parse.y: remove static variables.  [ruby-dev:26530]
27083 Wed Jul 13 19:36:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27085         * win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
27086           if file or directory already exists. (bcc32) [ruby-dev:26508]
27088         * win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
27089           if it is not directory. (bcc32, win32)
27091         * win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
27092           FILE_ATTRIBUTE_READONLY flag on function failure.
27094 Wed Jul 13 12:40:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27096         * ext/tk/tcltklib.c: TclTkLib.do_one_event doesn't work.
27098         * ext/tk/lib/tk.rb: Tk.thread_update is available.
27100 Tue Jul 12 23:32:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27102         * lib/mkmf.rb: keep curdir unexpanded.
27104 Mon Jul 11 23:50:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27106         * eval.c, intern.h (rb_proc_call, rb_obj_method, rb_method_call):
27107           export.
27109         * ext/enumerator/enumerator.c (enumerator_with_index): [EXPERIMENTAL]
27110           added a new method Enumerator#with_index.  [ruby-talk:147728]
27112 Mon Jul 11 08:31:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27114         * regparse.c (fetch_escaped_value): mask values following \c in
27115           regexp.  fixed: [ruby-dev:26500]
27117 Sun Jul 11 05:18:17 2005  Michael Neumann  <mneumann@ruby-lang.org>
27119         * lib/xmlrpc/server.rb (XMLRPC::Server): Switch from GServer over to
27120           WEBrick. This makes file lib/xmlrpc/httpserver.rb obsolete (at least it is
27121                 no further used by the XML-RPC library).
27123 Mon Jul 11 02:50:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27125         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
27126           mistook to merge the patch of [ruby-dev:26235] at
27127           revision 1.11.
27129 Sun Jul 10 23:58:04 2005  Tanaka Akira  <akr@m17n.org>
27131         * lib/pathname.rb (Pathname#unlink): try Dir.unlink first to
27132           avoid unlink a directory by root.
27133           cf. [ruby-dev:26237]
27135 Sun Jul 10 12:47:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27137         * lib/debug.rb (debug_command): added a deficient format specifier.
27138           fixed: [ruby-core:05419]
27140 Sat Jul  9 22:02:37 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27142         * ext/win32ole/win32ole.c (ole_method_dispid): convert dispid
27143           in Ruby and C by INT2NUM and NUM2INT.
27145         * ext/win32ole/win32ole.c (ole_invoke2): ditto.
27147         * ext/win32ole/test/testWIN32OLE.rb: ditto.
27149         * ext/win32ole/test/testOLEMETHOD.rb: ditto.
27151 Fri Jul  8 15:45:04 2005  Kouhei Sutou  <kou@cozmixng.org>
27153         * lib/rss/rss.rb (RSS::VERSION): 0.1.4 -> 0.1.5.
27155         * test/rss/test_version.rb (RSS::TestVersion#test_version):
27156           ditto.
27158         * lib/rss/0.9.rb (RSS::Rss::Channel::Item::Category):
27159           domain attribute of <category> is optional. Thanks to
27160           Chris Lee <clee@kde.org>.
27162         * test/rss/test_parser.rb (RSS::TestParser#test_category20):
27163           adjusted test case.
27165 Wed Jul  6 18:45:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27167         * object.c (rb_obj_pattern_match): now returns nil.
27168           [ruby-core:05391]
27170 Mon Jul  4 14:35:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27172         * sample/svr.rb: service can be stopped by ill-behaved client; use
27173           tsvr.rb instead.
27175 Mon Jul  4 13:25:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27177         * missing/erf.c: original erf.c by prof. Okumura is confirmed to
27178           be public domain.  reverted BSD implementation.
27180 Wed Jul  6 11:15:21 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27182         * win32/win32.c (open_ifs_socket): new function.
27184         * win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket()
27185           instead of socket().
27186           all changes are derived from [ruby-core:5388].
27188 Wed Jul  6 00:15:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
27190         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
27191           imported nkf.c 1.70 (support UTF-8-MAC)
27193         * ext/nkf/lib/kconv.rb: add :utf8mac and :internalunicode
27195 Tue Jul  5 23:44:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27197         * instruby.rb: expand source library path.
27199 Tue Jul  5 23:27:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27201         * array.c (sort_2): get rid of yet another bcc's bug.
27202           fixed: [ruby-core:05152]
27204         * eval.c (rb_thread_save_context): must not switch contexts during
27205           re-allocating stack.  fixed: [ruby-core:05219]
27207 Tue Jul  5 15:15:10 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27209         * ext/tk/tkutil.c: fix typo.
27211 Tue Jul  5 14:52:56 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27213         * ext/tk/tcltklib.c: bug fix on treating Unicode strings.
27215         * ext/tk/tcltklib.c: add methods to treat encoding mode.
27217         * ext/tk/MANUAL_tcltklib.eng: add description of TclTkLib#encoding,
27218           encoding_system, and so on.
27220         * ext/tk/MANUAL_tcltklib.eucj: ditto.
27222         * ext/tk/tkutil/tkutil.c: fail to create a Tcl's list string from
27223           an array including multiple kind of encoded strings.
27225         * ext/tk/lib/tk.rb: ditto.
27227         * ext/tk/lib/multi-tk.rb: 2nd arg of _{to|from}UTF8 is omissible.
27229         * ext/tk/lib/remote-tk.rb: ditto.
27231         * ext/tk/lib/tk.rb: override TclTkLib#encoding and encoding= to
27232           use TkCore::INTERP.encoding and encoding=.
27234         * ext/tk/lib/tk.rb: when "require 'tk'" and $KCODE=='NONE', check
27235           DEFAULT_TK_ENCODING to decide Ruby/Tk's system encoding mode.
27237         * ext/tk/lib/tk/encodedstr.rb: check both of Tk.encoding and
27238           Tk.encoding_system. Tk.encoding has higher priority.
27240         * ext/tk/lib/tk/optiondb.rb: ditto.
27242         * ext/tk/lib/tk/spinbox.rb: ditto.
27244         * ext/tk/lib/tk/validation.rb: ditto.
27246         * ext/tk/lib/tk/namespace.rb: arguemnts for TclTkIp#_merge_tklist
27247           should be UTF-8 strings.
27249 Mon Jul  4 19:29:32 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27251         * lib/set.rb: test change to follow revision 1.28. (duck typing?)
27253 Mon Jul  4 11:23:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27255         * test/{dbm,gdbm,sdbm}/test_{dbm,gdbm,sdbm}.rb: skip some tests
27256           which using fork on fork-less platforms.
27258 Sun Jul  3 23:26:30 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
27260         * test/wsdl/document/test_rpc.rb: compare formatted time string of
27261           Time objects instead of comparing Time objects itself to avoid
27262           unintended conflict of usec part.  [ruby-dev:26220]
27264 Sat Jul  2 22:41:04 2005  Tanaka Akira  <akr@m17n.org>
27266         * ext/socket/socket.c (unix_send_io, unix_recv_io): support x86-64 and
27267           IA64.
27269 Sat Jul  2 17:06:23 2005  Tanaka Akira  <akr@m17n.org>
27271         * defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.
27272           (flush_register_windows): declare flush_register_windows.
27274         * eval.c (flush_register_windows): new function.
27276         * ruby.h (NOINLINE): move up to be effective in defines.h.
27278 Sat Jul  2 15:19:41 2005  Tanaka Akira  <akr@m17n.org>
27280         * configure.in: check select_large_fdset.
27282         * eval.c: use select_large_fdset to support large file descriptors
27283           on Solaris.  [ruby-dev:26404]
27285 Fri Jul  1 17:55:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27287         * bignum.c (rb_big_neg): may be accessing bogus pointer value.
27289 Fri Jul  1 15:50:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27291         * missing/erf.c: need to include some headers for some platforms.
27293         * win32/win32.h (copysign, scalb): define for compatibility with
27294           other platforms. [ruby-dev:26430]
27296 Fri Jul  1 15:37:42 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27298         * missing/crypt.c: modified to make it compilable on platforms
27299           other than BSD.  [ruby-dev:26430]
27301         * missing/erf.c: ditto.  code from <exp.c> merged.
27303 Fri Jul  1 12:44:56 2005  Tanaka Akira  <akr@m17n.org>
27305         * lib/open-uri.rb (OpenURI.open_http): refine post_connection_check
27306           call.
27308 Fri Jul  1 11:34:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27310         * missing/crypt.c: replaced with 4.4BSD version.
27312         * missing/erf.c: ditto.
27314         * missing/vsnprintf.c: removed the third provision from the old
27315           BSD license.  [ruby-core:05177]
27317 Fri Jul  1 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27319         * enum.c (enum_min, enum_max): must not return Qundef.
27320           fixed: [ruby-core:05299]
27322 Fri Jul  1 00:18:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27324         * lib/delegate.rb (Delegator::respond_to): respond_to? must check
27325           destination object.  [ruby-talk:146894]
27327 Thu Jun 30 23:52:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27329         * signal.c (trap): non-string trap hander was ignored.
27330           fixed: [ruby-dev:26417]
27332 Thu Jun 30 19:00:21 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
27334         * lib/irb/ruby-lex.rb (RubyLex::identify_number): alternative implements
27335           for [ruby-dev:26410]. And support a numeric form of 0d99999.
27337 Thu Jun 30 17:28:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27339         * lib/irb/ruby-lex.rb (RubyLex::identify_number): should not treat
27340           plain zero as an octal number.  [ruby-dev:26410]
27342 Thu Jun 30 15:13:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27344         * eval.c (rb_eval): pre-evaluate argument for unambiguous
27345           evaluation order.  [ruby-dev:26383]
27347 Thu Jun 30 14:48:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27349         * lib/net/http.rb (Net::HTTP#connect, Net::HTTP#request): should
27350           not send proxy username and password to origin servers.
27351           [ruby-dev:25673]
27353         * lib/net/http.rb (Net::HTTP::ProxyDelta#edit_path): should not
27354           send HTTPS scheme URL to origine servers. [ruby-dev:25689]
27356 Thu Jun 30 09:53:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27358         * lib/delegate.rb (Delegator::method_missing): forward unknown
27359           method to the destination.  suggested by
27360           <christophe.poucet@gmail.com>.  [ruby-talk:146776]
27362 Wed Jun 29 00:03:20 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
27364         * regparse.c (fetch_token): avoid warning of unused goto tag.
27365           [ruby-dev:26389]
27367 Tue Jun 28 21:59:29 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
27369         * dir.c, eval.c, parse.y, process.c, ruby.c: avoid warning "unused
27370           variable" [ruby-dev:26387]
27372         * dir.c (glob_helper): avoid warning "enumeration value `RECURSIVE'
27373           not handled in switch" [ruby-dev:26392]
27375 Tue Jun 28 01:52:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
27377         * ext/nkf/lib/kconv.rb: add Kconv::VERSION
27378         * ext/nkf/lib/kconv.rb (conv): can process arrayed options
27379         * ext/nkf/nkf-utf8/nkf.c: imported Revision 1.69
27380         * ext/nkf/nkf-utf8/utf8tbl.c: imported Revision 1.9
27382 Sat Jun 25 23:30:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27384         * process.c (detach_process_watcher): terminate process watcher
27385           thread right after rb_waitpid() succeed.  [ruby-talk:146430]
27387 Sat Jun 25 17:12:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27389         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_query): should
27390           discard if key=val pair is empty. patch from Gary Wright.
27392 Sat Jun 25 15:49:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27394         * enum.c (enum_min, enum_max, enum_min_by, enum_max_by): do not ignore
27395           nil as the first element.
27397 Sat Jun 25 15:13:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27399         * lib/set.rb (Set#==): [ruby-dev:25206] (ported from ruby_1_8 branch)
27401 Sat Jun 25 11:37:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
27403         * ext/nkf/lib/kconv.rb: remove constants
27404           Iconv_Shift_JIS, Uconv_EUC_JP, Iconv_UTF8
27405         * ext/nkf/lib/kconv.rb: add module functions to Kconv
27406           conv, {eucjp, shiftjis, utf8}?, guess_as_symbol
27407         * ext/nkf/lib/kconv.rb: add instance methods to String
27408           conv, {eucjp, shiftjis, utf8}?
27409         * ext/nkf/lib/kconv.rb: add aliases Kconv.to_* and String#to_*
27411 Fri Jun 24 17:00:00 2005  Shigeo Kobayashi  <shigeo@tinyforest.jp>
27413         * ext/bigdecimal/bigdecimal.c: patch from "NATORI Shin"
27414           (u-tokyo.ac.jp) applied to fix rounding bug.
27416 Fri Jun 24 13:17:45 2005  akira yamada  <akira@ruby-lang.org>
27418         * lib/uri/common.rb, lib/uri/generic.rb: fixed typo in documents and
27419           replaced some existent domain name with "example.com".
27421 Fri Jun 24 12:23:19 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27423         * ext/tk/lib/tk.rb: fix typo on Tk.grid_propagate.
27425         * ext/tk/lib/tk.rb: Tk.event_generate and TkWindow#event_generate
27426           accept TkEvent::Event object as context argument.
27428         * ext/tk/lib/tk/event.rb: add TkEvent::Event#valid_fields and
27429           valid_for_generate to get field parameters of event_generate.
27431 Thu Jun 23 23:55:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27433         * runruby.rb: should load built rbconfig.rb.
27435 Thu Jun 23 16:53:15 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27437         * ext/tk/lib/tk/canvastag.rb: TkcGroup.new cannot include given items.
27438           TkcGroup#exclude calls wrong method.
27439           Add alias TkcGroup#add [ruby-talk:146049].
27441         * ext/tk/lib/tk/canvas.rb: TkCanvas#dtag and some subcommands of
27442           TkCanvas#addtag fail to treat a TkcTag argument.
27444         * ext/tk/lib/tk/event.rb: add TkEvent::Event#generate to help to send
27445           current event to other widgets.
27447 Mon Jun 20 18:44:04 2005  Tanaka Akira  <akr@m17n.org>
27449         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): DUMMY_SETJMP is replaced
27450           because setjmp is not enough to fix getcontext and SPARC register
27451           window problem.
27453 Mon Jun 20 17:15:51 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27455         * ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?
27457         * ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed?
27459         * ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed?
27461         * test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb
27462           (teardown): close all db objects before deleting data files.
27464         * win32/win32.{ch} (unlink): hook runtime function to change
27465           file attribute before unlinking.
27466           merge from 1.8, see [ruby-dev:26360]
27468 Mon Jun 20 02:15:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27470         * gc.c (define_final): document fix: finalizers never get called
27471           before target object is destroyed.
27473 Mon Jun 20 01:26:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27475         * ext/openssl/openssl_missing.c, ext/openssl/ossl.h,
27476           ext/openssl/ossl_asn1.c, ext/openssl/ossl_bio.c,
27477           ext/openssl/ossl_pkcs12.h, ext/openssl/ossl_x509req.c: avoid
27478           compiler warnings. suggested by Michal Rokos.
27480 Sun Jun 20 00:22:02 2005  Michael Neumann  <mneumann@ruby-lang.org>
27482         * lib/xmlrpc/utils.rb: Patch by Nobuhiro IMAI fixes the following
27483           problem: Default value modification on
27484           Module#public_instance_methods (false -> true) breaks
27485           s.add_handler(XMLRPC::iPIMethods("sample"), MyHandler.new) style
27486           security protection.
27488         * lib/xmlrpc/client.rb: Aliased XMLRPC::Client#new2 as
27489           XMLRPC::Client#new_from_uri, and #new3 as #new_from_hash.
27491 Sun Jun 19 14:09:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27493         * gc.c (run_final): reduce unnecessary object allocation during
27494           finalization.
27496         * gc.c (rb_gc_call_finalizer_at_exit): deferred finalizers list should
27497           be cleared before calling them.  fixed: [ruby-talk:145790]
27499 Sat Jun 18 01:15:36 2005  Shugo Maeda  <shugo@ruby-lang.org>
27501         * ext/readline/readline.c (readline_readline): do not set
27502           rl_{in,out}stream.
27504         * ext/readline/readline.c (readline_s_set_input): new method.
27506         * ext/readline/readline.c (readline_s_set_output): new method.
27508         * lib/irb/input-method.rb: set Readline.input and Readline.output.
27510 Fri Jun 17 13:01:40 2005  Tanaka Akira  <akr@m17n.org>
27512         * lib/time.rb (Time.parse): fix previous leap seconds support.
27513           (Time.rfc2822): ditto.
27514           (Time.xmlschema): ditto.
27516 Thu Jun 16 15:41:32 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27518         * ruby.c (load_file): '!' is already read. reported by gotoyuzo.
27520 Thu Jun 16 15:09:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27522         * ext/tk/tcltklib.c (ip_rb_threadVwaitCommand): Tcl_Release
27523           was missing.
27525 Thu Jun 16 13:34:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27527         * ext/tk/lib/tk.rb: add Tk.getMultiple{Open|Save}File() which return
27528           an Array of selected files.
27530 Thu Jun 16 12:53:24 2005  Tanaka Akira  <akr@m17n.org>
27532         * lib/time.rb (Time.parse): "Fri Jan  1 08:59:60 +0900 1999" was
27533           parsed as "Fri Jan 01 09:00:00 JST 1999" even on an environment
27534           which supports leap seconds.
27535           (Time.rfc2822): ditto.
27536           (Time.xmlschema): ditto.
27538 Thu Jun 16 00:13:41 2005  Tanaka Akira  <akr@m17n.org>
27540         * lib/resolv.rb (Resolv::DNS::Resource#ttl): new attribute.
27541           (Resolv::DNS::Resource#==): ignore @ttl.
27542           (Resolv::DNS::Resource#hash): ditto.
27543           (Resolv::DNS::Message::MessageDecoder#get_rr): save TTL in a
27544           Resource object.
27545           based on [ruby-core:5190] by Eric Hodel.
27547 Wed Jun 15 18:26:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27549         * ext/tk/lib/tk.rb: support "tk inactive" sub-command [for Tcl/Tk8.5a3]
27551         * ext/tk/lib/tk/namespace.rb: support "namespace path" sub-command and
27552           'namespace ensemble' sub-command [for Tcl/Tk8.5a3]
27554 Tue Jun 14 02:02:43 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27556         * ext/tk/tkutil/tkutil.c: add TkUtil::CallbackSubst.subst_arg(m, ...)
27557           & _define_attribute_aliases(hash) to get substitution-argument from
27558           attributes (e.g. subst_arg(:x,:y,:num,:button) --> "%x %y %b %b ").
27560         * ext/tk/lib/tk/event.rb: use _define_attribute_aliases().
27562 Mon Jun 13 13:03:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27564         * hash.c (ruby_setenv): fixed SEGV. [ruby-dev:26186]
27566 Mon Jun 13 01:54:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27568         * signal.c (sigexit): call rb_thread_signal_exit() instead of
27569           rb_exit().  [ruby-dev:26347]
27571         * eval.c (rb_thread_signal_exit): a new function to exit on main
27572           thread.
27574         * eval.c (rb_thread_switch): exit status should be retrieved from
27575           ruby_errinfo.
27577         * eval.c (rb_f_exit): ensure exit(0) should call
27578           exit(EXIT_SUCCESS).
27580 Mon Jun 13 01:20:02 2005  Tanaka Akira  <akr@m17n.org>
27582         * eval.c (rb_gc_mark_threads): curr_thread may not be part of the
27583           thread list.  [ruby-dev:26312]
27585 Sat Jun 11 22:34:44 2005  Minero Aoki  <aamine@loveruby.net>
27587         * parse.y: missing arg_paren event.  This patch is contributed by
27588           Mitchell N Charity.
27590 Fri Jun 10 23:55:17 2005  Tanaka Akira  <akr@m17n.org>
27592         * eval.c (unknown_node): show more information.  [ruby-dev:26196]
27594 Fri Jun 10 23:35:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27596         * missing/mkdir.c: remove. [ruby-core:05177]
27598 Fri Jun 10 22:54:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27600         * missing.h: fd_set stuffs need sys/types.h.  fixed: [ruby-core:05179]
27602 Thu Jun  9 23:58:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27604         * ext/Win32API/Win32API.c (Win32API_Call): disable global
27605           optimization. fixed: [ruby-core:05143]
27607 Thu Jun  9 23:35:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27609         * enum.c (enum_inject): default the result value to Qundef to use
27610           first element as initial value if not given.
27612 Thu Jun  9 19:55:41 2005  Tanaka Akira  <akr@m17n.org>
27614         * eval.c (ruby_longjmp): new macro to call longjmp, setcontext, etc.
27615           (ruby_setjmp): new macro to call setjmp, getcontext, etc.
27616           (ruby_setjmp): call setjmp before getcontext to avoid IA64 register
27617           stack problem.
27618           [ruby-talk:144939]
27620         * gc.c (Init_stack): remove IA64_MAGIC_STACK_LIMIT.
27622 Thu Jun  9 18:24:16 2005  Tanaka Akira  <akr@m17n.org>
27624         * configure.in, eval.c, gc.c: use libunwind only on HP-UX.
27625           [ruby-dev:26297]
27627 Thu Jun  9 14:46:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27629         * hash.c (env_aset): do not treat nil as key-removing value.
27630           [ruby-list:40865]
27632         * parse.y (method_call): allow aref expression ([]) to take a
27633           block.
27635         * parse.y (block_dup_check): a function to check duplication of
27636           a block argument and an actual block.
27638 Thu Jun  9 11:55:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27640         * lib/delegate.rb (SimpleDelegator::__setobj__): need check for
27641           recursive delegation.  [ruby-core:04940]
27643 Thu Jun  9 11:50:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27645         * lib/cgi.rb: add underscore aliases CGI::escape_html,
27646           CGI::unescape_html, CGI::escape_element, CGI::unescape_element.
27647           [ruby-core:05058]
27649 Wed Jun  8 18:47:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27651         * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift.
27653 Wed Jun  8 12:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27655         * array.c (rb_ary_nitems): add the block feature to Array#nitems.
27656           suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
27657           [ruby-talk:134083].
27659 Wed Jun  8 11:11:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27661         * bignum.c (get2comp): revert all prior changes, and calculate
27662           proper 2's complement for negative numbers.
27664 Wed Jun  8 08:33:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27666         * enum.c (enum_min_by, enum_max_by): return nil if no iteration.
27667           fixed: [ruby-dev:26245]
27669         * eval.c (rb_need_block): ensure a block is given.
27671         * eval.c (backtrace): skip successive frames sharing same node.
27673 Wed Jun  8 01:27:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27675         * bignum.c (bignorm): fixed a bug in normalizing negative numbers
27676           reported from Honda Hiroki <hhonda@ipflex.com>.  normalizing
27677           should not trim leading zeros from negative numbers.
27679         * bignum.c (rb_cstr_to_inum): must remove leading zeros for this
27680           case.
27682 Wed Jun  8 00:15:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27684         * ext/socket/socket.c (ruby_getaddrinfo__aix): merged a patch from
27685           KUBO Takehiro <kubo at jiubao.org> to support AIX.  [ruby-list:40832]
27687 Wed Jun  8 00:09:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27689         * lib/yaml/rubytypes.rb (Array::to_yaml): merged a patch from
27690           Tilman Sauerbeck <tilman at code-monkey.de>.  [ruby-core:05055]
27692         * lib/yaml/rubytypes.rb (Hash::to_yaml): ditto.
27694 Wed Jun  8 00:00:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27696         * ext/curses/curses.c (curses_insertln): merged a patch from
27697           TAKAHASHI Tamotsu <ttakah at lapis.plala.or.jp>.  [ruby-ext:02305]
27699 Tue Jun  7 19:34:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27701         * lib/irb/init.rb (IRB::IRB.rc_file_generators): more flexible
27702           IRB.rc_file_generators.  [ruby-core:05163]
27704 Tue Jun  7 18:39:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27706         * lib/thread.rb: RDoc documentation from Eric Hodel
27707           <drbrain@segment7.net> added.  [ruby-core:05148]
27709 Tue Jun  7 18:30:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27711         * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file.
27712           fixed: [ruby-dev:26294]
27714 Tue Jun  7 17:20:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27716         * parse.y (parser_yylex): allow ';;' to be block terminator in
27717           place of 'end'.  [highly experimental]
27719         * misc/ruby-mode.el (ruby-block-end-re): allow ';;' to be a
27720           negative indent trigger.  [highly experimental]
27722         * parse.y (parser_yylex): small error fixed.
27724 Tue Jun  7 16:45:49 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27726         * parse.y (parser_yylex): "respond_to?:foo" should be interpreted
27727           as "respond_to? :foo" at the command level.  [ruby-talk:144303]
27729 Tue Jun  7 16:32:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27731         * sprintf.c (rb_f_sprintf): raise exception on debug mode (-d),
27732           not verbose mode (-v/-w).  [ruby-core:05123]
27734         * sprintf.c (rb_f_sprintf): warn always on verbose mode.
27736 Tue Jun  7 10:30:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27738         * ext/tk/lib/multi-tk.rb: slave-ip fails to call procedures
27739           delegated by master-ip.
27741 Mon Jun  6 16:35:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27743         * ext/ripper/depend: add .y to .SUFFIXES for nmake.
27745 Sun Jun  5 23:00:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27747         * ext/tk/lib/tk/console.rb: create console when required
27749         * ext/tk/sample/tkextlib/tile/demo.rb: fix TypeError & create Console
27751 Sun Jun  5 10:23:52 2005  Tanaka Akira  <akr@m17n.org>
27753         * signal.c (ruby_signal): don't set SA_RESTART.
27754           [ruby-dev:26276]
27756 Sat Jun  4 14:55:18 2005  Tanaka Akira  <akr@m17n.org>
27758         * test/dbm/test_dbm.rb: merged from ext/dbm/testdbm.rb.
27760         * test/gdbm/test_gdbm.rb: merged from ext/gdbm/testgdbm.rb.
27762         * test/sdbm/test_sdbm.rb: renamed from ext/sdbm/testsdbm.rb with
27763           modification to use test/unit.
27765 Fri Jun  3 23:23:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27767         * intern.h (rb_fdset_t): deal with fd bit sets over FD_SETSIZE.
27768           fixed: [ruby-dev:26187]
27770         * eval.c (rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr,
27771           rb_fd_isset, rb_fd_copy): ditto.
27773         * io.c (rb_io_wait_readable, rb_io_wait_writable, rb_f_select): ditto.
27775         * ext/io/wait/wait.c (io_wait): ditto.
27777         * ext/socket/socket.c (wait_connectable, unix_recv_io): ditto.
27779 Fri Jun  3 14:06:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27781         * ext/tk/lib/multi-tk.rb: fix typo.
27783 Thu Jun  2 23:42:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27785         * parse.y: pragma support on ripper.  [ruby-dev:26266]
27787 Thu Jun  2 00:02:16 2005  Minero Aoki  <aamine@loveruby.net>
27789         * struct.c: accessing >10 member caused segmentation fault.
27790           [ruby-dev:26247]
27792         * test/ruby/test_struct.rb: test it.
27794 Wed Jun  1 11:30:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
27796         * bcc32/Makefile.sub: can use single quote character in DESTDIR.
27797           [ruby-dev:26205]
27799         * bcc32/Makefile.sub: Dir.glob in 1.9 doesn't treat \ as path separator.
27800           [ruby-dev:26254]
27802 Wed Jun  1 00:11:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27804         * parse.y (method_call): new experiment: "(expr)(args...)" to
27805           invoke "expr.call(args...)".  [EXPERIMENTAL]
27807 Tue May 31 23:43:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27809         * parse.y (command): revert implicit "call" for local variables.
27811 Tue May 31 15:52:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27813         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should
27814           break the loop if the socket reached to EOF. [ruby-talk:142285]
27816         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): send response
27817           without reading the whole request body if keep-alive is diabled.
27818           [experimental]
27820 Mon May 30 23:48:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27822         * ext/tk/lib/tk/macpkg.rb: add PACKAGE_NAME information of Tcl/Tk
27823           Extension.
27825         * ext/tk/lib/tk/msgcat.rb: ditto.
27827         * ext/tk/lib/tk/winpkg.rb: ditto.
27829         * ext/tk/lib/tkextlib/*: ditto.
27831 Sat May 28 16:39:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27833         * test/openssl/test_x509store.rb: add test for expired CRL
27834           and refine some assertions.
27836 Sat May 28 05:15:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27838         * ext/openssl/ossl_x509store.c (ossl_x509stctx_set_time): should
27839           not set internal flag directry.
27841 Sat May 28 02:00:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27843         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
27844           ENV["REQUEST_URI"] is better to get correct Request-URI
27845           than ENV["SCRIPT_NAME"] + ENV["PATH_INFO"].  [ruby-dev:26235]
27847 Fri May 27 16:32:04 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
27849         * lib/mkmf.rb: use the semicolon as the path separator
27850           in the environment of MSYS.  fixed: [ruby-dev:26232]
27852 Thu May 26 20:31:21 2005  Minero Aoki  <aamine@loveruby.net>
27854         * lib/fileutils.rb (remove_entry_secure): add documentation.
27856         * lib/fileutils.rb (remove_entry_secure): should not invoke
27857           unlink(2) against a directory.
27859 Thu May 26 08:29:19 2005  Akiyoshi, Masamichi  <akiyoshi@hp.com>
27861         * vms/vmsruby_private.c, vms/vmsruby_private.h: private routines
27862           for VMS port are added.
27864         * eval.c (ruby_init): change to call VMS private intialization routine.
27866 Thu May 26 07:39:07 2005  Minero Aoki  <aamine@loveruby.net>
27868         * lib/fileutils.rb (rm_r): use lchown(2), not chown(2).
27869           [ruby-dev:26226]
27871         * lib/fileutils.rb (cd): remove :noop option. (feature change)
27873         * lib/fileutils.rb (cp_r): should copy symlink as symlink, for
27874           also tree root. (feature change)
27876         * lib/fileutils.rb (cp_r): new option :dereference_root.
27878         * lib/fileutils.rb: new method remove_entry.
27880         * lib/fileutils.rb: new method remove_entry_secure.
27882         * lib/fileutils.rb: add documentation.
27884 Thu May 26 06:08:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27886         * ext/tk/lib/tk.rb: add shortcut-methods of tk_call + tk_split_list
27888 Wed May 25 20:06:27 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27890         * ext/tk/lib/tk.rb: TkComm#tk_split_*list fail to split a kind of SJIS
27891           strings. To avoid the trouble, add arguments to control converting
27892           encoding, and do split on a UTF8 string.
27894         * ext/tk/lib/multi-tk.rb: modify to attend encoding.
27896         * ext/tk/lib/remote-tk.rb: ditto.
27898         * ext/tk/lib/tk/itemconfig.rb: ditto.
27900         * ext/tk/lib/tk/listbox.rb: ditto.
27902         * ext/tk/lib/tk/namespace.rb: ditto.
27904         * ext/tk/lib/tk/panedwindow.rb: ditto.
27906         * ext/tk/lib/tk/text.rb: ditto.
27908         * ext/tk/lib/tk/textmark.rb: ditto.
27910         * ext/tk/lib/tk/texttag.rb: ditto.
27912         * ext/tk/lib/tk/variable.rb: ditto.
27914         * ext/tk/lib/tk/winfo.rb: ditto.
27916         * ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb: ditto.
27918         * ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: ditto.
27920         * ext/tk/lib/tk.rb: add TkWindow#lower_window/raise_window and
27921           Tk#lower_window/raise_window by reason of method-name conflict
27923         * ext/tk/lib/tk/canvas.rb: bug fix on TkCanvas#delete when given
27924           non-TkcItem arguments.
27926         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.
27928 Wed May 25 19:48:12 2005  Minero Aoki  <aamine@loveruby.net>
27930         * lib/fileutils.rb (rm_r): does chown(2). [ruby-dev:26199]
27932 Wed May 25 12:59:48 2005  Tanaka Akira  <akr@m17n.org>
27934         * lib/open-uri.rb (OpenURI::Meta::RE_QUOTED_STRING): a content of
27935           quoted-string should be zero or more characters.
27937 Tue May 24 23:42:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27939         * numeric.c (fix_pow): support Fixnum ** Float case directly
27940           without coercing.  [ruby-talk:142697] [ruby-talk:143054]
27942 Tue May 24 16:57:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27944         * ruby.c (require_libraries): caused SEGV when continuation jumped
27945           in to the required library code.
27947 Tue May 24 17:45:59 2005  Shugo Maeda  <shugo@ruby-lang.org>
27949         * test/readline/test_readline.rb: do not test libedit.
27950           fixed: [ruby-dev:26217]
27952 Tue May 24 06:45:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27954         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): string
27955           literals to be matched non-greedy.
27957 Tue May 24 00:39:14 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
27959         * test/soap/calc: method name 'set' was able to crash with a class Set.
27960           [ruby-dev:26210]
27962         * test/wsdl/document/test_rpc.rb: dateTime comparison failed under
27963           TZ=right/Asia/Tokyo (with leap second.) [ruby-dev:26208]
27965 Mon May 23 16:23:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27967         * ext/tk/extconf.rb: Framework support on MacOS X Tiger.
27969         * ext/tk/README.tcltklib: add description of Framework support options.
27971 Mon May 23 15:07:34 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
27973         * win32/Makefile.sub ($(PROGRAM)): add dependency on $(LIBRUBY_SO).
27974           [experimental]
27976 Mon May 23 12:21:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
27978         * re.c (make_regexp): should not return junk address during
27979           compile time.  [ruby-dev:26206]
27981 Sun May 22 21:54:06 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
27983         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.4.
27985           == SOAP client and server ==
27987           === for both client side and server side ===
27989           * improved document/literal service support.
27990             style(rpc,document)/use(encoding, literal) combination are all
27991             supported.  for the detail about combination, see
27992             test/soap/test_style.rb.
27994           * let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to
27995             WSDL as well as obj2soap.  closes #70.
27997           * let SOAP::Mapping::Object handle XML attribute for doc/lit service.
27998             you can set/get XML attribute via accessor methods which as a name
27999             'xmlattr_' prefixed (<foo name="bar"/> -> Foo#xmlattr_name).
28001           === client side ===
28003           * WSDLDriver capitalized name operation bug fixed.  from
28004             1.5.3-ruby1.8.2, operation which has capitalized name (such as
28005             KeywordSearchRequest in AWS) is defined as a method having
28006             uncapitalized name. (converted with GenSupport.safemethodname
28007             to handle operation name 'foo-bar').  it introduced serious
28008             incompatibility; in the past, it was defined as a capitalized.
28009             define capitalized method as well under that circumstance.
28011           * added new factory interface 'WSDLDriverFactory#create_rpc_driver'
28012             to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver
28013             are merged).  'WSDLDriverFactory#create_driver' still creates
28014             WSDLDriver for compatibility but it warns that the method is
28015             deprecated.  please use create_rpc_driver instead of create_driver.
28017           * allow to use an URI object as an endpoint_url even with net/http,
28018             not http-access2.
28020           === server side ===
28022           * added mod_ruby support to SOAP::CGIStub.  rename a CGI script
28023             server.cgi to server.rb and let mod_ruby's RubyHandler handles the
28024             script.  CGIStub detects if it's running under mod_ruby environment
28025             or not.
28027           * added fcgi support to SOAP::CGIStub.  see the sample at
28028             sample/soap/calc/server.fcgi.  (almost same as server.cgi but has
28029             fcgi handler at the bottom.)
28031           * allow to return a SOAPFault object to respond customized SOAP fault.
28033           * added the interface 'generate_explicit_type' for server side
28034             (CGIStub, HTTPServer).  call 'self.generate_explicit_type = true'
28035             if you want to return simplified XML even if it's rpc/encoded
28036             service.
28038           == WSDL ==
28040           === WSDL definition ===
28042           * improved XML Schema support such as extension, restriction,
28043             simpleType, complexType + simpleContent, ref, length, import,
28044             include.
28046           * reduced "unknown element/attribute" warnings (warn only 1 time for
28047             each QName).
28049           * importing XSD file at schemaLocation with xsd:import.
28051           === code generation from WSDL ===
28053           * generator crashed when there's '-' in defined element/attribute
28054             name.
28056           * added ApacheMap WSDL definition.
28058         * sample/{soap,wsdl}: removed.
28060 Sun May 22 19:11:35 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28062         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#intialize):
28063           should initialize session id context. [ruby-core:4663]
28065         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): add session id support.
28067 Sun May 22 12:30:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28069         * intern.h, parse.y (ruby_pragma): removed.  fixed: [ruby-dev:26198]
28071         * parse.y (parser_pragma): pragma name was ignored.
28073 Sun May 22 02:39:57 2005  Minero Aoki  <aamine@loveruby.net>
28075         * lib/fileutils.rb (rm_r): new option :secure to avoid
28076           time-to-check-to-time-to-use security problem.  [ruby-dev:26100]
28078         * lib/fileutils.rb (remove_file, remove_dir): try chmod(700) only
28079           on Windows.
28081         * lib/fileutils.rb: does not depend on find.rb.
28083         * lib/fileutils.rb: new method chmod_R.
28085         * lib/fileutils.rb (chown_R): did not work.
28087 Sat May 21 10:23:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28089         * bcc32/Makefile.sub: tds files were not deleted when DESTDIR
28090           included '\' path delimiter. [ruby-dev:26193]
28092 Fri May 20 15:52:18 2005  Shugo Maeda  <shugo@ruby-lang.org>
28094         * ext/readline/readline.c (readline_attempted_completion_function):
28095           return 2 items if completion_proc returns only 1 item (for libedit).
28097 Fri May 20 01:24:33 2005  Shugo Maeda  <shugo@ruby-lang.org>
28099         * ext/readline/extconf.rb: check rl_vi_editing_mode() and
28100           rl_emacs_editing_mode().
28102 Thu May 19 23:33:09 2005  Shugo Maeda  <shugo@ruby-lang.org>
28104         * ext/readline/readline.c: supported libedit. fixed: [ruby-core:4858]
28106         * ext/readline/extconf.rb: added new option --enable-libedit.
28108         * test/readline/test_readline.rb: added assertions for
28109           Readline::HISTORY.
28111         * lib/irb/input-method.rb: do not use Readline::HISTORY.pop.
28113 Wed May 18 23:42:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28115         * error.c (exc_exception): reverted to call Exception#initialize
28116           directly.  fixed: [ruby-dev:26177]
28118 Wed May 18 17:38:51 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
28120         * dir.c (glob_helper): check whether path is "" before calling
28121           do_opendir.  [ruby-dev:26183]
28123 Wed May 18 13:40:48 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
28125         * win32/win32.c (NtInitialize): fix typo.
28127 Wed May 18 11:07:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28129         * dir.c (glob_helper): get rid of using String.  [ruby-dev:26180]
28131         * eval.c (ruby_options), win32/win32.c (NtInitialize): move argument
28132           intialization back.  [ruby-dev:26180]
28134 Tue May 17 11:49:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
28136         * win32/win32.c (unixtime_to_filetime): use localtime() instead of
28137           gmtime() when using FileLocalTimeToFileTime().
28139 Mon May 16 22:42:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28141         * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t
28142           to get rid of redefinition warnings on mingw.
28144         * class.c (rb_class_init_copy): singleton class is disallowed to copy,
28145           from its definition.  fixed: [ruby-talk:142749]
28147         * parse.y (pragma_encoding): add prototype to suppress false warning
28148           by VC.
28150         * process.c (proc_spawn_v): use rb_w32_aspawn on Win32.
28152 Mon May 16 03:29:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28154         * win32/win32.{h,c}: define rb_[pgu]id_t.
28156 Mon May 16 00:21:02 2005  Tanaka Akira  <akr@m17n.org>
28158         * lib/pathname.rb (Pathname#unlink): use SystemCallError instead of
28159           Errno::EISDIR because EISDIR is not portable.
28160           [ruby-core:5001]
28162 Sun May 15 22:28:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28164         * lib/drb/drb.rb (DRbObject#method_missing): use raise(exception).
28165           [ruby-dev:26164]
28167 Sun May 15 18:56:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28169         * configure.in, ruby.h: define rb_[pgu]id_t macros instead of typedefs
28170           to get rid of types which might not be defined yet.  [ruby-dev:26165]
28172 Sun May 15 14:35:46 2005  Tanaka Akira  <akr@m17n.org>
28174         * lib/pathname.rb (Pathname#unlink): unlink a symlink to a directory
28175           was failed.  [ruby-core:4992]
28177 Sun May 15 09:57:30 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28179         * win32/win32.c (unixtime_to_filetime): deal with DST.
28180           [ruby-talk:141817]
28182 Sat May 14 23:59:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28184         * error.c (exc_exception, {exit,name_err,syserr}_initialize): call
28185           Execption#initialize.  fixed: [ruby-talk:142593]
28187 Sat May 14 23:56:41 2005  Erik Huelsmann  <ehuels@gmail.com>
28189         * configure.in: Check for the availability of pid_t, gid_t and uid_t and
28190           remove AC_TYPE_UID_T.  fixed: [ruby-core:04745]
28192         * defines.h: Remove pid_t typedef.
28194         * ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with
28195          the available system types.
28197         * process.c: Change instances of pid_t and gid_t to their rb_*
28198          counterparts.
28200         * ext/pty/pty.c: Change pid_t to rb_pid_t.
28202         * vms/config.h: Define HAVE_{P,G,U}ID_T to 1.
28204         * win32/Makefile.sub: Remove #define for {g,u}id_t.
28206         * win32/win32.c: Change pid_t to rb_pid_t.
28208         * wince/Makefile.sub: Remove #define for {g,u}id_t.
28210         * wince/sys/types.h: Remove definitions of {p,g,u}id_t.
28212 Sat May 14 11:47:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28214         * intern.h (ruby_pragma): prototype.  [ruby-core:04881]
28216         * parse.y (parser_pragma): parse Emacsen hack.
28218         * parse.y (parser_prepare): deal with specific syntax at the top.
28220         * ruby.c (load_file): read the first line iff it started with shebang.
28222 Fri May 13 23:44:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28224         * ext/extmk.rb: keep srcdir unexpanded.
28226         * lib/mkmf.rb (create_makefile): quote topdir and hdrdir if necessary.
28227           fixed: [ruby-core:04932]
28229         * lib/mkmf.rb (configuration), {bcc32,win32,wince}/Makefile.sub: make
28230           also INSTALL_PROG and INSTALL_DATA system dependent.
28231           fixed: [ruby-core:04931]
28233 Fri May 13 23:32:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28235         * eval.c (unknown_node): add volatile directive to prototype.
28237 Fri May 13 17:50:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28239         * variable.c (generic_ivar_get): rb_attr_get should not warn.
28240           [ruby-dev:26010]
28242 Thu May 12 17:41:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
28244         * ext/nkf/nkf-utf8/nkf.c: follow nkf 2.0.5
28246 Thu May 12 16:50:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28248         * lib/rdoc/parsers/parse_c.rb: more readability for mixing
28249           progress "c..." and warning message.
28251 Thu May 12 15:50:56 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
28253         * lib/rdoc/parsers/parse_c.rb: show parsing progress for C files.
28254           [ruby-core:4341]
28256 Thu May 12 09:53:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28258         * version.c (ruby_show_version): flush for non-tty stdout.
28260 Thu May 12 01:23:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28262         * eval.c (unknown_node): ignore broken NODE to get rid of accessing
28263           possibly inaccessible address.  fixed: [ruby-dev:26122]
28264           should emit more useful information like [ruby-dev:26126], though.
28266 Wed May 11 15:58:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28268         * eval.c (break_jump): break should not cross functions.
28269           [ruby-list:40818]
28271 Wed May 11 10:41:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28273         * lib/tempfile.rb (Tempfile#unlink): fixed typo.
28275 Wed May 11 01:03:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28277         * eval.c (TMP_ALLOC): use macro NEW_NODE() to get rid of warnings on
28278           platforms which have no alloca().  fixed: [ruby-talk:141301]
28280 Sun May  8 23:17:47 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28282         * ext/tk/lib/tk/timer.rb: fix typo.
28284 Sun May  8 21:00:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28286         * hash.c (Init_Hash): remove custom "hash" and "eql?".
28287           (ported from 1.8) [ruby-dev:26132]
28289 Sun May  8 16:50:25 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28291         * lib/profiler.rb: fixed "undefined method `[]' for nil:NilClass"
28292           [ruby-core:4775] [ruby-talk:140401] [ruby-dev:26118]
28294 Sat May  7 22:58:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28296         * lib/mkmf.rb (have_var): no libs argument is given.
28298 Fri May  6 08:08:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28300         * hash.c:rb_hash_hash_i() should be static.  [ruby-core:04815]
28302         * re.c should include regint.h for declarations of oniguruma
28303           functions.  [ruby-core:04815]
28305 Sun May  1 09:15:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28307         * ruby.c (process_sflag): replace '-' in variable names with '_'.
28308           [ruby-dev:26107]
28310         * eval.c (rb_eval), parse.y (arg): reduce fixnum range literal at
28311           parser.  fixed: [ruby-dev:26113]
28313 Sat Apr 30 11:59:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28315         * configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.
28316           [ruby-dev:26109]
28318         * eval.c, gc.c: moved noinline to configure.in.
28320         * rubyio.h (DEPRECATED): moved to configure.in.
28322         * ruby.h (DEPRECATED, NOINLINE): default definition.
28324         * win{32,ce}/Makefile.sub (config.h): deprecated and noinline for
28325           __declspec() are available for VC++7 or later.
28327 Sat Apr 30 06:57:39 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28329         * lib/webrick/cgi.rb: new methods WEBrick::CGI#[], WEBrick::CGI#logger
28330           and WEBrick::CGI#config.  these are necessary to use an instance of
28331           WEBrick::CGI as the first argument of HTTPServlet#get_instance.
28332           (suggested by Tatsuki Sugiura)
28334         * lib/webrick/cgi.rb
28335           (WEBrick::CGI#initalize): set a dummy to @config[:ServerSoftware]
28336           if SERVER_SOFTWARE environment variable is not given.
28337           (WEBrick::CGI#start): req.path_info must be a String.
28338           (WEBrick::CGI::Socket#request_line): treat REQUEST_METHOD, PATH_INFO
28339           and SCRIPT_NAME to run in console.
28341         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape_path): should
28342           not use String#split("/"). it removes trailing empty path component.
28344 Thu Apr 28 08:21:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28346         * ruby.c (set_arg0): use also environment variable space for setting
28347           $0.  [ruby-core:04774]
28349 Wed Apr 27 23:42:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28351         * win32/Makefile.sub (OPTFLAGS): default global optimization to
28352           disabled only for VC++6.
28354 Tue Apr 26 22:58:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28356         * ext/tk/tcltklib.c (ip_invoke_core): call Tcl's "::unknown"
28357           command when can't get information of target command.
28359 Mon Apr 25 13:54:55 2005  speakillof  <speakillof@yahoo.co.jp>
28361         * lib/rexml/encodings/SHIFT-JIS.rb: encoding and decoding were
28362           swapped. [ruby-core:4772]
28364 Mon Apr 25 01:18:43 2005  Tanaka Akira  <akr@m17n.org>
28366         * oniguruma.h (OnigWarnFunc): add a variadic argument.
28367           [ruby-core:4751]
28369 Sat Apr 23 19:49:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28371         * ext/tk/tcltklib.c (ip_RubyExitCommand): exit with status code
28372           via TclTkIp#_eval didn't work. [ruby-talk:139390]
28374 Sat Apr 23 11:45:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28376         * eval.c (rb_provided): should check also path name to be loaded.
28377           fixed: [ruby-dev:26093]
28379 Fri Apr 22 16:55:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28381         * ext/tk/tcltklib.c (ip_set_exc_message): fixed memory leak.
28383         * ext/tk/tcltklib.c: eTkCallbackReturn was not initialized.
28385 Thu Apr 21 06:45:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28387         * ruby.c (ruby_incpush_expand, proc_options): expand relative path
28388           given with -I option.  [ruby-dev:26090]
28390         * configure.in, lib/mkmf.rb, {bcc32,win32,wince}/Makefile.sub: improve
28391           C++ support.  [ruby-dev:26089]
28393 Thu Apr 21 01:53:09 2005  Minero Aoki  <aamine@loveruby.net>
28395         * lib/net/http.rb: add rdoc.
28397 Thu Apr 21 00:07:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28399         * lib/mkmf.rb (create_makefile): support platforms have file separator
28400           other than /.
28402         * {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
28403           of building platform.
28405         * {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.
28407 Wed Apr 20 23:22:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28409         * Makefile.in, common.mk: miniruby depends on MINIOBJS.
28411         * dmydln.c (dln_load): dummy function to raise LoadError.
28413         * cygwin/GNUmakefile.in, {bcc32,win32,wince}/Makefile.sub: miniruby
28414           can't load extensions on Windows.
28416 Wed Apr 20 23:01:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28418         * win32/ifchange.bat: delete testing files.
28420 Wed Apr 20 22:54:54 2005  Minero Aoki  <aamine@loveruby.net>
28422         * lib/net/http.rb: new method Net::HTTP.post_form.
28424         * lib/net/http.rb: new method Net::HTTPHeader#set_form_data and
28425           its alias #form_data=.
28427         * lib/net/http.rb: Net::HTTPHeader#add_header -> add_field
28428           (adjustted to Ruby 1.8).
28430 Wed Apr 20 10:53:30 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
28432         * lib/rdoc/parsers/parse_rb.rb (lex_init): use IRB module.
28433           [ruby-core:04737]
28435 Wed Apr 20 07:27:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28437         * {bcc32,win32,wince}/configure.bat, {bcc32,win32,wince}/setup.mak:
28438           add extout option.
28440         * bcc32/setup.mak: make configuration variables overridable.
28442 Tue Apr 19 23:37:09 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
28444         * lib/ftools.rb (File.safe_unlink): do not modify a symlinked file.
28446 Tue Apr 19 23:02:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28448         * eval.c (search_required): deal with features with path too.
28450         * intern.h (rb_file_expand_path): prototype.  fixed: [ruby-dev:26082]
28452 Tue Apr 19 08:38:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28454         * eval.c (search_required, rb_require_safe): expand path in
28455           rb_features.  [ruby-dev:26079]
28457         * file.c (rb_find_file_ext): return absolute path.
28459         * ext/extmk.rb: expand path for ext/**/extconf.rb.
28461         * eval.c (search_required): handle static linked extensions.
28463 Mon Apr 18 15:37:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28465         * eval.c (rb_attr): attribute name check added.
28467         * numeric.c (flo_plus): small typo fix.
28469 Mon Apr 18 11:25:14 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28471         * ext/zlib/zlib.c (zstream_run): fixed SEGV. [ruby-core:4712]
28473 Sun Apr 17 23:57:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28475         * ext/extmk.rb (extmake, parse_args): do not expand destdir.
28477         * ext/extmk.rb (relative_from): treat mere drive letter as an absolute
28478           path.
28480 Sat Apr 16 17:01:16 2005  Kouhei Sutou  <kou@cozmixng.org>
28482         * sample/rss/tdiary_plugin/rss-recent.rb (rss_recent_cache_rss):
28483           use the first date information of items as site date information
28484           if channel doesn't have date information.
28486 Sat Apr 16 15:27:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28488         * configure.in (RUBY_PROG_INSTALL): not add -p option to INSTALL.
28489           files need timestamps to be kept are only ar-archive on a few
28490           platforms, and be installed by instruby.rb but not INSTALL.
28491           fixed: [ruby-core:04721]
28493         * mkconfig.rb: purge autoconf value variables.
28495 Sat Apr 16 10:33:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28497         * bcc32/Makefile.sub: quick hack... prepend DESTDIR.
28498           still have restriction on DESTDIR ("", "/", "e:")
28500 Sat Apr 16 03:59:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28502         * ext/openssl/extconf.rb: check for OPENSSL_cleanse.
28504         * ext/openssl/openssl_missing.h: ditto.
28506 Fri Apr 15 22:40:19 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28508         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE.codepage=
28510         * ext/win32ole/tests/testOLETYPELIB.rb: correct expected message.
28512 Fri Apr 15 22:04:07 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28514         * ext/win32ole/win32ole.c(ole_invoke): retry after converting Qnil
28515           to VT_EMPTY.
28517 Thu Apr 14 19:05:06 2005  Minero Aoki  <aamine@loveruby.net>
28519         * parse.y [ripper] (regexp): dispatch regexp option.
28520           [ruby-Bugs:1688]
28522         * ext/ripper/lib/core.rb: regenerated (interface changed).
28524 Thu Apr 14 18:59:43 2005  Minero Aoki  <aamine@loveruby.net>
28526         * lib/fileutils.rb (remove_file): ignore exceptions caused by
28527           chmod.
28529         * lib/fileutils.rb (remove_dir): try to get rights to rmdir.
28530           [ruby-Bugs:1502]
28532 Thu Apr 14 18:51:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
28534         * lib/irb/ruby-lex.rb, lib/irb/slex.rb: bug fix of [ruby-Bugs-1745]
28536         * lib/irb/ext/loader.rb, lib/irb/ext/save-history.rb:
28537           fix location of @RCS_ID
28539         * lib/irb/cmd/help.rb: a lost of release IRB 0.9.5.
28541 Thu Apr 14 15:10:30 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
28543         * lib/irb/notifier.rb, lib/irb/output-method.rb, lib/irb/ext/history.rb
28544           fixed warning of 'ruby -w'
28546 Thu Apr 14 05:35:45 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
28548         * doc/irb/irb.rd.ja: a lost  of release IRB 0.9.5.
28550         * lib/irb/slex.rb: bug fix by [ruby-core:04707].
28552 Thu Apr 14 00:20:31 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
28554         * bin/irb lib/irb.rb lib/irb/...: IRB 0.9.5.
28556 Wed Apr 13 23:40:21 2005  Kouhei Sutou  <kou@cozmixng.org>
28558         * lib/rss/rss.rb (RSS::VERSION): 0.1.3 -> 0.1.4.
28560         * lib/rss/rss.rb (RSS::Element#converter): fixed converter
28561           transmission bug.
28563 Wed Apr 13 22:12:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28565         * lib/optparse.rb (OptionParser#order!): call handlers iff matches
28566           non-switch.
28568 Wed Apr 13 21:20:35 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
28570         * configure.in (mingw32): extract msvcr*.dll from objdump result.
28572 Wed Apr 13 19:25:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28574         * configure.in (mingw32): use actual runtime DLL name as ruby DLL
28575           name and default load path.
28577         * win32/Makefile.sub, win32/setup.mak: ditto.
28579 Tue Apr 12 19:30:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28581         * lib/optparse.rb (OptionParser#make_switch, OptionParser#order!):
28582           added non-option and end-of-args handler.  [ruby-talk:136878]
28583           [EXPERIMENTAL]
28585 Tue Apr 12 15:33:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28587         * ext/tk/tcltklib.c (ip_finalize): better modification than the
28588           previous commit [ruby-dev:26029].
28590 Tue Apr 12 12:38:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28592         * ext/tk/tcltklib.c (ip_finalize): fix SEGV when Tcl_GlobalEval()
28593           modifies the argument string to eval.
28595 Tue Apr 12 02:21:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28597         * ext/tk/tcltklib.c (ip_finalize): add existence check of
28598           Tcl commands before calling Tcl_GlobalEval().
28600 Mon Apr 11 23:36:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28602         * lib/drb/drb.rb: [druby-ja:123] fix: When reference of my object is
28603           loaded, the object is tainted.
28605         * test/drb/test_drb.rb: ditto.
28607 Mon Apr 11 22:18:23 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
28609         * dir.c, file.c (lstat): avoid warnings for mingw.
28611 Mon Apr 11 20:11:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28613         * ext/tk/tcltklib.c (ip_finalize): adhoc patch to avoid SEGV when exit
28614           on Tcl/Tk8.3.x.
28616 Mon Apr 11 15:24:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
28618         * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
28620 Sat Apr  9 18:20:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28622         * ext/tk/lib/tk/image.rb: support to create TkImage object without
28623           creating a new image object on Tk.
28625         * ext/tk/lib/tk/menu.rb: use TkCommandNames on create_self()
28627         * ext/tk/lib/tk/root.rb: TkRoot.to_eval() returns '.'.
28629         * ext/tk/lib/tk/text.rb: add methods to create a TkText::IndexString
28630           from (x, y) coords.
28632         * ext/tk/lib/tkextlib/tile/: add demo and update support status.
28634 Sat Apr  9 14:42:29 2005  Kouhei Sutou  <kou@cozmixng.org>
28636         * sample/rss/tdiary_plugin/rss-recent.rb: supported configuration
28637           via Web browser.
28639 Fri Apr  8 20:17:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28641         * ext/extmk.rb (extmake): hdrdir needs to be defined also in
28642           Config::CONFIG.
28644         * lib/mkmf.rb (configuration, create_makefile): get rid of recursive
28645           macro reference.
28647 Fri Apr  8 01:55:20 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28649         * ext/tk/sample/demos-{en,jp}/goldberg.rb: reduced window size.
28650           [ruby-dev:25992]
28652 Thu Apr  7 23:58:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28654         * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
28656         * lib/mkmf.rb (configuration, create_makefile): ditto.
28658         * lib/mkmf.rb (CXX_EXT): separate C++ extensions.
28660 Thu Apr  7 17:24:17 2005  Shugo Maeda  <shugo@ruby-lang.org>
28662         * eval.c (rb_call0): "return" event hook should be always executed
28663           if event_hooks is set.
28665 Thu Apr  7 14:33:09 2005  Kouhei Sutou  <kou@cozmixng.org>
28667         * test/rss/test_maker_dc.rb (test_date): added a test for #date=
28668           and #dc_date=.
28670 Thu Apr  7 11:49:53 2005  Kouhei Sutou  <kou@cozmixng.org>
28672         * lib/rss/maker/dublincore.rb: _really_ supported multiple Dublin
28673           Core items.
28675         * test/rss/rss-assertions.rb (assert_multiple_dublin_core): added
28676           an assertion for testing multiple Dublin Core items.
28678         * test/rss/test_maker_dc.rb (test_rss10_multiple): added a test
28679           for making multiple Dublin Core items.
28681 Wed Apr  6 16:06:30 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28683         * test/ruby/test_env.rb (test_key): should test ENV.key instead of
28684           ENV.index. [ruby-dev:25994]
28686 Tue Apr  5 16:01:12 2005  Kouhei Sutou  <kou@cozmixng.org>
28688         * lib/rss/*: refactored.
28689           - gave a name to 'x'.
28690           - undef_method -> remove_method for avoiding a warning in ruby 1.6.
28692 Tue Apr  5 15:45:33 2005  Kouhei Sutou  <kou@cozmixng.org>
28694         * sample/rss/tdiary_plugin/rss-recent.rb:
28695           new option: @options['rss-recent.use-image-link']:
28696           use image as link instread of text if available.
28698         * sample/rss/tdiary_plugin/rss-recent.rb (RSS_RECENT_VERSION):
28699           0.0.5 -> 0.0.6.
28701 Tue Apr  5 15:15:26 2005  Kouhei Sutou  <kou@cozmixng.org>
28703         * lib/rss/dublincore.rb: supported multiple Dublin Core items.
28705         * lib/rss/parser.rb: added class name registry for complex model
28706           elements. (ex. have childlen elements, have some attributes and
28707           a child element and so on.)
28709         * lib/rss/maker/base.rb: added default current_element implementation.
28711         * lib/rss/maker/dublincore.rb: supported multiple Dublin Core
28712           items.
28714         * lib/rss/maker/image.rb: supproted new Dublin Core API.
28717         * lib/rss/trackback.rb (RSS::TrackBackUtils.new_with_value_if_need):
28718           moved to RSS::Utils.
28720         * lib/rss/utils.rb (RSS::Utils.new_with_value_if_need):
28721           moved from RSS::TrackBackUtils.
28724         * lib/rss/maker/image.rb: fixed invalid argument of
28725           add_need_initialize_variable bug.
28727         * lib/rss/maker/trackback.rb: ditto.
28730         * lib/rss/rss.rb (Hash#merge): added for ruby 1.6.
28732         * lib/rss/rss.rb (RSS::BaseModel.date_writer): changed to accept nil
28733           for date value.
28736         * test/test_dublincore.rb: added tests for plural accessor and
28737           multiple Dublin Core items.
28739         * test/test_setup_maker_1.0.rb: fixed swapped actual and expected
28740           values.
28742 Mon Apr  4 23:17:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28744         * ext/tk/lib/tk.rb (TkComm#array2tk_list): accept enc-mode argument to
28745           decide whether convert encoding of each element or not.
28747         * ext/tk/lib/tk/variable.rb (TkVariable#value=): fail to convert the
28748           encoding of array elements when assign an array to an TkVariable
28749           object.
28751 Mon Apr  4 10:26:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28753         * ext/tk/lib/tk/dialog.rb: fixed typo.
28755 Sat Apr  2 23:38:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28757         * configure.in (CP, INSTALL): get rid of less portable options.
28759         * lib/mkmf.rb (configuration, create_makefile): correct configuration
28760           variable.
28762         * wince/configure.bat, wince/setup.mak: add prefix, extstatic and
28763           rdoc options.
28765         * lib/mkmf.rb (create_makefile): ensure library directories get made
28766           before copying libraries there.
28768 Sat Apr  2 16:59:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28770         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
28772         * ext/tk/lib/tk/variable.rb: fix namespace trouble when autoloading
28774         * ext/tk/lib/tk/palette.rb: define Tcl variable 'tkPalette' as global
28776         * ext/tk/lib/tk/dialog.rb: use array2tk_list method when calling
28777           Tk.ip_eval.
28779         * ext/tk/lib/tk/autoload.rb: add autoload entry 'TkDialogObj' and
28780           'TkWarningObj'
28782 Sat Apr  2 13:23:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28784         * hash.c (env_key): ENV.index is deprecated as well as Hash#index.
28785           use ENV.key instead. [ruby-dev:25974]
28787 Sat Apr  2 02:19:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28789         * ext/tk/lib/tk.rb (TkWindow.initialize): accept 'without_creating'
28790           option without 'widgetname' option to allow creating a widget object
28791           which is used as an argument of Tcl/Tk's widget allocation commands.
28793         * ext/tk/lib/tk/image.rb (TkImage.initialize): accept 'imagename'
28794           option to create a image object by the given name.
28796 Thu Mar 31 22:23:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28798         * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
28799           insensitive file system platforms.
28801         * README.EXT, README.EXT.ja (Appendix C): utility functions.
28803 Thu Mar 31 14:08:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28805         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should return
28806           value. [ruby-dev:25971]
28808 Thu Mar 31 11:07:50 2005  Kouhei Sutou  <kou@cozmixng.org>
28810         * lib/rss/parser.rb: @@setter -> @@setters.
28812         * lib/rss/parser.rb
28813           (RSS::BaseListener.register_uri)
28814           (RSS::BaseListener.uri_registered?)
28815           (RSS::BaseListener.install_get_text_element):
28816           swapped the first argument and the second argument.
28818         * lib/rss/taxonomy.rb: swapped the first argument and the second
28819           argument for RSS::BaseListener.install_get_text_element.
28820         * lib/rss/image.rb: ditto.
28821         * lib/rss/syndication.rb: ditto.
28822         * lib/rss/dublincore.rb: ditto.
28823         * lib/rss/parser.rb: ditto.
28824         * lib/rss/1.0.rb: ditto.
28825         * lib/rss/2.0.rb: ditto.
28826         * lib/rss/0.9.rb: ditto.
28827         * lib/rss/content.rb: ditto.
28829 Thu Mar 31 11:00:36 2005  Kouhei Sutou  <kou@cozmixng.org>
28831         * lib/rss/parser.rb
28832           (RSS::BaseListener.install_setter)
28833           (RSS::BaseListener.register_uri): changed fallback way.
28835 Thu Mar 31 08:25:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28837         * common.mk (RUBYOPT): clear for the environment RubyGems installed.
28839         * common.mk (clean-local): keep $(PREP) files till distclean.
28841         * common.mk (check): do all tests.
28843 Thu Mar 31 06:00:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28845         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should not raise
28846           error even if the specified engine could not be loaded. (Dynamic
28847           engines don't have fixed name to load.)
28849 Wed Mar 30 17:41:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28851         * ext/tk/tcltklib.c: add TclTkIp#_create_console() method to create
28852           a Tcl/Tk's console window.
28854         * ext/tk/lib/multi-tk.rb: support TclTkIp#_create_console() method.
28856         * ext/tk/lib/remote-tk.rb: ditto.
28858         * ext/tk/lib/tk/console.rb: ditto.
28860         * ext/tk/lib/tk.rb: update RELEASE_DATE
28862         * ext/tk/sample/demo-*/check2.rb: use 'return' in the Proc object.
28864         * ext/tk/sample/tkextlib/**: ditto.
28866 Tue Mar 29 22:20:49 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28868         * test/rinda/test_rinda.rb: use DRbObject.new_with instead of reinit.
28869           [ruby-dev:25961]
28871 Tue Mar 29 00:04:57 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28873         * lib/drb/drb.rb: move method DRbObject#reinit to DRbObject.new_with.
28874           extract method DRbObject.prepare_backtrace. add DRb.regist_server,
28875           remove_server, fetch_server. change server in thread variable if
28876           in-proc server. [druby-ja:113]
28878         * lib/drb/gw.rb: ditto.
28880 Mon Mar 28 20:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28882         * ext/extmk.rb (extract_makefile): nothing to be removed when no file
28883           was deleted.
28885         * ext/extmk.rb (extmake): restore srcdir.
28887 Mon Mar 28 08:39:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28889         * ext/iconv/iconv.c (iconv_create): Iconv::Failure requires 3
28890           arguments.  (pointed out by NaHi)
28892 Sun Mar 27 00:56:58 2005  Minero Aoki  <aamine@loveruby.net>
28894         * lib/fileutils.rb (remove_file): ignore Errno::E* if force option
28895           is set. [ruby-dev:25944]
28897 Sat Mar 26 22:51:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28899         * ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
28900           a class is available for a callback entry.
28902         * ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
28904         * ext/tk/lib/tk.rb (array2tk_list): change from private module method
28905           of TkComm to public module method.
28907         * ext/tk/lib/tk.rb (cget): add check that slot argument is not
28908           empty string.
28910         * ext/tk/lib/tk.rb (configinfo): ditto.
28912         * ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
28913           is not empty string.
28915         * ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
28917         * ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
28918           cursor and cursor= method).
28920         * ext/tk/lib/tk/font.rb: improve font treatment when the font name is
28921           empty string.
28923         * ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure
28924           type.
28926         * ext/tk/lib/tk/variable.rb: improve treatment of array-type
28927           tkvariable.
28929         * ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
28931         * ext/tk/lib/tkextlib/blt/*: bug fix.
28933         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
28934           to call TreeCtrl commands for bindings.
28936         * ext/tk/sample/tkextlib/blt/*: new sample scripts.
28938         * ext/tk/sample/tkextlib/treectrl/*: ditto.
28940 Fri Mar 25 10:53:16 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
28942         * configure.in (WIN32_LEAN_AND_MEAN): removed because a lot of
28943           troubles.  [ruby-list:40721]
28945 Thu Mar 24 23:10:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28947         * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
28948           which doesn't bail out at #error directive.  [ruby-dev:25818]
28950         * lib/mkmf.rb (check_sizeof): refine logging messages.
28952 Wed Mar 23 19:08:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28954         * lib/webrick/utils.rb (WEBrick::Utils.create_listeners):
28955           - should raise ArgumentError if no port is specified.
28956           - even if the specified port is 0, all TCPServers should be
28957             initialized with the port given to the first one.
28959         * lib/webrick/server.rb (WEBrick::GenericServer#initialize): if :Port
28960           parameter is 0, it should be updated with the port number which
28961           ectually listened.
28963 Wed Mar 23 16:12:40 2005  Shugo Maeda  <shugo@ruby-lang.org>
28965         * parse.y (primary): fix lineno of rescue and ensure.
28967 Wed Mar 23 00:39:05 2005  Shugo Maeda  <shugo@ruby-lang.org>
28969         * test/ruby/test_settracefunc.rb (test_event): added tests for
28970           "class" and "end" and "raise".
28972 Sun Mar 20 22:51:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28974         * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
28975           create_makefile.
28977 Sat Mar 19 23:48:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28979         * misc/ruby-mode.el (ruby-expr-beg): returned true always.
28980           fixed: [ruby-list:40683]
28982 Sat Mar 19 00:41:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28984         * ext/tk/lib/tk/font.rb: add some TkFont class methods to get font
28985           information without creating a TkFont object.
28987         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and define some
28988           classes for components of Tk::TreeCtrl
28990 Thu Mar 17 17:42:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28992         * struct.c (make_struct): allow non local-id field
28993           names. [ruby-core:04575]
28995         * struct.c (inspect_struct): ditto.
28997 Wed Mar 16 23:39:13 2005  Shugo Maeda  <shugo@ruby-lang.org>
28999         * test/ruby/test_settracefunc.rb: added test for c-return.
29001 Wed Mar 16 22:57:43 2005  Shugo Maeda  <shugo@ruby-lang.org>
29003         * eval.c (rb_call0): call_cfunc() should be protected.
29005         * eval.c (rb_add_event_hook): use K&R style.
29007         * eval.c (rb_remove_event_hook): ditto.
29009 Wed Mar 16 22:03:15 2005  Shugo Maeda  <shugo@ruby-lang.org>
29011         * eval.c (rb_add_event_hook): new function to add a hook function for
29012           interpreter events.
29014 Wed Mar 16 18:08:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29016         * eval.c (rb_call0): reorganize "return" event post.
29018         * eval.c (return_jump): no need to post "return" event here.
29020 Tue Mar 15 23:49:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29022         * ext/iconv/iconv.c (Init_iconv): InvalidEncoding also should include
29023           Iconv::Failure.
29025 Tue Mar 15 23:12:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29027         * eval.c (recursive_check, recursive_push): more restrictive check.
29028           fixed: [ruby-dev:25916]
29030 Tue Mar 15 16:38:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29032         * ext/tk/tkutil/tkutil.c (ary2list): give wrong arguments to hash2kv()
29034 Mon Mar 14 19:39:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29036         * ext/tk/lib/tk/timer.rb (TkTimer): forgot to clear @return_value
29037           when restarting
29039         * ext/tk/lib/tk/sample/cd_timer.rb: new sample of TkRTTimer
29041 Mon Mar 14 12:21:03 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29043         * ext/tk/lib/tk/timer.rb (TkRTTimer): forgot to reset the callback
29044           time. So, 'continue' do all callbacks between 'stop' and 'continue'.
29046 Mon Mar 14 08:14:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29048         * object.c (str_to_id): raise ArgumentError for NUL containing
29049           strings.
29051 Mon Mar 14 00:13:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29053         * ext/tk/lib/tk/timer.rb (TkRTTimer): correct calculation of offset
29054           value. get a little better accuracy.
29056         * ext/tk/sample/demos-en/widget: use a binding with no local variables
29057           when eval a sample script.
29059         * ext/tk/sample/demos-en/bind.rb: ditto.
29061         * ext/tk/sample/demos-en/tcolor: ditto.
29063         * ext/tk/sample/demos-jp/widget: ditto.
29065         * ext/tk/sample/demos-jp/bind.rb: ditto.
29067         * ext/tk/sample/demos-jp/tcolor: ditto.
29069 Sun Mar 13 22:19:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29071         * eval.c (recursive_pop): raise TypeError instead of fatal error.
29072           fixed: [ruby-dev:25843]
29074 Sun Mar 13 10:09:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29076         * test/rinda/test_rinda.rb: remove test_gc. [ruby-dev:25871]
29078 Sun Mar 13 02:32:54 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29080         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): should get DH
29081           parameter from the current SSL object.
29083 Sun Mar 13 02:09:03 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29085         * ext/openssl/ossl_pkey_dh.c (ossl_create_dh): fix typo.
29086           patch from IWATSUKI Hiroyuki. [ruby-dev:25867]
29088         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): ditto.
29089           (ossl_call_tmp_dh_callback): ditto
29091 Fri Mar 11 03:24:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29093         * parse.y (primary): wrong var node was set for NODE_LAMBDA.
29094           [ruby-core:04555]
29096 Thu Mar 10 19:10:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29098         * ext/tk/tcltklib.c (lib_eventloop_ensure): mis-delete a timer handler
29099           when exit from a recursive called eventloop
29101         * ext/tk/lib/tk/timer.rb: new TkRTTimer class, which can works for a
29102           realtime operation
29104         * ext/tk/sample/tkrttimer.rb: sample of TkRTTimer class
29106         * ext/tk/lib/tk/textmark.rb: move  TkTextMark#+ and TkTextMark#- to
29107           TkText::IndexModMethods
29109         * ext/tk/lib/tk/text.rb: improve TkTextMark#+ and TkTextMark#-, and
29110           add them to TkText::IndexModMethods module
29112         * ext/tk/sample/tktextio.rb: add test part of "seek by text index
29113           modifiers"
29115 Thu Mar 10 08:10:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29117         * re.c (make_regexp): need to free internal regexp structure when
29118           compilation fails.  [ruby-talk:133228]
29120 Thu Mar 10 01:08:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29122         * parse.y (bv_decl): remove initialize rule from block local
29123           variable declaration.
29125 Wed Mar  9 23:55:34 2005  Tanaka Akira  <akr@m17n.org>
29127         * lib/pp.rb (PP::PPMethods#guard_inspect_key): support
29128           __recursive_key__.  [ruby-dev:25821]
29130 Wed Mar  9 19:42:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29132         * ext/openssl/ossl_ssl.c: OpenSSL::SSL::SSLContexts suports callbacks:
29133           - SSLContext#client_cert_cb is a Proc. it is called when a client
29134             certificate is requested by a server and no certificate was yet
29135             set for the SSLContext. it must return an Array which includes
29136             OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects.
29137           - SSLContext#tmp_dh_callback is called in key exchange with DH
29138             algorithm. it must return an OpenSSL::PKey::DH object.
29140         * ext/openssl/ossl_ssl.c:
29141           (ossl_sslctx_set_ciphers): ignore the argument if it's nil.
29142           (ossl_start_ssl, ossl_ssl_write): call rb_sys_fail if errno isn't 0.
29143           [ruby-dev:25831]
29145         * ext/openssl/ossl_pkey.c
29146           (GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first.
29147           (DupPrivPKeyPtr): new function.
29149         * ext/openssl/ossl_pkey_dh.c: add default DH parameters.
29151         * ext/openssl/ossl_pkey.h: ditto.
29153         * ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285]
29155 Wed Mar  9 18:09:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29157         * parse.y (gettable_gen): warns if VCALL name is used as
29158           out-of-scope block local variable.  [EXPERIMENTAL]
29160         * parse.y (opt_bv_decl): add explicit block local variable
29161           declaration.  raises error for name conflicts.  [EXPERIMENTAL]
29163 Wed Mar  9 13:37:57 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29165         * ext/tk/sample/tktextio.rb: fix bug of handling 'end' position.
29166           support initial text, overwrite setting and pos_gravity control.
29168 Tue Mar  8 18:16:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29170         * ext/tk/sample/tktextio.rb: New sample script. TkTextIO class in this
29171           sample supports to use a text widget as if it is a I/O stream (such
29172           like as StringIO class).
29174 Tue Mar  8 13:39:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29176         * ext/socket/mkconstants.rb: workaround for some of 4.4BSD-Lite
29177           derived OSs.
29179 Tue Mar  8 12:36:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29181         * ext/socket/socket.c: document from Sam Roberts
29182           <sroberts@uniserve.com> for getsockopt and setsockopt is merged.
29183           [ruby-doc:824]
29185 Tue Mar  8 10:48:53 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29187         * eval.c (rb_exec_recursive): declaration should precede statements
29188           before C99.
29190 Tue Mar  8 10:05:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29192         * error.c (errno_missing): Errno.const_missing to allow references
29193           to SyscallError exceptions not defined on the platform.
29194           [ruby-core:04522]
29196         * error.c (Init_syserr): Errno::NOERROR(0) for fallback exception.
29198 Tue Mar  8 01:19:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
29200         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.66
29201           fixed: [ruby-dev:25828]
29203 Mon Mar  7 21:29:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29205         * lib/webrick/server.rb (WEBrick::GenericServer#start): should
29206           restore @token if accept failure. suggested by Dominique Brezinski.
29207           [ruby-core:04518]
29209         * sample/webrick/httpsd.rb: fix typo in comment. suggested by
29210           Kazuhiko Shiozaki.
29212 Mon Mar  7 21:01:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29214         * eval.c (rb_require_safe): get actual path string under safe level
29215           when requested.  fixed: [ruby-dev:25815]
29217 Mon Mar  7 16:46:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29219         * ext/openssl/ossl_ssl.c (ossl_start_ssl, ossl_ssl_read,
29220           ossl_ssl_write): need to set errno on Win32 platform.
29222 Mon Mar  7 14:55:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29224         * eval.c (block_pass): should not push unique number if a block is
29225           not an orphan.  [ruby-dev:25808]
29227 Mon Mar  7 14:13:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29229         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
29230           should set @eof and @rbuffer.
29232 Mon Mar  7 10:28:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29234         * object.c (inspect_obj): unintended space removal.
29235           [ruby-dev:25810]
29237         * eval.c (rb_exec_recursive): should not use NODE in disclosed
29238           context.  [ruby-dev:25812]
29240         * io.c (rb_f_open): need not to check if to_open value is a
29241           T_FILE.  [ruby-dev:25812]
29243 Mon Mar  7 01:21:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29245         * ext/tk/tkutil/tkutil.c: follow the change of st.c (committed
29246           at Fri, 4 Mar 2005 15:47:47 +0900 by matz)
29248 Mon Mar  7 00:01:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29250         * ext/tk/tcltklib.c: fail to call TclTkLib.mainloop when $SAFE==4
29252 Sun Mar  6 13:04:10 2005  Dee Zsombor  <zsombor@ruby-lang.org>
29254         * misc/ruby-electric.el: added.
29255         * misc/Readme: updated.
29257 Sun Mar  6 11:47:10 2005  Sam Roberts  <sroberts@uniserve.com>
29259         * lib/pp.rb: rdoced.  [ruby-core:4490]
29261 Sun Mar  6 11:36:37 2005  Tanaka Akira  <akr@m17n.org>
29263         * lib/pp.rb (File::Stat#pretty_print): Etc.getpwuid and Etc.getgrgid
29264           may return nil.  [ruby-talk:129826]
29265           reported by Daniel Berger.
29267 Sun Mar  6 06:34:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29269         * ext/openssl/ossl_ssl.c (ossl_start_ssl): should wait for that
29270           the underlying IO become readable or writable if the error was
29271           SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. [ruby-dev:25795]
29273         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): ditto.
29275         * ext/openssl/lib/openssl/buffering.rb
29276           (Buffering#consume_rbuf): pointless eof flag resetting is deleted.
29277           (Buffering#read): should return an empty string if the specified
29278           size is zero.
29279           (Buffering#readpartial): new method.
29280           (Buffering#readline): fix typo.
29281           (Buffering#getc): return the first character of string correctly.
29282           (Buffering#readchar): fix typo.
29283           (Buffering#eof?): should read again it the input buffer is empty.
29284           (Buffering#do_write): should rescue Errno::EAGAIN.
29285           (Buffering#puts): use "\n" as the output field separator.
29287         * ext/openssl/extconf.rb: get rid of GNUmakefile generation.
29289         * text/openssl/test_pair.rb: test for IO like methods.
29291         * test/ruby/ut_eof.rb: test about empty file.
29293 Sat Mar  5 17:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29295         * dir.c (rb_glob): fixed mismatch of argument.
29297         * dir.c (fnmatch): removed unnecessary code. (by string.c 1.219)
29299         * win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117)
29301 Sat Mar  5 16:50:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
29303         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.65
29305 Sat Mar  5 16:29:26 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29307         * ext/tk/lib/multi-tk.rb: freeze callback-entry objects
29309         * ext/tk/lib/tkextlib/tile.rb: support tile-0.6
29311 Sat Mar  5 12:52:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29313         * lib/mkmf.rb (create_makefile): allow putting spaces between target
29314           and colon in depend file.
29316 Sat Mar  5 02:41:00 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29318         * file.c (eaccess): workaround for VC++8 runtime.
29320         * win32/win32.c (ioinfo): VC++8 support.
29322 Fri Mar  4 19:39:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29324         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#do_includes): replace
29325           also locally defined modules.
29327         * ext/iconv/iconv.c: rdocified.
29329         * ext/strscan/strscan.c: moved misplaced rdoc.
29331 Fri Mar  4 16:11:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29333         * eval.c (rb_exec_recursive): matched the declaration to prototype.
29335         * ext/curses/curses.c: don't need to check HAVE_WCOLOR_SET excluding
29336           window_color_set().
29338         * ext/tk/tcltklib.c: fixed commit mistakes.
29340 Fri Mar  4 12:45:17 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
29342         * lib/rdoc/parsers/parse_c.rb: allow whitespace after function names.
29343           [ruby-core:4296]
29345         * lib/rdoc/parsers/parse_simple.rb: adds support for private comments
29346           in the "simple" parser. [ruby-core:4301]
29348 Fri Mar  4 12:45:17 2005  Charles Mills  <cmills@freeshell.org>
29350         * lib/rdoc/parsers/parse_c.rb: adds support for constants
29351           (rb_define_const), accessors (rb_define_attr), and makes a
29352           couple fixes. [ruby-core:4307]
29354 Fri Mar  4 12:45:17 2005  Florian Gross  <florgro@gmail.com>
29356         * lib/rdoc/parsers/parse_rb.rb: Logic for def Builtin.method() end
29357           [ruby-core:4302]
29359 Fri Mar  4 12:45:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29361         * array.c: replace rb_protect_inspect() and rb_inspecting_p() by
29362           rb_exec_recursive() in eval.c.
29364         * eval.c (rb_exec_recursive): new function.
29366         * array.c (rb_ary_join): use rb_exec_recursive().
29368         * array.c (rb_ary_inspect, rb_ary_hash): ditto.
29370         * file.c (rb_file_join): ditto.
29372         * hash.c (rb_hash_inspect, rb_hash_to_s, rb_hash_hash): ditto.
29374         * io.c (rb_io_puts): ditto.
29376         * object.c (rb_obj_inspect): ditto
29378         * struct.c (rb_struct_inspect): ditto.
29380 Fri Mar  4 10:15:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29382         * lib/set.rb (SortedSet::setup): a hack to shut up warning.
29383           [ruby-talk:132866]
29385 Fri Mar  4 09:37:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29387         * common.mk (install-nodoc, pre-install-doc, post-install-doc):
29388           fix some omissions.
29390 Fri Mar  4 08:09:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29392         * lib/time.rb (Time::strptime): add new function.  inspired by
29393           [ruby-talk:132815].
29395         * lib/parsedate.rb (ParseDate::strptime): ditto.
29397 Fri Mar  4 07:07:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
29399         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.63
29401 Thu Mar  3 23:24:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
29403         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.62
29405 Thu Mar  3 18:47:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29407         * {bcc32,win32,wince}/Makefile.sub (config.h): check if affected
29408           when makefiles are modified.
29410         * {bcc32,win32,wince}/Makefile.sub (config.status): add variables
29411           for tests.
29413         * win32/ifchange.bat: try to update a file only if modified.
29415         * win32/resource.rb: more descriptions.
29417         * common.mk: add {pre,post}-install targets.
29419         * instruby.rb (install?): install particular part.
29421         * bcc32/Makefile.sub (post-install-ext): remove debug information
29422           files after installation.
29424         * ext/tk/tcltklib.c (ip_rbUpdateCommand, ip_rb_threadUpdateCommand):
29425           get rid of warnings with Tcl/Tk 8.3 or former.
29427 Thu Mar  3 11:49:51 2005  Kouhei Sutou  <kou@cozmixng.org>
29429         * sample/rss/tdiary_plugin/rss-recent.rb: added site information.
29431 Wed Mar  2 19:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29433         * ext/extmk.rb (parse_args): return false if nothing matched.
29435 Wed Mar  2 17:15:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29437         * ext/tk/tcltklib.c (lib_eventloop_core): fix typo
29439 Wed Mar  2 16:59:50 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29441         * eval.c (ruby_native_thread_kill): call pthread_kill() to send a
29442           signal to ruby's native thread
29444         * ruby.h: add definition of ruby_native_thread_kill()
29446         * signal.c (sigsend_to_ruby_thread): send the signal to ruby's
29447           native thread ([ruby-dev:25744], [ruby-dev:25754]), and set
29448           signal mask to the current native thread
29450 Wed Mar  2 16:03:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29452         * ext/tk/tcltklib.c: enforce thread-check and exception-handling to
29453           avoid SEGV trouble.
29455         * ext/tk/tkutil/tkutil.c; fix a bug on converting a SJIS string array
29456           to a Tcl's list string.
29458         * ext/tk/tcltklib.c: wrap Tcl's original "namespace" command to
29459           protect from namespace crash.
29461         * ext/tk/lib/multi-tk.rb: enforce exception-handling.
29463         * ext/tk/lib/multi-tk.rb: catch IRB_EXIT to work on irb.
29465         * ext/tk/lib/tk.rb: ditto.
29467         * ext/tk/tcltklib.c: add TclTkLib.mainloop_thread?
29469         * ext/tk/lib/multi-tk.rb: (bug fix) callback returns a value.
29471         * ext/tk/lib/tk/canvas.rb (delete): bug fix when multiple arguments.
29473         * ext/tk/lib/clock.rb: fix 'no method error'.
29475         * ext/tk/lib/clock.rb (self.clicks): accept a Symbol argument.
29477         * ext/tk/lib/variable.rb: be able to set default_value_type; :numeric,
29478           :bool, :string, :symbol, :list, :numlist or nil (default; same to
29479           :string). If set a type, TkVariable#value returns a value of the
29480           type.
29482         * ext/tk/lib/tkextlib/tclx/tclx.rb: add Tk::TclX.signal to warn the
29483           risk of using TclX extension's 'signal' command.
29485         * ext/tk/sample/irbtk.rb: irb with Ruby/Tk.
29487         * ext/tk/sample/demos-*/anilabel.rb: bug fix on 'show code'
29489         * ext/tk/sample/demos-*/aniwave.rb: new Ruby/Tk animation demo.
29491         * ext/tk/sample/demos-*/pendulum.rb: ditto.
29493         * ext/tk/sample/demos-*/goldberg.rb: ditto.
29495         * ext/tk/sample/demos-*/widget: add entries of animation demos.
29497 Wed Mar  2 12:21:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29499         * eval.c (rb_eval): [EXPERIMENTAL] NODE_LAMBDA implemented.
29500           [ruby-dev:25780]
29502         * node.h (NODE_LAMBDA): for literal Proc object.
29504         * parse.y (expr): interpret mere do...end block as proc object.
29506         * parse.y (primary): ditto, for brace block.
29508 Tue Mar  1 21:16:54 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
29510         * regcomp.c (optimize_node_left): uninitialized member
29511           (OptEnv.backrefed_status) was used. [ruby-dev:25778]
29513 Tue Mar  1 16:50:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29515         * regparse.c: move st_*_strend() functions from st.c.  fixed some
29516           potential memory leaks.
29518 Tue Mar  1 00:40:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29520         * lib/rinda/tuplespace.rb (Rinda::TupleSpace): improved keeper thread.
29522         * test/rinda/test_rinda.rb: ditto.
29524 Mon Feb 28 23:10:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29526         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
29527           AF_INET6 is defined on bcc32. (rev1.108 again)
29529         * ext/socket/mkconstants.rb: ditto.
29531 Mon Feb 28 21:55:49 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
29533         * ext/strscan/strscan.c (strscan_s_allocate):
29534           use onig_region_init().
29536         * ext/strscan/strscan.c (adjust_registers_to_matched):
29537           use onig_region_set().
29539 Mon Feb 28 15:12:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29541         * ext/socket/socket.c (Init_socket): ported more Socket::Constants
29542           from ruby_1_8, and made it easy to add new constants.
29543           [ruby-dev:25771]
29545         * ext/socket/depend: ditto.
29547         * ext/socket/mkconstants.rb: ditto. (added)
29549 Mon Feb 28 11:42:23 2005  Ian Macdonald  <ian@caliban.org>
29551         * exception error messages updated.  [ruby-core:04497]
29553 Mon Feb 28 09:03:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29555         * ext/socket/socket.c (Init_socket): add bunch of Socket
29556           constants.  Patch from Sam Roberts <sroberts@uniserve.com>.
29557           [ruby-core:04409]
29559 Sun Feb 27 05:55:38 2005  Minero Aoki  <aamine@loveruby.net>
29561         * parse.y [ripper]: fix typo. [ruby-core:04494]
29563 Sat Feb 26 16:58:20 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
29565         * parse.y, re.c, regex.h, LEGAL, ext/strscan/strscan.c:
29566           remove oniggnu.h (GNU regex API).
29568 Wed Feb 23 22:08:16 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
29570         * st.c, st.h: imported additional file changes on
29571           Oniguruma 3.7.0.
29573 Wed Feb 23 21:45:29 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
29575         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
29576           regenc.c, regenc.h, regerror.c, regexec.c, regint.h,
29577           regparse.c, regparse.h, sjis.c, utf8.c: imported Oni Guruma
29578           3.7.0.
29580 Wed Feb 23 15:04:32 2005  akira yamada  <akira@ruby-lang.org>
29582         * lib/uri/generic.rb (split_userinfo): should split ":pass" into ""
29583           and "pass".  [ruby-dev:25667]
29585 Wed Feb 23 08:00:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29587         * array.c (rb_ary_s_create): no need for negative argc check.
29588           [ruby-core:04463]
29590         * array.c (rb_ary_unshift_m): ditto.
29592 Wed Feb 23 01:53:29 2005  Shugo Maeda  <shugo@ruby-lang.org>
29594         * lib/net/imap.rb (initialize): handle certs correctly. Thanks,
29595           NABEYA Kenichi.
29597 Wed Feb 23 00:37:34 2005  Kouhei Sutou  <kou@cozmixng.org>
29599         * lib/mkmf.rb (mkmf_failed): fixed typo.
29601 Tue Feb 22 23:52:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29603         * configure.in, lib/mkmf.rb: use simple commands if available.
29605         * mkconfig.rb: remove autoconf internal variables from rbconfig.rb.
29607         * lib/mkmf.rb (create_makefile): substitute implicit rules in depend
29608           file.
29610         * {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
29611           include $(topdir) and $(hdrdir) to search path.
29613 Tue Feb 22 23:51:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29615         * ext/syck/rubyext.c: get rid of warnings caused by a bug of VC.
29617 Tue Feb 22 23:50:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29619         * signal.c (ruby_signal, ruby_nativethread_signal): must be valid as
29620           expressions, not only statements.
29622 Tue Feb 22 12:54:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29624         * eval.c (rb_thread_start_0): update curr_thread before raising
29625           TAG_THREAD.  [ruby-dev:25712]
29627 Tue Feb 22 07:24:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29629         * parse.y (parser_yylex): identifier after dot must not be a variable.
29631 Mon Feb 21 18:31:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29633         * signal.c: Standard signal handlers ignore signals on non-Ruby native
29634           threads. When a handler is entried with ruby_signal() (like as the
29635           standard signal handlers), the handler for the signal is marked as
29636           it cannot accept non-Ruby native threads. If a handler can treat all
29637           signals on all native threads, please use ruby_nativethread_signal()
29638           to entry it.
29640 Sun Feb 20 00:48:48 2005  Tanaka Akira  <akr@m17n.org>
29642         * lib/open-uri.rb (URI::FTP#buffer_open): access mechanism
29643           re-implemented according to RFC 1738.
29644           reported by Guillaume Marcais.  [ruby-talk:131650]
29646 Sat Feb 19 18:46:56 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29648         * lib/drb/drb.rb (DRbObject#respond_to?): take two arguments.
29649           [ruby-dev:25722]
29651         * test/drb/drbtest.rb: ditto.
29653 Sat Feb 19 13:52:02 2005  Tanaka Akira  <akr@m17n.org>
29655         * lib/open-uri.rb: call OpenSSL::SSL::SSLSocket#post_connection_check
29656           after connection is made.
29658 Sat Feb 19 13:31:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29660         * ext/extmk.rb (extract_makefile): remove no longer existing installed
29661           files.
29663         * lib/mkmf.rb (install_dirs): return installation directory list.
29665         * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
29667 Sat Feb 19 01:28:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29669         * ext/bigdecimal/lib/bigdecimal/newton.rb: resolved LoadError.
29670           [ruby-dev:25685]
29672         * ext/bigdecimal/sample/linear.rb: ditto.
29674         * ext/bigdecimal/sample/nlsolve.rb: ditto.
29676         * ext/bigdecimal/lib/bigdecimal/nlsolve.rb: removed because this file
29677           is sample script and same file exists in ext/bigdecimal/sample.
29679 Fri Feb 18 17:14:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29681         * lib/xmlrpc/parser.rb (XMLRPC::FaultException): make it subclass
29682           of StandardError class, not Exception class.  [ruby-core:04429]
29684 Fri Feb 18 04:06:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29686         * parse.y (fcall_gen): lvar(arg) will be evaluated as
29687           lvar.call(arg) when lvar is a defined local variable. [new]
29689 Thu Feb 17 22:15:34 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
29691         * ext/strscan/strscan.c: calls Oniguruma API directly.
29693 Thu Feb 17 21:53:12 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
29695         * common.mk, LEGAL: remove reggnu.c.
29697 Thu Feb 17 21:53:12 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
29699         * gc.c, re.c: now ruby calls Oniguruma API directly, bypassing
29700           GNU compatible APIs.
29702 Thu Feb 17 20:09:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29704         * lib/drb/drb.rb (DRbServer.default_safe_level): fix typo.
29706 Thu Feb 17 20:09:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29708         * test/digest/test_digest.rb: separate test case for each algorithms.
29709           [ruby-dev:25412]
29711 Thu Feb 17 14:31:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29713         * object.c (rb_class_initialize): call inherited method before
29714           calling initializing block.
29716         * eval.c (rb_thread_start_1): initialize newly pushed frame.
29717           fixed: [ruby-dev:25707]
29719 Thu Feb 17 13:46:00 2005  Nathaniel Talbott  <ntalbott@ruby-lang.org>
29721         * lib/test/unit/collector.rb (collect_file): now deletes paths added
29722           to $LOAD_PATH instead of restoring it verbatim.
29724         * lib/test/unit/autorunner.rb (AutoRunner.run): fixed so that
29725           'ruby -rtest/unit -rtest1 -rtest2 -e0' will use the objectspace
29726           collector again. Also tried to simplify the calling convention.
29728         * test/runner.rb: adjusted for new AutoRunner semantics.
29730         * lib/test/unit.rb: ditto.
29732 Thu Feb 17 04:21:47 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29734         * lib/open3.rb (Open3::popen3): $? should not be EXIT_FAILURE.
29735           fixed: [ruby-core:04444]
29737 Thu Feb 17 00:31:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29739         * test/drb/test_drb.rb, ut_safe1.rb: port from 1.8
29741 Thu Feb 17 00:02:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29743         * eval.c (is_defined): NODE_IASGN is an assignment.
29745 Wed Feb 16 23:54:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29747         * eval.c (rb_thread_start_1): outer block variables wasn't linked to
29748           threads.  fixed: [ruby-dev:25700]
29750 Wed Feb 16 15:11:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29752         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::Nonblock#initialize):
29753           native win32 platform doesn't have F_GETFL.
29755 Wed Feb 16 02:47:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29757         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): should
29758           call rb_sys_fail instead of raising SSLError if SSL_ERROR_SYSCALL
29759           occurred.
29761         * ext/openssl/lib/openssl/buffering.rb (Buffering#fill_rbuff):
29762           should rescue Errno::EAGAIN.
29764         * ext/openssl/lib/openssl/buffering.rb (Buffering#each): fix typo.
29765           suggested by Brian Ollenberger.
29767         * ext/openssl/lib/openssl/ssl.rb: set non-blocking flag to the
29768           underlying IO.
29770 Tue Feb 15 22:14:34 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
29772         * ext/readline/readline.c (Readline.readline): use rl_outstream
29773           and rl_instream.  [ruby-dev:25699]
29775 Mon Feb 14 23:58:17 2005  Kouhei Sutou  <kou@cozmixng.org>
29777         * lib/rss/parser.rb (RSS::ListenerMixin::tag_end):
29778           fixed invalid namespace handling bug.
29780 Mon Feb 14 13:12:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29782         * ext/openssl/lib/openssl/ssl.rb
29783           (OpenSSL::SSL::SSLSocket#post_connection_check): new method.
29785 Mon Feb 14 00:10:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29787         * lib/drb/drb.rb (DRbServer): add default_safe_level, safe_level,
29788           config[:safe_level] ([druby-ja:120])
29790         * test/drb/test_drb.rb, ut_eval.rb, ut_safe1.rb: ditto.
29792 Sun Feb 13 23:13:46 2005  Kouhei Sutou  <kou@cozmixng.org>
29794         * lib/rss/dublincore.rb (RSS::DublicCoreModel#date{,=}): added
29795           convenient methods.
29797         * lib/rss/0.9.rb (RSS::Rss::Channel#date{,=}): ditto.
29799         * lib/rss/2.0.rb (RSS::Rss::Channel::Item#date{,=}): ditto.
29801         * test/rss/: added tests for the convenient methods.
29803 Sun Feb 13 23:12:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29805         * eval.c (rb_thread_start_0): restore prot_tag before rewinding.
29807 Sun Feb 13 16:56:52 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29809         * lib/webrick/cgi.rb (WEBrick::CGI.start): should set reason-phrase
29810           to the value of status header field. ([ruby-dev:40617])
29812 Sun Feb 13 11:38:40 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
29814         * regparse.c (type_cclass_hash): (Thanks Nobu) fixed
29815           overrun. ([ruby-dev:25676]).
29817 Sun Feb 13 10:53:08 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
29819         * oniggnu.h, oniguruma.h, regcomp.c, st.c: imported
29820           Oni Guruma 3.6.0.
29822 Sun Feb 13 01:33:19 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29824         * lib/erb.rb (ERB::Util.h, u): make it module_function.
29826 Sat Feb 12 22:17:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29828         * eval.c (TAG_THREAD): to start a new thread.
29830         * eval.c (ruby_init, ruby_options, ruby_cleanup, rb_protect,
29831           rb_load_protect, rb_thread_start_0): make thread anchor.
29833         * eval.c (proc_alloc): clone proc object if klass is not Proc or
29834           created in different thread.
29836         * eval.c (rb_block_pass): call a function with a block.  [new]
29838         * eval.c (rb_f_throw): raise NameError in main thread.
29840 Sat Feb 12 17:29:19 2005  Tanaka Akira  <akr@m17n.org>
29842         * lib/open-uri.rb (OpenURI.open_loop): send authentication only for
29843           the URI directly specified.
29845 Sat Feb 12 15:07:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29847         * random.c (rand_init): suppress warning.
29849 Sat Feb 12 14:10:24 2005  Tanaka Akira  <akr@m17n.org>
29851         * lib/open-uri.rb (OpenURI.open_http): reject userinfo explicitly.
29853 Sat Feb 12 13:54:03 2005  Tanaka Akira  <akr@m17n.org>
29855         * lib/open-uri.rb: support https if the platform provides CA
29856           certificates.
29858 Sat Feb 12 06:18:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
29860         * ext/etc/etc.c (Init_etc): sGroup needs HAVE_ST_GR_PASSWD check
29861           [ruby-dev:25675]
29863 Fri Feb 11 17:37:50 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29865         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
29866           new method OpenSSL::X509::Store#set_default_paths.
29868 Fri Feb 11 11:33:53 2005  Tanaka Akira  <akr@m17n.org>
29870         * lib/open-uri.rb (URI::HTTP#proxy_open): new option supported:
29871           :http_basic_authentication.
29872           suggested by Kent Sibilev.  [ruby-core:4392]
29874 Fri Feb 11 06:30:07 2005  George Ogata  <g_ogata@optushome.com.au>
29876         * misc/ruby-mode.el: ignore parenthesis inside heredoc.
29877           [ruby-core:04415]
29879 Fri Feb 11 04:54:13 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
29881         * lib/rdoc/generators/html_generator.rb: [ruby-core:04412]
29883         * lib/rdoc/generators/ri_generator.rb: ditto.
29885 Thu Feb 10 13:52:42 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29887         * configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): use
29888           winsock2 on mswin32/mingw.
29890         * ext/socket/extconf.rb: ditto.
29892         * win32/win32.c (StartSockets): ditto.
29894         * win32/win32.h: ditto.
29896 Thu Feb 10 12:09:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29898         * ext/extmk.rb (extract_makefile): default to true if not compiled
29899           previously.
29901         * ext/extmk.rb (extmake): create dummy makefile if extconf failed.
29903 Thu Feb 10 12:07:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29905         * win32/win32.c (init_stdhandle): assign standard file handles.
29907         * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
29908           import32.lib.
29910         * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
29911           rule lines, add search path to implicit rules, and set Borland make
29912           special macros for search path.
29914         * win32/win32.c, win32/win32.h (read): avoid a BCC runtime bug.
29916 Thu Feb 10 00:47:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29918         * struct.c (make_struct): fixed: [ruby-core:04402]
29920 Wed Feb  9 16:33:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29922         * ext/socket/socket.c (wait_connectable): fixed wrong condition.
29924 Wed Feb  9 14:42:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
29926         * eval.c (scope_dup): add volatile not to optimize tbl.
29928 Wed Feb  9 10:02:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29930         * ext/tk/make-tkutil, ext/tk/tkutil/subconf.rb: no longer used.
29932         * ext/tk/tkutil/extconf.rb: need to compile tkutil. [ruby-dev:25607]
29934 Wed Feb  9 08:07:08 2005  Paul Duncan  <pabs@pablotron.org>
29936         * ext/curses/curses.c (window_color_set): [ruby-core:04393]
29938 Tue Feb  8 23:48:36 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29940         * lib/drb/drb.rb: reject :instance_eval, :class_eval, :module_eval
29941           [druby-ja:117]
29943 Tue Feb  8 22:38:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29945         * keywords, parse.y: separate EXPR_VALUE from EXPR_BEG.
29946           fixed: [ruby-core:04310], [ruby-core:04368]
29948 Tue Feb  8 13:06:12 2005  Sam Roberts  <sroberts@uniserve.com>
29950         * ext/socket/socket.c (Init_socket): SO_REUSEPORT added.
29951           [ruby-talk:130092]
29953 Tue Feb  8 00:19:02 2005  Tanaka Akira  <akr@m17n.org>
29955         * lib/resolv.rb (Resolv::DNS::Name#subdomain_of?): new method.
29956           (Resolv::DNS::Name#inspect): ditto.
29957           Suggested by Sam Roberts.  [ruby-talk:129086]
29959 Mon Feb  7 23:14:11 2005  Tanaka Akira  <akr@m17n.org>
29961         * io.c (io_getc): flush rb_stdout before read from stdin, which is
29962           connected to a tty.  [ruby-core:4378]
29964         * rubyio.h (FMODE_TTY): renamed from FMODE_LINEBUF.
29966 Mon Feb  7 10:06:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29968         * object.c: [ruby-doc:818]
29970 Mon Feb  7 02:13:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29972         * ext/socket/extconf.rb (sockaddr_storage): winsock2.h have the
29973           definition of struct sockaddr_storage, but socket.c doesn't
29974           include it because this version of ruby still has binary level
29975           compatibility with winsock1.
29977 Mon Feb  7 01:22:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29979         * ext/extmk.rb (extract_makefile): extract previously collected
29980           informations from existing Makefile.
29982         * ext/socket/extconf.rb: check if getaddrinfo() works fine only when
29983           wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]
29985         * ext/tk/extconf.rb: separate tkutil configuration.
29987         * lib/mkmf.rb ($extmk): check if under ext directory.
29989         * lib/mkmf.rb (Logging.postpone): allow recursive operation.
29991         * lib/mkmf.rb (try_constant): make sure if really a constant, reduce
29992           the number of times of compile.
29994         * lib/mkmf.rb (have_macro, have_var, byte_order): new functions.
29996         * lib/mkmf.rb (find_library): allow directory list with separators.
29998         * lib/mkmf.rb (arg_config): manage provided configuration options.
30000         * lib/mkmf.rb (dir_config): accept arrays of directory names as
30001           default values.
30003         * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
30004           modified if the block returned true.
30006 Sun Feb  6 19:20:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30008         * eval.c (stack_extend): add prototype because VC++8 doesn't
30009           accept __declspec(noinline) with K&R style function definitions.
30011 Sun Feb  6 13:56:19 2005  Tadayoshi Funaba  <tadf@dotrb.org>
30013         * lib/date.rb (new_with_hash): changed messages of exception.
30015         * lib/date/format.rb (str[fp]time): undocumented conversion
30016           specifications %[1-3] are now deprecated.
30018 Sun Feb  6 11:27:37 2005  Tanaka Akira  <akr@m17n.org>
30020         * ext/dl/dl.c (Init_dl): function declaration should precede
30021           statements before C99.
30023 Sun Feb  6 03:24:20 2005  Tanaka Akira  <akr@m17n.org>
30025         * lib/resolv.rb (Resolv::DNS::Resource::TXT): multiple strings was not
30026           handled.
30027           (Resolv::DNS::Resource::TXT#strings): new method to return all
30028           strings.
30029           (Resolv::DNS::Message::MessageEncoder#put_string_list): new method.
30030           (Resolv::DNS::Message::MessageDecoder#get_string_list): ditto.
30031           based on [ruby-talk:129732] by Sam Roberts.
30033 Sat Feb  5 02:24:06 2005  Minero Aoki  <aamine@loveruby.net>
30035         * test/ripper/test_scanner_events.rb: fix test.
30037 Fri Feb  4 18:44:35 2005  Minero Aoki  <aamine@loveruby.net>
30039         * ext/ripper/lib/ripper/lexer.rb: last Lexer fix was incomplete;
30040           test all green.
30042 Fri Feb  4 15:57:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30044         * parse.y (open_args): fix too verbose warnings for the space
30045           before argument parentheses.  [ruby-dev:25492]
30047         * parse.y (parser_yylex): ditto.
30049 Fri Feb  4 14:33:25 2005  Minero Aoki  <aamine@loveruby.net>
30051         * ext/ripper/lib/ripper/filter.rb: ripper/tokenizer ->
30052           ripper/lexer. [ruby-dev:25632]
30054 Fri Feb  4 00:24:15 2005  Kouhei Sutou  <kou@cozmixng.org>
30056         * lib/rss: supported Image module.
30057           http://web.resource.org/rss/1.0/modules/image/
30059 Thu Feb  3 23:42:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30061         * ext/stringio/stringio.c (strio_close, strio_close_read, strio_close_write):
30062           should return nil instead of self as well as IO.  [ruby-dev:25623]
30064         * ext/stringio/stringio.c (strio_extend, strio_putc): fill with zero
30065           extended portion.  [ruby-dev:25626]
30067 Thu Feb  3 16:12:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30069         * parse.y (parser_yylex): the first expression in the parentheses
30070           should not be a command.  [ruby-dev:25492]
30072 Thu Feb  3 03:31:20 2005  NARUSE, Yui  <naruse@ruby-lang.org>
30074         * ext/nkf/nkf-utf8/nkf.c: follow original v 1.57
30076         * ext/nkf/nkf-utf8/utf8tbl.c: follow original v 1.8
30078         * ext/nkf/nkf-utf8/config.h: follow original v 1.7
30080 Wed Feb  2 23:52:53 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
30082         * ext/stringio/stringio.c (strio_truncate): should MEMZERO an extended
30083           part.  [ruby-dev:25618]
30085 Wed Feb  2 21:56:01 2005  Kouhei Sutou  <kou@cozmixng.org>
30087         * lib/rss/rss.rb (RSS::Element#convert): added.
30089         * lib/rss/rss.rb: convert -> need_convert.
30091         * lib/rss/1.0.rb: ditto.
30093         * lib/rss/0.9.rb: ditto.
30095         * lib/rss/2.0.rb: ditto.
30097         * lib/rss/trackback.rb: ditto.
30099 Wed Feb  2 03:30:58 2005  Minero Aoki  <aamine@loveruby.net>
30101         * ext/ripper/lib/ripper/tokenizer.rb -> lexer.rb.
30103         * ext/ripper/lib/ripper/lexer.rb: new method Ripper.slice.
30104           [experimental]
30106         * ext/ripper/lib/ripper/sexp.rb: new file. [experimental]
30108         * ext/ripper/lib/ripper.rb: require ripper/lexer and ripper/sexp.
30110 Tue Feb  1 21:49:24 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30112         * lib/drb/drb.rb (DRb::DRbObject#respond_to?): check marshal_dump and
30113           _dump.
30115 Tue Feb  1 00:20:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30117         * Makefile.in, configure.in: made EXTOUT configurable.
30119         * ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.
30121         * lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]
30123         * configure.in (aix): fix linker flags on AIX.  [ruby-talk:125460]
30125 Mon Jan 31 13:16:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30127         * ext/tk/extconf.rb: add tkutil configuration step (remove old schema)
30129         * ext/tk/depend: remove the information of tkutil
30131         * ext/tk/make-tkutil: sub-part of Makefile to compile tkutil
30133         * ext/tk/tkutil/tkutil.c: move tkutil.c to subdirectory
30135         * ext/tk/tkutil/subconf.rb: configuration file for tkutil.c
30137         * ext/tk/tkutil/depend: ditto
30139 Mon Jan 31 13:13:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30141         * ext/tk/tcltklib.c: add invalid namespace check
30143         * ext/tk/lib/multi-tk.rb: add invalid_namespace? method
30145         * ext/tk/lib/remote-tk.rb: ditto
30147 Mon Jan 31 10:29:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30149         * lib/irb/context.rb (IRB::Context::initialize): [ruby-core:04330]
30151 Mon Jan 31 09:44:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30153         * object.c (Init_Object): remove Object#type.  [ruby-core:04335]
30155 Sat Jan 29 09:42:12 2005  Sam Roberts  <sroberts@uniserve.com>
30157         * lib/resolv.rb (Resolv::DNS::Resource::IN::SRV): Added RFC2782 SRV
30158           resource record for specifying location of services.
30160 Sat Jan 29 00:10:33 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
30162         * ascii.c, euc_jp.c, hash.c, oniggnu.h, oniguruma.h, regcomp.c,
30163           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c, regint.h,
30164           regparse.c, regparse.h, sjis.c, st.c, st.h, utf8.c: imported
30165           Oni Guruma 3.5.4.
30167 Fri Jan 28 17:16:55 2005  Tanaka Akira  <akr@m17n.org>
30169         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf):
30170           parse options line for ndots option.
30171           (Resolv::Hosts#lazy_initialize): return self.
30172           (Resolv::DNS#lazy_initialize): ditto.
30173           (Resolv::DNS::Config#lazy_initialize): ditto.
30174           Suggested by Sam Roberts.
30176 Thu Jan 27 17:15:03 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30178         * ext/tk/extconf.rb: support new tk scheme on bccwin32.
30179           fixed: [ruby-dev:25546]
30181 Thu Jan 27 13:18:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30183         * st.c (st_foreach): report success/failure by return value.
30184           [ruby-Bugs-1396]
30186 Thu Jan 27 00:12:19 2005  Minero Aoki  <aamine@loveruby.net>
30188         * test/fileutils/test_fileutils.rb (setup): support BSD style
30189           directory group inheritance (again).
30191 Thu Jan 27 00:02:40 2005  Minero Aoki  <aamine@loveruby.net>
30193         * test/fileutils/test_fileutils.rb (setup): support BSD style
30194           directory group inheritance. [ruby-dev:25440]
30196         * test/fileutils/fileasserts.rb (assert_same_entry): show entry
30197           difference.
30199 Wed Jan 26 17:12:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30201         * parse.y: forgot to initialize parser struct.  [ruby-dev:25492]
30203         * parse.y (parser_yylex): no tLABEL on EXPR_BEG.
30204           [ruby-talk:127711]
30206 Wed Jan 26 14:12:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30208         * ext/Setup*: remove tcltklib.
30210 Wed Jan 26 12:45:16 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30212         * ext/tk/extconf.rb: support new tk scheme on mswin32.
30213          fixed: [ruby-dev:25535]
30215 Wed Jan 26 10:45:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30217         * win32/win32.c (flock_winnt, flock_win95): unlock file even if
30218           LOCK_NB is specified.
30220 Tue Jan 25 23:10:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30222         * ext/tk: merge tcltklib for Ruby/Tk installation control
30224         * ext/tcltklib: remove
30226 Tue Jan 25 17:05:15 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30228         * ruby.c (proc_options): correct -T option in RUBYOPT.
30229           fixed: [ruby-dev:25512]
30231 Tue Jan 25 14:05:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30233         * ext/tcltklib/tcltklib.c: fix SEGV bug; trouble on canceling remained
30234           after scripts [ruby-dev:25479]: NULL current namespace when deleting
30235             Tk interpreter [ruby-talk:126225]
30237         * ext/tcltklib/extconf.rb: bug fix; TCL_ENABLE_THREAD flag is inverted
30238           [ruby-talk:126360]
30240         * ext/tcltklib/extconf.rb: add yet another native-thread check
30242         * ext/tk/tkutil.c: fix SEGV bug; NULL string pointer when finalize
30243           Ruby interpreter
30245         * ext/tk/lib/multi-tk.rb: avoid warning for deleted safeTk ip frame
30247         * ext/tk/lib/tk/bindtag.rb: bug fix; new method of named bindtag
30248           doesn't return the created object [ruby-dev:25479]
30250         * ext/tk/lib/tk/menu.rb: bug on treating arguments [ruby-dev:25479]
30252         * ext/tk/lib/tk.rb: bug fix; cannot accept a callback ID string for
30253           a command argument [ruby-dev:25479]
30255         * ext/tk/lib/multi-tk.rb: ditto
30257         * ext/tk/lib/tk/*.rb: ditto
30259         * ext/tk/lib/tkextlib/*.rb: ditto
30261         * ext/tk/sample/demos-jp/anilabel.rb: new demo script
30263         * ext/tk/sample/demos-en/anilabel.rb: ditto
30265         * ext/tk/sample/tkHTML/ss.rb: local variable scope bug fix
30266           [ruby-dev:25479]
30268 Mon Jan 24 16:00:53 2005  NARUSE, Yui  <naruse@ruby-lang.org>
30270         * ext/nkf/lib/kconv.rb (guess_old): not use NKF.guess_old
30271           but NKF.guess1. fixed: [ruby-dev:25491]
30273 Mon Jan 24 15:44:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30275         * document updates - [ruby-core:04296], [ruby-core:04301],
30276           [ruby-core:04302], [ruby-core:04307]
30278 Sun Jan 23 12:38:01 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30280         * lib/soap/wsdlDriver.rb: from 1.5.3-ruby1.8.2, operation which has
30281           capitalized name (such as KeywordSearchRequest in AWS) is defined as
30282           a method having uncapitalized name. (converted with
30283           GenSupport.safemethodname to handle operation name 'foo-bar').  it
30284           introduced serious incompatibility; in the past, it was defined as a
30285           capitalized.
30287           define capitalized method as well under that circumstance.
30289 Sun Jan 23 05:24:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30291         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_to_der): should call
30292           GetOCSPReq at first.
30294 Sat Jan 22 22:59:08 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30296         * lib/drb/ssl.rb (accept): rescue SSLError. [druby-ja:110]
30298 Sat Jan 22 22:27:28 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30300         * lib/drb/unix.rb: fail if UNIXFileOwner is set. [druby-ja:111]
30302 Fri Jan 21 20:07:02 2005  Tanaka Akira  <akr@m17n.org>
30304         * lib/resolv.rb (Resolv::DNS::Config.resolv): don't raise ResolvError.
30305           reported by Sam Roberts.  [ruby-talk:127133]
30307 Fri Jan 21 17:09:44 2005  Shugo Maeda  <shugo@ruby-lang.org>
30309         * lib/net/imap.rb (decode_utf7): use pack("U*") to encode UTF-8.
30311         * lib/net/imap.rb (encode_utf7): use unpack("U*") to decode UTF-8.
30313         * test/net/imap/test_imap.rb: added tests for Net::IMAP.
30315 Fri Jan 21 16:58:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30317         * dir.c (rb_push_glob): should work for NUL delimited patterns.
30319         * dir.c (rb_glob2): should aware of offset in the pattern.
30321 Fri Jan 21 13:58:37 2005  Shugo Maeda  <shugo@ruby-lang.org>
30323         * lib/net/imap.rb (u8tou16): fixed typo. fixed: [ruby-list:40546]
30325 Fri Jan 21 00:37:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30327         * ext/syck/rubyext.c (syck_parser_bufsize_set): avoid VC++ warning
30328           "local variable 'size' used without having been initialized".
30330 Thu Jan 20 11:42:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30332         * string.c (rb_str_new4): should propagate taintedness.
30334         * env.h: rename member names in struct FRAME; last_func -> callee,
30335           orig_func -> this_func, last_class -> this_class.
30337         * struct.c (rb_struct_set): use original method name, not callee
30338           name, to retrieve member slot.  [ruby-core:04268]
30340         * time.c (time_strftime): protect from format modification from GC
30341           finalizers.
30343 Thu Jan 20 02:01:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30345         * object.c (Init_Object): remove rb_obj_id_obsolete()
30347 Wed Jan 19 18:02:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30349         * lib/ipaddr.rb (to_s, test_to_s): too many colons with some cases.
30351 Wed Jan 19 01:16:30 2005  Tanaka Akira  <akr@m17n.org>
30353         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf): ignore
30354           domain and search directive without an argument.
30355           reported by Sam Roberts.  [ruby-talk:126781]
30357 Mon Jan 17 23:33:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30359         * configure.in (aix): fix typo.  [ruby-talk:126401]
30361 Mon Jan 17 07:08:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30363         * ext/readline/readline.c: suppress warnings.
30365         * lib/irb/extend-command.rb (IRB::ContextExtender.def_extend_command):
30366           ditto.
30368         * lib/irb/ext/history.rb (IRB::Context::set_last_value): ditto.
30370         * lib/irb/ext/history.rb (IRB::Context::eval_history): ditto.
30372         * lib/irb/locale.rb (IRB::Locale::real_load): ditto.
30374         * lib/irb/slex.rb (SLex::Node::create_subnode): remove garbage.
30376 Mon Jan 17 00:09:42 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
30378         * lib/uri/common.rb (PORT): typo fix. fixed: [ruby-core:04256]
30380 Sat Jan 15 14:57:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30382         * ruby.c (proc_options): ignore trailing CRs at the end of short
30383           options as well as long options.  fixed: [ruby-core:04232]
30385 Sat Jan 15 13:44:22 2005  Kouhei Sutou  <kou@cozmixng.org>
30387         * lib/rss/rss.rb (RSS::VERSION): 0.1.2 -> 0.1.3.
30389         * lib/rss/rss.rb: accept inheritance. [ruby-talk:126104]
30391 Wed Jan 12 12:29:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30393         * eval.c (rb_mod_define_method): incomplete subclass check.
30394           [ruby-dev:25464]
30396         * class.c (rb_make_metaclass): class of metaclasses should be
30397           plain Class.  [ruby-list:40524]
30399 Tue Jan 11 20:58:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30401         * io.c (remain_size): use buffered data instead of unreading to avoid
30402           inconsistency of text mode.  fixed: [ruby-dev:25446]
30404 Tue Jan 11 09:37:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30406         * numeric.c (Init_Numeric): turn off floating point exceptions
30407           on bcc32. "1e300".to_f had crashed by overflow.
30409 Mon Jan 10 15:28:51 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30411         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line): should
30412           escape SCRIPT_NAME and PATH_INFO before being parsed as a URI.
30414         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#escape_path): add
30415           new method to escape URI path component.
30417         * lib/webrick/ssl.rb (WEBrick::Config::SSL): the default value
30418           of :SSLEnable is false.
30420         * test/webrick/{test_cgi.rb,webrick.cgi}: new file.
30422         * test/webrick/utils.rb: require "webrick/https.h".
30424 Mon Jan 10 01:22:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30426         * gc.c (rb_data_object_alloc): klass may be NULL.
30427           [ruby-list:40498]
30429 Sun Jan  9 14:12:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30431         * io.c (rb_f_select): IO list could be altered.  [ruby-dev:25312]
30433 Sun Jan  9 04:08:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30435         * test/webrick/test_server.rb (test_daemon): delete an assertion
30436           which has possibility to fail by race condition.
30438 Sun Jan  9 03:22:46 2005  Minero Aoki  <aamine@loveruby.net>
30440         * test/fileutils/test_fileutils.rb (test_copy_entry): copy_entry
30441           copies only file type, not mtime. [ruby-dev:25383]
30443 Sat Jan  8 04:38:47 2005  why the lucky stiff  <why@ruby-lang.org>
30445         * lib/yaml.rb: Kernel#y requires an argument.
30447 Fri Jan  7 21:12:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
30449         * random.c (rand_init): use ALLOC_N instead of ALLOCA_N
30450           [ruby-dev:25426]
30452 Fri Jan  7 20:01:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30454         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
30455           should delete trailing LF from the result of pack("m*").
30457         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
30458           - should delete trailing LF from the result of pack("m*").
30459           - clear Request-Line not to send the response by HTTPServer#run.
30461         * lib/webrick/httputils (WEBrick::HTTPUtils.parse_qvalues):
30462           refine regexp (and change the name of a local variable).
30464         * lib/webrick/server.rb (WEBrick::Daemon.start): prepared stdio
30465           don't allow changing its mode.
30467         * test/webrick/*, sample/webrick/httpproxy.rb: add new files.
30469 Fri Jan  7 18:03:35 2005  Tanaka Akira  <akr@m17n.org>
30471         * gc.c (mark_locations_array): avoid core dump with -O3.
30472           [ruby-dev:25424]
30474 Thu Jan  6 20:29:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30476         * ext/zlib/zlib.c (zstream_end): should return value.
30478 Thu Jan  6 19:59:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30480         * win32/win32.c (rb_w32_close): didn't close socket handle.
30481           [ruby-dev:25414]
30483         * win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle
30484           never set EMFILE.
30486 Thu Jan  6 17:22:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30488         * random.c (random_seed): O_NONBLOCK isn't defined on some
30489           platforms. [ruby-dev:25417]
30491 Thu Jan  6 13:45:35 2005  Tanaka Akira  <akr@m17n.org>
30493         * lib/time.rb: recognize +00:00 and GMT as a localtime.
30495 Thu Jan  6 07:58:28 2005  Dave Thomas  <dave@pragprog.com>
30497         * lib/rdoc/usage.rb (RDoc::RDoc.usage_no_exit): Allow for colons
30498           in path names on DOS machines. (thanks to Johan Nilsson)
30500 Thu Jan  6 00:02:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30502         * test/rinda/test_rinda.rb: use MockClock.sleep instead of Kernel.sleep
30503           [ruby-dev:25387]
30505 Wed Jan  5 20:16:32 2005  Tanaka Akira  <akr@m17n.org>
30507         * random.c (limited_big_rand): didn't work if SIZEOF_BDIGITS == 2.
30508           [ruby-dev:25408]
30510         * random.c (random_seed): refined.
30512 Wed Jan  5 16:39:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30514         * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.
30515           shift assignment operator '>>=' for __int64 in struct may
30516           generate collapsed code. [ruby-dev:25342]
30518         * win32/win32.[ch]: failed to compile on bcc32 (and probably wince)
30519           [ruby-dev:25306]
30521 Wed Jan  5 12:49:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30523         * eval.c (rb_thread_initialize): Thread objects cannot be initialized
30524           again.  fixed: [ruby-core:04067]
30526 Wed Jan  5 02:30:11 2005  Tanaka Akira  <akr@m17n.org>
30528         * random.c (init_by_array): imported from mt19937ar-cok.tgz.
30529           (genrand_int32): ditto.
30530           (genrand_real): replaced with genrand_res53 in mt19937ar-cok.
30531           (rand_init): support bignum for longer seed.
30532           (random_seed): generate longer seed.
30533           (make_mask): new function.
30534           (limited_rand): ditto.
30535           (limited_big_rand): ditto.
30536           (rb_f_rand): call limited_rand and limited_big_rand.
30537           [ruby-dev:25403]
30539 Tue Jan  4 23:25:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30541         * bignum.c (rb_big_rand): should return positive random number.
30542           [ruby-dev:25401]
30544 Tue Jan  4 21:25:43 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30546         * test/drb/{test_drbssl.rb,test_drbunix.rb,ut_drb.rb}: use
30547           DRbService.ext_service. reduce sleep.
30549 Mon Jan  3 14:01:54 2005  Tanaka Akira  <akr@m17n.org>
30551         * random.c (random_seed): don't use /dev/urandom if it is not
30552           character device.
30554 Mon Jan  3 11:37:42 2005  Tanaka Akira  <akr@m17n.org>
30556         * random.c (random_seed): use /dev/urandom if available.
30557           [ruby-dev:25392]
30559 Tue Jan  4 11:15:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
30561         * bignum.c (rb_big_rand): do not use rb_big_modulo to generate
30562           random bignums.  [ruby-dev:25396]
30564 Mon Jan  3 11:03:37 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30566         * test/drb/test_drb.rb: move TestDRbReusePort to new file.
30567           [ruby-dev:25238]
30569         * test/drb/drbtest.rb: change timeout.
30571         * test/drb/ignore_test_drb.rb: new file.
30573 Mon Jan  3 07:27:46 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30575         * lib/webrick/httpauth/htpasswd.rb (WEBrick::Htpasswd#reload):
30576           raise NotImplementedError if password is encrypted by digest
30577           algorithms. This patch is contributed by sheepman. [ruby-list:40467]
30579         * lib/webrick/httpauth/digestauth.rb
30580           (WEBrick::HTTPAuth::DigestAuth#_authenticate): fix digest calculation.
30581           This patch is contributed by sheepman. [ruby-list:40482]
30583         * lib/webrick/{httpauth.rb,httpauth/basicauth.rb,httpproxy.rb}: use
30584           pack/unpack-template char "m" instead of lib/base64.rb to do base64
30585           encoding/decoding. fixed: [ruby-dev:25336]
30587         * test/webrick/test_httpauth.rb: new file.
30589 Sun Jan  2 15:42:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30591         * lib/drb/drb.rb: add lazy stop_service.
30593         * lib/drb/extserv.rb: ditto.
30595 Sun Jan  2 01:17:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30597         * test/drb/drbtest.rb: add method DRbService.ext_service.
30599         * test/drb/test_drb.rb: ditto.
30601         * test/drb/test_drbssl.rb: ditto.
30603 Sat Jan  1 20:23:02 2005  Tanaka Akira  <akr@m17n.org>
30605         * io.c (argf_readpartial): new method ARGF.readpartial.
30606           (io_getpartial): extracted from io_readpartial.
30607           (io_readpartial): call io_getpartial.
30609 Sat Jan  1 17:44:54 2005  Minero Aoki  <aamine@loveruby.net>
30611         * lib/net/http.rb (each_capitalized): should join header field
30612           value.  This patch is contributed sheepman [ruby-list:40478]
30614         * test/net/http/test_httpheader.rb: test it.
30616 Sat Jan  1 16:21:29 2005  Minero Aoki  <aamine@loveruby.net>
30618         * lib/fileutils.rb (copy_stream): use read/write instead of
30619           sysread/syswrite, which allows duck typing. [ruby-dev:25369]
30621         * lib/fileutils.rb (copy_stream): does NOT support nonblocking IO.
30622           [ruby-dev:25370]
30624         * lib/fileutils.rb (copy_entry): could not copy symlink.
30626         * test/fileutils/test_fileutils.rb: test copy_entry, copy_file,
30627           copy_stream.
30629 Sat Jan  1 04:20:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30631         * ext/openssl/ossl_ns_spki.c (ossl_spki_set_challenge): should call
30632           StringValue before GetSPKI. fixed: [ruby-dev:25359].
30634 Sat Jan  1 01:13:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30636         * variable.c (rb_autoload): [ruby-dev:25373]
30638 Fri Dec 31 14:10:43 2004  Dave Thomas  <dave@pragprog.com>
30640         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
30641           Fix problem if heading contains formatting.
30643 Fri Dec 31 00:08:02 2004  Tanaka Akira  <akr@m17n.org>
30645         * configure.in (HAVE_RLIM_T): removed because not used.
30647 Thu Dec 30 22:45:39 2004  Tanaka Akira  <akr@m17n.org>
30649         * rubyio.h: don't deprecate rb_read_check.
30651         * io.c (STDIO_READ_DATA_PENDING): reverted from old READ_DATA_PENDING
30652           to check stdio read buffer.
30653           (rb_read_check): use STDIO_READ_DATA_PENDING.
30654           (rb_read_pending): ditto.
30655           (rb_getc): ditto.
30657 Thu Dec 30 05:39:35 2004  Minero Aoki  <aamine@loveruby.net>
30659         * parse.y: eliminate unused members in struct parser_params.
30660           [ruby-dev:25258] (again)
30662         * parse.y: make parser_new() static.
30664 Thu Dec 30 00:41:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
30666         * eval.c (svalue_to_avalue): [ruby-dev:25366]
30668         * string.c (rb_str_justify): [ruby-dev:25367]
30670 Wed Dec 29 11:07:07 2004  Dave Thomas  <dave@pragprog.com>
30672         * lib/rdoc/generators/template/html/kilmer.rb: Update to use new
30673           sections.
30675 Tue Dec 28 22:31:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30677         * string.c (rb_str_justify): create buffer string after argument type
30678           conversion.  fixed: [ruby-dev:25341]
30680 Tue Dec 28 17:18:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
30682         * lib/net/telnet.rb (preprocess): remove NULL unless binmode.
30683           fixed: [ruby-list:40320]
30685 Tue Dec 28 15:41:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30687         * ext/nkf/nkf-utf8/nkf.c (reinit): should initialize all static
30688           variables.  fixed: [ruby-list:40445]
30690 Tue Dec 28 15:25:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30692         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): second byte is up to
30693           0xfe.
30695         * ext/nkf/lib/kconv.rb (Kconv#kconv): should handle UTF8 and UTF16
30696           properly.
30698 Tue Dec 28 13:35:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30700         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): ensure
30701           freeing internal zstreams.  fixed: [ruby-dev:25309]
30703         * ext/zlib/zlib.c (rb_deflate_init_copy): replace rb_deflate_clone.
30705 Mon Dec 27 20:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30707         * ext/tcltklib/tcltklib.c: fix SEGV bug when deleting Tk interp
30709         * ext/tk/lib/multi-tk.rb: ditto
30711 Mon Dec 27 16:54:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30713         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): should use
30714           rb_hash_new to get exactly a Hash. fix [ruby-dev:25325].
30716 Mon Dec 27 15:29:12 2004  Minero Aoki  <aamine@loveruby.net>
30718         * test/fileutils/test_fileutils.rb (cp_r): tested wrong file name.
30719           [ruby-dev:25339]
30721 Mon Dec 27 15:15:18 2004  Minero Aoki  <aamine@loveruby.net>
30723         * lib/fileutils.rb (mv): should raise error when moving a
30724           directory to the (empty) directory. [ruby-talk:124368]
30726         * lib/fileutils.rb (mv): wrongly did not overwrite file on Win32
30727           platforms.
30729 Mon Dec 27 14:36:20 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
30731         * process.c (NUM2RLIM, RLIM2NUM): Without SIZEOF_RLIM_T is not error.
30732           fixed: [ruby-dev:25346]
30734 Sun Dec 26 16:21:39 2004  Shugo Maeda  <shugo@ruby-lang.org>
30736         * lib/net/imap.rb (Net::IMAP::PlainAuthenticator): added a new class
30737           to support the PLAIN authentication mechanism. Thanks, Benjamin
30738           Stiglitz.
30740 Sat Dec 25 01:28:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
30742         * io.c (rb_f_select): [ruby-dev:25312]
30744 Fri Dec 24 23:27:18 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30746         * ext/tk/lib/tk/image.rb: TkPhotoImage#cget bug fix
30748 Fri Dec 24 03:06:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30750         * io.c (io_reopen, rb_io_reopen): prohibit to change access mode for
30751           special IO ports.  [ruby-dev:25225]
30753         * io.c (next_argv): reduce use of stdio.
30755 Fri Dec 24 02:22:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30757         * ext/syck/rubyext.c (syck_loader_transfer): check type conversion.
30759         * ext/syck/rubyext.c (syck_parser_assign_io, rb_new_syck_node): duck
30760           typing.
30762         * ext/syck/rubyext.c (syck_parser_s_alloc, syck_parser_initialize):
30763           allocation framework.
30765         * ext/syck/rubyext.c (syck_emitter_s_alloc, syck_emitter_initialize):
30766           ditto.
30768 Fri Dec 24 01:21:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30770         * ext/tk/lib/tkextlib/blt.rb: add BLT extension support
30772         * ext/tk/lib/tkextlib/blt/*.rb: ditto
30774         * ext/tk/lib/tkextlib/blt/tile/*.rb: ditto
30776 Thu Dec 23 23:43:24 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30778         * process.c (proc_setgroups): check if the argument length is
30779           modified.  fixed: [ruby-dev:25285]
30781         * process.c (SIZEOF_RLIM_T): err if size of rlim_t is not set.
30783 Thu Dec 23 19:08:41 2004  Tanaka Akira  <akr@m17n.org>
30785         * rubyio.h: rename FMODE_UNSEEKABLE to FMODE_DUPLEX.
30787         * io.c (io_check_tty): extracted function to set FMODE_LINEBUF and
30788           FMODE_DUPLEX.
30790 Thu Dec 23 13:13:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30792         * ext/tcltklib/tcltklib.c: define TclTkLib::COMPILE_INFO and
30793           RELEASE_DATE
30795         * ext/tcltklib/extconf.rb: ditto
30797         * ext/tk/tkutil.c: define TkUtil::RELEASE_DATE
30799         * ext/tk/lib/tk.rb: define Tk::RELEASE_DATE
30801 Thu Dec 23 00:16:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30803         * configure.in (bsdi): use $(CC) for LDSHARED.  fixed [ruby-dev:25270]
30805 Wed Dec 22 11:14:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30807         * io.c (rb_io_mode_modenum): replace O_ACCMODE with O_RDWR.
30808           fixed: [ruby-dev:25273]
30810 Wed Dec 22 08:34:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30812         * ext/dl/sym.c (rb_dlsym_initialize): extract internal pointers after
30813           all argument conversion.  fixed: [ruby-dev:25271]
30815 Tue Dec 21 16:15:21 2004  Michael Neumann  <mneumann@ruby-lang.org>
30817         * lib/xmlrpc/client.rb: use "" instead of "." if prefix argument is
30818           nil in proxy methods. nil is default value.
30820         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
30821           use threads instead of forking. this should fix issue #1208
30822           (http://rubyforge.org/tracker/?func=detail&atid=1698&aid=1208&group_id=426).
30823           removed testing of SSL enabled servlet as this hangs.
30825 Wed Dec 22 00:05:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30827         * lib/soap/*, test/soap/*, sample/soap/authheader/*: eval cleanup.
30829 Tue Dec 21 22:07:41 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30831         * ext/openssl/ossl_asn1.c (ossl_asn1_decode_all): use rb_str_new4
30832           to avoid SEGV.
30834         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode,
30835           ossl_asn1_decode_all): temporary value should be marked volatile.
30837 Tue Dec 21 12:42:34 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30839         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode):
30840           use rb_str_new4 to avoid SEGV. fix [ruby-dev:25261]
30842         * test/openssl/test_asn1.rb: add tests for OpenSSL::ASN1.
30844 Tue Dec 21 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30846         * ext/tk/lib/tk/grid.rb: rescue bug of 'grid configure' on Tcl/Tk8.3-
30848 Mon Dec 20 22:52:29 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30850         * added samples for the previous soap4r's commit.
30852 Mon Dec 20 22:56:39 2004  Tanaka Akira  <akr@m17n.org>
30854         * gc.c (set_stack_end): gcc noinline attribute is available since
30855           gcc-3.1.
30857 Mon Dec 20 22:40:31 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30859         * added files:
30860           * lib/soap/mapping/wsdl*.rb
30861           * lib/wsdl/soap/element.rb
30862           * lib/wsdl/xmlSchema/simpleContent.rb
30864         * modified files:
30865           * lib/soap/*
30866           * lib/wsdl/*
30867           * lib/xsd/*
30868           * test/soap/*
30869           * test/wsdl/*
30870           * test/xsd/*
30872         * summary
30873           * imported from the soap4r repository.  Version: 1.5.3-ruby1.8.2
30875           * added several XSD basetype support: nonPositiveInteger,
30876             negativeInteger, nonNegativeInteger, unsignedLong, unsignedInt,
30877             unsignedShort, unsignedByte, positiveInteger
30879           * HTTP client connection/send/receive timeout support.
30881           * HTTP client/server gzipped content encoding support.
30883           * improved WSDL schema definition support; still is far from
30884             complete, but is making step by step improvement.
30886 Mon Dec 20 14:45:19 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30888         * lib/net/https.rb: delete descriptions about key_file and cert_file.
30889           fixed: [ruby-dev:25243]
30891         * ext/openssl/lib/net/telnets.rb: ditto.
30893 Mon Dec 20 14:07:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30895         * ext/tk/lib/multi-tk.rb: supports new features of Tcl/Tk8.5a2
30897         * ext/tk/lib/tk/clock.rb: ditto
30899         * ext/tk/lib/tk/text.rb: ditto
30901         * ext/tk/lib/tk/panedwindow.rb: ditto
30903 Mon Dec 20 13:51:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
30905         * ext/socket/socket.c (sock_s_getservbyport): [ruby-talk:124072]
30907 Mon Dec 20 10:51:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30909         * parse.y (special_local_set): prevent the parser object from GC.
30910           fixed: [ruby-dev:25252]
30912 Mon Dec 20 03:30:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30914         * lib/cgi/session.rb (CGI::Session#initialize): empty session id was
30915           used if request had no session key.  fixed: [ruby-core:03981]
30917 Mon Dec 20 01:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
30919         * struct.c (make_struct): [ruby-dev:25249]
30921 Mon Dec 20 00:16:54 2004  Kouhei Sutou  <kou@cozmixng.org>
30923         * lib/rexml/encodings/SHIFT_JIS.rb: fixed LoadError bug.
30924           [ruby-core:3958]
30926 Sun Dec 19 17:24:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30928         * configure.in (enable_rpath): use rpath flag to embed the library
30929           path into extensions on ELF environment.  [ruby-dev:25035]
30931 Sun Dec 19 11:01:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30933         * lib/test/unit.rb: use standalone runner for -e.
30935         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept
30936           multiple -p and -x options.
30938         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect):
30939           ditto.
30941 Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30943         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate):
30944           disallow interrupt by type conversion.  fixed: [ruby-dev:25226]
30946 Sat Dec 18 15:09:02 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30948         * lib/webrick/httpauth.rb,
30949           lib/webrick/httpauth/{basicauth.rb,digestauth.rb}: use
30950           pack/unpack-template char "m" instead of lib/base64.rb to do base64
30951           encoding/decoding.
30953 Sat Dec 18 10:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
30955         * dir.c (dir_open_dir): new function.  [ruby-dev:25242]
30957         * io.c (rb_f_open): add type check for return value from to_open.
30959 Fri Dec 17 16:44:26 2004  Tanaka Akira  <akr@m17n.org>
30961         * configure.in (ac_cv_sizeof_rlim_t): set 8 for BSD/OS.
30962           Reported by OHARA Shigeki.  [ruby-dev:25236]
30964 Fri Dec 17 16:28:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30966         * ext/tk/lib/tk.rb: fix bug on setting up system encoding
30968         * ext/tk/lib/tk/event.rb: fix error on require process
30970         * ext/tk/lib/tk/font.rb: fix abnormal termination error on Windows
30972         * ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new()
30973           accepts event-sequence arguments
30975         * ext/tk/lib/tk/text.rb: fail to dump embedded images
30977         * ext/tk/lib/tk/text.rb: tag_nextrange and tag_prevrange returns wrong
30978           types of values
30980         * ext/tk/lib/tk/texttag.rb: nextrange and prevrange returns wrong
30981           types of values
30983         * ext/tk/lib/tk/text.rb: add TkText::IndexModMethods module and
30984           TkText::IndexString class to treat text index modifiers
30986         * ext/tk/lib/tk/texttag.rb: use TkText::IndexModMethods module
30988         * ext/tk/lib/tk/textmark.rb: ditto
30990         * ext/tk/lib/tk/textimage.rb: ditto
30992         * ext/tk/lib/tk/textwindow.rb: ditto
30994         * ext/tk/lib/tk/textimage.rb: wrong gravity of text mark for embedded
30995           image
30997         * ext/tk/lib/tk/textwindow.rb: wrong gravity of text mark for
30998           embedded window
31000 Fri Dec 17 13:33:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31002         * lib/cgi/session.rb (CGI::Session#initialize): control adding
31003           session_id hidden fields.  fixed: [ruby-talk:123850]
31005 Fri Dec 17 00:01:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31007         * eval.c (rb_proc_arity, rb_node_arity, rb_mod_method_arity,
31008           rb_obj_method_arity): new functions to obtain method arity.
31009           [ruby-dev:25143]
31011 Thu Dec 16 23:31:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31013         * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
31014           is installed.  fixed: [ruby-dev:25215]
31016 Thu Dec 16 22:36:57 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31018         * test/drb/test_drb.rb: adjust and reduce sleep.
31020 Thu Dec 16 18:37:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31022         * ext/openssl/ossl.c (ossl_raise): refine message format.
31024 Thu Dec 16 16:29:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31026         * ext/tk/sample/demos-en/widget: modify version check for
31027           supporting features
31029 Thu Dec 16 16:03:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31031         * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]
31033         * ext/tk/lib/tk/timer.rb: accept :idle for the interval argument
31035         * ext/tk/lib/tk.rb: add TkComm._callback_entry?()
31037         * ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class
31039         * ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?()
31041         * ext/tk/lib/tk/canvastag.rb: ditto
31043         * ext/tk/lib/tk/dialog.rb: ditto
31045         * ext/tk/lib/tk/optiondb.rb: ditto
31047         * ext/tk/lib/tk/text.rb: ditto
31049         * ext/tk/lib/tk/texttag.rb: ditto
31051         * ext/tk/lib/tk/textwindow.rb: ditto
31053         * ext/tk/lib/tk/timer.rb: ditto
31055         * ext/tk/lib/tk/validation.rb: ditto
31057         * ext/tk/lib/tkextlib/*: ditto
31059 Thu Dec 16 04:02:28 2004  Minero Aoki  <aamine@loveruby.net>
31061         * ext/ripper/extconf.rb: bison is not needed if ripper.c exists.
31062           [ruby-dev:25191]
31064 Thu Dec 16 03:27:10 2004  Minero Aoki  <aamine@loveruby.net>
31066         * lib/net/http.rb: remove junk.
31068 Thu Dec 16 00:57:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31070         * ext/syck/rubyext.c (rb_syck_io_str_read): [ruby-core:03973]
31072 Thu Dec 16 00:43:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31074         * lib/drb/drb.rb: changed default binded address family to use an
31075           available address family of host name. [druby-ja:101]
31077         * lib/drb/ssl.rb: ditto
31079 Wed Dec 15 17:47:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31081         * lib/webrick/server.rb (WEBrick::GenericServer#start_thread):
31082           should log about all accepted socket. [ruby-core:03962]
31084         * lib/webrick/accesslog.rb (WEBrick::AccessLog#setup_params):
31085           "%%" and "%u" are supported. [webricken:135]
31087         * lib/webrick/httpservlet/filehandler.rb
31088           (WEBrick::HTTPServlet::FileHandler#check_filename):
31089           :NondisclosureName is acceptable if it is Enumerable.
31091         * lib/webrick/config.rb (WEBrick::Config::FileHandler):
31092           default value of :NondisclosureName is [".ht*", "*~"].
31094 Wed Dec 15 16:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31096         * object.c (rb_obj_id_obsolete): warn always.
31098 Wed Dec 15 15:31:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31100         * lib/set.rb (Set#==): [ruby-dev:25206]
31102 Wed Dec 15 14:32:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31104         * win32/win32.c (rb_w32_fdisset): check whether the handle is valid.
31106 Wed Dec 15 10:30:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31108         * ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]
31110 Tue Dec 14 19:17:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31112         * utf8.c (utf8_is_mbc_ambiguous): [ruby-talk:123561]
31114         * utf8.c (utf8_mbc_to_normalize): ditto.
31116 Tue Dec 14 17:08:15 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31118         * win32/win32.c (rb_w32_close): need to reset osfhnd().
31120 Tue Dec 14 14:03:57 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31122         * ext/openssl/ossl.c (ossl_raise): avoid buffer overrun.
31123           [ruby-dev:25187]
31125 Tue Dec 14 12:36:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31127         * lib/cgi/session.rb (CGI::Session::initialize): generate new
31128           session if given session_id does not exist.  [ruby-list:40368]
31130 Tue Dec 14 08:47:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31132         * eval.c (Init_eval): should mark ruby_eval_tree.  [ruby-dev:25189]
31134 Mon Dec 13 18:13:52 2004  Tanaka Akira  <akr@m17n.org>
31136         * gc.c (set_stack_end): new function to obtain stack end address.
31137           set_stack_end obtains a stack end address by an address of local
31138           variable in the function.
31139           (SET_STACK_END, STACK_END): use set_stack_end.  don't use alloca.
31140           This makes the conservative garbage collector to scan a stack frame
31141           of the garbage_collect function itself.  This is required because
31142           callee-save registers may be stored in the frame.
31143           [ruby-dev:25158]
31145 Mon Dec 13 02:45:51 2004  Shugo Maeda  <shugo@ruby-lang.org>
31147         * ext/curses/curses.c (window_subwin): call NUM2INT() before
31148           GetWINDOW(). fixed: [ruby-dev:25161]
31150 Mon Dec 13 00:58:02 2004  Tanaka Akira  <akr@m17n.org>
31152         * lib/pathname.rb (cleanpath_aggressive): make it private.
31153           (cleanpath_conservative): ditto.
31154           Suggested by Daniel Berger.  [ruby-core:3914]
31156 Sun Dec 12 21:32:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31158         * test/ruby/test_super.rb (TestSuper#test_define_method): now methods
31159           from procs can call super.
31161 Sun Dec 12 10:35:10 2004  Dave Thomas  <dave@pragprog.com>
31163         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Don't
31164           show an accessor's r/w flag if none was specified
31166 Sun Dec 12 10:14:03 2004  Dave Thomas  <dave@pragprog.com>
31168         * lib/rdoc/rdoc.rb (RDoc::RDoc::parse_files): Never exclude files
31169           explicitly given on the command line.
31171 Sat Dec 11 21:10:16 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31173         * lib/drb/drb.rb: add DRbRemoteError. [ruby-list:40348],
31174           [ruby-list:40390]
31176         * test/drb/drbtest.rb: ditto.
31178         * test/drb/ut_drb.rb: ditto.
31180 Sat Dec 11 13:08:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31182         * sample/optparse/subcommand.rb: a sample for sub commands like
31183           cvs.  contributed by Minero Aoki.
31185 Fri Dec 10 08:39:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31187         * ext/socket/socket.c (sock_listen): get OpenFile just before calling
31188           listen(2).
31190 Thu Dec  9 16:28:35 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31192         * ext/sdbm/init.c (GetDBM): typo.
31194 Thu Dec  9 16:21:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31196         * lib/webrick/cgi.rb (WEBrick::CGI#setup_header): avoid
31197           SecurityError. [ruby-dev:24970]
31199         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should wait
31200           for reading request till data arrive. [ruby-talk:121068]
31202 Thu Dec  9 14:38:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31204         * string.c (rb_str_inspect): escape # which starts an expression
31205           substitution.  fixed: [ruby-core:03922]
31207         * string.c (rb_str_dump): not escape # which isn't a substitution.
31209 Thu Dec  9 12:31:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31211         * io.c (pipe_open): should set prog if argc != 0.
31213 Thu Dec  9 10:54:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31215         * ext/dbm/dbm.c (fdbm_select): [ruby-dev:25132]
31217         * ext/sdbm/init.c: ditto.
31219         * ext/gdbm/gdbm.c: ditto.
31221 Thu Dec  9 10:19:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31223         * test/socket/test_socket.rb (test_setsockopt): use SO_LINGER instead
31224           of SO_BINDTODEVICE.  fixed: [ruby-dev:25133]
31226 Thu Dec  9 03:08:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31228         * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" when
31229           the running script is '-e one-liner' or '-' (stdin).
31231         * ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for
31232           stub libs
31234         * ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor
31235           have a wrong parent class.
31237         * ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and
31238           TkWarning2 --> TkWarningObj (old names are changed to alias names)
31240         * ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command'
31241           option and hashes for configuration
31243         * ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the
31244           button name
31246         * ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==>
31247           get_value() and value=(val) ==> set_value(val).
31249         * ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec
31251         * ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton,
31252           TkOptionMenuButton = TkOptionMenubutton)
31254         * ext/tk/lib/tk/event.rb: new method aliases (same as option keys of
31255           event_generate) for Event object
31257         * ext/tk/lib/tk/font.rb: configinfo returns proper types of values
31259         * ext/tk/lib/tk.rb: bind methods accept subst_args + block
31261         * ext/tk/lib/tk/canvas.rb: ditto
31263         * ext/tk/lib/tk/canvastag.rb: ditto
31265         * ext/tk/lib/tk/frame.rb: ditto
31267         * ext/tk/lib/tk/text.rb: ditto
31269         * ext/tk/lib/tk/texttag.rb: ditto
31271         * ext/tk/lib/tk/toplevel.rb: ditto
31273         * ext/tk/lib/tkextlib/*: ditto and bug fix
31275 Wed Dec  8 23:54:29 2004  Dave Thomas  <dave@pragprog.com>
31277         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Typo
31278           meant that h2 tag was invisible.
31280 Wed Dec  8 22:10:02 2004  Tanaka Akira  <akr@m17n.org>
31282         * rubyio.h, io.c, ext/dl/dl.c, ext/pty/pty.c, ext/socket/socket.c:
31283           create FILE object only when required: popen(3) and DL's IO#to_ptr.
31284           [ruby-dev:25122]
31286         * io.c (rb_io_binmode): use setmode for Human68k.  [ruby-dev:25121]
31288 Wed Dec  8 20:13:06 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31290         * process.c (rb_spawn): support for DJGPP.
31292         * lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.
31294 Wed Dec  8 17:48:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31296         * eval.c (proc_invoke): merge Guy Decoux's argument preserve
31297           patch in [ruby-core:03874].
31299 Wed Dec  8 17:37:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31301         * win32/win32.c (rb_w32_pipe_exec): need to close original socket
31302           handle.
31304 Wed Dec  8 14:31:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31306         * sprintf.c (rb_f_sprintf): [ruby-dev:25104]
31308 Wed Dec  8 13:49:46 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31310         * win32/win32.c (rb_w32_pipe_exec): must close original handle
31311           before exec. fixed: [ruby-dev:25112]
31313 Wed Dec  8 11:46:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31315         * parse.y (string_content): get rid of segfault at empty evstr.
31316           fixed: [ruby-dev:25113]
31318 Wed Dec  8 03:26:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31320         * ext/openssl/ossl_bio.c (ossl_obj2bio): should not use fptr->f.
31321           [ruby-dev:25101]
31323 Wed Dec  8 03:26:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31325         * runruby.rb: prepend LIBRUBY_SO to LD_PRELOAD as well as rubytest.rb.
31327 Wed Dec  8 01:35:44 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31329         * win32/win32.c (is_socket): reorder of function definitions.
31331 Wed Dec  8 00:44:31 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31333         * io.c (pipe_open): win32 bidirectional pipe support.
31335         * win32/win32.[ch] (rb_w32_pipe_exec): ditto.
31337         * win32/win32.[ch] (socketpair): new function. POSIX socketpair
31338           emulation.
31340         * win32/win32.c (socketpair_internal): ditto.
31342 Wed Dec  8 00:25:07 2004  Kouhei Sutou  <kou@cozmixng.org>
31344         * test/rss/test_version.rb: added version check test.
31345           [ruby-dev:25053]
31347 Tue Dec  7 15:40:38 2004  Tanaka Akira  <akr@m17n.org>
31349         * io.c (io_fwrite): avoid context switch before writing to stderr.
31350           [ruby-dev:25080]
31352         * rubyio.h: refine deprecated declaration.
31354         * configure.in, file.c, io.c: remove useless check: fseeko, etc.
31356 Tue Dec  7 13:42:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31358         * dir.c (dir_s_mkdir): win32 special processing doesn't need any
31359           longer.
31361         * win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible
31362           interface.
31364         * win32/win32.[ch] (rb_w32_rmdir): new function.
31366 Tue Dec  7 00:27:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31368         * process.c (proc_setgroups): [ruby-dev:25081]
31370 Mon Dec  6 23:07:57 2004  Tanaka Akira  <akr@m17n.org>
31372         * configure.in: check -lsocket for socketpair and shutdown.
31373           reported by Ville Mattila.  [ruby-core:03903]
31375 Mon Dec  6 23:00:45 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31377         * configure.in (ac_cv_sizeof_rlim_t): setup for DJGPP.
31379         * io.c (is_socket, shutdown): define dummy macros for DJGPP.
31381         * process.c: use SIZEOF_RLIM_T instead of HAVE_RLIM_T for DJGPP.
31383 Mon Dec  6 21:19:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31385         * io.c (is_socket): fix typos. [ruby-core:03900]
31387 Mon Dec  6 20:13:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31389         * io.c (is_socket): new function.
31391         * io.c (rb_io_close_read, rb_io_close_write): use is_socket().
31393         * io.c (rb_io_fptr_finalize): need to check fptr->f before calling
31394           rb_io_fptr_cleanup().
31396         * io.c (pipe_open): win32 pipe support (experimental).
31398         * win32/win32.[ch] (rb_w32_pipe_exec): return file descriptors
31399           instead of FILE structure objects.
31401         * win32/win32.[ch] (rb_w32_is_socket): new function.
31403 Mon Dec  6 19:40:40 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31405         * Makefile.in (.y.c): simplify the rule.
31407 Mon Dec  6 18:08:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31409         * re.c (rb_reg_eqq): document fix.  [ruby-talk:122541]
31411 Mon Dec  6 17:49:30 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31413         * eval.c (run_trap_eval): add prototype for Microsoft compiler.
31415 Mon Dec  6 17:32:38 2004  Tanaka Akira  <akr@m17n.org>
31417         * rubyio.h, intern.h, io.c, file.c, process.c, ext/socket/socket.c,
31418           ext/pty/pty.c, ext/io/wait/wait.c, ext/openssl/ossl_ssl.c:
31419           Use own buffering mechanism instead of stdio.  [ruby-dev:25056]
31421         * io.c, ext/stringio/stringio.c, test/ruby/ut_eof.rb:
31422           EOF flag removed.
31424 Mon Dec  6 17:15:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31426         * test/socket/test_socket.rb (TestBasicSocket#test_setsockopt):
31427           BasicSocket#setsockopt dumps core.  [ruby-dev:25039]
31429         * test/socket/test_tcp.rb (TestTCPSocket#test_recvfrom):
31430           TCPSocket#recvfrom dumps core.  [ruby-dev:24705]
31432         * test/socket/test_udp.rb (TestUDPSocket#test_connect):
31433           UDPSocket#connect dumps core.  [ruby-dev:25045]
31435         * test/socket/test_udp.rb (TestUDPSocket#test_bind):
31436           UDPSocket#bind dumps core.  [ruby-dev:25057]
31438 Mon Dec  6 09:59:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31440         * io.c (io_fread): take VALUE argument.
31442         * ext/socket/socket.c (sock_connect): use rb_str_new4().
31443           [ruby-dev:25052]
31445         * eval.c (rb_yield_0): [ruby-dev:25051]
31447 Mon Dec  6 01:32:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31449         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,
31450           ossl_rsa_public_decrypt, ossl_rsa_private_encrypt,
31451           ossl_rsa_private_decrypt): should take an optional argument
31452           to specify padding mode. [ruby-talk:122539]
31454         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): add new constants
31455           PKCS1_PADDING, SSLV23_PADDING, NO_PADDING and PKCS1_OAEP_PADDING
31456           under OpenSSL::PKey::RSA.
31458         * test/openssl/test_pkey_rsa.rb: new file.
31460 Sun Dec  5 19:39:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31462         * lib/optparse.rb (OptionParser::Completion#complete): new parameter
31463           to direct case insensitiveness.
31465         * lib/optparse.rb (OptionParser#order!): ignore case only for long
31466           option.  [ruby-dev:25048]
31468 Sun Dec  5 00:54:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31470         * mkconfig.rb: setup library paths before requiring library.
31471           [ruby-core:03892]
31473 Sat Dec  4 22:54:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31475         * io.c (io_write): remove rb_str_locktmp().  [ruby-dev:25050]
31477         * io.c (io_fwrite): takes VALUE string as an argument.
31478           [ruby-dev:25050]
31480         * ext/socket/socket.c (sock_connect): remove rb_str_locktmp().
31481           [ruby-dev:25050]
31483         * ext/socket/socket.c (udp_connect): [ruby-dev:25045]
31485         * ext/socket/socket.c (udp_bind): ditto.
31487         * ext/socket/socket.c (udp_send): ditto.
31489         * ext/socket/socket.c (bsock_send): ditto.
31491         * ext/socket/socket.c (s_recvfrom): ditto.
31493         * hash.c (rb_hash_hash): should provide "hash" method where "eql?"
31494           is redefined.  [ruby-talk:122482]
31496 Sat Dec  4 21:29:05 2004  Minero Aoki  <aamine@loveruby.net>
31498         * lib/fileutils.rb: (In previous commit) new method chown.
31500         * lib/fileutils.rb: (In previous commit) new method chown_R.
31502         * lib/fileutils.rb: (In previous commit) new method chmod_R
31503           wrongly added.  Removed now.
31505 Sat Dec  4 20:45:52 2004  Minero Aoki  <aamine@loveruby.net>
31507         * lib/fileutils.rb (mkdir, mkdir_p): should chmod explicitly.
31508           [ruby-core:03881]
31510 Sat Dec  4 18:54:09 2004  Kouhei Sutou  <kou@cozmixng.org>
31512         * lib/rss/rss.rb: removed empty lines from output.
31514 Sat Dec  4 18:49:09 2004  Kouhei Sutou  <kou@cozmixng.org>
31516         * lib/rss/rss.rb (RSS::VERSION): 0.1.1 -> 0.1.2
31518         * lib/rss/rss.rb: #item=/#set_item and so on are obsolete.
31520 Sat Dec  4 14:28:56 2004  Dave Thomas  <dave@pragprog.com>
31522         * lib/rdoc/code_objects.rb (RDoc::Context::Section::set_comment):
31523           Section comments may now be bracketed by lines which are
31524           ignored. You can now write
31525               # -----------
31526               # :section: Dave's Section
31527               # comment material
31528               # -----------
31529            The lines before :section: are removed, and identical lines at the end are
31530            also removed if present.
31532 Sat Dec  4 00:35:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31534         * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039]
31536 Fri Dec  3 12:25:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31538         * st.h: fix prototype for C++.
31540 Fri Dec  3 01:55:24 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31542         * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing
31543           returns proper object. "widget.option = val" returns val, and
31544           "widget.option(val)" returns self.
31546         * ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument.
31548         * ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and
31549           TkRadiobutton#value=(val).
31551         * ext/tk/lib/tk/spinbox.rb: callback substitution support on
31552           command option.
31554         * ext/tk/sample/demos-en/widget: bug fix (wrong image height)
31556         * ext/tk/sample/demos-jp/widget: ditto.
31558 Fri Dec  3 00:21:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31560         * eval.c (proc_invoke): prepare to pass a block from "call" method
31561           to a Proc generated by Method#to_proc.  [ruby-dev:25031]
31563         * eval.c (rb_yield_0): actually passes a block given to "call".
31565         * object.c (convert_type): use rb_respond_to() again.  this fix is
31566           based on [ruby-dev:25021]
31568         * eval.c (rb_respond_to): funcall respond_to? if it's redefined.
31569           [ruby-dev:25021]
31571 Thu Dec  2 15:13:53 2004  Michael Neumann  <mneumann@ruby-lang.org>
31573         * test/xmlrpc/test_parser.rb, test/xmlrpc/data/*.expected: Expected
31574           values are now stored in YAML instead of using #inspect. This fixes
31575           false hash order.
31577 Fri Dec  3 00:11:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31579         * io.c (rb_file_initialize): [ruby-dev:25032]
31581 Thu Dec  2 16:41:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31583         * eval.c (rb_protect): prevent continuations created inside from being
31584           called from the outside.  [ruby-dev:25003]
31586         * eval.c (rb_callcc, rb_cont_call): prohibit calling from different
31587           signal contexts.  [ruby-dev:25022]
31589 Thu Dec  2 10:45:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
31591         * test/readline/test_readline.rb: fix for NetBSD.
31593 Thu Dec  2 09:57:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31595         * lib/ostruct.rb (OpenStruct::Marshaler): OpenStruct can be
31596           marshaled again.  [ruby-core:03862]
31598 Thu Dec  2 09:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31600         * eval.c (thread_mark): mark thread group.  [ruby-dev:25020]
31602         * eval.c (thgroup_add): check whether the argument is really a Thread.
31604 Thu Dec  2 07:57:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31606         * io.c (rb_io_ctl): [ruby-dev:25019]
31608 Wed Dec  1 06:13:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
31610         * ext/nkf/nkf.c: add constant NKF::VERSION
31612         * ext/nkf/nkf.c(guess): this becomes an alias of guess2
31614         * ext/nkf/test.rb: add --no-cp932
31616         * ext/nkf/nkf-utf8/nkf.c: original nkf2 revision 1.47
31618 Wed Dec  1 02:21:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31620         * signal.c (sighandler): call handler immediately only for default
31621           handlers.  [ruby-dev:25003]
31623 Tue Nov 30 23:49:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31625         * io.c (pipe_open): errno should be preserved for rb_sys_fail() when
31626           fork failed.
31628 Tue Nov 30 16:18:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31630         * io.c (io_fread): need not to null terminate.  [ruby-dev:24998]
31632         * eval.c (rb_eval): should check previous frame for ZSUPER.
31634         * io.c (read_all): remove unnecessary rb_str_resize().
31635           [ruby-dev:24996]
31637         * io.c (io_readpartial): ditto.
31639         * io.c (io_read): ditto.
31641 Tue Nov 30 14:58:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31643         * instruby.rb (install): add arguments explicitly to "super".
31645 Tue Nov 30 00:49:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31647         * eval.c (PUSH_FRAME): flags should have been initialized.
31649         * eval.c (rb_eval): [ruby-core:03856]
31651         * io.c (rb_io_sysread): use temporary lock.  [ruby-dev:24992]
31653 Tue Nov 30 00:12:57 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
31655         * regparse.c: now handles many alternatives (over 500000)
31656           in regexp. [ruby-dev:24773]
31658 Mon Nov 29 16:06:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31660         * ext/stringio/stringio.c (strio_write): insufficiently filled string
31661           being extended when overwriting.  [ruby-core:03836]
31663 Mon Nov 29 15:59:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31665         * lib/ostruct.rb (OpenStruct::method_missing): check method
31666           duplication for -d.
31668         * lib/ostruct.rb (OpenStruct::initialize): ditto.
31670 Mon Nov 29 15:22:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31672         * test/io/nonblock/test_flush.rb: abandon tests when io/nonblock is
31673           not supported.
31675 Mon Nov 29 13:37:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31677         * io.c (fptr_finalize): must not use FILE after fclose().
31678           [ruby-dev:24985]
31680 Mon Nov 29 13:13:13 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
31682         * win32/win32.c (CreateChild): push back the last space before next
31683           loop because CharNext() eats it.
31685 Mon Nov 29 03:08:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31687         * object.c (convert_type): [ruby-core:03845]
31689         * eval.c (rb_funcall_rescue): new function.
31691         * object.c (rb_Array): avoid using rb_respond_to().
31693         * object.c (rb_Integer): ditto.
31695         * eval.c (get_backtrace): no conversion for nil.
31697         * parse.y (reduce_nodes): empty body should return nil.
31699 Mon Nov 29 01:18:18 2004  Tanaka Akira  <akr@m17n.org>
31701         * io.c (rb_io_check_writable): call io_seek regardless of
31702           NEED_IO_SEEK_BETWEEN_RW.  [ruby-dev:24986]
31704 Sun Nov 28 15:57:58 2004  Kouhei Sutou  <kou@cozmixng.org>
31706         * lib/rss/rss.rb (RSS::Element#tag): not use block_given? for
31707           working with ruby 1.6 again.
31709         * lib/rss/{0.9,2.0,trackback}.rb, lib/rss/maker/base.rb:
31710           undef -> remove_method for working with ruby 1.6 again.
31712 Sun Nov 28 15:51:40 2004  Kouhei Sutou  <kou@cozmixng.org>
31714         * lib/rss/rss.rb (RSS::NotSetError): added.
31716         * lib/rss/maker/{1.0,0.9,2.0}.rb: changed RSS Maker to raise
31717           RSS::NotSetError if required values of maker.channel are not
31718           set. [ruby-talk:120061]
31720         * test/rss/test_maker_{1.0,0.9,2.0}.rb: changed tests to check RSS
31721           Maker raises or not.
31723 Sun Nov 28 12:14:47 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
31725         * regparse.c (fetch_token): fixed test failure on HP-UX ia64
31726           ([ruby-dev:24859]).
31728 Sun Nov 28 12:08:15 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
31730         * regparse.c, test/ruby/test_regexp.rb: fixed problem with UTF-8
31731           characters that have U+00FE or invalid characters.
31733 Sun Nov 28 12:07:04 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
31735         * regexec.c, test/ruby/test_regexp.rb: fixed segmentation fault
31736           ([ruby-dev:24887]).
31738 Sun Nov 28 12:05:48 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
31740         * regcomp.c, regint.h: fixed PLATFORM_UNALIGNED_WORD_ACCESS
31741           problem ([ruby-dev:24802] and [ruby-core:3733])
31743 Sat Nov 27 23:43:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31745         * io.c (rb_io_initialize): [ruby-dev:24972]
31747 Sat Nov 27 21:43:39 2004  Tanaka Akira  <akr@m17n.org>
31749         * io.c: avoid data lost with nonblocking fd and
31750           stdio buffering in sync mode.  [ruby-dev:24966]
31751           based on matz's patch [ruby-dev:24967]
31752           (io_fwrite): new primitive writing function which writes
31753           directly if sync mode.
31754           (rb_io_fwrite): wrapper for io_fwrite now.
31755           (io_write): call io_fwrite instead of rb_io_fwrite.
31757 Sat Nov 27 17:43:21 2004  Kouhei Sutou  <kou@cozmixng.org>
31759         * lib/rss/{0.9,1.0,2.0,trackback,xml-stylesheet}.rb: added
31760           #setup_maker.
31762         * test/rss/test_setup_maker_*.rb: added tests for #setup_maker.
31764         * lib/rss/maker/base.rb(RSS::Maker::Items#max_size=): supported
31765           output item size limitation.
31767         * sample/rss/blend.rb: added sample for RSS Maker.
31769 Sat Nov 27 17:41:35 2004  Kouhei Sutou  <kou@cozmixng.org>
31771         * lib/rss/maker/0.9.rb: supported RSS::Maker.make("0.91"). Now,
31772           "0.9" is just alias of "0.91."
31774         * test/rss/test_maker_0.9.rb: make("0.9") -> maker("0.91").
31776         * test/rss/test_to_s.rb: ditto.
31778 Sat Nov 27 17:21:30 2004  Kouhei Sutou  <kou@cozmixng.org>
31780         * sample/rss/list_description.rb: untabified.
31782         * sample/rss/rss_recent.rb: ditto.
31784 Sat Nov 27 14:44:15 2004  Kent Sibilev  <ksibilev@bellsouth.net>
31786         * lib/cgi/session.rb (CGI::Session::initialize): [ruby-core:03832]
31788 Sat Nov 27 09:41:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31790         * io.c (io_fread): old rb_io_fread with file closing checking.
31791           (rb_io_fread): wrapper for io_fread now.
31792           [ruby-dev:24964]
31794 Fri Nov 26 18:02:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31796         * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epath
31798         * ext/tk/lib/tk/image.rb: bug fix
31800         * ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only)
31802         * ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath
31804 Fri Nov 26 14:29:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31806         * io.c (rb_io_initialize): uninitialized fd was checked to see open
31807           mode.  [ruby-dev:24963]
31809         * io.c (rb_io_initialize): uninitialized fd was used.  [ruby-dev:24962]
31811 Fri Nov 26 13:49:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31813         * io.c (rb_io_initialize): should retrieve flags from copying file
31814           descriptor. [ruby-dev:24961]
31816         * eval.c (method_missing): raise TypeError for classes do not
31817           have allocators.  [ruby-core:03752]
31819         * lib/erb.rb: add RDoc by James Edward Gray II.  [ruby-core:03786]
31821 Fri Nov 26 13:29:02 2004  Dave Thomas  <dave@pragprog.com>
31823         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::look_for_directives_in): Break
31824           out of preprocessing when we find a :section: directive (previously cleared out the
31825           comment, but this apparently now generates an error in gsub!)
31827 Fri Nov 26 00:17:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31829         * io.c (io_read): move StringValue() check before GetOpenFile().
31830           [ruby-dev:24959]
31832 Thu Nov 25 20:14:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31834         * lib/thwait.rb (ThreadsWait#join_nowait): abnormally terminated
31835           threads should be also processed.  [ruby-talk:121320]
31837 Thu Nov 25 18:06:37 2004  Tanaka Akira  <akr@m17n.org>
31839         * configure.in: AC_CHECK_SIZEOF(rlim_t) to include stdio.h to fix
31840           problem with autoconf 2.52 or earlier.
31841           revert AC_PREREQ to 2.50.
31842           [ruby-core:3809]
31844 Thu Nov 25 07:59:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31846         * configure.in: AC_PREREQ(2.53) [ruby-core:03800]
31848         * io.c (read_all): stringify non-nil buffer argument, and always
31849           taint the result.  [ruby-dev:24955]
31851 Wed Nov 24 01:01:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31853         * io.c (io_read): integer conversion should be prior to
31854           GetOpenFile().  [ruby-dev:24952]
31856         * configure.in, io.c: cancel [ ruby-Patches-1074 ].
31858 Tue Nov 23 08:09:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31860         * ext/tk/lib/tk/menu.rb: improve usability of TkOptionMenubutton
31862 Tue Nov 23 02:00:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31864         * file.c (rb_file_chown): integer conversion should be prior to
31865           GetOpenFile().  [ruby-dev:24949]
31867 Tue Nov 23 00:10:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31869         * file.c (rb_file_chown): integer conversion should be prior to
31870           GetOpenFile().  [ruby-dev:24947]
31872         * file.c (rb_file_truncate): ditto.
31874         * file.c (rb_file_s_truncate): ditto.
31876         * dir.c (dir_seek): use NUM2OFFT().
31878         * misc/ruby-mode.el (ruby-non-block-do-re): [ruby-core:03719]
31880 Mon Nov 22 22:33:02 2004  Dave Thomas  <dave@pragprog.com>
31882         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Don't use names
31883           of variables or constants when parsing 'require'
31885 Mon Nov 22 00:13:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31887         * dir.c (dir_seek): should retrieve dir_data after NUM2INT().
31888           [ruby-dev:24941]
31890 Sat Nov 20 23:57:33 2004  Dave Thomas  <dave@pragprog.com>
31892         * lib/rdoc/README (et al): Add a new directive, :section:, and
31893           change the output format to accommodate. :section: allows to to
31894           group together methods, attributes, constants, etc under
31895           headings in the output. If used, a table of contents is
31896           generated.
31898 Sat Nov 20 23:56:54 2004  Dave Thomas  <dave@pragprog.com>
31900         * lib/rdoc/options.rb (Options::parse): Force --inline-source if
31901           --one-file option given
31903 Sat Nov 20 23:55:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31905         * string.c (rb_str_splice): should place index wrapping after
31906           possible modification.  [ruby-dev:24940]
31908 Sat Nov 20 23:25:12 2004  Minero Aoki  <aamine@loveruby.net>
31910         * io.c (rb_io_getline): f.gets("") did not work. [ruby-core:03771]
31912         * test/ruby/test_io.rb (test_gets_rs): test it.
31914 Sat Nov 20 22:55:09 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31916         * test/runner.rb (CROSS_COMPILING): need to require rbconfig.rb before
31917           using CROSS_COMPILNG.
31919 Sat Nov 20 20:42:42 2004  Minero Aoki  <aamine@loveruby.net>
31921         * ext/ripper/depend: fix ripper.o dependency.
31923 Sat Nov 20 17:48:29 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31925         * io.c (io_reopen): work around problem with Cygwin fseeko
31926           returning ESPIPE.
31928 Sat Nov 20 05:34:24 2004  NARUSE, Yui  <naruse@ruby-lang.org>
31930         * ext/nkf/nkf-utf8/nkf.c: original nkf.c rev:1.40
31932         * ext/nkf/test.rb: add test for mime encode/decode
31934 Sat Nov 20 01:45:04 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31936         * test/xmlrpc/test_webrick_server.rb: move `requrie "webrick/https"'
31937           into #setup_http_server method to avoid soap test errors.
31939 Sat Nov 20 01:37:34 2004  Johan Holmberg  <holmberg@iar.se>
31941         * eval.c (error_print): nicer traceback at interrupt.
31942           [ruby-core:03774]
31944 Sat Nov 20 00:07:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
31946         * string.c (str_gsub): internal buffer should not be listed by
31947           ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]
31949 Fri Nov 19 22:44:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31951         * lib/test/unit/collector/dir.rb: better support for -p/-x option.
31953 Fri Nov 19 17:46:56 2004  Kouhei Sutou  <kou@cozmixng.org>
31955         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Image#have_required_values):
31956           changed /rss/channel/image to be optional. [ruby-Bugs:1047]
31958         * test/rss/test_maker_0.9.rb: added tests for the above.
31960 Fri Nov 19 17:18:17 2004  Kouhei Sutou  <kou@cozmixng.org>
31962         * lib/rss/rss.rb (RSS::VERSION): 0.1.0 -> 0.1.1.
31964         * lib/rss: #to_s used #tag.
31966         * test/rss/test_to_s.rb: added.
31968         * lib/rss/maker.rb (RSS::Maker.make): changed API. It's not
31969           received modules which is used as the second argument.
31971         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#alternate):
31972           changed return value type which is not String but Boolean.
31974         * lib/rss/2.0.rb (RSS::Rss::Channel#ttl): changed return value
31975           type which is not String but Integer.
31977         * lib/rss/0.9.rb (RSS::Rss::Channel): <skipDays> has <day>s and
31978           <skipHours> has <hour>s.
31980         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Channel): ditto.
31982         * lib/rss/0.9.rb (RSS::Rss::Channel::Item): <item> has <category>s.
31984         * lib/rss/maker/2.0.rb (RSS::Maker::Rss20::Channel::Item): ditto.
31986         * lib/rss/2.0.rb (RSS::Rss::Channel): <channel> has <category>s.
31988         * lib/rss/maker/2.0.rb (RSS::Maker::RSS20::Channel): ditto.
31990         * lib/rss/trackback.rb: parent element has <trackback:about>s.
31992         * lib/rss/maker/trackback.rb: ditto.
31994 Fri Nov 19 11:10:16 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
31996         * lib/test/unit/collector/dir.rb: add support for directory name
31997           with -p/-x options.
31999         * test/testunit/collector/test_dir.rb: ditto.
32001         * lib/xmlrpc/datetime.rb (XMLRPC::DateTime#==): should use Array()
32002           instead of to_a.
32004 Fri Nov 19 10:32:36 2004  Shugo Maeda  <shugo@ruby-lang.org>
32006         * ext/readline/readline.c (readline_s_set_completion_append_character):
32007           accept nil.  [ruby-core:03765]
32009 Fri Nov 19 01:20:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32011         * lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
32012           exception if data corresponding to session specified from the
32013           client does not exist.
32015 Fri Nov 19 00:59:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32017         * string.c (str_gsub): internal buffer should not be listed by
32018           ObjectSpace.each_object().  [ruby-dev:24919]
32020 Thu Nov 18 23:42:36 2004  Minero Aoki  <aamine@loveruby.net>
32022         * ext/ripper/depend: Never regenerate lib/ripper/core.rb
32023           automatically. [ruby-dev:24911]
32025 Thu Nov 18 20:47:24 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32027         * win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT's
32028           isatty because it never sets errno.
32030 Thu Nov 18 18:41:08 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
32032         * test/ruby/test_stringchar.rb (test_bang): added.
32034         * string.c (rb_str_upcase_bang, rb_str_capitalize_bang)
32035           (rb_str_swapcase_bang): missing rb_str_modify().
32037 Thu Nov 18 17:05:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32039         * parse.y (f_rest_arg): store rest args into invisible local variable
32040           in order to get rid of SEGV at ZSUPER.  [ruby-dev:24913]
32042 Thu Nov 18 15:39:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32044         * hash.c (rb_f_getenv): prohibit for $SAFE=4. [ruby-dev:24908]
32046 Thu Nov 18 14:58:42 2004  Shugo Maeda  <shugo@ruby-lang.org>
32048         * ext/readline/readline.c: check $SAFE.
32050         * test/readline/test_readline.rb: added tests for readline.
32052 Thu Nov 18 00:21:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32054         * process.c (proc_getpgrp): prohibit for $SAFE=2.
32055           [ruby-dev:24899]
32057         * process.c (get_pid): ditto.  [ruby-dev:24904]
32059         * process.c (get_ppid): ditto.
32061         * array.c (rb_ary_delete): defer rb_ary_modify() until actual
32062           modification.  [ruby-dev:24901]
32064 Thu Nov 18 10:10:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32066         * io.c, rubyio.h (rb_io_modenum_flags): exported.
32068         * ext/stringio/stringio.c (strio_initialize): allow Fixnum as mode as
32069           well as IO.new does.  [ruby-dev:24896]
32071 Wed Nov 17 23:47:30 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32073         * test/ruby/test_settracefunc.rb: added.  [ruby-dev:24884]
32075 Wed Nov 17 18:59:16 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
32077         * process.c (proc_getrlimit, proc_setrlimit): add rb_secure(2) to
32078           methods of Process.{getrlimit,setrlimit}
32080 Wed Nov 17 13:56:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32082         * parse.y (newline_node): should not use FL_SET. [ruby-dev:24874]
32084         * parse.y (string_content): should not use FL_UNSET.
32086         * node.h (NODE_NEWLINE): remove unused bit to utilize flag field
32087           in nodes.
32089 Wed Nov 17 13:05:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32091         * dir.c (rb_push_glob): fix overrun.  [ruby-dev:24886]
32093 Wed Nov 17 11:48:17 2004  Michael Neumann  <mneumann@ruby-lang.org>
32095         * lib/xmlrpc/parser.rb, test/xmlrpc/test_features.rb: fixed "assigning
32096           to constants" warnings
32098 Wed Nov 17 09:38:18 2004  Johan Holmberg  <holmberg@iar.se>
32100         * re.c (rb_reg_initialize_m): should raise exception instead of
32101           compile error.  [ruby-core:03755]
32103 Wed Nov 17 03:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32105         * string.c (rb_str_splice): move rb_str_modify() after
32106           StringValue(), which may alter the receiver.  [ruby-dev:24878]
32108         * error.c (rb_error_frozen): now raise RuntimeError instead of
32109           TypeError.
32111 Tue Nov 16 21:22:47 2004  Michael Neumann  <mneumann@ruby-lang.org>
32113         * lib/xmlrpc/server.rb (CGIServer): fixed bug when client sends
32114           "Content-typ: text/xml; ..."
32116 Tue Nov 16 23:45:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32118         * numeric.c (flo_divmod): protect float values from GC by
32119           assignment to local variables.  [ruby-dev:24873]
32121 Tue Nov 16 14:31:54 2004  Michael Neumann  <mneumann@ruby-lang.org>
32123         * test/xmlrpc/*: imported and refactored original test cases.
32125         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
32126           added test case that starts up a WEBrick XML-RPC server and performs
32127           some tests on it (both http and https servers are started).
32129         * lib/xmlrpc/create.rb (XMLWriter::each_installed_writer),
32130           lib/xmlrpc/parser.rb (XMLParser::each_installed_parser):
32131           added methods to simply original test cases
32133         * lib/xmlrpc/parser.rb, lib/xmlrpc/datetime.rb: applied patch by
32134           MoonWolf <moonwolf@moonwolf.com> to allow parsing datetime.iso8601
32135           (e.g. 20041105T01:15:23Z).
32137         * lib/xmlrpc/server.rb: fixed issue #998
32138           (http://rubyforge.org/tracker/?func=detail&atid=1700&aid=998&group_id=426)
32140         * lib/xmlrpc/create.rb, lib/xmlrpc/utils.rb: when marshalling/loading
32141           user-defined data structures, use Class#allocate instead of defining
32142           an empty #initialize method. module XMLRPC::Marshallable is now only
32143           used for tagging.
32145         * lib/xmlrpc/.document, lib/xmlrpc/README.rdoc: added howto
32147 Tue Nov 16 16:26:12 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32149         * {bcc32,win32,wince}/setup.mak (-epilogue-): remove config.h and
32150           config.status to force updating them.
32152 Tue Nov 16 16:20:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32154         * ext/stringio/stringio.c (strio_read): position was ignored when a
32155           buffer was passed.  http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03
32157 Tue Nov 16 13:35:54 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32159         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): add
32160           new option --exclude (-x) to skip some tests. [ruby-core:3363],
32161           [ruby-dev:24865]
32163         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir.exclude):
32164           ditto.
32166 Tue Nov 16 11:19:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32168         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): use
32169           Regexp conversion.
32171 Tue Nov 16 01:41:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32173         * string.c (str_mod_check): frozen check should be separated.
32174           [ruby-core:3742]
32176         * array.c (rb_ary_update): pedantic check to detect
32177           rb_ary_to_ary() to modify the receiver.  [ruby-dev:24861]
32179 Mon Nov 15 18:58:05 2004  Tanaka Akira  <akr@m17n.org>
32181         * configure.in: check rlim_t more portably. [ruby-core:3735]
32183 Mon Nov 15 11:50:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32185         * misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle
32186           operator symbols.  [ruby-talk:120177]
32188 Mon Nov 15 08:58:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32190         * eval.c (Init_Proc): make proc as an alias to Proc.new.
32191           [ruby-dev:24848]
32193 Mon Nov 15 00:46:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32195         * eval.c (rb_yield_0): lambda{}.call(1) should raise exception.
32196           [ruby-talk:120253]
32198 Mon Nov 15 00:33:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32200         * string.c (rb_str_clear): avoid revealing NULL pointer.
32201           [ruby-dev:24766]
32203         * string.c (str_gsub): add paranoid check. [ruby-dev:24827]
32205         * string.c (str_mod_check): check frozen status as well.
32206           [ruby-dev:24801]
32208 Sun Nov 14 18:59:03 2004  Tanaka Akira  <akr@m17n.org>
32210         * process.c (proc_getrlimit): new function for Process.getrlimit.
32211           (proc_setrlimit): new function for Process.setrlimit.
32212           [ruby-dev:24834]
32214         * configure.in: check rlim_t and its size.  check setrlimit.
32216         * ruby.h (NUM2ULL): new macro.
32218 Sun Nov 14 13:27:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32220         * lib/pp.rb (PP#object_address_group): remove odd number of 'f'
32221           prefixed to negative address.
32223 Sun Nov 14 10:48:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32225         * lib/mathn.rb (Integer::gcd2): faster implementation by
32226           <erlercw@siu.edu>. [ruby-talk:120232]
32228 Sun Nov 14 08:46:33 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32230         * test/logger/test_logger.rb: Logger just expects
32231           Logger#datetime_format to be used for Time#strftime independently of
32232           locale. [ruby-dev:24828]
32234 Fri Nov 12 17:32:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32236         * bcc32/README.bcc32, win32/README.win32: need bison instead of
32237           byacc.
32239 Fri Nov 12 15:15:06 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32241         * eval.c (ruby_options): now we cannot call rb_glob() before
32242           ruby_init(), so call rb_w32_cmdvector() at ruby_options().
32244         * win32/win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
32245           export it.
32247 Fri Nov 12 14:08:01 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32249         * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES trick
32251         * ext/tk/lib/tk.rb: ditto
32253 Fri Nov 12 00:31:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32255         * ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter string
32256           pointer.  [ruby-dev:24783]
32258 Thu Nov 11 17:58:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32260         * dir.c (rb_glob): should have called rb_glob_caller().
32261           [ruby-dev:24773]
32263 Thu Nov 11 16:56:10 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32265         * test/ruby/test_file.rb (test_truncate_wbuf): we want to test
32266           only File#truncate, not behavior of seek(2).
32268 Thu Nov 11 01:52:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32270         * error.c (syserr_initialize): use stringified object.
32271           [ruby-dev:24768]
32273 Wed Nov 10 22:49:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32275         * lib/delegate.rb (SimpleDelegator::dup): wrong number of
32276           arguments.
32278         * lib/delegate.rb (DelegateClass::dup): ditto.
32280 Wed Nov 10 19:47:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32282         * dir.c (glob_helper): path is a string object now.
32284 Wed Nov 10 12:31:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32286         * README.EXT (Example): extconf.rb is indispensable now.
32288 Wed Nov 10 03:33:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32290         * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x
32291           or older
32293         * ext/tk/lib/tkextlib/tile/style.rb: bug fix
32295 Tue Nov  9 22:24:07 2004  NARUSE, Yui  <naruse@ruby-lang.org>
32297         * ext/nkf: original nkf.c rev:1.38
32299         * ext/nkf/nkf.c: fix bug: can't parse long-name options
32301         * ext/nkf/test.rb: fix bug: mime tests fail
32303 Tue Nov  9 14:27:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32305         * lib/optparse.rb (OptionParser::Officious): moved from DefaultList.
32307 Tue Nov  9 00:50:06 2004  Dave Thomas  <dave@pragprog.com>
32309         * lib/rdoc/rdoc.rb: Change version numbering of RDoc and ri
32311 Tue Nov  9 01:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32313         * dir.c (rb_glob2): do not allocate buffer from heap to avoid
32314           memory leaks.  use string object for buffering instead.
32315           [ruby-dev:24738]
32317         * dir.c (join_path): ditto.
32319         * io.c (io_read): external input buffer may be modified even after
32320           rb_str_locktmp().  [ruby-dev:24735]
32322         * dir.c (fnmatch): p or s may be NULL.  [ruby-dev:24749]
32324 Tue Nov  9 00:36:26 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
32326         * lib/drb/extservm.rb: add DRb::ExtServManager#uri=.
32327           [ruby-dev:24743]
32329 Mon Nov  8 22:20:19 2004  Dave Thomas  <dave@pragprog.com>
32331         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
32332           Fix bug where parent class wasn't being detected if the
32333           child class was defined using the A::B notation.
32335 Mon Nov  8 00:14:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32337         * configure.in: add setup for mignw32 cross compiling.
32338           [ruby-talk:119413]
32340 Sun Nov  7 23:49:26 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32342         * ext/tk/lib/tk.rb: bind-event methods accept multi substitution
32343           arguments.
32345         * ext/tk/lib/tk/canvas.rb: ditto.
32347         * ext/tk/lib/tk/canvastag.rb: ditto.
32349         * ext/tk/lib/tk/text.rb: ditto.
32351         * ext/tk/lib/tk/texttag.rb: ditto.
32353         * ext/tk/lib/tkextlib: ditto.
32355 Sat Nov  6 20:40:16 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32357         * ext/win32ole/win32ole.c: rename WIN32OLE#ole_obj_help to
32358           WIN32OLE#ole_type. alias ole_obj_help to ole_type.
32360         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
32362 Sat Nov  6 11:18:59 2004  Tadayoshi Funaba  <tadf@dotrb.org>
32364         * lib/date.rb (_parse): checks whether zone was given.
32366 Sat Nov  6 00:46:27 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32368         * string.c (rb_str_locktmp): check STR_TMPLOCK flag before
32369           locking.  [ruby-dev:24727]
32371 Fri Nov  5 19:07:16 2004  NARUSE, Yui  <naruse@ruby-lang.org>
32373         * ext/nkf: follow CVS Head of original nkf.
32375 Fri Nov  5 18:12:42 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32377         * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into
32378           X_Scrollable and Y_Scrollable
32380         * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable
32382         * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and
32383           Y_Scrollable
32385 Fri Nov  5 16:05:32 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32387         * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
32389 Fri Nov  5 13:22:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32391         * ext/tk/lib/tk/text.rb: sorry. bug fix again.
32393 Fri Nov  5 13:17:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32395         * ext/tk/lib/tk/text.rb: bug fix
32397 Fri Nov  5 08:52:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32399         * gc.c (gc_mark): stricter GC stack check.
32401 Fri Nov  5 08:34:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32403         * string.c (str_gsub): should have removed rb_str_unlocktmp(str).
32404           [ruby-dev:24708]
32406         * ext/socket/socket.c (s_recvfrom): buffer modification check.
32407           [ruby-dev:24708]
32409 Thu Nov  4 23:54:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
32411         * regexec.c, regparse.c, regint.h: fixed conflicts between
32412           vendor branch.
32414 Thu Nov  4 23:41:55 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
32416         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
32417           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c,
32418           regint.h, regparse.c, regparse.h, sjis.c, utf8.c:
32419           imported Oni Guruma 3.4.0.
32421         * parse.y, re.c: Now mbclen() takes unsigned char as
32422           its argument.
32424 Thu Nov  4 21:25:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32426         * string.c (str_gsub): string modify check no longer based on
32427           tmplock.  [ruby-dev:24706]
32429 Thu Nov  4 21:13:48 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32431         * ext/win32ole/win32ole.c(typelib_file_from_typelib): search "win16"
32432           entry to get library path.
32434         * ext/win32ole/win32ole.c(oletypelib_path): ditto.
32436         * ext/win32ole/win32ole.c(ole_typedesc2val): add VT_LPWSTR, VT_LPSTR,
32437           VT_ERROR case.
32439 Thu Nov  4 15:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32441         * ext/tk/lib/tk/variable.rb: forget to initialize instance_variables
32442           of TkVarAccess objects
32444 Thu Nov  4 09:11:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32446         * gc.c (gc_mark): enable GC stack checking.
32448 Thu Nov  4 03:11:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32450         * string.c (str_gsub): lock strings temporarily.  [ruby-dev:24687]
32452         * ext/socket/socket.c (s_recvfrom): tmplock input buffer.
32453           [ruby-dev:24705]
32455 Wed Nov  3 22:24:17 2004  Daigo Moriwaki  <techml@sgtpepper.net>
32457         * lib/webrick/httpauth/digestauth.rb: use Base64.encode64 to
32458           avoid warnings.
32460 Wed Nov  3 17:19:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32462         * array.c (rb_ary_uniq_bang): do not push frozen string from hash
32463           table.  [ruby-dev:24695]
32465         * array.c (rb_ary_and): ditto.
32467         * array.c (rb_ary_or): ditto.
32469 Wed Nov  3 17:02:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32471         * ext/tk/lib/tk.rb: support to use different Tcl commands between
32472           configure and configinfo
32474         * ext/tk/lib/font.rb: ditto.
32476         * ext/tk/lib/itemconfig.rb: support to use different Tcl commands
32477           between item_configure and item_configinfo
32479         * ext/tk/lib/itemfont.rb: ditto.
32481         * ext/tk/extconf.rb: install SUPPORT_STATUS
32483         * ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib)
32485 Wed Nov  3 15:38:28 2004  Kouhei Sutou  <kou@cozmixng.org>
32487         * test/rss/*.rb: removed tab width configuration headers.
32489         * test/rss/test_maker_{0.9,1.0}.rb: sort -> do_sort.
32491         * lib/rss/maker/*.rb: changed API to RSS version independence.
32493         * lib/rss/maker/base.rb
32494           (RSS::Maker::XMLStyleSheets::XMLStyleSheet): checked required
32495           (pseudo) attributes.
32497         * lib/rss/maker/base.rb (RSS::Maker::Items): sort -> do_sort.
32499         * lib/rss/rss.rb (RSS::BaseModel.install_date_element): avoided
32500           warning.
32502         * lib/rss/0.9.rb (RSS::Rss#textinput): added convenience method.
32504 Tue Nov  2 16:35:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32506         * ext/enumerator/enumerator.c (each_cons_i): pass copy of an
32507           internal consequent array.  [ruby-talk:118691]
32509 Tue Nov  2 14:54:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32511         * io.c (pipe_open): need to set cmd if argc == 0 (win32).
32513 Tue Nov  2 01:20:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32515         * io.c (pipe_open): IO.popen should take array as 1st argument for
32516           a command line.  [ruby-dev:24678]
32518         * eval.c (proc_invoke): nail down dyna_var node when Proc object
32519           or continuation is created.  [ruby-dev:24671]
32521         * io.c (rb_io_s_popen): do not expand argv array.  [ruby-dev:24670]
32523 Mon Nov  1 22:25:56 2004  Kouhei Sutou  <kou@cozmixng.org>
32525         * lib/rss/maker/base.rb: changed xml-stylesheet's API of RSS Maker
32526           like to item's one.
32528         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#guess_type): fixed
32529           regular expression bug.
32531         * test/rss/test_maker_xml-stylesheet.rb: updated tests for
32532           xml-stylesheet.
32534 Mon Nov  1 13:59:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32536         * ext/extmk.rb (MANIFEST): do not use anymore, use extconf.rb instead.
32538         * ext/enumerator/extconf.rb, ext/fcntl/extconf.rb,
32539           ext/stringio/extconf.rb: added.
32541         * MANIFEST, ext/**/MANIFEST: removed.
32543         * README.EXT, README.EXT.ja: remove MANIFEST stuff.
32545 Mon Nov  1 11:52:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32547         * io.c (pipe_open): avoid conflict of variable name. [ruby-dev:24662]
32549 Mon Nov  1 11:46:19 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32551         * process.c (rb_f_exec): should check whether prog is NULL.
32553 Mon Nov  1 09:37:19 2004  Kouhei Sutou  <kou@cozmixng.org>
32555         * lib/rss/maker.rb: added entry point of RSS Maker.
32557 Mon Nov  1 03:14:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32559         * eval.c (rb_get_method_body): store ICLASS in the cache.
32560           [ruby-core:03672]
32562         * eval.c (rb_provided): should return true for loading library
32563           too for autoloading.  [ruby-core:03655]
32565 Mon Nov  1 01:14:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32567         * io.c (rb_f_open): create copy of popen specifier.  [ruby-dev:24656]
32569         * string.c (rb_str_locktmp): lock string temporarily.
32571         * string.c (str_independent): add tmplock check.
32573         * io.c (io_write): lock output string temporarily.
32574           [ruby-dev:24649]
32576         * io.c (io_write): use rb_str_locktmp().
32578         * io.c (read_all): ditto.
32580 Sun Oct 31 23:37:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
32582         * process.c: on NetBSD don't use setruid() and setrgid().
32584 Sun Oct 31 23:12:10 2004  Kouhei Sutou  <kou@cozmixng.org>
32586         * lib/rss/maker/*.rb: added RSS Maker.
32588         * test/rss/test_maker_*.rb: added tests for RSS Maker.
32590 Sun Oct 31 16:58:12 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32592         * ext/win32ole/win32ole.c: add WIN32OLE.codepage, WIN32OLE.codepage=.
32594         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
32596 Sun Oct 31 14:35:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32598         * ext/nkf/nkf-utf8/nkf.c: add "\075?UTF-8?Q?" for Gmail.
32600 Sun Oct 31 14:18:56 2004  Minero Aoki  <aamine@loveruby.net>
32602         * parse.y [ripper]: emit lexer-event values to the parser
32603           (still incomplete).
32605 Sat Oct 30 15:24:41 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32607         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB class. add
32608           WIN32OLE#ole_typelib method.
32610         * ext/win32ole/tests/testOLETYPELIB.rb: add WIN32OLE_TYPELIB class.
32612 Sat Oct 30 06:53:24 2004  Peter Vanbroekhoven  <peter.vanbroekhoven@cs.kuleuven.ac.be>
32614         * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
32616 Sat Oct 30 00:19:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32618         * array.c (rb_ary_update): a[n,m]=nil no longer works as element
32619           deletion.
32621         * enum.c (enum_sort_by): protect continuation jump in.
32622           [ruby-dev:24642]
32624         * eval.c (rb_eval), gc.c (gc_mark_children), node.h (NEW_ALIAS,
32625           NEW_VALIAS), parse.y (fitem): allow dynamic symbols to
32626           NODE_UNDEF and NODE_ALIAS.
32628 Fri Oct 29 21:27:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32630         * io.c (rb_io_check_initialized): new function to check uninitialized
32631           object.  [ruby-talk:118234]
32633         * file.c (rb_file_path), io.c (rb_io_closed): check if initialized.
32635 Fri Oct 29 19:05:33 2004  NARUSE, Yui  <naruse@ruby-lang.org>
32637         * ext/nkf: follow nkf2.0.
32639 Fri Oct 29 17:18:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
32641         * parse.y (ripper_s_allocate): add prototype for Microsoft compiler.
32643         * range.c (range_step, range_each): need cast.
32645 Fri Oct 29 16:34:19 2004  Daiki Ueno  <ueno@unixuser.org>
32647         * misc/ruby-mode.el (ruby-parse-partial): Parse the rest of the
32648           line after opening heredoc identifier.  [ruby-dev:24635]
32650 Fri Oct 29 11:35:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32652         * parse.y (rb_parser_append_print, rb_parser_while_loop): body node
32653           can be empty.  [ruby-dev:24628]
32655 Fri Oct 29 10:00:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32657         * eval.c (rb_thread_start_0): forget to free some memory chunks.
32658           [ruby-core:03611]
32660         * eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
32661           should be wrapped by PUSH_TAG/POP_TAG().  [ruby-dev:24627]
32663 Thu Oct 28 08:42:02 2004  Tanaka Akira  <akr@m17n.org>
32665         * io.c (argf_forward): use ANSI style.
32666           (argf_read): call argf_forward with argv argument.
32667           [ruby-dev:24624]
32669 Wed Oct 27 09:17:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32671         * string.c (str_gsub): use a string object for exception safeness.
32672           [ruby-dev:24601]
32674 Wed Oct 27 07:38:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32676         * node.h (NODE_TYPESHIFT): allow 4 more bits for line numbers.
32677           [ruby-talk:117841]
32679         * ruby.h (FL_ABLE): nodes are not subject for flag operations.
32681         * io.c (ARGF_FORWARD): should have specified argv explicitly,
32682           since we no longer have frame->argv saved.  [ruby-dev:24602]
32684 Tue Oct 26 23:30:39 2004  Dave Thomas  <dave@pragprog.com>
32686         * lib/rdoc/code_objects.rb (RDoc::Context::add_class_or_module):
32687           Restore correct :nopdoc: behavior with nested classes and modules.
32689 Tue Oct 26 18:21:29 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32691         * string.c (RESIZE_CAPA): check string attribute before modifying
32692           capacity member of string structure.  [ruby-dev:24594]
32694 Tue Oct 26 11:33:26 2004  David G. Andersen  <dga@lcs.mit.edu>
32696         * ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
32697           performance.  [ruby-talk:117701]
32699 Tue Oct 26 10:56:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32701         * sprintf.c (rb_f_sprintf): raise ArgumentError for extra
32702           arguments, unless (digit)$ style used.
32704 Mon Oct 25 18:35:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32706         * win32/win32.c (isUNCRoot): should check NUL after '.'.
32707           [ruby-dev:24590]
32709         * win32/win32.c (isUNCRoot): fixed buffer overrun.
32711 Mon Oct 25 08:03:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32713         * eval.c (get_backtrace): ignore illegal backtrace.  [ruby-dev:24587]
32715 Sun Oct 24 00:40:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32717         * eval.c (rb_load, search_required, rb_require_safe, rb_require): use
32718           frozen shared string to avoid outside modification.  [ruby-dev:24580]
32720 Sat Oct 23 23:40:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32722         * io.c (rb_io_fptr_finalize): leave stdin/stdout/stderr open in
32723           interpreter termination.  [ruby-dev:24579]
32725 Sat Oct 23 22:18:32 2004  Guy Decoux  <ts@moulon.inra.fr>
32727         * eval.c (frame_free): Guy Decoux solved the leak problem.
32728           Thanks.  [ruby-core:03549]
32730 Sat Oct 23 00:20:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32732         * ext/zlib/zlib.c (zstream_append_input): clear klass for z->input
32733           to avoid potential vulnerability.
32735         * ext/zlib/zlib.c (zstream_run): always use zstream_append_input()
32736           to avoid SEGV.  [ruby-dev:24568]
32738 Fri Oct 22 12:02:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32740         * eval.c (rb_alias): was warning for wrong condition.
32741           [ruby-dev:24565]
32743 Fri Oct 22 10:36:37 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32745         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#meta_vars):
32746           should check if path_info is not nil.
32748 Fri Oct 22 00:22:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32750         * ext/zlib/zlib.c (zstream_shift_buffer): should restore class
32751           field of a buffer.  [ruby-dev:24562]
32753 Fri Oct 22 00:20:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32755         * string.c (rb_str_include): should not treat char as negative value.
32756           [ruby-dev:24558]
32758 Thu Oct 21 21:32:30 2004  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
32760         * lib/pstore.rb (PStore#transaction): Use the empty content when a
32761           file is not found.  [ruby-dev:24561]
32763 Thu Oct 21 19:06:15 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32765         * lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
32766           ensure to close @body. (http://bugs.debian.org/277520)
32768 Thu Oct 21 13:11:31 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32770         * io.c (pipe_open): variable name "fpw" is conflicted.
32772 Thu Oct 21 00:36:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32774         * eval.c (rb_alias): should warn on method discarding.
32775           [ruby-dev:24546]
32777         * ext/zlib/zlib.c (zstream_expand_buffer_into): hide internal
32778           string buffer by clearing klass.  [ruby-dev:24548]
32780         * parse.y (lex_getline): should not touch ruby_debug_lines if
32781           RIPPER is defined.  [ruby-dev:24547]
32783 Wed Oct 20 19:45:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32785         * string.c (str_gsub):  reentrant check.  [ruby-dev:24432]
32787 Wed Oct 20 12:42:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32789         * io.c (rb_io_getline): rs modification check should not interfere
32790           in the loop.
32792 Wed Oct 20 10:31:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32794         * parse.y (lex_getline): should update ruby_debug_lines.
32796 Wed Oct 20 04:17:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32798         * ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element
32799           is a string.  [ruby-dev:24490]
32801         * ext/sdbm/init.c (fsdbm_delete_if): ditto.
32803 Wed Oct 20 01:37:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32805         * array.c (rb_ary_times): Array#* should return an instance of
32806           the class of right operand.  [ruby-dev:24526]
32808         * ext/zlib/zlib.c (zstream_detach_buffer): should not expose
32809           class-less object to Ruby world. [ruby-dev:24530]
32811         * eval.c (proc_dup): provide Proc#dup as well.  [ruby-talk:116915]
32813         * eval.c (ruby_exec): stack marking position may be higher than
32814           expected.  thanks to Guy Decoux.  [ruby-core:03527]
32816 Wed Oct 20 00:25:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32818         * eval.c (search_required): required name must not be changed before
32819           loading.  [ruby-dev:24492]
32821 Tue Oct 19 23:59:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32823         * eval.c (rb_require_safe): provide the feature after loaded.
32824           [ruby-list:40085]
32826 Tue Oct 19 22:43:12 2004  Dave Thomas  <dave@pragprog.com>
32828         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_attr): If
32829           we come across 'attr' in a context where it isn't
32830           followed by a symbol, just issue a warning.
32832 Tue Oct 19 20:32:50 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32834         * ext/win32ole.c(ole_invoke): retrieve the result value when
32835           retrying the IDispatch::invoke.
32837 Tue Oct 19 17:24:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32839         * io.c (read_all): block string buffer modification during
32840           rb_io_fread() by freezing it temporarily. [ruby-dev:24479]
32842         * dir.c (rb_push_glob): block call at once the end of method.
32843           [ruby-dev:24487]
32845         * ext/enumerator/enumerator.c (enum_each_slice): remove
32846           rb_gc_force_recycle() to prevent potential SEGV.
32847           [ruby-dev:24499]
32849         * ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
32850           buffer by clearing klass.  [ruby-dev:24510]
32852 Tue Oct 19 08:47:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32854         * string.c (rb_str_upto): method result must be checked.  [ruby-dev:24504]
32856         * eval.c (error_print): ditto.  [ruby-dev:24519]
32858 Mon Oct 18 23:37:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32860         * marshal.c (r_object0): check inheritance by the internal function.
32861           [ruby-dev:24515]
32863 Mon Oct 18 11:29:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32865         * io.c (rb_io_flags_mode, rb_io_mode_flags): distinguish whether file
32866           not existing is created.  [ruby-dev:24505]
32868 Mon Oct 18 07:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32870         * file.c (rb_file_truncate): discard read buffer before truncation.
32871           [ruby-dev:24197]
32873 Mon Oct 18 01:56:03 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32875         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#initialize):
32876           initial value of accpet-* should be array.
32878 Mon Oct 18 00:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32880         * ext/socket/socket.c (sock_s_getservbyaname): protocol string
32881           might be altered.  [ruby-dev:24503]
32883         * string.c (rb_str_upto): check if return value from succ is a
32884           string.  [ruby-dev:24504]
32886 Sun Oct 17 23:03:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32888         * ext/tk/lib/tk/timer.rb: TkTimer#start and restart accept a block
32890 Sun Oct 17 12:53:46 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32892         * ext/win32ole/win32ole.c (fole_func_methods): correct argument mismatch.
32893         * ext/win32ole/win32ole.c (fole_get_methods): ditto.
32894         * ext/win32ole/win32ole.c (fole_put_methods): ditto.
32895         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE#ole_func_methods
32896           WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods
32898 Sat Oct 16 14:45:28 2004  Kouhei Sutou  <kou@cozmixng.org>
32900         * lib/rss/0.9.rb (RSS::Rss#to_s): removed garbage.
32902 Sat Oct 16 13:42:49 2004  Kouhei Sutou  <kou@cozmixng.org>
32904         * lib/rss/: untabified.
32905         * test/rss/: untabified.
32906         * lib/rss/0.9.rb (RSS::Rss#to_s): inent -> indent.
32908 Sat Oct 16 13:34:56 2004  Kouhei Sutou  <kou@cozmixng.org>
32910         * lib/rss: supported prety print.
32911         * test/rss/test_1.0.rb: added test for calculating default indent size.
32913 Sat Oct 16 10:56:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32915         * lib/mkmf.rb (create_makefile): install-rb is needed for statically
32916           linked extensions.  [ruby-dev:24491]
32918 Fri Oct 15 18:07:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32920         * ext/openssl/ossl_x509store.c
32921           (ossl_x509stctx_initialize): setup OpenSSL::X509::StoreContext with
32922           ossl_x509stctx_* functions instead of X509_STORE_CTX_*.
32923           (ossl_x509store_set_time): add OpenSSL::X509::Store#time=.
32924           (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=.
32926         * test/openssl/ossl_x509store.rb: test certificate validity times.
32928 Fri Oct 15 18:04:35 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32930         * ext/tk/lib/tk/timer.rb: TkTimer.new(interval, loop){ ... } is
32931           acceptable. Add TkTimer.start ( == new + start ).
32933 Fri Oct 15 12:43:09 2004  Tanaka Akira  <akr@m17n.org>
32935         * eval.c (Init_stack): make prototype declaration consistent with
32936           the definition in gc.c.
32938 Thu Oct 14 13:33:59 2004  Kouhei Sutou  <kou@cozmixng.org>
32940         * lib/rss/rss.rb: added link to Tutorial.
32942 Tue Oct 12 21:22:50 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32944         * lib/webrick/config.rb:
32945           add WEBrick::Config::FileHandler[:AcceptableLanguages].
32947         * lib/webrick/httpservlet/filehandler.rb
32948           (WEBrick::HTTPServlet::FileHandler#set_filename): search files
32949           having suffix of language-name which Accept-Language header field
32950           includes if :AcceptableLanguages options is present.
32952         * lib/webrick/httpservlet/filehandler.rb
32953           (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to
32954           search servlet correspond to the suffix of filename.
32956         * lib/webrick/httprequest.rb: add attributes access methods: accept,
32957           accept_charset, accept_encoding, accept_language, content_length
32958           and content_type.
32960         * lib/webrick/httpresponse.rb: add attribute access methods:
32961           content_length, content_length=, content_type and content_type=.
32963         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types):
32964           use the second suffix to detect media type. (the first suffix
32965           may be a language name.)
32967         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues):
32968           add method to parse Accept header field. it returns an Array of
32969           values sorted by the qvalues.
32971 Tue Oct 12 15:05:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
32973         * io.c (MODE_BINMODE, MODE_BINARY): fixed reversed condition.
32975 Mon Oct 11 17:51:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
32977         * io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
32978           avoid mode string modification.  [ruby-dev:24454]
32980         * io.c (rb_io_getline_fast): should take delim as unsigned char to
32981           distinguish EOF and '\377'.  [ruby-dev:24460]
32983         * io.c (rb_io_getline): add check for RS modification.
32984           [ruby-dev:24461]
32986         * enum.c (enum_sort_by): use qsort() directly instead using
32987           rb_iterate().  [ruby-dev:24462]
32989         * enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
32990           prevent access to recycled object (via continuation for
32991           example).  [ruby-dev:24463]
32993 Mon Oct 11 13:48:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32995         * ext/tk/lib/tk/*: untabify
32997 Sun Oct 10 12:32:08 2004  Dave Thomas  <dave@pragprog.com>
32999         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Allow 'require'
33000           to be used as a variable name
33002 Sun Oct 10 02:49:14 2004  Minero Aoki  <aamine@loveruby.net>
33004         * ext/ripper/lib/ripper/filter.rb: require ripper/tokenizer.
33006         * ext/ripper/lib/ripper/filter.rb (parse): argument is optional.
33008 Sun Oct 10 02:43:13 2004  Minero Aoki  <aamine@loveruby.net>
33010         * parse.y [ripper]: \n between two comments disappeared.
33012 Sat Oct  9 21:23:37 2004  Kouhei Sutou  <kou@cozmixng.org>
33014         * lib/rss/converter.rb: changed to try to use Iconv for default
33015           conversion.
33017         * lib/rss/rss.rb: 0.0.9 -> 0.1.0.
33019 Sat Oct  9 19:50:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33021         * io.c (rb_io_getline): should not treat char as negative value.
33022           [ruby-dev:24460]
33024 Sat Oct  9 00:25:39 2004  Tanaka Akira  <akr@m17n.org>
33026         * io.c (rb_io_fread): rb_thread_wait_fd() was lost.
33027           [ruby-dev:24457]
33029 Fri Oct  8 21:36:56 2004  Minero Aoki  <aamine@loveruby.net>
33031         * lib/fileutils.rb (fu_traverse): return value of Dir.entries is
33032           reliable. (pass $SAFE=1)
33034         * lib/fileutils.rb (remove_dir): return value of Dir.foreach is
33035           reliable. (pass $SAFE=1)
33037 Fri Oct  8 09:49:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33039         * pack.c (pack_pack): pointer modification check before each
33040           iteration.  [ruby-dev:24445]
33042 Fri Oct  8 01:13:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33044         * ext/tk/lib/tk/optiondb.rb: make it more secure
33046 Thu Oct  7 23:47:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33048         * ext/tk/lib/tk/scrollbar.rb: When 'set' operation, a scrollbar
33049           cannot propagate view port information from the source widget
33050           (that calls 'set') to other assigned widgets.
33052 Thu Oct  7 17:36:25 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33054         * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns
33055           a Fixnum for 2nd element (it's pid) of the return value.
33057 Thu Oct  7 12:55:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33059         * io.c (io_read): should freeze buffer before thread context
33060           switch. [ruby-dev:24442]
33062         * pack.c (pack_unpack): string conversion should at the top of the
33063           method.  [ruby-dev:24439]
33065         * io.c (io_read): buffer should be frozen only after the length
33066           check.  [ruby-dev:24440]
33068 Thu Oct  7 02:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33070         * ext/stringio/stringio.c: use FMODE_APPEND.
33072 Thu Oct  7 01:05:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33074         * ext/tk/lib/tk.rb: add Tk.errorInfo and Tk.errorCode
33076 Thu Oct  7 00:08:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33078         * io.c (rb_io_s_sysopen): preserve path in the buffer allocated by
33079           ALLOCA_N() to prevent modification.  [ruby-dev:24438]
33081 Wed Oct  6 09:21:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33083         * io.c (rb_io_mode_flags): preserve append mode flag.
33084           [ruby-dev:24436]
33086         * io.c (rb_io_modenum_mode): do not use external output buffer.
33088         * string.c (rb_str_justify): differ pointer retrieval to prevent
33089           padding string modification.  [ruby-dev:24434]
33091         * range.c (range_each_func): allow func to terminate loop by
33092           returning RANGE_EACH_BREAK.
33094         * range.c (member_i): use RANGE_EACH_BREAK. [ruby-talk:114959]
33096 Tue Oct  5 09:53:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33098         * io.c (rb_fopen): mode string copy at the lowest level.
33100         * io.c (rb_io_flags_mode): requires output buffer no more.  no
33101           allocation needed.
33103         * array.c (rb_ary_index): takes a block to compare items in an
33104           array.  [ruby-talk:113069] [Ruby2]
33106         * array.c (rb_ary_rindex): ditto.
33108 Mon Oct  4 14:03:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33110         * io.c (rb_file_open_internal, rb_io_reopen): fname might be altered
33111           while GC.  [ruby-dev:24408]
33113 Mon Oct  4 12:53:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33115         * ext/tk/lib/tk/optiondb.rb: support definition of command
33116           resources on widgets
33118         * ext/tk/lib/tk/image.rb: bug fix
33120 Sun Oct  3 21:16:05 2004  Shugo Maeda  <shugo@ruby-lang.org>
33122         * lib/net/imap.rb (TEXT_REGEXP): allow 8-bit characters for the german
33123           version of Microsoft Exchange Server.
33125         * lib/net/imap.rb (RTEXT_REGEXP): ditto.
33127         * lib/net/imap.rb (CTEXT_REGEXP): ditto.
33129 Sat Oct  2 20:34:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33131         * parse.y (local_vars): moved to struct parser_params.
33132           [ruby-dev:24391]
33134         * parser.y (stmts): remove suspicious NODE_BEGIN.  [ruby-dev:24390]
33136         * node.h (NEW_DVAR): extra semicolon.
33138 Sat Oct  2 00:42:20 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33140         * marshal.c (r_byte): retrieve pointer from string value for each
33141           time.  [ruby-dev:24404]
33143         * marshal.c (r_bytes0): ditto.
33145         * enum.c (sort_by_i): re-entrance check added.  [ruby-dev:24399]
33147         * io.c (io_read): should freeze all reading buffer.
33148           [ruby-dev:24400]
33150         * string.c (rb_str_sum): should use bignums when bits is greater
33151           than or equals to sizeof(long)*CHAR_BITS. [ruby-dev:24395]
33153         * eval.c (specific_eval): defer pointer retrieval to prevent
33154           unsafe sourcefile string modification.  [ruby-dev:24382]
33156         * string.c (rb_str_sum): wrong cast caused wrong result.
33157           [ruby-dev:24385]
33159         * enum.c (enum_sort_by): hide temporary array from
33160           ObjectSpace.each_object.  [ruby-dev:24386]
33162         * string.c (rb_str_sum): check was done with false pointer.
33163           [ruby-dev:24383]
33165         * string.c (rb_str_sum): string may be altered.  [ruby-dev:24381]
33167 Fri Oct  1 11:40:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33169         * eval.c (rb_f_eval): defer pointer retrieval to prevent unsafe
33170           sourcefile string modification.  [ruby-dev:24373]
33172         * io.c (io_read): block string buffer modification during
33173           rb_io_fread() by freezing it temporarily. [ruby-dev:24366]
33175         * io.c (rb_io_s_popen): mode argument may be altered.
33176           [ruby-dev:24375]
33178         * file.c (rb_file_s_basename): ext argument may be altered.
33179           [ruby-dev:24377]
33181         * enum.c (enum_sort_by): use NODE instead of 2 element arrays.
33182           [ruby-dev:24378]
33184         * string.c (rb_str_chomp_bang): StringValue() may change the
33185           receiver.  [ruby-dev:24371]
33187 Fri Oct  1 11:25:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33189         * ext/tk/lib/tk/grid.rb: revive TkGrid.grid
33191         * ext/tk/lib/tk/pack.rb: revive TkPack.pack
33193         * ext/tk/lib/tk/place.rb: revive TkPlace.place
33195 Thu Sep 30 00:50:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33197         * ext/tcltklib/tcltklib.c (ip_init): bug fix
33199         * ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
33201         * ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
33203         * ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
33204           matting pattern argument
33206 Wed Sep 29 10:58:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33208         * enum.c (sort_by_i): internally used object must not be changed
33209           outside.  [ruby-dev:24368]
33211 Mon Sep 27 21:25:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33213         * eval.c (rb_call0): invoke finalizers periodically.
33215         * gc.c (gc_sweep): defer running finalizers.  [ruby-dev:24354]
33217         * gc.c (rb_gc_finalize_deferred): run deferred finalizers.
33219 Mon Sep 27 15:01:59 2004  Minero Aoki  <aamine@loveruby.net>
33221         * parse.y [ripper]: missing ';'.
33223 Mon Sep 27 13:46:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33225         * intern.h, struct.c (rb_struct_s_members, rb_struct_members): public
33226           accessors.  [ruby-dev:24342]
33228         * marshal.c (w_object, r_object0): use accessors.
33230 Mon Sep 27 09:14:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33232         * array.c (rb_ary_delete): comparison may change the capacity.
33233           [ruby-dev:24348]
33235         * array.c (rb_ary_fill): fill should honor length argument.
33236           [ruby-dev:24346]
33238         * array.c (rb_ary_replace): should not use ptr from shared array.
33239           [ruby-dev:24345]
33241         * ext/socket/socket.c (s_accept): don't retry for EWOULDBLOCK.
33242           [ruby-talk:113807]
33244 Sun Sep 26 08:05:10 2004  Tadayoshi Funaba  <tadf@dotrb.org>
33246         * lib/date.rb: provides {Time,Date,DateTime}#to_{time,date,datetime}.
33248         * sample/cal.rb: uses getoptlong instead of getopts.
33250 Sat Sep 25 18:39:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33252         * array.c (flatten): element size might change during comparison.
33253           [ruby-dev:24343]
33255 Sat Sep 25 01:52:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33257         * struct.c (rb_struct_s_members): wrong call of struct_members.
33258           [ruby-dev:24333]
33260 Fri Sep 24 16:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33262         * eval.c (proc_invoke): propagate DVAR_DONT_RECYCLE on termination
33263           to avoid double call to rb_gc_force_recycle(). [ruby-dev:24311]
33265 Fri Sep 24 08:29:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33267         * parse.y (rb_parser_append_print): should handle prelude.
33268           [llama@u01.gate0]
33270         * parse.y (rb_parser_while_loop): ditto.
33272         * array.c (rb_ary_subseq): original object might be modified after
33273           sharing data creation.  [ruby-dev:24327]
33275         * array.c (rb_ary_replace): ditto.
33277         * array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]
33279         * struct.c (struct_members): always check struct size and size of
33280           members list in the class.  [ruby-dev:24320]
33282 Thu Sep 23 19:48:14 2004  Minero Aoki  <aamine@loveruby.net>
33284         * ext/ripper/Makefile.dev: removed.
33286         * ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
33288         * ext/ripper/lib/ripper/core.rb: new file.
33290         * ext/ripper/lib/ripper/core.rb.in: new file.
33292         * ext/ripper/tools/generate-ripper_rb.rb: change comment.
33294         * test/ripper/*.rb: on__scan event removed.
33296         * test/ripper/*.rb: event name is changed: on__XXX -> on_XXX.
33298 Thu Sep 23 09:29:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33300         * string.c (rb_str_sub_bang): check if string is not modified
33301           during iteration.  [ruby-dev:24315]
33303         * hash.c (rb_hash_rehash): replace st_foreach() by its deep
33304           checking counterpart.  [ruby-dev:24310]
33306 Wed Sep 22 14:21:54 2004  Minero Aoki  <aamine@loveruby.net>
33308         * parse.y [ripper]: on__scan event removed.
33310         * parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
33312         * ext/ripper/eventids2.c: ditto.
33314         * ext/ripper/ripper.rb.in: ditto.
33316         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
33318         * ext/ripper/lib/ripper/tokenizer: ditto.
33320         * ext/ripper/lib/ripper/filter: new file.
33322         * sample/ripper/colorize.rb: new file.
33324         * sample/ripper/strip-comment.rb: new file.
33326 Wed Sep 22 13:50:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33328         * hash.c (hash_alloc): was using tbl pointer without
33329           initialization.
33331 Wed Sep 22 13:38:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33333         * hash.c (rb_hash_rehash): add iteration check.  [ruby-dev:24301]
33335         * st.c (st_foreach): add deep check.
33337         * hash.c (rb_hash_fetch): returns KeyError instead of IndexError.
33339         * hash.c (env_fetch): ditto.
33341 Wed Sep 22 13:02:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
33343         * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
33345 Wed Sep 22 09:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33347         * parse.y: remove global variables ruby_eval_tree and
33348           ruby_eval_tree_begin.
33350         * array.c (rb_ary_collect_bang): element size might change during
33351           comparison.  [ruby-dev:24300]
33353         * array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]
33355         * array.c (rb_ary_eql): ditto. [ruby-dev:24300]
33357 Wed Sep 22 00:11:12 2004  Dave Thomas  <dave@pragprog.com>
33359         * process.c: Add documentation for fork()
33361 Tue Sep 21 18:29:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33363         * array.c (rb_ary_uniq_bang): element size might change during
33364           comparison.  [ruby-dev:24298]
33366 Mon Sep 20 17:46:51 2004  Minero Aoki  <aamine@loveruby.net>
33368         * ext/ripper/lib/ripper/tokenizer.rb: fix typo.
33370 Mon Sep 20 17:38:43 2004  Minero Aoki  <aamine@loveruby.net>
33372         * test/ripper/test_scanner_events.rb: tokens must be reordered.
33374         * ext/ripper/lib/ripper/tokenizer.rb: ditto.
33376 Mon Sep 20 16:58:16 2004  Minero Aoki  <aamine@loveruby.net>
33378         * parse.y [ripper]: do not delay dispatching.
33380         * ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.
33382 Mon Sep 20 15:17:47 2004  Minero Aoki  <aamine@loveruby.net>
33384         * ext/ripper/lib/ripper/tokenizer.rb: new file.
33386 Mon Sep 20 15:13:52 2004  Minero Aoki  <aamine@loveruby.net>
33388         * test/ripper/test_scanner_events.rb: test #lineno and #column.
33390 Mon Sep 20 14:50:17 2004  Minero Aoki  <aamine@loveruby.net>
33392         * parse.y [ripper]: delayed heredocument events should be
33393           dispatched after EOF.
33395 Mon Sep 20 14:39:42 2004  Minero Aoki  <aamine@loveruby.net>
33397         * parse.y [ripper]: adjust lineno and columns for multi-line
33398           strings.
33400         * parse.y [ripper]: delay heredocument events until seeing
33401           end-of-line.
33403         * parse.y [ripper]: event on__heredoc_contentn ->
33404           on__tstring_content.
33406         * ext/ripper/eventids2.c: ditto.
33408         * ext/ripper/lib/ripper.rb: sync with eventids2.c.
33410         * test/ripper/test_scanner_events.rb: test it.
33412         * ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
33414         * ext/ripper/Makefile.dev: support objdir build.
33416 Mon Sep 20 13:22:55 2004  Minero Aoki  <aamine@loveruby.net>
33418         * parse.y [ripper]: remove Ripper#pos.
33420         * parse.y [ripper]: Ripper#column should return the column of the
33421           current token.
33423 Mon Sep 20 12:02:41 2004  Minero Aoki  <aamine@loveruby.net>
33425         * parse.y [ripper]: unify old_lex_p and token_head.
33427         * test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
33429         * parse.y: new macro lex_goto_eol() for next change.
33431 Mon Sep 20 11:01:55 2004  Minero Aoki  <aamine@loveruby.net>
33433         * parse.y [ripper]: adjust line number for heredoc.  [ruby-dev:24272]
33435 Mon Sep 20 04:49:22 2004  Minero Aoki  <aamine@loveruby.net>
33437         * ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
33439         * ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
33441         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
33443 Mon Sep 20 04:13:00 2004  Minero Aoki  <aamine@loveruby.net>
33445         * test/ripper/test_scanner_events.rb: test spaces before heredoc
33446           mark.
33448 Mon Sep 20 03:46:54 2004  Minero Aoki  <aamine@loveruby.net>
33450         * parse.y [ripper]: spaces before heredoc marker was lost.
33451           [ruby-dev:24272]
33453         * keywords: rb_reserved_word() should be defined only in ruby
33454           core.  [ruby-dev:24272]
33456         * lex.c: sync with keywords.
33458         * ext/ripper/ripper.rb.in (parse): fix typo.
33460         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
33462 Mon Sep 20 03:37:59 2004  Tanaka Akira  <akr@m17n.org>
33464         * ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
33465           (Zlib::GzipReader#readpartial): new method.
33467 Mon Sep 20 00:24:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33469         * enum.c (enum_sort_by): do not use qsort directly.  use
33470           rb_ary_sort_bang() instead.  [ruby-dev:24291]
33472         * enum.c (enum_sort_by): pedantic type check added.
33473           [ruby-dev:24291]
33475         * hash.c (rb_hash_foreach_iter): check iter_lev after each
33476           iteration.  [ruby-dev:24289]
33478         * array.c (rb_ary_and): element size might change during
33479           comparison.  [ruby-dev:24290]
33481         * array.c (rb_ary_or): ditto. [ruby-dev:24292]
33483         * array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]
33485 Sat Sep 18 15:02:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33487         * array.c (rb_ary_equal): element size might change during
33488           comparison.  [ruby-dev:24254]
33490         * array.c (rb_ary_diff): ditto. [ruby-dev:24274]
33492         * array.c (rb_ary_select): ditto. [ruby-dev:24278]
33494         * array.c (rb_ary_delete): ditto. [ruby-dev:24283]
33496         * array.c (rb_ary_rindex): ditto. [ruby-dev:24275]
33498         * array.c (rb_ary_initialize): element size might change during
33499           initializing block.  [ruby-dev:24284]
33501 Sat Sep 18 14:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33503         * dir.c (dir_s_chdir): avoid memory leak and unnecessary chdir to
33504           the original directory when exception has caused in changing
33505           direcotry or within block.  thanks to Johan Holmberg
33506           <holmberg@iar.se> [ruby-core:03446]
33508 Fri Sep 17 20:29:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
33510         * parse.y: add prototypes for Microsoft compiler.
33512         * ext/ripper/depend (parse.obj): lex.c exists at hdrdir.
33514         * {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
33515           use bison.
33517 Fri Sep 17 17:11:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33519         * array.c (rb_ary_delete): element comparison might change array
33520           size. [ruby-dev:24273]
33522         * parse.y: make ruby parser reentrant. merge ripper parser to the
33523           real one.  this change makes ruby require bison.
33525         * file.c (rb_file_truncate): clear stdio buffer before truncating
33526           the file.  [ruby-dev:24191]
33528         * ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
33529           which might return singleton class.  [ruby-dev:24202]
33531 Fri Sep 17 16:07:09 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33533         * ext/tk/lib/multi-tk.rb: improve exit operation
33535 Fri Sep 17 15:01:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33537         * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or
33538           (thread_)tkwait
33540         * ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
33542         * ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave
33543           interpreters (however, the 'real' eventloop must be run on the
33544           Default Master IP)
33546         * ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
33548         * ext/tk/sample/remote-ip_sample2.rb: ditto
33550         * ext/tk/sample/tkoptdb-safeTk.rb: ditto
33552 Thu Sep 16 18:12:13 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33554         * lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
33555           to request.user attribute.
33557         * lib/webrick/httpservlet/filehandler.rb
33558           (WEBrick::HTTPServlet::FileHandler#initialize): should expand
33559           the pathname of document root directory.
33561 Thu Sep 16 15:49:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33563         * string.c (rb_str_intern): protect string argument from GC.
33564           [ruby-core:03411]
33566 Wed Sep 15 20:22:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33568         * ext/tk/sample/tkoptdb-safeTk.rb: fix a bug depend on the changes
33569           of MultiTkIp
33571 Tue Sep 14 23:54:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33573         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by
33574           the previous changes.
33576 Tue Sep 14 23:45:44 2004  Dave Thomas  <dave@pragprog.com>
33578         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::TextFormatter.for):
33579           Add Eric Hodel's simpleformatter.
33581 Tue Sep 14 22:11:08 2004  Minero Aoki  <aamine@loveruby.net>
33583         * parse.y [ripper]: Add rdoc.
33585 Tue Sep 14 20:24:49 2004  Minero Aoki  <aamine@loveruby.net>
33587         * parse.y [ripper]: space event is on__sp, not on__lwsp.
33588           [ruby-dev:24257]
33590         * ext/ripper/eventids2.c: ditto.
33592         * ext/ripper/lib/ripper.rb: ditto.
33594         * ext/ripper/depend (ripper.o): No action is needed.
33595           [ruby-dev:24260]
33597         * ext/ripper/depend: Borland make does not accept pipes in
33598           Makefile rules. [ruby-dev:24589]
33600         * ext/ripper/depend: separate rules for developpers.
33602         * ext/ripper/Makefile.dev: new file.
33604         * ext/ripper/MANIFEST: add Makefile.dev.
33606         * ext/ripper/tools/generate-eventids1.rb: read from file, not
33607           stdin.
33609         * ext/ripper/extconf.rb: clean ripper.E.
33611         * ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2
33612           function was lost.
33614         * ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly
33615           contained parser events.
33617         * ext/ripper/lib/ripper.rb: ditto.
33619 Tue Sep 14 16:59:37 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33621         * ext/tcltklib/tcltklib.c: fix SEGV
33623         * ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
33625         * ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
33627         * ext/tk/sample/safe-tk.rb: new sample script
33630 Mon Sep 13 21:33:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33632         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
33633           second argument to specify the output format (see also
33634            X509_NAME_print_ex).
33636         * ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
33637           OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
33638           OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.
33640         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
33641           new module to provide the parse for RFC2253 DN format.
33643         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
33644           new method to parse RFC2253 DN format.
33646 Mon Sep 13 19:16:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
33648         * eval.c (blk_copy_prev): need frame_dup().  [ruby-dev:24103]
33650 Mon Sep 13 16:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33652         * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
33653           safe-level value argument
33655 Mon Sep 13 10:48:37 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
33657         * win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
33658           mswin32 and mingw32.
33660 Mon Sep 13 10:22:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
33662         * object.c (nil_inspect): fix typo.
33664 Mon Sep 13 09:29:58 2004  Minero Aoki  <aamine@loveruby.net>
33666         * ext/ripper/depend: (nmake hack) prepend "./" to ripper.c to
33667           avoid {$(srcdir)}.
33669 Mon Sep 13 06:43:42 2004  Minero Aoki  <aamine@loveruby.net>
33671         * ext/ripper/tools/list-parse-event-ids.rb: does not use getopts.
33673         * ext/ripper/tools/list-scan-event-ids.rb: ditto.
33675 Mon Sep 13 02:42:28 2004  Minero Aoki  <aamine@loveruby.net>
33677         * ext/Setup: add ripper.
33679         * ext/Setup.atheos: ditto.
33681         * ext/Setup.dj: ditto.
33683         * ext/Setup.emx: ditto.
33685         * ext/Setup.nt: ditto.
33687         * ext/Setup.x68: ditto.
33689 Mon Sep 13 02:26:31 2004  Minero Aoki  <aamine@loveruby.net>
33691         * ext/ripper: ripper extention added.
33693         * ext/ripper/MANIFEST: new file.
33695         * ext/ripper/README: new file.
33697         * ext/ripper/depend: new file.
33699         * ext/ripper/extconf.rb: new file.
33701         * ext/ripper/eventids2.c: new file.
33703         * ext/ripper/ripper.rb.in: new file.
33705         * ext/ripper/lib/ripper.rb: new file.
33707         * ext/ripper/test/check-event-arity.rb: new file.
33709         * ext/ripper/test/check-event-coverage.sh: new file.
33711         * ext/ripper/test/check-scanner-event-coverage.rb: new file.
33713         * ext/ripper/test/list-called-events.rb: new file.
33715         * ext/ripper/test/src_rb: new file.
33717         * ext/ripper/test/validate.rb: new file.
33719         * ext/ripper/tools/generate-eventids1.rb: new file.
33721         * ext/ripper/tools/generate-param-macros.rb: new file.
33723         * ext/ripper/tools/generate-ripper_rb.rb: new file.
33725         * ext/ripper/tools/list-parse-event-ids.rb: new file.
33727         * ext/ripper/tools/list-scan-event-ids.rb: new file.
33729         * ext/ripper/tools/preproc.rb: new file.
33731         * ext/ripper/tools/strip.rb: new file.
33733         * test/ripper: ripper tests added.
33735         * test/ripper/dummyparser.rb: new file.
33737         * test/ripper/test_parser_events.rb: new file.
33739         * test/ripper/test_scanner_events.rb: new file.
33741 Mon Sep 13 01:03:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33743         * ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
33745         * ext/tcltklib/tcltklib.c: store original 'exit' command
33747         * ext/tk/tkutil.c: fix(?) SEGV
33749 Mon Sep 13 00:22:53 2004  Minero Aoki  <aamine@loveruby.net>
33751         * parse.y: fix file header.
33753 Mon Sep 13 00:20:39 2004  Minero Aoki  <aamine@loveruby.net>
33755         * parse.y: ripper merged.
33757         * lex.c: ditto.
33759         * keywords: ditto.
33761 Sun Sep 12 23:53:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33763         * util.c (ruby_strdup): remove unnecessary code. (xmalloc never
33764           returns NULL.)
33766         * util.c (ruby_getcwd): fix memory leak on failure.
33768 Sun Sep 12 02:41:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33770         * ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and
33771           allow_ruby_exit=
33773         * ext/tk/lib/multi-tk.rb: ditto.
33775         * ext/tk/lib/remote-tk.rb: ditto.
33777         * ext/tcltklib/MANUAL.euc: ditto.
33779         * ext/tcltklib/MANUAL.eng: ditto.
33781         * ext/tcltklib/tcltklib.c: fix some reasons of SEGV
33783         * ext/tk/tkutil.c: ditto.
33785         * ext/tk/lib/multi-tk.rb: ditto.
33787         * ext/tk/lib/tk/timer.rb: ditto.
33789 Sat Sep 11 16:09:46 2004  Dave Thomas  <dave@pragprog.com>
33791         * lib/rdoc/parsers/parse_rb.rb: Fix up cross-file class merging.
33793 Fri Sep 10 20:18:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33795         * ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
33796           pointer conversion.
33798 Fri Sep 10 19:16:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33800         * bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
33801           (need to rebuild all) [ruby-dev:24138]
33803         * win32/win32.{h,c}: ditto.
33805 Fri Sep 10 15:55:59 2004  Minero Aoki  <aamine@loveruby.net>
33807         * lib/fileutils.rb (mkdir_p): should pass mode argument to
33808           Dir.mkdir. [ruby-dev:24242]
33810         * test/fileutils/test_fileutils.rb: test it.
33812 Fri Sep 10 02:43:54 2004  Dave Thomas  <dave@pragprog.com>
33814         * lib/rdoc/generators/template/kilmer.rb: James Buck's
33815           patch for call-seq.
33817 Thu Sep  9 13:58:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33819         * ext/tcltklib/tcltklib.c (ip_init): change flag value for setting
33820           'argv' and 'argv0' variable
33822         * ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
33824 Thu Sep  9 11:46:18 2004  Dave Thomas  <dave@pragprog.com>
33826         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_classes): Allow
33827           spaces aroun parameter to define_method_under (James Buck)
33829 Wed Sep  8 18:44:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33831         * ext/stringio/stringio.c (strio_write): zero fill a gap if exsts.
33832           [ruby-dev:24190]
33834 Wed Sep  8 15:19:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33836         * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
33838         * ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check,
33839           and error treatment
33841         * ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs
33843         * ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and
33844           erase
33846         * ext/tk/lib/tk/text.rb: add TkText#clear and erase
33848 Tue Sep  7 15:17:49 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33850         * ext/socket/socket.c (ruby_connect): break immediately if a
33851           socket is non-blocking.  [ruby-talk:111654]
33853 Tue Sep  7 12:48:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
33855         * {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
33857         * win32/win32.[ch] (fcntl): ditto.
33859         * win32/win32.c (rb_w32_connect): support nonblocking mode.
33861         * ext/socket/socket.c (wait_connectable, ruby_connect): support
33862           nonblocking connect on various platforms.
33864 Mon Sep  6 11:00:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33866         * dir.c (dir_s_chdir): the patch to shut up false warning when
33867           exception occurred within a block.  a patch was given from Johan
33868           Holmberg <holmberg at iar.se>.  [ruby-core:03292]
33870 Mon Sep  6 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33872         * ext/tk/lib/tk/menu.rb(TkOptionMenubutton#insert): call correct method
33874 Mon Sep  6 07:51:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33876         * eval.c (cvar_cbase): singletons should refer outer cvar scope.
33877           [ruby-dev:24223]
33879         * eval.c (rb_load): should preserve previous ruby_wrapper value.
33880           [ruby-dev:24226]
33882 Sat Sep  4 01:14:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33884         * eval.c (cvar_cbase): class variables cause SEGV in
33885           instance_eval() for fixnums and symbols. [ruby-dev:24213]
33887 Fri Sep  3 17:47:58 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33889         * struct.c (make_struct): remove redefining constant when
33890           conflict.  [ruby-dev:24210]
33892 Fri Sep  3 11:31:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33894         * ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow
33895           [ruby-dev:24207]
33897 Fri Sep  3 02:12:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33899         * ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
33901         * ext/tk/lib/tk/text.rb: fix typo
33903         * ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs
33905 Fri Sep  3 01:54:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33907         * ext/extmk.rb (extmake): extact target prefix from Makefiles.
33909         * ext/extmk.rb: already built-in libraries satisfy dependencies.
33910           [ruby-dev:24028]
33912 Wed Sep  1 21:16:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33914         * ext/tk/lib/tk/spinbox.rb: fix typo
33916 Wed Sep  1 19:28:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33918         * process.c (rb_proc_exec): label cannot precede variable declarations.
33920 Tue Aug 31 18:20:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33922         * ext/tk/tkutil.c (cbsubst_init): fix memory leak
33924         * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV
33926 Tue Aug 31 16:04:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33928         * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted,
33929           destroy its root widget
33931 Tue Aug 31 12:30:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33933         * ext/tcltklib/tcltklib.c (del_root): fix SEGV
33935 Mon Aug 30 21:50:14 2004  Dave Thomas  <dave@pragprog.com>
33937         * object.c: Add RDoc for Module.included.
33939 Mon Aug 30 23:11:06 2004  Dave Thomas  <dave@pragprog.com>
33941         * lib/rdoc/ri/ri_driver.rb (and others): ri now merges documentation
33942           if it finds the same class in multiple places.
33944 Mon Aug 30 22:40:30 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33946         * ext/tk/lib/multi-tk.rb: 'restart' method accepts arguments
33948 Mon Aug 30 15:10:46 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
33950         * configure.in (GNU/k*BSD): fixed FTBFS on GNU/k*BSD. [ruby-dev:24051]
33952 Sun Aug 29 14:08:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33954         * ext/tcltklib/tcltklib.c: compile error on bcc32 [ruby-dev:24081]
33956         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string does not work
33958 Sat Aug 28 23:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33960         * bignum.c (rb_big_and): protect parameters from GC.
33961           [ruby-talk:110664]
33963 Fri Aug 27 12:13:50 2004  Tanaka Akira  <akr@m17n.org>
33965         * ext/stringio/stringio.c (Init_stringio): add StringIO#readpartial as
33966           an alias for StringIO#sysread.
33968 Fri Aug 27 10:14:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33970         * process.c (rb_proc_exec): strip trailing spaces.  [ruby-dev:24143]
33972         * win32/win32.c (CreateChild): ditto.
33974 Thu Aug 26 04:38:29 2004  Dave Thomas  <dave@pragprog.com>
33976         * eval.c (return_jump): Minor typo in error message. Now reads
33977           "return can't jump across threads".
33979 Wed Aug 25 15:18:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33981         * eval.c (rb_longjmp): Exception#to_str is no longer defined.
33983 Wed Aug 25 11:39:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
33985         * error.c (exc_equal): exceptions are equal if they share same
33986           class, message and backtrace. [ruby-talk:110354]
33988         * error.c (name_err_mesg_equal): ditto.
33990 Tue Aug 24 16:41:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
33992         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): do not
33993           use a session id as a filename.
33995         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): ditto.
33997         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): use
33998           Dir::tmpdir.
34000 Tue Aug 24 14:32:17 2004  Shugo Maeda  <shugo@ruby-lang.org>
34002         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): untaint
34003           session id after check.
34005 Tue Aug 24 08:57:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34007         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): d2i
34008           functions may replace the pointer indicated by the first argument.
34010         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
34012         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
34014 Mon Aug 23 12:43:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34016         * lib/resolv.rb (Config.default_config_hash): when multiple domains
34017           are set, Win32::Resolv.get_resolv_info returns Array.
34019 Sun Aug 22 16:27:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34021         * ext/openssl/ossl_ssl.c (ossl_ssl_read):
34022           - should return an empty string if specified length to read is 0.
34023           - should check for pending data and wait for fd before reading.
34024           - call underlying IO's sysread if SSL session is not started.
34025           [ruby-dev:24072], [ruby-dev:24075]
34027         * ext/openssl/ossl_ssl.c (ossl_ssl_write):
34028           - call underlying IO's syswrite if SSL session is not started.
34030         * ext/openssl/ossl_ssl.c (ossl_ssl_pending): new method
34031           OpenSSL::SSL#pending.
34033         * ext/openssl/lib/openssl/buffering.rb: should not use select.
34035 Sun Aug 22 01:10:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34037         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
34038           should call :ProxyContentHandler before finishing CONNECT.
34040 Sat Aug 21 06:41:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34042         * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
34044         * lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
34045           uniformly.  [ruby-dev:24118]
34047 Fri Aug 20 14:49:42 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34049         * io.c (rb_io_check_writable): no need to check read buffer if
34050           already changed to write mode.
34052 Fri Aug 20 11:46:43 2004  UENO Katsuhiro  <katsu@blue.sky.or.jp>
34054         * ext/zlib/zlib.c: GzipReader#ungetc caused crc error.
34056 Thu Aug 19 16:29:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34058         * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
34060         * ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
34062         * ext/tk/lib/menu.rb: typo bug.
34064 Thu Aug 19 15:15:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34066         * dir.c (free_dir): fix memory leak.  reported by yamamoto
34067           madoka.
34069 Thu Aug 19 09:19:27 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34071         * configure.in, win32/Makefile.sub (LIBS): need to link shell32
34072           library for SH* functions on mswin32 and mingw32.
34074         * wince/Makefile.sub (LIBS): need to link ceshell library for SH*
34075           functions on mswince.
34077 Thu Aug 19 03:07:00 2004  why the lucky stiff  <why@ruby-lang.org>
34079         * lib/yaml/baseemitter.rb: folding now handles double-quoted strings,
34080           fixed problem with extra line feeds at end of folding, whitespace
34081           opening scalar blocks.
34083         * lib/yaml/rubytypes.rb: subtelties in handling strings with
34084           non-printable characters and odd whitespace patterns.
34086 Wed Aug 18 23:44:20 2004  Minero Aoki  <aamine@loveruby.net>
34088         * lib/net/protocol.rb (rbuf_fill): OpenSSL::SSLSocket has its own
34089           buffer, select(2) might not work. [ruby-dev:24072]
34091 Wed Aug 18 17:10:12 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
34093         * ext/tcltklib/stubs.c (ruby_tcltk_stubs): need to call
34094           Tcl_FindExecutable() for Tcl/Tk 8.4.
34096 Wed Aug 18 12:52:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34098         * eval.c (rb_obj_instance_eval): evaluates under special singleton
34099           classes as for special constants.
34101 Wed Aug 18 11:22:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34103         * win32/win32.c (init_env): initialize HOME and USER environment
34104           variables unless set.
34106 Wed Aug 18 10:17:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34108         * eval.c (bind_eval): new method. [RCR 251]
34110         * string.c (rb_str_clear): new method. [ruby-dev:24104]
34112 Tue Aug 17 17:20:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34114         * io.c (rb_io_reopen): should clear allocated OpenFile.  pointed
34115           out by Guy Decoux. [ruby-core:03288]
34117 Tue Aug 17 01:36:32 2004  Dave Thomas  <dave@pragprog.com>
34119         * lib/rdoc/usage.rb: Remove extra indent. Tidy 'ri' option
34120           parsing so RDoc::usage plays better with OptionParser.
34122 Sat Aug 14 02:48:16 2004  Dave Thomas  <dave@pragprog.com>
34124         * lib/rdoc/usage.rb: Added. Allows command line programs
34125           to report usage using their initial RDoc comment.
34127 Sat Aug 14 01:25:48 2004  why the lucky stiff  <why@ruby-lang.org>
34129         * ext/syck/token.c: re2c no longer compiled with bit vectors.  caused
34130           problems for non-ascii characters. [ruby-core:03280]
34131         * ext/syck/implicit.c: ditto.
34132         * ext/syck/bytecode.c: ditto.
34134 Fri Aug 13 12:55:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34136         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_range_header):
34137           fix regex for range-spec.
34139         * lib/webrick/httpservlet/filehandler.rb
34140           (WEBrick::HTTPServlet::DefaultFileHandler#make_partial_content):
34141           multipart/byteranges response was broken.
34143         * lib/xmlrpc/server.rb: refine example code.
34145 Thu Aug 12 10:54:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34147         * rubyio.h (rb_eof_error): should mark as NORETURN.
34149         * win32/win32.c (make_cmdvector): adjust escaped successive
34150           double-quote handling.
34152 Thu Aug 12 01:53:10 2004  Tanaka Akira  <akr@m17n.org>
34154         * io.c (read_buffered_data): extracted from rb_io_fread.
34155           (io_readpartial): new method IO#readpartial.
34156           [ruby-dev:24055]
34158 Wed Aug 11 17:17:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
34160         * configure.in (RPATHFLAG): stop setting RPATHFLAG on Interix.
34162 Mon Aug  9 15:03:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34164         * lib/webrick/httpservlet/erbhandler.rb
34165           (WEBrick::HTTPServlet::ERBHandler#do_GET): should select media type
34166           by suffix of script filename.
34168 Mon Aug  9 12:51:43 2004  Dave Thomas  <dave@pragprog.com>
34170         * dir.c (dir_s_glob): Roll in Austin Ziegler's Dir.glob and
34171           fnmatch updates.
34173 Mon Aug  9 06:33:06 2004  Minero Aoki  <aamine@loveruby.net>
34175         * lib/fileutils.rb (cp_r): copies symlink to symlink, except
34176           root entries of cp_r.
34178         * lib/fileutils.rb: new method FileUtils.copy_entry.
34180         * test/fileutils/test_fileutils.rb: more cp_r tests.
34182 Sun Aug  8 00:43:31 2004  why the lucky stiff  <why@ruby-lang.org>
34184         * lib/implicit.c: added sexagecimal float#base60.
34186         * ext/syck/rubyext.c (yaml_org_handler): ditto.
34188         * lib/token.c: indentation absolutely ignored when processing flow
34189           collections.  plain scalars are trimmed if indentation follows in
34190           an ambiguous flow collection.
34192 Sat Aug  7 03:08:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34194         * process.c (proc_daemon): new method.  should be modified for
34195           platforms without /dev/null.
34197 Sat Aug  7 00:50:01 2004  Tanaka Akira  <akr@m17n.org>
34199         * ext/zlib/zlib.c: Zlib::GzipReader#read(0) returns "" instead of nil.
34201 Wed Aug  4 13:26:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34203         * marshal.c (r_bytes0): optimize out read(0). [ruby-talk:108276]
34205 Tue Aug  3 13:49:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34207         * ext/tk/lib/tk/namespace.rb: bug fix
34209         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: add Tk::TreeCtrl.loupe
34211 Mon Aug  2 23:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34213         * test/ruby/test_file.rb (test_fnmatch): added more tests.
34215 Mon Aug  2 18:04:21 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34217         * ext/tk/lib/tk/msgcat.rb (set_translation): bug fix (fail to set
34218           trans_str to the same as src_str when trans_str is not given.)
34220 Mon Aug  2 17:40:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34222         * eval.c (blk_free): fixed serious memory leak. [ruby-dev:24013]
34224 Mon Aug  2 11:53:06 2004  Dave Thomas  <dave@pragprog.com>
34226         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): Fix infinite recursion
34227           looking up some top level symbols (batsman)
34229 Mon Aug  2 11:48:29 2004  Dave Thomas  <dave@pragprog.com>
34231         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Allow '.'s in
34232           variable names to support SWIG generated files (Hans Fugal)
34234 Sat Jul 31 23:08:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34236         * eval.c (is_defined): stupid mistakes fixed. [ruby-dev:24006]
34238 Sat Jul 31 17:39:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34240         * misc/ruby-mode.el (ruby-expr-beg, ruby-parse-partial,
34241           ruby-calculate-indent, ruby-move-to-block, ruby-forward-sexp,
34242           ruby-backward-sexp): keywords must match word-wise.
34244 Sat Jul 31 13:37:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34246         * eval.c (is_defined): avoid unnecessary method invocations.
34248 Sat Jul 31 05:35:37 2004  why the lucky stiff  <why@ruby-lang.org>
34250         * lib/yaml/rubytypes.rb: exceptions were using an older
34251           YAML.object_maker. [ruby-core:03080]
34253         * ext/syck/token.c (sycklex_yaml_utf8): using newline_len to
34254           handline CR-LFs.  "\000" was showing up on folded blocks which
34255           stopped at EOF.
34257 Sat Jul 31 01:25:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34259         * eval.c (is_defined): call is_defined() before invoking
34260           rb_eval().  [ruby-talk:107867]
34262 Fri Jul 30 16:10:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34264         * ext/tcltklib/tcltklib.c (lib_fromUTF8_core): raise ArgumentError when
34265           the unknown encoding name is given.
34267         * ext/tcltklib/tcltklib.c (lib_toUTF8_core): ditto.
34269         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertfrom): bug fix.
34271         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertto): ditto.
34273 Wed Jul 28 18:59:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34275         * lib/cgi.rb (CGI::initialize): remove at_exit code for CGI_PARAMS
34276           and CGI_COOKIES.  they will no longer be used.
34278 Wed Jul 28 15:44:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34280         * eval.c (rb_call0): should call rb_call_super() directly for
34281           visibility overriding.  [ruby-dev:23989]
34283 Wed Jul 28 01:04:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34285         * env.h: remove argv from ruby_frame.
34287         * eval.c (rb_eval): no more copy on write.
34289         * eval.c (assign): ditto.
34291         * eval.c (rb_call0): can receive *rest by specifying negative
34292           argc.  (-1 means 0 arg and *rest, -2 means 1 arg and *rest...)
34294         * eval.c (rb_call0): properly set frame's argc counter.
34296         * gc.c (rb_gc_mark_frame): need not to mark frame's argv
34298         * gc.c (run_final): wrong order of data. [ruby-dev:23984]
34300 Tue Jul 27 07:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34302         * eval.c (rb_eval): copy on write for argument local variable
34303           assignment.
34305         * eval.c (assign): ditto.
34307         * eval.c (rb_call0): update ruby_frame->argv with the default
34308           value used for the optional arguments.
34310         * object.c (Init_Object): "===" calls rb_obj_equal() directly.
34311           [ruby-list:39937]
34313 Mon Jul 26 11:22:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34315         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape): should
34316           escape space.
34318 Sun Jul 25 10:56:28 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34320         * win32/win32.{h,c} (rb_w32_{f,fd,fs}open): workaround for bcc32's
34321           {f,fd,fs}open bug. set errno EMFILE and EBADF. [ruby-dev:23963]
34323         * test/drb/drbtest.rb: fix method duplication.
34325 Sat Jul 24 13:32:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34327         * range.c (rb_range_beg_len): returns Qnil only when "beg" points
34328           outside of a range.  No boundary check for "end".
34330 Fri Jul 23 16:40:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34332         * gc.c (define_final): should not disclose NODE* to Ruby world.
34333           [ruby-dev:23957]
34335 Fri Jul 23 08:52:22 2004  Shugo Maeda  <shugo@ruby-lang.org>
34337         * lib/net/imap.rb (disconnected?): new method.
34339 Thu Jul 22 16:41:54 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34341         * lib/cgi/session.rb (CGI::Session::FileStore#update): sets the
34342           permission of the session data file to 0600.
34344         * lib/cgi/session/pstore.rb (CGI::Session::Pstore#initialize):
34345           ditto.
34347 Mon Jul 19 00:53:46 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34349         * lib/webrick/httpservlet/cgihandler.rb
34350           (WEBrick::HTTPServlet::CGIhandler#do_GET): set SystemRoot environment
34351           variable to CGI process on Windows native platforms. [ruby-dev:23936]
34353 Sun Jul 18 16:14:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34355         * ext/tk/lib/tk/msgcat.rb (TkMsgCatalog.callback): bug fix
34356           ( wrong number of argument )
34358 Sun Jul 18 08:13:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34360         * sprintf.c (rb_f_sprintf): remove extra sign digit.
34362 Sun Jul 18 03:19:14 2004  Akinori MUSHA  <knu@iDaemons.org>
34364         * dir.c (bracket): use NULL instead of 0.
34366 Sun Jul 18 02:35:30 2004  Shugo Maeda  <shugo@ruby-lang.org>
34368         * lib/net/imap.rb (receive_responses): return if a LOGOUT response
34369           received.
34371 Sat Jul 17 23:59:01 2004  Shugo Maeda  <shugo@ruby-lang.org>
34373         * lib/net/imap.rb (send_string_data): wait command continuation
34374           requests before sending octet data of literals.
34376 Sat Jul 17 23:54:59 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34378         * ext/tk/lib/tk/variable.rb: TkVariable#ref returns a TkVariable object
34380 Sat Jul 17 22:04:44 2004  akira yamada  <akira@ruby-lang.org>
34382         * lib/uri/ldap.rb: method hierarchical? should be in URI::LDAP.
34384 Sat Jul 17 18:29:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34386         * parse.y (stmt): not to show same error messages twice.
34388 Sat Jul 17 14:18:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34390         * string.c (rb_str_match_m): String#match should also take
34391           optional argument.  [ruby-core:03205]
34393         * re.c (rb_reg_match_m): add optional second argugment "pos" to
34394           specify match start point.  [ruby-core:03203]
34396 Sat Jul 17 13:13:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34398         * lib/irb/ruby-lex.rb (RubyLex::identify_string): %s string do not
34399           process expression interpolation.  [ruby-talk:106691]
34401 Sat Jul 17 05:26:27 2004  Dave Thomas  <dave@pragprog.com>
34403         * lib/rdoc/diagram.rb: Incorporate Micheal Neumann's
34404           client-side imagemao patch
34406 Sat Jul 17 01:57:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34408         * eval.c (THREAD_ALLOC): th->thread should be initialized to NULL.
34409           [ruby-talk:106657]  The solution was found by Guy Decoux.
34411 Fri Jul 16 22:30:28 2004  Michael Neumann  <mneumann@ntecs.de>
34413         * file.c (rb_stat_dev_major): new methods File::Stat#dev_major and
34414           #dev_minor. [ruby-core:03195]
34416 Fri Jul 16 11:17:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34418         * error.c (exit_initialize): use EXIT_SUCCESS instead of 0.
34419           [ruby-dev:23913]
34421         * error.c (exit_success_p): new method SystemExit#success?.
34422           [ruby-dev:23912]
34424         * error.c (syserr_initialize): initialization for subclasses.
34425           [ruby-dev:23912]
34427 Thu Jul 15 23:53:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34429         * lib/optparse.rb (OptionParser#warn, OptionParser#abort): Exception
34430           no longer has to_str method.
34432 Thu Jul 15 22:59:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
34434         * ext/readline/extconf.rb: added dir_config for curses, ncurses,
34435           termcap.
34437 Thu Jul 15 20:44:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34439         * class.c: rdoc patch
34441 Thu Jul 15 14:12:34 2004  why the lucky stiff  <why@ruby-lang.org>
34443         * lib/yaml.rb (YAML::load_file, YAML::parse_file): added.
34445         * ext/syck/token.c: re2c compiled with bit vectors now.
34446         * ext/syck/implicit.c: ditto.
34447         * ext/syck/bytecode.c: ditto.
34449 Thu Jul 15 10:15:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34451         * ext/tk/, ext/tcltklib/: bug fix
34453         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
34454           callbacks.
34455         * ext/tk/lib/tk/msgcat.rb: ditto.
34456         * ext/tk/lib/tk/variable.rb: ditto.
34457         * ext/tk/lib/tk/timer.rb: ditto.
34459         * ext/tk/lib/tk/validation.rb: add Tk::ValidateConfigure.__def_validcmd
34460           to define validatecommand methods easier
34462         * ext/tk/lib/tk.rb (_genobj_for_tkwidget): support autoload Tk ext
34463           classes
34465         * ext/tk/lib/tk/canvas.rb and so on: remove the parent widget type
34466           check for items (e.g. canvas items; depends on the class) to
34467           avoid some troubles on Tk extension widget class definition.
34469         * ext/tk/lib/tkextlib/: add Iwidget and TkTable extension support
34471         * ext/tk/sample/tkextlib/: add samples of Iwidget and TkTable
34474 Wed Jul 14 23:49:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34476         * enum.c (enum_min_by): new method Enum#min_by.  added Enum#max_by
34477           as well.
34479 Wed Jul 14 18:05:21 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34481         * ext/openssl/ossl_asn1.c (ossl_asn1cons_to_der): fix type of
34482           argument. [ruby-dev:23891]
34484         * test/openssl/test_x509store.rb: prune tests for CRL checking
34485           unless X509::V_FLAG_CRL_CHECK is defined.
34487 Wed Jul 14 12:20:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34489         * util.c (ruby_strtod): should not convert string in the form of
34490           "-I.FE-X" which both "I" and "F" are ommitted. [ruby-dev:23883]
34492         * test/ruby/test_float.rb (test_strtod): add test for bug fix.
34494 Wed Jul 14 00:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34496         * array.c: rdoc patch. merged patch from Johan Holmberg
34497           <holmberg@iar.se> [ruby-core:3170]
34499 Tue Jul 13 19:39:12 2004  akira yamada  <akira@ruby-lang.org>
34501         * lib/uri/generic.rb (URI::Generic#merge_path):
34502           "URI('http://www.example.com/foo/..') + './'" should return
34503           "URI('http://www.example.com/')".  [ruby-list:39838]
34504           "URI('http://www.example.com/') + './foo/bar/..'" should return
34505           "URI('http://www.example.com/foo/')".  [ruby-list:39844]
34507         * test/uri/test_generic.rb (TestGeneric#test_merge): added tests.
34509 Tue Jul 13 15:48:56 2004  Akinori MUSHA  <knu@iDaemons.org>
34511         * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
34512            extmk mode.
34514         * lib/mkmf.rb (dir_config): Prepend a new library path instead of
34515           appending so it is tried first.
34517 Tue Jul 13 00:50:48 2004  Dave Thomas  <dave@pragprog.com>
34519         * lib/rdoc/parsers/parse_rb.rb: Support call-seq: for Ruby files.
34521 Mon Jul 12 21:20:51 2004  Dave Thomas  <dave@pragprog.com>
34523         * html_generator.rb: Support hyperlinks of the form {any text}[xxx]
34524           as well as stuff[xxx]
34526 Sat Jul 10 09:30:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34528         * test/soap/marshal/test_struct.rb: use qualified built-in class name
34529           (::Struct) to avoid name crash.
34531 Sat Jul 10 04:21:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34533         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
34534           callbacks.
34535         * ext/tk/lib/tk/msgcat.rb: ditto.
34536         * ext/tk/lib/tk/variable.rb: ditto.
34537         * ext/tk/lib/tk/timer.rb: ditto.
34539         * ext/tk/lib/tk/validation.rb (__def_validcmd):  add a module
34540           function of Tk::ValidateConfigure to define validatecommand
34541           methods easier
34543 Fri Jul  9 22:18:59 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34545         * array.c, enum.c, pack.c: rdoc patch from Johan Holmberg
34546           <holmberg@iar.se> [ruby-core:3132] [ruby-core:3136]
34548         * numeric.c: rdoc patch.
34550 Fri Jul  9 19:26:39 2004  Tanaka Akira  <akr@m17n.org>
34552         * lib/open-uri.rb (URI::HTTPS#proxy_open): raise ArgumentError to
34553           notice https is not supported.
34555 Fri Jul  9 14:28:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34557         * eval.c (rb_thread_raise): accept third argument as well as
34558           Kernel#raise, and evaluate the arguments to create an exception in
34559           the caller's context.  [ruby-talk:105507]
34561 Fri Jul  9 01:47:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34563         * ext/tk/lib: bug fix
34564         * ext/tk/lib/tkextlib/itcl: add [incr Tcl] support
34565         * ext/tk/lib/tkextlib/itk: add [incr Tk] support
34566         * ext/tk/lib/tkextlib/iwidgets: midway point of [incr Widgets] support
34567         * ext/tk/sample/tkextlib/iwidgets: very simple examples of
34568           [incr Widgets]
34570 Thu Jul  8 19:27:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34572         * configure.in (rb_cv_stack_end_address): detect stack end address
34573           variable supplied by system.  [ruby-core:03115]
34575         * gc.c (Init_stack): use system provided address if possible.
34577 Thu Jul  8 00:05:23 2004  akira yamada  <akira@ruby-lang.org>
34579         * lib/tempfile.rb (Tempfile::initialize): got out code of
34580           generating tmpname.  [ruby-dev:23832][ruby-dev:23837]
34582 Wed Jul  7 02:31:41 2004  Kouhei Sutou  <kou@cozmixng.org>
34584         * lib/rss/{rss,parser,0.9,1.0,2.0}.rb: supported RSS 0.9x/2.0
34585           validation and validation which disregard order of elements.
34586         * test/rss/test_parser.rb: added tests for RSS 0.9x/2.0
34587           validation.
34588         * test/rss/{test_trackback,rss-testcase}.rb: fixed no good method
34589           name.
34591 Wed Jul  7 00:48:34 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
34593         * ext/tk/lib/tkextlib/tktrans.rb,
34594           ext/tk/lib/tkextlib/treectrl.rb: fix syntax errors.
34596 Tue Jul  6 18:38:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34598         * ext/tk/lib: improve framework of developping Tcl/Tk extension
34599           wrappers
34601 Mon Jul  5 23:56:42 2004  Kouhei Sutou  <kou@cozmixng.org>
34603         * lib/rss/{trackback,syndication,dublincore,content}.rb: worked
34604           with ruby 1.6 again.
34606         * test/rss/rss-assertions.rb: ditto.
34608 Mon Jul  5 22:54:39 2004  Tanaka Akira  <akr@m17n.org>
34610         * lib/uri/common.rb (Kernel#URI): new global method for parsing URIs.
34612 Mon Jul  5 09:02:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34614         * eval.c (rb_thread_yield, rb_f_catch): 4th argument to rb_yield_0()
34615           is a set of bit flags.  [ruby-dev:23859]
34617 Mon Jul  5 01:20:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34619         * lib/drb/drb.rb(DRbConn self.open): If socket pool is full, close
34620           the socket whose last-access-time is oldest. (and add new one)
34621           [ruby-dev:23860]
34623 Sun Jul  4 12:24:50 2004  Kouhei Sutou  <kou@cozmixng.org>
34625         * lib/rss/rss.rb: added copyright header.
34627 Sat Jul  3 22:25:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34629         * added files:
34630           * lib/soap/header/*
34631           * lib/soap/rpc/httpserver.rb
34632           * lib/wsdl/soap/cgiStubCreator.rb
34633           * lib/wsdl/soap/classDefCreator.rb
34634           * lib/wsdl/soap/classDefCreatorSupport.rb
34635           * lib/wsdl/soap/clientSkeltonCreator.rb
34636           * lib/wsdl/soap/driverCreator.rb
34637           * lib/wsdl/soap/mappingRegistryCreator.rb
34638           * lib/wsdl/soap/methodDefCreator.rb
34639           * lib/wsdl/soap/servantSkeltonCreator.rb
34640           * lib/wsdl/soap/standaloneServerStubCreator.rb
34641           * lib/wsdl/xmlSchema/enumeration.rb
34642           * lib/wsdl/xmlSchema/simpleRestriction.rb
34643           * lib/wsdl/xmlSchema/simpleType.rb
34644           * lib/xsd/codegen/*
34645           * lib/xsd/codegen.rb
34646           * sample/soap/authheader/*
34647           * sample/soap/raa2.4/*
34648           * sample/soap/ssl/*
34649           * sample/soap/swa/*
34650           * sample/soap/whois.rb
34651           * sample/wsdl/raa2.4/*
34652           * test/soap/header/*
34653           * test/soap/ssl/*
34654           * test/soap/struct/*
34655           * test/soap/swa/*
34656           * test/soap/wsdlDriver/*
34657           * test/wsdl/multiplefault.wsdl
34658           * test/wsdl/simpletype/*
34659           * test/wsdl/test_multiplefault.rb
34661         * modified files:
34662           * lib/soap/baseData.rb
34663           * lib/soap/element.rb
34664           * lib/soap/generator.rb
34665           * lib/soap/netHttpClient.rb
34666           * lib/soap/parser.rb
34667           * lib/soap/property.rb
34668           * lib/soap/soap.rb
34669           * lib/soap/streamHandler.rb
34670           * lib/soap/wsdlDriver.rb
34671           * lib/soap/encodingstyle/handler.rb
34672           * lib/soap/encodingstyle/literalHandler.rb
34673           * lib/soap/encodingstyle/soapHandler.rb
34674           * lib/soap/mapping/factory.rb
34675           * lib/soap/mapping/mapping.rb
34676           * lib/soap/mapping/registry.rb
34677           * lib/soap/mapping/rubytypeFactory.rb
34678           * lib/soap/mapping/wsdlRegistry.rb
34679           * lib/soap/rpc/cgistub.rb
34680           * lib/soap/rpc/driver.rb
34681           * lib/soap/rpc/proxy.rb
34682           * lib/soap/rpc/router.rb
34683           * lib/soap/rpc/soaplet.rb
34684           * lib/soap/rpc/standaloneServer.rb
34685           * lib/wsdl/data.rb
34686           * lib/wsdl/definitions.rb
34687           * lib/wsdl/operation.rb
34688           * lib/wsdl/parser.rb
34689           * lib/wsdl/soap/definitions.rb
34690           * lib/wsdl/xmlSchema/complexContent.rb
34691           * lib/wsdl/xmlSchema/complexType.rb
34692           * lib/wsdl/xmlSchema/data.rb
34693           * lib/wsdl/xmlSchema/parser.rb
34694           * lib/wsdl/xmlSchema/schema.rb
34695           * lib/xsd/datatypes.rb
34696           * lib/xsd/qname.rb
34697           * sample/soap/sampleStruct/server.rb
34698           * sample/wsdl/amazon/AmazonSearch.rb
34699           * sample/wsdl/amazon/AmazonSearchDriver.rb
34700           * test/soap/test_property.rb
34701           * test/soap/calc/test_calc_cgi.rb
34702           * test/wsdl/test_emptycomplextype.rb
34704         * summary
34705           * add SOAP Header mustUnderstand support.
34707           * add HTTP client SSL configuration and Cookies support (works
34708             completely with http-access2).
34710           * add header handler for handling sending/receiving SOAP Header.
34712           * map Ruby's anonymous Struct to common SOAP Struct in SOAP Object
34713             Model.  it caused error.
34715           * add WSDL simpleType support to restrict lexical value space.
34717 Sat Jul  3 17:19:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
34719         * ext/tk/lib/tkextlib/tkDND.rb: fix syntax error.
34721 Thu Jul  1 18:36:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34723         * ext/tk/lib/tcltklib: bug fix
34725         * ext/tk/lib/tk: bug fix and add Tcl/Tk extension support libraries
34727 Thu Jul  1 18:31:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34729         * lib/pstore.rb (PStore#transaction): get rid of opening in write mode
34730           when read only transaction.  [ruby-dev:23842]
34732 Thu Jul  1 00:44:42 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34734         * ext/openssl/ossl_cipher.c (ossl_cipher_encrypt, ossl_cipher_decrypt):
34735           re-implemnt (the arguments for this method is ).
34737         * ext/openssl/ossl_cipher.c (ossl_cipher_pkcs5_keyivgen): new method
34738           OpenSSL::Cipher::Cipher#pkcs5_keyivgen. it calls EVP_BytesToKey().
34740         * ext/openssl/ossl_cipher.c (ossl_cipher_set_key_length): new method
34741           OpenSSL::Cipher::Cipher#key_len=.
34743 Wed Jun 30 19:48:09 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34745         * ext/openssl/extconf.rb: check for EVP_CIPHER_CTX_copy, ENGINE_add,
34746           EVP_CIPHER_CTX_set_padding, EVP_CipherFinal_ex, EVP_CipherInit_ex,
34747           EVP_DigestFinal_ex and EVP_DigestInit_ex.
34749         * ext/openssl/openssl_missing.c (EVP_CIPHER_CTX_copy): new function.
34751         * ext/openssl/openssl_missing.h (EVP_DigestInit_ex, EVP_DigestFinal_ex,
34752           EVP_CipherInit_ex, EVP_CipherFinal_ex, HMAC_Init_ex): new macro for
34753           OpenSSL 0.9.6.
34755         * ext/openssl/ossl_cipher.c (ossl_cipher_alloc, ossl_cipher_initialize,
34756           ossl_cipher_copy, ossl_cipher_reset, ossl_cipher_encrypt,
34757           ossl_cipher_decrypt, ossl_cipher_final, ossl_cipher_set_key,
34758           ossl_cipher_set_iv): replace all EVP_CipherInit and
34759           EVP_CipherFinal into EVP_CipherInit_ex and EVP_CipherFinal_ex.
34760           and EVP_CIPHER_CTX_init should only be called once.
34762         * ext/openssl/ossl_cipher.c (ossl_cipher_set_padding): check for
34763           EVP_CIPHER_CTX_set_padding.
34765         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Cipher#<< is deprecated.
34767         * ext/openssl/ossl_digest.c: replace all EVP_DigestInit and
34768           EVP_DigestFinal into EVP_DigestInit_ex and EVP_DigestFinal_ex.
34769           and EVP_MD_CTX_init should only be called once.
34771         * ext/openssl/ossl_digest.c (digest_final): should call
34772           EVP_MD_CTX_cleanup to avoid memory leak.
34774         * ext/openssl/ossl_hmac.c (ossl_hmac_initialize): repalce HMAC_init
34775           into HMAC_init_ex. and HMAC_CTX_init is moved to ossl_hmac_alloc.
34777         * ext/openssl/ossl_hmac.c (hmac_final): should call
34778           HMAC_CTX_cleanup to avoid memory leak.
34780         * test/openssl/test_cipher.rb, test/openssl/test_digest.rb,
34781           test/openssl/test_hmac.rb: new file.
34783 Wed Jun 30 16:59:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34785         * test/ruby/test_file.rb (test_fnmatch): some tests for File.fnmatch
34786           are added.
34788 Wed Jun 30 11:38:51 2004  Mikael Brockman  <phubuh@phubuh.org>
34790         * parse.y (primary): should not be NULL.  [ruby-core:03098]
34792 Wed Jun 30 02:41:10 2004  why the lucky stiff  <why@ruby-lang.org>
34794         * ext/syck/rubyext.c (syck_emitter_new): set buffer after
34795           Data_Wrap_Struct to avoid possible GC. [ruby-talk:104835]
34797 Tue Jun 29 10:31:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34799         * eval.c (rb_eval_cmd, rb_thread_trap_eval): restore safe level.
34801         * gc.c (define_final, run_final): preserve and restore safe level for
34802           finalizers.  [ruby-core:03058]
34804         * signal.c (signal_exec, rb_trap_exit, trap): preserve and restore
34805           safe level for signal handlers.  [ruby-dev:23829]
34807 Mon Jun 28 14:57:56 2004  Jeff Mitchell  <quixoticsycophant@yahoo.com>
34809         * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
34810           DOSISH compilers.  [ruby-core:03107]
34812 Mon Jun 28 00:35:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34814         * sample/drb/*.rb: using 'DRb.thread.join' instead of 'gets'
34816 Sun Jun 27 22:36:47 2004  Kouhei Sutou  <kou@cozmixng.org>
34818         * sample/rss/tdiary_plugin/rss-recent.rb: supported Hiki.
34820 Sat Jun 26 15:17:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34822         * variable.c (rb_mod_class_variables): class variables are no longer
34823           inherited.  [ruby-dev:23808]
34825 Sat Jun 26 11:07:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34827         * configure.in (aix): -b must come at the start of the command line,
34828           and -e must not appear while testing libraries.  [ruby-talk:104501]
34830         * lib/mkmf.rb (find_header, dir_config): quote directory names if
34831           necessary.  [ruby-talk:104505]
34833 Sat Jun 26 00:13:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34835         * io.c (rb_fopen, rb_fdopen, rb_io_reopen): setvbuf() may return
34836           positive value on failure.  [ruby-dev:23792]
34838 Fri Jun 25 18:07:15 2004  Michal Rokos  <michal@ruby-lang.org>
34840         * gc.c: bring back _stklen for DJGPP [ruby-core:3084]
34842 Fri Jun 25 15:33:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34844         * ext/iconv/extconf.rb: check stricter.  [ruby-talk:104501]
34846 Fri Jun 25 01:58:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34848         * {bcc32,win32,wince}/setup.mak: remove RUBY_EXTERN lines when
34849           including version.h. [ruby-talk:104456]
34851 Thu Jun 24 14:23:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34853         * io.c (rb_io_fread): return already read data when system call is
34854           interrupted.  [ruby-talk:97206]
34856 Thu Jun 24 01:25:21 2004  Shugo Maeda  <shugo@ruby-lang.org>
34858         * version.h: added declarations of ruby_version,
34859           ruby_release_date, ruby_platform.
34861 Thu Jun 24 01:07:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34863         * ext/socket/socket.c (sock_sockaddr): Socket#gethostbyname()
34864           should give us packed address, not struct sockaddr.
34865           [ruby-core:03053]
34867 Wed Jun 23 22:19:10 2004  Dave Thomas  <dave@pragprog.com>
34869         * ext/socket/socket.c (sock_s_gethostbyaddr): Work around problem
34870           with OS X not returning 'from' parameter to recvfrom for
34871           connection-oriented sockets.
34873 Wed Jun 23 22:16:16 2004  Michal Rokos  <michal@ruby-lang.org>
34875         * io.c: io_seek()'s retval should be checked [ruby-core:03045]
34877 Wed Jun 23 21:48:27 2004  Michal Rokos  <michal@ruby-lang.org>
34879         * time.c: Fix indentation.
34881         * main.c: Remove _stklen, and _CRT_glob. Move _stacksize for
34882           __human68k__ to gc.c where the others are.
34884         * gc.c: put _stacksize in place and clean the #ifdefs macros.
34886 Wed Jun 23 17:37:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
34888         * lib/net/imap.rb: added new option --ssl.
34890 Wed Jun 23 01:45:27 2004  Dave Thomas  <dave@pragprog.com>
34892         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
34893           Fix problem with the 'r' being dropped from %r{xxx}
34895 Wed Jun 23 00:10:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34897         * ext/win32ole/win32ole.c (ole_hresult2msg): remove trailing
34898           CRs and LFs. (doesn't depend on CR+LF) [ruby-dev:23749]
34900 Wed Jun 23 00:00:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34902         * eval.c (return_jump, break_jump): raise unexpected local jump
34903           exception directly.  [ruby-dev:23740]
34905         * io.c (rb_io_initialize): should check fcntl result.  [ruby-dev:23742]
34907 Tue Jun 22 23:35:43 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34909         * sprintf.c (rb_f_sprintf): support FZERO and FSPACE with NaN/Inf.
34911         * test/ruby/test_sprintf.rb (test_nan, test_inf): add tests.
34913 Tue Jun 22 21:11:36 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34915         * ext/win32ole/win32ole.c (OLE_FREE): should not call CoFreeUnuse-
34916           dLibraries().
34918         * ext/win32ole/win32ole.c (ole_event_free): ditto.
34920         * ext/win32ole/win32ole.c (ole_hresult2msg): truncate error message
34921           before CR.
34923 Tue Jun 22 19:24:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34925         * sprintf.c (rb_f_sprintf): unify output of NaN, Inf and -Inf with
34926           "%f" or etc on all platform. [ruby-dev:23704], [ruby-dev:23747]
34928 Tue Jun 22 15:28:12 2004  Michal Rokos  <michal@ruby-lang.org>
34930         * compar.c: Remove explicit NIL_P() checks since rb_cmpint() does it
34931           again in the exactly same manner.
34933 Tue Jun 22 01:32:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34935         * ext/openssl/ossl_pkey_dh.c (ossl_dh_initialize): should create
34936           empty pkey object if no argument is passed. [ruby-talk:103328]
34938         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto.
34940         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_initialize): ditto.
34942         * ext/openssl/ossl_pkey_dh.c: add new methods: OpenSSL::PKey::DH#p,
34943           OpenSSL::PKey::DH#p=, OpenSSL::PKey::DH#g, OpenSSL::PKey::DH#g=,
34944           OpenSSL::PKey::DH#pub_key, OpenSSL::PKey::DH#pub_key=,
34945           OpenSSL::PKey::DH#priv_key and OpenSSL::PKey::DH#priv_key=.
34947         * ext/openssl/ossl_pkey_dsa.c: add new methods: OpenSSL::PKey::DSA#p,
34948           OpenSSL::PKey::DSA#p=, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#q=,
34949           OpenSSL::PKey::DSA#g, OpenSSL::PKey::DSA#g=,
34950           OpenSSL::PKey::DSA#pub_key, OpenSSL::PKey::DSA#pub_key=,
34951           OpenSSL::PKey::DSA#priv_key and OpenSSL::PKey::DSA#priv_key=.
34953 Mon Jun 21 09:24:51 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
34955         * win32/win32.c (rb_w32_opendir): should set errno if error occurs
34956           when calling OS API.
34958 Sun Jun 20 21:12:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
34960         * lib/net/ftp.rb (binary=): send TYPE commands only once.
34962 Sat Jun 19 13:27:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34964         * eval.c (method_call): allow changing $SAFE.  [ruby-dev:23713]
34966         * eval.c (proc_set_safe_level, proc_invoke, rb_mod_define_method): not
34967           set $SAFE for methods defined from Proc.  [ruby-dev:23697]
34969 Sat Jun 19 01:10:12 2004  Kouhei Sutou  <kou@cozmixng.org>
34971         * sample/rss/tdiary_plugin/rss-recent.rb: added more information.
34973 Fri Jun 18 23:12:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34975         * eval.c (proc_save_safe_level, rb_set_safe_level, safe_setter): limit
34976           safe level.
34978 Wed Jun 16 23:05:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
34980         * object.c (rb_mod_freeze): prepare string representation before
34981           freezing. [ruby-talk:103646]
34983 Wed Jun 16 19:57:24 2004  Michal Rokos  <michal@ruby-lang.org>
34985         * test/ruby/test_array.rb: extend testcase to check #first, #last,
34986           #shift, #unshift, #pop, #push
34988 Wed Jun 16 16:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34990         * array.c (ary_new): move alloc behind checks.  [ruby-core:02982]
34992         * array.c (rb_ary_pop_m, rb_ary_shift_m): take arg to behave as push
34993           and unshift.
34995         * array.c (rb_ary_first, rb_ary_last): make shared array for result
34996           array, and correct doc for Array#first(n) and Array#last(n)
34998         * array.c (rb_ary_select): not accept any arg.
35000 Wed Jun 16 16:03:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35002         * object.c (rb_class_inherited_p): singleton class inherits Class
35003           rather than its object's class.  [ruby-dev:23690]
35005 Wed Jun 16 16:01:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35007         * gc.c (stack_grow_direction): memoize the direction.
35009         * gc.c (Init_stack): should always move to end of VALUE.
35011 Tue Jun 15 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35013         * ext/tk/lib/tk.rb: bug fix (TkWindow#grab)
35015 Mon Jun 14 18:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35017         * ext/tk/lib/remote-tk.rb: bug fix
35019 Sun Jun 13 00:23:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35021         * ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) support
35023         * ext/tcltklib/tcltklib.c: fix thread trouble on callback proc, and
35024           eliminate warning about instance variable access
35026         * ext/tk/lib/tk/menubar.rb: improve supported menu_spec
35028         * ext/tk/lib/tk/menuspec.rb: [add] menu_spec support library
35030         * ext/tk/lib/tk/root.rb: add menu_spec support
35032         * ext/tk/lib/tk/text.rb: bug fix
35034         * ext/tk/lib/tk/toplevel.rb: add menu_spec support
35036         * ext/tk/sample/menubar?.rb: [add] sample of menu_spec usage
35038 Sat Jun 12 14:15:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35040         * dir.c: RDOC for File::FNM_CASEFOLD was missed.
35042 Sat Jun 12 11:15:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35044         * configure.in (target_os): strip -gnu suffix on Linux.
35046 Fri Jun 11 22:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35048         * array.c: remove #indexes, #indices.
35050         * hash.c: ditto.
35052         * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning
35053           from #select.
35055         * ext/gdbm/gdbm.c: ditto.
35057         * ext/sdbm/init.c: ditto.
35059         * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when
35060           DB_VERSION_STRING is not available.
35062 Thu Jun 10 19:19:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35064         * ext/sdbm/init.c (fsdbm_store): sdbm should use StringValue().
35065           [ruby-talk:103062]
35067 Wed Jun  9 16:09:01 2004  akira yamada  <akira@ruby-lang.org>
35069         * lib/uri/generic.rb (URI::Generic::merge,
35070           URI::Generic::route_from): accepts non-hierarchical URI.
35071           [ruby-dev:23631]
35073         * test/uri/test_generic.rb (TestGeneric::test_route,
35074           TestGeneric::test_merge): added tests for above changes.
35076 Wed Jun  9 15:39:55 2004  Akinori MUSHA  <knu@iDaemons.org>
35078         * configure.in: Add support for DragonFly BSD.
35080 Wed Jun  9 15:07:06 2004  Akinori MUSHA  <knu@iDaemons.org>
35082         * config.guess, config.sub: Update to a more recent version as of
35083           2004-01-20.
35085 Wed Jun  9 11:20:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
35087         * win32/win32.c: remove unused functions and variables.
35089 Wed Jun  2 20:16:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35091         * string.c (str_new4): should share shared instance if it already
35092           exists.  [ruby-dev:23665]
35094 Wed Jun  2 12:41:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35096         * io.c (rb_io_gets_m): set lastline ($_) even when read line is
35097           nil.  [ruby-dev:23663]
35099 Fri May 28 11:20:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35101         * eval.c (rb_eval): bad influence on frame node.
35103         * eval.c (eval): reverted wrongly removed condition.  [ruby-dev:23638]
35105 Thu May 27 21:37:50 2004  Tanaka Akira  <akr@m17n.org>
35107         * lib/pathname.rb (Pathname#initialize): fix pathname initialization
35108           by pathname.
35110 Thu May 27 20:02:09 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35112         * io.c (rb_io_fwrite): check all case errno != 0 [ruby-dev:23648]
35114 Thu May 27 15:54:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
35116         * lib/net/ftp.rb (MDTM_REGEXP): fix for demon's ftp server.
35117           Thanks, Rutger Nijlunsing.
35119 Thu May 27 14:53:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35121         * io.c (rb_io_fwrite): workaround for bcc32's fwrite bug.
35122           add errno checking.  [ruby-dev:23627]
35124         * io.c (rb_io_fwrite): should check if errno == ENOENT, too.
35126 Thu May 27 11:25:03 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
35128         * test/csv/test_csv.rb: illegal require module name (../lib/csv.rb).
35130 Wed May 26 23:12:13 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
35132         * lib/csv.rb (CSV.read, CSV.readlines): added.  works as IO.read and
35133           IO.readlines in CSV format.
35135         * lib/csv.rb (CSV.parse): [CAUTION] behavior changed.  in the past,
35136           CSV.parse accepts a filename to be read-opened (it was just a
35137           shortcut of CSV.open(filename, 'r')).  now CSV.parse accepts a
35138           string or a stream to be parsed e.g.
35139           CSV.parse("1,2\n3,r") #=> [['1', '2'], ['3', '4']]
35141         * test/csv/test_csv.rb: follow above changes.
35143 Wed May 26 14:19:42 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35145         * eval.c (rb_eval, eval): make line number consistent on eval with
35146           Proc.  [ruby-talk:101253]
35148 Wed May 26 13:59:17 2004  Dave Thomas  <dave@pragprog.com>
35150         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::skip_for_variable): Allow for
35151           'do' after for statement
35153 Wed May 26 13:56:03 2004  Dave Thomas  <dave@pragprog.com>
35155         * lib/rdoc/generators/html_generator.rb (Generators::MarkUp::style_url): Fix
35156           relative path to code CSS file
35158 Wed May 26 13:14:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35160         * io.c (rb_io_init_copy): copy also positions.  [ruby-talk:100910]
35162 Wed May 26 00:00:00 2004  why the lucky stiff  <why@ruby-lang.org>
35164         * ext/syck/syck.c (syck_new_parser): clear parser on init.
35165           thanks, ts. [ruby-core:02931]
35167         * ext/syck/token.c (sycklex_yaml_utf8): buffer underflow.
35168           thanks, ts. [ruby-core:02929]
35170         * lib/yaml/baseemitter.rb (indent_text): simpler flow block code.
35172 Tue May 25 11:54:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35174         * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block
35175           to a Proc.  [ruby-dev:23533]
35177         * parse.y (block_par, block_var): ditto.
35179 Tue May 25 01:50:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35181         * ext/openssl/ossl_asn1.c (ossl_i2d_ASN1_TYPE, ossl_ASN1_TYPE_free):
35182           workaround for the versions earlier than OpenSSL-0.9.7.
35184 Mon May 24 10:46:26 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
35186         * lib/rdoc/generators/template/html/html.rb: SYSTEM identifiers
35187           must be absolute URIs
35189 Sun May 23 04:53:50 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
35191         * lib/pstore.rb (transaction): allow overriding dump and load.
35192           [ruby-dev:23567]
35194         * lib/yaml/store.rb: follow lib/pstore.rb's change.
35196 Sat May 22 11:54:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35198         * MANIFEST: add test/openssl/test_x509store.rb.
35200         * ext/tk/MANIFEST: add recent files.
35202 Sat May 22 05:37:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35204         * ext/tk/lib/remote-tk.rb: (NEW library) controll Tk interpreters
35205           on the other processes by Tcl/Tk's 'send' command
35207 Fri May 21 09:22:05 2004  Dave Thomas  <dave@pragprog.com>
35209         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_parameters):
35210           Add ()'s around parameters that don't have them
35212 Fri May 21 02:21:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
35214         * lib/csv.rb: fixed a few bugs around multi char record/field separator.
35216         * test/csv/test_csv.rb: added boundary test for above feature.
35218 Thu May 20 17:02:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35220         * lib/mkmf.rb (check_sizeof): define result size.  [ruby-core:02911]
35222         * lib/mkmf.rb (create_header): macro name should not include equal
35223           sign.
35225 Thu May 20 14:35:52 2004  Tanaka Akira  <akr@m17n.org>
35227         * ext/socket/socket.c: check SCM_RIGHTS macro addition to
35228           the msg_control field to test existence of file descriptor passing
35229           by msg_control.
35231 Thu May 20 12:38:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35233         * numeric.c (flo_eq): always check if operands are NaN.
35234           [ruby-list:39685]
35236 Thu May 20 12:34:39 2004  Dave Thomas  <dave@pragprog.com>
35238         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_visibility):
35239           At Ryan Davis' suggestion, honor visibility modifers if guarded by a
35240           statement modifier
35242 Thu May 20 12:22:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35244         * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
35245           which always get compiled.
35246           [ruby-list:39683]
35248 Wed May 19 23:45:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35250         * test/inlinetest.rb (InlineTest::loadtest): requiring library with
35251           replaced $0 can make $0 == __FILE__ block be evaluated twice.
35253         * test/ruby/envutil.rb (EnvUtil::rubybin): give priority to
35254           environment variable.  [ruby-dev:23538]
35256 Wed May 19 11:08:10 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35258         * ext/tk/lib/tk.rb: change permition of TkObject#tk_send from
35259           private to public
35261 Wed May 19 02:29:36 2004  Minero Aoki  <aamine@loveruby.net>
35263         * lib/net/http.rb: support TRACE.
35265 Wed May 19 02:21:53 2004  Minero Aoki  <aamine@loveruby.net>
35267         * lib/net/http.rb: do not use class variables.
35269 Tue May 18 21:21:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
35271         * lib/csv.rb: writes lines with "\n" when row separator is not given.
35272           formerly it was "\r\n".
35274         * lib/csv.rb: [CAUTION] API change
35276           * CSV::Row removed.  a row is represented as just an Array.  since
35277             CSV::Row was a subclass of Array, it won't hurt almost all programs
35278             except one which depended CSV::Row#match.
35280           * CSV::Cell removed.  a cell is represented as just a String or
35281             nil(NULL).  this change will cause widespread destruction.
35283               CSV.open("foo.csv", "r") do |row|
35284                 row.each do |cell|
35285                   if cell.is_null       # Cell#is_null
35286                     p "(NULL)"
35287                   else
35288                     p cell.data         # Cell#data
35289                   end
35290                 end
35291               end
35293             must be just;
35295               CSV.open("foo.csv", "r") do |row|
35296                 row.each do |cell|
35297                   if cell.nil?
35298                     p "(NULL)"
35299                   else
35300                     p cell
35301                   end
35302                 end
35303               end
35305         * lib/csv.rb: [CAUTION] record separator(CR, LF, CR+LF) behavior
35306           change.  CSV.open, CSV.parse, and CSV,generate now do not force
35307           opened file binmode.  formerly it set binmode explicitly.
35309           with CSV.open, binmode of opened file depends the given mode
35310           parameter "r", "w", "rb", and "wb".  CSV.parse and CSV.generate open
35311           file with "r" and "w".
35313           setting mode properly is user's responsibility now.
35315         * lib/csv.rb: accepts String as a fs (field separator/column separator)
35316           and rs (record separator/row separator)
35318         * lib/csv.rb: added CSV.foreach(path, rs = nil, &block).  CSV.foreach
35319           now does not handle "| cmd" as a path different from IO.foreach.
35320           needed?
35322         * test/csv/test_csv.rb: updated.
35324 Tue May 18 14:24:20 2004  why the lucky stiff  <why@ruby-lang.org>
35326         * lib/yaml.rb: added rdoc to beginning of lib.
35328 Tue May 18 14:00:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35330         * node.h (NEW_DSTR): adjust list length.
35332         * parse.y (literal_concat): ditto.
35334 Tue May 18 09:30:25 2004  SASADA Koichi  <ko1@atdot.net>
35336         * eval.c (rb_method_node): search cache entry first.
35338 Mon May 17 16:04:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35340         * numeric.c (flo_to_s): it's preferable that "p 0.0" outputs "0.0"
35341           instead of "0.0e+00". [ruby-dev:23480]
35343         * numeric.c (flo_to_s): it's preferable that "p 0.00000000000000000001"
35344           outputs "1.0e-20" instead of "9.999999999999999e-21". (the precision
35345           is considered, but there is assumption DBL_DIG == 15 in current
35346           implementation)
35348 Mon May 17 10:13:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35350         * ext/socket/socket.c (setup_domain_and_type): honor duck typing.
35351           [ruby-dev:23522]
35353         * ext/socket/socket.c (sock_s_getnameinfo): ditto.
35355 Mon May 17 00:36:21 2004  why the lucky stiff  <why@ruby-lang.org>
35357         * lib/yaml/baseemitter.rb (indent_text): was forcing a mod value
35358           of zero at times, which kept some blocks from getting indentation.
35360 Mon May 17 00:07:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
35362         * lib/drb/drb.rb: Cosmetic documentation changes.
35364 Sun May 16 20:55:49 2004  Tanaka Akira  <akr@m17n.org>
35366         * ext/dbm/dbm.c (fdbm_initialize): accept optional 3rd argument to
35367           specify an open flag.
35368           (Init_dbm): define open flags: DBM::READER, DBM::WRITER, DBM::WRCREAT
35369           and DBM::NEWDB.
35371 Sat May 15 17:52:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35373         * test/ruby/test_float.rb(test_strtod): Add test for signed 0.000...1
35375 Sat May 15 14:20:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35377         * ext/syck/depend: add ruby's headers.
35379 Sat May 15 13:38:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35381         * ext/syck/MANIFEST, ext/syck/depend: new file.
35383         * lib/yaml/rubytypes.rb: range of exponential floats.  [ruby-core:02824]
35385         * test/yaml/test_yaml.rb: tests for strings start with colon and some
35386           round trip.
35388 Sat May 15 12:04:58 2004  why the lucky stiff  <why@ruby-lang.org>
35390         * lib/yaml.rb: removed fallback to pure Ruby parser.
35392         * lib/yaml/baseemitter.rb (node_text): rewriting folded scalars.
35394         * ext/syck/syck.h: reports style of scalars now, be they plain, block
35395           single-, or double-quoted.
35397         * ext/syck/syck.c: ditto.
35399         * ext/syck/gram.c: ditto.
35401         * ext/syck/node.c: ditto.
35403         * ext/syck/token.c: ditto.
35405         * ext/syck/rubyext.c (yaml_org_handler): symbols loaded only
35406           if scalar style is plain.
35408         * test/yaml/test_yaml.rb (test_perl_regexp): updated test to
35409           match new regexp serialization.
35411 Sat May 15 01:41:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35413         * eval.c (eval): forgot to restore $SAFE value before evaluating
35414           compiled node.  [ruby-core:02872]
35416 Sat May 15 01:33:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35418         * range.c (range_each_func): terminates loop if generating value
35419           is same to @end.  [ruby-talk:100269]
35421 Fri May 14 22:08:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35423         * string.c (rb_str_new4): should not reuse frozen shared string if
35424           the original is not an instance of String. [ruby-talk:100193]
35426 Fri May 14 21:29:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35428         * time.c (time_mdump): preserve GMT bit in the marshal data.
35429           [ruby-talk:100213]
35431 Fri May 14 18:37:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35433         * ext/tk/lib/tk/canvas.rb: improve coords support for canvas
35434           items. Now, supports all of the followings.
35435                TkcLine.new(c, 0, 0, 100, 100, :fill=>'red')
35436                TkcLine.new(c, [0, 0, 100, 100], :fill=>'red')
35437                TkcLine.new(c, [0, 0], [100, 100], :fill=>'red')
35438                TkcLine.new(c, [[0, 0], [100, 100]], :fill=>'red')
35439                TkcLine.new(c, :coords=>[0, 0, 100, 100], :fill=>'red')
35440                TkcLine.new(c, :coords=>[[0, 0], [100, 100]], :fill=>'red')
35442 Fri May 14 13:30:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35444         * test/ruby/test_float.rb: Add test for util.c revision 1.42.
35446 Fri May 14 12:13:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35448         * util.c (ruby_strtod): strtod("0", &end); => end should point '\0'.
35449          [ruby-dev:23498]
35451 Thu May 13 15:47:30 2004  akira yamada  <akira@ruby-lang.org>
35453         * lib/net/telnet.rb (Net::Telnet::login): "options" can specify
35454           regexps for login prompt and/or password prompt.
35456 Thu May 13 14:17:57 2004  why the lucky stiff  <why@ruby-lang.org>
35458         * ext/syck/rubyext.c (yaml_org_handler): some empty strings were
35459           loaded as symbols.
35461 Thu May 13 11:04:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35463         * pack.c (pack_pack): always add with null for 'Z'.
35465         * pack.c (pack_unpack): terminated by null for 'Z'.  [ruby-talk:98281]
35467 Wed May 12 19:59:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35469         * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
35470           [ruby-talk:99788]
35472 Wed May 12 17:41:42 2004  Tanaka Akira  <akr@m17n.org>
35474         * lib/resolv.rb (Resolv::DNS::Config): make it configurable without
35475           external file such as /etc/resolv.conf.
35477 Wed May 12 14:37:27 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35479         * ext/openssl/ossl_x509name.c: attribute value of DC (short name of
35480           domainComponent) should be IA5String.
35482 Wed May 12 13:20:19 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35484         * ext/tk/lib/tk/composite.rb: improve configure methods (based on
35485           the proposal of [ruby-talk:99671]).
35487 Wed May 12 11:51:08 2004  Dave Thomas  <dave@pragprog.com>
35489         * class.c (rb_obj_singleton_methods): fix rdoc
35491 Tue May 11 07:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35493         * eval.c (is_defined): do not protect exception during receiver
35494           evaluation.
35496 Mon May 10 22:28:14 2004  Minero Aoki  <aamine@loveruby.net>
35498         * lib/net/protocol.rb (each_crlf_line): remove junk line.
35500 Mon May 10 21:44:42 2004  Dave Thomas  <dave@pragprog.com>
35502         * lib/rdoc/generators/html_generator.rb: Change scheme for
35503           looking up symbols in  HTML generator.
35505 Mon May 10 16:45:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35507         * eval.c (eval): warning during eval should not cause deadlock.
35508           [ruby-talk:98651]
35510         * eval.c (rb_eval): raise TypeError exception for superclass
35511           mismatch.  [ruby-list:39567]
35513 Mon May 10 12:11:37 2004  Dave Thomas  <dave@pragprog.com>
35515         * lib/rdoc/generators/html_generator.rb: Hack to search parents
35516           for unqualified constant names.
35518 Mon May 10 01:18:15 2004  Minero Aoki  <aamine@loveruby.net>
35520         * lib/net/pop.rb (logging): append "\n".
35522 Sun May  9 23:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
35524         * lib/net/ftp.rb: ported documentation improvement from 1.8 branch
35526         * lib/net/imap.rb:   ditto
35528         * lib/net/pop.rb:    ditto
35530         * lib/net/smtp.rb:   ditto
35532         * lib/net/telnet.rb: ditto
35534 Sun May  9 23:34:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
35536         * test/ruby/test_float.rb: added test_strtod to test Float("0").
35538 Sun May  9 13:24:24 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35540         * lib/yaml/store.rb: use FileUtils::copy.
35542 Sun May  9 12:34:26 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35544         * regex.c: removed unused file.
35546 Sat May  8 10:53:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35548         * io.c (rb_f_open): open should not ignore block when "to_open"
35549           method is used.  [ruby-dev:23478]
35551 Fri May  7 22:07:39 2004  Minero Aoki  <aamine@loveruby.net>
35553         * lib/fileutils.rb (mv): new option `force'. [ruby-talk:99457]
35555         * lib/fileutils.rb: new method for command option reflection:
35556           FileUtils.commands, .options, .have_option?, .options_of,
35557           .collect_methods.
35559         * lib/fileutils.rb: module Verbose, NoWrite, DryRun do not have
35560           option flags @fileutils_verbose and @fileutils_noop, they make no
35561           sense.
35563 Fri May  7 21:50:21 2004  Dave Thomas  <dave@pragprog.com>
35565         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_include): Allow
35566           multiple arguments to 'include'
35568 Fri May  7 21:03:51 2004  Minero Aoki  <aamine@loveruby.net>
35570         * lib/fileutils.rb (fu_list): Array() breaks pathes including "\n".
35571           [ruby-core:02843]
35573         * test/fileutils/test_fileutils.rb (mkdir): test "\n" in path.
35575 Fri May  7 20:53:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35577         * ext/dbm/dbm.c (fdbm_modify): typo fixed. [ruby-dev:23473]
35579 Fri May  7 11:17:27 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35581         * util.c (ruby_strtod): "0.0000000000000000001" should be converted
35582           to 1.0e-19 instead of 0.0. (leading zeros aren't significant digits)
35583           [ruby-talk:99318] [ruby-dev:23465]
35585 Thu May  6 22:27:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35587         * ext/socket/socket.c (ippaddr): use NUMERICHOST if can not resolve
35588           hostname.
35590 Thu May  6 22:09:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35592         * ext/tk/tkutil.c (get_eval_string_core): bug fix. [ruby-dev:23466]
35594 Thu May  6 14:22:29 2004  why the lucky stiff  <why@ruby-lang.org>
35596         * lib/yaml/rubytypes.rb (to_yaml): added instance variable handling
35597           for Ranges, Strings, Structs, Regexps.
35599         * lib/yaml/rubytypes.rb (to_yaml_fold): new method for setting a
35600           String's flow style.
35602         * lib/yaml.rb (YAML::object_maker): now uses Object.allocate.
35604         * ext/syck/gram.c: fixed transfer methods on structs, broke it
35605           last commit.
35607 Thu May  6 14:38:02 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35609         * dir.c (rb_push_glob): simplified code (not change behavior)
35611 Thu May  6 13:32:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35613         * ext/extmk.rb: get rid of side effect of Config.expand, patched by
35614           <tttt01@infoseek.jp>  (ruby-bugs:PR#597)
35616 Thu May  6 11:40:28 2004  Shugo Maeda  <shugo@ruby-lang.org>
35618         * lib/net/imap.rb (string): accept NIL.
35620         * lib/net/imap.rb (body_type_basic): allow body-fields omissions.
35622 Thu May  6 01:59:04 2004  Dave Thomas  <dave@pragprog.com>
35624         * lib/rdoc/generators/html_generator.rb (Generators::HtmlMethod::params):
35625           Don't include the &block parameter if we have explicit
35626           yield parameters.
35628 Wed May  5 03:52:31 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35630         * lib/rinda/ring.rb: use recv instead of recvfrom.
35632 Wed May  5 00:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
35634         * lib/gserver.rb: documented
35635         * lib/xmlrpc/README.txt: introduced for documentation purposes
35637 Mon May  3 09:47:24 2004  Dave Thomas  <dave@pragprog.com>
35639         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
35640           Fix parsing bug if yield called within 1 line block
35642 Sun May  2 21:56:48 2004  Minero Aoki  <aamine@loveruby.net>
35644         * test/fileutils/test_fileutils.rb (rm_f, rm_r): test :force flag.
35646 Sun May  2 01:04:38 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35648         * ext/tcltklib, ext/tk: renewal Ruby/Tk
35650 Fri Apr 30 20:08:41 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35652         * time.c (SIZEOF_TIME_T): support SIZEOF_TIME_T == SIZEOF_INT.
35654 Wed Apr 28 01:26:11 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35656         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8.
35658 Wed Apr 28 01:16:23 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35660         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.7.
35662 Tue Apr 27 14:43:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35664         * common.mk: LIBURUBY_A is needed for extconf.rb even when
35665           cross-compiling.
35667 Tue Apr 27 13:33:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35669         * parse.y (string_content): turn off NODE_NEWLINE flag to avoid
35670           unnecessary line trace for inlined expression.
35671           (ruby-bugs PR#1320)
35673 Tue Apr 27 08:15:13 2004  why the lucky stiff  <why@ruby-lang.org>
35675         * lib/yaml/rubytypes.rb: passing Range tests.
35677         * ext/syck/syck.h: version 0.44.
35679         * ext/syck/gram.c: transfers no longer open an indentation.
35680           fixed transfers which precede blocks.
35682         * ext/syck/token.c: ditto.
35684         * ext/syck/syck.c: fixed segfault if an anchor has been released already.
35686         * ext/syck/node.c (syck_free_members): organized order of free'd nodes.
35688         * ext/syck/rubyext.c (syck_emitter_write_m): test for proper string with
35689           StringValue.
35691 Mon Apr 26 23:56:54 2004  Daniel Kelley  <news-1082945587@dkelley.gmp.san-jose.ca.us>
35693         * README.EXT, README.EXT.ja: fixed wrong function signature.
35694           [ruby-talk:98349]
35696 Mon Apr 26 21:40:09 2004  Dave Thomas  <dave@pragprog.com>
35698         * lib/rdoc/code_objects.rb (RDoc::Context::add_alias): Only alias
35699           to instance methods.
35701 Sun Apr 25 18:26:23 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35703         * configure.in (ac_cv_func_fork): set to no on DJGPP.
35705 Sat Apr 24 14:32:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35707         * re.c: applied stack error handling patch. [ruby-dev:23431]
35709 Sat Apr 24 10:38:31 2004  Dave Thomas  <dave@pragprog.com>
35711         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::group_lines):
35712           Fix bug where consecutive headings are merged.
35714 Fri Apr 23 23:24:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35716         * lib/mkmf.rb: $hdrdir should not contain macros, for backward
35717           compatibility.  [bruby-dev:28]
35719         * lib/mkmf.rb (create_makefile): in the case of extout, just copy
35720           script files, without comparison.
35722 Fri Apr 23 16:38:46 2004  Tanaka Akira  <akr@m17n.org>
35724         * lib/pathname.rb: sync taint/freeze flag between
35725           a pathname object and its internal string object.
35727 Fri Apr 23 14:52:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35729         * parse.y (stmt, arg, aref_args): should not make sole splat into
35730           array, in aref_args other than aref with op_asgn.
35732 Fri Apr 23 14:14:38 2004  Tanaka Akira  <akr@m17n.org>
35734         * lib/resolv.rb: don't use Regexp#source to embed regexps.
35735           [ruby-dev:23432]
35737 Thu Apr 22 18:25:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35739         * common.mk, ext/extmk.rb: make ext and .ext get removed by distclean.
35741 Thu Apr 22 10:07:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
35743         * */Makefile.sub (distclean-local): should remove $(RBCONFIG).
35745 Thu Apr 22 04:17:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35747         * eval.c (rb_mod_define_method): allow binding methods to modules.
35748           [ruby-dev:23410]
35750         * parse.y (aref_args): should pass expanded list.  [ruby-core:02793]
35752 Thu Apr 22 01:12:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35754         * numeric.c (flo_to_s): tweak output string based to preserve
35755           decimal point and to remove trailing zeros.  [ruby-talk:97891]
35757         * string.c (rb_str_index_m): use unsigned comparison for T_FIXNUM
35758           search.  [ruby-talk:97342]
35760 Wed Apr 21 23:04:42 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35762         * lib/rinda/rinda.rb, test/rinda/test_rinda.rb: check Hash tuple size.
35764 Wed Apr 21 20:05:00 2004  Tanaka Akira  <akr@m17n.org>
35766         * lib/open-uri.rb (URI::HTTP#proxy_open): set Host: field explicitly.
35767           [ruby-list:39542]
35769 Wed Apr 21 18:39:46 2004  Minero Aoki  <aamine@loveruby.net>
35771         * lib/net/smtp.rb: merge SMTP-TLS patch.  This patch is
35772           contributed by Daniel Hob. [ruby-core:02789]
35774 Wed Apr 21 18:23:45 2004  Minero Aoki  <aamine@loveruby.net>
35776         * lib/net/smtp.rb: change coding style: def m( a ) -> def m(a).
35778 Wed Apr 21 18:01:47 2004  Minero Aoki  <aamine@loveruby.net>
35780         * lib/net/pop.rb: do not use class variables.
35782         * lib/net/pop.rb (do_start): ensure to clean up connection when
35783           authentication failed.
35785 Wed Apr 21 17:23:59 2004  Minero Aoki  <aamine@loveruby.net>
35787         * lib/net/http.rb (HTTP#connect): CONNECT must precede SSL connect.
35788           [ruby-dev:23379]
35790         * lib/net/http.rb (HTTP.new): class variables are not inherited
35791           now.
35793 Wed Apr 21 15:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35795         * lib/test/unit/ui/console/testrunner.rb (test_started): restore $0
35796           after changing process title.  [ruby-talk:97426]
35798 Wed Apr 21 10:18:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35800         * process.c(rb_spawn): fix SEGV at "p system('command line here')"
35801          (may happen only in bccwin32) [ruby-dev:23380]
35803 Mon Apr 19 20:58:44 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35805         * dir.c: Updated RDocs.
35807 Mon Apr 19 18:11:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35809         * hash.c (rb_hash_equal): returns true if two hashes have same set
35810           of key-value set.  [ruby-talk:97559]
35812         * hash.c (rb_hash_eql): returns true if two hashes are equal and
35813           have same default values.
35815 Mon Apr 19 08:19:11 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
35817         * dln.c, io.c, pack.c, lib/benchmark.rb, lib/cgi.rb, lib/csv.rb,
35818           lib/date.rb, lib/ftools.rb, lib/getoptlong.rb, lib/logger.rb,
35819           lib/matrix.rb, lib/monitor.rb, lib/set.rb, lib/thwait.rb,
35820           lib/timeout.rb, lib/yaml.rb, lib/drb/drb.rb, lib/irb/workspace.rb,
35821           lib/net/ftp.rb, lib/net/http.rb, lib/net/imap.rb, lib/net/pop.rb,
35822           lib/net/telnet.rb, lib/racc/parser.rb, lib/rinda/rinda.rb,
35823           lib/rinda/tuplespace.rb, lib/shell/command-processor.rb,
35824           lib/soap/rpc/soaplet.rb, lib/test/unit/testcase.rb,
35825           lib/test/unit/testsuite.rb: typo fix.
35827 Mon Apr 19 08:14:18 2004  Dave Thomas  <dave@pragprog.com>
35829         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Allow for
35830           #ifdef HAVE_PROTOTYPES
35832 Fri Apr 16 17:04:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
35834         * string.c (rb_str_equal): always returns true or false, never
35835           returns nil. [ruby-dev:23404]
35837 Fri Apr 16 12:38:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35839         * lib/drb/drb.rb (DRb::DRbUnknown::initialize): Exception#to_str is
35840           deprecated.
35842         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform): multiple
35843           value class changed.
35845         * lib/drb/invokemethod.rb (DRb::DRbServer::InvokeMethod18Mixin::block_yield):
35846           ditto.
35848 Fri Apr 16 08:27:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35850         * ext/extmk.rb: skip linking when libraries to be preloaded not
35851           compiled.  [ruby-list:39561]
35853 Thu Apr 15 19:57:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35855         * process.c (pst_success_p): new method Process::Status#success?.
35856           [ruby-dev:23385]
35858         * rubytest.rb: do nothing while cross-compiling, return status in
35859           system independent style.
35861 Thu Apr 15 19:26:54 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35863         * dir.c (rb_push_glob): Dir.glob() should return nil if block is given.
35864           (http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Dir)
35866         * dir.c (push_braces): Dir.glob() should handle '{ }' nested more than
35867           3 times.
35869         * dir.c (push_braces, rb_push_glob): Dir.glob() should handle escaped
35870           '{' and '}' and ','.
35872           [ruby-dev:23376]
35874 Thu Apr 15 17:12:13 2004  Tanaka Akira  <akr@m17n.org>
35876         * ext/gdbm/gdbm.c (Init_gdbm): define GDBM::READER, GDBM::WRITER,
35877           GDBM::WRCREAT and GDBM::NEWDB.
35878           (fgdbm_initialize): use specified read/write flag.
35880 Wed Apr 14 13:06:09 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
35882         * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c,
35883           process.c, re.c, string.c: typos in RDoc comments.  [ruby-core:02783]
35885 Wed Apr 14 11:29:56 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
35887         * numeric.c (flo_eq): workaround for bcc32's bug.
35888           (ruby-bugs-ja:PR#594)
35890 Wed Apr 14 11:06:38 2004  Dave Thomas  <dave@pragprog.com>
35892         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::scan): Changed
35893           behavior of :enddoc: -- it now unconditionally terminates
35894           processing of the current file.
35896 Wed Apr 14 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35898         * defines.h: include <net/socket.h> to get fd_set definition in BeOS.
35900 Tue Apr 13 23:00:55 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35902         * lib/rinda/rinda.rb: change pattern matching.
35903           a === b -> a == b || a === b. [druby-ja:98]
35905         * test/rinda/test_rinda.rb: ditto.
35907 Tue Apr 13 21:50:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35909         * bcc32/Makefile.sub (PHONY): Borland make disallows empty command
35910           rules.
35912 Tue Apr 13 17:55:16 2004  Minero Aoki  <aamine@loveruby.net>
35914         * lib/net/http.rb (begin_transport): should not overwrite HTTP
35915           request header. [ruby-list:39543]
35917 Tue Apr 13 16:48:00 2004  Minero Aoki  <aamine@loveruby.net>
35919         * lib/net/pop.rb: merge POP3S patch.  This patch is contributed by
35920           Daniel Hobe.
35922 Tue Apr 13 02:56:29 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35924         * common.mk: changed the order of ascii.c alphabetically.
35926 Mon Apr 12 19:11:21 2004  Eric Hodel  <drbrain@segment7.net>
35928         * gc.c (rb_gc_copy_finalizer): typo.  [ruby-core:02774]
35930 Mon Apr 12 18:45:58 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35932         * ext/openssl/ossl_x509name.c (ossl_x509name_init_i): should return
35933           a value.
35935 Mon Apr 12 10:39:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35937         * dir.c (rb_glob2, rb_glob, push_globs, push_braces, rb_push_glob):
35938           fix memory leak. (leaked when block was interrupted)
35940 Sun Apr 11 19:10:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35942         * ruby.c (require_libraries): restore source file/line after
35943           statically linked extensions initialized.  [ruby-dev:23357]
35945 Sun Apr 11 10:47:04 2004  Dave Thomas  <dave@pragprog.com>
35947         * lib/rdoc/code_objects.rb (RDoc::TopLevel::add_class_or_module): Toplevel
35948           classes and modules are a special case too... (handle extending existing
35949           classes with or without :enddoc:)
35951 Sat Apr 10 23:51:13 2004  Dave Thomas  <dave@pragprog.com>
35953         * lib/rdoc/code_objects.rb (RDoc::Context::add_to): Implementation of :enddoc:
35954           made one too many assumptions...
35956 Sat Apr 10 00:00:19 2004  Dave Thomas  <dave@pragprog.com>
35958         * lib/rdoc/markup/simple_markup/inline.rb: Fix problem
35959           with \_cat_<b>dog</b>
35961 Fri Apr  9 17:05:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35963         * dir.c (has_magic, find_dirsep): incomplete '[' matches no character
35964           in Dir.glob. (follows File.fnmatch's behavior)
35966         * dir.c (fnmatch_helper): incomplete escape is ignored in File.fnmatch.
35967           (follows Dir.glob's behavior)
35969         * dir.c (find_dirsep): '/' between '[' and ']' is ignored in Dir.glob.
35970           (follows File.fnmatch with File::FNM_PATHNAME 's behavior)
35972         * dir.c (find_dirsep): escaped slash '\/' loses its meaning as
35973           directory separator in Dir.glob.
35975           [ruby-dev:23291]
35977 Thu Apr  8 20:25:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35979         * ext/extmk.rb (extmake): skip uncompiled extensions.
35981         * lib/mkmf.rb (create_makefile): emit no rules for static library if
35982           $static is nil, e.g., outside of ext/.
35984         * lib/test/unit/ui/console/testrunner.rb (test_started): show test
35985           name via $0.
35987         * runruby.rb: set environments to use the compiled binary.
35989         * test/runner.rb: do nothing while cross-compiling.
35991         * test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
35992           know ruby binary, and restore $: after require.
35994         * test/ruby/envutil.rb: give priority to RUBY environment variable to
35995           use just compiled binary and libraries.
35997 Thu Apr  8 19:03:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35999         * io.c (rb_io_binmode): inverted condition.  [ruby-dev:23349]
36001 Thu Apr  8 18:22:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36003         * ext/iconv/iconv.c (iconv_s_list): return encoding list if no block
36004           is given.  [ruby-dev:23063]
36006 Wed Apr  7 15:29:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36008         * pack.c (pack_pack): use NUM2INT() instead of num2i32().
36010 Wed Apr  7 12:32:02 2004  Kouhei Sutou  <kou@cozmixng.org>
36012         * lib/rss/parser.rb, lib/rss/1.0.rb: accepted rdf:resource or
36013           resource attribute in rdf:li.
36014         * test/rss/test_parser.rb: added test for above change.
36016         * lib/rss/dublincore.rb: reverted style.
36018         * lib/rss/xmlparser.rb: normalized XMLParser class hierarchy.
36020 Wed Apr  7 10:43:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36022         * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
36023           doesn't work for object files on VC.
36025         * */Makefile.sub (config.h): need SIZEOF_TIME_T now.
36027 Wed Apr  7 00:24:34 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36029         * lib/rinda/rinda.rb: fix hash tuple bug.
36031         * lib/rinda/tuplespace.rb: ditto.
36033         * test/rinda/test_rinda.rb
36035 Tue Apr  6 18:24:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36037         * file.c (rb_get_path): get path string via "to_path" method if
36038           path object is not a string. [Ruby2]
36040         * gc.c (rb_gc_call_finalizer_at_exit): do not free threads in the
36041           exit finalizers.
36043         * io.c (rb_io_reopen): should use rb_io_check_io().
36045 Tue Apr  6 16:46:09 2004  Tanaka Akira  <akr@m17n.org>
36047         * configure.in: check the size of time_t.
36049         * time.c (time_add): new function.
36050           (time_plus): use time_add.
36051           (time_minus): use time_add.
36053 Tue Apr  6 13:11:48 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36055         * ext/socket/socket.c (raise_socket_error): never return.
36057         * ext/socket/socket.c (make_hostent): must return value.
36059 Tue Apr  6 00:14:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36061         * error.c (Init_Exception): remove Exception#to_str. [Ruby2]
36063         * eval.c (error_print): should no call "to_str" anymore use
36064           "message" method instead.
36066         * io.c (rb_f_open): Kernel#open() calls "to_open" if the first
36067           argument responds to it. [Ruby2]
36069 Tue Apr  6 00:13:43 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36071         * lib/rinda/rinda.rb: add require 'drb/drb'
36073 Mon Apr  5 22:25:32 2004  Tanaka Akira  <akr@m17n.org>
36075         * test/zlib/test_zlib.rb: new file.
36076           (TestZlibGzipWriter#test_new_nil): test for [ruby-dev:23228].
36078 Mon Apr  5 22:16:23 2004  Minero Aoki  <aamine@loveruby.net>
36080         * parse.y (assoc_list): {a: 1, b: 2} should be allowed.
36081           [ruby-dev:23328]
36083 Mon Apr  5 19:43:40 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36085         * regexec.c: imported Oni Guruma 2.2.6.
36087 Mon Apr  5 19:39:10 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36089         * regparse.c, oniguruma.h: imported Oni Guruma 2.2.6.
36091 Mon Apr  5 12:12:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36093         * ext/socket/socket.c (raise_socket_error): some platforms don't have
36094           EAI_SYSTEM.
36096 Mon Apr  5 08:18:23 2004  Dave Thomas  <dave@pragprog.com>
36098         * lib/rdoc/rdoc.rb: Remove leading ./ from file names so that cross
36099           references work properly.
36101 Sun Apr  4 14:01:20 2004  Dave Thomas  <dave@pragprog.com>
36103         * lib/rdoc/options.rb (Options::parse): Allow multiple -x options to
36104           RDoc. Fix bug where files weren't being excluded properly
36106 Sat Apr  3 09:36:38 2004  why the lucky stiff  <why@ruby-lang.org>
36108         * ext/syck/syck.h: version 0.43.
36110 Sat Apr  3 08:28:47 2004  why the lucky stiff  <why@ruby-lang.org>
36112         * ext/syck/lib/gram.c: allow root-level inline collections.
36113           [ruby-talk:94922]
36115         * lib/yaml/rubytypes.rb (Symbol#to_yaml): emit symbols as implicits.
36116           [ruby-talk:94930]
36118 Fri Apr  2 19:28:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36120         * bcc32/Makefile.sub (OUTFLAG): needed for static-linked-ext.
36122 Fri Apr  2 18:00:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36124         * ext/extmk.rb (extmake): extract necessary variables for static link
36125           from Makefile.
36127         * lib/mkmf.rb (create_makefile): save preload and libpath for next
36128           compile.
36130 Fri Apr  2 17:27:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36132         * eval.c (top_include): include in the wrapped load is done for
36133           the wrapper, not for a singleton class for wrapped main.
36134           [ruby-dev:23305]
36136 Fri Apr  2 15:13:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36138         * bignum.c (rb_big_eq): use temporary double variable to save the
36139           result (internal float register may be bigger than 64 bits, for
36140           example, 80 bits on x86).  [ruby-dev:23311]
36142 Fri Apr  2 14:35:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36144         * eval.c (block_pass): should generate unique identifier of the
36145           pushing block.  [ruby-talk:96363]
36147 Fri Apr  2 11:36:20 2004  Minero Aoki  <aamine@loveruby.net>
36149         * eval.c (Init_load): make $LOADED_FEATURES built-in.
36150           [ruby-dev:23299]
36152         * ruby.c (ruby_prog_init): make $PROGRAM_NAME built-in.
36154         * lib/English.rb: remove $LOADED_FEATURES and $PROGRAM_NAME.
36156 Fri Apr  2 07:31:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36158         * ext/socket/socket.c: mistakingly removed do_not_reverse_lookup.
36159           [ruby-list:39475]
36161         * ext/socket/socket.c (make_hostent): fix memory leak, based on
36162           the patch from HORIKAWA Hisashi <vzw00011@nifty.ne.jp>.
36164 Thu Apr  1 22:55:33 2004  Dave Thomas  <dave@pragprog.com>
36166         * lib/rdoc/parsers/parse_rb.rb: Allow rdoc comments in
36167           =begin rdoc/=end
36169         * lib/rdoc/parsers/parse_rb.rb: Fix problem with comment in
36170           top-level method being taken as file comment.
36172 Thu Apr  1 22:55:04 2004  Dave Thomas  <dave@pragprog.com>
36174         * lib/rdoc/ri/ri_options.rb: Fix undefined variable warning.
36176 Thu Apr  1 19:58:37 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36178         * lib/soap/mapping/{factory.rb,registry.rb}: fixed illegal mapped URI
36179           object with soap/marshal.
36180           added URIFactory class for URI mapping.  BasetypeFactory checks
36181           instance_variables when original mapping is not allowed (ivar must
36182           be empty).  Instance of URI have instance_variables but it must be
36183           llowed whenever original mapping is allowed or not.
36185 Wed Mar 31 19:06:23 2004  Tanaka Akira  <akr@m17n.org>
36187         * time.c (year_leap_p): new function.
36188           (timegm_noleapsecond): ditto.
36189           (search_time_t): use timegm_noleapsecond instead of
36190           mktime for first guess.
36192 Wed Mar 31 12:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36194         * lib/delegate.rb (DelegateClass): define internal methods of the
36195           result class, but not metaclass of the caller.  [ruby-talk:96156]
36197         * intern.h: provide proper prototypes.  [ruby-core:02724]
36199         * ruby.h: missing.h is now prerequisite to intern.h.
36201 Wed Mar 31 11:17:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36203         * pack.c (pack_pack): raises RangeError if uv is out of UTF8 value
36204           range.  [ruby-dev:23281]
36206         * io.c (rb_io_binmode): stdio buffer should be empty when calling
36207           IO#binmode.  [ruby-talk:96155]
36209 Tue Mar 30 20:25:34 2004  Tanaka Akira  <akr@m17n.org>
36211         * time.c (search_time_t): limit guess range by mktime if it is
36212           available.  [ruby-dev:23274]
36214 Tue Mar 30 18:19:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36216         * eval.c (rb_eval): fix SEGV at retry in iterator's receiver.
36217           [ruby-dev:23227]
36219 Mon Mar 29 20:17:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36221         * process.c (rb_exec): follow older behavior if close-on-exec is not
36222           available.
36224         * process.c (rb_fork): protect from exceptions while waiting failed
36225           process, if status is given.
36227 Sun Mar 28 16:25:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36229         * cygwin/GNUmakefile.in (clean-local, distclean-local): remove
36230           work files.
36232         * win32/Makefile.sub (clean-local): ditto.
36234 Sun Mar 28 14:23:02 2004  Minero Aoki  <aamine@loveruby.net>
36236         * lib/net/pop.rb: def m( arg ) -> def m(arg).
36238 Sun Mar 28 14:09:13 2004  Minero Aoki  <aamine@loveruby.net>
36240         * lib/net/pop.rb (auth): failed when account/password include "%".
36241           [ruby-talk:95933]
36243 Sat Mar 27 21:40:41 2004  Tanaka Akira  <akr@m17n.org>
36245         * lib/open-uri.rb: permit extra semicolon in content-type field.
36247 Sat Mar 27 10:40:48 2004  Tanaka Akira  <akr@m17n.org>
36249         * (lib/pp.rb, lib/prettyprint.rb): define seplist in PP::PPMethods
36250           instead of PrettyPrint.
36252 Sat Mar 27 01:47:09 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36254         * lib/logger.rb: trim tail space of each line.  no user visible change.
36256         * lib/rss/dublincore.rb: fixed class definition mismatch.
36258         * sample/openssl/gen_csr.rb: fixed wrong usage text.
36260 Thu Mar 25 23:15:24 2004  Dave Thomas  <dave@pragprog.com>
36262         * lib/rdoc/ri/ri_options.rb (RI::Options::show_version):
36263           Add --version option
36265 Thu Mar 25 21:45:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
36267         * ext/bigdecimal/bigdecimal.c: Bug in + and - reported by Bret Jolly
36268           fixed.
36270 Thu Mar 25 21:01:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36272         * version.c (ruby_show_copyright): obtain copyright year from
36273           RUBY_RELEASE_YEAR.
36275         * win32/resource.rb: ditto.
36277 Thu Mar 25 19:37:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36279         * win32/resource.rb: default rubyw icon to ruby.ico, and let DLL also
36280           include them.
36282         * win32/resource.rb: include winver.h for older WindowsCE.
36284 Thu Mar 25 14:01:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36286         * common.mk, */Makefile.sub (lib, dll): phony targets.
36288         * configure.in (ruby, miniruby): ditto.
36290         * cygwin/GNUmakefile.in (rubyw): ditto.
36292 Thu Mar 25 04:16:18 2004  Dave Thomas  <dave@pragprog.com>
36294         * lib/rdoc/ri/ri_options.rb (RI::Options): Add the --list-names option,
36295           which dumps our all known names
36297 Thu Mar 25 03:57:47 2004  Dave Thomas  <dave@pragprog.com>
36299         * lib/rdoc/ri/ri_util.rb (NameDescriptor::initialize): No longer
36300           allow nested classes to be designated using "."--you must
36301           now use "::"
36303 Thu Mar 25 02:00:18 2004  Dave Thomas  <dave@pragprog.com>
36305         * lib/rdoc/generators/template/html/one_page_html.rb (Page):
36306           Fix to work with C modules.
36308 Wed Mar 24 20:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
36310         * lib/uri.rb: Documented (thanks Dmitry V. Sabanin).
36311         * lib/uri/common.rb: Ditto.
36312         * lib/uri/ftp.rb: Ditto.
36313         * lib/uri/generic.rb: Ditto.
36314         * lib/uri/http.rb: Ditto.
36315         * lib/uri/https.rb: Ditto.
36316         * lib/uri/ldap.rb: Ditto.
36317         * lib/uri/mailto.rb: Ditto.
36319 Wed Mar 24 18:48:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36321         * lib/mkmf.rb ($ruby, $topdir, $hdrdir): should not be affected by
36322           DESTDIR after installed.
36324         * lib/mkmf.rb (dummy_makefile): default file lists to be cleaned.
36326 Wed Mar 24 12:32:56 2004  Dave Thomas  <dave@pragprog.com>
36328         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_class_module):
36329           Don't document methods if we don't know for sure the
36330           class or module.
36332         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
36333           Don't store documentation for singleton classes if we
36334           don't know the real class.
36336 Wed Mar 24 11:11:26 2004  Dave Thomas  <dave@pragprog.com>
36338         * lib/rdoc/generators/html_generator.rb (Generators::HTMLGenerator::load_html_template):
36339           Allow non-RDoc templates by putting a slash in the template name
36341 Wed Mar 24 10:05:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36343         * lib/tempfile.rb (Tempfile::_close): should not clear @tmpname
36344           until the file is really removed. [ruby-core:02684]
36346 Wed Mar 24 04:12:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36348         * object.c (rb_mod_cvar_get): new method Module#class_variable_get.
36350         * object.c (rb_mod_cvar_set): ditto (Module#class_variable_set).
36352 Tue Mar 23 17:45:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36354         * eval.c (rb_thread_atfork): 1.9 warns no more for thread
36355           termination.  [ruby-dev:23212]
36357 Tue Mar 23 14:46:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36359         * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
36360           separate files under directories due to directory separator.
36362         * */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
36363           removed.
36365         * win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
36366           rules.
36368         * cygwin/GNUmakefile.in: some mingw stuffs were missed.
36370         * lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
36371           from command lines.
36373         * bcc32/Makefile.sub: needs bcc32/mkexports.rb.
36375 Mon Mar 22 08:21:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36377         * Makefile.in, */Makefile.sub, common.mk: extract common portions.
36379         * Makefile.in, cygwin/GNUmakefile.in, */Makefile.sub (RBCONFIG):
36380           separated time stamp file for rbconfig.rb.
36382         * configure.in: append common.mk to Makefile.
36384         * mkconfig.rb: keep mtime of rbconfig.rb if unchanged.
36386         * win32/rm.bat: remove multiple files.
36388         * wince/mkconfig_wce.rb: use fake.rb instead.
36390 Sun Mar 21 22:17:35 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36392         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host):
36393           sort @virtual_hosts in address, port, host order.
36395         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
36396           hostname should not be match if :ServerAlias is not given.
36398 Sun Mar 21 21:11:16 2004  Keiju Ishitsuka  <keiju@ishitsuka.com>
36400         * lib/shell/*: bug fix for Shell#system(command_line_string).
36402 Sun Mar 21 21:04:42 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36404         * ruby.1: add -width option to .Bl for old groff.
36406 Sun Mar 21 18:57:37 2004  Kouhei Sutou  <kou@cozmixng.org>
36408         * test/rss/*: Test::Unit::TestCase -> RSS::TestCase and
36409           Test::Unit::Assertions -> RSS::Assertions.
36411 Sun Mar 21 18:48:20 2004  Kouhei Sutou  <kou@cozmixng.org>
36413         * lib/rss/{rss,dublincore,syndication}.rb: handled W3CDTF correctly.
36415 Sun Mar 21 18:15:29 2004  Kouhei Sutou  <kou@cozmixng.org>
36417         * test/rss/test_xml-stylesheet.rb: added tests for xml-stylesheet.
36419         * lib/rss/xml-stylesheet.rb: added xml-stylesheet parsing
36420           function.
36422 Sat Mar 20 23:51:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36424         * eval.c (rb_require_safe): preserve old ruby_errinfo.
36425           [ruby-talk:95409]
36427         * eval.c (rb_f_raise): should not clear backtrace information if
36428           exception object already have one.
36430 Sat Mar 20 21:21:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36432         * ext/extmk.rb: rm -rf $extout, not extout.
36434 Sat Mar 20 15:25:36 2004  Dave Thomas  <dave@pragprog.com>
36436         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Force
36437           page background to white.
36439 Sat Mar 20 09:33:36 2004  Tadayoshi Funaba  <tadf@dotrb.org>
36441         * lib/date.rb, lib/date/format.rb: _parse() now accepts fractional
36442           part of second minute that follows a comma or a full stop.
36444 Fri Mar 19 21:06:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36446         * parse.y (assoc_list): allow {sym: val} style Hash. [Ruby2]
36447           this change is done by Nobuyoshi Nakada <nobu@ruby-lang.org>.
36449 Fri Mar 19 15:15:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36451         * variable.c (rb_cvar_set): class variables become private to the
36452           particular class/module. [Ruby2]
36454         * variable.c (rb_cvar_get): ditto.
36456         * variable.c (rb_cvar_defined): ditto.
36458 Fri Mar 19 11:31:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36460         * lib/mkmf.rb ($beos, $solaris): add OS flags.
36462         * lib/mkmf.rb (RUBY): / is not recognized as path separator on
36463            nmake/bmake. [ruby-list:39388]
36465         * lib/mkmf.rb (CLEANLIBS, CLEANOBJS): should remove *.exp with *.so.
36467 Fri Mar 19 01:55:57 2004  Mauricio Fernandez  <batsman.geo@yahoo.com>
36469         * io.c (rb_io_sync): need not to check writable. [ruby-core:02674]
36471 Thu Mar 18 19:47:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36473         * instruby.rb, rubytest.rb: do not depend on srcdir.
36475 Thu Mar 18 18:50:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36477         * mkconfig.rb: no longer embed srcdir and compile_dir into
36478           rbconfig.rb.
36480         * ext/extmk.rb, lib/mkmf.rb: obtain top_srcdir and topdir from library
36481           paths.
36483 Thu Mar 18 17:46:35 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36485         * lib/drb/drb.rb: do not undef :to_a.
36487 Thu Mar 18 16:22:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36489         * eval.c (proc_eq): avoid false positive by using scope and
36490           dyna_vars.  no longer use frame.uniq.
36492         * eval.c (proc_arity): arity is now defined as number of
36493           parameters that would not be ignored. i.e. Proc.new{}.arity
36494           returns zero.  update test suites too.
36496 Thu Mar 18 15:27:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36498         * eval.c: remove specialized version of rb_Array().  use simple
36499           one defined in object.c.
36501         * object.c (Init_Object): remove Kernel#to_a.
36503         * enum.c (enum_zip): use "to_a" instead of "to_ary".
36505 Wed Mar 17 00:22:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36507         * oniguruma.h: imported Oniguruma 2.2.5.
36508         * regparse.c: ditto.
36510 Tue Mar 16 11:14:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36512         * dir.c (fnmatch_helper): File.fnmatch('\.', '.') should return true.
36513           (Rev1.112 lost compatiblity)
36515         * dir.c (fnmatch_helper): File.fnmatch('\/', '/', File::FNM_PATHNAME)
36516           should return true. (Rev1.112 lost compatiblity)
36518         * dir.c (fnmatch): File.fnmatch('**/.boo', '.foo/.boo',
36519           File::FNM_PATHNAME) should return false because of leading period.
36521 Mon Mar 15 17:01:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36523         * error.c (exc_initialize): calling 'to_str' each time just for
36524           type checking is too heavy.  [ruby-core:02661]
36526 Mon Mar 15 10:14:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36528         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SocketForwarder):
36529           add do_not_reverse_lookup.
36531 Mon Mar 15 07:39:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36533         * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this
36534           yield is not break destination. [ruby-dev:23197]
36536 Sun Mar 14 22:07:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36538         * eval.c (rb_thread_raise): err at unstarted thread.  (PR#1302)
36540 Sat Mar 13 14:56:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36542         * test/drb/ut_drb.rb: use 'druby://localhost:0'. [ruby-dev:23078]
36544         * test/drb/ut_eval.rb: ditto.
36546         * test/drb/ut_large.rb: ditto.
36548         * test/drb/ut_safe1.rb: ditto.
36550         * test/drb/ut_drb_drbssl.rb: use 'drbssl://localhost:0'.
36552 Fri Mar 12 23:52:56 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36554         * dir.c (fnmatch): directory recursion '**/' can be used with
36555           File::FNM_PATHNAME. [ruby-dev:22901]
36557         * dir.c (fnmatch, fnmatch_helper): only '/' is accepted as path
36558           separator even in DOSISH environment. [ruby-dev:22974]
36559           [ruby-list:39337]
36561         * dir.c (fnmatch_helper): faster '*' matching.
36563 Fri Mar 12 20:19:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36565         * configure.in (rb_cv_noreturn): default for platforms not support
36566           prototypes.
36568         * ruby.c (ruby_init_loadpath): buffer for path name should have
36569           MAXPATHLEN.
36571         * lib/mkmf.rb (configuration): include topdir and hdrdir in VPATH.
36573         * lib/mkmf.rb (create_makefile): default dependency rule.
36575 Fri Mar 12 07:35:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36577         * lib/webrick/config.rb (WEBrick::Config::General): add
36578           :DoNotReverseLookup.
36580         * lib/webrick/server.rb (WEBrick::GenericServer#accept): call
36581           do_not_reverse_lookup for each socket if :DoNotReverseLookup
36582           is set.  [ruby-code:02357]
36584 Wed Mar 10 22:26:25 2004  Minero Aoki  <aamine@loveruby.net>
36586         * lib/fileutils.rb (remove_dir): should handle symlink correctly.
36587           This patch is contributed by Christian Loew.  [ruby-talk:94635]
36589 Wed Mar 10 16:28:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36591         * eval.c (return_jump): set return value to the return
36592           destination.  separated from localjump_destination().
36594         * eval.c (break_jump): break innermost loop (or thread or proc).
36596         * eval.c (rb_yield_0): set exit_value for block break.
36598 Wed Mar 10 16:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36600         * struct.c (rb_struct_s_def): Struct::new executes block with
36601           generated struct class. [ruby-talk:02606]
36603 Wed Mar 10 15:58:43 2004  Ryan Davis  <ryand@zenspider.com>
36605         * eval.c (eval): Only print backtrace if generating the backtrace
36606           doesn't generate an exception.  [ruby-core:02621]
36608 Wed Mar 10 10:15:16 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36610         * ruby.c (opt_W_getter): get rid of warning.
36612         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
36613           fixed dependency.
36615 Tue Mar  9 13:04:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36617         * io.c (rb_io_ungetc): raise IOError instead of calling
36618           rb_sys_fail().  [ruby-talk:23181]
36620 Tue Mar  9 10:03:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36622         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
36623           replaced regex.c entry with Oniguruma files.
36625 Tue Mar  9 01:09:46 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36627         * Makefile.in: replaced regex.c entry with Oniguruma files.
36629 Mon Mar  8 23:16:07 2004  Minero Aoki  <aamine@loveruby.net>
36631         * lib/net/http.rb: HTTPHeader did not initialized correctly.
36633         * lib/net/http.rb (connect): does same debug output.
36635 Mon Mar  8 21:38:18 2004  Minero Aoki  <aamine@loveruby.net>
36637         * lib/net/http.rb (add_header): remove warning. [ruby-dev:23170]
36639 Mon Mar  8 21:09:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36641         * dir.c (range): Cancel change for incomplete '['. More discussion
36642           is needed.
36644 Mon Mar  8 19:35:13 2004  akira yamada  <akira@arika.org>
36646         * lib/uri/common.rb (URI::REGEXP::PATTERN::HOSTPORT): (?:#{PORT})
36647           -> (?::#{PORT}).  [ruby-dev:23170]
36649 Mon Mar  8 15:03:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36651         * dir.c (range): treat incomplete '[' as ordinary character (like
36652           has_magic does). fix buffer overrun at incomplete escape like '[\'.
36654 Mon Mar  8 13:35:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36656         * regparse.c (parse_exp): need to separate initialization for bcc32.
36657           [ruby-dev:23169]
36659         * oniguruma.h (ONIG_EXTERN): check __GNUC__ instead of __CYGWIN__.
36661 Mon Mar  8 01:05:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36663         * lib/webrick/config.rb (WEBrick::Config::HTTP): rename :RequestHander
36664           to :RequestCallback and add new option :ServerAlias.
36666         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): use
36667           :RequestCallback and warn if :RequestHandler is in server's option.
36669         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should print
36670           error message for WEBrick::HTTPSataus::Error.
36672         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
36673           lookup for hostname from :ServerAlias if the req.host is not match
36674           to :ServerName.
36676         * lib/webrick/httpservlet.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
36677           use $?.exitstatus and refine log message.
36679 Sun Mar  7 16:22:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36681         * Makefile.in (lex.c): use $? instead of $<.
36683         * lib/pstore.rb (commit_new): use FileUtils.copy_stream for Cygwin.
36684           [ruby-dev:23157]
36686 Sun Mar  7 05:34:42 2004  Minero Aoki  <aamine@loveruby.net>
36688         * lib/net/http.rb: HTTPHeader keeps its header fields as an array.
36690         * lib/net/http.rb: new method HTTPHeader#add_header, get_fields.
36692         * lib/net/http.rb: new method HTTPHeader#content_length=.
36694         * lib/net/http.rb: new method HTTPHeader#content_type, main_type,
36695           sub_type, type_params, content_type=, set_content_type.
36697         * lib/net/http.rb (HTTPHeader#basic_encode): result of pack(m) may
36698           contain multiple LFs.
36700 Sun Mar  7 03:11:00 2004  Minero Aoki  <aamine@loveruby.net>
36702         * lib/net/http.rb: new method Net::HTTPRequest#body(=).
36704         * lib/net/http.rb: new method Net::HTTPRequest#body_stream(=).
36706 Sun Mar  7 02:06:07 2004  Minero Aoki  <aamine@loveruby.net>
36708         * lib/net/http.rb: spin off https code again.
36710         * lib/net/https.rb: new file.
36712         * ext/openssl/lib/net/https.rb: removed.  moved to net/https with
36713           slight modifications.
36715         * ext/openssl/lib/net/protocols.rb: removed.  merged with net/http.
36717         * lib/net/protocol.rb: new class BufferedIO.
36719         * lib/net/protocol.rb: InternetMessageIO < BufferedIO.
36721         * lib/net/protocol.rb: BufferedIO.new takes an IO.
36723         * lib/net/smtp.rb: follow InternetMessageIO's change.
36725         * lib/net/pop.rb: ditto.
36727 Sun Mar  7 00:55:03 2004  Minero Aoki  <aamine@loveruby.net>
36729         * lib/net/protocol.rb: remove method: InternetMessageIO#address,
36730           port, ip_address, read_timeout(=), socket.
36732         * lib/net/protocol.rb: simplify code.
36734         * lib/net/protocol.rb: apply latest coding style.
36736 Sat Mar  6 15:15:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36738         * ext/strscan/depend: depends on re.h and regex.h.
36740         * ext/strscan/strscan.c: no version check needed.
36742         * ext/strscan/strscan.c (strscan_init_copy): struct re_registers must
36743           not be bitwise copied.
36745 Sat Mar  6 11:14:33 2004  David Black  <dblack@wobblini.net>
36747         * lib/scanf.rb: refixed the previous fix in IO#block_scanf
36749 Sat Mar  6 10:49:40 2004  David Black  <dblack@wobblini.net>
36751         * lib/scanf.rb: fixed a logic glitch in IO#block_scanf
36753 Sat Mar  6 02:00:19 2004  Minero Aoki  <aamine@loveruby.net>
36755         * lib/net/http.rb: net/https is merged.
36757         * ext/openssl/lib/net/https.rb: ditto.
36759 Sat Mar  6 00:39:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36761         * oniggnu.h: imported from Oniguruma library.
36762         * oniguruma.h: ditto.
36763         * regcomp.c: ditto.
36764         * regenc.c: ditto.
36765         * regenc.h: ditto.
36766         * regerror.c: ditto.
36767         * regex.c: ditto.
36768         * regexec.c: ditto.
36769         * reggnu.c: ditto.
36770         * regint.h: ditto.
36771         * regparse.c: ditto.
36772         * regparse.h: ditto.
36773         * ascii.c: ditto.
36774         * euc_jp.c: ditto.
36775         * sjis.c: ditto.
36776         * utf8.c: ditto.
36778         * MANIFEST: added Oniguruma files listed above.
36780         * LEGAL: added Oniguruma license.
36782         * regex.h: now includes oniggnu.h.
36784         * re.c: applied Oniguruma patch.
36786 Fri Mar  5 23:13:08 2004  Minero Aoki  <aamine@loveruby.net>
36788         * lib/net/http.rb: support WebDAV methods, PROPPATCH, LOCK,
36789           UNLOCK, OPTIONS, PROPFIND, DELETE, MOVE, COPY, MKCOL.
36790           This patch is contributed by Tatsuki Sugiura.
36792 Fri Mar  5 20:58:37 2004  Minero Aoki  <aamine@loveruby.net>
36794         * lib/net/http.rb: Net::HTTPResponse#response is obsolete.
36795           [ruby-core:02592]
36797         * lib/net/http.rb: Net::HTTPResponse#header is obsolete.
36799         * lib/net/http.rb: Net::HTTPResponse#read_header is obsolete.
36801 Fri Mar  5 20:10:57 2004  Minero Aoki  <aamine@loveruby.net>
36803         * ext/strscan/strscan.c: new method StringScanner#initialize_copy
36804           to allow #dup and #clone.
36806         * test/strscan/test_strscan.rb: test StringScanner#dup.
36808 Fri Mar  5 19:42:09 2004  Minero Aoki  <aamine@loveruby.net>
36810         * lib/net/http.rb (HTTPResponse#to_ary): should return an object
36811           which does not respond to #to_ary.  It causes infinite loop in
36812           puts. [ruby-core:02578]
36814 Fri Mar  5 00:51:35 2004  Dave Thomas  <dave@pragprog.com>
36816         * lib/test/unit.rb: Move RDoc documentation so that you can
36817           now say 'ri Test::Unit'
36819 Thu Mar  4 22:31:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36821         * Makefile.in: miniruby is not needed for cross compile.
36823         * configure.in (PREP): miniruby for native compile.
36825 Thu Mar  4 11:46:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36827         * lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
36828           detach server processes to get rid of zombies.
36830 Thu Mar  4 10:41:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36832         * ruby.h (T_MASK): save 1 bit in flags bits by shifting T_xxx
36833           values.
36835 Thu Mar  4 08:08:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36837         * ext/syck/rubyext.c: get rid of warnings.
36839         * lib/rss/taxonomy.rb: ditto.
36841         * lib/rdoc/ri/ri_formatter.rb: ditto.
36843         * test/ruby/test_assignment.rb: ditto.
36845 Thu Mar  4 01:17:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36847         * lib/rdoc/ri/ri_display.rb (DefaultDisplay::page): wait until the
36848           pager terminates.
36850 Wed Mar  3 13:10:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36852         * eval.c (method_hash): new method. [ruby-talk:93968]
36854         * eval.c (proc_eq): do not compare dyna_vars.
36856         * eval.c (proc_hash): new method.
36858         * eval.c (rb_yield_0): protect break/return from within orphan (or
36859           lambda) Proc object.
36861 Wed Mar  3 09:52:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36863         * lib/mkmf.rb ($topdir): use compile_dir only when not installed yet.
36864           [ruby-talk:94098]
36866 Wed Mar  3 01:18:52 2004  Kouhei Sutou  <kou@cozmixng.org>
36868         * lib/rss/converter.rb: handled Uconv::Error.
36870         * lib/rss/dublincore.rb: DublincoreModel -> DublinCoreModel
36872 Wed Mar  3 00:59:30 2004  David Black  <dblack@wobblini.net>
36874         * lib/scanf.rb: soak_up_spaces only ungetc's non-space last
36875           character
36877         * lib/scanf.rb: IO#block_scanf now returns partial last iteration
36878           array if format string matches partly
36880 Tue Mar  2 16:30:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36882         * io.c (pipe_open): erred program name should be reported by
36883           exceptions, instead of the first argument.
36885         * process.c (rb_spawn): ditto.
36887         * process.c (proc_spawn_v): use first argument as program name.
36889         * win32/win32.c (rb_w32_aspawn): ditto.
36891         * win32/win32.c (CreateChild): search executable file if no program
36892           name given.
36894         * lib/drb/extservm.rb (invoke_service_command): use Process.spawn.
36895           [ruby-dev:23103]
36897         * lib/rdoc/ri/ri_display.rb (setup_pager): use IO.popen.
36898           [ruby-dev:23086], [ruby-dev:23103]
36900         * lib/rdoc/diagram.rb (convert_to_png): ditto.
36902         * lib/rdoc/generators/chm_generator.rb (compile_project): ditto.
36904 Tue Mar  2 12:24:03 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36906         * win32/Makefile.sub, wince/Makefile.sub (config.h): shouldn't check
36907           defined? NORETURN. [ruby-dev:23100]
36909 Tue Mar  2 11:28:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36911         * test/ruby/test_iterator.rb (test_ljump): cannot use
36912           assert_nothing_raised due to passing block.
36914 Tue Mar  2 06:23:14 2004  David Black  <dblack@wobblini.net>
36916         * lib/scanf.rb: fixed Kernel#scanf to propagate code block
36918 Mon Mar  1 23:25:40 2004  David Black  <dblack@wobblini.net>
36920         * lib/scanf.rb: Partial fix so STDIN#scanf works with new
36921          STDIN#pos behavior
36923 Mon Mar  1 19:42:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36925         * bcc32/setup.mak: configure's default is "--enable-install-doc"
36927         * win32/setup.mak: ditto.
36929 Mon Mar  1 12:24:10 2004  Dave Thomas  <dave@pragprog.com>
36931         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_alias):
36932           Allow aliases to have parentheses
36934 Sun Feb 29 23:14:53 2004  Dave Thomas  <dave@pragprog.com>
36936         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
36937           Handle :nodoc: on singleton classes.
36939 Sat Feb 28 21:50:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36941         * bcc32/Makefile.sub, bcc32/README.bcc32, bcc32/configure.bat,
36942           bcc32/setup.mak: new configure scheme. use ``configure --prefix=dir''
36943           instead of ``make DESTDIR=dir install''.
36944           --with-static-linked-ext support on bccwin32. [ruby-dev:23034]
36946 Sat Feb 28 21:50:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36948         * bcc32/setup.mak: "configure --disable-install-doc" is now working.
36950         * win32/setup.mak: ditto.
36952 Sat Feb 28 15:09:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36954         * bcc32/configure.bat: append missing label ":exit".
36956         * bcc32/configure.bat: fix typo.
36958 Sat Feb 28 10:31:03 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36960         * MANIFEST: add test_erb.rb
36962         * lib/erb.rb, test/erb/test_erb.rb: don't forget filename,
36963           if both filename and safe_level given. [ruby-dev:23050]
36965 Sat Feb 28 01:08:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36967         * parse.y (yylex): should not allow symbol for invalid global
36968           variable (e.g. `:$-)`). [ruby-core:02518]
36970 Fri Feb 27 20:37:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36972         * eval.c (proc_invoke): no orphan block check is needed when pcall
36973           is true.
36975         * eval.c (localjump_destination): update localjump condition.
36977 Fri Feb 27 02:10:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36979         * eval.c (localjump_destination): lambda should not interfere
36980           return from the yielded block.
36982 Fri Feb 27 00:53:49 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36984         * lib/drb/drb.rb, test/drb/drbtest.rb: require drb/eq.rb by default
36986 Thu Feb 26 12:15:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36988         * win32/win32.c (make_cmdvector): adjust successive double-quote
36989           handling.
36991 Thu Feb 26 09:42:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36993         * hash.c (delete_if_i): use st_delete_safe() (via
36994           rb_hash_delete()) instead of returning ST_DELETE.
36996 Thu Feb 26 02:35:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36998         * process.c (rb_f_exec): get rid of SEGV when exec failed for command
36999           in single string.
37001 Wed Feb 25 21:17:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37003         * gc.c (obj_free), io.c (rb_io_fptr_finalize), rubyio.h (OpenFile):
37004           sharing OpenFile.
37006         * io.c (rb_io_initialize): accept IO instance.  [ruby-dev:22195]
37008 Wed Feb 25 21:16:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37010         * instruby.rb (with_destdir): should return the given argument if no
37011           DESTDIR is given.
37013         * instruby.rb: use path name expansion of cmd.exe.
37015 Wed Feb 25 20:44:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37017         * lib/cgi-lib.rb, lib/getopts.rb, lib/importenv.rb, lib/parsearg.rb:
37018           warn with caller position.
37020         * test/rss/test_content.rb, test/rss/test_dublincore.rb,
37021           test/rss/test_syndication.rb, test/rss/test_trackback.rb: use cgi
37022           instead of cgi-lib.
37024 Tue Feb 24 18:42:03 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37026         * dir.c (glob_helper): '**/' should not match leading period
37027           unless File::FNM_DOTMATCH is set. (like '*/') [ruby-dev:23014]
37029 Tue Feb 24 18:03:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37031         * test/ruby/test_file.rb (test_fnmatch): test for dir.c:1.108.
37033 Tue Feb 24 17:07:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37035         * dir.c (fnmatch): File.fnmatch with File::FNM_PATHNAME was broken
37036           for the pattern including '*' followed by '/'.
37038 Tue Feb 24 13:22:21 2004  Dave Thomas  <dave@pragprog.com>
37040         * lib/rdoc/rdoc.rb (RDoc::RDoc::normalized_file_list): Attempt to get better
37041           heuristics on which files to include and exclude. Now only include
37042           non-standard files if they are explicitly named in ARGV.
37044 Tue Feb 24 07:23:30 2004  Dave Thomas  <dave@pragprog.com>
37046         * lib/rdoc/generators/html_generator.rb: Deal with :stopdoc: when
37047           choosing a default main page to display (ie. don't select a page
37048           if we don't have documentation for it).
37050 Tue Feb 24 06:40:14 2004  Dave Thomas  <dave@pragprog.com>
37052         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_identifier): Handle
37053           class variables in code listings
37055 Tue Feb 24 06:32:27 2004  Dave Thomas  <dave@pragprog.com>
37057         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_aliases): Handle
37058           aliases in C files.
37060 Tue Feb 24 06:16:22 2004  Dave Thomas  <dave@pragprog.com>
37062         * lib/rdoc/rdoc.rb (RDoc::RDoc::document): Now create op dir _before_
37063           parsing files.
37065 Tue Feb 24 06:08:47 2004  Dave Thomas  <dave@pragprog.com>
37067         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_constant):
37068           Start collecting text of constant values earlier: was missing
37069           values in output if there was no space after '='
37071 Tue Feb 24 06:08:25 2004  Dave Thomas  <dave@pragprog.com>
37073         * lib/rdoc/generators/html_generator.rb: Escape contant values.
37075 Tue Feb 24 03:45:06 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37077         * ext/openssl/ossl_config.c (ossl_config_each): add new method
37078           OpenSSL::Config#each. it iterates with section name, field name
37079           and value.
37081         * ext/openssl/ossl_config.c (Init_ossl_config): include Enumerable.
37083 Mon Feb 23 09:09:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37085         * instruby.rb (parse_args): use optparse instead of getopts.
37087         * instruby.rb (DOSISH): embedded path in batch files should not be
37088           prefixed by DESTDIR.  [ruby-core:02186]
37090 Sun Feb 22 14:58:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37092         * ext/extmk.rb: $extstatic is Array or nil now.  [ruby-talk:93383]
37094         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: terminate options.
37096         * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.
37098 Sun Feb 22 13:05:37 2004  akira yamada  <akira@ruby-lang.org>
37100         * lib/uri/mailto.rb (URI::MailTo::to_s): should include fragment.
37102 Sun Feb 22 12:58:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37104         * ext/extmk.rb: use optparse instead of getopts.
37106         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: ditto.
37108 Sun Feb 22 09:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37110         * re.c: corrected documentation format (rb_reg_initialize_m)
37112 Sat Feb 21 22:41:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37114         * ext/zlib/zlib.c: documented, but needs more effort.
37116 Sat Feb 21 14:33:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37118         * ext/extmk.rb: prefer relative path.  [ruby-talk:93037]
37120 Sat Feb 21 11:12:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37122         * missing/os2.c, missing/x68.c: typo fix.  pointed out by greentea.
37124 Fri Feb 20 19:11:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37126         * lib/ostruct.rb (OpenStruct#initialize_copy): should not share
37127           members.  [ruby-dev:22966]
37129 Fri Feb 20 18:59:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37131         * lib/irb/init.rb (IRB::IRB.parse_opts): add -I option to
37132           irb. [ruby-dev:39243]
37134 Fri Feb 20 12:55:27 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37136         * io.c (pipe_open): fix typo.
37138         * win32/win32.c (CreateChild): first argument to CreateProcess() must
37139           have path, not just basename.
37141 Thu Feb 19 23:24:16 2004  Dave Thomas  <dave@pragprog.com>
37143         * lib/rdoc/generators/html_generator.rb (Generators::HtmlClass::build_attribute_list):
37144           Support visibility modifiers for attributes
37146 Thu Feb 19 22:39:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37148         * lib/ostruct.rb: documented
37150 Thu Feb 19 22:39:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37152         * test/rinda/test_rinda.rb: DRb.start_service only once in testsuites.
37153           DRb.start_service could handle this.
37155 Thu Feb 19 22:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37157         * lib/soap/mapping/rubytypeFactory.rb: should not dump singleton class.
37158           [ruby-dev:22588]
37159           c = class << Object.new; class C; self; end; end; SOAPMarshal.dump(c)
37161 Thu Feb 19 18:08:18 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37163         * ext/strscan/strscan.c: improved documentation
37165 Thu Feb 19 18:08:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37167         * win32/win32.c, win32/win32.h: fixed prototypes.
37169         * win32/win32.c (wait): same as waitpid() with -1.
37171 Thu Feb 19 02:34:28 2004  Dave Thomas  <dave@pragprog.com>
37173         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::include_file):
37174           Only strip comment markers if all lines start with comments.
37176 Thu Feb 19 03:05:49 2004  Minero Aoki  <aamine@loveruby.net>
37178         * ext/strscan/strscan.c: StringScanner#restsize is obsolete;
37179           use #rest_size instead.
37181         * ext/strscan/strscan.c: StringScanner#matchedsize is obsolete;
37182           use #matched_size instead.
37184 Thu Feb 19 02:42:19 2004  Minero Aoki  <aamine@loveruby.net>
37186         * ext/strscan/strscan.c: don't use rb_eval_string, it defines
37187           classes under the module when required in module clauses.
37188           [ruby-dev:22951]
37190 Thu Feb 19 02:37:28 2004  Minero Aoki  <aamine@loveruby.net>
37192         * ext/strscan/strscan.c: merge documentation from 1.8 branch.
37193           Thanks Gavin Sinclair.
37195 Thu Feb 19 00:20:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37197         * lib/cgi-lib.rb:   deprecated after 1.8.1
37199         * lib/getopts.rb:   ditto
37201         * lib/importenv.rb: ditto
37203         * lib/parsearg.rb:  ditto
37205 Thu Feb 19 00:11:05 2004  Dave Thomas  <dave@pragprog.com>
37207         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::handle):
37208           Strip extraneous space from filenames in :include:
37210 Wed Feb 18 22:53:41 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37212         * lib/drb/unix.rb: remove O_NONBLOCk, thanks \ay
37214 Wed Feb 18 22:42:19 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37216         * test/rinda/test_rinda.rb: improt test_rinda.rb
37218 Wed Feb 18 22:03:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37220         * test/*: should not depend on $KCODE.
37222 Wed Feb 18 18:07:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37224         * test/ruby/test_sprintf.rb: added tests.
37226 Wed Feb 18 17:18:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37228         * ext/win32ole/win32ole.c: need to include <olectl.h> on Cygwin.
37230 Wed Feb 18 10:40:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37232         * sprintf.c (rb_f_sprintf): sign bit extension should not be done
37233           if FPLUS flag is specified.  [ruby-list:39224]
37235         * sprintf.c (rb_f_sprintf): do not prepend dots for negative
37236           numbers if FZERO is specified.  [ruby-dev:39218]
37238 Wed Feb 18 10:23:34 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37240         * sprintf.c (rb_f_sprintf): clean up.
37242 Tue Feb 17 23:40:34 2004  Guy Decoux  <ts@moulon.inra.fr>
37244         * sprintf.c (rb_f_sprintf): preserve original val for
37245           format_integer. [ruby-talk:92975]
37247 Tue Feb 17 23:28:45 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37249         * test/soap/marshal/test_marshal.rb, test/ruby/test_marshal.rb: do $:
37250           trick to share the testcase test/ruby/marshaltestlib.rb.
37252 Tue Feb 17 23:13:23 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37254         * test/ruby/marshaltestlib.rb: common marshal testcase added.
37256         * test/ruby/test_marshal.rb: use above testsuite.
37258         * test/soap/marshal/test_marshal.rb: ditto.
37260         * test/soap/marshal/cmarshal.rb: removed (not used).
37262 Tue Feb 17 19:34:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37264         * ext/extmk.rb (extmake): $extout_prefix doesn't vary for libraries.
37266         * ext/extmk.rb (extmake): remove compile directory if empty.
37268         * ext/extmk.rb (parse_args) lib/mkmf.rb (create_makefile): move
37269           initialization of $extout_prefix from lib/mkmf.rb.  [ruby-dev:22928]
37271         * ext/extmk.rb: clear ext and extout directory when cleaning.
37273         * lib/mkmf.rb (CLEANLIBS): should be under $(arch) directory.
37275 Tue Feb 17 18:02:10 2004  Minero Aoki  <aamine@loveruby.net>
37277         * ext/strscan/strscan.c: ScanError may be (wrongly) garbage
37278           collected. (thanks Gavin Sinclair)
37280         * ext/strscan/strscan.c: move ::ScanError to StringScanner::Error.
37281           ::ScanError is also defined for backward compatibility.
37283         * ext/strscan/strscan.c: #peep is obsolete, use #peek.
37285         * ext/strscan/strscan.c: #empty? is obsolete, use #eos?.
37287         * ext/strscan/strscan.c: #clear is obsolete, use #terminate.
37289         * ext/strscan/strscan.c: #getbyte is obsolete, use #get_byte.
37291 Tue Feb 17 12:12:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37293         * ext/extmk.rb (parse_args): delay expanding $(extout) until invoking
37294           make.
37296         * lib/mkmf.rb (CLEANLIBS): should remove files have specific
37297           extensions.
37299 Tue Feb 17 11:33:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37301         * lib/rss/rexmlparser.rb: REXML version may be 4 digits.
37303 Tue Feb 17 10:45:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37305         * ext/syck/rubyext.c (syck_emitter_end_object): takes only one arg.
37307 Tue Feb 17 07:48:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37309         * lib/rexml/encodings/SHIFT_JIS: wrong library name.
37311 Tue Feb 17 01:35:28 2004  Tanaka Akira  <akr@m17n.org>
37313         * eval.c (rb_eval): care that another thread replace NODE_DREGX_ONCE
37314           to NODE_LIT.  [ruby-dev:22920]
37316 Tue Feb 17 01:20:57 2004  Minero Aoki  <aamine@loveruby.net>
37318         * lib/fileutils.rb: new module FileUtils::DryRun.
37320 Mon Feb 16 23:28:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37322         * lib/csv.rb: document reduction.  [ruby-core:02429]
37324         * test/yaml/test_yaml.rb: added 0..1 test with "0".."1" on display.
37325           it should be defined that the specification about what kind of Range
37326           is supported in ruby's custom type in YAML.
37328 Mon Feb 16 22:22:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37330         * lib/generator.rb: corrected doc format
37332         * lib/rinda/rinda.rb: added documentation (from Hugh Sasse)
37334         * lib/rinda/tuplespace.rb: ditto
37336           [Note: rinda files actually committed Wed Feb 18 07:27:00 2004]
37338 Mon Feb 16 20:28:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37340         * bcc32/Makefile.sub: show more warnings. (refering to mingw)
37342         * bcc32/setup.mak: ditto.
37344 Mon Feb 16 18:35:58 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37346         * win32/Makefile.sub (config.status): should create *.pdb on ext/,
37347           not .ext/.
37349         * win32/Makefile.sub (config.status): convert the name of import
37350           library.
37352         * lib/mkmf.rb (create_makefile): now don't need to remove
37353           $(TARGET).lib.
37355 Mon Feb 16 15:45:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37357         * configure.in: check functions, fork spawnv.
37359         * io.c (rb_io_s_popen): accept argv not only single command line.
37361         * process.c (rb_proc_exec_n): export.
37363         * process.c (rb_check_argv): check if arguments are safe to invoke.
37365         * process.c (rb_fork): retry to fork.
37367         * process.c (rb_spawn): spawn child process asynchronously.
37369         * process.c (rb_f_system): raise an exception if the command could not
37370           execute.
37372         * win32/win32.c (rb_w32_argv_size): count necessary size for joined
37373           arguments.
37375         * win32/win32.c (rb_w32_join_argv): join arguments with quoting.
37377         * win32/win32.c (rb_w32_pipe_exec, rb_w32_spawn, rb_w32_aspawn):
37378           accept program name adding to command line.
37380 Mon Feb 16 15:18:33 2004  Minero Aoki  <aamine@loveruby.net>
37382         * lib/racc/parser.rb: add note for Racc full package.
37384 Mon Feb 16 15:13:01 2004  Minero Aoki  <aamine@loveruby.net>
37386         * ext/racc/cparse/README: new file.
37388         * ext/racc/cparse/MANIFEST: add README.
37390 Mon Feb 16 12:29:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37392         * ext/iconv/iconv.c (iconv_s_list): new method Iconv.list
37393           (libiconv only).
37395 Mon Feb 16 10:29:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37397         * dir.c (CompareImpl): File.fnmatch and Dir.glob get better performance
37398           in Win32. This is achived by calling downcase() for single-byte
37399           characters. (CharLower() is slower than downcase())
37401 Mon Feb 16 02:14:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37403         * bcc32/Makefile.sub: should warn suspicious pointer conversion.
37405         * bcc32/setup.mak: ditto.
37407 Sun Feb 15 20:56:22 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37409         * dir.c (push_braces): remove wrong const. [ruby-dev:22891]
37411 Sun Feb 15 20:41:15 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37413         * sample/soap/calc/httpd.rb, sample/soap/exchange/httpd.rb,
37414           sample/soap/sampleStruct/httpd.rb, sample/wsdl/googleSearch/httpd.rb:
37415           use soap/property instead of getopts for configuring DocumentRoot
37416           and port# of httpd.  see samplehttpd.conf below.
37418         * sample/soap/calc/samplehttpd.conf,
37419           sample/soap/exchange/samplehttpd.conf,
37420           sample/soap/sampleStruct/samplehttpd.conf,
37421           sample/wsdl/googleSearch/samplehttpd.conf: added.
37423 Sun Feb 15 19:13:33 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37425         * lib/rinda/tuplespace.rb: read(tpl,0), raise RequestExpiredError
37426           if not found.
37428 Sun Feb 15 15:48:57 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
37430         * ext/win32ole/win32ole.c: add IDispatch wrapper in val2variant.
37431           Thanks, arton.
37433 Sun Feb 15 15:23:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37435         * ruby.h, dir.c (rb_glob): add const.
37437 Sun Feb 15 01:46:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37439         * lib/mkmf.rb: absolute path of ruby is assigned to $(RUBY).
37440           [ruby-dev:22870]
37442 Sat Feb 14 23:59:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37444         * mkconfig.rb: use fileutils.rb instead of ftools.rb.
37446         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): define
37447           STACK_GROW_DIRECTION.
37449         * bcc32/Makefile.sub (config.h): add newer checks.
37451         * wince/Makefile.sub (config.h): define NEED_IO_SEEK_BETWEEN_RW.
37453 Sat Feb 14 23:26:27 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37455         * lib/un.rb: use OptionParser instead of getopts.
37457 Sat Feb 14 11:28:14 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37459         * sample/drb/*: import lib/drb/sample
37461 Sat Feb 14 11:14:12 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37463         * lib/drb/drb.rb: add pretty_print, thanks gotoken.
37465 Fri Feb 13 21:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37467         * lib/fileutils.rb: slighly improved documentation (sync with 1.8)
37469 Fri Feb 13 19:57:01 2004  Kouhei Sutou  <kou@cozmixng.org>
37471         * test/rss/test_trackback.rb: added tests for TrackBack with RSS
37472           2.0.
37474         * test/rss/common.rb: added methods make RSS 2.0.
37476         * lib/rss/trackback.rb: TrackBack API is decided.
37478         * lib/rss/rss.rb: RSS::VERSION 0.0.7 -> 0.0.8.
37480         * lib/rss/parser.rb, lib/rss/rss.rb: replaced $DEBUG by RSS::DEBUG.
37482         * lib/rss/2.0.rb: removed RSS 2.0 URI. Because RSS 2.0 doesn't
37483           have URI.
37485 Fri Feb 13 14:41:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37487         * ext/tk/lib/tk.rb: en-bugged at last commit (Feb 11 23:24:22 2004)
37489 Fri Feb 13 12:26:37 2004  Minero Aoki  <aamine@loveruby.net>
37491         * test/fileutils/test_fileutils.rb: rescue SystemCallError instead
37492           of EINVAL.  File.link may raise EACCES on network file systems.
37494 Fri Feb 13 05:18:58 2004  Minero Aoki  <aamine@loveruby.net>
37496         * test/fileutils/test_fileutils.rb: File.link raises EINVAL on
37497           Win9x. [ruby-dev:22713]
37499 Thu Feb 12 21:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37501         * lib/ftools.rb: documented
37503 Thu Feb 12 21:19:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37505         * lib/base64.rb: added and tidied documentation
37507 Thu Feb 12 20:45:01 2004  Minero Aoki  <aamine@loveruby.net>
37509         * lib/net/protocol.rb (WriteAdapater#puts): must append "\n" to
37510           the string, don't prepend. (ruby-bugs:PR#1280)
37512 Thu Feb 12 20:31:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37514         * lib/mkmf.rb (create_tmpsrc): cpp32 of Borland C++ ignores #error
37515           directives in DOS line-ending files at all.
37517 Thu Feb 12 15:23:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37519         * parse.y (rparen): ignore preceding newlines to right parentheses.
37520           (ruby-bugs:PR#1221) [ruby-dev:22858]
37522 Thu Feb 12 14:17:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37524         * configure.in: set ac_cv_func_link to yes to enable link() on MinGW.
37525           [ruby-dev:22241]
37527 Thu Feb 12 13:32:49 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37529         * win32/win32.c (link): raise NotImplementedError on Win9X.
37530           contributed by Tietew. [ruby-dev:22713]
37532         * win32/win32.c, win32/win32.h (link): add const.
37534 Thu Feb 12 09:56:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37536         * ext/tk/lib/tk.rb (TkComm::tk_split_list): suppress a warning.
37538 Thu Feb 12 02:23:56 2004  Tanaka Akira  <akr@m17n.org>
37540         * lib/pathname.rb: use assert_raise instead of assert_raises.
37542         * lib/pp.rb: ditto.
37544         * lib/time.rb: ditto.
37546         * lib/tsort.rb: ditto.
37547           use TSortHash and TSortArray instead of Hash and Array in test.
37549 Wed Feb 11 23:24:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37551         * ext/tk/lib/tk.rb: properly treat a Tcl/Tk's string with escaping
37552           special characters.
37554 Tue Feb 10 20:49:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37556         * eval.c (method_proc): return bound Proc object.  [ruby-dev:22854]
37558         * eval.c (rb_mod_define_method): bind method body itself for Method
37559           object.
37561         * node.h (NODE_DMETHOD): deprecated.
37563         * object.c (rb_class_inherited_p): export.
37565 Tue Feb 10 16:43:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37567         * eval.c (umethod_bind): purge unused check.  [ruby-dev:22850]
37569 Tue Feb 10 14:33:08 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37571         * string.c (rb_str_match): raise TypeError when both arguments are
37572           strings. [ruby-dev:22851]
37574         * string.c (rb_str_match2): removed.
37576         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
37577           wince/Makefile.sub (string.c): now not depend on version.h.
37579 Mon Feb  9 17:46:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37581         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
37582           runruby.rb: run rdoc, test and so on with compiled extension
37583           libraries.  [ruby-dev:22688]
37585         * ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
37586           directory, similar to the actual directory structure.
37588         * lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
37589           file to create new file.
37591         * lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
37592           influence by envirionment variable.
37594         * bcc32/configure.bat, win32/configure.bat: add install-doc options.
37596         * win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
37597           bug which returns wrong mode.  [ruby-dev:22846]
37599 Mon Feb  9 16:30:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37601         * process.c (detach_process_watcher): return the last status.
37602           [ruby-dev:22841]
37604 Sun Feb  8 16:46:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37606         * lib/pp.rb (PP::PPMethods::object_address_group): suppress negative
37607           sign for higher heap areas.
37609 Sun Feb  8 16:18:27 2004  akira yamada  <akira@ruby-lang.org>
37611         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
37612           added tests.
37614 Sun Feb  8 15:51:57 2004  akira yamada  <akira@ruby-lang.org>
37616         * test/ruby/test_file.rb (TestFile::test_fnmatch): added tests for
37617           File.fnmatch. [ruby-dev:22815][ruby-dev:22819]
37619 Sun Feb  8 15:41:45 2004  akira yamada  <akira@ruby-lang.org>
37621         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
37622           added tests. [ruby-core:02306] [ruby-core:02311]
37624 Sun Feb  8 14:24:35 2004  Minero Aoki  <aamine@loveruby.net>
37626         * lib/net/http.rb (HTTP#request): should not overwrite Connection
37627           header. (ruby-bugs:PR#1274)
37629 Sun Feb  8 10:11:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37631         * dir.c (glob_helper): Dir.glob('**/') did not work. [ruby-dev:22832]
37633 Sun Feb  8 00:29:26 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
37635         * dir.c (fnmatch): File.fnmatch('*?', 'a') should return true.
37636           [ruby-dev:22815]
37638         * dir.c (fnmatch): File.fnmatch('\[1\]' , '[1]') should return true.
37639           [ruby-dev:22819]
37641         * dir.c: Did some styles (no change to behavior)
37643 Sat Feb  7 19:56:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37645         * lib/irb/init.rb (IRB.rc_files): yield possible rc file names.
37647         * lib/irb/input-method.rb (IRB::ReadlineInputMethod::initialize):
37648           load and save history automatically.  [ruby-core:02352]
37650 Fri Feb  6 22:48:16 2004  Dave Thomas  <dave@pragprog.com>
37652         * lib/rdoc/generators/html_generator.rb (gen_url): Support
37653           https in RDoc hyperlinks
37655 Fri Feb  6 22:41:22 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37657         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): rollback the previous
37658           commit.  [ruby-dev:22813]
37660 Fri Feb  6 22:22:50 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37662         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): remove instance
37663           variable which is defined in the test.
37665 Fri Feb  6 18:54:18 2004  akira yamada  <akira@ruby-lang.org>
37667         * test/ruby/test_proc.rb (TestProc::test_eq): added a
37668           test.  [ruby-dev:22599]
37670 Fri Feb  6 18:26:00 2004  akira yamada  <akira@ruby-lang.org>
37672         * test/ruby/test_proc.rb (TestProc::test_eq): added tests for
37673           Proc#==.  [ruby-dev:22592], [ruby-dev:22601]
37675 Fri Feb  6 10:12:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37677         * ext/socket/socket.c (bsock_do_not_reverse_lookup): control reverse
37678           lookup for every instance.  [ruby-core:02346]
37680 Fri Feb  6 09:15:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37682         * lib/irb/extend-command.rb: add irb_help command.  [ruby-talk:91610]
37684         * lib/irb/cmd/help.rb (IRB::ExtendCommand::Help): show RDoc.
37686 Fri Feb  6 00:48:37 2004  Tanaka Akira  <akr@m17n.org>
37688         * lib/prettyprint.rb (PrettyPrint#first?): obsoleted.
37690 Thu Feb  5 23:56:55 2004  Tanaka Akira  <akr@m17n.org>
37692         * lib/prettyprint.rb (PrettyPrint#seplist): added.
37694         * lib/pp.rb (PPMethods#pp_object): use seplist.
37695           (PPMethods#pp_hash): ditto.
37696           (Array#pretty_print): ditto.
37697           (Struct#pretty_print): ditto.
37698           (MatchData#pretty_print): ditto.
37700         * lib/set.rb (Set#pretty_print): use seplist.
37702 Wed Feb  4 22:39:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37704         * file.c (rb_stat_mode): should not sign-expand, so backout.
37706 Wed Feb  4 02:12:06 2004  Tanaka Akira  <akr@m17n.org>
37708         * file.c (test_l): fix wrong method name in document.
37709           (test_S): ditto.
37710           (test_b): ditto.
37711           (test_c): ditto.
37712           (test_suid): ditto.
37713           (test_sgid): ditto.
37714           (test_sticky): ditto.
37716 Tue Feb  3 22:36:25 2004  Kouhei Sutou  <kou@cozmixng.org>
37718         * lib/rss/2.0.rb, lib/rss/content.rb, lib/rss/dublincore.rb,
37719           lib/rss/rss.rb, lib/rss/syndication.rb: removed warnings.
37721         * lib/rss/converter.rb: removed handling load error of nkf.
37723         * test/rss/test_syndication.rb, test/rss/test_trackback.rb,
37724           test/rss/test_dublincore.rb, test/rss/test_content.rb: replaced
37725           'require "rss/parser"' by 'require "rss/1.0"'.
37727         * test/rss/test_parser.rb, test/rss/test_accessor.rb: removed
37728           'require "rss/parser"'.
37730 Tue Feb  3 11:23:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37732         * parse.y (reduce_nodes): remove tail returns.  [ruby-talk:90934]
37734 Tue Feb  3 08:04:57 2004  Tanaka Akira  <akr@m17n.org>
37736         * lib/pp.rb (Struct#pretty_print_cycle): follow 1.8 style.
37738 Mon Feb  2 22:06:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37740         * parse.y (block_append, new_evstr, void_expr0): remove no longer used
37741           labels.
37743 Mon Feb  2 18:45:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37745         * dln.c (dln_load): don't specify RTLD_GLOBAL on Interix,
37746           because it caused SEGV when running runner.rb.
37748 Mon Feb  2 01:54:00 2004  Tanaka Akira  <akr@m17n.org>
37750         * lib/pp.rb (Struct#pretty_print): make it 1.8 style.
37751           (Numeric#pretty_print, FalseClass#pretty_print)
37752           (TrueClass#pretty_print, Module#pretty_print): fix pp for objects
37753           with instance variables.  [ruby-talk:91157]
37755         * lib/open-uri.rb (URI::Generic#find_proxy): return nil on loopback
37756           address.
37758         * lib/resolv-replace.rb (BasicSocket#send): don't replace because
37759           it has no hostname argument.
37760           (IPSocket.getaddress): raise SocketError instead of
37761           Resolv::ResolvError for errors.
37762           (TCPSocket#initialize, UDPSocket#bind, UDPSocket#connect)
37763           (SOCKSSocket#initialize): use IPSocket.getaddress instead of
37764           Resolv.getaddress.
37765           (UDPSocket#send): recognize 3 arguments form.  try all addresses on
37766           4 arguments form.
37768 Sun Feb  1 23:00:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
37770         * ext/bigdecimal.c: Bug in BigDecimal("1e#{n}").add BigDecimal('.5'),n)
37771           reported and fixed by Javier Goizueta.
37773 Sun Feb  1 18:21:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
37775           From ruby_1_8 branch:
37776         * lib/test/unit.rb: rearranged documentation for RDoc's sake.
37777         * lib/matrix.rb: improved documentation.
37778         * lib/net/http.rb: slight documentation formatting improvement.
37780 Sun Feb  1 05:30:06 2004  Tanaka Akira  <akr@m17n.org>
37782         * lib/open-uri.rb (URI::Generic#find_proxy): warn HTTP_PROXY.
37783          raise an errror on non-http proxy URI.
37784          (OpenURI::Buffer#<<): make a tempfile binmode.  [ruby-talk:90793]
37786 Sun Feb  1 00:57:41 2004  Kouhei Sutou  <kou@cozmixng.org>
37788         * lib/rss/parser.rb (RSS::Parser): added @@default_parser. Used
37789           XML parser became selectable.
37790         * test/rss/test_parser.rb: added tests for
37791           RSS::Parser.default_parser.
37793 Sat Jan 31 02:28:15 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37795         * configure.in (RPATHFLAG): set to -Wl,-R like NetBSD on Interix.
37797 Sat Jan 31 01:09:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37799         * lib/logger.rb: leading 0 padding of timestamp usec part.
37801 Fri Jan 30 18:53:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37803         * re.c (KR_REHASH): wrong hash value on sizeof(long) > sizeof(int).
37805 Thu Jan 29 23:11:57 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37807         * configure.in (DLEXT2): removed.  Ruby does not treat
37808           ".dll" as a extention library anymore.
37810         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub (DLEXT2):
37811           ditto.
37813         * util.c (mblen): fix overrun.  [ruby-dev:22672]
37815 Thu Jan 29 22:41:53 2004  Dave Thomas  <dave@pragprog.com>
37817         * lib/rdoc/generators/html_generator.rb: Allow 'link:' in Tidylinks.
37818           THis means you can write "see f1[link:files/f1_rb.html]".
37820 Thu Jan 29 22:24:47 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37822         * sample/openssl/gen_csr.rb: follow OpenSSL::X509::Name change.
37823           ASN.1 type of subject DN elements were wrong.
37825 Thu Jan 29 22:19:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37827         * test/*: remove $: trick.  [ruby-dev:22763]  use test/runner.rb to
37828           run test.
37830 Thu Jan 29 19:28:16 2004  Minero Aoki  <aamine@loveruby.net>
37832         * lib/net/http.rb (Request#initialize): reject only when a path is
37833           empty. [ruby-dev:22771]
37835 Thu Jan 29 18:54:08 2004  H.Yamamoto  <ocean@m2.ccsnet.ne.jp>
37837         * dir.c (glob_helper): infinite loop bug in win32 code.
37838           [ruby-dev:22770]
37840 Thu Jan 29 17:03:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37842         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
37843           [ruby-dev:22761]
37845 Thu Jan 29 11:32:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37847         * test/rss/test_*: do $: trick while searching a module in the current
37848           directory.
37850         * test/xsd/test_xmlschemaparser.rb, test/wsdl/test_emptycomplextype.rb,
37851           test/soap/helloworld/test_helloworld.rb,
37852           test/soap/calc/{test_calc.rb,test_calc2.rb}: do File.expand_path
37853           before using __FILE__.
37855         * test/yaml/test_yaml.rb: assert_equals -> assert_equal.
37857 Thu Jan 29 01:56:02 2004  why the lucky stiff  <why@ruby-lang.org>
37859         * ext/syck/rubyext.c: usec round-tripping skew. [ruby-core:2305]
37861         * lib/yaml/rubytypes.rb: character Range now round-trips. [ruby-core:2306]
37863         * test/yaml/test_yaml.rb: add Time and Range tests.
37865 Thu Jan 29 00:00:46 2004  Kouhei Sutou  <kou@cozmixng.org>
37867         * lib/rss: rss/parser.rb is always required.
37869 Wed Jan 28 15:09:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37871         * test/rss/*.rb: remove "test/" prefix.
37873 Wed Jan 28 13:07:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37875         * ext/iconv/extconf.rb: include iconv.h for libiconv.  [ruby-dev:22715]
37877 Wed Jan 28 12:43:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37879         * lib/rss: rss library imported. [ruby-dev:22726]
37881 Wed Jan 28 04:29:41 2004  Eric Schwartz  <emschwar@fc.hp.com>
37883         * lib/cgi/session.rb: use LOCK_SH to read, and a few other
37884           improvements.  [ruby-core:02328]
37886 Tue Jan 27 15:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37888         * misc/ruby-mode.el: better support for general delimited
37889           strings.  [ruby-dev:22695]
37891 Tue Jan 27 11:04:40 2004  FUKUMOTO Atsushi  <fukumoto@nospam.imasy.or.jp>
37893         * ext/socket/socket.c (s_recvfrom): sending length should be an
37894           invariant while retrying on EAGAIN.  [ruby-talk:89962]
37896 Tue Jan 27 10:31:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37898         * ext/win32ole/win32ole.c (set_argv): fix condition.
37900 Tue Jan 27 02:26:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37902         * lib/webrick/httputils.rb (WEBrick:HTTPUtils::parse_header):
37903           refine regex for header-name.
37905 Mon Jan 26 22:53:04 2004  Dave Thomas  <dave@pragprog.com>
37907         * io.c: Remove documentation references to $defout.
37909 Mon Jan 26 14:41:46 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37911         * lib/weakref.rb (WeakRef::initialize): set up @__id before
37912           calling "super".
37914         * lib/delegate.rb (Delegator::initialize): preserve
37915           singleton_method_added method [ruby-dev:22685]
37917         * lib/delegate.rb (Delegator::initialize): use Kernel::raise
37918           instead of mere raise.  [ruby-dev:22681]
37920 Mon Jan 26 12:45:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37922         * ext/tcltklib/tcltklib.c: define CONST84 when TCL_MAJOR_VERSION == 7
37924 Mon Jan 26 11:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37926         * ext/extmk.rb: Makefiles should depend on also rbconfig.rb.
37927           (ruby-bugs:PR#1256)
37929         * ext/win32ole/win32ole.c (set_argv): set real arguments to
37930           WIN32OLE::ARGV.  [ruby-list:39073]
37932 Sun Jan 25 18:25:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37934         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): third
37935           argument become optional.
37937         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
37939         * ext/openssl/ossl_x509name.c (Init_x509name): emailAddress and
37940           domainComponent should be IA5String.
37942 Sun Jan 25 01:45:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37944         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): support
37945           virtual host.
37947         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host): add
37948           new method to register virtual hosting server.
37950         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server): add
37951           new method to lookup virtual hosting server.
37953 Sat Jan 24 13:06:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37955         * ext/openssl/ossl_x509hame.c (ossl_x509name_initialize): change
37956           second argument. it expected to be a Hash not an Integer.
37958         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): add new
37959           function for OpenSSL::X509::Name#add_entry.
37961         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): add constants
37962           OpenSSL::X509::Name::DEFAULT_OBJECT_TYPE and OBJECT_TYPE_TEMPLATE.
37964         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#initialize):
37965           second argument takes OBJECT_TYPE_TEMPLATE by default.
37967 Fri Jan 23 02:26:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37969         * pack.c (num2i32): pack should not raise RangeError.
37970           [ruby-dev:22654]
37972         * pack.c (pack_pack): do not auto convert nil to zero.
37974 Thu Jan 22 22:54:53 2004  Shugo Maeda  <shugo@ruby-lang.org>
37976         * lib/net/imap.rb (BEG_REGEXP): allow 8-bit characters in quoted
37977           strings for Novell GroupWise Internet Agent.
37979         * lib/net/imap.rb (DATA_REGEXP): ditto.
37981 Thu Jan 22 18:35:49 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37983         * lib/e2mmap.rb (VERSION): remove unnecessary version checking.
37985 Thu Jan 22 16:21:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37987         * parse.y (string_content): reset lexical states at the beginning of
37988           string contents.  [ruby-list:39061]
37990 Thu Jan 22 08:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37992         * parse.y (opt_rescue): use NODE_ERRINFO() instead of
37993           NODE_GVAR("$!"), to avoid confusion from variable aliasing.
37994           [ruby-talk:90074]
37996         * version.c (Init_version): remove obsolete constants VERSION
37997           etc.  [ruby-dev:22643]
37999 Thu Jan 22 01:46:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38001         * parse.y (newline_node): do not use NODE_NEWLINE node anymore,
38002           use NEWLINE flag instead.
38004 Thu Jan 22 01:12:12 2004  Siena.  <siena@faculty.chiba-u.jp>
38006         * missing/os2.c (chdir, getcwd):
38007           use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX.
38009 Thu Jan 22 00:33:52 2004  Siena.  <siena@faculty.chiba-u.jp>
38011         * configure.in: check availability of link(). [ruby-dev:22237]
38012         * file.c (rb_file_s_link): raise an exception when link() is unavailable.
38013         * missing/os2.c (link): removed. File#link isn't supported.
38014         * bcc32/Makefile.sub: define HAVE_LINK to enable link(). [ruby-dev:22241]
38015         * win32/Makefile.sub: ditto.
38017 Thu Jan 22 00:26:25 2004  Siena.  <siena@faculty.chiba-u.jp>
38019         * ChangeLog: typo: RUBY_MBCHAR_MAX was RUBY_MBCHAR_MAXSIZE.
38021 Thu Jan 22 00:12:51 2004  Siena.  <siena@faculty.chiba-u.jp>
38023         * defines.h: define RUBY_MBCHAR_MAX instead of MB_CUR_MAX.
38024         * dir.c (Next, emx_mblen): use RUBY_MBCHAR_MAX for mblen().
38025         * file.c (CharNext): ditto.
38026         * ruby.c (translate_char): ditto.
38027         * util.c (__crt0_glob_function): ditto.
38029 Thu Jan 22 00:10:01 2004  Dave Thomas  <dave@pragprog.com>
38031         * lib/base64.rb: :nodoc: the Deprecated module
38033 Wed Jan 21 23:52:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38035         * configure.in: Interix(SFU) support.
38037 Wed Jan 21 23:03:45 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
38039         * lib/drb/drb.rb: remove O_NONBLOCK, thanks \ay
38040         * lib/drb/extserv.rb: typo
38042 Wed Jan 21 17:57:56 2004  Shugo Maeda  <shugo@ruby-lang.org>
38044         * lib/net/imap.rb (envelope): allow NIL.
38045         * lib/net/imap.rb (body): ditto.
38046         * lib/net/imap.rb (number): ditto.
38047         * lib/net/imap.rb (ensure_nz_number): show a detailed error
38048           message.
38050 Wed Jan 21 16:44:15 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38052         * lib/mkmf.rb (merge_libs): squeeze successive same libraries.
38053           [ruby-dev:22652]
38055 Wed Jan 21 16:10:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38057         * lib/base64.rb: enclosed in a module.  [ruby-core:02285]
38059 Wed Jan 21 16:01:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38061         * ext/digest/rmd160/extconf.rb: have_library appends found library.
38063 Wed Jan 21 11:36:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38065         * ext/socket/socket.c (sock_gethostbyname): returns host if
38066           ai_canonname is NULL. (ruby-bugs PR#1243)
38068         * parse.y (block_append): update nd_end for "real" head node.
38069           [ruby-list:39058]
38071 Tue Jan 20 14:48:28 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38073         * ext/openssl/extconf.rb: should check <openssl/conf_api.h> instead
38074           of OPENSSL_VERSION_NUMBER. [ruby-list:39056]
38076 Tue Jan 20 14:43:17 2004  Dave Thomas  <dave@pragprog.com>
38078         * lib/base64.rb: Add RDoc
38080 Tue Jan 20 14:25:51 2004  Dave Thomas  <dave@pragprog.com>
38082         * lib/abbrev.rb: Add RDoc
38084 Tue Jan 20 13:22:39 2004  Dave Thomas  <dave@pragprog.com>
38086         * lib/rdoc/generators/html_generator.rb: Document aliases at
38087           top-most level.
38089         * lib/English.rb: Document English.rb.
38091 Tue Jan 20 04:41:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38093         * test/ruby/test_marshal.rb (MarshalTestLib::test_exception): test
38094           for [ruby-dev:22604].
38096         * test/ruby/test_marshal.rb (MarshalTestLibtest_singleton): test
38097           for [ruby-dev:22588].
38099 Tue Jan 20 02:38:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38101         * marshal.c (w_class): should not dump singleton class.
38102           [ruby-dev:22631]
38104 Tue Jan 20 02:49:22 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38106         * ext/openssl/extconf.rb: add check for OpenSSL version.
38107           [ruby-list:39054]
38109 Mon Jan 19 23:56:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38111         * error.c (name_err_mesg_to_str): inverted condition for result of
38112           inspection.  [ruby-dev:22628]
38114 Mon Jan 19 22:24:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38116         * sample/exyacc.rb: escape '}' to avoid warning.
38118         * lib/rdoc/parsers/parse_c.rb: escape '{' and '}' to avoid warnings.
38120 Mon Jan 19 21:28:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38122         * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: remove
38123           useless casts for Borland C.
38125 Mon Jan 19 17:39:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38127         * error.c (NameError::message): internal use only.
38129         * eval.c (rb_method_missing): use hidden constant.
38131 Mon Jan 19 16:30:53 2004  akira yamada  <akira@ruby-lang.org>
38133         * test/ruby/test_time.rb: added tests for [ruby-dev:22614] and
38134           [ruby-dev:22617].
38136 Mon Jan 19 13:09:21 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38138         * ext/extmk.rb, win32/Makefile.sub, win32/configure.bat,
38139           win32/setup.mak: --with-static-linked-ext support on mswin32.
38141 Mon Jan 19 06:49:07 2004  Tadayoshi Funaba  <tadf@dotrb.org>
38143         * lib/date.rb: zone was wrong when it was behind UTC.
38144           Thanks Mark J. Reed.
38146         * lib/date/format.rb: %z is now always replaced by four digits
38147           with a leading plus or minus sign.
38149         * sample/cal.rb: added a class, anyway.
38151 Mon Jan 19 01:08:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38153         * class.c, error.c, eval.c, intern.h, object.c, variable.c:
38154           do not set path if it is a singleton class.  [ruby-dev:22588]
38156         * lib/cgi.rb (CGI::QueryExtension): give extended string, not a
38157           delegater object.
38159 Sun Jan 18 23:59:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38161         * ext/iconv/charset_alias.rb: prefer us_EN locale encodings or
38162           former.  [ruby-dev:22609]
38164         * ext/iconv/iconv.c (iconv_create): raise InvalidEncoding
38165           exception when EINVAL.
38167 Sun Jan 18 23:16:34 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38169         * class.c, error.c, file.c, io.c, numeric.c, object.c, re.c, struct.c,
38170           time.c: marked init_copy functions nodoc.
38172 Sun Jan 18 20:47:35 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38174         * ruby.c: use translate_char() on Cygwin.
38176 Sun Jan 18 20:00:16 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38178         * lib/soap/wsdlDriver.rb, lib/wsdl/soap/operation.rb: add support of
38179           "parts" attribute of soap:body element in WSDL.
38181         * lib/wsdl/xmlSchema/schema.rb: friendly warning message for
38182           simpleType element which is not supported for now.
38184         * test/wsdl/soap/{soapbodyparts.wsdl,test_soapbodyparts.wsdl}: new
38185           files.
38187 Sun Jan 18 16:46:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38189         * time.c (time_overflow_p): should return results.  [ruby-dev:22614]
38191 Sun Jan 18 12:07:24 2004  Siena.  <siena@faculty.chiba-u.jp>
38193         * test/ruby/test_time.rb: new test case to test Time#[+-].
38195         * time.c (time_plus, time_minus): fix RangeError for a negative
38196           argument in environments whose time_t is unsigned. [ruby-dev:22608]
38198 Sun Jan 18 02:33:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38200         * defines.h (_WIN32): undef _WIN32 on Cygwin before defining DOSISH.
38202 Sun Jan 18 00:23:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38204         * marshal.c (class2path): check anonymous class/module before
38205           checking referable, and allow singleton classes.
38207 Sat Jan 17 23:58:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38209         * error.c (NameError::Message): new class for lazy evaluation of
38210           message to ensure replaced before marshalling.  [ruby-dev:22604]
38212         * eval.c (rb_method_missing): use NameError::Message.
38214 Sat Jan 17 21:49:50 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38216         * lib/time.rb (test_rfc2822, test_rfc3339, test_encode_xmlschema):
38217           should not expect that all platforms handle negative time_t value.
38219 Fri Jan 16 23:53:09 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38221         * eval.c (proc_eq): compare also arguments and environment
38222           (including local variables).  [ruby-dev:22590]
38224 Fri Jan 16 14:33:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38226         * marshal.c (class2path): get class path and check referable.
38227           [ruby-dev:22588]
38229 Thu Jan 15 12:58:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38231         * io.c (argf_read): do not append EOF.  (ruby-bugs-ja:PR#585)
38233         * io.c (rb_io_fwrite): ad-hockery hack to get rid of HP-UX stdio
38234           weird behavior.  [ruby-dev:22424]
38236 Wed Jan 14 21:13:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38238         * test/inlinetest.rb (InlineTest::eval_part): eval under the top
38239           level environment.
38241 Wed Jan 14 17:54:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38243         * test/inlinetest.rb (InlineTest::loadtest): require instead of
38244           load, to get rid of multiple loading.
38246 Wed Jan 14 13:30:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38248         * ext/iconv/extconf.rb: wrapper iconv.rb is dependent on platform.
38250 Wed Jan 14 09:32:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38252         * MANIFEST: add test/net/test_httpheader.rb. (commit miss?)
38254 Wed Jan 14 00:58:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38256         * eval.c (Init_Proc): move SystemStackError from under
38257           StandardError to Exception.  [ruby-talk:89782]
38259 Tue Jan 13 18:03:02 2004  Ian Macdonald  <ian@caliban.org>
38261         * file.c (rb_stat_wr, rb_stat_ww): New functions
38262           implementing new methods (File::Stat#world_readable?,
38263           File::Stat#world_writable?).
38265 Tue Jan 13 16:53:25 2004  why the lucky stiff  <why@ruby-lang.org>
38267         * ext/syck/rubyext.c: omission of Date library code caused
38268           test suite failure. [ruby-core:2251]
38270 Tue Jan 13 16:50:03 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38272         * ext/tk/lib/tk.rb: use $0 as the default application class name.
38274 Tue Jan 13 14:48:00 2004  Ian Macdonald  <ian@caliban.org>
38276         * lib/pathname.rb: New methods (Pathname#world_readable?,
38277           Pathname#world_writable?).
38279 Tue Jan 13 14:48:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38281         * parse.y (primary): allow no "when" case. [ruby-dev:22578]
38283         * ruby.h (rb_class_of): reduce branch. [ruby-dev:22577]
38285         * ruby.h (rb_type): ditto.
38287 Tue Jan 13 14:26:59 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38289         * lib/test/unit/ui/testrunnerutilities.rb (TestRunnerUtilities):
38290           moved run method which allows output level.  [ruby-dev:22554]
38292 Tue Jan 13 13:04:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38294         * test/test_*.rb: Pathname#parent -> Pathname#dirname.
38296 Tue Jan 13 11:38:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38298         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_spec_type_{int,float}):
38299           fix syntax error.
38301 Tue Jan 13 07:52:40 2004  why the lucky stiff  <why@ruby-lang.org>
38303         * ext/syck/bytecode.c: turn off default implicit typing.
38305         * ext/syck/implicit.c: detect base60 integers.
38307         * ext/syck/rubyext.c: handle base60, as well as hex and octal
38308           with commas.  implicit typing of ruby symbols.
38310         * test/yaml/test_yaml.rb: add test.
38312 Tue Jan 13 04:29:52 2004  Dave Thomas  <dave@pragprog.com>
38314         * lib/rdoc/ri/ri_driver.rb (RiDriver::report_method_stuff):
38315           Show fully-qualified class names in class list.
38317 Tue Jan 13 01:24:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38319         * file.c (test_wr): Rdoc fix.  [ruby-core:02225]
38321 Tue Jan 13 01:04:37 2004  Dave Thomas  <dave@pragprog.com>
38323         * lib/rdoc/ri/ri_paths.rb (RI::Paths): First attempt at
38324           incorporating DESTDIR in the rdoc installation.
38326 Mon Jan 12 23:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38328         * parse.y (primary): fix position after FCALL.  [ruby-dev:22574]
38330 Mon Jan 12 18:00:11 2004  Ian Macdonald  <ian@caliban.org>
38332         * file.c (test_wr, test_ww): New functions implementing new
38333           methods (File::world_readable?, File::world_writable?).
38335         * file.c (S_IRUGO, S_IGUGO): New macros.
38337 Mon Jan 12 12:07:22 2004  Dave Thomas  <dave@pragprog.com>
38339         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods):
38340           Someone changed the "// in eval.c" comments to "/*...*/" style,
38341           so the parsing of the source file name broke.
38343         * object.c: Remove spurious space in TrueClass documentation.
38345         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Fix
38346           bad regexp: if the code before a documented method contained
38347           a comment that wasn't terminated by whitespace, that comment
38348           and all intervening code was included in the following
38349           method's documentation.
38351         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter::break_to_newline):
38352           HTML formats need explicit line breaks.
38354 Mon Jan 12 02:24:07 2004  Dave Thomas  <dave@pragprog.com>
38356         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter): Add HTML
38357           generation support to ri (Elliot Hughes)
38359 Sun Jan 11 23:54:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38361         * env.h (ruby_frame, ruby_scope, ruby_in_eval, ruby_class,
38362           ruby_dyna_vars): export.  [ruby-dev:22566]
38364 Sun Jan 11 02:35:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38366         * ext/socket/socket.c (make_hostent): a bug in brace position.
38368         * configure.in: install rdoc by default. if you do not want to
38369           install rdoc, specify --disable-install-doc.
38371 Sun Jan 11 02:07:47 2004  Dave Thomas  <dave@pragprog.com>
38373         * lib/rdoc/ri/ri_options.rb (RI::Options::OptionList::OptionList):
38374           Also accept command line options via the 'RI' environment variable.
38376 Sat Jan 10 21:27:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38378         * eval.c (eval): need to add message delimiter. [ruby-dev:22561]
38380 Sat Jan 10 01:54:50 2004  Eric Sunshine  <sunshine@sunshineco.com>
38382         * defines.h (__NeXT__): Ensure that all standard S_IRUSR, S_IWGRP,
38383           S_IRWXO, etc. macros are defined since future code might require
38384           them (even though present code only requires a subset).
38386         * defines.h (__NeXT__): Bug fix: WORDS_BIGENDIAN was not being set
38387           correctly on Rhapsody when -arch compiler flag was used (via
38388           configure's --enable-fat-binary option).
38390 Sat Jan 10 23:01:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38392         * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
38393           quotes.  [ruby-dev:22564]
38395         * lib/mkmf.rb (libpathflag): do not enclose with quotes always.
38397         * {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.
38399 Sat Jan 10 22:46:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38401         * dir.c (dir_inspect): new method, Dir#inspect.  [ruby-dev:22562]
38403 Fri Jan  9 17:36:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38405         * ext/socket/socket.c (make_hostent): getaddrinfo(3) on BSD do not
38406           fill ai_canonname if serv is not supplied.  (ruby-bugs PR#1243)
38408 Fri Jan  9 13:14:59 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38410         * lib/test/unit/collector/dir.rb: do not ignore exceptions(LoadError
38411           and SystemExitError) while loading a testcase.  smell of bug.
38413         * test/testunit/collector/test_dir.rb: add new test of the LoadError.
38415         * test/drb/{test_drbssl.rb,test_drbunix.rb}: do not define testcase if
38416           openssl is not installed.
38418         * test/testunit/collector/test_dir.rb: assert_raises -> assert_raise.
38420 Fri Jan  9 11:52:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38422         * rubysig.h: <errno.h> is needed to use errno which may be a macro.
38424 Fri Jan  9 11:20:24 2004  Siena.  <siena@faculty.chiba-u.jp>
38426         * ext/extmk.rb (extmake): should not reduce necessary libraries.
38427           [ruby-dev:22440]
38429         * lib/mkmf.rb (merge_libs): merge libraries according to
38430           dependency.
38432 Fri Jan  9 10:05:23 2004  Siena.  <siena@faculty.chiba-u.jp>
38434         * lib/mkmf.rb (libpathflag): use single quotes.  [ruby-dev:22440]
38436 Thu Jan  8 23:49:21 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38438         * configure.in (RDOCTARGET): new macro.  if you want to install
38439           rdoc documentation, you need to run configure with
38440           --enable-install-doc.
38442 Thu Jan  8 21:17:43 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38444         * ext/openssl/ossl_pkey.c (ossl_pkey_to_der): removed; it returns
38445           public key only.
38447         * ext/openssl/ossl_pkey_dh.c (ossl_dh_to_der): new function for
38448           OpenSSL::PKey::DH#to_der.
38450         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_to_der): new function for
38451           OpenSSL::PKey::DSA#to_der.
38453         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_to_der): new function for
38454           OpenSSL::PKey::RSA#to_der.
38456 Thu Jan  8 18:25:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38458         * dir.c (glob_helper): should not recurse in exceptional status.
38460 Thu Jan  8 16:51:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38462         * test/wsdl/datetime/test_datetime.rb: fixed a stupid testcase which
38463           dumps "E" at month-end.
38465 Thu Jan  8 11:20:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38467         * eval.c, object.c, process.c, re.c: don't use C++ style comments.
38469 Thu Jan  8 08:46:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38471         * ext/syck/rubyext.c (yaml_org_handler): lazy-load Date for
38472           static-ext.
38474 Thu Jan  8 07:06:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38476         * ext/extmk.rb: preserve order in Setup.  [ruby-dev:22503]
38478         * ext/extmk.rb: move dependent libraries just after depended
38479           libraries.
38481         * ext/digest/*/extconf.rb: depend on digest.
38483 Thu Jan  8 04:36:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38485         * lib/webrick/cgi.rb (WEBrick::CGI#initialize): should create
38486           @config[:Logger] if it was not given.
38488 Wed Jan  7 22:28:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38490         * dir.c (glob_helper): fix memory leak.
38492 Wed Jan  7 21:15:07 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38494         * sample/webrick/*: new files.
38496         * MANIFEST: add sample/webrick/*
38498 Wed Jan  7 20:51:51 2004  Minero Aoki  <aamine@loveruby.net>
38500         * test/net/test_httpheader.rb: new file.
38502         * MANIFEST: add test/net/test_httpheader.rb.
38504 Wed Jan  7 20:42:06 2004  Minero Aoki  <aamine@loveruby.net>
38506         * lib/net/http.rb (HTTPHeader#content_length): should return nil
38507           unless header exists. [ruby-dev:22519]
38509 Wed Jan  7 14:26:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38511         * ext/tk/lib/tk.rb (TkPanedWindow): use epath for embedded windows.
38513         * ext/tk/lib/tktext.rb: use epath for embedded windows.
38515         * ext/tk/lib/tkcanvas.rb: use epath for window items.
38517 Wed Jan  7 14:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38519         * lib/soap/{attachment.rb,mimemessage.rb}: added from soap4r/1.5.2.
38521 Wed Jan  7 13:00:18 2004  Dave Thomas  <dave@pragprog.com>
38523         * lib/rdoc/ri/ri_driver.rb: Fix problem where ri was
38524           being too eager to find matches of ambiguous method
38525           names (such as "ri Thread.join" would return both
38526           Thread.join and ThreadsWait.join)
38528 Wed Jan  7 12:35:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38530         * lib/debug.rb: revert command parse regexps.  [ruby-list:39014] by
38531           Shirai,Kaoru.
38533 Wed Jan  7 08:21:04 2004  Dave Thomas  <dave@pragprog.com>
38535         * lib/rdoc/parsers/parserfactory.rb: Check for shebang
38536           line in files that would otherwise be treated as
38537           plain text.
38539 Tue Jan  6 22:13:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38541         * eval.c (rb_mod_modfunc): should break if m has no super class.
38542           [ruby-dev:22498]
38544 Tue Jan  6 21:51:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38546         * io.c (fptr_finalize): should save errno just after failure.
38547           [ruby-dev:22492]
38549 Tue Jan  6 20:51:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38551         * lib/logger.rb(Logger#msg2str): no special treatment for the object
38552           which responds to :to_str.
38554         * lib/logger.rb(LogDevice#initialize): remove type checking if the
38555           given object is a String.  Kernel.open handles it correctly.
38557         * test/logger/test_logger.rb: follow above change (ArgumentError ->
38558           TypeError.)
38560 Tue Jan  6 14:53:14 2004  Dave Thomas  <dave@pragprog.com>
38562         * bin/ri: split out the display side, making it pluggable. Added
38563           new ri_driver and ri_display files in lib/rdoc/ri.
38565 Tue Jan  6 11:29:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38567         * test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,
38568           test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
38569           test_time.rb,test_tsort.rb: added.
38571 Tue Jan  6 09:38:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38573         * import soap4r/1.5.2;
38575         * lib/soap/{attachment.rb,baseData.rb,encodingstyle/soapHandler.rb}:
38576           introduce SOAPExternalReference class as a referenct to SOAPEnvelope
38577           external content.
38579         * lib/soap/{attachment.rb,mimemessage.rb}: great SwA (SOAP messages
38580           with Attachments) support code by Jamie Herre.
38582         * lib/soap/{element.rb,marshal.rb,parser.rb,processor.rb,
38583           streamHandler.rb,wsdlDriver.rb}: SwA support.
38585         * lib/soap/rpc/{cgistub.rb,driver.rb,element.rb,proxy.rb,router.rb,
38586           soaplet.rb}: SwA support and refactoring.
38588         * lib/soap/generator.rb, lib/soap/mapping/mapping.rb: follow
38589           SOAPReference#initialize signature change.
38591         * lib/soap/mapping/factory.rb: deleted unused methods.
38593         * lib/soap/mapping/rubytypeFactory.rb: do no ignore case while xsi:type
38594           string <-> Ruby class name matching.
38596         * lib/xsd/datatypes.rb: check the smallest positive non-zero
38597           single-precision float exactly instead of packing with "f".
38598           [ruby-talk:88822]
38600         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: use 1.402e-45, not
38601           1.4e-45.  1.4e-45 is smaller than 2 ** -149...
38603         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb,
38604           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0".
38606         * test/soap/test_streamhandler.rb: revert to the previous test that
38607           warns "basic_auth unsupported under net/http".
38609 Tue Jan  6 06:37:53 2004  Dave Thomas  <dave@pragprog.com>
38611         * bin/rdoc: Add --ri-system switch
38613         * lib/.document: Update with list of files that seem to have
38614           documentation
38616         * lib/test/unit.rb: Reorder comment to make it RDoc friendly.
38618         * Makefile.in: add install-nodoc target, and make it
38619           generate RDoc on default install.
38621         * lib/rdoc/ri/ri_options.rb (RI::Options::parse): Add
38622           --doc-dir option to ri.
38624 Tue Jan  6 00:04:40 2004  Dave Thomas  <dave@pragprog.com>
38626         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
38627           fix parsing if there are braces in a method parameter list
38629 Tue Jan  6 01:01:04 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38631         * win32/dir.h, win32/win32.c: fix patch miss.
38633         * win32/Makefile.sub: fix file dependency.
38635 Mon Jan  5 20:32:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
38637         * lib/logger.rb: enhanced documentation.
38639 Mon Jan  5 18:58:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38641         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
38642           [ruby-dev:22486]
38644         * pack.c (pack_unpack): unpack requires big endian offet (OFF16B
38645           and OFF32B).  The patch is from Minero Aoki in [ruby-dev:22489]
38647         * pack.c (OFF16B): add big-endian offset again.
38649 Mon Jan  5 03:00:53 2004  Minero Aoki  <aamine@loveruby.net>
38651         * test/ruby/test_pack.rb: new test test_unpack_N.
38653 Mon Jan  5 01:47:53 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38655         * lib/mkmf.rb (create_makefile): remove duplicated object files
38656           from $objs on DOSISH platforms.
38658 Sat Jan  3 02:44:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38660         * rubysig.h (TRAP_END): preserve errno before switching context.
38661           [ruby-core:02137]
38663 Sat Jan  3 01:18:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38665         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
38666           [ruby-dev:22476]
38668 Fri Jan  2 14:54:11 2004  Dave Thomas  <dave@pragprog.com>
38670         * bin/ri: Add new --classes option, and arrange for
38671           help messages to be paged too.
38673         * bin/rdoc: Add statistics.
38675         * process.c: (MG) Added Process documentation
38677         * lib/rdoc/ri/ri_formatter.rb (RI::AttributeFormatter::wrap):
38678           Fix problem with labels not displaying in RI labeled
38679           lists using BS and ANSI modes.
38681 Fri Jan  2 01:50:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38683         * io.c (argf_eof): ARGF.eof? should not have any side effect.
38684           [ruby-dev:22469]
38686 Thu Jan  1 09:03:20 2004  Dave Thomas  <dave@pragprog.com>
38688         * bin/ri (report_class_stuff): Fix problem with ambiguous nested
38689           classes not matching.
38691 Wed Dec 31 17:25:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38693         * io.c (argf_each_byte): should return self.  [ruby-dev:22465]
38695 Wed Dec 31 15:05:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
38697         * lib/pathname.rb: Corrected small coding error.
38699 Wed Dec 31 15:00:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
38701         * lib/pathname.rb: Completed documentation.
38703 Wed Dec 31 11:20:34 2003  Dave Thomas  <dave@pragprog.com>
38705         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Make
38706           file referenced in "// in sss.c" relative to current file.
38708 Wed Dec 31 11:17:37 2003  Dave Thomas  <dave@pragprog.com>
38710         * lib/rdoc/generators/html_generator.rb: Fix problem when
38711           a public method was aliased, but the alias is then
38712           made private, and hence doesn't appear in RDoc output.
38714 Wed Dec 31 01:33:05 2003  Dave Thomas  <dave@pragprog.com>
38716         * array.c, error.c, eval.c, io.c, prec.c, range.c, re.c,
38717           string.c, time.c: Add RDoc for Kernel functions, and tidy.
38719 Tue Dec 30 19:39:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38721         * io.c (rb_f_readline): should raise EOFError at the end of
38722           files.  [ruby-dev:22458]
38724         * io.c (argf_read): should concatenate input files when length
38725           argument is nil. [ruby-dev:22450]
38727         * io.c (argf_read): should update supplied string buffer (2nd
38728           argument) even when IO#read is called multiple times.
38730         * io.c: should initialize lineno by zero. [ruby-dev:22460]
38732 Tue Dec 30 12:30:30 2003  Dave Thomas  <dave@pragprog.com>
38734         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): If a
38735           class and a method have the same name, finding Xxx.abc was trying
38736           to find 'abc' in method 'Xxx', not class 'Xxx'.
38738 Tue Dec 30 08:32:32 2003  Dave Thomas  <dave@pragprog.com>
38740         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method):
38741           Handle undoing nsting of yield parameters correctly for:
38743             def each_entry(&b) Dir.foreach(@path) {|f| yield P.new(f) } end
38745 Tue Dec 30 07:30:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
38747         * lib/pathname.rb: Added documentation.
38749 Mon Dec 29 20:08:17 2003  Minero Aoki  <aamine@loveruby.net>
38751         * lib/net/http.rb (GenericRequest#initialize): check if path
38752           begins with '/'.
38754         * lib/net/http.rb: def m( arg ) -> def m(arg)
38756 Mon Dec 29 12:51:02 2003  Dave Thomas  <dave@pragprog.com>
38758         * eval.c: Add RDoc for Kernel global functions.
38760 Mon Dec 29 11:00:16 2003  Dave Thomas  <dave@pragprog.com>
38762         * array.c: Tidy up RDoc loose ends.
38764 Mon Dec 29 05:05:51 2003  Dave Thomas  <dave@pragprog.com>
38766         * struct.c, random: Add RDoc comments
38768 Mon Dec 29 02:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
38770         * lib/optparse.rb: Improved documentation.
38772 Mon Dec 29 02:20:54 2003  Dave Thomas  <dave@pragprog.com>
38774         * eval.c: Add RDoc for class Proc, Method, UnboundMethod
38776 Mon Dec 29 02:20:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
38778         * instruby.rb: fix install directory if destdir and compile_dir are
38779           not in the same drive.
38781         * ext/extmk.rb: ditto. [ruby-list:39009]
38783         * win32/Makefile.sub, win32/README.win32, win32/configure.bat,
38784           win32/setup.mak: new configure scheme. use ``configure --prefix=dir''
38785           instead of ``nmake DESTDIR=dir install''.
38787 Mon Dec 29 00:41:44 2003  Dave Thomas  <dave@pragprog.com>
38789         * math.c: Add RDoc comments
38791 Sun Dec 28 20:19:11 2003  Tanaka Akira  <akr@m17n.org>
38793         * ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't
38794           raise EOFError.
38796         * ext/zlib/zlib.c (gzreader_gets): don't increment lineno when
38797           gzfile_read_all returns "".
38799 Sun Dec 28 15:25:08 2003  Dave Thomas  <dave@pragprog.com>
38801         * class.c,object.c,parse.y,sprintf.c,variable.c: Document classes
38802           Object, Module, etc...
38804 Sun Dec 28 11:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38806         * test/csv/test_csv.rb: generate bom.csv and mac.csv files on the fly.
38807           [ruby-talk:88852]
38809         * test/csv/{bom.csv,mac.csv}: removed.
38811 Sun Dec 28 08:56:51 2003  Dave Thomas  <dave@pragprog.com>
38813         * eval.c: Thead[Group] RDoc (thanks to MG)
38815 Sun Dec 28 03:50:05 2003  Dave Thomas  <dave@pragprog.com>
38817         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_override_comment):
38818           Escape method names used in regexp
38820 Sun Dec 28 01:46:02 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
38822         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
38823           Add support for rules in 'ri' output.
38825 Sun Dec 28 01:35:35 2003  Dave Thomas  <dave@pragprog.com>
38827         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body):
38828           Sometimes the Ruby source aliases two otherwise
38829           unrelated methods (for example Kernel#object_id and
38830           Kernel#hash are both the same C function). Provide a
38831           facility to allow the methods to be documented
38832           separately.
38834 Sun Dec 28 01:05:31 2003  Dave Thomas  <dave@pragprog.com>
38836         * marshal.c, signal.c: RDoc collemts added by Elliott Hughes
38838 Sun Dec 28 00:46:25 2003  Dave Thomas  <dave@pragprog.com>
38840         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_class_comment):
38841           Some Ruby source uses lower-case class names for the
38842           Init_Xxx C function name.
38844 Sat Dec 27 23:41:46 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
38846         * configure.in: fix "test: too many arguments" error.
38848 Sat Dec 27 15:32:40 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
38850         * time.c: Add RDoc comments for Time class.
38852 Sat Dec 27 15:07:26 2003  Dave Thomas  <dave@pragprog.com>
38854         * object.c: Add RDoc comments for Symbol class.
38856 Sat Dec 27 14:39:53 2003  Dave Thomas  <dave@pragprog.com>
38858         * numeric.c (Init_Numeric): Add RDoc comments.
38860 Sat Dec 27 00:44:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38862         * io.c (next_argv): warn always for stdin on inplace edit mode.
38864         * io.c (read_all): need to check string value.
38866         * io.c (argf_read): allow ARGF.read(nil).  [ruby-dev:22433]
38868 Fri Dec 26 23:02:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38870         * io.c (rb_f_backquote): need not to check nil result.
38871           [ruby-core:02078]
38873         * io.c (rb_io_getline): should return nil when read_all gives
38874           empty string, even when nil rs is specified. [ruby-core:02077]
38876 Fri Dec 26 18:33:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38878         * configure.in: check if getcontext and setcontext are available.
38880         * eval.c: use presence of getcontext/setcontext.
38882 Fri Dec 26 16:40:53 2003  Tanaka Akira  <akr@m17n.org>
38884         * lib/pathname.rb (PathnameTest#test_plus): add 2 assertions.
38886 Fri Dec 26 14:05:13 2003  Minero Aoki  <aamine@loveruby.net>
38888         * test/ruby/test_pack.rb: new test test_pack_N.
38890 Fri Dec 26 12:53:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38892         * pack.c (pack_pack): add sign check for 'i', and 'l'.
38893           [ruby-dev:22427]
38895         * bignum.c (rb_quad_pack): add range check for 'quad int'.
38897 Fri Dec 26 10:58:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
38899         * MANIFEST: add vms/config.h and remove vms/config.h_in.
38901 Fri Dec 26 10:42:00 2003  AKIYOSHI, Masamichi  <masamichi.akiyoshi@hp.com>
38903         * io.c: [VMS] "rfm=stmlf" is specified for open() and fopen().
38905 Thu Dec 25 22:29:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
38907         * string.c (rb_str_update): don't return any value.
38909 Thu Dec 25 15:30:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38911         * string.c (rb_str_update): call rb_str_modify().
38913 Thu Dec 25 05:08:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38915         * eval.c (search_required): search actual file name once when no
38916           extension specified.
38918 Thu Dec 25 04:00:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38920         * stable version 1.8.1 released.
38922 Thu Dec 25 00:17:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38924         * configure.in: check for nanosleep, -lrt if required.
38925           [ruby-core:02059]
38927         * eval.c (thread_timer): use select(2) if nanosleep(2) is not
38928           available.
38930         * eval.c: check __stub_getcontext for glibc on some platforms.
38931           [ruby-list:38984]
38933 Wed Dec 24 23:48:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38935         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb
38936           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0"
38937           to express -0.0.  [ruby-talk:88786]
38939 Wed Dec 24 23:29:30 2003  Tanaka Akira  <akr@m17n.org>
38941         * lib/tsort.rb (test_orphaned_break): removed.
38943 Wed Dec 24 20:53:06 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38945         * ext/tk/sample/tkmulticolumnlist.rb: new sample
38947         * ext/tk/sample/tkmultilistframe.rb: bug fix
38949 Wed Dec 24 20:37:37 2003  Eric Sunshine  <sunshine@sunshineco.com>
38951         * configure.in (LDSHARED): Fixed typographical error in assignment of
38952           LDSHARED for Rhapsody which caused linking of extension modules to
38953           fail.
38955 Wed Dec 24 17:51:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38957         * file.c (rb_thread_flock): enable thread support again.
38959 Wed Dec 24 16:46:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
38961         * eval.c (catch_timer): do not call rb_thread_schedule() inside to
38962           avoid pthread_mutex_lock() deadlock.  interrupts to system calls
38963           are detected by TRAP_END via EINTR error.
38965         * eval.c (thread_timer): do not post signal unless it is
38966           absolutely necessary.
38968         * rubysig.h (TRAP_END): add CHECK_INTS to switch thread.
38970         * regex.c (re_compile_pattern): check if nextp is smaller than
38971           pend.  [ruby-dev:22372]
38973         * eval.c (umethod_bind): remove method overridden check.
38974           [ruby-dev:22366]
38976 Wed Dec 24 16:13:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38978         * ext/openssl/ossl_ssl.c (ossl_ssl_read): should check for error
38979           status by SSL_get_error().
38981         * ext/openssl/ossl_ssl.c (ossl_ssl_write): ditto.
38983 Wed Dec 24 14:23:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38985         * ext/stringio/stringio.c (strio_read): clear the buffer argument
38986           when returning nil.  [ruby-dev:22363]
38988         * test/ruby/ut_eof.rb (TestEOF::test_eof_0, TestEOF::test_eof_1):
38989           add buffer argument tests.
38991 Wed Dec 24 14:07:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38993         * lib/test/unit/assertions.rb: Modules are allowed to rescue.
38995         * lib/test/unit/autorunner.rb: show output_level in order.
38997         * lib/test/unit/collector/dir.rb: get rid of successive same
38998           directories in load path.
39000         * test/testunit/test_assertions.rb (test_assert_nothing_raised,
39001           test_assert_raise): test for modules.
39003 Wed Dec 24 13:43:34 2003  Shugo Maeda  <shugo@ruby-lang.org>
39005         * lib/net/imap.rb (authenticate): remove "\n" from base64 encoded
39006           strings.
39008 Wed Dec 24 11:26:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39010         * test/fileutils/test_fileutils.rb: should not create any
39011           files or directories in current directory.  [ruby-talk:88724]
39013 Wed Dec 24 10:29:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39015         * ext/stringio/stringio.c (strio_read): never return nil at
39016           unlimited read.  [ruby-dev:22334]
39018         * ext/stringio/stringio.c (strio_read): support second
39019           argument.  [ruby-dev:22350]
39021 Wed Dec 24 09:38:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39023         * parse.y (arg): should return 0 after error.  [ruby-dev:22360]
39025 Wed Dec 24 00:56:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39027         * io.c (read_all): do not return nil at the end of file.
39028           [ruby-dev:22334]
39030         * io.c (argf_read): do not depend on nil at eof behavior of
39031           IO#read().
39033         * eval.c (rb_thread_join): dup exception before re-raising it.
39035         * io.c (rb_io_eof): call clearerr() to prevent side effect.  this
39036           patch is supplied by Masahiro Sakai <sakai@tom.sfc.keio.ac.jp>.
39037           [ruby-dev:22234]
39039         * pack.c (OFF16): get offset for big endian machines.
39041         * pack.c (pack_pack): use OFF16 instead of OFF16B.
39042           [ruby-dev:22344]
39044         * pack.c (pack_unpack): ditto.
39046 Tue Dec 23 22:47:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39048         * io.c (rb_io_check_readable): set FMODE_RBUF always, even if
39049           NEED_IO_SEEK_BETWEEN_RW is not defined. [ruby-dev:22340]
39051         * io.c (rb_io_check_writable): clear FMODE_RBUF before writing
39052           something.
39054 Tue Dec 23 22:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
39056         * lib/optparse.rb: incomplete RDoc documentation added in place of
39057           existing RD comments.  Tabs converted to spaces.
39059 Tue Dec 23 19:44:47 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39061         * test/soap/test_streamhandler.rb (test_basic_auth): removed.
39062           soap4r + basic_auth is not officially supported in ruby/1.8.1 even
39063           though soap4r + basic_auth + http-access2 should run fine.
39065 Tue Dec 23 19:42:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39067         * io.c (rb_io_ungetc): raise an exception at unread stream to
39068           avoid unspecified behavior.  [ruby-dev:22330]
39070         * test/ruby/test_system.rb (test_syntax): glob relatively from
39071           __FILE__.
39073 Tue Dec 23 18:09:40 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39075         * pack.c (pack_pack): remove unnecessary negative value check.
39076           [ruby-dev:22329]
39078 Tue Dec 23 17:26:55 2003  KONISHI Hiromasa  <konishih@fd6.so-net.ne.jp>
39080         * bcc32/Makefile.sub (config.h): bcc has finite(). [ruby-list:38940]
39082 Tue Dec 23 16:08:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39084         * lib/rexml/encodings/US-ASCII.rb: typo.  [ruby-talk:88650]
39086         * test/ruby/test_system.rb: num of asserts depended on running dir.
39088         * test/xsd/test_noencoding.rb: rexml + without iconv/uconv cannot
39089           handle euc-jp.  install iconv, uconv or xmlscan.
39091 Tue Dec 23 14:13:51 2003  akira yamada  <akira@ruby-lang.org>
39093         * lib/uri/generic.rb (URI::Generic::check_userinfo,
39094           URI::Generic::check_user, URI::Generic::check_password): tests
39095           conflicts/depends with other components closely.
39097         * test/uri/test_generic.rb (TestGeneric::test_set_component):
39098           added tets.
39100 Tue Dec 23 11:08:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39102         * test/xsd/test_noencoding.rb: rescue Errno::EINVAL and do not test.
39103           "euc-jp" might not be in supported encoding name list.
39104           [ruby-talk:88650]
39106 Tue Dec 23 06:10:31 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39108         * lib/webrick/cgi.rb (CGI): add support for mod_ruby.
39110         * lib/webrick/cgi.rb (CGI::Socket): add check for existence of
39111           OpenSSL module in all HTTPS related methods.
39113         * lib/webrick/cgi.rb (CGI::Socket#cipher): should create similar
39114           value to OpenSSL::SSLSocket#cipher.
39116         * lib/webrick/httpresponse.rb (HTTPResponse#setup_header): should
39117           set "connection: close" if @keep_alive is false.
39119         * lib/webrick/https.rb (HTTPrequest#meta_vars): add supprt for
39120           SSL_PROTOCOL, SSL_CIPHER_USEKEYSIZE and SSL_CIPHER_ALGKEYSIZE.
39122 Mon Dec 22 23:00:05 2003  akira yamada  <akira@ruby-lang.org>
39124         * lib/uri/generic.rb (URI::Generic::check_opaque): fixed typo.
39126 Mon Dec 22 21:59:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39128         * ext/iconv/iconv.c (map_charset): always ensure code is a String.
39130 Mon Dec 22 21:15:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39132         * class.c (rb_mod_init_copy): always copy singleton class.
39133           [ruby-dev:22325]
39135 Mon Dec 22 20:44:36 2003  akira yamada  <akira@ruby-lang.org>
39137         * lib/uri/generic.rb (URI::Generic#route_from): accepts urls which
39138           has no host-part.
39140         * test/uri/test_generic.rb (TestGeneric::test_route): added a test.
39142 Mon Dec 22 20:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39144         * lib/cgi.rb: reduce eval.
39146         * lib/cgi.rb (CGI::QueryExtension::read_multipart): alias path to
39147           local_path.  [ruby-list:38883]
39149 Mon Dec 22 20:09:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39151         * test/soap/test_property.rb: remove duplicated test method.
39153 Mon Dec 22 18:22:04 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
39155         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): remove
39156           HAVE_ISINF definition to follow previous commits of missing.h
39157           and win32/win32.h.
39159 Mon Dec 22 17:23:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39161         * configure.in (ac_cv_func_setitimer): moved from defines.h
39163         * defines.h, rubysig.h, signal.c: removed macro handling which
39164           should be done in configure.
39166         * configure.in (intrinsics.h): check if present.
39168         * ruby.h: include intrinsics.h if available.
39170         * bignum.c, marshal.c: include ieeefp.h if available.
39172         * missing.h (isinf): define as a macro if finite() and isnan()
39173           are available.  [ruby-core:02032]
39175 Mon Dec 22 17:07:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39177         * configure.in (mingw): set isnan, finite and isinf to yes.
39179 Mon Dec 22 13:40:19 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39181         * lib/soap/property.rb: passing block by reference.
39183 Mon Dec 22 00:32:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39185         * eval.c (rb_with_disable_interrupt): use ENABLE_INTS instead of
39186           ALLOW_INTS which may switch context.  [ruby-dev:22319]
39188         * ext/syck/emitter.c (syck_emitter_write): str bigger than
39189           e->bufsize causes buffer overflow.  [ruby-dev:22307]
39191 Sun Dec 21 17:29:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39193         * class.c (rb_check_inheritable): new function.  [ruby-dev:22316]
39195         * intern.h: add prototype.
39197         * eval.c (superclass): use rb_check_inheritable().
39199         * object.c (rb_class_initialize): check argument validity.
39201 Sun Dec 21 16:25:10 2003  Tanaka Akira  <akr@m17n.org>
39203         * lib/pathname.rb (Pathname#+): re-implemented to resolve ".." in
39204           beginning of the argument.
39205           (Pathname#join): concatenate from the last argument.
39206           (Pathname#parent): just use Pathname#+.
39208 Sun Dec 21 00:12:37 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39210         * ext/tk/lib/tk.rb: add new methods (TkScrollbar#assign, assign_list)
39212         * ext/tk/sample/tkmultilistframe.rb: use TkScrollbar#assign method
39214 Sat Dec 20 21:59:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39216         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): refine regexp.
39218         * lib/webrick/cgi.rb (CGI#start): NPH scripts return status line
39219           instead of Status: header field.
39221         * lib/webrick/cgi.rb (CGI::Socket): refine some coditions.
39223 Sat Dec 20 16:07:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39225         * lib/optparse.rb (OptionParser::Completion::complete): wrong
39226           Regexp for word boundary.  pointed out by Gavin Sinclair.
39228         * lib/optparse.rb (OptionParser::make_switch): [no-] prefix was
39229           missing.
39231 Sat Dec 20 11:40:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39233         * lib/yaml.rb (YAML::YAML): adjust Marshal version.
39235 Sat Dec 20 03:56:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39237         * eval.c (rb_with_disable_interrupt): prohibit thread context
39238           switch during proc execution.  [ruby-dev:21899]
39240 Sat Dec 20 02:41:02 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39242         * lib/webrick/cgi.rb: add file. (yet another CGI library)
39244         * MANIFEST: add lib/webrick/cgi.rb.
39246 Sat Dec 20 02:18:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39248         * misc/ruby-mode.el (ruby-calculate-indent): proper indentation
39249           inside of parentheses.  [ruby-dev:22308]
39251 Fri Dec 19 21:24:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39253         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): should not set
39254           HTTP_CONTENT_TYPE and HTTP_CONTENT_LENGTH.
39256         * lib/webrick/https.rb (HTTPRequest#parse): should check presence
39257           of cert() method to detect SSLSocket.
39259 Fri Dec 19 22:56:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39261         * lib/soap/property.rb (SOAP::Property#load): new method for loading
39262           property value into existing property tree.
39264         * test/soap/test_property.rb: add test.
39266 Fri Dec 19 19:21:49 2003  akira yamada  <akira@ruby-lang.org>
39268         * lib/runit/cui/testrunner.rb (RUNIT::CUI::TestRunner::run):
39269           should use Test::Unit::UI::{PROGRESS_ONLY,VERBOSE}.
39271 Fri Dec 19 17:36:49 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39273         * ext/tk/sample/tkmultilistbox.rb: bug fix
39275         * ext/tk/sample/tkmultilistframe.rb: new sample script
39277 Fri Dec 19 03:44:27 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39279         * lib/webrick/httputils.rb (parse_form_data): should return an
39280           empty Hash if the body is empty.
39282 Thu Dec 18 21:47:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
39284         * lib/mkmf.rb (create_makefile): should remove deffile if it's
39285           made by miniruby. based on nobu's patch.
39287 Thu Dec 18 21:44:21 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
39289         * eval.c (stack_extend): ignore inline optimization on VC7.
39291         * win32/Makefile.sub (OS, RT): can override.
39293         * win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
39294           option. based on Tietew's patch [ruby-dev:22289]
39296 Thu Dec 18 16:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39298         * dir.c (fnmatch): unlike find_dirsep(), rb_path_next() never
39299           return NULL.
39301 Thu Dec 18 15:27:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39303         * lib/ipaddr.rb (IPSocket::getaddress): merge usa's patch.
39304           [ruby-dev:21678]
39306 Wed Dec 17 15:15:30 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39308         * lib/cgi.rb (CGI::QueryExtension::Value::[]): should work like
39309           String#[] if more than one arguments are specified.
39311         * lib/delegate.rb: avoid using common instance name as "@obj".
39313         * lib/cgi.rb (CGI::QueryExtension::Value): Value is no longer
39314           subclass of String, but DelegateClass(String).
39316         * ext/curses/extconf.rb: restore function check for init_color.
39317           [ruby-list:38905]
39319         * Makefile.in: need to specify $(MAINLIBS) for the miniruby
39320           generation rule.
39322         * configure.in: better FreeBSD -lc_r support.
39324 Wed Dec 17 00:16:14 2003  Minero Aoki  <aamine@loveruby.net>
39326         * ext/strscan/strscan.c: new method
39327           StringScanner#beginning_of_line? (alias #bol?)
39329         * ext/strscan/strscan.c: new method StringScanner#concat and #<<.
39331         * ext/strscan/strscan.c: StringScanner#new(str) does not duplicate
39332           nor freeze STR (allow destructive modification).
39334         * test/strscan/test_stringscanner.rb: test new methods above.
39336         * test/strscan/test_stringscanner.rb: test destructive string
39337           modification.
39339 Tue Dec 16 21:20:47 2003  Tanaka Akira  <akr@m17n.org>
39341         * lib/pp.rb: don't use local variable `pp'.
39343         * lib/prettyprint.rb: ditto.
39345 Tue Dec 16 13:20:43 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39347         * ext/tk/lib/tk.rb: condition bug of if statement on
39348           {pack,grid}_propagate methods
39350 Tue Dec 16 03:17:29 2003  why the lucky stiff  <why@ruby-lang.org>
39352         * lib/yaml/rubytypes.rb: comments in strings. [ruby-talk:88012]
39354         * test/yaml/test_yaml.rb: add test.
39356 Tue Dec 16 01:14:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39358         * eval.c (catch_timer): check rb_thread_crtical in main native
39359           thread.
39361         * eval.c (thread_timer): just sends signals periodically, to
39362           prevent main native thread from receiving them in critical
39363           section.  [ruby-core:01959]
39365 Mon Dec 15 13:32:22 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39367         * dir.c (check_dirname): check string safety and remove extraneous
39368           trailing directory separators.  [ruby-dev:22279]
39370         * file.c: renamed and externalized rb_path_next,
39371           rb_path_skip_prefix, rb_path_last_separator, rb_path_end.
39373         * intern.h: prototypes for rb_path_next, rb_path_skip_prefix,
39374           rb_path_last_separator, rb_path_end.
39376 Mon Dec 15 09:27:46 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
39378         * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): first argument
39379           of rb_protect should take an argument of VALUE.
39381 Sun Dec 14 18:46:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39383         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
39384           AF_INET6 is defined on MinGW.
39386         * lib/ipaddr.rb (AF_INET6): workaround in the environment which does
39387           not support IPv6.
39389 Sat Dec 13 18:55:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39391         * ext/iconv/charset_alias.rb: preserve original order.
39393         * ext/iconv/extconf.rb: remove wrapper file at clean.
39395 Sat Dec 13 18:09:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39397         * eval.c (thread_timer): use timer by sub-thread and nanosleep.
39398           [ruby-talk:87519]
39400         * gc.c (Init_stack): no stack adjustment for THREAD_SAFE.
39402 Sat Dec 13 17:17:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39404         * eval.c (proc_alloc): cache the created object at first time.
39405           [ruby-talk:61288], [ruby-dev:22240]
39407 Sat Dec 13 09:01:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39409         * configure.in: check ucontext.h.
39411         * eval.c: use getcontext/setcontext() instead of setjmp/longjmp()
39412           on ia64 or with native thread enabled.  [ruby-core:01932]
39414 Sat Dec 13 03:09:14 2003  why the lucky stiff  <why@ruby-lang.org>
39416         * lib/yaml/rubytypes.rb: anonymous struct fix. [ruby-core:01946]
39418         * test/yaml/test_yaml.rb: add test.
39420 Fri Dec 12 22:36:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39422         * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell,
39423           "#{aCell}" and so on.
39425         * test/csv/test_csv.rb: add tests.
39427 Fri Dec 12 19:33:06 2003  Minero Aoki  <aamine@loveruby.net>
39429         * lib/fileutils.rb (mkdir): remove trailing `/' from pathes.
39431         * lib/fileutils.rb (rmdir): ditto. [ruby-dev:22238]
39433         * lib/fileutils.rb (rmdir_r): ditto.
39435         * lib/fileutils.rb (fu_copy_dir): check if it is a directory after
39436           mkdir(2).
39438 Fri Dec 12 06:06:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39440         * eval.c (proc_invoke): fix class name in warning message for
39441           define_method.  [ruby-dev:22235]
39443 Thu Dec 11 21:24:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39445         * ext/openssl/ossl_pkcs12.[ch]: new files. add OpenSSL::PKCS12.
39447         * ext/openssl/ossl.[ch]: ditto.
39449         * ext/openssl/MANIFEST: add ossl_pkcs12.[ch].
39451 Thu Dec 11 20:54:28 2003  Minero Aoki  <aamine@loveruby.net>
39453         * lib/fileutils.rb (mkdir_p): remove trailing `/' befere mkdir(2).
39454           mkdir("nonexistdir/") does not work on NetBSD/Alpha 1.6.1.
39456         * lib/fileutils.rb (fu_list): call to_str for all arguments.
39458 Thu Dec 11 20:07:01 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39460         * lib/ftools.rb (makedirs): sync with fileutils.
39462 Thu Dec 11 19:53:03 2003  Minero Aoki  <aamine@loveruby.net>
39464         * lib/fileutils.rb (mkdir_p): catch all SystemCallErrors.
39465           (mkdir("C:\") causes EACCESS on Windows 2000/NTFS)
39467 Thu Dec 11 19:08:02 2003  Minero Aoki  <aamine@loveruby.net>
39469         * lib/fileutils.rb (mkdir_p): check if it is a directory after
39470           mkdir(2) instead of before mkdir(2), to avoid race condition.
39471           [ruby-talk:87730]
39472           Refer: mkinstalldirs sh script, GNU mkdir(1) (coreutils 5.0)
39474 Thu Dec 11 18:49:30 2003  Minero Aoki  <aamine@loveruby.net>
39476         * lib/fileutils.rb: def m( arg ) -> def m(arg).
39478 Thu Dec 11 11:39:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39480         * configure.in (ieeefp.h), numeric.c: needed for finite() on
39481           Solaris.  [ruby-core:01921]
39483         * file.c (rb_stat_inspect): adjust format specifier.
39485         * parse.c (arg_prepend): nodetype() is for debug use.
39487         * ruby.h (ISASCII, etc): cast to int to get rid of warning.
39489         * ruby.h (alloca.h): include even in GCC.  [ruby-core:01925]
39491         * ext/bigdecimal/bigdecimal.c (GetVpValue): adjust format
39492           specifier.
39494         * ext/bigdecimal/bigdecimal.c (BigDecimal_prec, BigDecimal_coerce,
39495           BigDecimal_divmod): use rb_assoc_new() to suppress memory usage.
39497         * ext/bigdecimal/bigdecimal.c (BigDecimal_split): ditto.
39499         * ext/dl/sym.c (rb_dlsym_guardcall): guard itself should be
39500           volatile.
39502         * ext/iconv/iconv.c (iconv_convert): ensure actual parameter with
39503           format specifier.
39505         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): do not
39506           define unless used.
39508         * ext/pty/pty.c (getDevice): get rid of warning.
39510         * ext/socket/socket.c (port_str, sock_s_getaddrinfo,
39511           sock_s_getnameinfo): FIX2INT() now returns long.
39513         * ext/socket/socket.c (init_inetsock_internal): uninitialized
39514           variable.
39516         * ext/syck/rubyext.c (syck_parser_assign_io): add prototype.
39518         * ext/syck/rubyext.c (rb_syck_mktime, yaml_org_handler): use
39519           ISDIGIT() instead of isdigit() to avoid warnings and for
39520           platforms which don't support non-ascii charater.
39522 Wed Dec 10 19:28:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39524         * ext/stringio/stringio.c (strio_read): set EOF flag at short read.
39525           [ruby-dev:22223], [ruby-dev:22224]
39527 Wed Dec 10 18:07:25 2003  Minero Aoki  <aamine@loveruby.net>
39529         * lib/erb.rb: new method ERB#filename(=). [ruby-dev:22208]
39531 Wed Dec 10 17:54:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39533         * ext/stringio/stringio.c (strio_read): do not set EOF flag when
39534           requested length is zero.  [ruby-dev:22214]
39536 Wed Dec 10 17:17:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39538         * io.c (read_all): should return given string even if data read is
39539           empty.  [ruby-dev:22207]
39541 Wed Dec 10 17:16:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39543         * ext/stringio/stringio.c (strio_read): adjust behavior at reading
39544           beyond EOF to IO.  [ruby-dev:22205]
39546         * test/ruby/ut_eof.rb (TestEOF::Seek): test behaviors at reading
39547           beyond EOF.
39549         * test/ruby/test_file.rb, test/stringio/test_stringio.rb: include
39550           TestEOF::Seek test case.
39552 Wed Dec 10 15:01:19 2003  Shugo Maeda  <shugo@ruby-lang.org>
39554         * test/monitor/test_monitor.rb (test_cond): use Queue#deq
39555           instead of sleep.
39557 Wed Dec 10 14:45:39 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39559         * ext/pty/pty.c (HAVE_SYS_IOCTL_H): need to include <sys/ioctl.h>
39560           for TIOCSCTTY on *BSD.  based on gotoyuzo's patch.
39561           (ruby-bugs:PR#1211)
39563         * ext/pty/pty.c (establishShell): should close descriptors if fork
39564           failed.
39566 Wed Dec 10 12:53:05 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39568         * win32/win32.h: define execv() using do_aspawn().
39570         * process.c (proc_exec_v): remove #ifdef's which stopped needing.
39572 Tue Dec  9 23:32:23 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39574         * ext/tk/lib/tk.rb, ext/tk/lib/tkcanvas.rb, ext/tk/lib/tkdialog.rb,
39575           ext/tk/lib/tkentry.rb, ext/tk/lib/tkscrollbox.rb, ext/tk/lib/tktext.rb,
39576           ext/tk/sample/tkalignbox.rb, ext/tk/sample/tkcombobox.rb,
39577           ext/tk/sample/tkmultilistbox.rb, ext/tk/sample/tkoptdb.rb, ext/tk/sample/tktextframe.rb,
39578           ext/tk/sample/demos-en/dialog1.rb, ext/tk/sample/demos-en/dialog2.rb,
39579           ext/tk/sample/demos-jp/dialog1.rb, ext/tk/sample/demos-jp/dialog2.rb:
39580           overrided instance methods, which are private methods on the super
39581           class, are changed to 'private'
39583 Tue Dec  9 19:53:02 2003  akira yamada  <akira@ruby-lang.org>
39585         * lib/uri/generic.rb (URI::Generic#route_from0): make case insensitive
39586           for host-part.
39588         * test/uri/test_generic.rb (test_route): added tests for the above
39589           change.
39591 Tue Dec  9 14:10:48 2003  Tanaka Akira  <akr@m17n.org>
39593         * io.c (rb_io_check_readable): don't call io_seek if EOF flag is set,
39594           to avoid clearing EOF flag.
39595           (rb_io_check_writable): ditto.
39597 Tue Dec  9 02:53:55 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39599         * ext/tk/sample/tkalignbox.rb: new sample script
39601 Tue Dec  9 00:45:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
39603         * lib/test/unit/assertions.rb: renamed #assert_raises to #assert_raise
39604           and made the former call the latter. [ruby-core:01890]
39606         * test/testunit/test_assertions.rb: ditto.
39608 Tue Dec  9 00:07:35 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39610         * lib/soap/rpc/standaloneServer.rb: add 'shutdown' and 'status'
39611           methods as delegates to WEBrick.
39613         * test/soap/calc/{test_calc.rb,test_calc2.rb},
39614           test/soap/helloworld/test_helloworld.rb,
39615           test/wsdl/datetime/test_datetime.rb, test/wsdl/raa/test_raa.rb:
39616           follow the change.
39618 Mon Dec  8 22:48:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39620         * lib/test/unit/autorunner.rb: remove dependency to a particular
39621           runner.  [ruby-core:01901], [ruby-list:38869]
39623         * lib/test/unit/ui/testrunnerutilities.rb: moved output level
39624           constants from Console.
39626         * lib/test/unit/ui/console/testrunner.rb: ditto.
39628         * lib/test/unit/ui/{fox,gtk,gtk2,tk}/testrunner.rb (initialize):
39629           accept output_level.
39631 Mon Dec  8 15:03:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39633         * ext/syck/syck.c (syck_io_str_read): get rid of buffer overflow.
39635 Mon Dec  8 13:02:11 2003  Minero Aoki  <aamine@loveruby.net>
39637         * lib/uri/common.rb: new method URI.regexp. [ruby-dev:22121]
39639         * test/uri/test_common.rb: add test for URI.regexp.
39641 Mon Dec  8 12:44:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39643         * pack.c: define swap16 and swap32 only if they are not
39644           defined. OpenBSD defines these macros. [ruby-dev:22181]
39646 Sun Dec  7 20:54:17 2003  Tanaka Akira  <akr@m17n.org>
39648         * ext/iconv/iconv.c (map_charset): make case sensitive.
39649           ext/iconv/charset_alias.rb (charset_alias): don't ignore
39650           config.charset's information.  sort aliases.
39652 Sat Dec  6 22:58:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39654         * ext/openssl/ossl_ssl.c (ossl_start_ssl): new function to wrap
39655           SSL_connect and SSL_accept; if SSL_connect (or SSL_accept) returned
39656           but not finished the handshake process, we should retry it.
39658         * ext/openssl/ossl_ssl.c (ossl_ssl_connect): call ossl_start_ssl.
39660         * ext/openssl/ossl_ssl.c (ossl_ssl_accept): ditto.
39662         * ext/openssl/ossl_ssl.c (ossl_ssl_read): allow signal traps.
39664 Sat Dec  6 21:45:10 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39666         * io.c (flush_before_seek): flush before seek on any platform.
39668         * configure.in: ditto.
39670 Sat Dec  6 17:23:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39672         * lib/soap/soap.rb(SOAP::Env.getenv): allow upcase environment variable
39673           as well as downcase one.
39675         * lib/soap/netHttpClient.rb(SOAP::NetHttpClient#proxy=): check URI.
39677 Fri Dec  5 23:22:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39679         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises,
39680           Test::Unit::Assertions::assert_nothing_raised): use the last
39681           argument as message unless class object.
39683         * test/testunit/test_assertions.rb (test_assert_raises): test for
39684           multiple exception list.  [ruby-core:01891]
39686         * test/testunit/test_assertions.rb (test_assert_nothing_raised): test
39687           for non-exception classes.
39689 Fri Dec  5 22:23:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39691         * lib/soap/netHttpClient.rb: proxy support did not work.  fixed.
39693         * lib/soap/property.rb: add class methods for loading property from
39694           stream/file/propertyfile.  propertyfile is a file which is located at
39695           somedir in $:.
39697         * lib/soap/soap.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb,
39698           lib/wsdl/importer.rb: load property from propertyfile 'soap/property'
39699           e.g. /usr/local/lib/ruby/site_ruby/1.8/soap/property.
39701         * test/soap/test_property.rb, test/soap/test_streamhandler.rb: new file.
39703 Fri Dec  5 17:26:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39705         * eval.c (rb_exec_end_proc): maintain tmp_end_procs.
39706           [ruby-dev:22154]
39708 Fri Dec  5 13:36:59 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39710         * eval.c (rb_exec_end_proc): should not clear end_procs and
39711           ephemeral_end_procs before execution. [ruby-dev:22144]
39713         * eval.c (rb_obj_extend): call Module#extended hook after
39714           extended_object.  [ruby-list:38866]
39716         * object.c (Init_Object): Module#extended defined.
39718 Fri Dec  5 13:17:30 2003  Tanaka Akira  <akr@m17n.org>
39720         * test/ruby/test_pipe.rb: use IO.pipe instead of IO.popen.
39722 Fri Dec  5 11:54:45 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39724         * ext/stringio/stringio.c (strio_read): follow IO#read.
39726         * test/ruby/ut_eof.rb, test/ruby/test_file.rb, test/ruby/test_pipe.rb,
39727           test/stringio/test_stringio.rb: add EOF test.
39729 Fri Dec  5 02:49:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39731         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
39732           allow multiple exception list.  [ruby-core:01884]
39734         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised):
39735           check whether arguments are subclass of Exception.
39737 Thu Dec  4 23:54:00 2003  Rick Ohnemus  <rick.ohnemus@systemware.com>
39739         * dln.c (aix_loaderror): should not use member named 'errno' which
39740           might be a macro (e.g. on AIX).
39742 Thu Dec  4 23:32:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39744         * io.c (read_all): do not depend on lseek position.
39745           [ruby-dev:22026]
39747 Thu Dec  4 22:37:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39749         * eval.c (rb_eval): preserve $! value when retry happens in the
39750           rescue clause.  [ruby-talk:86697]
39752 Thu Dec  4 21:50:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39754         * lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
39755           should rescue errors and re-raise DRbConnError on write too.
39756           [ruby-dev:22132]
39758 Thu Dec  4 16:41:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39760         * parse.y (exc_list): allow expanding list.  [ruby-dev:22134]
39762 Thu Dec  4 14:09:24 2003  Minero Aoki  <aamine@loveruby.net>
39764         * test/fileutils/test_fileutils.rb (test_cp): test if the error is
39765           kind of SystemCallError.  It is needless details that which errno
39766           is set on each systems.
39768 Thu Dec  4 13:24:13 2003  Shugo Maeda  <shugo@ruby-lang.org>
39770         * lib/monitor.rb: use Object#__send__ instead of Object#send.
39772 Thu Dec  4 13:17:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39774         * lib/soap/streamHandler.rb: support latest released version of
39775           http-access2.
39777 Thu Dec  4 13:04:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39779         * lib/soap/soap.rb: add SOAP::Env module for environment repository
39780           such as HTTP_PROXY.
39782         * lib/soap/property.rb: property implementation.
39784         * lib/soap/streamHandler.rb, lib/soap/wsdlDriver.rb,
39785           lib/soap/rpc/driver.rb: use soap/property.rb.
39787         * lib/wsdl/importer.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb:
39788           use SOAP::Env.
39790         * lib/soap/netHttpClient.rb: add basic_auth, ssl_config, and cookie
39791           management interface, but ignored for now.
39793         * lib/xsd/charset.rb: add XSD::Charset.encoding= interface to set
39794           wiredump charset explicitly.  it was fixed to 'utf-8' when iconv or
39795           uconv module was found.
39797 Thu Dec  4 10:43:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
39799         * ext/dl/sym.c (rb_dlsym_guardcall): __declspec(noinline) is VC7
39800           feature.
39802 Thu Dec  4 10:27:12 2003  Minero Aoki  <aamine@loveruby.net>
39804         * lib/net/http.rb: update hyperlink to the Japanese document.
39806 Thu Dec  4 09:12:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39808         * ext/openssl/ossl_asn1.c (asn1time_to_time): should check that
39809           the underlying value of ASN1_TIME isn't NULL. [ruby-core:01881]
39811 Thu Dec  4 08:29:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39813         * lib/webrick/server.rb (GenericServer#start): should rescue
39814           Exception to avoid unexpected aborting. [ruby-core:01853]
39816         * lib/webrick/server.rb (GenericServer#start_thread): should check
39817           that peeraddr isn't nil before printing.
39819         * lib/webrick/httpresponse.rb (HTTPResponse#start_thread): should
39820           rescue Exception to avoid unexpected aborting of thread.
39822 Thu Dec  4 03:48:59 2003  Tanaka Akira  <akr@m17n.org>
39824         * lib/pathname.rb (Pathname#link, Pathname#symlink): obsoleted.
39825           (Pathname#make_link, Pathname#make_symlink): new method.
39827 Thu Dec  4 01:45:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39829         * io.c (argf_read): should not terminate on empty string; wait
39830           until real EOF.  [ruby-dev:21969]
39832         * io.c (argf_read): should adjust length to read, when length is
39833           specified and read spans command line argument files.
39835 Wed Dec  3 19:38:36 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
39837         * lib/drb/drb.rb: correct fcntl parameter. [ruby-dev:22120]
39839 Wed Dec  3 13:49:07 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39841         * ext/tk/lib/tk.rb: 'format'==>'Kernel.format' (avoid override trouble)
39843         * ext/tk/lib/tkafter.rb: ditto.
39845         * ext/tk/lib/tkcanvas.rb: ditto.
39847         * ext/tk/lib/tkdialog.rb: ditto.
39849         * ext/tk/lib/tktext.rb: ditto.
39851 Wed Dec  3 13:28:13 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39853         * Makefile.in (lex.c): try gperf first, and copy from the source
39854           directory if failed.  [ruby-dev:22123]
39856         * ext/extmk.rb (MTIMES): let makefiles depend to mkmf.rb.
39858         * lib/mkmf.rb (configuration): DLDFLAGS was duplicated.
39860 Tue Dec  2 23:18:12 2003  Minero Aoki  <aamine@loveruby.net>
39862         * lib/net/http.rb: wrote the warning about HTTP_PROXY environment
39863           variable.
39865 Tue Dec  2 21:31:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39867         * bin/testrb: new test runner.  [ruby-core:01845]
39869         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner.run,
39870           Test::Unit::AutoRunner#process_args): take test list to run and
39871           options.
39873         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::RUNNERS,
39874           Test::Unit::AutoRunner#run): should not exit inside a library,
39875           just return the result instead.
39877         * lib/test/unit.rb: ditto.
39879         * test/runner.rb: exit with the test result.
39881 Tue Dec  2 20:18:48 2003  Eric Sunshine  <sunshine@sunshineco.com>
39883         * configure.in (AC_PROG_YACC): AC_DEFINE(OLD_YACC) if Yacc is found
39884           instead of Bison or byacc.
39886         * parse.y: If OLD_YACC is defined, ensure that YYMAXDEPTH is at least
39887           10000 (Bison's default) since some old versions of Yacc define it as
39888           low as 150 by default, which is too low for Ruby to parse some files,
39889           such as date/format.rb.  Among other issues, the parse problem causes
39890           "make test" to fail.
39892 Tue Dec  2 20:03:20 2003  Minero Aoki  <aamine@loveruby.net>
39894         * test/fileutils/test_fileutils.rb: check if Pathnames are usable
39895           for arguments.
39897 Tue Dec  2 04:22:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
39899         * lib/test/unit/assertions.rb: fixed #assert_no_match message.
39901         * test/testunit/test_assertions.rb: ditto.
39903 Tue Dec  2 00:43:00 2003  why the lucky stiff  <why@ruby-lang.org>
39905         * ext/syck/syck.c: string buffering bug.  decrementing by full
39906           max_size now. [ruby-core:01834]
39908 Mon Dec  1 21:33:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39910         * numeric.c (num_sadded): prohibit singleton method definition for
39911           Numerics.  fill yet another gap between Fixnum and Bignum.
39913 Mon Dec  1 17:33:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
39915         * pack.c (htov16): converts endian using swap16. htov32(), hton16,
39916           hton32 as well. [ruby-talk:85377]
39918         * pack.c (swap16): swap 2 bytes no matter how big short is on the
39919           platform.  swap32() is also prepared.
39921         * numeric.c (rb_num2int): returns long to preserve information.
39922           rb_fix2int(), rb_num2uint(), rb_fix2uint() as well.
39923           [ruby-talk:85377]
39925         * numeric.c (rb_num2uint): should not check for value range if the
39926           source value is negative.
39928 Mon Dec  1 17:14:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39930         * sample/optparse/opttest.rb: added.
39932 Mon Dec  1 16:10:52 2003  Dave Thomas  <dave@pragprog.com>
39934         * lib/rdoc/rdoc.rb: (etc) initial merge into main tree.
39936 Mon Dec  1 14:17:49 2003  Minero Aoki  <aamine@loveruby.net>
39938         * lib/fileutils.rb (fu_each_src_dest0): call #to_str to allow
39939           Pathname for arguments. [ruby-core:01795]
39941         * test/fileutils/test_fileutils.rb: does much strict test on
39942           "same" files detecting.
39944 Mon Dec  1 09:28:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
39946         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
39947           (XCFLAGS): re-export $(XCFLAGS).
39949         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
39950           (ARCH_FLAG): export $(ARCH_FLAG) (perhaps empty value).
39952 Mon Dec  1 01:03:27 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39954         * lib/mkmf.rb (TRY_LINK, link_command): added support for DLDFLAGS
39955           and ARCH_FLAG.  [ruby-dev:22085]
39957 Sun Nov 30 20:18:07 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39959         * configure.in: keep ARCH_FLAG separate. export ARCH_FLAG.
39960           [ruby-core:01819]
39962         * Makefile.in: add ARCH_FLAG to CFLAGS.
39964         * Makefile.in: add @CPPFLAGS@ to CPPFLAGS.
39966         * lib/mkmf.rb (link_command, cc_command): use ARCH_FLAG.
39968         * lib/mkmf.rb (configuration): add ARCH_FLAG to DLDFLAGS.
39970         * Makefile.in: add ARCH_FLAG to DLDFLAGS.
39972         * configure.in: should put getcwd in AC_CHECK_FUNCS, not
39973           AC_REPLACE_FUNCS.  [ruby-core:01826]
39975 Sun Nov 30 18:22:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
39977         * configure.in: do not override CCDLDFLAGS, LDFLAGS, XLDFLAGS,
39978           DLDFLAGS and LDSHARED.
39980         * configure.in: XCFLAGS for compiling ruby itself.  ARCH_FLAG is
39981           reflected in CFLAGS.
39983         * lib/mkmf.rb: ditto.  do not import XCFLAGS from config.status.
39985 Sun Nov 30 17:37:36 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39987         * ext/tk/lib/tk.rb: bug fix [ruby-talk:86746]
39989 Sun Nov 30 13:02:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
39991         * lib/soap/encodingstyle/soapHandler.rb: refactoring - Simplifying
39992           Conditional Expressions.
39994         * lib/wsdl/soap/definitions.rb: refactoring - Move Method.
39996         * test/xsd/{test_noencoding.rb,noencoding.xml}: new files.  test for
39997           encoding unspecified XML file parsing.
39999         * test/wsdl/{test_fault.rb,map,datetime}: new files.  test of
40000           SOAPFault, dateTime and Apache's Map.
40002 Sun Nov 30 09:35:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40004         * string.c (rb_str_update): get rid of SEGV at just allocated String.
40005           [ruby-core:01812]
40007 Fri Nov 28 23:19:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40009         * gc.c (gc_mark): explicitly check mark recursion levels, instead
40010           of unreliable stack length.
40012 Fri Nov 28 22:49:56 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
40014         * lib/rinda/rinda.rb: fix TupleSpaceProxy#read, read_all.
40016 Fri Nov 28 21:44:40 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40018         * test/fileutils/test_fileutils.rb (test_ln_s): should be a file, not
40019           a directory for FreeBSD.
40021 Fri Nov 28 19:37:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40023         * hash.c (env_has_value, env_index): must match exactly.
40025         * test/ruby/test_env.rb (test_has_value, test_index): condition for
40026           aboves.
40028 Fri Nov 28 17:59:20 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40030         * test/ruby/test_env.rb: add tests for ENV.
40032 Fri Nov 28 17:47:46 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
40034         * lib/drb/drb.rb (DRbMessage#load): rescue Errno::* and raise
40035           DRbConnError.
40037 Fri Nov 28 15:41:15 2003  Tanaka Akira  <akr@m17n.org>
40039         * lib/pathname.rb (Pathname#realpath): obsolete the force_absolute
40040           argument.
40042 Fri Nov 28 14:41:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40044         * lib/soap/streamHandler.rb: drop unused http parameters.
40046         * lib/soap/encodingstyle/soapHandler.rb, lib/soap/mapping/factory.rb,
40047           lib/soap/mapping/mapping.rb, lib/soap/mapping/registry.rb,
40048           lib/wsdl/soap/complexType.rb: ApacheSOAP's map support was broken
40049           under WSDL dynanic client environment.  fixed.
40051         * test/wsdl/raa/*: add tests.
40053         * lib/xsd/datatypes.rb: dateTime precision bug fix (at least, I hope.)
40054           bug of soap4r.  XSDDateTimeImple.to_time passed a Float to
40055           Time.local/Time.gm as an usec, and NUM2LONG(rb_num2long for Float)
40056           causes rounding error.
40058         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: add tests.
40060 Fri Nov 28 04:15:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40062         * eval.c (method_arity): used wrong Proc object.  [ruby-talk:86504]
40064 Fri Nov 28 00:47:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40066         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): treat true as
40067           success, false as failure.  [ruby-dev:22067]
40069         * eval.c (rb_f_abort, rb_thread_switch), process.c (rb_f_system): use
40070           ANSI macro instead of hard coded value.
40072         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): use VALUEs not but
40073           TYPEs.
40075 Thu Nov 27 22:05:48 2003  Akinori MUSHA  <knu@iDaemons.org>
40077         * eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
40078           process to get the base address for the RSE backing store, so
40079           hardcode it for the moment.
40080           [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>]
40082 Thu Nov 27 17:36:42 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40084         * ext/tk/lib/tkafter.rb: bug fix on TkTimer#cancel_on_exception=(mode).
40085           TkTimer#wait recieves the exception of the callback.
40086           The exception is kept on @return_value.
40088 Thu Nov 27 16:58:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40090         * win32/win32.c (rb_w32_stat): remove _fullpath() for NUL: device.
40092 Wed Nov 26 15:38:47 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40094         * test/fileutils/test_fileutils.rb (test_ln_s): should take the
40095           existing symbolic link for OpenBSD.
40097 Wed Nov 26 04:48:42 2003  why the lucky stiff  <why@ruby-lang.org>
40099         * ext/syck/token.c: removed YYTOKTMP references which
40100           were causing buffer overflows on large block scalars,
40101           comments, quoted scalars and plain scalars.
40103         * ext/syck/rubyext.c: dynamic changing of buffer size.
40105         * ext/syck/syck.h: default buffer size of 4k.
40107 Wed Nov 26 00:55:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40109         * lib/webrick/httpresponse.rb: add HTTPResponse#keep_alive=.
40111         * lib/webrick/httpserver.rb (HTTPServer#run): should pass the
40112           request's keep_alive flag to the response.
40114 Tue Nov 25 21:41:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40116         * defines.h (ENV_IGNORECASE): should define when DOSISH without
40117           human68k. [ruby-dev:22047]
40119         * hash.c (env_has_value, env_index): don't ignore case of value.
40120           [ruby-dev:22048]
40122 Tue Nov 25 21:39:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40124         * file.c (path_check_1): honor sticky bits always.
40125           [ruby-talk:86273]
40127 Tue Nov 25 20:02:14 2003  Minero Aoki  <aamine@loveruby.net>
40129         * test/fileutils/test_fileutils.rb: do test in more deep
40130           directory.
40132         * test/fileutils/test_nowrite.rb: ditto.
40134 Tue Nov 25 19:04:23 2003  Tanaka Akira  <akr@m17n.org>
40136         * lib/open-uri.rb (URI::Generic#find_proxy): ENV case sensitivity test
40137           refined.
40139 Tue Nov 25 18:13:30 2003  Minero Aoki  <aamine@loveruby.net>
40141         * test/fileutils/test_fileutils.rb: chdir Dir.tmpdir before each
40142           test. [ruby-dev:22045]
40144         * test/fileutils/test_nowrite.rb: ditto.
40146 Tue Nov 25 17:52:11 2003  Tanaka Akira  <akr@m17n.org>
40148         * lib/open-uri.rb (URI::Generic#find_proxy): use http_proxy under CGI
40149           if the environment variable is case sensitive.
40151 Tue Nov 25 16:41:33 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40153         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb:
40154           removed.  this test requires extra libraries in soap4r/1.5.*.
40156 Tue Nov 25 16:24:42 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40158         * lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license;
40159           GPL2 -> Ruby's.
40161         * lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb,
40162           lib/soap/streamHandler.rb: add interface to streamhandler.
40164         * lib/soap/marshal.rb: raise error if parse fails.
40166         * lib/soap/netHttpClient.rb: add https support.  Patched by
40167           Oliver M. Bolzer.
40169         * lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
40171         * lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb,
40172           lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce
40173           using charset for parsing response from buggy server.
40175         * lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half
40176           typed multi-ref array.
40178         * lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map
40179           SOAPStruct which has multi-accessors which name are the same, to an
40180           array.
40182         * lib/soap/rpc/element.rb: fixed illegal parameter order.
40184         * lib/soap/rpc/element.rb: element name of response message could have
40185           the name other than 'return'.
40187         * lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb,
40188           lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb,
40189           lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural
40190           fault definition in a operation. [ruby-talk:84948]
40192         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add
40193           test for above fix.
40195         * lib/wsdl/soap/complexType.rb: support WSDL array definition with
40196           maxOccures="unbound".
40198         * lib/xsd/charset.rb: use cp932 under emx.  Patched by
40199           Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
40201         * lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means
40202           'follow encoding declaration in XML'.
40204         * sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb,
40205           sample/wsdl/googleSearch/sampleClient.rb,
40206           sample/wsdl/googleSearch/wsdlDriver.rb,
40207           test/wsdl/test_emptycomplextype.rb,
40208           test/wsdl/marshal/test_wsdlmarshal.rb,
40209           test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read }
40210           instead of File.open(...).read. [ruby-dev:21964]
40212         * test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb:
40213           simplify the test case.
40215         * test/wsdl/axisArray/*: add tests for axis's array encoding.
40217 Tue Nov 25 16:15:29 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40219         * ruby.h: don't treat Cygwin as Windows.
40221 Tue Nov 25 15:18:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40223         * configure.in: change default value of --enable-pthread (default: no)
40225 Tue Nov 25 07:31:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40227         * parse.y (primary): allow newlines just before right argument
40228           parenthesis.  (ruby-bugs:PR#1221)
40230 Mon Nov 24 23:32:06 2003  Tanaka Akira  <akr@m17n.org>
40232         * lib/open-uri.rb (OpenURI.open_loop, URI::HTTP#proxy_open): use
40233           catch/throw for redirection instead of exception.
40234           (OpenURI.open_loop, OpenURI.redirectable?): restrict redirection.
40236 Mon Nov 24 19:59:48 2003  Tanaka Akira  <akr@m17n.org>
40238         * lib/open-uri.rb (URI::Generic#find_proxy): use CGI_HTTP_PROXY
40239           instead of HTTP_PROXY in the CGI environment.
40241 Mon Nov 24 19:32:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40243         * ext/etc/extconf.rb: check for pw_passwd in struct passwd and
40244           gr_passwd in struct group for DJGPP.
40246         * ext/etc/etc.c: ditto.
40248         * ext/Setup.dj: support for curses, etc, zlib.
40250 Mon Nov 24 17:00:00 2003  Tanaka Akira  <akr@m17n.org>
40252         * lib/open-uri.rb: validate option names.
40253           :content_length_proc and :progress_proc option implemented.
40255 Mon Nov 24 14:53:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40257         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
40258           (XCFLAGS): output empty value instead of `-DRUBY_EXPORT'.
40260 Sat Nov 22 23:09:45 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40262         * configure.in: set enable_pthread to no on MinGW.
40264 Sat Nov 22 22:56:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40266         * configure.in: add --enable-pthread option (default: yes)
40268 Sat Nov 22 22:48:46 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40270         * ext/tk/lib/tk.rb: add Tk.grab_release and fix bug of TkComposite
40272         * ext/tk/lib/tkafter.rb: bug fix of TkAfter#start
40274         * ext/tk/sample/tkcombobox.rb: new sample script
40276         * ext/tcltklib/tcltklib.c: add native thread check
40278 Sat Nov 22 18:49:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40280         * ext/curses/curses.c (window_nodelay): nodelay() of NetBSD's
40281           libcruses returns no value, just like keypad().
40283 Sat Nov 22 17:36:36 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40285         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
40286           (HAVE_GETCWD): output to config.h.
40288         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
40289           (XCFLAGS): output to config.status.
40291 Sat Nov 22 13:10:10 2003  Minero Aoki  <aamine@loveruby.net>
40293         * lib/fileutils.rb (have_st_ino?): djgpp has valid st_ino.
40295 Sat Nov 22 11:28:48 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40297         * gc.c (Init_stack): stack region is far smaller than usual if
40298           pthread is used.
40300 Sat Nov 22 07:30:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
40302         * lib/test/unit/util/backtracefilter.rb: fixed a bug that occurred
40303           when an exception had no backtrace.
40305         * test/testunit/util/test_backtracefilter.rb: ditto.
40307 Fri Nov 21 16:44:18 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40309         * ext/tk/lib/tkentry.rb: fix the encoding trouble of percent
40310           substitutions on validatecommand option of TkEntry widget
40312         * ext/tk/lib/tk.rb: fix bug on {pack|grid}_propagate() method
40314 Fri Nov 21 16:12:11 2003  Akinori MUSHA  <knu@iDaemons.org>
40316         * ruby.1: Fix markups and grammar.
40318 Fri Nov 21 14:49:42 2003  Minero Aoki  <aamine@loveruby.net>
40320         * ruby.1: wrote about ruby related environment variables.
40322 Fri Nov 21 12:28:03 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40324         * marshal.c (w_extended): singleton methods should not be checked
40325           when dumping via marshal_dump() or _dump(). [ruby-talk:85909]
40327 Fri Nov 21 01:40:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40329         * configure.in: check <pthread.h>
40331         * ruby.h: include pthread.h if existence.
40332           define is_ruby_native() macro when not HAVE_NATIVETHREAD
40334         * eval.c: undef is_ruby_native() function when not HAVE_NATIVETHREAD
40336 Fri Nov 21 00:43:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
40338         * lib/test/unit/assertions.rb: use #__send__ instead of #send.
40340         * lib/test/unit/testcase.rb: ditto.
40342 Thu Nov 20 19:19:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40344         * configure.in: don't find the Cygwin's pthread library on MinGW.
40346 Thu Nov 20 19:15:50 2003  Minero Aoki  <aamine@loveruby.net>
40348         * lib/fileutils.rb (have_st_ino?): emx (OS/2 with EMX) does not
40349           have st_ino (always 0). [ruby-dev:21972]
40351         * lib/fileutils.rb (rename_cannot_overwrite_file?): emx does not
40352           allow overwriting files by rename(2).
40354         * test/fileutils/test_fileutils.rb: windows? ->
40355           have_drive_letter?, have_file_perm?
40357 Thu Nov 20 17:50:58 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40359         * ext/tk/sample/tkballoonhelp.rb: new sample script
40361         * ext/tk/sample/tkmultilistbox.rb: ditto
40363         * ext/tk/sample/tktextframe.rb: ditto
40365 Thu Nov 20 13:37:34 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40367         * ruby.h: define is_ruby_native_thread() for no native thread
40368           environment
40370         * eval.c: ditto
40372 Thu Nov 20 12:42:47 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40374         * configure.in: always check existence of the pthread library
40376         * ruby.h: define macros for ruby's native thread check
40378         * eval.c: add ruby's native thread check
40380         * gc.c: ditto
40382 Wed Nov 19 14:45:18 2003  Minero Aoki  <aamine@loveruby.net>
40384         * lib/net/http.rb (to_ary): print more friendly warning message.
40386 Wed Nov 19 14:32:08 2003  Minero Aoki  <aamine@loveruby.net>
40388         * lib/fileutils.rb (fu_same?): add djgpp and wince.
40390         * lib/fileutils.rb (cannot_overwrite_file?): add wince.
40392 Wed Nov 19 11:04:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40394         * lib/fileutils.rb (cannot_overwrite_file?, have_st_ino?): bccwin32
40395           is same as mswin32.
40397 Wed Nov 19 07:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
40399         * lib/test/unit.rb: do not run tests if $! is set.
40401         * lib/test/unit/assertionfailederror.rb: extend StandardError instead
40402           Exception (irb catches the former but not the latter).
40404 Tue Nov 18 23:31:36 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40406         * missing/memmove.c (memmove): take void *, not char *.
40408         * missing.h (memmove): ditto.
40410         * missing.h (strchr, strrchr): return char *, not int.
40412 Tue Nov 18 22:20:10 2003  Minero Aoki  <aamine@loveruby.net>
40414         * lib/fileutils.rb (fu_same?): temporal fix for windows.
40416 Tue Nov 18 19:05:04 2003  Minero Aoki  <aamine@loveruby.net>
40418         * lib/fileutils.rb (fu_same?): check by inode instead of path
40419           name, to detect two hard links pointing to the same content.
40421         * test/fileutils.rb: did not create correctly looped symlinks.
40423 Tue Nov 18 18:23:05 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40425         * ext/stringio/stringio.c (strio_read): behave as IO at empty string.
40426           [ruby-dev:21939], [ruby-dev:21941]
40428         * ext/stringio/stringio.c (strio_getc, strio_getline): set EOF flag.
40430         * ext/stringio/stringio.c (strio_rewind, strio_seek, strio_ungetc):
40431           clear EOF flag.
40433         * test/stringio/test_stringio.rb: imported from [ruby-dev:21941].
40435 Tue Nov 18 14:06:35 2003  Minero Aoki  <aamine@loveruby.net>
40437         * lib/fileutils.rb (fu_each_src_dest): raise if src==dest.
40438           [ruby-talk:85344] [ruby-core:01699]
40440         * lib/fileutils.rb: use Object#is_a? instead of Class#=== to allow
40441           e.g. remote objects for receivers.
40443         * lib/fileutils.rb: FileTest -> File.
40445         * lib/fileutils.rb: put parentheses for arguments of File.xxxx?
40447         * test/fileutils/test_fileutils.rb (test_cp): test "cp a a".
40449         * test/fileutils/test_fileutils.rb (test_mv): test "mv a a".
40451         * test/fileutils/test_fileutils.rb (test_ln): test "ln a a".
40453         * test/fileutils/test_fileutils.rb (test_ln_s): test "ln_s a a".
40455         * test/fileutils/test_fileutils.rb (test_install): test "install a a".
40457         * test/fileutils/fileasserts.rb: new method assert_symlink.
40459         * test/fileutils/fileasserts.rb: assert_is_directory -> assert_directory.
40461 Mon Nov 17 19:38:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40463         * file.c (getcwdofdrv): avoid using getcwd() directly, use
40464           my_getcwd() instead.
40466         * merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
40467           <sunshine@sunshineco.com>.  [ruby-core:01596]
40469 Mon Nov 17 10:50:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40471         * lib/optparse.rb (OptionParser::Completion::complete): allow least
40472           common completion for three or more candidates.
40474 Mon Nov 17 09:41:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40476         * lib/test/unit/ui/tk/testrunner.rb,
40477           lib/test/unit/ui/gtk/testrunner.rb:
40478           run GUI main loop in sub thread.
40480         * lib/test/unit/ui/gtk2/testrunner.rb: imported from rough.
40482         * lib/test/unit/autorunner.rb (keyword_display): sort keywords.
40484 Sun Nov 16 18:10:57 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40486         * eval.c (rb_eval): iterator should return value from next inside
40487           begin/rescue/end.  (ruby-bugs:PR#1218)
40489 Sun Nov 16 13:26:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40491         * marshal.c (w_object): LINK check earlier than anything else,
40492           i.e. do not dump TYPE_IVAR for already dumped objects.
40493           (ruby-bugs:PR#1220)
40495         * eval.c (rb_eval): call "inherited" only when a new class is
40496           generated; not on reopening.
40498         * eval.c (eval): prepend error position in evaluating string to
40499           "mesg" attribute string only when it's available and is a
40500           string.
40502 Sun Nov 16 12:16:10 2003  Minero Aoki  <aamine@loveruby.net>
40504         * lib/net/protocol.rb: logging response body. [experimental]
40505           [ruby-list:38800]
40507 Sun Nov 16 10:49:38 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
40509         * lib/thread.rb (Thread.exclusive): wrap method definition in
40510           class Thread to enable rdoc to process.
40512 Sun Nov 16 09:45:23 2003  Minero Aoki  <aamine@loveruby.net>
40514         * lib/net/http.rb (set_debug_output): warn if method is called
40515           after #start.  [ruby-dev:38798]
40517 Sun Nov 16 04:41:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40519         * eval.c (eval): do not re-raise exception to avoid unnecessary
40520           exception copying, instead modify exception and internal
40521           information to adjust eval().
40523         * eval.c (backtrace): can return the current frame information
40524           only if lev < -1.
40526 Sat Nov 15 22:16:42 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40528         * /ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext):
40529           refine error message.
40531 Sat Nov 15 10:05:40 2003  Tanaka Akira  <akr@m17n.org>
40533         * lib/open-uri.rb (OpenURI.open_loop, OpenURI::HTTP#proxy_open):
40534           refactored to support options.
40535           (Buffer): maintain size by this class.
40537 Sat Nov 15 07:40:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40539         * eval.c (rb_method_node): new API to retrieve method body.
40541 Fri Nov 14 13:21:30 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40543         * ext/tcltklib/tcltklib.c: fix (en-bugged at 2003/11/07)
40545         * ext/tk/lib/tkdialog.rb: TkDialog.new accepts a parent widget
40546           argument [ruby-talk:85066]
40548 Thu Nov 13 20:53:35 2003  Tanaka Akira  <akr@m17n.org>
40550         * lib/open-uri.rb (Kernel[#.]open): hard coded URI schemes removed.
40551           [ruby-ext:02251]
40553 Thu Nov 13 19:17:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40555         * lib/test/unit/ui/tk/testrunner.rb: use grid and panedwindow
40556           (if available)
40558 Thu Nov 13 17:56:41 2003  Tanaka Akira  <akr@m17n.org>
40560         * lib/open-uri.rb (OpenURI.open_uri): use File::RDONLY.
40561           reported by Take_tk <ggb03124@nifty.ne.jp>.
40562           [ruby-ext:02245]
40564 Thu Nov 13 16:45:53 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40566         * ext/openssl/ossl_x509req.c (ossl_x509req_to_der): add function for
40567           X509::Request#to_der.
40569 Thu Nov 13 11:31:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40571         * lib/optparse.rb (OptionParser::Completion#complete): prior shorter
40572           name to containing longer name.
40574 Thu Nov 13 06:08:54 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40576         * ext/tk/lib/tk.rb: stop freezing some classes
40578         * ext/tk/lib/multi-tk.rb: ditto.
40580 Wed Nov 12 17:32:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40582         * lib/test/unit/assertions.rb (assert_throws, assert_nothing_thrown):
40583           uncaught throw in sub thread raises ThreadError.
40585         * lib/test/unit/ui/tk/testrunner.rb (setup_ui): "expand" is not
40586           necessary.
40588 Wed Nov 12 14:09:43 2003  Shugo Maeda  <shugo@ruby-lang.org>
40590         * test/monitor/test_monitor.rb: fix the timing problem by Queue.
40592 Wed Nov 12 12:59:44 2003  Shugo Maeda  <shugo@ruby-lang.org>
40594         * test/monitor/test_monitor.rb: added.
40596 Wed Nov 12 10:14:28 2003  Shugo Maeda  <shugo@ruby-lang.org>
40598         * lib/monitor.rb: refactored. Thanks, Gennady Bystritsky.
40600 Wed Nov 12 06:11:39 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40602         * ext/openssl/ossl.c (ossl_x509_sk2ary, ossl_x509crl_sk2ary):
40603           add functions to convert STACK into Array.
40605         * ext/openssl/ossl.h: add prototypes.
40607         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_set_certificates,
40608           ossl_pkcs7_get_certificates, ossl_pkcs7_get_crls,
40609           ossl_pkcs7_set_crls): add functions for PKCS7#certificates=
40610           PKCS7#certificates, PKCS7#crls= and PKCS7#crls.
40612 Wed Nov 12 00:47:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
40614         * lib/test/unit/ui/testrunnermediator.rb: should require 'test/unit'.
40616 Tue Nov 11 23:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
40618         * lib/test/unit/ui/gtk/testrunner.rb: added a rescue clause to handle
40619           the case when the requested font is not available.
40621 Tue Nov 11 22:44:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40623         * io.c (appendline): file may not end with newline.  a bug if
40624           READ_DATA_PENDING_PTR is defined. [ruby-talk:84925]
40626 Tue Nov 11 10:42:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40628         * ext/tk/lib/tk.rb: raise an exception when creating TkWindow
40629           object, because TkWindow class is an abstract class.
40631 Tue Nov 11 03:30:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40633         * lib/ext/openssl/ossl_conf.c (ossl_config_get_value): return nil
40634           if the specified value doesn't exist.
40636         * lib/ext/openssl/ossl_conf.c (ossl_config_get_section): return
40637           a empty hash if the specified section doesn't exist.
40639 Mon Nov 10 11:40:29 2003  Shugo Maeda  <shugo@ruby-lang.org>
40641         * lib/monitor.rb (wait): return true on signal/broadcastfalse and
40642           false on timeout. Thanks Gennady Bystritsky.
40644 Mon Nov 10 00:07:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40646         * parse.y (primary): primary_value may be 0 when syntax error.
40647           [ruby-talk:84893]
40649 Sun Nov  9 02:05:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
40651         * lib/test/unit/assertions.rb: un-deprecated #assert_not_nil to
40652           maintain symmetry with #assert_nil. Also added better output for
40653           #assert_kind_of.
40655         * test/testunit/tc_assertions.rb: ditto.
40657 Sat Nov  8 18:50:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40659         * test/wsdl/raa/*: add new testcase for WSDL loading, parsing and
40660           reading.
40662         * test/soap/marshal/*: backport from soap4r/1.5.1.  all differences are
40663           for ruby/1.6.
40665         * lib/soap/*: backport from soap4r/1.5.1.  all differences are for
40666           ruby/1.6.
40668         * lib/wsdl/data.rb, lib/wsdl/xmlSchema/data.rb: move definition of
40669           ArrayTypeAttrName from ::WSDL::XMLSchema::* to ::WSDL::*.
40670           [ruby-talk:84813]
40672         * lib/wsdl/soap/definitions.rb: element name typo in custom exception
40673           struct definition which is needed for wsdlDriver; camelCase ->
40674           underscore_name.
40676 Sat Nov  8 13:49:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40678         * configure.in: improvement of pthread check
40680 Sat Nov  8 13:28:46 2003  Takaaki Tateishi  <ttate@ttsky.net>
40682         * ext/dl/sym.c: Add DL.win32_last_error and DL.last_error.
40683           Thanks, Kaoru Shirai.
40685 Sat Nov  8 06:19:38 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40687         * ext/tcltklib/tcltklib.c: To fix 'pthread-enabled Tcl/Tk' problem,
40688           TclTkIp#_eval calls Tcl_Eval() on the mainloop thread only
40689           (queueing a handler to the EventQueue).
40691         * ext/tcltklib/README.1st: edit the description of '--with-pthread-ext'
40693 Fri Nov  7 23:23:04 2003  Tanaka Akira  <akr@m17n.org>
40695         * lib/pathname.rb (Pathname#+): if self or the argument is `.', return
40696           another.
40697           (Pathname#parent): if self is `.', return `..'.
40698           (Pathname#children): if self is `.', don't prepend self for a
40699           pathname in a result.
40700           (Pathname#join): re-implemented using Pathname#+.
40701           (Pathname#find): if self is `.', remove `./' prefix of yielding
40702           pathname.
40704 Fri Nov  7 10:23:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40706         * ext/socket/socket.c (make_hostent): get rid of SEGV on aliases
40707           lookup failure.  (ruby-bugs:PR#1215)
40709 Fri Nov  7 04:08:05 2003  UENO Katsuhiro  <katsu@blue.sky.or.jp>
40711         * ext/zlib/zlib.c (Init_zlib): define Zlib::GzipReader#each_line as
40712           an alias of Zlib::GzipReader#each.
40714 Fri Nov  7 01:03:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40716         * eval.c (rb_load): save and restore rb_prohibit_interrupt.
40717           [ruby-dev:21857]
40719 Thu Nov  6 18:05:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40721         * io.c (rb_io_inspect): show the path also at a closed file.
40722           [ruby-dev:21851]
40724 Thu Nov  6 11:42:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40726         * ext/stringio/stringio.c (strio_set_string, strio_reopen): check
40727           tainted.
40729         * ext/stringio/stringio.c (strio_copy, strio_ungetc, strio_write,
40730           strio_putc): add infection.
40732         * ext/stringio/stringio.c (strio_path): just nil.  [ruby-dev:21846]
40734         * ruby.c (proc_options): reserve searched script path in the
40735           source file name table.  [ruby-list:38765]
40737         * lib/optparse.rb (OptionParser::Completion#complete): default not to
40738           ignore case on completion.  [ruby-talk:84726]
40740         * win32/win32.c (make_cmdvector): process backslashes even if a quote
40741           is not enclosed.
40743 Wed Nov  5 23:49:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40745         * sample/openssl/gen_csr.rb: there (at least) is a CA which does not
40746           accept DN in UTF8STRING format.  it's a sample.
40748 Wed Nov  5 22:55:16 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40750         * configure.in, eval.c, signal.c: : add '--with-pthread-ext'
40751           option to fix the pthread trouble on 'tcltklib'
40753         * ext/tcltklib/README.1st: add the description of '--with-pthread-ext'
40755         * ext/tk/lib/tktext.rb: add TkText#text_copy, text_cut, text_paste
40756           to support Tcl/Tk8.4's tk_textCopy, tk_textCut, tk_textPaste
40758         * ext/tk/lib/tk.rb: add TkMenu#set_focus support Tcl/Tk's
40759           tk_menuSetFocus
40761 Wed Nov  5 17:33:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40763         * eval.c (rb_load): allow interrupt during loaded program
40764           evaluation.  [ruby-dev:21834]
40766         * hash.c (rb_hash_fetch): always warn if default argument and a
40767           block are supplied at the same time. [ruby-dev:21842]
40769         * hash.c (env_fetch): ditto.
40771         * array.c (rb_ary_fetch): ditto.
40773 Wed Nov  5 19:08:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40775         * lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
40776           do not remove next argument if empty value is placed.
40778         * test/optparse: added.
40780 Wed Nov  5 17:05:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40782         * lib/test/unit/ui/gtk/testrunner.rb: typo.
40784 Wed Nov  5 11:13:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40786         * string.c: add #include "version.h". this file still depends on it.
40788         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
40789           wince/Makefile.sub: add version.h dependency to string.c.
40791 Wed Nov  5 09:14:23 2003  Shugo Maeda  <shugo@ruby-lang.org>
40793         * lib/monitor.rb: revert to the previous revision.
40795 Wed Nov  5 08:39:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40797         * lib/webrick/https.rb (HTTPRequest#parse): set @client_cert_chain.
40799         * lib/webrick/https.rb (HTTPRequest#meta_vars): create
40800           SSL_CLIENT_CERT_CHAIN_n from @client_cert_chain.
40802         * ext/openssl/ossl_ssl.c (ossl_ssl_get_peer_cert_chain): return nil
40803           if no cert-chain was given.
40805 Tue Nov  4 23:44:48 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40807         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
40808           remove needless version.h dependency.
40810 Tue Nov  4 23:38:43 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40812         * class.c, hash.c, string.c: remove #include "version.h".
40814         * Makefile.in: remove needless version.h dependency.
40816 Tue Nov  4 06:54:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40818         * io.c (read_all): fptr->f may be NULL, if IO is closed in the
40819           signal handler.
40821         * io.c (io_read): ditto.
40823         * string.c (get_pat): remove 1.8.0 warning code.
40825         * string.c (rb_str_match): extend warning until 1.8.2.
40827         * string.c (rb_str_match2): ditto.
40829         * class.c (class_instance_method_list): remove 1.8.0 warnings.
40830           method_list now recurs.  [ruby-dev:21816]
40832         * class.c (rb_obj_singleton_methods): ditto.
40834         * array.c (rb_ary_select): remove select with block.
40835           [ruby-dev:21824]
40837         * hash.c (rb_hash_select): ditto.
40839         * hash.c (env_select): ditto.
40841         * re.c (match_select): ditto.
40843         * struct.c (rb_struct_select): ditto.
40845 Mon Nov  3 22:53:21 2003  Minero Aoki  <aamine@loveruby.net>
40847         * lib/racc/parser.rb: synchronize with Racc 1.4.4.
40849         * ext/racc/cparse/cparse.c: ditto.
40851         * ext/racc/cparse/cparse.c (parse_main): should abort when
40852           the length of LR state stack <=1, not ==0.
40854 Mon Nov  3 08:50:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40856         * process.c (check_uid_switch): remove duplicated error messages.
40858         * process.c (check_gid_switch): ditto.
40860 Sun Nov  2 02:28:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40862         * lib/webrick/ssl.rb: new option :SSLExtraChainCert.
40864 Sun Nov  2 01:02:04 2003  Akinori MUSHA  <knu@iDaemons.org>
40866         * string.c (rb_str_hash): Update the HASH_PERL alternative hash
40867           algorithm in sync with Perl 5.8.
40869         * st.c (strhash): Ditto.
40871 Sat Nov  1 18:21:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40873         * ext/openssl/ossl_ssl.c (ossl_ssl_peer_cert_chain): add new method
40874           SSLSocket#peer_cert_chain.
40876         * ext/openssl/ossl_x509req.c (GetX509ReqPtr): new function
40877           which returns underlying X509_REQ.
40879         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_issuer_cert,
40880           ossl_x509extfactory_set_subject_cert, ossl_x509extfactory_set_crl,
40881           ossl_x509extfactory_set_subject_req, ossl_x509extfactory_set_config):
40882           use underlying C struct without duplication not to leak momory.
40884 Sat Nov  1 01:49:03 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40886         * lib/soap/mapping/factory.rb: mark marshalled basetype objects when
40887           @allow_original_mapping is true.  multi-referencing basetype node is
40888           prohibited in SOAP/1.1 encoding but soap4r's original ruby object
40889           mapping requires basetype to be marked to detect self referencing
40890           loop.  e.g. o = 1; o.instance_eval { @iv = o }  soap4r's original
40891           mapping is only used through soap/marshal API.
40893         * test/soap/marshal/test_marshal.rb: add tests for self referencing
40894           immutable objects.
40896         * test/soap/calc/test_calc_cgi.rb: fix test name.
40898 Fri Oct 31 22:26:29 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
40900         * wince/string_wce.c (strrchr): should decrement pointer.
40902         * wince/Makefile.sub: correct a range of isdigit().
40904 Fri Oct 31 12:55:24 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
40906         * configure.in, lib/mkmf.rb: add RPATHFLAG for NetBSD.
40907           [ruby-dev:21791]
40909         * bcc32/Makefile.sub, win32/Makefile.sub, win32/Makefile.sub: ditto.
40911 Fri Oct 31 01:38:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40913         * wince/Makefile.sub, win32/Makefile.sub (.y.c): allow white spaces
40914           at the beginning of line to remove by sed. (ruby-bugs-ja:PR#580)
40916 Fri Oct 31 01:02:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40918         * compar.c (cmp_equal): protect exceptions from <=> comparison
40919           again.  returns nil if any exception or error happened during
40920           comparison.
40922         * eval.c (search_required): should update *featurep when DLEXT2 is
40923           defined. (ruby-bugs-ja:PR#581)
40925 Thu Oct 30 23:41:04 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
40927         * lib/drb/drb.rb: add DRbArray
40929         * lib/drb/invokemethod.rb: fix Hash#each problem. [ruby-dev:21773]
40931         * lib/drb/unix.rb: add LoadError. [ruby-dev:21743]
40933 Thu Oct 30 23:19:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40935         * lib/soap/generator.rb: better XML pretty printing.
40937         * lib/soap/encodingstyle/soapHandler.rb: remove unnecessary namespace
40938           assignment in the element which has "encodingStyle" attribute, and
40939           add necessary namespace assignment for "arrayType" attribute.
40941         * test/soap/calc/test_calc_cgi.rb: take over $DEBUG to ruby process
40942           through CGI.
40944 Thu Oct 30 22:59:39 2003  why the lucky stiff  <why@ruby-lang.org>
40946         * ext/syck/yaml2byte.c: HASH const too long.  Thanks, matz.
40948 Thu Oct 30 19:13:53 2003  Akinori MUSHA  <knu@iDaemons.org>
40950         * ext/syck/MANIFEST: Add yamlbyte.h.
40952 Thu Oct 30 14:25:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40954         * io.c (READ_DATA_BUFFERED): new macro to detect whether stdio
40955           buffer filled.
40957         * io.c (rb_io_fptr_cleanup): move path deallocation to
40958           rb_io_fptr_finalize (finalizer called by GC).
40960 Thu Oct 30 13:23:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40962         * parse.y (logop): left may be NULL. [ruby-talk:84539]
40964         * eval.c (rb_eval): NODE_CASE nd_head may be NULL.
40966 Thu Oct 30 10:14:51 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40968         * lib/test/unit/autorunner.rb: make fox runner work.
40970 Thu Oct 30 09:32:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
40972         * process.c (rb_f_system): fixed lack of security check before
40973           calling do_spawn() on win32. [ruby-talk:84555]
40975 Thu Oct 30 02:46:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
40977         * eval.c (proc_invoke): single array value to normal Proc#call
40978           (i.e. not via lambda call), should be treated just like yield.
40979           [ruby-dev:21726]
40981 Thu Oct 30 02:25:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40983         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
40984           add new method to inherit @sync from @io.sync.
40986         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): no need to
40987           set sync flag explicitly.
40989         * ext/openssl/ossl_ssl.c (ossl_sslctx_initialize): call super.
40991         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): set extra chain
40992           certificates in @extra_chain_cert.
40994 Wed Oct 29 22:02:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40996         * test/drb/drbtest.rb: use rbconfig.rb to make the path of ruby
40997           interpreter to exec, instead of test/ruby/envutil.rb,
40999 Wed Oct 29 19:58:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41001         * ext/tcltklib/tcltklib.c (CONST84): define CONST84 when it is not
41002           defined and TCL_MAJOR_VERSION >= 8.
41004         * ext/tcltklib/tcltklib.c (VwaitVarProc, WaitVariableProc,
41005           rb_threadVwaitProc): use CONST84 instead of CONST.
41007         * ext/tcltklib/tcltklib.c (ip_rbTkWaitCommand,
41008           ip_rb_threadTkWaitCommand): use CONST84 always.
41010 Wed Oct 29 17:27:05 2003  Tanaka Akira  <akr@m17n.org>
41012         * re.c (rb_reg_s_union, Init_Regexp): new method `Regexp.union'.
41014         * lib/pathname.rb (realpath): examine Dir.pwd because it may have
41015           symlinks.
41017 Wed Oct 29 17:16:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41019         * eval.c (rb_longjmp): must not disturb original jump.
41020           [ruby-dev:21733]
41022 Wed Oct 29 15:28:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41024         * eval.c (Init_Proc): taint preallocated exception object
41025           sysstack_error. [ruby-talk:84534]
41027 Wed Oct 29 11:27:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41029         * parse.y (ret_args): node may be NULL. [ruby-talk:84530]
41031 Tue Oct 28 15:20:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41033         * ext/tcltklib/tcltklib.c (VwaitVarProc, ip_rbVwaitObjCmd,
41034           WaitVariableProc, WaitVisibilityProc, WaitWindowProc,
41035           ip_rbTkWaitObjCmd, ip_rbTkWaitCommand, rb_threadVwaitProc,
41036           rb_threadWaitVisibilityProc, rb_threadWaitWindowProc,
41037           ip_rb_threadVwaitObjCmd, ip_rb_threadTkWaitObjCmd): prototype;
41038           avoid VC++ warnings.
41040 Mon Oct 27 19:19:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41042         * eval.c (rb_longjmp): ignore reentering error while warning.
41043           [ruby-dev:21730]
41045 Mon Oct 27 00:23:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41047         * ext/tcltklib/tcltklib.c (ip_ruby): bug fix on Win : hang-up when
41048           calling 'exit' in the Tk callback procedure. [ruby-list:38656]
41050 Sat Oct 25 09:18:04 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41052         * eval.c (rb_method_missing): protect exception from within
41053           "inspect".  (ruby-bugs:PR#1204)
41055 Fri Oct 24 23:26:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41057         * hash.c (rb_hash_each): Hash#each should yield single value.
41058           [ruby-talk:84420]
41060         * hash.c (env_each): ditto for ENV.each.
41062 Thu Oct 23 20:25:32 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41064         * lib/webrick/server.rb (GenericServer#start): should rescue
41065           IOError from IO::accept. [ruby-dev:21692]
41067 Thu Oct 23 17:59:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41069         * eval.c (ruby_cleanup): initialize stack bottom for embedding.
41070           [ruby-dev:21686]
41072         * ext/dl/extconf.rb: move list of files to clean from DEPEND file,
41073           to get rid of macro redefinitions.
41075 Thu Oct 23 13:44:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41077         * parse.y: integrate operations for stack_type.  [ruby-dev:21681]
41079 Thu Oct 23 00:41:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41081         * test/soap/calc/*, test/soap/helloworld/*: set logging threshold
41082           to ERROR.
41084 Wed Oct 22 12:53:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41086         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
41087           ignore tests which raised LoadError.
41089         * test/drb/drbtest.rb, test/ruby/test_beginendblock.rb,
41090           test/ruby/test_system.rb: avoid requiring same file twice.
41092         * test/drb/test_drbssl.rb, test/drb/test_drbunix.rb: should not use
41093           ARGV unless invoked directly.  do not create test cases unless
41094           required libraries are available.
41096 Wed Oct 22 02:31:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41098         * eval.c (ruby_cleanup): should not ignore exit_value in END
41099           execution. [ruby-dev:21670]
41101 Tue Oct 21 23:16:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41103         * eval.c (ruby_cleanup): call finalizers and exit procs before
41104           terminating threads.
41106         * eval.c (ruby_cleanup): preserve ruby_errinfo before ruby_finalize_0().
41108 Tue Oct 21 15:57:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41110         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
41111           prepend the directory of target file to the load path.
41113 Tue Oct 21 15:08:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41115         * win32/win32.c (do_spawn, do_aspawn): should wait child process even
41116           if callded with P_OVERLAY.
41118         * win32/win32.c (do_spawn, do_aspawn): should return child's exit
41119           status to parent.
41121 Tue Oct 21 00:35:02 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41123         * test/soap/calc/*, test/soap/helloworld/*: catch the exception from
41124           test server thread and recover.
41126 Tue Oct 21 00:22:57 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41128         * test/drb/*: import drb/runit.
41130 Mon Oct 20 23:55:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41132         * eval.c (rb_eval): set current node after arguments evaluation.
41133           [ruby-dev:21632]
41135         * eval.c (rb_yield_0): set current node and keep it at local jump.
41137 Mon Oct 20 22:01:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41139         * eval.c (rb_thread_cleanup): keep thread group for main thread.
41140           [ruby-dev:21644]
41142 Mon Oct 20 18:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41144         * eval.c (rb_catch): backout.
41146 Mon Oct 20 17:31:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41148         * eval.c (PUSH_FRAME): generate unique number to be TAG_JUMP()
41149           destination.
41151         * eval.c (localjump_destination): use unique number in ruby_frame
41152           for localjump destination.
41154 Mon Oct 20 11:31:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41156         * test/ruby/test_signal.rb (test_signal): restore old trap.
41158 Mon Oct 20 11:00:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41160         * gc.c (gc_sweep): loosen page free condition to avoid add_heap()
41161           race condition. [ruby-dev:21633]
41163         * gc.c (gc_sweep): do not update malloc_limit when malloc_increase
41164           is smaller than malloc_limit.
41166 Mon Oct 20 09:45:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41168         * lib/debug.rb (debug_command): remove debug print.
41170 Sun Oct 19 13:12:30 2003  Tanaka Akira  <akr@m17n.org>
41172         * lib/pathname.rb (foreachline, dir_foreach): add obsolete warning.
41174 Sun Oct 19 00:14:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41176         * test/soap/calc/*, test/soap/helloworkd/*: changed port# of test
41177           server. (17171)
41179 Sat Oct 18 23:01:32 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
41181         * missing/acosh.c (DBL_MANT_DIG): typo fix(ifdef -> ifndef).
41183 Sat Oct 18 05:48:59 2003  why the lucky stiff  <why@ruby-lang.org>
41185         * ext/syck/rubyext.c: YAML::Syck::compile method.
41187         * ext/syck/syck.c: Buffer edge bug.
41189         * ext/syck/yaml2byte.c: YAML to bytecode converter.
41191         * ext/syck/yamlbyte.h: Ditto.
41193         * ext/syck/bytecode.c: Bytecode parser fixes to empty collections
41194           and empty strings.
41196         * ext/syck/token.c: Ditto.
41198 Fri Oct 17 23:07:38 2003  Akinori MUSHA  <knu@iDaemons.org>
41200         * ext/enumerator/enumerator.c, ext/enumerator/enumerator.txt:
41201           Provide Kernel#to_enum as an alias for Kernel#enum_for.  Maybe
41202           this is a better name.
41204 Fri Oct 17 23:00:30 2003  Akinori MUSHA  <knu@iDaemons.org>
41206         * lib/generator.rb: Add rdoc documentation.
41208 Fri Oct 17 22:16:42 2003  Akinori MUSHA  <knu@iDaemons.org>
41210         * lib/set.rb: Reword and fix Overview.
41212         * lib/set.rb: It is not necessary to require
41213           'test/unit/ui/console/testrunner'.
41215 Fri Oct 17 11:15:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41217         * test/ruby/test_range.rb: added.
41219         * MANIFEST: add test/ruby/test_range.rb.
41221 Fri Oct 17 03:21:23 2003  William Sobel  <will.sobel@barra.com>
41223         * ext/socket/socket.c (make_hostent): h_aliases may be NULL.
41224           (ruby-bugs:PR#1195)
41226         * ext/socket/socket.c (sock_s_gethostbyaddr): ditto.
41228 Fri Oct 17 00:12:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41230         * ext/tk/lib/tk.rb: (bug fix) instance variable @frame was used
41231           without initializing on TkComposite module.
41233 Thu Oct 16 23:51:04 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41235         * ext/tk/lib/tk.rb: If $DEBUG == true and some exception is caused
41236           in a callback operation, Ruby/Tk shows a (verbose) backtrace
41237           information on the callback process.
41239 Thu Oct 16 17:09:19 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41241         * lib/debug.rb (DEBUGGER__::Context::debug_command): do not call
41242           debug_silent_eval() when $1 is not set. (ruby-bugs:PR#1194)
41244 Thu Oct 16 16:54:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41246         * string.c (rb_str_upto): ("a"..."a").to_a should return [].
41247           [ruby-core:01634]
41249 Thu Oct 16 16:40:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41251         * ext/tk/lib/tk.rb:
41252           Add Tk::EncodedString and Tk::UTF8_String class to support
41253           characters using the \uXXXX escape to the UNICODE string.
41255         * ext/tk/sample/{demos-en,demos-jp}/unicodeout.rb
41256           new demo-scripts (samples of Tk::UTF8_String)
41258         * ext/tk/sample/{demos-en,demos-jp}/widget
41259           add entries for 'unicodeout.rb'
41261 Thu Oct 16 08:38:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41263         * test/digest/test_digest.rb (test_eq): show failed class.
41265         * test/ruby/test_iterator.rb (test_break, test_return_trace_func):
41266           test localjump destination.
41268 Wed Oct 15 20:22:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41270         * lib/soap/netHttpClient.rb: use URI::HTTP#request_uri instead of
41271           instance_eval('path_query').  [ruby-list:38575]
41273 Wed Oct 15 17:24:45 2003  URABE Shyouhei  <root@mput.dip.jp>
41275         * lib/cgi.rb (CGI::Cookie): tiny typo fix.
41277 Wed Oct 15 15:00:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41279         * eval.c (ruby_run): just return FAILURE instead of parse error
41280           count.  [ruby-list:38569]
41282 Wed Oct 15 13:17:02 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41284         * ext/digest/digest.c (rb_digest_base_alloc): need to initialize
41285           buffer. [ruby-dev:21622]
41287 Wed Oct 15 11:23:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41289         * marshal.c (w_object): dump extended modules as well.
41291         * marshal.c (r_object0): TYPE_USRMARSHAL should restore extended
41292           modules before invoking marshal_load.  these two fixes are done
41293           by Masatoshi Seki <m_seki@mva.biglobe.ne.jp>.
41295 Wed Oct 15 09:30:34 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
41297         * ext/enumerator/enumerator.c (enumerator_each): avoid VC++ warning.
41299         * ext/syck/syck.h: include stdio.h for definition of FILE.
41301 Wed Oct 15 08:09:07 2003  why the lucky stiff  <why@ruby-lang.org>
41303         * ext/syck/bytecode.c: Checkin of YAML bytecode support.
41305         * ext/syck/gram.c: Ditto.
41307         * ext/syck/syck.c: Ditto.
41309         * ext/syck/token.c: Ditto.
41311         * ext/syck/handler.c: Ditto.
41313         * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
41315         * ext/syck/rubyext.c: Ditto (on both counts).
41317 Wed Oct 15 05:05:53 2003  Akinori MUSHA  <knu@iDaemons.org>
41319         * lib/generator.rb: A new library which converts an internal
41320           iterator to an external iterator.
41322         * lib/abbrev.rb: A new library which creates an abbreviation table
41323           from a list.
41325 Wed Oct 15 04:31:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41327         * ext/tk/sample/demos-en/entry3.rb, ext/tk/sample/demos-jp/entry3.rb:
41328           new demo-scripts
41330         * ext/tk/sample/demos-en/widget, ext/tk/sample/demos-jp/widget:
41331           add entries for 'entry3.rb'
41333 Wed Oct 15 04:31:47 2003  Akinori MUSHA  <knu@iDaemons.org>
41335         * test/digest/test_digest.rb: Moved from ext/digest/test.rb.
41337 Wed Oct 15 03:53:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41339         * ext/tk/lib/tk.rb: fixed trouble on auto-load Tcl commands (enbug
41340           on the last commit).
41342 Wed Oct 15 00:25:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41344         * parse.y (yylex): argument parentheses preceded by spaces should
41345           be warned; not error.  [ruby-talk:84103]
41347 Wed Oct 15 00:20:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41349         * ext/tcltklib/tcltklib.c: replace Tcl/Tk's vwait and tkwait to
41350           switch on threads smoothly and avoid seg-fault.
41352         * ext/tcltklib/tcltklib.c: add TclTkIp._thread_vwait and
41353           _thread_tkwait for waiting on a thread. (Because Tcl/Tk's vwait
41354           and tkwait command wait on an eventloop.)
41356         * ext/tk/lib/multi-tk.rb: support TclTkIp._thread_vwait and
41357           _thread_tkwait.
41359         * ext/tk/lib/tk.rb: now, TkVariable#wait has 2 arguments.
41360           If 1st argument is true, waits on a thread. If false, waits on
41361           an eventloop. If 2nd argument is true, checks existence of
41362           rootwidgets. If false, doesn't. Default is wait(true, false).
41364         * ext/tk/lib/tk.rb: add TkVariable#tkwait(arg) which is equal to
41365           TkVariable#wait(arg, true). wait_visibility and wait_destroy
41366           have an argument for waiting on a thread or an eventloop.
41368         * ext/tk/lib/tk.rb: improve of accessing Tcl/Tk's special variables.
41370         * ext/tk/lib/tkafter.rb: support 'wait on a thread' and 'wait on
41371           an eventloop'.
41373 Wed Oct 15 00:10:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41375         * lib/soap/baseData.rb: Introduce SOAPType as the common ancestor of
41376           SOAPBasetype and SOAPCompoundtype.
41378         * lib/soap/generator.rb, lib/soap/element.rb, lib/soap/encodingstyle/*:
41379           Encoding methods signature change.  Pass SOAPGenerator as a parameter.
41381         * lib/soap/mapping/*, test/soap/marshal/test_marshal.rb: Refactoring
41382           for better marshalling/unmarshalling support.  Now I think SOAP
41383           marshaller supports all kind of object graph which is supported by
41384           Ruby's original marshaller.  Of course there could be bugs as always.
41385           Find it.  :-)
41387         * lib/soap/rpc/standaloneServer.rb: Set severity threshould to INFO.
41388           DEBUG is too noisy.
41390         * lib/xsd/datatypes.rb: DateTime#of is obsoleted.  Use DateTime#offset.
41392         * test/wsdl/emptycomplextype.wsdl, test/xsd/xmlschema.xml: Avoid
41393           useless warning.
41395 Tue Oct 14 19:09:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41397         * eval.c (ruby_finalize_0): return the given exit status unless
41398           SystemExit got raised.
41400 Tue Oct 14 11:53:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41402         * intern.h (ruby_stop): never return.
41404         * ruby.h (ruby_run): ditto.
41406 Tue Oct 14 04:43:55 2003  Tanaka Akira  <akr@m17n.org>
41408         * lib/pathname.rb (realpath): make ELOOP check bit more robust.
41409           (children): prepend self by default.
41410           (chroot): obsoleted.
41412 Tue Oct 14 02:29:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41414         * eval.c (rb_require_safe): segfault after loading .so.
41416 Tue Oct 14 02:05:23 2003  Akinori MUSHA  <knu@iDaemons.org>
41418         * ext/Setup*, ext/enumerator/*: Add ext/enumerator, a helper
41419           module for the Enumerable interface.
41421 Mon Oct 13 23:55:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
41423         * test/ruby/envutil.rb: use Config::CONFIG["ruby_install_name"],
41424           not "ruby".
41426 Mon Oct 13 23:57:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41428         * eval.c (rb_feature_p): match by classified suffix.
41430         * eval.c (rb_require_safe): require library in the specified safe
41431           level.
41433         * variable.c (rb_autoload, rb_autoload_load): restore safe level
41434           when autoload was called.  [ruby-dev:21338]
41436         * intern.h: prototypes; rb_require_safe.
41438         * test/runner.rb: accept non-option arguments.
41440 Mon Oct 13 20:49:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41442         * string.c (str_new4): should not preserve FL_TAINT status in the
41443           internal shared string. [ruby-dev:21601]
41445         * string.c (rb_str_new4): ditto.
41447         * eval.c: use EXIT_SUCCESS and EXIT_FAILURE for exit values.
41449         * process.c: ditto. [ruby-list:38521]
41451 Mon Oct 13 19:51:02 2003  Koji Arai  <jca02266@nifty.ne.jp>
41453         * lib/debug.rb (debug_command): should enter emacs mode when
41454           assigned any value to the environment variable "EMACS".
41455           On Meadow, (getenv "EMACS") is "meadow".
41457 Sun Oct 12 14:45:03 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
41459         * ext/win32ole/extconf.rb: check "windows.h", not "windows".
41460           [ruby-talk:84051]
41462 Sat Oct 11 20:41:03 2003  Corinna Vinschen  <corinna@vinschen.de>
41464         * file.c (eaccess): Use access(2) on Cygwin.
41466 Sat Oct 11 17:09:21 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
41468         * lib/rexml/quickpath.rb (REXML::QuickPath::match):
41469           escape '[' to avoid warning.
41471 Sat Oct 11 16:08:41 2003  Tanaka Akira  <akr@m17n.org>
41473         * lib/pathname.rb (realpath): check existence of the file.
41475         * lib/pathname.rb (realpath): re-implemented.
41476           (realpath_root?, realpath_rec): removed
41478 Sat Oct 11 10:19:39 2003  Shugo Maeda  <shugo@ruby-lang.org>
41480         * lib/monitor.rb: handle exceptions correctly. Thanks, Gennady
41481           Bystritsky.
41483 Fri Oct 10 07:50:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41485         * eval.c (is_defined): inheritance line adjustment as like as
41486           rb_call_super().
41488 Fri Oct 10 01:19:00 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41490         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): add
41491           optional argument to specify the DirectoryString type
41492           (ASN1::UTF8STRING by default). RFC3280 deprecates PrintableString
41493           for DirectoryString, and strongly requires to use UTF8String for
41494           all certificates issued after December, 31 2003.
41496         * ext/openssl/lib/openssl/x509.rb (X509::Name::parse): ditto.
41498 Thu Oct  9 23:50:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41500         * eval.c (rb_thread_start_0): prevent thread from GC.
41501           [ruby-dev:21572]
41503 Thu Oct  9 19:11:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41505         * eval.c (rb_thread_start_0): non-volatile should be restored from
41506           volatile.
41508 Thu Oct  9 17:43:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41510         * eval.c (proc_save_safe_level, proc_get_safe_level,
41511           proc_set_safe_level): save/restore safe level 1..4.
41513 Thu Oct  9 16:33:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41515         * marshal.c (r_object0): remove unnecessary iv restoration for
41516           USRMARSHAL. [ruby-dev:21582]
41518         * marshal.c (w_object): dump generic instance variables from
41519           a string from '_dump'.
41521         * variable.c (rb_generic_ivar_table): return 0 if obj's FL_EXIVAR
41522           is not set.
41524         * time.c (time_dump): copy instance variables to dumped string, to
41525           be included in the marshaled data.
41527         * bignum.c (rb_big2ulong): add range check to ensure round trip.
41529 Thu Oct  9 15:45:27 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41531         * pack.c (uv_to_utf8): change message to "out of range", since
41532           negative values are not "too big". [ruby-dev:21567]
41534 Thu Oct  9 14:05:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41536         * eval.c (rb_set_end_proc, rb_exec_end_proc): restore safe level.
41537           [ruby-dev:21557]
41539 Thu Oct  9 10:51:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41541         * eval.c (rb_yield_0): no error if block is empty.
41543 Thu Oct  9 06:43:33 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41545         * eval.c (localjump_error): id should be ID.
41547         * eval.c (rb_eval): nd_rval is set in copy_node_scope().
41549         * eval.c (rb_yield_0): unused variable.
41551         * eval.c (rb_yield_0): nothing to do for empty node.
41553         * eval.c (call_end_proc, proc_invoke): adjust backtrace in END.
41554           [ruby-dev:21551]
41556         * eval.c (rb_thread_start_0): set the value by break as the result.
41557           [ruby-dev:21552]
41559         * eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save
41560           variables across THREAD_SAVE_CONTEXT.
41562 Thu Oct  9 12:05:46 2003  Eric Sunshine  <sunshine@sunshineco.com>
41564         * configure.in: revived NextStep, OpenStep, and Rhapsody ports which
41565           had become unbuildable; enhanced --enable-fat-binary option so that
41566           it accepts a list of desired architectures (rather than assuming a
41567           fixed list), or defaults to a platform-appropriate list if user does
41568           not provide an explicit list; made the default list of architectures
41569           for MAB (fat binary) more comprehensive; now uses -fno-common even
41570           when building the interpreter (in addition to using it for
41571           extensions), thus allowing the interpreter to be embedded into a
41572           plugin module of an external project (in addition to allowing
41573           embedding directly into an application); added checks for
41574           <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
41575           ensures that -I/usr/local/include is employed when extensions'
41576           extconf.rb scripts invoke have_header() since extension checks on
41577           NextStep and OpenStep will fail without it if the desired resource
41578           resides in the /usr/local tree; fixed formatting of --help message.
41580         * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
41581           invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
41582           (see configure's --enable-fat-binary option); added rule for new
41583           missing/getcwd.c.
41585         * defines.h: fixed endian handling during MAB build (see configure's
41586           --enable-fat-binary option) to ensure that all portions of the
41587           project see the correct WORDS_BIGENDIAN value (some extension modules
41588           were getting the wrong endian setting); added missing constants
41589           GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
41590           and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
41591           define in NeXT section.
41593         * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
41594           NextStep since, on some installations, this value always resolves
41595           uselessly to zero.
41597         * dln.c: added error reporting to NextStep extension loader since the
41598           previous behavior of failing silently was not useful; now ensures
41599           that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
41600           for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
41601           on Rhapsody since this header lacks multiple-include protection,
41602           which resulted in "redefinition" compilation errors.
41604         * main.c: also create hard reference to objc_msgSend() on NeXT
41605           platforms (in addition to Apple platforms).
41607         * lib/mkmf.rb: now exports XCFLAGS from configure script to extension
41608           makefiles so that extensions can be built MAB (see configure's
41609           --enable-fat-binary option); also utilize XCFLAGS in cc_command()
41610           (but not cpp_command() because MAB flags are incompatible with
41611           direct invocation of `cpp').
41613         * ext/curses/extconf.rb: now additionally checks for presence of these
41614           curses functions which are not present on NextStep or Openstep:
41615           bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
41616           setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
41617           wscrl(), wsetscrreg()
41619         * ext/curses/curses.c: added appropriate #ifdef's for additional set of
41620           curses functions now checked by extconf.rb; fixed curses_bkgd() and
41621           window_bkgd() to correctly return boolean result rather than numeric
41622           result; fixed window_getbkgd() to correctly signal an error by
41623           returning nil rather than -1.
41625         * ext/etc/etc.c: setup_passwd() and setup_group() now check for null
41626           pointers before invoking rb_tainted_str_new2() upon fields extracted
41627           from `struct passwd' and `struct group' since null pointers in some
41628           fields are common on NextStep/OpenStep (especially so for the
41629           `pw_comment' field) and rb_tainted_str_new2() throws an exception
41630           when it receives a null pointer.
41632         * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
41633           platforms such as NextStep and OpenStep which lack strdup().
41635         * ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
41636           gethostbyaddr(), and gethostbyname() from (const char*) to non-const
41637           (char*) for older platforms such as NextStep and OpenStep.
41639         * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
41640           platforms such as NextStep and OpenStep which lack strdup(); include
41641           <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
41642           argument of gethostbyaddr() and getservbyname() from (const char*) to
41643           non-const (char*) for older platforms.
41645         * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
41646           platforms such as NextStep and OpenStep which lack strdup().
41648 Wed Oct  8 22:19:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41650         * lib/test/unit.rb: removed installation instructions.
41652         * lib/test/unit/ui/testrunnermediator.rb: moved the run flag to a more
41653           central location.
41655         * lib/test/unit.rb: ditto.
41657         * lib/test/unit.rb: extracted the running code in to AutoRunner.
41659         * lib/test/unit/autorunner.rb: added.
41661         * lib/test/unit/collector/objectspace.rb: extracted common test
41662           collection functionality in to a module.
41664         * lib/test/unit/collector.rb: ditto; added.
41666         * test/testunit/collector/test_objectspace.rb: ditto.
41668         * lib/test/unit/collector/dir.rb: added. Supports collecting tests out
41669           of a directory structure.
41671         * test/testunit/collector/test_dir.rb: added.
41673         * test/runner.rb: simplified to use the new capabilities.
41675 Tue Oct  7 15:23:09 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41677         * test/ruby/test_beginendblock.rb: add tests for nested BEGIN/END.
41679         * test/ruby/beginmainend.rb: add tests for nested BEGIN/END.
41681         * test/ruby/endblockwarn.rb: new file added to test of END-in-method
41682           warning.
41684 Tue Oct  7 12:23:47 2003  Tanaka Akira  <akr@m17n.org>
41686         * ext/fcntl/fcntl.c (Init_fcntl): define Fcntl::O_ACCMODE.
41688         * ext/socket/extconf.rb: useless assignment removed.
41690 Tue Oct  7 09:13:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41692         * test/ruby/test_beginendblock.rb (test_endinmethod): END{} is now
41693           allowed in eval.
41695 Tue Oct  7 04:15:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41697         * parse.y (stmt): should not expand mrhs if lhs is solely starred.
41699 Tue Oct  7 02:57:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41701         * parse.y (stmt): rhs of multiple assignment should not be
41702           expanded using "to_a". [ruby-dev:21527]
41704 Tue Oct  7 01:42:34 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41706         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): use appropriate
41707           free function for ASN1_OBJECT.
41709         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
41710           ASN1::ObjectId#sn; it returns short name text representation of OID.
41712         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
41713           ASN1::ObjectId#ln; it returns long name text representation of OID.
41715         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
41716           ASN1::ObjectId#oid; it returns numerical representation of OID.
41718 Mon Oct  6 22:59:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41720         * lib/csv.rb (IOReader, BasicWriter): call binmode when a given IO
41721           respond_to?(:binmode).  record separator was wrong when you gave
41722           text mode IO to Reader.parse and Writer.generate.
41724         * test/csv/test_csv.rb: add tests for above change.
41726 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
41728         * ext/socket/extconf.rb: check recvmsg even if sendmsg is exists.
41730         * ext/socket/socket.c (thread_read_select): restored.
41732 Mon Oct  6 16:23:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41734         * marshal.c (w_object): wrong method name in the message.
41736 Mon Oct  6 16:02:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41738         * parse.y (stmt): END in method should cause warning.
41739           [ruby-dev:21519]
41741 Mon Oct  6 15:17:23 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41743         * test/ruby/test_iterator.rb (test_block_argument_without_paren):
41744           added. (follows sample/test.rb)
41746 Mon Oct  6 11:57:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41748         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: added
41749           test for eval-ed BEGIN END order.
41751 Mon Oct  6 09:19:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41753         * marshal.c (w_object): should pass "weak" value to next level.
41754           [ruby-dev:21496]
41756         * eval.c (proc_alloc): should not use cached object if klass is
41757           different. [ruby-talk:83685]
41759 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
41761         * lib/pathname.rb: version information is added in document.
41763 Sun Oct  5 23:07:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41765         * eval.c (rb_f_END): block should be given.  [ruby-dev:21497]
41767 Sun Oct  5 22:51:23 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41769         * lib/ext/openssl/extconf.rb: add check for some engine functions
41770           unavailable in OpenSSL-0.9.6.
41772         * lib/ext/openssl/ossl_engine.c: ditto.
41774 Sun Oct  5 17:56:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41776         * eval.c (rb_eval): fix evaluation order.  [ruby-list:38431]
41778 Sun Oct  5 15:05:06 2003  akira yamada  <akira@ruby-lang.org>
41780         * test/uri/*: translated RUNIT to Test::Unit.
41782 Sun Oct  5 14:37:39 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41784         * lib/xsd/datatypes.rb: Rational -> Decimal string bug fix.
41786         * test/soap/marshal/test_marshal.rb: ditto.
41788         * test/soap/calc/test_calc_cgi.rb: add Config::CONFIG["EXEEXT"] to
41789           RUBYBIN.
41791 Sun Oct  5 13:47:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41793         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: add tests
41794           about scope, order and allowed syntax.
41796 Sun Oct  5 11:54:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41798         * test/ruby/envutil.rb: added.  split "rubybin" from test_system.rb.
41800         * test/ruby/test_system.rb: use envutil.rb
41802         * test/ruby/test_beginendblock.rb: added.
41804         * test/ruby/beginmainend.rb: added.  used in test_beginendblock.rb.
41806 Sun Oct  5 11:23:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41808         * test/testunit/runit/test_testresult.rb: removed some unnecessary
41809           cruft.
41811 Sun Oct  5 11:14:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41813         * lib/rubyunit.rb: aliasing TestCase into the top level is
41814           problematic.
41816         * lib/runit/assert.rb: fixed a couple of bugs caused by recent
41817           refactoring in Test::Unit.
41819         * test/testunit/runit/*: added.
41821 Sun Oct  5 10:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41823         * lib/open-uri.rb (URI::Generic#find_proxy): no_proxy support did not
41824           work.  [ruby-dev:21484]
41826 Sun Oct  5 09:52:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41828         * lib/test/unit/assertions.rb: will use pp for output if available.
41829           Can be disabled by setting Assertions.use_pp = false.
41831         * test/testunit/test_assertions.rb: made a small change to exception
41832           formatting.
41834 Sun Oct  5 07:42:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41836         * lib/test/unit/assertions.rb: made small improvements to assertion
41837           messages. Deprecated Assertions#assert_not_nil; use #assert instead.
41839         * test/testunit/test_assertions.rb: ditto.
41841         * test/testunit/util/test_procwrapper.rb: use #assert instead of
41842           #assert_not_nil.
41844 Sun Oct  5 04:10:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41846         * lib/test/unit/assertions.rb: refactored message building.
41848 Sun Oct  5 03:40:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41850         * ext/openssl/ossl_asn1.h: global symbols should be declared
41851           as external.
41853 Sun Oct  5 03:03:20 2003  akira yamada  <akira@ruby-lang.org>
41855         * test/ruby/test_exception.rb (test_else): added.
41857 Sun Oct  5 02:12:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41859         * lib/test/unit/assertions.rb: changed assertion messages to rely more
41860           heavily on #inspect. Added backtrace filtering for exceptions in
41861           assertion messages.
41863         * test/testunit/test_assertions.rb: ditto.
41865 Sun Oct  5 02:12:00 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41867         * lib/drb/acl.rb, lib/drb/ssl.rb: added.
41869         * lib/drb/drb.rb: exit from a thread using 'break'.
41871 Sat Oct  4 21:49:14 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
41873         * gc.c (Init_stack): the type of space is changed to unsigned int
41874           from double.  [ruby-dev:21483]
41876 Sat Oct  4 17:52:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41878         * lib/soap/netHttpClient.rb: follow http-access2.  hosts which matches
41879           ENV['no_proxy'] or ENV['NO_PROXY'] are not proxyed.
41880           - [,:] separated. ("ruby-lang.org:rubyist.net")
41881           - no regexp. (give "ruby-lang.org", not "*.ruby-lang.org")
41882           - if you want specify host by IP address, give full address.
41883             ("192.168.1.1, 192.168.1.2")
41885         * lib/soap/rpc/cgistub.rb: return "Status: XXX MMM" line.
41887         * test/runner.rb: give testsuite name.
41889 Sat Oct  4 15:16:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
41891         * marshal.c (w_object): instance variable dump do not cause error
41892           for objects that cannot be dumped, if they traversed from
41893           marshal_dump.  they are just ignored.
41895         * gc.c (Init_stack): cast "space" (doble value) into unsigned
41896           int.  should run on PowerPC.
41898         * eval.c (rb_eval): should not execute else part if any exception
41899           is caught. [ruby-dev:21482]
41901         * parse.y (f_args): should allow unparenthesized block argument.
41903         * parse.y (f_rest_arg): should allow unparenthesized rest
41904           argument.
41906 Sat Oct  4 14:59:51 2003  Tanaka Akira  <akr@m17n.org>
41908         * lib/pathname.rb (initialize): raise ArgumentError if argument has
41909           '\0' character.
41910           (relative_path_from): new method.
41911           (each_entry): new method for replacement of dir_foreach.
41912           (foreach, foreachline, dir_foreach, chdir): obsoleted.
41914 Sat Oct  4 12:58:48 2003  akira yamada  <akira@ruby-lang.org>
41916         * test/uri/* (6 files): added.
41918 Sat Oct  4 12:44:45 2003  akira yamada  <akira@ruby-lang.org>
41920         * lib/uri/ftp.rb, lib/uri/mailto.rb: renamed to #to_s from #to_str.
41922 Sat Oct  4 07:33:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41924         * lib/test/unit/testsuite.rb: changed #<< to return self, and added
41925           #delete.
41927         * test/testunit/test_testsuite.rb: ditto. Also slightly refactored
41928           #test_size.
41930         * lib/test/unit/collector/objectspace.rb: collector now preserves the
41931           hierarchy of suites.
41933         * test/testunit/collector/test_objectspace.rb: ditto.
41935 Sat Oct  4 04:48:49 2003  why the lucky stiff  <why@ruby-lang.org>
41937         * ext/syck/rubyext.c: default keys handled.
41939         * ext/syck/syck.h: lowered default buffer size to 16k for increased
41940           performance.
41942         * test/yaml: checkin of basic unit tests.
41944 Sat Oct  4 04:24:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41946         * ext/openssl/extconf.rb: add check for X509V3_set_nconf.
41948         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
41949           cannot implement if X509V3_set_nconf doesn't exist.
41951 Sat Oct  4 02:12:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41953         * lib/xsd/datatypes.rb: dump sign by itself.  under the problematic
41954           platform, sprintf("%+.10g", -0.0) => +0.  sigh.
41956         * sample/wsdl/amazon/*: update schema ver2 to ver3.
41958 Sat Oct  4 01:33:46 2003  Tanaka Akira  <akr@m17n.org>
41960         * lib/pathname.rb (initialize): duplicate and freeze argument.
41961           (to_s): return duplicated string.
41962           (children): new method.
41963           (each_line): new alias to foreachline.
41965 Fri Oct  3 16:13:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41967         * ext/openssl/ossl_asn1.c: add DER encoder and decoder.
41969         * ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.
41971         * ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.
41973         * ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".
41975         * ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
41976           DER encoded data argument.
41978         * ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
41979           DER encoded data in OpenSSL::ASN1 types.
41981 Fri Oct  3 13:02:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
41983         * lib/test/unit.rb: refactored to use optparse.
41985         * lib/test/unit.rb: added support for selecting the output
41986           level from the command-line.
41988         * lib/test/unit.rb: added a command-line switch to stop processing
41989           the command-line, allowing arguments to be passed to tests.
41991         * lib/test/unit.rb: changed the method for specifying a runner or a
41992           filter from the command-line.
41994         * lib/test/unit/collector/objectspace.rb: fixed a bug causing all
41995           tests to be excluded when the filter was set to an empty array.
41997         * test/testunit/collector/test_objectspace.rb: ditto.
41999 Fri Oct  3 08:14:32 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42001         * lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
42002           'class ::Foo' syntax. [ruby-talk:83514]
42004 Fri Oct  3 08:01:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
42006         * lib/test/unit/assertions.rb: added a default message for #assert,
42007           #assert_block, and #flunk.
42009         * test/testunit/test_assertions.rb: ditto.
42011         * lib/test/unit/failure.rb: failures now show a better trace of where
42012           they occurred.
42014         * test/testunit/test_failure.rb: ditto (added).
42016         * lib/test/unit/testcase.rb: ditto.
42018         * test/testunit/test_testcase.rb: ditto.
42020         * lib/test/unit/util/backtracefilter.rb: added.
42022         * test/testunit/util/test_backtracefilter.rb: added.
42024         * lib/test/unit/error.rb: changed to use BacktraceFilter and improved
42025           output.
42027         * test/testunit/test_error.rb: ditto.
42029 Thu Oct  2 20:33:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42031         * ext/iconv/iconv.c (iconv_failure_initialize): conform with
42032           orthodox initialization method.
42034         * ext/iconv/iconv.c (iconv_fail): initialize exception instance
42035           from the class, and do not share instance variables with the
42036           others.  [ruby-dev:21470]
42038 Thu Oct  2 18:20:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42040         * time.c (Init_Time): define initialize.  [ruby-dev:21469]
42042 Thu Oct  2 17:39:38 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42044         * ext/openssl/ossl_engine.c: add a new module OpenSSL::Engine.
42045           it supports OpenSSL hardware cryptographic engine interface.
42047         * ext/openssl/ossl_engine.h: ditto.
42049         * ext/openssl/MANIFEST: add ossl_engine.c and ossl_engine.h.
42051         * ext/openssl/extconf.rb: add check for openssl/engine.h.
42053         * ext/openssl/ossl.c: call Init_ossl_engine().
42055         * ext/openssl/ossl.h: include openssl/engine.h.
42057         * ext/openssl/ossl_pkey_{rsa,dsa,dh}.c: check if underlying
42058           EVP_PKEY referes engine.
42060 Thu Oct  2 17:22:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42062         * time.c (time_load): restore instance variables (if any) before
42063           loading from marshaled data.
42065 Thu Oct  2 14:19:15 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42067         * ext/iconv/iconv.c (iconv_fail): now yield erred substring, and
42068           set error object to $!.
42070         * ext/iconv/iconv.c (iconv_convert): error handler block should
42071           return appended part and the rest.  if rest is nil, the
42072           conversion stops.
42074 Thu Oct  2 12:00:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42076         * variable.c (rb_const_defined_0): look up constants in Object as
42077           well.  [ruby-dev:21458]
42079         * test/ruby/test_defined.rb (TestDefined::test_defined): test for
42080           constants.
42082 Thu Oct  2 11:17:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
42084         * lib/test/unit/assertions.rb: should not capture an
42085           AssertionFailedError unless explicitly requested.
42087         * test/testunit/test_assertions.rb: ditto.
42089         * test/testunit/collector/test_objectspace.rb: fixed a test failure
42090           caused by methods being returned in different orders on different
42091           platforms by moving test sorting from TestSuite into the locations
42092           where suites are constructed. [ruby-talk:83156]
42094         * lib/test/unit/testcase.rb: ditto.
42096         * lib/test/unit/testsuite.rb: ditto.
42098         * lib/test/unit/collector/objectspace.rb: ditto.
42100 Thu Oct  2 03:25:01 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
42102         * eval.c (rb_thread_raise): prototype; avoid VC++ warning.
42104 Thu Oct  2 01:37:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42106         * time.c (time_mdump): new marshal dumper. _dump is still
42107           available for compatibility.
42109         * time.c (time_mload): new marshal loader.
42111         * marshal.c (w_object): preserve instance variables for objects
42112           with marshal_dump.
42114         * marshal.c (r_object0): restore instance variables before calling
42115           marshal_load.
42117         * error.c (rb_warn_m): always return nil.
42119 Thu Oct  2 01:32:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42121         * eval.c (rb_f_block_given_p): real required condition is
42122           ruby_frame->prev->iter == ITER_CUR.
42124         * eval.c (rb_block_given_p): ditto.
42126         * eval.c (block_pass): update ruby_frame->iter only when previous
42127           value is ITER_NOT.
42129 Thu Oct  2 01:02:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42131         * variable.c (rb_const_defined_at): should exclude constants from
42132           Object when TYPE(klass) == T_MODULE *and* exclude is on.
42133           [ruby-dev:21458]
42135         * variable.c (rb_const_get_0): do not lookup constants from Object
42136           when TYPE(klass) == T_MODULE *and* exclude is on.
42138 Thu Oct  2 00:21:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42140         * test/logger/test_logger.rb: unlinking file before close causes
42141           problem under win32 box.
42143         * lib/xsd/datatypes.rb(XSDFloat, XSDDouble): add +/- sign explicitly
42144           when stringified and embedded into XML instance.  Ruby's sprintf may
42145           format -0.0 as "0.0" (no minus sign) depending on underlying C
42146           sprintf implementation.
42148         * test/xsd/test_xsd.rb, test/soap/test_basetype.rb: follow above change.
42150         * test/soap/calc/*: give httpd config param "CGIInterpreter".
42151           "/usr/bin/env ruby" thing does not work under non-Unix boxes.
42153 Thu Oct  2 00:25:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42155         * signal.c (ruby_signal_name): adjust to the prototype.
42157         * process.c (pst_inspect): ditto.
42159         * ext/etc/etc.c (etc_getgrent, Init_etc): typo.
42161 Wed Oct  1 20:49:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42163         * gc.c (heaps): manage slots and limits together.  [ruby-dev:21453]
42165         * gc.c (add_heap): should not clear heaps slot even if realloc()
42166           failed.
42168 Wed Oct  1 20:36:49 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42170         * MANIFEST: add wince/mkconfig_wce.rb.
42172 Wed Oct  1 17:22:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42174         * ext/etc/etc.c: add new functions: setpwent, getpwent, endpwent,
42175           setgrent, getgrent, endgrent.
42177         * ext/socket/socket.c (sock_s_gethostbyname): do not reverse lookup.
42179 Wed Oct  1 17:01:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42181         * eval.c (rb_load): Object scope had priority over required file
42182           scope.  [ruby-dev:21415]
42184 Wed Oct  1 14:09:53 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
42186         * wince/mkconfig_wce.rb: sorry, forget to commit.
42188 Wed Oct  1 10:08:42 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
42190         * wince/setup.mak: add sigmarionIII SDK support.
42192         * wince/Makefile.sub: ditto.
42194         * wince/mkexports.rb: fix linker error in SH4.
42196         * wince/mkconfig_wce.rb: camouflage RUBY_PLATFORM for compiling ext.
42198 Wed Oct  1 08:02:52 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
42200         * wince/time_wce.c (time): add zero check.
42202 Tue Sep 30 16:11:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42204         * Makefile.in: copy lex.c from $(srcdir) if it's not the current
42205           directory.  [ruby-dev:21437]
42207 Tue Sep 30 11:29:23 2003  Tanaka Akira  <akr@m17n.org>
42209         * process.c (pst_inspect): describe stopped process "stopped".
42211 Tue Sep 30 09:31:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42213         * test/runner.rb: glob for directories.
42215 Tue Sep 30 09:11:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42217         * eval.c (rb_eval): while/until should not capture break unless
42218           they are destination of the break.
42220 Tue Sep 30 03:12:02 2003  Minero Aoki  <aamine@loveruby.net>
42222         * lib/net/http.rb (finish): revert to 1.93.
42224         * lib/net/pop.rb (finish): revert to 1.60.
42226         * lib/net/smtp.rb (finish): revert to 1.67.
42228         * lib/net/http.rb (do_start): ensure to close socket if failed to
42229           start session.
42231         * lib/net/pop.rb (do_start): ditto.
42233         * lib/net/smtp.rb (do_start): ditto.
42235         * lib/net/smtp.rb: SMTP#started? wrongly returned false always.
42237 Tue Sep 30 02:54:49 2003  Minero Aoki  <aamine@loveruby.net>
42239         * test/ruby/test_iterator.rb: new test
42240           test_break__nested_loop[123].
42242 Mon Sep 29 23:39:13 2003  Minero Aoki  <aamine@loveruby.net>
42244         * lib/net/http.rb (finish): does not raise IOError even if
42245           !started?, to allow closing socket which was opened before
42246           session started.
42248         * lib/net/pop.rb (finish): ditto.
42250         * lib/net/smtp.rb (finish): ditto.
42252 Mon Sep 29 19:06:51 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42254         * ext/win32ole/extconf.rb: add windows.h checking.
42255           (ruby-bugs:PR#1185)
42257 Mon Sep 29 16:18:30 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42259         * lib/logger.rb: check if the given logdevice object respond_to :write
42260           and :close, not is_a? IO.  duck duck.
42262         * test/logger/test_logger.rb: self IO.pipe reading/writing may be
42263           locked by the flood.  use tempfile.
42265         * lib/wsdl/xmlSchema/data.rb: wrong constant reference.
42267 Mon Sep 29 16:11:23 2003  Minero Aoki  <aamine@loveruby.net>
42269         * test/fileutils/test_fileutils.rb: clean up temporary symlink.
42270           Patched by NaHi.  [ruby-dev:21420]
42272 Mon Sep 29 11:16:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42274         * eval.c (rb_thread_atfork): wrong format specifier.
42275           [ruby-dev:21428]
42277         * process.c (pst_inspect): better description.
42279 Mon Sep 29 02:31:44 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42281         * lib/webrick/utils.rb (Utils::su): use setgid and setuid to
42282           set real and effective IDs. and setup group access list by
42283           initgroups.
42285 Sun Sep 28 11:14:19 2003  Koji Arai  <jca02266@nifty.ne.jp>
42287         * ext/digest/digest.c (Init_digest): `copy_object' was deprecated.
42288           `initialize_copy' should be defined.
42290         * ext/stringio/stringio.c (Init_stringio): ditto.
42292 Sat Sep 27 18:25:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42294         * lib/xsd/charset.rb: XSD::Charset.is_ces did return always true under
42295           $KCODE = "NONE" environment.  check added.
42297         * test/xsd/test_xsd.rb: add tests for above fix.
42299 Sat Sep 27 15:58:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42301         * lib/soap/rpc/cgistub.rb: make logging severity threshold higher.
42303         * lib/soap/rpc/standaloneServer.rb: defer WEBrick server start to give
42304           a chance to reset logging severity threshold.
42306         * test/soap/calc/test_*, test/soap/helloworld/test_helloworld.rb: run
42307           silent.
42309 Sat Sep 27 09:44:18 2003  Minero Aoki  <aamine@loveruby.net>
42311         * test/fileutils/test_fileutils.rb: clear all errors on Windows.
42312           [ruby-dev:21417]
42314         * test/fileutils/test_nowrite.rb: ditto.
42316 Sat Sep 27 04:57:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42318         * test/ruby/test_file.rb: new file.  only asserts unlink-before-close
42319           behaviour now.
42321         * test/soap/marshal/test_digraph.rb: should close before unlink.
42322           unlink-before-close pattern is not needed here.
42324 Sat Sep 27 03:32:37 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42326         * test/soap/*, test/wsdl/*, test/xsd/*: move TestCase classes into
42327           each module namespace.  TestMarshal in
42328           test/soap/marshal/test_marshal.rb crashed with
42329           test/ruby/test_marshal.rb.
42331 Sat Sep 27 01:30:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
42333         * ext/socket/socket.c (ruby_connect): on win32, type of the 4th
42334           argument of getsockopt is char *.
42336 Fri Sep 26 18:35:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42338         * lib/resolv-replace.rb: 1.8 compliance.  [ruby-talk:82946]
42340 Fri Sep 26 17:39:27 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42342         * test/ruby/test_marshal.rb: add test for ruby's objects.
42344 Fri Sep 26 09:52:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42346         * defines.h (flush_register_windows): use volatile only for gcc on
42347           Solaris.  [ruby-dev:21403]
42349         * lib/mkmf.rb (xsystem): use system directly to honor shell meta
42350           charaters.
42352 Fri Sep 26 00:10:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42354         * lib/README: updated.
42356 Thu Sep 25 17:48:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
42358         * ext/openssl/ossl.c (ossl_buf2str): fix type of 1st argument for
42359           rb_protect.
42361         * ext/openssl/ossl_hmac.c (ossl_hmac_digest): should return meaningful
42362           value.
42364 Thu Sep 25 09:00:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
42366         * lib/ostruct.rb: Added OpenStruct#==.
42368         * test/ostruct/test_ostruct.rb: Added.
42370 Thu Sep 25 07:55:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42372         * ext/win32ole/win32ole.c, ext/openssl/ossl_pkey_dsa.c,
42373           ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
42374           not use C++ or C99 style comment yet.  (ruby-bugs:PR#1184)
42376 Thu Sep 25 00:23:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42378         * MANIFEST: add SOAP4R.
42380 Thu Sep 25 00:13:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42382         * lib/soap/* (29 files): SOAP4R added.
42384         * lib/wsdl/* (42 files): WSDL4R added.
42386         * lib/xsd/* (12 files): XSD4R added.
42388         * test/soap/* (16 files): added.
42390         * test/wsdl/* (2 files): added.
42392         * test/xsd/* (3 files): added.
42394         * sample/soap/* (27 files): added.
42396         * sample/wsdl/* (13 files): added.
42398 Wed Sep 24 02:08:11 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42400         * lib/webrick/httpservlet/cgihandler.rb: conform to mswin32.
42401           [ruby-talk:82735], [ruby-talk:82748], [ruby-talk:82818]
42403 Tue Sep 23 23:10:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42405         * lib/logger.rb: add Logger#<<(msg) for writing msg without any
42406           formatting.
42408         * test/logger/test_logger.rb: ditto.
42410 Tue Sep 23 20:47:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42412         * error.c (rb_warn_m): should not warn if -W0 is specified.
42413           [ruby-talk:82675]
42415 Mon Sep 22 21:28:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42417         * MANIFEST: updated.
42419 Mon Sep 22 19:22:26 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42421         * configure.in (AC_CHECK_FUNCS): add setuid and setgid.
42423 Mon Sep 22 12:34:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42425         * util.c (ruby_strtod): skip preceding zeros before counting
42426           digits in the mantissa. (ruby-bugs:PR#1181)
42428 Sun Sep 21 04:12:36 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42430         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): the argument
42431           should be a String.
42433         * ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): ditt.
42435         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): ditto.
42437         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
42439         * ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.
42441 Sat Sep 20 11:49:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42443         * lib/logger.rb: typo fixed.
42445         * test/logger/test_logger.rb: new file.
42447 Fri Sep 19 11:39:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
42449         * test/testunit/*: Added.
42451         * lib/test/unit.rb: Documentation update.
42453         * lib/test/unit/ui/console/testrunner.rb (TestRunner#initialize):
42454           Ditto.
42456         * lib/test/unit.rb: Factored out an ObjectSpace collector.
42458         * lib/test/unit/collector/objectspace.rb: Ditto.
42460         * sample/testunit/*: Added.
42462 Fri Sep 19 01:00:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42464         * lib/webrick/log.rb (BasicLog#log): get rid of as ineffectual
42465           condition.
42467         * lib/webrick/log.rb (BasicLog#format): add "\n" to message.
42469 Thu Sep 18 22:43:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42471         * eval.c (proc_invoke): should push PROT_PCALL tag for orphans.
42473         * eval.c (proc_invoke): should update "result" for orphans.
42475 Thu Sep 18 20:33:03 2003  Tietew  <tietew-ml-ruby-list@tietew.net>
42477         * parse.y (str_xquote): do not prepend escapes in
42478           backqoute literals.  [ruby-list:38409]
42480 Thu Sep 18 20:30:17 2003  Tanaka Akira  <akr@m17n.org>
42482         * lib/pathname.rb: update document.
42484 Thu Sep 18 15:27:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42486         * lib/logger.rb: new file.  Logger, formerly called devel-logger or
42487           Devel::Logger.
42489         * sample/logger/*: new file.  samples of logger.rb.
42491 Wed Sep 17 23:41:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42493         * eval.c (localjump_destination): should not raise ThreadError
42494           exception for "break". [ruby-dev:21348]
42496         * eval.c (proc_invoke): use result instead of prot_tag->retval.
42497           retval is no longer propagated to the ancestors.
42499 Wed Sep 17 20:34:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42501         * parse.y (tokadd_string, parse_string, yylex): escaped terminator
42502           is now interpreted as is.  [ruby-talk:82206]
42504 Wed Sep 17 18:52:36 2003  Minero Aoki  <aamine@loveruby.net>
42506         * test/fileutils/fileassertions.rb: new file.
42508         * test/fileutils/test_fileutils.rb: new file.
42510         * test/fileutils/test_nowrite.rb: new file.
42512 Wed Sep 17 18:51:02 2003  Minero Aoki  <aamine@loveruby.net>
42514         * test/strscan/test_stringscanner.rb: require test/unit.
42516 Wed Sep 17 18:35:34 2003  Minero Aoki  <aamine@loveruby.net>
42518         * test/strscan/test_stringscanner.rb: new file.
42520 Wed Sep 17 18:03:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42522         * ext/openssl: all files are reviewed to simplify and avoid memory leak.
42524         * ext/openssl/extconf.rb: add check for assert.h.
42526         * ext/openssl/ossl.c (ossl_buf2str): new function to convert
42527           C buffer to String and free buffer.
42529         * ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
42530           Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.
42532         * ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
42533           functions to convert object to DER string.
42535         * ext/openssl/ossl.h: ditto.
42537         * ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
42538           BIO to String object and free BIO.
42540         * ext/openssl/ossl_bio.h: ditto.
42542         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".
42544         * ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.
42546         * ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.
42548         * ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
42549           and reimplement in openssl/x509.rb.
42551         * ext/openssl/ossl_x509attr.c: reimplemented and disable some
42552           method temporarily. this class doesn't work fine without ASN.1
42553           data support;-) I'll rewrite in near future.
42555         * ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
42556           unused code.
42558         * ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.
42560 Tue Sep 16 22:25:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42562         * test/csv/test_csv.rb: add negative tests of row_sep.
42564 Tue Sep 16 18:02:36 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42566         * regex.c (re_compile_pattern): should not translate character
42567           class range edge. [ruby-list:38393]
42569 Tue Sep 16 16:47:56 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42571         * MANIFEST: add test/csv/mac.csv.
42573         * win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target.
42575 Mon Sep 15 19:02:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42577         * lib/csv.rb: add extra pamameter to specify row(record) separater
42578           character.  To parse Mac's CR separated CSV, do like this.
42579             CSV.open("mac.csv", "r", ?,, ?\r) { |row| p row.to_a }
42580           The 3rd parameter in this example ?, is for column separater and the
42581           4th ?\r is for row separater.  Row separater is nil by default.  Nil
42582           separater means "\r\n" or "\n".
42584         * test/csv/test_csv.rb: add tests for above feature.
42586         * test/csv/mac.csv: added.  Sample CR separated CSV file.
42588 Fri Sep 12 22:41:48 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
42590         * ext/openssl/ossl.c: move ASN.1 stuff to ossl_asn1.[ch]
42592         * ext/openssl/ossl.c: move BIO stuff to ossl_bio.[ch]
42594         * ext/openssl/ossl_asn1.[ch]: new files
42596         * ext/openssl/ossl_bio.[ch]: new files
42598 Fri Sep 12 12:30:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42600         * intern.h (rb_disable_super, rb_enable_super): replace with dummy
42601           expressions instead of prototypes.  the functions remain yet for
42602           binary compatibility.  [ruby-talk:81758]
42604 Fri Sep 12 12:09:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42606         * bignum.c (rb_big_and): convert argument using 'to_int'.
42608         * bignum.c (rb_big_or): ditto.
42610         * bignum.c (rb_big_xor): ditto.
42612 Fri Sep 12 07:06:14 2003  David Black  <dblack@superlink.net>
42614         * lib/scanf.rb: Took out useless @matched_item variable; some small
42615           refactoring.
42617 Thu Sep 11 08:43:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42619         * eval.c (rb_f_require): allow "require" on $SAFE>0, if feature
42620           name is not tainted.
42622         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream):
42623           Supports StringIO.
42625 Wed Sep 10 22:47:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42627         * ext/openssl/ossl.h: add a workaround for win32 platform.
42628           libeay32.dll doesn't export functions defined in conf_api.h.
42630         * ext/openssl/ossl_config.c (ossl_config_initialize): ditto.
42632         * ext/openssl/ossl_config.c (ossl_config_add_value): ditto.
42634         * ext/openssl/ossl_config.c (set_conf_section_i): should check
42635           if the argument is Array.
42637 Wed Sep 10 22:41:54 2003  Tietew  <tietew@tietew.net>
42639         * eval.c (win32_get_exception_list): avoid VC7 warning.
42640           [ruby-win32:577]
42642 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42644         * eval.c (struct tag): dst should be VALUE.
42646 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42648         * eval.c (localjump_destination): stop at the scope where the current
42649           block was created.  [ruby-dev:21353]
42651 Tue Sep  9 05:17:04 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42653         * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
42655 Tue Sep  9 02:41:35 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
42657         * ext/openssl/ossl_config.c: Refine compatibility.
42659 Tue Sep  9 01:50:45 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42661         * lib/webrick/httpserver.rb (HTTPServer#access_log): add "\n" to
42662           the message.
42664         * lib/webrick/log.rb (BasicLog#log): add "\n" only if needed.
42666 Mon Sep  8 22:15:33 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42668         * ext/tk/lib/multi-tk.rb: modify security check at creating
42669           a new interpreter
42671 Mon Sep  8 20:00:12 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42673         * lib/optparse.rb, lib/optparse/version.rb: search also all
42674           capital versions.
42676 Mon Sep  8 19:26:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42678         * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
42680         * ext/openssl/ossl_config.c: refine all with backward compatibility.
42682         * ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().
42684         * ext/openssl/ossl_x509.c: added new constants under X509 module.
42685           DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
42686           DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.
42688         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
42689           the members of the struct. it's left to GC.
42691         * ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.
42693         * ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
42694           add attr readers: issuer_certificate, subject_certificate,
42695           subject_request, crl and config.
42697 Mon Sep  8 18:26:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42699         * lib/webrick/accesslog.rb (AccessLog::setup_params): use req.port
42700           instead of config[:Port] or req.request_uri.port.
42702         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): ditto.
42704         * lib/webrick/httpservlet/filehandler.rb (FileHandler#dir_list): ditto.
42706         * lib/webrick/config.rb: :Listen option never be used.
42708         * lib/webrick/server.rb (GenericServer#initialize): don't use :Listen
42709           option and add warning message.
42711         * lib/webrick/log.rb (BasicLog#<<): shortcut of log(INFO, ...).
42713         * lib/webrick/httpserver.rb (HTTPServer#accesslog): use << for logging.
42715 Sun Sep  7 16:08:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42717         * ext/tcltklib/tcltklib.c (lib_mainloop_core): fixed signal-trap bug
42719         * ext/tk/lib/*.rb: Ruby/Tk works at $SAFE == 4
42721 Sat Sep  6 02:26:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42723         * test/ruby/test_*.rb: assert_same, assert_match, and so on.
42725 Sat Sep  6 18:45:46 2003  Mauricio Fernandez  <batsman.geo@yahoo.com>
42727         * parse.y (assignable): call rb_compile_error(), not rb_bug().
42728           [ruby-core:01523]
42730 Sat Sep  6 17:40:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42732         * ext/openssl/ruby_missing.c: rid of unnecessary backward
42733           compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
42734           all sources.
42736         * ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.
42738         * ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.
42740         * ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.
42742         * ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.
42744 Sat Sep  6 01:23:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
42746         * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set.
42748         * win32/win32.c (CreateChild): fix condition about whether to call
42749           shell or not.
42751 Sat Sep  6 00:36:20 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
42753         * Makefile.in (test): phony target.
42755         * lib/mkmf.rb (have_library, find_library): configure by library
42756           name.
42758         * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
42759           array as argument.
42761         * test/ruby/test_*.rb: moved invariants to left side in
42762           assert_equal, and use assert_nil, assert_raises and so on.
42764         * win32/win32.c (isInternalCmd): distinguish command.com and
42765           cmd.exe.
42767         * win32/win32.c (make_cmdvector): a character just after wildcard
42768           was ignored.  [ruby-core:01518]
42770 Fri Sep  5 20:27:08 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42772         * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)'
42774 Fri Sep  5 18:00:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42776         * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
42778         * ext/openssl/ossl_digest.c: add ossl_digest_new().
42780         * ext/openssl/ossl_digest.h: ditto.
42782         * ext/openssl/ossl_cipher.c: add ossl_cipher_new().
42784         * ext/openssl/ossl_cipher.h: ditto.
42786 Fri Sep  5 15:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42788         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): should not
42789           search delimiter forward if found in backward.
42791 Fri Sep  5 13:32:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42793         * test/runner.rb: arguments should be keys.
42795 Fri Sep  5 12:09:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42797         * test/ruby/test_system.rb (test_system): check existence of ruby
42798           interpreter.
42800 Fri Sep  5 11:32:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42802         * lib/optparse.rb (--version): fix assignment/reference order.
42804         * lib/optparse.rb (OptionParser#help): new; OptionParser#to_s may
42805           be deprecated in future.
42807         * lib/optparse/version.rb (OptionParser#show_version): hide Object.
42809         * test/runner.rb: fix optparse usage.
42811         * test/runner.rb: glob all testsuits if no tests given.
42813 Fri Sep  5 10:42:58 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42815         * test/runner.rb: added.  gets testcases from command line and runs it.
42817         * test/ruby/test_gc.rb: remove useless part which was for dumping test
42818           result.
42820 Fri Sep  5 09:28:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42822         * test/ruby/test_gc.rb: added.  splitter.rb which I made to split
42823           sample/test.rb into test/ruby/test_* kindly removed GC test (the
42824           last section in the original test) to reduce things to be worried.
42826 Fri Sep  5 03:00:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42828         * test/ruby/test_iterator.rb (test_block_in_arg): add no block
42829           given tests.
42831         * test/ruby/test_iterator.rb (test_ljump): uncomment LocalJumpError
42832           test.
42834 Fri Sep  5 01:10:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42836         * test/ruby: tests for ruby itself.
42838         * test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases.
42839           some tests could not be translates...  search '!!' mark to see it.
42841         * test/csv/test_csv.rb: should require 'csv', not '../lib/csv'.  test
42842           runner should set load path correctly.
42844 Fri Sep  5 01:03:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42846         * test/csv/test_csv.rb: close opened files for CSV::IOBuf explicitly.
42847           opened file cannot be removed under win32 box.
42849 Thu Sep  4 23:59:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42851         * parse.y (tokadd_string): newlines have no special meanings in
42852           %w/%W, otherwise they are ignored only when interpolation is
42853           enabled.  [ruby-dev:21325]
42855 Thu Sep  4 19:38:25 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42857         * ext/io/wait/.cvsignore: added.
42859         * ext/openssl/.cvsignore: added.
42861 Thu Sep  4 19:28:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42863         * sample/openssl: added.  Sample of standard distribution library
42864           should be locate in sample/{module_name}/*.
42866         * ext/openssl/sample/*: removed.  move to sample/openssl/*.
42868 Thu Sep  4 18:02:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42870         * test/csv/test_csv.rb: use remove_const to reduce warnings.  use
42871           Dir.tmpdir to locate working files.
42873 Thu Sep  4 17:41:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42875         * misc/ruby-mode.el (ruby-here-doc-beg-re): underscore also is
42876           valid delimiter.
42878         * misc/ruby-mode.el (ruby-here-doc-end-match): must quote
42879           arbitrary string to use as regexp.
42881         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): must not
42882           call `ruby-here-doc-end-match' unless `ruby-here-doc-beg-re'
42883           matched.
42885 Thu Sep  4 15:40:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42887         * test/csv/test_csv.rb: run on test/unit original layer.
42889 Thu Sep  4 12:54:50 2003  why the lucky stiff  <why@ruby-lang.org>
42891         * ext/syck/token.c: headerless documents with root-level spacing now
42892           honored.
42894 Thu Sep  4 00:06:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42896         * eval.c (mark_frame_adj): need to adjust argv pointer if using
42897           system's alloca. [ruby-core:01503]
42899 Wed Sep  3 21:33:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42901         * test: add test directory.  Test::Unit aware testcases and needed
42902           files should be located in this directory.  dir/file name convention;
42903             test/{module_name}/test_{testcase_name}.rb
42904             test/{module_name}/{needed_files}
42905           someday, someone will write testrunner which searches test_*.rb and
42906           run testcases automatically.
42908         * test/csv/*: add testcase for lib/csv.rb.
42910 Wed Sep  3 01:37:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42912         * io.c (rb_f_gets): should call next_argv() before type check
42913           current_file. [ruby-list:38336]
42915 Tue Sep  2 20:37:15 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42917         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
42918           for skipping server verification.
42920 Tue Sep  2 23:36:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42922         * eval.c (proc_invoke): should retrieve retval when pcall is true.
42924 Tue Sep  2 14:09:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42926         * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX).
42927           the patch is submitted by nmu <nmu@users.sourceforge.jp>.
42929         * ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on
42930           some platforms.
42932         * ext/socket/getnameinfo.c (getnameinfo): ditto.
42934 Tue Sep  2 14:02:19 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42936         * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
42938         * ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb}:
42939           bug fix and improvement of font control
42941 Tue Sep  2 09:51:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42943         * eval.c (rb_eval): should not handle exceptions within rescue
42944           argument.  [ruby-talk:80804]
42946 Tue Sep  2 00:44:37 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42948         * re.c (rb_memsearch): fix overrun.  [ruby-talk:80759]
42950 Tue Sep  2 00:41:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42952         * ext/iconv/iconv.c (map_charset): use lower case keys.
42954         * ext/iconv/iconv.c (iconv_fail): just yield error and return the
42955           result if a block is given.
42957         * ext/iconv/iconv.c (iconv_convert): yield error and append the
42958           result if a block is given.
42960         * ext/iconv/charset_alias.rb (charset_alias): optional third
42961           argument.
42963         * ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of
42964           SHIFT_JIS on cygwin.
42966 Mon Sep  1 18:34:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42968         * eval.c (rb_eval): make tail recursion in ELSE clause of
42969           RESCUE a jump.
42971 Mon Sep  1 18:00:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
42973         * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
42974           Dave Butcher.
42976         * eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
42977           Decoux in [ruby-talk:80623]
42979 Mon Sep  1 16:59:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42981         * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another
42982           thread termination.
42984         * eval.c (rb_thread_start_0): should not error_print() within
42985           terminated thread, because $stderr used by it might be
42986           overriden now.  [ruby-dev:21280]
42988 Sun Aug 31 22:46:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
42990         * eval.c (TAG_DST()): take no argument.
42992         * process.c (p_gid_sw_ensure): return VALUE.
42994 Sun Aug 31 22:27:10 2003  Hidetoshi NAGAI  <nagai@dumbo.ai.kyutech.ac.jp>
42996         * process.c (p_gid_sw_ensure): lack of function type
42998 Sun Aug 31 12:25:06 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
43000         * lib/optparse.rb: --version takes an optional argument; "all" or
43001           a list of package names.
43003 Sun Aug 31 10:17:02 2003  Tadayoshi Funaba  <tadf@dotrb.org>
43005         * lib/date/format.rb: yyyy/mm is not an acceptable format.
43007         * lib/time.rb: follow above.
43009 Sat Aug 30 14:25:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43011         * eval.c (rb_iter_break): should not call TAG_JUMP directly.
43013 Sat Aug 30 03:58:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43015         * eval.c (struct BLOCK): remove BLOCKTAG, use scope instead.
43017         * eval.c (POP_TAG): no longer propagate retval.  retval is now set
43018           directly by localjump_destination().
43020         * eval.c (localjump_destination): new function to cast
43021           return/break local jump.
43023         * eval.c (rb_yield_0): stop TAG_RETURN/TAG_BREAK escaping.
43025 Fri Aug 29 22:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43027         * bigdecimal.c *.html: The 2nd arg. for add,sub,mult, and div is 0,
43028           then result will be the same as +,-,*,/ respectively.
43030 Fri Aug 29 17:30:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43032         * process.c: bug fix
43034         * process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
43036         * process.c: deny handling IDs during evaluating the block given to
43037           the Process::{UID,GID}.switch method
43039         * ext/tcltklib/tcltklib.c: some methods have no effect if on slave-IP
43041         * ext/tcltklib/tcltklib.c: can create a interpreter without Tk
43043         * ext/tcltklib/tcltklib.c: bug fix on handling exceptions
43045         * ext/tcltklib/MANUAL.euc: modify
43047         * ext/tk/lib/tk.rb: freeze some core modules
43049         * ext/tk/lib/multi-tk.rb: more secure
43051         * ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
43052           Tk's list
43054         * ext/tk/lib/tk.rb: improve accessibility of TkVariable object
43056         * ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
43057           ext/tk/lib/tktext.rb: fix bug of font handling
43059         * ext/tk/lib/tkfont.rb: TkFont.new() accepts compound fonts
43061 Thu Aug 28 22:07:12 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43063         * variable.c (rb_autoload_load): call const_missing if autoloading
43064           constant is not defined to allow hook.
43066         * eval.c (rb_eval): use rb_const_get_from() instead of
43067           rb_const_get_at().
43069         * eval.c (is_defined): forgot to check NODE_COLON3.
43071 Thu Aug 28 17:30:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43073         * variable.c (rb_const_get_0): should check constants defined in
43074           included modules, if klass is Object. [ruby-talk:79302]
43076         * numeric.c (check_uint): check should be done using UINT_MAX, not
43077           INT_MAX. this fix is submitted by Lyle Johnson
43078           <lyle@knology.net> in [ruby-core:01486]
43080 Thu Aug 28 05:02:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43082         * parse.y (singleton): typo fixed (ruby-bugs-ja:PR#562)
43084 Thu Aug 28 02:37:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43086         * eval.c (rb_eval): *a = [1,2] now assigns [[1,2]] to a.
43087           consistent with *a = [1], which set [[1]] to a.
43089         * node.h: merge NODE_RESTARY to NODE_SPLAT.
43091         * parse.y: rules simplified a bit by removing NODE_RESTARY.
43093         * sample/test.rb: updated for new assignment behavior.
43095 Wed Aug 27 22:33:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43097         * error.c (rb_bug): should not use other methods; this function is
43098           not for ordinary use.  [ruby-dev:21259]
43100 Wed Aug 27 15:07:57 2003  Minero Aoki  <aamine@loveruby.net>
43102         * lib/net/smtp.rb (check_response): AUTH CRAM-MD5 returns 334
43103           response. [ruby-list:38279]
43105 Wed Aug 27 05:10:15 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
43107         * win32/win32.c (map_errno): support winsock error.
43109         * win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
43110           kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime):
43111           pass errno to map_errno().
43113         * win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
43114           rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
43115           rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
43116           rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
43117           rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
43118           rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
43119           rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
43120           rb_w32_fclose, rb_w32_close): use map_errno().
43122         * win32/win32.h: add winsock errors.
43124 Tue Aug 26 23:53:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43126         * lib/ostruct.rb (OpenStruct::method_missing): prohibit modifying
43127           frozen OpenStruct. [ruby-talk:80214]
43129 Tue Aug 26 20:03:50 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43131         * lib/mkmf.rb (create_tmpsrc): add the hook for source.
43132           [ruby-list:38122]
43134 Tue Aug 26 15:59:53 2003  why the lucky stiff  <why@ruby-lang.org>
43136         * implicit.c (syck_type_id_to_taguri): corrected detection of
43137           x-private types.
43139 Sun Aug 24 01:02:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43141         * file.c (file_expand_path): performance improvement.
43142           [ruby-talk:79748]
43144 Sat Aug 23 23:41:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43146         * file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for
43147           apparent cases. [ruby-talk:79748]
43149 Sat Aug 23 18:56:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43151         * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just
43152           resize a string, rb_str_cat() disallows NULL.  [ruby-dev:21237]
43154 Sat Aug 23 16:48:41 2003  Keiju Ishitsuka  <keiju@ishitsuka.com>
43156         * lib/irb/ruby-lex.rb: bug fix for "foo" !~ /bar/. [ruby-talk:79942]
43158 Sat Aug 23 15:59:58 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43160         * eval.c (rb_eval, rb_iterate, block_pass): reduce PUSH/POP_TAG and
43161           EXEC_TAG() for retry.  [ruby-dev:21216]
43163 Sat Aug 23 02:32:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43165         * eval.c (rb_yield_splat): should check if "values" is array.
43167         * enum.c (each_with_index_i): typo.
43169 Fri Aug 22 17:07:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43171         * enum.c (inject_i): use rb_yield_values.
43173         * enum.c (each_with_index_i): ditto.
43175         * eval.c (rb_yield_splat): new function to call "yield *values".
43177         * string.c (rb_str_scan): use rb_yield_splat().
43179 Fri Aug 22 06:13:22 2003  why the lucky stiff  <why@ruby-lang.org>
43181         * ext/syck/rubyext.c: refactoring of the transfer method
43182           dispatch.  added yaml_org_handler for faster dispatch of
43183           transfers to base types.
43185         * lib/yaml/rubytypes.rb: removed handling of builtins from
43186           Ruby library.
43188         * ext/syck/token.c: quoted and block scalars are now implicit !str
43190         * ext/syck/implicit.c: empty string detected as !null.
43192 Fri Aug 22 01:00:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43194         * eval.c (block_pass): improve passing current block.
43196 Fri Aug 22 00:13:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43198         * ext/bigdecimal/bigdecimal.c: Int. overflow bug in multiplication
43199           fixed, and VpNmlz() speed up.
43201 Wed Aug 20 16:44:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43203         * ext/socket/socket.c (ruby_connect): many systems seem to have
43204           a problem in select() after EINPROGRESS.  [ruby-list:38080]
43206 Wed Aug 20 01:31:17 2003  why the lucky stiff  <why@ruby-lang.org>
43208         * ext/syck/syck.h: Parser definition problems on HP-UX.
43209           [ruby-talk:79389]
43211         * ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.
43213         * ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.
43215         * ext/syck/rubyext.c: Tainting issues.
43217 Tue Aug 19 23:20:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43219         * ext/bigdecimal/bigdecimal.c .h .html: to_s("+") implemented.
43221         * ext/bigdecimal/lib/bigdecimal/math.rb: E implemented.
43223 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43225         * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
43227         * lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.
43229         * lib/webrick/compat.rb (File::fnmatch): remove old migration code.
43231         * lib/webrick/httpserver.rb (HTTPServer#run): ditto.
43233         * lib/webrick/server.rb (GenericServer#listen): the body of this
43234           method is pull out as Utils::create_lisnteners.
43236         * lib/webrick/utils.rb (Utils::create_lisnteners): new method.
43238         * lib/webrick/server.rb (GenericServer#start): should rescue
43239           unknown errors. and refine comments.
43241         * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
43242           socket if SSLSocket raises error.
43244 Tue Aug 19 11:19:33 2003  Shugo Maeda  <shugo@ruby-lang.org>
43246         * io.c (next_argv): should not call GetOpenFile() if rb_stdout is
43247           not a IO (T_FILE).
43249 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43251         * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
43252           a builtin.
43254         * ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.
43256         * ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
43257           add a return to the tails of each line.
43259         * ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.
43261         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.
43263         * ext/openssl/sample/echo_svr.rb: use SSLServer.
43265         * ext/openssl/sample/echo_cli.rb: add example of SSLSocket#sync_close.
43267 Tue Aug 19 01:24:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43269         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard
43270           headers are inconsistent at this macro.  [ruby-core:01432]
43272         * ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks.
43274         * ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers
43275           winspool.h
43277         * instruby.rb: make list at first instead of iterator.
43278           [ruby-talk:79347]
43280 Mon Aug 18 11:23:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43282         * dir.c (glob_helper): preserve raw order for **.
43284 Sun Aug 17 23:39:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43286         * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
43288 Sun Aug 17 17:10:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43290         * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
43291           method to specify if the underlying IO will be closed in
43292           SSLSocket#close.
43294         * ext/openssl/lib/openssl/buffering.rb: add forwarders to
43295           setsockopt, getsockopt and fcntl.
43297         * ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.
43299 Sun Aug 17 11:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43301         * ext/extmk.rb (extmake): should not force to remake Makefile when
43302           installation and so on.
43304 Sat Aug 16 23:58:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43306         * marshal.c (w_symbol, w_object): get rid of warnings.
43308         * re.c (rb_memsearch): ditto.
43310         * time.c (time_dump): ditto.
43312         * ext/extmk.rb (extmake): not continue making when extconf.rb
43313           failed.
43315         * ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.
43317         * ext/openssl/ossl.h: remove version.h dependency.
43319         * ext/openssl/ruby_missing.h: ditto.
43321         * lib/mkmf.rb (pkg_config): use --libs output except with
43322           only-L for other options.  [ruby-list:38099]
43324         * lib/mkmf.rb (create_makefile): separate rule for static
43325           library from shared object.
43327         * win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
43328           define exec_prefix and libdir.
43330 Fri Aug 15 23:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43332         * ext/bigdecimal/bigdecimal.c .h: Bug in combination of limit & div
43333           method fixed.
43335         * ext/bigdecimal/lib/bigdecimal/math.rb: atan() & sqrt() added.
43337 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43339         * configure.in (HUGE_ST_INO): check whether struct stat.st_ino
43340           is larger than long.  [ruby-dev:21194]
43341           http://www.geocities.co.jp/SiliconValley-PaloAlto/1409/ruby/beos.html
43343         * error.c (syserr_eqq): errno might exceed Fixnum limit.
43345         * error.c (Init_Exception): moved base initialization from
43346           init_syserr().
43348         * inits.c (rb_call_inits): postpone initializing errnos until
43349           Bignum is available.
43351 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43353         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): needed to let
43354           keyname() and so on be declared.
43356         * ext/curses/curses.c (curses_resizeterm, window_resize):
43357           arguments conflicted with macros in term.h.
43359         * ext/curses/curses.c (Curses module methods): ensure
43360           initialized.  [ruby-dev:21191]
43362 Fri Aug 15 02:08:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43364         * gc.c (id2ref): recycle check should be done by klass == 0.
43365           [ruby-core:01408]
43367 Fri Aug 15 01:34:23 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
43369         * ext/openssl/ossl_pkey.c: move generate_cb here
43371         * ext/openssl/ossl_pkey_{dh|dsa|rsa}.c: adapt to this cb
43373         * ext/openssl/openssl_missing.[ch]: add (0.9.6x, x<j) missing BN funcs
43375         * ext/openssl/ossl_bn.c: use supplied funcs from openssl_missing.c
43377 Fri Aug 15 00:38:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43379         * ext/bigdecimal/bigdecimal.c: Bug in div method fixed.
43381         * ext/bigdecimal/lib/bigdecimal/math.rb: Newly added.
43383         * ext/bigdecimal/sample/pi.rb: Changed so as to use math.rb.
43385 Thu Aug 14 21:19:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43387         * eval.c (Init_Thread): Continuation#[] added.  [ruby-talk:79028]
43389 Thu Aug 14 20:03:34 2003  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
43391         * ext/win32ole/win32ole.c (OLE_FREE): should not call
43392           ole_message_loop.
43394         * ext/win32ole/win32ole.c (ole_event_free): ditto.
43396         * ext/win32ole/win32ole.c (ole_initialize): stop calling
43397           OleUninitialize at exit.
43399 Thu Aug 14 11:27:37 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
43401         * gc.c (rb_data_object_alloc): check type of 1st argument.
43402           [ruby-dev:21192]
43404 Thu Aug 14 00:21:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43406         * parse.y (mlhs_node): should allow "::Foo" (colon3) as lhs.
43408         * parse.y (lhs): ditto.
43410         * parse.y (yylex): should return tCOLON3 right after kCLASS.
43411           [ruby-talk:78918]
43413         * error.c (exc_initialize): was converting argument to string too
43414           eagerly.  Only check was needed. [ruby-talk:78958]
43416 Wed Aug 13 23:31:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43418         * ext/bigdecimal/bigdecimal.c .h .html: Ambiguity of
43419           BigDecimal::limit removed.
43421 Wed Aug 13 19:21:34 2003  Christian Neukirchen  <chneukirchen@yahoo.de>
43423         * lib/webrick/https.rb (HTTPServer#run): should set syncing-mode
43424           to SSLSocket. [ruby-talk:78919]
43426 Wed Aug 13 18:13:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43428         * eval.c (POP_BLOCK): turn on BLOCK_LEFT flag when leaving block.
43430         * eval.c (proc_invoke): unpack return/break destination when block
43431           is already left.
43433 Wed Aug 13 15:58:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
43435         * object.c (rb_class_s_alloc): add function prototype to avoid VC++
43436           warning.
43438 Wed Aug 13 13:50:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
43440         * ext/Win32API/Win32API.c (Win32API_initialize): should pass some
43441           class to first argument of Data_Wrap_Struct(). (ruby-bugs:PR#1109)
43443 Tue Aug 12 16:55:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43445         * Makefile.in: static link libraries to LIBRUBY_SO with static linked
43446           ext.  [ruby-dev:21157]
43448         * ext/extmk.rb (extmake): sort extension library initialization order.
43450         * ext/extmk.rb (extmake): compact $extlibs.
43452 Tue Aug 12 02:48:56 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43454         * eval.c (THREAD_SAVE_CONTEXT): should explicitly turn off the
43455           flag before calling getcontext(2).
43457         * eval.c (struct thread): add member to save backing store on
43458           IA64. (ruby-bugs PR1086)
43460         * eval.c (thread_mark): mark IA64 backing store region.
43462         * eval.c (thread_free): free saved IA64 backing store.
43464         * eval.c (rb_thread_save_context): save IA64 backing store as well.
43466         * eval.c (rb_thread_restore_context): restore IA64 backing store.
43468         * eval.c (THREAD_ALLOC): initialize IA64 members.
43470 Mon Aug 11 22:31:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43472         * lib/debug.rb(debug_command): inspection command should inspect
43473           resulting value even if it's nil.  [ruby-dev:21180] by OMAE, jun
43474           <jun66j5@ybb.ne.jp>.
43476         * lib/debug.rb(debug_command): incomplete regexp.
43478 Mon Aug 11 17:33:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43480         * eval.c (rb_call_super): do not use rb_block_given_p() for
43481           check. [ruby-talk:78656]
43483         * eval.c (BEGIN_CALLARGS): push ITER_NOT only when ITER_PRE.
43485 Sun Aug 10 10:43:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43487         * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE
43488           from 1k to 16k bytes. [ruby-talk:78603]
43490         * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable
43491           partial write to allow interruption in SSLSocket#write.
43493 Sun Aug 10 00:34:16 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
43495         * cygwin/GNUmakefile: remove unnecessary '--drive-name=$(CC)'
43496           for ccache.
43498 Sat Aug  9 10:36:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43500         * marshal.c (w_object): do not dump generic instance variable when
43501           marshal_dump is defined.
43503 Sat Aug  9 00:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43505         * ext/bigdecimal.c: F style output(like 1234.56789) implemented
43506           to to_s method.
43507         * ext/bigdecimal_??.html: F style output(like 1234.56789)
43508           implemented to to_s method.
43510 Fri Aug  8 12:33:17 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
43512         * bcc32/Makefile.sub: rubyw.exe should be a Windows GUI program.
43513           add the -aa option to WLDFLAGS.
43515 Fri Aug  8 11:29:26 2003  Koji Arai  <jca02266@nifty.ne.jp>
43517         * marshal.c (w_object): should set `c_arg' at first.
43519 Fri Aug  8 03:22:28 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43521         * lib/webrick/httputils.rb (FormData#list): should not take
43522           a side effect for the receiver.
43524 Thu Aug  7 14:40:37 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
43526         * cygwin/GNUmakefile: better --disbale-shared option support.
43528         * cygwin/GNUmakefile: add forwarding DLL target for cygwin.
43530 Thu Aug  7 14:21:05 2003  Corinna Vinschen  <vinschen@redhat.com>
43532         * configure.in: Fix Cygwin specific naming of libraries to
43533           be net distribution compliant. (ruby-bugs:PR#1077)
43534           cygwin-ruby18.dll -> cygruby18.dll
43536 Thu Aug  7 12:51:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43538         * eval.c (rb_f_at_exit): should not be called without a block.
43539           block_given check added.
43541 Thu Aug  7 06:46:06 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43543         * eval.c (rb_call0): forgot to pop ruby_class.
43545         * eval.c (rb_call0): update ruby_class as well as ruby_cref.
43546           (ruby-bugs-ja:PR#540)
43548 Thu Aug  7 04:52:50 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43550         * eval.c (rb_yield_0): remove ruby_frame->cbase and unify to
43551           ruby_cref.  [ruby-talk:78141]
43553 Thu Aug  7 04:19:15 2003  Akinori MUSHA  <knu@iDaemons.org>
43555         * gc.c: FreeBSD/ia64's mcontext_t is a bit different from that of
43556           Linux/ia64.  This makes gc.c compile but miniruby coredumps for
43557           the moment.
43559 Thu Aug  7 00:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
43561         * ext/bigdecimal.c: Comparison results adjusted to Float's.
43562         * ext/bigdecimal.c: Use rb_num_coerce_????(x,y) instead of own.
43564 Wed Aug  6 22:58:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
43566         * lib/test/unit/testcase.rb: Added equality checking.
43567         * lib/test/unit/testsuite.rb: Added equality checking.
43568         * lib/test/unit/assertions.rb: Fixed a warning.
43570 Wed Aug  6 17:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43572         * ext/extmk.rb (extmake): pass LIBPATH to make ruby.  [ruby-dev:21137]
43574         * ext/extmk.rb (extmake): set library name as source file name in
43575           Init_ext().  [ruby-dev:21137]
43577         * lib/mkmf.rb (Logging::postpone): postpone logging messages after
43578           heading message as the result of the block.
43580         * lib/mkmf.rb (macro_defined?): append newline to src unless ended
43581           with it.
43583         * lib/mkmf.rb (have_library): treat nil function name as "main".
43584           (ruby-bugs:PR#1083)
43586         * lib/mkmf.rb (pkg_config): should append additional libraries to
43587           $libs but not $LIBS.  [ruby-dev:21137]
43589         * ext/io/wait/extconf.rb: check DOSISH macro instead of platform.
43591         * ext/digest/sha1/extconf.rb: have_library already appends library
43592           name.
43594 Wed Aug  6 17:23:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43596         * eval.c: initialize /* OK */ variables by Qnil to stop warnings.
43598 Wed Aug  6 04:58:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
43600         * ext/Setup*: add io/wait and openssl.
43602 Wed Aug  6 01:13:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43604         * eval.c (rb_f_autoload): use ruby_cbase instead of ruby_class.
43606         * eval.c (rb_f_autoload_p): ditto.
43608         * class.c (rb_mod_init_copy): no longer implements independent
43609           clone and dup methods.  override "initialize_copy" instead.
43610           [ruby-core:01352]
43612         * object.c (rb_class_s_alloc): define Class allocation function.
43613           this makes Classes to follow clone framework that uses
43614           initialize_copy.
43616         * object.c (rb_class_initialize): separate instantiation and
43617           initialization.
43619         * object.c (rb_obj_alloc): prohibit instantiation from
43620           uninitialized class.
43622         * object.c (rb_class_superclass): check uninitialized class.
43624         * array.c (rb_ary_fill): wrong index processing with block.  this
43625           fix was done by Koji Arai <JCA02266@nifty.ne.jp> [ruby-list:38029]
43627         * marshal.c (w_object): should preserve generic ivar for nil,
43628           true, false, symbols, and fixnums.
43630         * marshal.c (w_uclass): base_klass check should be done after
43631           rb_class_real().
43633 Wed Aug  6 01:18:50 2003  Minero Aoki  <aamine@loveruby.net>
43635         * lib/net/http.rb: update document.
43637         * lib/net/pop.rb: ditto.
43639         * lib/net/protocol.rb: ditto.
43641 Wed Aug  6 00:48:37 2003  Koji Arai  <jca02266@nifty.ne.jp>
43643         * marshal.c (w_object): should recommend marshal_dump rather than
43644           _dump_data.
43646 Tue Aug  5 17:58:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
43648         * lib/fileutils.rb (install): should preserve timestamp only.
43650 Tue Aug  5 17:31:59 2003  Ian Macdonald  <ian@caliban.org>
43652         * lib/shell/command-processor.rb (Shell::CommandProcessor::rmdir):
43653           simple typo.
43655 Tue Aug  5 15:47:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43657         * eval.c (rb_load): should preserve current source file/line.
43659 Tue Aug  5 10:04:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43661         * string.c (str_new4): ptr may refer null_str.
43663 Mon Aug  4 17:25:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
43665         * stable version 1.8.0 released.
43667 For the changes before 1.8.0, see doc/ChangeLog-1.8.0
43669 Local variables:
43670 add-log-time-format: (lambda ()
43671   (let* ((time (current-time))
43672          (system-time-locale "C")
43673          (diff (+ (cadr time) 32400))
43674          (lo (% diff 65536))
43675          (hi (+ (car time) (/ diff 65536))))
43676   (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
43677 indent-tabs-mode: t
43678 tab-width: 8
43679 end: