* transcode_data.h (rb_transcoding): add feedlen field.
[ruby-svn.git] / ChangeLog
blob7146e9dadf0683480d50f1f08a00a87cd2da1b49
1 Sun Aug 10 11:15:55 2008  Tanaka Akira  <akr@fsij.org>
3         * transcode_data.h (rb_transcoding): add feedlen field.
5         * transcode.c (transcode_restartable0): renamed from
6           transcode_restartable.
7           save input buffer into feed buffer if next character is started the
8           point before input buffer.  for example, "\x00\xd8\x01" then "\x02"
9           in UTF-16LE.  \x02 causes invalid and next character is started from
10           \x01.
11           (transcode_restartable): new function to call
12           transcode_restartable0.   if feed buffer is not empty, convert it at
13           first.
15 Sun Aug 10 11:02:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17         * common.mk (extconf): use MAKEDIRS.
19 Sun Aug 10 09:35:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21         * lib/irb.rb (IRB::Irb#inspect): instance_variables returns symbols
22           instead of strings now.   [ruby-dev:34930]
24 Sun Aug 10 09:22:14 2008  Tanaka Akira  <akr@fsij.org>
26         * transcode.c (transcode_char_start): refactored to remove readlen
27           argument.
28           (transcode_restartable): refactored to remove readlen variable.
30 Sun Aug 10 08:56:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32         * gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
33           [ruby-core:18207]
35         * configure.in (rb_cv_missing__dtos18, rb_cv_missing_fconvert),
36           ext/digest/md5/md5.c, ext/openssl/ossl.c (main),
37           ext/socket/extconf.rb (ipv6, wide-getaddrinfo): main should be int.
39         * main.c (main), win32/winmain.c, wince/wincemain.c (WinMain): envp is
40           no longer used so long time.  based on a patch from Peter Bowen at
41           [ruby-core:18208]
43 Sat Aug  9 22:05:29 2008  Tanaka Akira  <akr@fsij.org>
45         * transcode.c (transcode_loop): take destination and resize function
46           as parameters.
47           (more_output_buffer): ditto.
48           (str_transcoding_resize): argument changed from rb_transcoding* to
49           VALUE.
50           (str_transcode): call transcode_loop with destination string and its
51           resize function.
53         * transcode_data.h (rb_transcoding): move ruby_string_dest and
54           flush_func to transcode_loop parameters.
56 Sat Aug  9 21:29:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
58         * common.mk: encs depend on transdb.h
60 Sat Aug  9 21:10:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
62         * configure.in (rb_cv_rshift_sign, rb_cv_binary_elf): get rid of
63           AC_TRY_RUN.
65 Sat Aug  9 16:33:21 2008  Tanaka Akira  <akr@fsij.org>
67         * transcode_data.h (rb_transcoding): new fields: next_info and next_byte.
69         * transcode.c (transcode_restartable): save/restore next_info and
70           next_byte.
71           sync readlen and in_p when invalid.
73 Sat Aug  9 15:10:15 2008  Tanaka Akira  <akr@fsij.org>
75         * transcode.c (transcode_restartable): my_transcoder argument removed.
76           (transcode_loop): my_transcoder argument removed.
78 Sat Aug  9 14:39:34 2008  Tanaka Akira  <akr@fsij.org>
80         * transcode_data.h (rb_transcoding): add fields for restartable
81           transcoding.
82           (rb_transcoder): add max_input field.
83           from_unit_length field is renamed to input_unit_length.
85         * tool/transcode-tblgen.rb: generate max_input field.
87         * enc/trans/iso2022.erb.c: follow rb_transcoder change.
89         * enc/trans/utf_16_32.erb.c: ditto.
91         * transcode.c (PARTIAL_INPUT): new constant.
92           (transcode_char_start): new function.
93           (transcode_result_t): new type.
94           (transcode_restartable): new function.
95           (more_output_buffer): new function.
96           (transcode_loop): use transcode_restartable.
98 Sat Aug  9 13:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
100         * stable/ext/socket/socket.c (NI_MAXHOST, NI_MAXSERV): fixed invalid
101           preprocessor directives.  a patch from Peter Bowen at
102           [ruby-core:18211].
104 Sat Aug  9 06:37:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
106         * enc/make_encdb.rb, enc/trans/make_transdb.rb: skip nonexistent
107           directory.  [ruby-dev:35802]
109 Sat Aug  9 01:07:51 2008  Tanaka Akira  <akr@fsij.org>
111         * enc/trans/utf_16_32.erb.c (fun_so_from_utf_32le): implemented.
112           (fun_so_to_utf_32le): implemented.
113           [ruby-dev:35777]
115 Sat Aug  9 00:42:33 2008  Tanaka Akira  <akr@fsij.org>
117         * transcode_data.h (rb_transcoder): from_unit_length field added.
118           from_utf8 field removed.
120         * tool/transcode-tblgen.rb: generate offsets range.
121           follow rb_transcoder change.
123         * transcode.c (transcode_loop): don't use from_utf8.
124           make invalid region from_unit_length wise.
126         * enc/trans/iso2022.erb.c: follow rb_transcoder and
127           transcode_generate_node change.
129         * enc/trans/utf_16_32.erb.c: follow rb_transcoder and
130           transcode_generate_node change.
131           explicit :invalid map removed.
133 Fri Aug  8 23:29:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
135         * enc/depend (TRANSCSRCS): needs rule_subst to apply.
137         * io.c (shutdown): not define if defined already.
139 Fri Aug  8 22:47:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
141         * vm_insnhelper.c (opt_eq_func): large function to make inline.
143         * bcc32/Makefile.sub (config.h): cannot compile a big inline function.
145 Fri Aug  8 21:09:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
147         * common.mk (enk.mk): give not RUBY but MINIRUBY.
149 Fri Aug  8 17:03:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
151         * configure.in (shutdown, sched_yield, pthread_attr_setinheritsched):
152           check for Haiku.
154         * eval_intern.h, io.c, thread_pthread.c: use autoconfisticated results.
156 Fri Aug  8 16:52:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
158         * common.mk (enc.mk): mkmf.rb requires rbconfig.rb.
160         * common.mk (srcs-enc): renamed from transcodes.
162         * enc/Makefile.in (make-workdir): creates object directories.
164         * common.mk (encdb.h): see both $(srcdir)/enc and enc.
166         * enc/make_encdb.rb: ditto.
168         * enc/trans/make_transdb.rb: fix for the case no transdirs are given.
170         * enc/trans/make_transdb.rb: converts only one transcoders for each
171           basename.
173 Fri Aug  8 10:53:52 2008  Tanaka Akira  <akr@fsij.org>
175         * lib/resolv.rb: randomize source port and transaction id.
176           CVE-2008-1447.
178         * lib/resolv-replace.rb (UDPSocket#bind): don't resolv host if host is
179           "".
181 Fri Aug  8 04:20:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
183         * common.mk: see both $(srcdir)/enc/trans and enc/trans.
185         * enc/trans/make_transdb.rb: ditto.
187 Fri Aug  8 00:05:02 2008  TAKAO Kouji  <kouji@takao7.net>
189         * ext/.document: added readline/readline.c.
191         * ext/readline/readline.c: changed Copyright. added RDoc.
192         
193         * ext/readline/README.ja: fixed typo.
195         * ext/readline/README: contents was moved RDoc.
197 Thu Aug  7 23:43:11 2008  Tanaka Akira  <akr@fsij.org>
199         * transcode_data.h (rb_transcoding): new field "stateful".
200           (rb_transcoder): preprocessor and postprocessor field removed.
201           change arguments of func_ii, func_si, func_io and func_so.
202           new field "finish_func".
204         * tool/transcode-tblgen.rb: make FUNii, FUNsi and FUNio
205           generatable.
207         * transcode.c (transcoder_lib_table): removed.
208           (transcoder_table): change structure.
209           (transcoder_key): removed because the above structure change.
210           (make_transcoder_entry): new function.
211           (get_transcoder_entry): ditto.
212           (rb_register_transcoder): follow the structure change.
213           (declare_transcoder): ditto.
214           (transcode_search_path): new function for breadth first search to
215           find a list of converters.
216           (transcode_search_path_i): new function.
217           (transcode_dispatch_cb): ditto.
218           (transcode_dispatch): use transcode_search_path.
219           (transcode_loop): follow the argument change.
220           (str_transcode): preprocessor and postprocessor stuff removed.
222         * enc/trans/iso2022.erb.c: new file.  ISO-2022-JP conversion
223           re-implemented.
225         * enc/trans/japanese.erb.c: ISO-2022-JP stuff removed.
227         * enc/trans/utf_16_32.erb.c: follow argument change of FUNso.
229         [ruby-dev:35798]
231 Thu Aug  7 22:55:44 2008  TAKAO Kouji  <kouji@takao7.net>
233         * ext/readline/README.ja: updated API document for Readline module.
235 Thu Aug  7 20:52:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
237         * lib/net/ftp.rb (login): raise FTPReplyError if passwd or acct
238           is not supplied.  fixed [ruby-core:18058].
240 Thu Aug  7 18:01:44 2008  Akinori MUSHA  <knu@iDaemons.org>
242         * misc/ruby-mode.el (ruby-imenu-create-index-in-block): Fix the
243           regexp to only pick definition lines properly.  `module_funtion'
244           is not a definition of a module named `_function'.
246 Thu Aug  7 17:47:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
248         * enc/depend: add transdb.c.
250 Thu Aug  7 16:28:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
252         * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
253           use miniruby.
255 Thu Aug  7 14:17:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
257         * enc/depend: removed needless explicit commands.
259         * lib/mkmf.rb, {bcc32,win32}/Makefile.sub (CLEANLIBS, CLEANOBJS):
260           moved clean targets to platfrom makefiles.
262 Thu Aug  7 13:12:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
264         * ext/socket/getaddrinfo.c (gai_strerror): ignore only on Haiku.
265           a patch from <zn at mbf.nifty.com>, [ruby-dev:35796].
267 Thu Aug  7 06:31:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
269         * test/ruby/process.rb (test_popen_fork): skip a test which is
270           freeze in FreeBSD.
272 Thu Aug  7 06:05:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
274         * config.guess: add powerpc-apple-haiku, i586-pc-haiku.
275           see [ruby-core:18110]
277 Thu Aug  7 05:51:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
279         * eval_intern.h: Add support to Haiku. see [ruby-core:18110]
281         * include/ruby/defines.h: ditto.
283         * configure.in: ditto.
285         * thread_pthread.c: ditto.
287         * io.c: ditto.
289         * lib/mkmf.rb: ditto.
291         * ext/socket/getaddrinfo.c: ditto.
293         * ext/socket/extconf.rb: ditto.
295         * ext/socket/socket.c: ditto.
297         * ext/socket/addrinfo.h: ditto.
299         * ext/socket/getnameinfo.c: ditto.
301 Thu Aug  7 05:43:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
303         * common.mk: mkdir enc/trans before build tables.
305 Thu Aug  7 05:18:30 2008  NARUSE, Yui  <naruse@ruby-lang.org>
307         * enc/depend: enc/*.c is source but enc/trans/*.c is generated.
309 Thu Aug  7 05:14:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
311         * regenc.c (code_to_mbc): raise RangeError Integer#chr
312           when more than 255 is given with single byte encoding.
313           [ruby-dev:35789]
315 Thu Aug  7 05:06:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
317         * gc.c (run_final): runs finalizers with the object terminated.
319         * gc.c (rb_gc_call_finalizer_at_exit): keeps finalized objects from
320           linking to freelist.
322 Thu Aug  7 04:43:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
324         * enc/depend: for build in other than srcdir.
326 Wed Aug  6 22:40:48 2008  Tanaka Akira  <akr@fsij.org>
328         * tool/transcode-tblgen.rb (transcode_generate_node): code
329           argument removed.
331 Wed Aug  6 21:25:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
333         * gc.c (chain_finalized_object): deletes finalizers to be invoked from
334           finalizer_table.
336         * gc.c (rb_gc_call_finalizer_at_exit): warns when could not invoke
337           finalizers.
339 Wed Aug  6 20:56:43 2008  Tanaka Akira  <akr@fsij.org>
341         * enc/depend: transcode table generation depends on
342           tool/transcode-tblgen.rb.
344 Wed Aug  6 20:48:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
346         * gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
347           cannot be invoked.  [ruby-dev:35681]
349 Wed Aug  6 20:44:41 2008  Tanaka Akira  <akr@fsij.org>
351         * tool/transcode-tblgen.rb: distinguish UNDEF and INVALID.
352           [ruby-dev:35709]
354         * transcode.c (transcode_loop): don't need rb_enc_mbclen now.
356 Wed Aug  6 14:40:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
358         * common.mk (transdb.h): requires transcoders.
360         * enc/depend (srcs): target for transcoders.
362 Wed Aug  6 14:04:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
364         * enc/depend: replace not only $(<:...) but also $<.
366 Wed Aug  6 13:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
368         * win32/Makefile.sub (config.status): export BASERUBY.
370         * enc/depend: avoid GNU make'ism.
372 Wed Aug  6 07:59:02 2008  Tanaka Akira  <akr@fsij.org>
374         * tool/transcode-tblgen.rb (ActionMap#eql?): use == to compare @map.
376 Wed Aug  6 07:45:26 2008  Tanaka Akira  <akr@fsij.org>
378         * tool/transcode-tblgen.rb: show generating tables in verbose mode.
379           (transcode_generate_node): call ActionMap#generate_node with showing
380           table name.
381         
382         * enc/trans/utf_16_32.erb.c: use transcode_generate_node.
384 Wed Aug  6 06:55:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
386         * thread.c (thread_start_func_2): propagates fatal error and system
387           exit to the main thread.
389 Wed Aug  6 05:31:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
391         * encoding.c (rb_to_encoding_index, rb_to_encoding): check if the name
392           is ascii compatible as well as Encoding.find.
394         * transcode.c (str_encode): no need to duplicate first.
396 Wed Aug  6 05:08:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
398         * array.c (rb_ary_sort_bang): reset to real class.
400         * file.c (rb_find_file_ext, rb_find_file): ditto.
402         * io.c (io_reopen): ditto.
404 Wed Aug  6 03:56:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
406         * common.mk (transcodes), tool/build-transcode: generates transcode
407           sources.
409         * enc/trans/{japanese,korean,single_byte,utf_16_32}.c: to be
410           autogenerated now.
412         * enc/depend: added rules for .c from .erb.c.
414 Tue Aug  5 20:46:20 2008  Tanaka Akira  <akr@fsij.org>
416         * tool/build-transcode: new file.
418         * tool/transcode-tblgen.rb: new file.
420         * enc/trans/make_transdb.rb: exclude *.erb.c.
422         * enc/depend: exclude *.erb.c.
424         * enc/trans/utf_16_32.erb.c: new file.
426         * enc/trans/single_byte.erb.c: new file.
428         * enc/trans/japanese.erb.c: new file.
430         * enc/trans/korean.erb.c: new file.
432         * enc/trans/iso-8859-2-tbl.rb: new file.
434         * enc/trans/iso-8859-3-tbl.rb: new file.
436         * enc/trans/iso-8859-4-tbl.rb: new file.
438         * enc/trans/iso-8859-5-tbl.rb: new file.
440         * enc/trans/iso-8859-6-tbl.rb: new file.
442         * enc/trans/iso-8859-7-tbl.rb: new file.
444         * enc/trans/iso-8859-8-tbl.rb: new file.
446         * enc/trans/iso-8859-9-tbl.rb: new file.
448         * enc/trans/iso-8859-10-tbl.rb: new file.
450         * enc/trans/iso-8859-11-tbl.rb: new file.
452         * enc/trans/iso-8859-13-tbl.rb: new file.
454         * enc/trans/iso-8859-14-tbl.rb: new file.
456         * enc/trans/iso-8859-15-tbl.rb: new file.
458         * enc/trans/eucjp-tbl.rb: new file.
460         * enc/trans/sjis-tbl.rb: new file.
462         * enc/trans/euckr-tbl.rb: new file.
464         * enc/trans/utf_16_32.c: regenerated.
466         * enc/trans/single_byte.c: regenerated.
468         * enc/trans/japanese.c: regenerated.
470         * enc/trans/korean.c: regenerated.
472         [ruby-dev:35730]
474 Tue Aug  5 18:02:53 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
476         * test/io/nonblock/test_flush.rb (TestIONonblock#test_flush):
477           rescue some exceptions. [ruby-dev:35638]
479 Tue Aug  5 16:40:06 2008  Shugo Maeda  <shugo@ruby-lang.org>
481         * lib/net/ftp.rb (chdir): handle 5xx errors correctly.
482           fixed [ruby-core:18057].
484 Tue Aug  5 16:38:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
486         * include/ruby/win32.h, bcc32/Makefile.sub (config.h): bcc 5.8 has
487           stdint.h.
489 Tue Aug  5 16:13:05 2008  Shugo Maeda  <shugo@ruby-lang.org>
491         * lib/net/imap.rb (disconnect): do not refer SSL::SSLSocket for
492           environments without OpenSSL. fixed [ruby-dev:35755].
494 Tue Aug  5 14:19:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
496         * file.c (rb_stat_mode): generalized st_mode mask.
498 Tue Aug  5 12:43:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
500         * io.c (retry_sendfile, retry_read): ENOSYS and EWOULDBLOCK are not
501           defined on every platforms.
503 Tue Aug  5 12:34:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
505         * transcode_data.h (TRANSCODE_ERROR): common transcode failure
506           exception, would be changed later.
508         * enc/trans/japanese.c (UNSUPPORTED_MODE): unsupported mode transition
509           exception.
511 Tue Aug  5 03:29:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
513         * array.c (rb_ary_sort_bang): respect overridden <=> for String and
514           Fixnum.  [ruby-core:17708]
516         * include/ruby/node.h (NOEX_BASIC): basic definition method flag.
518         * include/ruby/intern.h, vm_method.c (rb_method_basic_definition_p):
519           new function to check if the method is not redefined after the
520           initialization.
522         * vm_method.c (rb_obj_respond_to): use rb_method_basic_definition_p.
524 Mon Aug  4 20:39:06 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
526         * Makefile.in (update-rubyspec): renamed the rubyspec directory
527           "spec". Changed directory structure.
529         * Makefile.in (test-rubyspec): ditto.
531         * spec/README: described the structure of "spec" directory.
533         * spec/default.mspec: configured for Matz's Ruby Implementation.
535 Mon Aug  4 19:21:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
537         * array.c (rb_ary_tmp_new): added.
539         * vm_eval.c (vm_call_super): fixed typo, and get rid of too large
540           alloca.  [ruby-core:17922]
542 Mon Aug  4 16:48:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
544         * parse.y (deferred_nodes, compstmt, arg, fixup_nodes, range_op): fix
545           up fixnum range literal in conditional as automagical line number
546           comparison.  [ruby-core:12124], [ruby-dev:35731]
548 Mon Aug  4 14:41:25 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
550         * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
551           Masao Takaku <masao at nii.ac.jp>
552           fix [ruby-dev:35489].
554 Mon Aug  4 14:08:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
556         * marshal.c (dump_ensure), process.c (run_exec_dup2),
557           string.c (rb_str_replace), transcode.c (transcode_dispatch): fixed
558           memory leaks.  based on patches from shinichiro.h <shinichiro.hamaji
559           AT gmail.com> at [ruby-dev:35751].
561 Sun Aug  3 19:32:52 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
563         * ext/win32ole/win32ole.c (hash2named_arg): refactoring.
565         * ext/win32ole/win32ole.c (ole_invoke, fole_respond_to, ev_on_event,
566           fev_off_event): accepts Symbol argument.
568         * test/win32ole/test_win32ole.rb: ditto.
570         * test/win32ole/test_win32ole_event.rb: ditto.
572 Sun Aug  3 10:41:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
574         * string.c (rb_str_shared_replace): fixed memory leak.  a patch from
575           shinichiro.h <shinichiro.hamaji AT gmail.com> at [ruby-dev:35742]
577 Sat Aug  2 22:55:41 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
579         * test/win32ole/test_err_in_callback.rb: remove temporary files.
580           some refactoring.
582 Sat Aug  2 15:51:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
584         * parse.y (yylex): 8 and 9 in octal integer should cause compile
585           error.  [ruby-dev:35729]
587 Sat Aug  2 01:06:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
589         * enc/trans/japanese.c: add U+FF5E to EUC-JP.
590           [ruby-dev:35720] [ruby-dev:35722]
592 Fri Aug  1 23:49:44 2008  TAKAO Kouji  <kouji@takao7.net>
594         * ext/readline/extconf.rb: checked to have clear_history in
595           readline library.
596         * ext/readline/readline.c (hist_get, hist_each, Init_readline): 
597           The offset specified for the argument of history_get() might be
598           different in GNU Readline and libedit. If use libedit, it was
599           corrected that the computational method of the offset specified
600           for the argument of history_get() when the Readline module was
601           initialized was decided.
602           (hist_get, hist_set): If use libedit, accesses first an input
603           content in history when specifies the negative offset for the
604           argument of history_get() or replace_history_entry(). Then
605           checks the offset is negative in ruby.
606           (rb_remove_history): When compiling, it corrects it to warning
607           when libedit is used.
608           (hist_clear, Init_readline): added Readline::HISTORY.clear
609           method. [ruby-dev:35551]
610         * test/readline/test_readline_history.rb: added unit test for
611           Readline::HISTORY.
612         
613 Fri Aug  1 23:26:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
615         * transcode.c (transcode_loop): undefined character is replaced with
616           only one character. [ruby-dev:35709]
618 Fri Aug 01 23:26:22 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
620         Merged r16430(akr), r16431(akr), r16433(akr), r16469(nobu), and
621         r17874(akr) from ruby_1_8.
623         * Makefile.in (update-rubyspec): added
625         * Makefile.in (test-rubyspec): added
627 Fri Aug  1 23:16:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
629         * enc/trans/japanese.c: add support for CP51932,
631 Fri Aug  1 22:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
633         * enc/trans/japanese.c: add U+FF0C,
635 Fri Aug  1 21:49:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
637         * test/sdbm/test_sdbm.rb: add some tests.
639 Fri Aug  1 21:36:00 2008  Yusuke Endoh  <mame@tsg.ne.jp>
641         * gc.c (allocate_heaps, assign_heap_slot, rb_newobj_from_heap):
642           reset during_gc before raising NoMemoryError.
644 Fri Aug  1 21:29:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
646         * vm.c (Init_BareVM): check failure of malloc().
648 Fri Aug  1 20:55:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
649         
650         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_offsets): add U+FFF3,
651           U+FFF4, U+FFF5.
653         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_infos): ditto.
655         * enc/trans/japanese.c (to_EUC_JP_EF_BF_infos): added.
657         * enc/trans/japanese.c (to_EUC_JP_EF_BF): added.
659         * enc/trans/japanese.c (to_EUC_JP_EF_infos): change size.
660           [ruby-dev:35714]
662 Fri Aug 01 18:27:15 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
664         * parse.y (parser_yylex): removed an useless conditional, and magic
665           comment are ignored unless at the first of line.
667         * test/ruby/test_m17n.rb (test_magic_comment_vim): added.
669         * test/ruby/test_m17n.rb (test_magic_comment_at_variaous_positions):
670           added.
672 Fri Aug  1 14:54:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
674         * win32/win32.c (rb_w32_seekdir): no need to rewind to seek forward.
676 Fri Aug  1 05:31:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
678         * transcode.c (output_replacement_character):
679           rename from _get_replacement_character.
681         * transcode.c (output_replacement_character):
682           fix replacement on UTF-32{BE,LE}. [ruby-dev:35705]
684         * transcode.c (transcode_loop): ditto.
686         * test/ruby/test_transcode.rb (test_invalid_replace):
687           add for above.
689 Fri Aug  1 01:01:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
691         * proc.c (rb_proc_call_with_block): reduce comparison.
693 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
695         * ext/syck/syck.c (syck_free_parser): fix memory leak by
696           YAML::Syck.compile.
698 Thu Jul 31 22:17:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
700         * ext/bigdecimal/bigdecimal.c (VpMult): prevent memory leak.
702 Thu Jul 31 20:05:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
704         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
705           fix option1 and 3.
707 Thu Jul 31 19:54:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
709         * transcode.c (get_replacement_character): use U+FFFD as replacement
710           character when convert to Unicode.
712         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
713           rename from test_public_review_issue_121.
715         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
716           enable option2.
718 Thu Jul 31 17:00:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
720         * transcode.c (get_replacement_character): fix: invalid byte sequence
721           is always replaced "\x00?".
723 Thu Jul 31 16:37:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
725         * test/rubygems/test_gem_ext_configure_builder.rb
726           (test_self_build_fail): remove extra newline. [ruby-dev:35704]
728 Thu Jul 31 15:11:11 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
730         * test/ruby/test_transcode.rb: added test_shift_jis
731           (contributed by Yoshihiro Kambayashi) and
732           test_public_review_issue_121
733           (see http://www.unicode.org/review/pr-121.html)
735 Thu Jul 31 13:18:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
737         * include/ruby/ruby.h (struct RString): size of ary must be
738           RSTRING_EMBED_LEN_MAX + 1.
740 Thu Jul 31 12:23:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
742         * pack.c (pack_unpack): upper half of hexdigits has never been used.
744 Thu Jul 31 11:31:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
746         * ext/syck/syck.h (ASSERT): fix typo at r18176.
748         * ext/syck/rubyext.c (rb_syck_compile): expression in ASSERT() has no
749           effect unless debug mode.
751 Thu Jul 31 10:51:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
753         * iseq.c (ruby_iseq_disasm_insn): suppress warnings on platforms which
754           int size differs from pointer size.
756         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): ditto
758         * ext/syck/rubyext.c (rb_syck_err_handler),
759           (syck_default_error_handler): ditto.
761 Thu Jul 31 02:21:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
763         * ext/syck/rubyext.c (rb_syck_compile): remove meaningless branch
764           that misleads into thinking that the variable sav may be
765           uninitialized.
767 Thu Jul 31 01:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
769         * thread.c (rb_mutex_unlock_all): mutex is no longer a ruby object.
771 Thu Jul 31 01:18:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
773         * parse.y (magic_comment_encoding): remove meaningless null check.
775 Thu Jul 31 01:09:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
777         * ext/bigdecimal/bigdecimal.c (VpIsRoundMode): fix tautology
778           condition.
780 Thu Jul 31 00:58:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
782         * pack.c (pack_unpack): reduced static variables.
784 Thu Jul 31 00:10:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
786         * proc.c (rb_proc_call_with_block): prevent null reference.
788 Wed Jul 30 22:19:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
790         * parse.y (vtable_free): remove meaningless null check.
792 Wed Jul 30 22:08:25 2008  Tanaka Akira  <akr@fsij.org>
794         * dir.c (struct dir_data): change path field char * to VALUE.
795           (mark_dir): new function for mark path field.
796           (free_dir): follow the path field change.
797           (dir_s_alloc): ditto.
798           (dir_initialize): ditto.
799           (dir_s_open): ditto.
800           (dir_inspect): ditto.
801           (dir_path): return (duplicate of) the path field to preserve
802           encoding.  [ruby-dev:35685]
804 Wed Jul 30 22:06:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
806         * string.c (sym_inspect): remove dead code.
808 Wed Jul 30 21:32:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
810         * ChangeLog: fix wrong method name and add reference.
812 Wed Jul 30 21:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
814         * regparse.c (name_add): fix memory leak.
816 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
818         * regparse.c (parse_exp): fix memory leak at Regexp.new("x{1,1}").
820 Wed Jul 30 17:48:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
822         * win32/win32.c (rb_w32_select): recalc the rest of timeout for each
823           iterations.  [ruby-core:18015]
825 Tue Jul 29 23:37:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
827         * io.c (io_ungetc): raise NotImplementedError when ungetc is called
828           against dummy encoding IO.  [ruby-dev:35686]
830         * io.c (rb_io_getline_1): ditto when gets with delimiter is called.
832         * io.c (io_getc): ditto when getc is called.
834         * test/ruby/test_io_m17n.rb (test_terminator_stateful_conversion,
835           test_getc_stateful_conversion, test_ungetc_stateful_conversion):
836           these tests should raise NotImplementedError.
838 Tue Jul 29 22:55:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
840         * test/ruby/test_io.rb (pipe): run reader thread and writer thread.
842 Tue Jul 29 21:38:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
844         * ext/bigdecimal/bigdecimal.c (Init_bigdecimal): fix typo.
846 Tue Jul 29 21:35:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
848         * test/etc/test_etc.rb (test_passwd): age field may be string under
849           some environments.
851 Tue Jul 29 17:54:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
853         * dir.c (char_casecmp): fix: return 0 if either of characters is NUL.
855 Tue Jul 29 13:17:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
857         * test/etc/test_etc.rb (test_getpwuid): fix for users whose uid is
858           shared. 
860 Tue Jul 29 05:37:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
862         * file.c (rb_find_file_ext, rb_find_file): explicit relative path
863           which starts with "./" or "../" should be searched from cwd
864           instead of load path.  [ruby-dev:35673]
866 Tue Jul 29 02:39:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
868         * math.c (math_atanh): raise EDOM on FreeBSD when atanh(1).
870         * math.c (math_log): ditto.
872         * math.c (math_log2): ditto.
874         * math.c (math_log10): ditto.
876         * test/ruby/test_math.rb: test for above.
878 Tue Jul 29 01:41:15 2008  Tanaka Akira  <akr@fsij.org>
880         * dir.c (struct dir_data): intenc field removed.
881           (dir_s_alloc): intenc initialization removed.
882           (dir_initialize): :internal_encoding option removed.  dirname code
883           conversion removed.
884           (dir_enc_str): code conversion removed.
885           [ruby-dev:35661]
887 Mon Jul 28 21:32:17 2008  Kouhei Sutou  <kou@cozmixng.org>
889         * test/rss/: use PNG instead of zlib as binary data.
891 Mon Jul 28 21:24:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
893         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): reverted
894           r18239 because r18245 made the changes unnecessary.
896         * thread.c (rb_mutex_struct): define after including thread_{pthread,
897           win32}.c.
899 Mon Jul 28 21:00:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
901         * test/ruby/test_require.rb (test_require_too_long_filename):
902           Kernel#require does not use dln_find_file_r (at r18242).
904 Mon Jul 28 20:17:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
906         * vm_core.h: move the definition of struct rb_mutex_struct.
908         * thread.c: ditto.
910 Mon Jul 28 18:58:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
912         * thread.c (mutex_unlock): fix typo.
914 Mon Jul 28 18:15:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
916         * file.c (rb_find_file_ext, rb_find_file): not to split load path with
917           path separator.  [ruby-Bugs-21356]
919 Mon Jul 28 18:14:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
921         * win32/win32.c (overlapped_socket_io, fcntl, rb_w32_close): must not
922           pass a pointer to int which is smaller than st_data_t on mswin64.
924 Mon Jul 28 16:49:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
926         * win32/win32.c (CreateChild, overlapped_socket_io): suppress
927           warnings.
929 Mon Jul 28 16:06:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
931         * win32/win32.c (MAXPATHLEN): define before use.
933 Mon Jul 28 16:01:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
935         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): moved
936           the definitions from .c to .h because rb_thread_cond_struct is used
937           in vm_core.h.
939 Mon Jul 28 14:29:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
941         * dln.c (load_lib): use dln_find_file_r instead of dln_find_file.
943 Mon Jul 28 00:18:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
945         * vm_core.h, thread.c: It is now prohibited to use Data_Get_Struct in
946           *_free against an object that is going to be free'ed.  So, change type
947           of thread_t#keeping_mutexes from VALUE to mutex_t.
949         * vm.c: remove mark to keeping_mutexes.
951 Sun Jul 27 23:32:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
953         * test/openssl/test_ssl.rb (server_loop): rescue Errno::EINVAL and
954           Errno::ECONNABORTED.
956 Sun Jul 27 22:11:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
958         * bootstraptests/method.rb: increase RLIMIT_STACK size to 4M+8Kbytes
959           because FreeBSD fails this less than that.
961 Sun Jul 27 21:45:59 2008  Koichi Sasada  <ko1@atdot.net>
963         * gc.c (gc_mark_children, obj_free): T_DEFERRED should not be appear.
965         * gc.c (gc_sweep, finalize_list): fix to decrement heap_slot#limit
966           after executing finalizer.
968 Sun Jul 27 14:48:37 2008  Koichi Sasada  <ko1@atdot.net>
970         * include/ruby/ruby.h: add a type T_DEFERRED.
972         * gc.c: fix deferred finalizer system.  finalize processes of
973           T_DATA and T_FILE are executed after gc process.
974           And fix to use BUILTIN_TYPE() instead of seeing flag.
976         * thread.c, vm_core.h: add RUBY_VM_SET_FINALIZER_INTERRUPT()
977           and check intterupt_flag at rb_thread_execute_interrupts().
979         * thread.c (mutex_mark): fix to mark next_mutex.
981         * vm.c (rb_thread_mark): fix to mark keeping_mutexes.
983 Sun Jul 27 09:15:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
985         * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
986           versions instead.
988 Sun Jul 27 09:02:32 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
990         * lib/rinda/tuplespace.rb: merged from 1.8.
992         * test/rinda/test_rinda.rb: merged from 1.8.
994 Sat Jul 26 22:45:18 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
996         * sample/exyacc.rb: fixed NoMethodError(Kernel#sub!).
997           replaced use of special variables with explicit IO 
998           operations.
1000 Sat Jul 26 21:17:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1002         * ext/win32ole/win32ole.c (Init_win32ole): add
1003           WIN32OLE_EVENT#handler=, WIN32OLE_EVENT#handler
1005         * test/win32ole/test_win32ole_event.rb: ditto.
1007 Sat Jul 26 07:44:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1009         * ext/win32ole/win32ole.c (add_event_call_back): remove unused 
1010           variable.
1012 Fri Jul 25 23:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1014         * gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
1015           Data.  [ruby-dev:35578]
1017 Fri Jul 25 23:35:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1019         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#split_header_value):
1020           reduce backtrack.  based on a fix by Christian Neukirchen
1021           <chneukirchen AT gmail.com>.
1023 Fri Jul 25 21:55:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1025         * test/ruby/enc/test_koi8.rb: move from test/ruby/test_koi8.rb.
1027 Fri Jul 25 21:09:32 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1029         * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
1030           rescue_callback): refactoring.
1032 Fri Jul 25 20:52:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1034         * test/win32ole/err_in_callback.rb : add test of raising
1035           exception in WIN32OLE_EVENT callback.
1037         * test/win32ole/test_err_in_callback.rb : ditto.
1039 Fri Jul 25 20:43:57 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1041         * ext/win32ole/win32ole.c (Init_win32ole): add
1042           WIN32OLE_EVENT#off_event.
1044         * test/win32ole/test_win32ole_event.rb: ditto.
1046         * test/win32ole/test_win32ole_event.rb: some refactoring.
1048 Fri Jul 25 19:50:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1050         * regint.c (xmalloc, xrealloc, xfree): not to use ruby managed memory.
1052 Fri Jul 25 15:52:40 2008  Koichi Sasada  <ko1@atdot.net>
1054         * vm.c (vm_invoke_proc): skip setting safe_level if
1055           it from bmethod.  This change makes test/ruby/test_proc.rb pass.
1057 Fri Jul 25 10:00:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1059         * test/ruby/test_transcode.rb: refactoring/cleanup of
1060           test_iso_2022_jp(_1)
1062 Fri Jul 25 04:12:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1064         * ext/nkf/nkf.c (rb_nkf_convert): output of mime encode is US-ASCII.
1065           [ruby-list:45257]
1067 Fri Jul 25 02:43:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1069         * sample/coverage.rb: move from lib/coverage.rb because this remains in
1070           an early phase of development.
1072 Fri Jul 25 00:10:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1074         * file.c (rb_find_file_ext, rb_find_file): converts Windows style path
1075           to Cygwin path.  [ruby-dev:35647]
1077 Thu Jul 24 16:30:21 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1079         * win32/win32.c (exit_handler): use st_free_table() to free socklist.
1081         * win32/win32.c (rb_w32_pipe_exec, rb_w32_accept, rb_w32_socket,
1082           rb_w32_socketpair): should check and release fd and sockets/handles
1083           if an error occurs in rb_w32_open_osfhandle().
1085 Thu Jul 24 16:05:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1087         * win32/win32.c (overlapped_socket_io): avoid warnings.
1089         * thread_win32.c (ubf_handle): refactoring.
1091 Thu Jul 24 07:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1093         * ext/win32ole/win32ole.c: got rid of improper casts.
1095 Wed Jul 23 23:19:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1097         * test/socket/test_tcp.rb (test_recvfrom): replace an irrelevant test
1098           for old behavior.
1100 Wed Jul 23 21:38:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1102         * test/ruby/test_marshal.rb: suppress warning during test.
1104 Wed Jul 23 21:35:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1106         * test/ruby/test_dir.rb: suppress warning during test.
1108 Wed Jul 23 18:27:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1110         * ext/tk/{stubs,tcltklib}.c, ext/tk/tkutil/tkutil.c: fix warnings
1111           about constness and signedness.
1113 Wed Jul 23 17:04:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1115         * ext/openssl/openssl_missing.h (d2i_of_void): define for older
1116           versions.  [ruby-dev:35637]
1118 Wed Jul 23 13:53:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1120         * ext/curses/extconf.rb: use try_static_assert.
1122 Wed Jul 23 10:06:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1124         * test/zlib/test_zlib.rb (TestZlibDeflate#test_params): suppress a
1125           finalizer warning.
1127 Wed Jul 23 06:25:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1129         * ext/syck: suppress warnings more.
1131 Wed Jul 23 03:19:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1133         * ext/nkf/nkf-utf8/nkf.c (struct input_code.name, input_codename):
1134           constified.
1136 Wed Jul 23 03:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1138         * ext/syck: suppress warnings.
1140 Wed Jul 23 00:34:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1142         * ext/openssl: suppress warnings.
1144 Tue Jul 22 23:01:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1146         * ext/syck/rubyext.c, ext/syck/yaml2byte.c, ext/syck/emitter.c,
1147           ext/syck/syck.c, ext/syck/handler.c, ext/syck/syck.h: suppress GCC
1148           warning.
1150 Tue Jul 22 20:42:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1152         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): BigDecimal#<=> should
1153           return nil if an argument can't be coerced into BigDecimal.
1155         * ext/bigdecimal/bigdecimal.h, ext/bigdecimal/bigdecimal.c
1156           (VpIsNegDoubleZero, VpItoV): comment out unused functions.
1158 Tue Jul 22 20:33:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1160         * test/rdoc/test_rdoc_parser_ruby.rb (teardown): close tempfile.
1162 Tue Jul 22 19:38:38 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1164         * test/ruby/test_transcode.rb: added two comments
1166 Tue Jul 22 18:08:34 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1168         * README.EXT, README.EXT.ja: mention about FIX2LONG and NUM2LONG.
1169           see [ruby-dev:35197]
1171 Tue Jul 22 17:53:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1173         * compile.c (insn_data_to_s_detail), file.c (rb_stat_inspect),
1174           iseq.c (ruby_iseq_disasm_insn, ruby_iseq_disasm),
1175           process.c (pst_message), re.c (match_inspect): use rb_str_catf.
1177         * dir.c (dir_inspect), iseq.c (iseq_inspect, insn_operand_intern): use
1178           rb_sprintf.
1180         * error.c (rb_name_error, rb_raise, rb_loaderror, rb_fatal): use
1181           rb_vsprintf.
1183 Tue Jul 22 17:20:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1185         * win32/win32.c (init_func): new function to get API's address which
1186           is often used and not supported on all Windows.
1188         * win32/win32.c (overlapped_socket_io): shouldn't use overlapped I/O if
1189           CancelIo() is not supported.
1191 Tue Jul 22 16:47:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1193         * include/ruby/intern.h, sprintf.c (rb_str_catf, rb_str_vcatf): new
1194           functions.  [ruby-dev:35597]
1196         * string.c (rb_str_capacity): new function to return the capacity.
1198 Tue Jul 22 16:08:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1200         * ext/socket/socket.c (connect_blocking, socks_connect_blocking,
1201           ruby_connect): cast.
1203 Tue Jul 22 11:05:08 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1205         * test/ruby/test_dir.rb: use realpath of tmpdir. [ruby-dev:35481]
1207         * test/ruby/test_process.rb: ditto.
1209 Tue Jul 22 09:51:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1211         * misc/ruby-mode.el: fix here-doc strings with inner quotes.  patches
1212           by Nathan Weizenbaum <nex342 AT gmail.com> from [ruby-core:17615]
1213           through [ruby-core:17910].
1215 Tue Jul 22 04:26:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1217         * include/ruby/intern.h (rb_str_buf_new2): optimization for literals.
1219         * string.c (str_buf_cat): returns VALUE.
1221 Tue Jul 22 03:34:01 2008  Eric Hodel  <drbrain@segment7.net>
1223         * lib/rdoc*: Update to RDoc 2.1.0 r112.
1225 Tue Jul 22 02:51:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1227         * include/ruby/intern.h (rb_str_buf_cat2, rb_str_cat2): optimization
1228           for literals.
1230 Tue Jul 22 02:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1232         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): fix the
1233           prototype of rb_vsprintf, and added rb_str_cat2.  [ruby-dev:35622]
1235 Mon Jul 21 17:15:38 2008  Tanaka Akira  <akr@fsij.org>
1237         * encoding.c (rb_filesystem_encoding): use locale encoding on Unix.
1238           [ruby-dev:35617]
1240 Mon Jul 21 15:29:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1242         * missing/vsnprintf.c (struct __sbuf, FILE): use size_t.
1244         * sprintf.c (ruby__sfvwrite): ditto.
1246 Mon Jul 21 13:55:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1248         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): mentioned
1249           rb_sprintf and rb_vsprintf.  [ruby-dev:35611]
1251 Mon Jul 21 10:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1253         * io.c (prepare_getline_args): check if rs is a string when non-nil
1254           lim is given.  [ruby-dev:35610]
1256 Mon Jul 21 04:55:20 2008  Tanaka Akira  <akr@fsij.org>
1258         * dir.c (dir_initialize): use rb_convert_type instead of
1259           rb_check_convert_type to prevent SEGV by Dir.new(".", true).
1260           (dir_initialize): use FilePathValue before rb_enc_get(dirname) to
1261           prevent SEGV by Dir.new(0).
1263 Mon Jul 21 04:42:15 2008  Tanaka Akira  <akr@fsij.org>
1265         * re.c (rb_reg_s_union): useless rb_enc_get call removed to prevent
1266           SEGV by Regexp.union("", nil).
1268 Sun Jul 20 22:50:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1270         * compile.c (iseq_compile_each): NODE_POSTEXE should set each end
1271           procs only once.  [ruby-dev:35596]
1273 Sun Jul 20 16:00:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1275         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): use rb_protect
1276           instead of rb_rescue2. [ruby-dev:35595]
1278 Sun Jul 20 01:23:24 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1280         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
1282         * ext/win32ole/win32ole.c (EVENTSINK_GetIDsOfNames): return
1283           ITypeInfo::GetIDsOfNames().
1285 Sat Jul 19 09:31:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1287         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
1289         * ext/win32ole/win32ole.c: add document of inspect methods.
1291 Sat Jul 19 06:08:43 2008  Eric Hodel  <drbrain@segment7.net>
1293         * lib/rdoc*: Import RDoc r104.  Various make test-all fixes.
1295 Sat Jul 19 00:27:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1297         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): fixed wrong check
1298           about 64bit positive value.
1300 Fri Jul 18 23:23:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1302         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): avoid cfp consistency
1303           error when exception raised in event callback.
1305 Fri Jul 18 14:52:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1307         * win32/win32.c (socklist): table for registering socket options
1308           (currently only O_NONBLOCK).
1310         * win32/win32.c (StartSockets, exit_handler): alloc/free socklist.
1312         * win32/win32.c (is_socket): use socklist.
1314         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
1315           register new socket to socklist.
1317         * win32/win32.c (rb_w32_close): remove closing socket from socklist.
1319         * win32/win32.c (fcntl): register socket options.
1321         * win32/win32.c (overlapped_socket_io): send to/recv from socket with
1322           overlapped operation if the socket is not nonblocking mode.
1323           [experimental]
1325         * win32/win32.c (rb_w32_send, rb_w32_sendto, rb_w32_recv,
1326           rb_w32_recvfrom): use overlapped_socket_io().
1328         * win32/win32.c (open_ifs_socket): set overlapped mode. this is the
1329           default mode of winsock's socket(), so lacking it is an old bug.
1331 Fri Jul 18 09:44:30 2008
1333         * lib/rdoc/*: Import RDoc r101.
1335 Thu Jul 17 23:45:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1337         * test/rdoc/test_rdoc_c_parser.rb (teardown): close tempfile.
1339 Thu Jul 17 21:08:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1341         * test/ruby/test_process.rb (test_getpriority, test_setpriority): use
1342           PRIO_PROCESS instead of PRIO_USER.
1344 Thu Jul 17 20:41:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1346         * pack.c (pack_unpack): fix v and V with big endian.
1347           [1].pack("V").unpack("V") was [4294967296].
1349 Thu Jul 17 20:35:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1351         * pack.c (pack_pack): fix i! with big endian.  [1].pack("i!") was
1352           "\0\0\0\0".
1354 Thu Jul 17 16:48:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1356         * ext/socket/socket.c (ruby_connect): select() for connect() has
1357           mean only when the socket is non-blocking.
1359 Thu Jul 17 10:55:24 2008  Eric Hodel  <drbrain@segment7.net>
1361         * mkconfig.rb: Simplify expression for RDoc.
1363 Thu Jul 17 10:21:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1365         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): strict check.
1366           fixed [ruby-dev:33683]
1368 Thu Jul 17 04:19:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1370         * thread.c (thread_start_func_2): wake up joining threads.
1372         * thread.c (sleep_forever, sleep_timeval): return when interrupted.
1373           [ruby-dev:35542]
1375         * thread.c (timer_thread_function): restore main thread status.
1376           [ruby-core:17270]
1378 Thu Jul 17 01:27:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1380         * io.c (appendline): remove invalid access.
1382 Wed Jul 16 18:04:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1384         * signal.c (signal_exec, trap_handler): trap accepts a string as
1385           command.  [ruby-dev:35533]
1387 Wed Jul 16 00:04:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1389         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): new
1390           method.
1392         * test/ruby/test_argf.rb: use assert_in_out_err instead of
1393           EnvUtil.rubyexec.
1395         * test/ruby/test_module.rb: ditto.
1397         * test/ruby/test_require.rb: ditto.
1399         * test/ruby/test_objectspace.rb: ditto.
1401         * test/ruby/test_object.rb: ditto.
1403         * test/ruby/test_string.rb: ditto.
1405         * test/ruby/test_method.rb: ditto.
1407         * test/ruby/test_variable.rb: ditto.
1409         * test/ruby/test_io.rb: ditto.
1411         * test/ruby/test_rubyoptions.rb: ditto.
1413         * test/ruby/test_exception.rb: ditto.
1415         * test/ruby/test_class.rb: ditto.
1417         * test/ruby/test_thread.rb: ditto.
1419 Tue Jul 15 22:34:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1421         * win32/Makefile.sub (ruby_version): follow changes in configure.in.
1423 Tue Jul 15 21:58:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1425         * ext/tk/{,tkutil/}extconf.rb: ruby/ruby.h no longer needs to be
1426           checked.
1428         * ext/tk/{tcltklib.c,tkutil/tkutil.c}: check macros for each headers.
1430 Tue Jul 15 21:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
1432         * ext/tk/extconf.rb, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: Do
1433           not test ruby/ruby.h, which makes OS X's gcc pick the wrong
1434           header file from Ruby.framework.
1436 Tue Jul 15 21:31:26 2008  Akinori MUSHA  <knu@iDaemons.org>
1438         * configure.in (--with-ruby-version): Add a new option to specify
1439           the ruby version string for version specific directories.
1440           [ruby-dev:35490]
1442         * mkconfig.rb: Definition of ruby_version is now determined by the
1443           configure script.
1445 Tue Jul 15 18:14:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1447         * ext/socket/socket.c (ruby_connect, s_accept): check before readable/
1448           writable by select() instead of wrapping in blocking region.
1450         * ext/socket/socket.c (bsock_send, s_recvfrom, udp_send, unix_send_io,
1451           unix_recv_io): should check readable/writable before calling blocking
1452           functions.
1453           see [ruby-dev:35446]
1455 Tue Jul 15 18:12:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1457         * thread_win32.c (ubf_handle): cancel blocking IO if it can (only
1458           Vista). see [ruby-dev:35446]
1460         * win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.
1462 Mon Jul 14 20:35:21 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1464         * test/win32ole/test_win32ole_event.rb (teardown): fix typo.
1466 Mon Jul 14 18:47:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1468         * transcode.c (transcode_loop): constified.
1470         * transcode.c (str_transcode): rb_str_set_len() sets a delimiter.
1472         * transcode_data.h (rb_transcoder): constified preprocessor and
1473           postprocessor input.
1475         * enc/trans/japanese.c: ditto.
1477 Sun Jul 13 05:37:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1479         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.
1481         * {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added.
1483 Sat Jul 12 23:54:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1485         * win32/Makefile.sub (LIBRUBY_DLDFLAGS): import library which created
1486           with DLL is broken. save import library which created by lib.exe and
1487           install it.
1488           fixed the problem mentioned at the postscript of [ruby-dev:35448]
1490 Sat Jul 12 23:24:21 2008  Tanaka Akira  <akr@fsij.org>
1492         * ext/socket/socket.c: use PRIuSIZE.
1494 Sat Jul 12 22:41:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1496         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): fixed typo.
1498 Sat Jul 12 22:30:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1500         * include/ruby/intern.h (HAVE_RUBY_RUBY_H): defines macros so that
1501           extconf.rb do not need to check if headers exist under separated
1502           directory.  [ruby-dev:35437]
1504         * include/{ruby,rubyio,rubysig}.h, include/ruby/intern.h: use
1505           "ruby/..." instead of <ruby/...>.
1507 Sat Jul 12 22:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1509         * configure.in (sizeof ptrdiff_t): check for size of ptrdiff_t.
1511         * include/ruby/ruby.h (PRI?PTRDIFF, PRI?SIZE): printf conversion
1512           specifiers for ptrdiff_t and size_t/ssize_t.
1514         * insns.def (leave), marshal.c (long_toobig), transcode.c
1515           (str_transcode), vm_dump.c (control_frame_dump, stack_dump_each),
1516           (debug_print_register, debug_print_pre): t and z length modifiers
1517           are C99.
1519 Sat Jul 12 16:02:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1521         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): requires
1522           webrick/cookie.  [ ruby-Bugs-21139 ]
1524 Sat Jul 12 09:25:07 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1526         * test/win32ole/test_win32ole_event.rb: add test
1527           for WIN32OLE_EVENT#on_event_with_outargs
1529         * test/win32ole/test_win32ole_event.rb(teardown): calling
1530           WIN32OLE_EVENT.message_loop
1532 Sat Jul 12 01:54:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1534         * win32/win32.c (rb_w32_select): shoudn't pass non-socket handle to
1535           original select().
1537 Fri Jul 11 23:05:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1539         * test/zlib/test_zlib.rb: add a test for Zlib::Deflate#params.
1541 Fri Jul 11 22:58:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1543         * ext/zlib/zlib.c (rb_deflate_params): flush before deflateParams.
1544           [ruby-core:17675]
1546 Fri Jul 11 22:09:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1548         * win32/setup.rb, win32/Makefile.sub (PLATFORM): use $(PLATFORM)
1549           instead of $(OS) because ENV["OS"] is used in test-all (drb).
1551 Fri Jul 11 20:51:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1553         * io.c (rb_io_wait_readable, rb_io_wait_writable): check if the file
1554           descriptor is closed.
1556         * thread.c (rb_thread_wait_fd_rw): ditto.
1558 Fri Jul 11 16:16:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1560         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
1561           prohibit inheritance of sockets, too. [experimental]
1563 Fri Jul 11 14:39:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1565         * win32/win32.c (CreateChild): the measures for Vista is no longer
1566           unnecessary.
1568 Fri Jul 11 06:16:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1570         * common.mk (process.o): depends on util.h.
1572 Fri Jul 11 05:07:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1574         * include/ruby/win32.h (pipe): prohibit inheritance.
1575           fixed: [ruby-dev:35421]
1577 Fri Jul 11 00:56:46 2008  Koichi Sasada  <ko1@atdot.net>
1579         * thread.c (thread_create_core): fix GC problem.
1580           [ruby-core:17669]
1582 Thu Jul 10 22:06:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1584         * lib/pstore.rb (PStore#transaction): return the result from the
1585           block.  [ruby-core:17718]
1587 Thu Jul 10 21:15:49 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1589         * test/win32ole/test_win32ole_typelib.rb: add some illegal argument
1590           test.
1592         * test/win32ole/test_win32ole_type.rb: ditto.
1594         * test/win32ole/test_win32ole_event.rb: ditto.
1596         * test/win32ole/test_win32ole_param.rb: ditto.
1598         * test/win32ole/test_win32ole_method.rb: ditto.
1600 Thu Jul 10 19:38:35 2008  wanabe  <s.wanabe@gmail.com>
1602         * test/ruby/envutil.rb (assert_normal_exit): r17993 revert.
1604 Thu Jul 10 18:29:41 2008  wanabe  <s.wanabe@gmail.com>
1606         * test/ruby/envutil.rb (assert_normal_exit): finish writing script
1607           before spawn("ruby") to avoid blocking in win32.
1609 Thu Jul 10 17:20:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1611         * win32/win32.c (insert): follow recent changes of globbing.
1613 Thu Jul 10 14:09:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1615         * ext/coverage/coverage.c (rb_coverage_start): return nil.
1617 Thu Jul 10 12:41:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1619         * thread.c (rb_thread_wait_for): fixed variable name.
1621 Thu Jul 10 12:09:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1623         * vm_core.h (rb_thread_t), vm.c (rb_thread_mark), process.c
1624           (rb_last_status_get, rb_last_status_set, rb_last_status_clear):
1625           moved last_status from rb_vm_t.  [ruby-dev:35414]
1627         * vm.c (th_init2): initialize last_status with nil.
1629 Thu Jul 10 12:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1631         * thread.c (rb_thread_wait_for): wait until timed out only when
1632           sleeping with timeout.
1634 Wed Jul  9 22:41:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1636         * thread.c (sleep_timeval): wait until timed out.  [ruby-core:17270]
1638 Wed Jul  9 20:58:16 2008  Tanaka Akira  <akr@fsij.org>
1640         * array.c (rb_ary_fill): don't raise even if length is negative.
1641           [ruby-core:17483], [ruby-core:17661]
1643 Wed Jul  9 20:18:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1645         * configure.in (rb_cv_va_args_macro): check for __VA_ARGS__.
1647         * thread.c (thread_debug): show source name and line if possible.
1649         * thread_{pthread,win32}.c (rb_thread_create_timer_thread): needs more
1650           stack for debug.
1652 Wed Jul  9 11:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1654         * lib/profiler.rb (Profiler__#print_profile): sort in the descending
1655           order of cumulative time.
1657 Wed Jul  9 11:11:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1659         * dir.c (struct glob_args, rb_glob_caller, rb_glob2, push_pattern),
1660           (glob_brace): make consistent prototypes.
1662         * dir.c (push_glob): set enc in the caller of rb_glob_caller as well
1663           as rb_glob2.
1665 Wed Jul  9 09:12:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1667         * ext/nkf/nkf-utf8/nkf.c (options): use input_endian.
1669 Wed Jul  9 01:38:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1671         * string.c (rb_str_succ): alphabets or numerics mutually enclosing
1672           non-alphanumeric characters can carry up.  e.g., "1.999".succ should
1673           be "2.000".
1675 Wed Jul  9 00:12:31 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1677         * thread.c (rb_set_coverages, rb_reset_coverages): enable and disable
1678           coverage measurement.
1680         * thread.c (rb_get_coverages): rename and move from vm.c.
1682         * vm.c (rb_vm_get_coverages): ditto.
1684         * iseq.c (prepare_iseq_build): ditto.
1686         * thread.c (clear_coverage): ditto.
1688         * parse.y (coverage): ditto.
1690         * ext/coverage/coverage.c: use above functions, add new method
1691           Coverage.start and fix rdoc .
1693 Tue Jul  8 23:02:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1695         * ext/win32ole/win32ole.c (find_default_source): bug fix when
1696           OLE object does not have default source interface.
1698         * test/win32ole/test_win32ole_event.rb: ditto.
1700 Tue Jul  8 22:56:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1702         * thread.c (rb_enable_coverages): hide coverage array by setting 0 to
1703           klass during measurement.
1705         * parse.y (coverage, yycompile0): ditto.
1707         * iseq.c (prepare_iseq_build): use rb_hash_lookup instead of
1708           rb_hash_aref.
1710         * thread.c (rb_coverage_result): restore klass of coverage array
1711           and return it.
1713         * theaad.c (update_coverage): chcek whether its klass is 0.
1715 Tue Jul  8 22:28:25 2008  Koichi Sasada  <ko1@atdot.net>
1717         * lib/debug.rb, lib/profile.rb: fix to use RubyVM.
1719         * lib/rdoc/parsers/parse_c.rb: ditto.
1721 Tue Jul  8 21:45:22 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1723         * vm.c (rb_vm_mark): mark the last element of special_exceptions.
1725 Tue Jul  8 19:55:40 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1727         * ext/win32ole/win32ole.c (find_default_source): try to
1728           find COCLASS when WIN32OLE object is not COCLASS.
1730         * test/win32ole/test_win32ole_event.rb: ditto
1732 Tue Jul  8 13:38:22 2008  Koichi Sasada  <ko1@atdot.net>
1734         * compile.h: fix to skip inserting a trace insn.
1736 Tue Jul  8 11:41:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1738         * dir.c: shoudn't use ruby object in globbing, because glob service
1739           routines are called before initializing ruby on some platforms (ex.
1740           windows).
1742 Tue Jul  8 10:08:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1744         * dir.c (Next): use rb_enc_mbclen. [ruby-dev:35390]
1746 Tue Jul  8 07:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1748         * dir.c (Next): use rb_enc_precise_mbclen.
1750 Tue Jul  8 02:27:23 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1752         * dir.c: preserve encoding of strings in glob and fnmatch.
1754         * include/ruby/ruby.h: related changes.
1756 Tue Jul  8 00:22:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1758         * string.c (rb_str_succ): limit carrying in an alphanumeric region if
1759           exists.  [ruby-dev:35094]
1761 Mon Jul  7 20:39:28 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1763         * ext/win32ole/win32ole.c(Init_win32ole): add
1764           WIN32OLE_TYPE#source_ole_types, WIN32OLE_TYPE#default_ole_types,
1765           WIN32OLE_TYPE#default_event_sources.
1767         * test/win32ole/test_win32ole_type.rb: ditto.
1769 Mon Jul  7 19:45:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1771         * test/ruby/test_dir.rb (test_chroot_nodir): add Errno::EPERM.
1773 Mon Jul  7 17:12:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1775         * lib/ipaddr.rb (IPAddr#initialize): get rid of ArgumentError in
1776           IPAddr#to_range.  a patch from okkez <okkez000 AT gmail.com> in
1777           [ruby-dev:35091].
1779 Mon Jul  7 01:24:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1781         * file.c (rb_file_s_extname): fix for file name with spaces.
1782           [ruby-talk:307404]
1784 Mon Jul  7 00:59:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1786         * thread_pthread.c (ruby_init_stack): prior STACK_END_ADDRESS if
1787           found.  [ruby-core:17624]
1789 Sun Jul  6 23:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1791         * ext/socket/socket.c (bsock_send, s_recvfrom, ruby_connect, s_accept),
1792           (udp_send, unix_send_io, unix_recv_io): blocking region support.
1794 Sun Jul  6 18:34:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1796         * test/win32ole/test_win32ole_type.rb (test_initialize): add
1797           more assertions.
1799 Sun Jul  6 10:12:21 2008  Kouhei Sutou  <kou@cozmixng.org>
1801         * lib/test/unit/collector/objectspace.rb
1802           (Test::Unit::Collector::ObjectSpace::NAME): fix a typo.
1804 Sun Jul  6 00:56:51 2008  Tanaka Akira  <akr@fsij.org>
1806         * ext/socket/socket.c (host_str): fix type mismatch in rb_raise
1807           format and argument.
1808           (port_str): ditto.
1809           (unix_recv_io): ditto.
1810           (sock_s_unpack_sockaddr_un): ditto.
1812 Sat Jul  5 23:42:23 2008  Tanaka Akira  <akr@fsij.org>
1814         * include/ruby/ruby.h (NUM2INT): cast to int.
1815           (FIX2INT): ditto.
1816           (NUM2UINT): cast to unsigned int.
1817           (FIX2UINT): ditto.
1819 Sat Jul  5 23:10:41 2008  Tanaka Akira  <akr@fsij.org>
1821         * io.c (rb_pipe): new function for handling EMFILE and ENFILE
1822           error of pipe().
1823           (UPDATE_MAXFD_PIPE): removed.
1824           (pipe_open): use rb_pipe.
1825           (rb_io_s_pipe): ditto.
1827         * process.c (pipe_nocrash): use rb_pipe.
1829         * include/ruby/intern.h (rb_pipe): declared.
1831 Sat Jul  5 22:22:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1833         * thread.c (thread_initialize): NUM2INT() returns int.
1835         * thread.c (timer_thread_function), thread_pthread.c (thread_timer),
1836           thread_win32.c (timer_thread_func), thread_{pthread,win32}.c
1837           (rb_thread_create_timer_thread): passing VM.
1839 Sat Jul  5 20:53:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1841         * test/win32ole/test_word.rb: check word installed.
1843 Sat Jul  5 16:12:54 2008  Narihiro Nakamura  <authorNari@gmail.com>
1845         * gc.c: revert. before lazy sweep.
1847 Sat Jul  5 09:55:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1849         * ext/win32ole/win32ole.c: add WIN32OLE#ole_respond_to?
1851         * test/win32ole/test_win32ole.rb: ditto.
1853 Sat Jul  5 08:48:05 2008  Tanaka Akira  <akr@fsij.org>
1855         * re.c (unescape_nonascii): add has_property argument not to
1856           raise error by /\p{Hiragana}\u{3042}/ in EUC-JP script.
1857           (rb_reg_preprocess): use has_property argument to make regexp
1858           encoding fixed.
1860 Sat Jul  5 08:29:47 2008  Tanaka Akira  <akr@fsij.org>
1862         * re.c (unescape_nonascii): make regexp fixed_encoding if \p is used.
1863           fixed [ruby-core:17279].
1865 Fri Jul  4 23:12:53 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1867         * ext/win32ole/win32ole.c (d2time): fix the bug of VT_DATE
1868           to String conversion when negative value.
1870         * test/win32ole/test_win32ole_variant.rb: ditto.
1872 Fri Jul  4 22:15:29 2008  Tanaka Akira  <akr@fsij.org>
1874         * lib/test/unit/testcase.rb: collect decendants of
1875           Test::Unit::TestCase using inherited.
1877         * lib/test/unit/autorunner.rb: don't use ObjectSpace.each_object.
1879         * lib/test/unit/collector/dir.rb: ditto.
1881         * lib/test/unit/collector/objectspace.rb: ditto.
1883         [ruby-core:17126]
1885 Fri Jul  4 20:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1887         * include/ruby/oniguruma.h (OnigEncoding): removed auxiliary_data.
1889         * include/ruby/encoding.h (ENC_DUMMY_P): moved dummy encoding flag to
1890           rb_encoding from Encoding instance.
1892         * encoding.c (rb_encoding_list): list of Encoding instances.
1894         * encoding.c (struct rb_encoding_entry): moved base encoding from
1895           instance variable.
1897 Fri Jul  4 17:51:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1899         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): proper check.
1901 Fri Jul  4 14:17:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1903         * lib/net/ftp.rb (Net::FTP#sendport): use divmod.  [ruby-core:17557]
1905 Fri Jul  4 11:08:37 2008  Narihiro Nakamura  <authorNari@gmail.com>
1907         * gc.c (garbage_collect_force): sweep is completely ended.
1909         * gc.c (os_obj_of): invoke garbage_collect_force() when freelist none.
1911 Fri Jul  4 05:01:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1913         * numeric.c (rb_num2uint, rb_fix2uint): typo.
1915 Fri Jul  4 02:21:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1917         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): also needs checking
1918           negative value. see [ruby-dev:33683]
1920 Thu Jul  3 23:26:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1922         * include/ruby/intern.h: remove prototypes about coverage.
1924         * iseq.c (prepare_iseq_build): add prototype.
1926         * parse.y (coverage): ditto.
1928         * thread.c (clear_coverage): ditto.
1930         * thread.c (update_coverage): use rb_sourceline.
1932         * thread.c (rb_get_coverages): rename and move to vm.c.
1934         * vm.c (rb_vm_get_coverages): ditto.
1936         * ext/coverage/coverage.c: add rdoc.
1938 Thu Jul  3 21:51:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1940         * ext/coverage/coverage.c, ext/coverage/extconf.rb: eliminate
1941           COVERAGE__ and introduce coverage.so instead.  How to measure
1942           coverage: (1) require "coverage.so", (2) require or load Ruby source
1943           file, and (3) Coverage.result will return the same hash as COVERAGE__.
1944           [ruby-dev:35324]
1946         * thread.c (rb_enable_coverages): start coverage measurement by using
1947           rb_add_event_hook.
1949         * thread.c (rb_get_coverages): returns current results of coverage
1950           measurement.
1952         * include/ruby/intern.h: add prototype for above two functions.
1954         * vm_core.h, vm.c: add field of coverages to rb_vm_t.
1956         * insns.def (trace): remove special handling for COVERAGE__.
1958         * iseq.c (prepare_iseq_build): switch COVERAGE__ to
1959           rb_get_coverages().
1961         * parse.y (coverage): ditto.
1963         * thread.c (clear_coverage): ditto.
1965         * lib/coverage.rb: use coverage.so instead of COVERAGE__.
1967 Thu Jul  3 21:20:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1969         * thread.c (thread_initialize): NUM2INT returns long.
1971 Thu Jul  3 21:06:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1973         * eval.c (Init_eval): typo fixed in r17833.
1975 Thu Jul  3 19:44:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1977         * ext/win32ole/win32ole.c (Init_win32ole): remove duplicate line.
1979 Thu Jul  3 16:08:36 2008  Tanaka Akira  <akr@fsij.org>
1981         * configure.in (erfc): erfc of glibc comes with Debian GNU/Linux Etch
1982           on IA64 is broken.  erfc(10000.0) aborts.
1983           use missing/erf.c instead.
1984           http://sources.redhat.com/ml/libc-hacker/2005-08/msg00008.html
1986 Thu Jul  3 12:49:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
1988         * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
1989           'localhost.localdomain'.  [ruby-dev:35333]
1991         * lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.
1993 Thu Jul  3 07:06:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1995         * Makefile.in (SET_LC_MESSAGES): LC_MESSAGES must be C.
1997 Thu Jul  3 07:02:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1999         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
2000           messages of preallocated special exceptions also.
2002 Thu Jul  3 04:39:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2004         * gc.c (rb_during_gc): VALUE cache is irrelevant.
2006 Thu Jul  3 01:44:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2008         * regint.h (GET_ALIGNMENT_PAD_SIZE, ALIGNMENT_RIGHT): cast pointer to
2009           uintptr_t instead of unsigned int.
2011 Thu Jul  3 01:23:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2013         * sprintf.c: include ieeefp.h to refer isinf.
2015         * ext/bigdecimal/bigdecimal.c: ditto.
2017         * ext/json/ext/generator/generator.c: ditto.
2019         * rational.c: ditto.
2021 Thu Jul  3 01:01:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2023         * missing/tgamma.c (tgamma): remove unused variable.
2025 Thu Jul  3 00:18:00 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2027         * ext/win32ole/win32ole.c: avoid creating Ruby object during
2028           GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]
2030         * test/win32ole/test_win32ole_event.rb: ditto.
2032 Thu Jul  3 00:09:31 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2034         * gc.c: add rb_during_gc(). based on a patch from arton <artonx AT
2035           yahoo.co.jp> at [ruby-dev:35313].
2037         * include/ruby/intern.h: ditto.
2039 Wed Jul  2 09:49:10 2008  Narihiro Nakamura  <authorNari@gmail.com>
2041         * gc.c (gc_lazy_sweep): use lazy sweep algorithm for response
2042           performance gain.
2044         * gc.c (garbage_collect_force): mark and lazysweep invoke, after
2045           erasing all mark.
2047         * gc.c (GC_NOT_LAZY_SWEEP): not lazy sweep flag. for debug.
2049 Wed Jul  2 03:42:44 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2051         * test/ruby/test_settracefunc.rb: fix expected traces for
2052           RubyVM::FrozenCore's event and r17744.
2054 Wed Jul  2 03:10:41 2008  Koichi Sasada  <ko1@atdot.net>
2056         * compile.h, insns.def: reduce insn operand of "trace".
2058         * include/ruby/ruby.h: add RUBY_EVENT_COVERAGE event.
2060 Wed Jul  2 02:02:34 2008  Koichi Sasada  <ko1@atdot.net>
2062         * proc.c, vm.c: fix to refer next ruby level cfp to make binding.
2064 Wed Jul  2 01:58:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2066         * insns.def (trace): C99ism.
2068 Wed Jul  2 01:53:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2070         * Add coverage measurement constant COVERAGE__.  This constant is not
2071           for casual use.  Usage: (1) assign {} to COVERAGE__, (2) require or
2072           load Ruby source file, and (3) COVERAGE__["sourcefilepath"] will
2073           return an array whose elements represent number of executions per
2074           line of source code.
2076         * vm_core.h: add field of coverage array to iseq.
2078         * iseq.c (prepare_iseq_build): ditto.
2080         * insns.def (trace): update coverage array.
2082         * parse.y (coverage): create and initialize coverage array.
2084         * compile.h (ADD_TRACE): add trace instruction to update covearge
2085           array.
2087         * thread.c (clear_coverage): delete coverage array when forking.
2088           Otherwise, double count of coverage may occur.
2090         * lib/coverage.rb: sample coverage measurement tool.
2092         * error.c: distinguish explicitly between parse_in_eval and
2093           mild_compile_error.
2095         * load.c: ditto.
2097         * vm_eval.c: ditto.
2099 Tue Jul  1 21:32:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2101         * lib/test/unit/ui/console/testrunner.rb: prevent destructive
2102           modification to $0.
2104         * test/rubygems/gemutilities.rb (build_rake_in): move from
2105           test_gem_ext_rake_builder.rb.
2107         * test/rubygems/test_gem_ext_rake_builder.rb: ditto.
2109         * test/rubygems/test_gem_installer.rb: override Gem.ruby and
2110           ENV["rake"].
2112         * test/rubygems/test_gem_uninstaller.rb: ditto.
2115 Tue Jul  1 21:13:17 2008  Koichi Sasada  <ko1@atdot.net>
2117         * compile.c, vm.c, insns.def: call FrozenCore.set_postexe method
2118           instead to use "postexe" insn.
2120         * id.c, id.h: add a prepared id for above.
2122 Tue Jul  1 21:09:58 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2124         * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS,
2125           namely inclusion of ruby.h, because _GNU_SOURCE is now defined
2126           there (if any) and socket.so requires it on Linux systems.
2128 Tue Jul  1 20:55:07 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2130         * eval.c (rb_interrupt): trick to suppress GCC warning.
2132         * sprintf.c (rb_str_format): ditto.
2134 Tue Jul  1 20:44:36 2008  Koichi Sasada  <ko1@atdot.net>
2136         * tool/instruction.rb: RubyVM is not module.
2138 Tue Jul  1 19:31:24 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2140         * ext/digest/digest.c (rb_digest_instance_inspect): constified.
2142         * variable.c (rb_path2class): field precision should have type int.
2144 Tue Jul  1 19:01:00 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2146         * enc/shift_jis.c (code_is_ctype): HALF WIDTH KATAKANA is
2147           a character.
2149 Tue Jul  1 17:56:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2151         * missing/vsnprintf.c (BSD__uqtoa): constified.
2153 Tue Jul  1 17:50:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2155         * enc/make_encdb.h: always add ';' at the end of line.
2157 Tue Jul  1 17:44:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2159         * iseq.c (COMPILE_OPTION_FALSE), time.c (timegm_noleapsecond),
2160           thread.c (eKillSignal, eTerminateSignal),
2161           missing/vsnprintf.c (BSD_vfprintf): constified.
2163 Tue Jul  1 17:37:43 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2165         * enc/ascii.c: ISO C does not allow extra ';' outside of a
2166           function
2168         * enc/us_ascii.c: ditto.
2170         * enc/utf_8.c: ditto.
2172         * enc/big5.c: ditto.
2174         * enc/euc_jp.c: ditto.
2176         * enc/euc_kr.c: ditto.
2178         * enc/euc_tw.c: ditto.
2180         * enc/gb2312.c: ditto.
2182         * enc/gbk.c: ditto.
2184         * enc/iso_8859_1.c: ditto.
2186         * enc/iso_8859_2.c: ditto.
2188         * enc/iso_8859_3.c: ditto.
2190         * enc/iso_8859_4.c: ditto.
2192         * enc/iso_8859_5.c: ditto.
2194         * enc/iso_8859_6.c: ditto.
2196         * enc/iso_8859_7.c: ditto.
2198         * enc/iso_8859_8.c: ditto.
2200         * enc/iso_8859_9.c: ditto.
2202         * enc/iso_8859_10.c: ditto.
2204         * enc/iso_8859_11.c: ditto.
2206         * enc/iso_8859_13.c: ditto.
2208         * enc/iso_8859_14.c: ditto.
2210         * enc/iso_8859_15.c: ditto.
2212         * enc/iso_8859_16.c: ditto.
2214         * enc/koi8_r.c: ditto.
2216         * enc/shift_jis.c: ditto.
2218         * enc/utf_16be.c: ditto.
2220         * enc/utf_32be.c: ditto.
2222         * enc/utf_32le.c: ditto.
2224         * enc/windows_1251.c: ditto.
2226         * process.c (run_exec_rlimit): ISO C90 forbids mixed declarations
2227           and code
2229         * include/ruby/ruby.h (enum ruby_special_consts): ISO C forbids
2230           comma at end of enumerator list
2232         * include/ruby/ruby.h (enum ruby_value_type): ditto.
2234         * eval_intern.h (enum): ditto.
2236         * vm_core.h (enum rb_thread_status): ditto.
2238         * parse.y (enum lex_state_e): ditto.
2240         * parse.y (enum string_type): ditto.
2242         * process.c (enum): ditto.
2244         * ruby.c (enum dump_flag_bits): ditto.
2246         * ruby.c (enum disable_flag_bits): ditto.
2248         * enc/gb18030.c (enum): ditto.
2250 Tue Jul  1 17:21:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2252         * regexec.c (stack_double): use MatchStackLimitSize atomically.
2254         * regparse.c (onig_free_shared_cclass_table): OnigTypeCClassTable
2255           needs atomicity
2257         * regsyntax.c: constified all predefined OnigSyntaxTypes.
2259 Tue Jul  1 16:57:44 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2261         * include/ruby/st.h (struct st_table): type of bit-field
2262           'num_entries' is a GCC extension
2264         * include/ruby/ruby.h (rb_intern): prefix __extnsion__ for
2265           braced-groups within expressions.
2267         * include/ruby/intern.h (rb_usascii_str_new2): ditto.
2269         * include/ruby/intern.h (rb_tainted_str_new2): ditto.
2271         * include/ruby/intern.h (rb_str_new2): ditto.
2273 Tue Jul  1 15:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2275         * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make),
2276           (Gem::Ext::Builder.run): EXIT_SUCCESS may be 0 or may not.
2278         * test/rubygems/test_gem_ext_rake_builder.rb (build_rake_in): override
2279           Gem.ruby and ENV["rake"].
2281         * runruby.rb: bin/rake does not exist in archdir where architecture
2282           depend script (i.e. rbconfig.rb) exists.
2284 Tue Jul  1 13:19:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2286         * array.c (rb_ary_fill): check if beg is too big.
2288 Tue Jul  1 12:01:16 2008  Koichi Sasada  <ko1@atdot.net>
2290         * compile.c, insns.def, vm.c, vm_core.h: remove some insns
2291           (undef, alias, definemethod).
2292           Call RubyVM::FrozenCore's singleton method instead.
2293           Add "putiseq" and "putspecialobject" instructions.
2295         * id.c, id.h: add ids for above.
2297         * tool/parse.rb: "VM" no longer exists.  Use RubyVM instead.
2299 Tue Jul  1 03:28:16 2008  Eric Hodel  <drbrain@segment7.net>
2301         * test/rubygems/test_ext_configure_builder.rb:  Apply locale-free
2302           patch by Yusuke ENDOH.  [ruby-core:17444].
2304         * runruby.rb: Set ENV['rake'].  Patch by Yusuke ENDOH
2305           [ruby-core:17442].
2307 Tue Jul  1 01:07:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2309         * lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
2310           double quotes are allowed.  [ruby-list:45140]
2312 Tue Jul  1 00:59:43 2008  Tanaka Akira  <akr@fsij.org>
2314         * numeric.c (num_coerce): call rb_Float(x) first.  don't depend on
2315           evaluation order of function arguments.
2317 Tue Jul  1 00:49:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2319         * gc.c (rb_newobj): abort GC phase before rb_bug.
2321 Mon Jun 30 23:15:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2323         * test/openssl/test_ssl.rb (start_server): shutdown TCPServer before
2324           close.
2326 Mon Jun 30 23:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2328         * common.mk (RUBY_H_INCLUDES): common headers which are included with
2329           ruby.h together.
2331 Mon Jun 30 22:57:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2333         * test/ruby/test_settracefunc.rb (test_raise): reveal an exception
2334           hided by rescue modifier.
2336 Mon Jun 30 22:49:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2338         * test/ruby/test_array.rb (test_aset): access with too big index
2339           raises not ArgumentError but IndexError now.
2341 Mon Jun 30 22:30:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2343         * lib/test/unit/collector/dir.rb (recursive_collect): r15662 reverted.
2345 Mon Jun 30 22:27:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2347         * ext/stringio/stringio.c (strio_getline): fix for nil and "" as
2348           separator.  [ruby-dev:34591]
2350 Mon Jun 30 22:21:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2352         * io.c (argf_each_line): pass args to each_line. [ruby-dev:34958]
2354 Mon Jun 30 22:12:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2356         * gc.c (chain_finalized_object): should not delete from finalizer
2357           table until run.
2359         * gc.c (rb_gc_call_finalizer_at_exit): deferred_final_list may be
2360           empty first.
2362 Mon Jun 30 18:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2364         * gc.c (gc_finalize_deferred): allow object allocation in finalizers.
2366         * gc.c (rb_gc_call_finalizer_at_exit): ditto.
2368 Mon Jun 30 14:41:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2370         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc when
2371           USE_VALUE_CACHE is not defined (normal case).
2373 Mon Jun 30 10:28:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2375         * ext/syslog/syslog.c (syslog_write): syslog operations should be
2376           protected from $SAFE level 4.  a patch from Keita Yamaguchi
2377           <keita.yamaguchi at gmail.com>.
2379         * ext/syslog/syslog.c (mSyslog_close): ditto.
2381         * ext/syslog/syslog.c (mSyslog_set_mask): ditto.
2383 Mon Jun 30 03:01:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2385         * test/net/http/test_http.rb (_test_request__file): specify encoding
2386           explicitly.
2388         * test/net/http/utils.rb: ditto.
2390 Mon Jun 30 02:31:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2392         * encoding.c (rb_utf8_encindex): defined.
2394         * include/ruby/encoding.h (rb_utf8_encindex): ditto.
2396 Mon Jun 30 02:14:34 2008  Koichi Sasada  <ko1@atdot.net>
2398         * vm.c, vm_core.h,vm_core.h, vm_dump.c, iseq.c: rename class name
2399           VM -> RubyVM, and rename rb_cVM -> rb_cRubyVM.
2400           "VM" is too short name for class.
2402         * test/ruby/test_method.rb, test/ruby/test_settracefunc.rb: ditto.
2404         * include/ruby/ruby.h: rb_cRubyVM, rb_cEnv, rb_cISeq should not be
2405           exposed.
2407 Mon Jun 30 02:10:32 2008  Koichi Sasada  <ko1@atdot.net>
2409         * process.c (Init_process): fix to avoid a warning.
2411 Mon Jun 30 01:52:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2413         * test/ruby/test_parse.rb: remove tests for open_args.
2415 Sun Jun 29 23:01:54 2008  Tanaka Akira  <akr@fsij.org>
2417         * string.c (rb_str_format_m): make tmp volatile to avoid possible GC
2418           problem.
2420 Sun Jun 29 18:01:30 2008  Kouhei Sutou  <kou@cozmixng.org>
2422         * lib/rss/parser.rb, lib/rss/utils.rb: merge documents from ruby_1_8.
2424 Sun Jun 29 17:44:23 2008  Kouhei Sutou  <kou@cozmixng.org>
2426         * lib/rss/parser.rb (RSS::ListenerMixin#known_class): define to
2427           work with ruby 1.8.x too.
2429 Sun Jun 29 17:41:42 2008  Kouhei Sutou  <kou@cozmixng.org>
2431         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#to_feed): raise
2432           exception not return nil if RSS::Maker.make can't get required
2433           information.
2435         * test/rss/rss-assertions.rb: follow the above change.
2437 Sun Jun 29 17:37:23 2008  Kouhei Sutou  <kou@cozmixng.org>
2439         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#make): require block.
2441         * test/rss/test_maker_{0.9,1.0,2.0}.rb: follow the above change.
2443 Sun Jun 29 17:33:34 2008  Kouhei Sutou  <kou@cozmixng.org>
2445         * lib/rss/maker/base.rb, lib/rss/maker/itunes.rb: don't use
2446           instance_eval to initialize variables. (speed up)
2448 Sun Jun 29 17:31:15 2008  Kouhei Sutou  <kou@cozmixng.org>
2450         * lib/rss/rss.rb, test/rss/test_version.rb (RSS::VERSION):
2451           0.2.4 -> 0.2.5.
2453 Sun Jun 29 11:36:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2455         * dir.rb: fix resource leak.
2457 Sun Jun 29 09:43:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2459         * lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
2460           should be clean.  based on a patch from arton <artonx AT
2461           yahoo.co.jp> at [ruby-dev:35269]
2463 Sun Jun 29 07:53:08 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2465         * ext/win32ole/win32ole.c (date2time_str): fix the overflow in
2466           some situation. [ruby-bugs-20793]
2468 Sat Jun 28 21:25:08 2008  Tanaka Akira  <akr@fsij.org>
2470         * include/ruby/ruby.h (struct RRegexp): new field usecnt.  replace
2471           str and len by src.
2473         * gc.c (gc_mark_children): mark src field of regexp.
2474           (obj_free): don't free str field.
2476         * re.c (REG_BUSY): removed.
2477           (rb_reg_initialize): prohibit re-initialize regexp.
2478           (rb_reg_search): use usecnt to prevent freeing regexp currently
2479           using.  this prevents SEGV by:
2480             r = /\A((a.)*(a.)*)*b/
2481             r =~ "ab" + "\xc2\xa1".force_encoding("euc-jp")
2482             t = Thread.new { r =~ "ab"*8 + "\xc2\xa1".force_encoding("utf-8")}
2483             sleep 0.2
2484             r =~ "ab"*8 + "\xc2\xa1".force_encoding("euc-jp")
2486 Sat Jun 28 21:15:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2488         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
2489           rb_usascii_str_new2): use inline versions only for constant
2490           literals.
2492 Sat Jun 28 13:12:06 2008  Tanaka Akira  <akr@fsij.org>
2494         * test/rubygems/test_gem.rb (test_self_path_APPLE_GEM_HOME): don't use
2495           fixed /tmp/apple_gem_home directory.
2497 Sat Jun 28 08:40:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2499         * ext/win32ole/win32ole.c : check String encoding when
2500           converting String to VT_BSTR in OLE.
2502         * test/win32ole/test_win32ole.rb : ditto.
2504 Sat Jun 28 01:08:42 2008  Tanaka Akira  <akr@fsij.org>
2506         * time.c (time_timespec): fix rounding negative float.
2508 Fri Jun 27 21:38:57 2008  Tanaka Akira  <akr@fsij.org>
2510         * struct.c: __size__ removed.  use the length of __members__ instead.
2511           (num_members): new function.
2513 Fri Jun 27 21:19:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2515         * test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
2516           $0.  [ruby-dev:35261]
2518         * lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.
2520 Fri Jun 27 17:45:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2522         * lib/erb.rb: adjust line number for magic comment.
2524         * test/erb/test_erb.rb: add tests for def_method.
2526 Fri Jun 27 14:29:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2528         * parse.y (primary): empty not should call '!' on nil.
2529           cf [ruby-dev:35227]
2531 Fri Jun 27 14:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2533         * vm.c (vm_eval_body): if thrown exception is frozen, reraise it to
2534           create a new instance.
2536 Fri Jun 27 13:29:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2538         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
2539           rb_usascii_str_new2): use with-length versions with strlen to
2540           optimize strlen, if optimized.
2542 Fri Jun 27 12:28:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2544         * lib/un.rb (mkmf): new command to create makefile.
2546 Fri Jun 27 11:06:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2548         * lib/un.rb (wait_writable): added help message.
2550 Fri Jun 27 06:52:54 2008  Koichi Sasada  <ko1@atdot.net>
2552         * configure.in: need a ",".
2554         * process.c (rb_fork): check CANNOT_FORK_WITH_PTHREAD macro.
2556 Fri Jun 27 06:50:56 2008  Koichi Sasada  <ko1@atdot.net>
2558         * vm_eval.c (vm_call_super): fix to call method_missing.
2559           [ruby-core:15719], [ruby-core:17340]
2561 Fri Jun 27 00:00:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2563         * ruby.c (set_arg0, ruby_prog_init): freeze $0.  a patch from Keita
2564           Yamaguchi <keita.yamaguchi at gmail.com>.
2566 Thu Jun 26 23:58:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2568         * string.c (rb_str_index_m, rb_str_rindex_m, rb_str_include): fix
2569           rdoc.
2571 Thu Jun 26 17:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2573         * variable.c (rb_f_trace_var): should not be allowed at safe level 4.  
2574           a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
2576 Thu Jun 26 11:04:30 2008  Eric Hodel  <drbrain@segment7.net>
2578         * lib/rubygems: Update to RubyGems 1.2.0 r1824.  Incorporates patch by
2579           Yusuke ENDOH [ruby-core:17353].
2581 Thu Jun 26 00:48:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2583         * parse.y (primary): not operand might be empty.  [ruby-dev:35227]
2585 Wed Jun 25 21:54:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2587         * parse.y (primary): make functional-style not operator to act
2588           like function.  see <http://d.hatena.ne.jp/ku-ma-me/20080624/p1>.
2590 Wed Jun 25 15:28:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2592         * array.c (rb_ary_fill): not depend on unspecified behavior at integer
2593           overflow.  reported by Vincenzo Iozzo <snagg AT openssl.it>.
2595 Wed Jun 25 13:42:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2597         * lib/erb.rb (ERB::Compiler:Buffer#new): push magic comment first.
2599         * lib/erb.rb (ERB::Compiler#compile): fix for broken input.
2601 Wed Jun 25 12:10:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2603         * lib/erb.rb (ERB::Compiler#compile): magic comment needs LF.
2605 Wed Jun 25 09:31:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2607         * lib/erb.rb (ERB::Compiler#compile): output magic comment.
2609 Tue Jun 24 22:14:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2611         * vm_eval.c (eval_string_with_cref): preserve parse_in_eval even if
2612           exception raised.
2614 Tue Jun 24 22:09:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2616         * ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
2617           [ruby-bugs-20792]
2619 Tue Jun 24 17:20:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2621         * configure.in (rb_cv_fork_with_pthread): check after check for
2622           pthread library, and define the macro when checked only.
2624 Tue Jun 24 17:04:39 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2626         * ext/io/wait/extconf.rb: check sys/socket.h for cygwin.
2628 Tue Jun 24 16:51:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2630         * io.c (io_reopen): remove cygwin handling because it seems to be for
2631           C's stdio.
2632           fixed [ruby-dev:35183]
2634 Tue Jun 24 11:12:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2636         * include/ruby/win32.h, win32/win32.c (rb_w32_getppid): now support
2637           getppid() on win32 (but only Win2k or later).
2639         * process.c (get_ppid): remove win32 special logic.
2641 Tue Jun 24 09:40:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2643         * ext/socket/socket.c (init_sock): socket is binmode on platforms
2644           which support binmode.
2646 Tue Jun 24 00:21:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2648         * compile.c (iseq_build_from_ary): initialize arg_opts, a patch from
2649           Adam Strzelecki <ono@java.pl> in [ruby-core:17220].
2651 Tue Jun 24 00:10:53 2008  wanabe  <s.wanabe@gmail.com>
2652         * compile.c (iseq_build_from_ary): fix expression to obtain 
2653           iseq->local_size and iseq->local_table_size.  [ruby-dev:35205]
2655 Mon Jun 23 11:31:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2657         * lib/mathn.rb (Rational::power2): removed incomplete method.
2658           see [ruby-dev:35195].   [ruby-core:17293]
2660 Sun Jun 22 14:16:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2662         * ext/readline/extconf.rb (have_readline_func): readline on Mac OS X
2663           needs headers to detect some functions.
2665 Sun Jun 22 09:51:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2667         * object.c (rb_class_superclass): rdoc improvement, a patch from
2668           Gaston Ramos <ramos.gaston AT gmail.com> in [ruby-core:17371].
2670 Sun Jun 22 09:22:32 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2672         * README.EXT: translated README.EXT.ja
2674 Sun Jun 22 00:42:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2676         * win32/win32.c (rb_w32_osid, rb_w32_osver, CreateChild): XP is
2677           is different from Vista about pipe handle inheritance.
2678           fixed [ruby-core:17367], reported by Lars Christensen <larsch at
2679           belunktum.dk>
2681 Sun Jun 22 00:38:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2683         * README.EXT.ja: add note about mark and free.
2685 Sun Jun 22 00:01:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2687         * io.c (rb_io_binmode_p, argf_binmode_p, Init_IO): new method
2688           IO#binmode? and ARGF.binmode?  [ruby-dev:35148]
2690 Sat Jun 21 17:33:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2692         * win32/win32.c (rb_w32_spawn): no longer support P_WAIT.
2694 Sat Jun 21 16:46:09 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2696         * thread_win32.c (native_sleep): must block reentrance when accessing
2697           th->unblock.
2698           fixed [ruby-core:17341], reported by Bill Kelly <billk at cts.com>
2700 Sat Jun 21 16:29:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2702         * parse.y (call_args2, open_args): removed.
2704         * parse.y (parser_yylex): unified warnings at space between method
2705           name and argument parenthesis.  [ruby-dev:33943]
2707 Sat Jun 21 16:21:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2709         * numeric.c (flo_round): get rid of overflow.
2711 Sat Jun 21 15:57:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2713         * lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
2714           magic comment.
2716 Sat Jun 21 15:54:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2718         * configure.in: check if fork works with pthread.
2720 Sat Jun 21 15:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2722         * tool/make-snapshot: ported to ruby.
2724         * tool/make-snapshot: fixed digests.
2726 Sat Jun 21 04:36:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2728         * ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian::dfdxi):
2729           typo fixed (raize -> raise).  [ruby-list:45101]
2731         * enumerator.c (enum_each_cons): typo in RDoc fixed.
2733 Sat Jun 21 00:45:34 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2735         * tool/make-snapshot: do not use sha256sum; use BASERUBY instead
2737         * common.mk (dist): use tool/make-snapshot instead
2739 Fri Jun 20 16:34:14 2008  Tanaka Akira  <akr@fsij.org>
2741         * process.c (Init_process): Process::Status#to_int removed.
2742           (PST2INT): defined.
2743           (pst_to_s): use PST2INT.
2744           (pst_inspect): ditto.
2745           (pst_equal): ditto.
2746           (pst_bitand): ditto.
2747           (pst_rshift): ditto.
2748           (pst_wifstopped): ditto.
2749           (pst_wstopsig): ditto.
2750           (pst_wifsignaled): ditto.
2751           (pst_wtermsig): ditto.
2752           (pst_wifexited): ditto.
2753           (pst_wexitstatus): ditto.
2754           (pst_success_p): ditto.
2755           (pst_wcoredump): ditto.
2756           (rb_f_system): ditto.
2758 Fri Jun 20 15:40:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2760         * array.c (rb_ary_store, rb_ary_splice): not depend on unspecified
2761           behavior at integer overflow.
2763         * string.c (str_buf_cat): ditto.
2765 Fri Jun 20 12:39:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2767         * process.c (rb_detach_process): store detached process ID in the
2768           thread local storage.  moved from lib/open3.rb.
2770 Fri Jun 20 11:57:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2772         * string.c (rb_str_sub_bang): should preserve replacement points
2773           since they may be altered in the yielded block.
2775 Fri Jun 20 11:07:56 2008  Tanaka Akira  <akr@fsij.org>
2777         * string.c (rb_memhash): randomize hash to avoid algorithmic
2778           complexity attacks.
2779           (rb_str_hash): use rb_memhash.
2781         * include/ruby/intern.h (rb_reset_random_seed): declared.
2783         * thread.c (rb_thread_atfork): call rb_reset_random_seed.
2785         * inits.c (rb_call_inits): call Init_RandomSeed at first.
2787         * random.c (seed_initialized): defined.
2788           (fill_random_seed): extracted from random_seed.
2789           (make_seed_value): extracted from random_seed.
2790           (rb_f_rand): initialize random seed at first.
2791           (initial_seed): defined.
2792           (Init_RandomSeed): defined.
2793           (Init_RandomSeed2): defined.
2794           (rb_reset_random_seed): defined.
2795           (Init_Random): call Init_RandomSeed2.
2797 Wed Jun 18 21:52:38 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2799         * array.c (ary_new, rb_ary_initialize, rb_ary_store,
2800           rb_ary_splice, rb_ary_times): integer overflows should be
2801           checked. based on patches from Drew Yao <ayao at apple.com>
2802           fixed CVE-2008-2726
2804         * string.c (rb_enc_cr_str_buf_cat): fixed unsafe use of alloca,
2805           which led memory corruption. based on a patch from Drew Yao
2806           <ayao at apple.com> fixed CVE-2008-2726
2808 Fri Jun 20 03:26:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2810         * process.c (rb_f_fork): NetBSD 4.0 or later can fork.
2812 Fri Jun 20 03:19:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2814         * test/testunit/collector/test_dir.rb: r15825 made it unnecessary to
2815           change String to Symbol.
2817         * test/testunit/collector/test_objectspace.rb: ditto.
2819 Fri Jun 20 03:14:31 2008  Eric Hodel  <drbrain@segment7.net>
2821         * lib/rubygems*, test/rubygems/*:  Update to RubyGems 1.1.1 r1784 (pre
2822           1.2).
2824 Fri Jun 20 03:01:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2826         * thread.c: try to remove false positive of deadlock detection (second
2827           trial).
2829 Fri Jun 20 02:16:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2831         * lib/mathn.rb (Rational::power2): typo fixed.  [ruby-core:17293]
2833 Fri Jun 20 02:11:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2835         * string.c (str_gsub): should preserve last successful match
2836           data.  [ruby-dev:35182]
2838 Fri Jun 20 01:07:28 2008  Koichi Sasada  <ko1@atdot.net>
2840         * KNOWNBUGS.rb, bootstraptest/pending.rb: move a bug (?) to pending.
2842 Fri Jun 20 00:40:08 2008  Koichi Sasada  <ko1@atdot.net>
2844         * proc.c (proc_new): fix to return Proc object if block is already
2845           in heap.  [ruby-core:15711]
2847         * bootstraptest/test_proc.rb: add a test.
2849 Fri Jun 20 00:18:04 2008  Koichi Sasada  <ko1@atdot.net>
2851         * thread_win32.c (native_sleep): fix to decrement sleeper count.
2853 Thu Jun 19 23:48:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2855         * test/net/http/test_http.rb: compare encodings of two strings before
2856           comparing themself, which suppress too big error output.
2858 Thu Jun 19 23:46:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2860         * ext/json/ext/parser/parser.rl, ext/json/ext/parser/parser.c: JSON
2861           text SHALL be encoded in Unicode.
2863 Thu Jun 19 23:17:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2865         * thread.c, thread_win32.c, vm_core.h: try to remove false positive of
2866           deadlock detection.
2868 Thu Jun 19 21:38:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2870         * ext/extmk.rb (extmake): check if compile before showing message.
2872 Thu Jun 19 21:35:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2874         * tool/make-snapshot: supported multiple snapshots.
2876 Thu Jun 19 20:37:00 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
2878         * lib/net/pop.rb (Net::POP3#set_all_uids): speed
2879           up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]
2881 Thu Jun 19 17:44:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2883         * ext/etc/etc.c (Init_etc): define constant aliases Etc::Passwd
2884           and Etc::Group.  [ruby-dev:35150]
2886 Thu Jun 19 17:37:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2888         * string.c (str_alloc): specify 'inline' modifier.
2890         * string.c (str_alloc): remove cSymbol hack that no longer
2891           necessary.
2893         * string.c (scan_once): avoid retrieving encoding info unless
2894           necessary.
2896 Thu Jun 19 17:19:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2898         * string.c (rb_str_scan): String#scan should preserve last
2899           successful match data.  [ruby-dev:35106]
2901 Thu Jun 19 16:49:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2903         * missing/acosh.c (atanh): should set ERANGE to errno if parameter
2904           is the boundary case. fixed [ruby-dev:35155]
2906 Thu Jun 19 16:06:01 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
2908         * ext/tk/lib/tkextlib/tile/treeview.rb: cannot configure tags.
2910 Thu Jun 19 11:48:33 2008  Koichi Sasada  <ko1@atdot.net>
2912         * test/ruby/test_enumerator.rb: fix to skip "with_memo" test.
2914 Thu Jun 19 11:40:55 2008  Koichi Sasada  <ko1@atdot.net>
2916         * vm_insnhelper.c (vm_throw): fix "return" process from "lambda".
2918         * bootstraptest/test_proc.rb: add a test.
2920         * bootstraptest/pending.rb: add a pending bug.
2922 Thu Jun 19 00:33:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2924         * test/etc/test_etc.rb: avoid infinite loop.  [ruby-dev:35158]
2926 Wed Jun 18 23:07:19 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2928         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc.
2929           a patch from Sylvain Joyeux in [ruby-core:12099].
2931 Wed Jun 18 21:08:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2933         * ruby.c (verbose_setter, opt_W_getter): fixed prototypes.
2935 Wed Jun 18 19:20:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2937         * ruby.c (opt_W_getter): use ruby_verbose directly instead of parameter
2938           because ruby_verbose is not a real variable, so the address of
2939           parameter is not collect.
2941 Wed Jun 18 18:31:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2943         * win32/win32.c (errmap): add some pipe errors.
2945         * win32/win32.c (rb_w32_write): set errno when CRT's errno is EINVAL
2946           for pipe errors.
2948 Wed Jun 18 18:09:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2950         * win32/win32.c (poll_child_status): set EINVAL to errno when
2951           GetExitCodeProcess() fails with ERROR_INVALID_HANDLE.
2953 Wed Jun 18 15:01:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2955         * io.c (rb_open_file): fs_encoding and fname_encoding is
2956           rb_encoding *.
2957           fixed [ruby-dev:35151]
2959 Wed Jun 18 14:30:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2961         * io.c (rb_open_file): not rb_enc_get_index but rb_enc_get.
2963 Wed Jun 18 13:49:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2965         * include/ruby/win32.h (pipe): now pipe is textmode. although this
2966           change is experimental, it will be spec if no compatibility problem
2967           is reported.
2969 Wed Jun 18 12:05:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2971         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
2972           public methods only.  [ruby-core:17283]
2974         * object.c (convert_type): ditto.
2976         * lib/singleton.rb (Singleton#_dump): conversion method should be
2977           public.
2979 Wed Jun 18 10:18:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2981         * ext/etc/etc.c (etc_passwd, etc_group): fixed rdoc.  a patch from
2982           okkez <okkez000 AT gmail.com> in [ruby-dev:35141].
2984 Wed Jun 18 08:58:16 2008  Eric Hodel  <drbrain@segment7.net>
2986         * lib/rubygems/*:  Fix errors for 1.9.
2988         * gem_prelude.rb:  Only remove methods from gem_prelude.rb when
2989           loading real RubyGems.
2991 Wed Jun 18 07:03:30 2008  Eric Hodel  <drbrain@egment7.net>
2993         * lib/rubygems/*:  Update to RubyGems r1778 (pre 1.2).
2995 Wed Jun 18 04:27:58 2008  Koichi Sasada  <ko1@atdot.net>
2997         * KNOWNBUGS.rb, bootstraptest/pending.rb: move pending bug.
2999 Wed Jun 18 04:24:20 2008  Koichi Sasada  <ko1@atdot.net>
3001         * vm.c, vm_insnhelper.c: fix escape process with "break" and "return"
3002           syntax in "lambda".  [ ruby-Bugs-19304 ], [ruby-core:17164]
3004         * KNOWNBUGS.rb, bootstraptest/test_proc.rb: add/move solved test.
3006 Wed Jun 18 01:51:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3008         * ext/tk/lib/multi-tk.rb: cannot access class variable from
3009           singleton method. 
3011 Wed Jun 18 00:03:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3013         * dir.c (Init_Dir): dir_foreach() takes variable argument.
3015 Tue Jun 17 23:04:24 2008  James Edward Gray II  <jeg2@ruby-lang.org>
3017         * lib/net/telnet.rb:  Fixing Telnet#wairfor() which was broken by
3018           changes to the Kernel::Integer() method.  [ruby-core:17272]
3020 Tue Jun 17 23:02:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3022         * ruby.c (opt_W_getter): made a hooked variable.
3024 Tue Jun 17 22:04:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3026         * enc/euc_jp.c (property_name_to_ctype): core dumped when sizeof(int)
3027           differs from sizeof(long).  [ruby-dev:35131]
3029         * enc/shift_jis.c (property_name_to_ctype): ditto.
3031         * enc/unicode.c (onigenc_unicode_property_name_to_ctype): ditto.
3033 Tue Jun 17 20:32:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3035         * common.mk (miniruby$(EXEEXT)): $(PREP) isn't always same as
3036           miniruby, and tests, debug, etc have no meaning when
3037           cross-compiling.
3039 Tue Jun 17 18:39:11 2008  Ryan Davis  <ryan@wrath.local>
3041         * common.mk: fixed dependencies on miniruby.
3043 Tue Jun 17 18:11:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3045         * include/ruby/win32.h (pipe): expand pipe buffer size.
3047 Tue Jun 17 17:07:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3049         * win32/win32.c (CreateChild): no need to inherit handles here because
3050           spawn'ed child cannot detect that STDIN is closed.
3052 Tue Jun 17 06:32:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3054         * dir.c (dir_data): add intenc and extenc.
3056         * dir.c (dir_s_alloc): ditto.
3058         * dir.c (dir_initialize): now accept internal_encoding and
3059           external_encoding.
3061         * dir.c (dir_s_open): changed for dir_initialize.
3063         * dir.c (dir_open_dir): ditto.
3065         * dir.c (dir_foreach): changed for dir_open_dir.
3067         * dir.c (dir_entries): changed for dir_open_dir.
3069         * dir.c (dir_enc_str): defined.
3071         * dir.c (dir_path): use dir_enc_str.
3073         * dir.c (dir_read): ditto.
3075         * dir.c (dir_each): ditto.
3077 Tue Jun 17 06:28:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3079         * io.c (io_set_encoding): defined.
3081         * io.c (rb_open_file): convert path on Windows and Mac OS X.
3083         * io.c (open_key_args): use io_set_encoding and now accept
3084           internal_encoding and external_encoding.
3086 Tue Jun 17 06:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3088         * encoding.c (rb_filesystem_encoding): defined.
3090         * include/ruby/encoding.h (rb_filesystem_encoding): added.
3092 Tue Jun 17 06:24:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3094         * ext/syck/rubyext.c: add encoding header.
3096 Tue Jun 17 01:52:50 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3098         * ext/tk/tcltklib.c: SEGV when exit.
3100         * ext/tk/lib/tk.rb: add a check for safety to Tk.exit.
3102         * ext/tk/sample/irbtkw.rbw: freezes when receives SIGINT.
3104 Mon Jun 16 21:58:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3106         * ext/stringio/stringio.c (strio_each, strio_readlines): IO#each and
3107           IO#readlines do not affect $_.  [ruby-core:17277]
3109 Mon Jun 16 18:52:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3111         * lib/thwait.rb (ThreadsWait): Exception2MessageMapper no longer has
3112           extend_to method.  [ruby-core:17267]
3114 Mon Jun 16 14:46:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3116         * lib/e2mmap.rb (E2MM.def_e2message): typo.
3118 Mon Jun 16 09:43:27 2008  Akinori MUSHA  <knu@iDaemons.org>
3120         * enumerator.c (enumerator_with_object, Init_Enumerator):
3121           Temporarily back out with_memo, for which we need a better name.
3123 Mon Jun 16 07:14:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3125         * ext/stringio/stringio.c (strio_readline, strio_each)
3126           (strio_readlines): set lastline.  [ruby-core:17257]
3128 Mon Jun 16 01:49:39 2008  Koichi Sasada  <ko1@atdot.net>
3130         * eval.c (rb_f_block_given_p): fix to skip class frame.
3131           [ruby-core:14813]
3133         * KNOWNBUGS.rb, bootstraptest/test_method.rb: move solved test.
3135 Mon Jun 16 01:48:08 2008  Koichi Sasada  <ko1@atdot.net>
3137         * vm_dump.c (vm_stack_dump_raw): disable verbose debug output.
3139 Mon Jun 16 01:33:08 2008  Koichi Sasada  <ko1@atdot.net>
3141         * vm_core.h, thread.c: rename global_interpreter_lock to
3142           global_vm_lock.
3144 Sun Jun 15 18:40:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3146         * ext/syck/rubyext.c (yaml_org_handler): associate encoding.
3148         * ext/syck/rubyext.c (syck_genericresolver_node_import): ditto.
3150 Sun Jun 15 18:17:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3152         * vm_core.h (rb_vm_t), vm.c (rb_vm_mark): moved preallocated special
3153           exceptions.
3155         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
3156           preallocated special exceptions.
3158         * eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
3159           if it was frozen.
3161         * gc.c (rb_memerror): raise nomem_error without backtrace if failed to
3162           make backtrace.
3164 Sat Jun 14 22:52:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3166         * ext/stringio/stringio.c (strio_sysread): should not raise at empty
3167           read.  a patch from Arthur Schreiber at [ruby-core:17245].
3169 Sat Jun 14 16:55:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3171         * file.c (file_expand_path): no need to expand root path which has no
3172           short file name.  [ruby-dev:35095]
3174 Sat Jun 14 11:59:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3176         * gc.h (STACK_UPPER): moved from gc.c
3178         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
3179           ruby_thread_init_stack): moved stack initialization from gc.c.
3181 Sat Jun 14 11:57:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3183         * gc.h (STACK_UPPER): moved from gc.c
3185         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
3186           ruby_thread_init_stack): moved stack initialization from gc.c.
3188 Sat Jun 14 07:52:53 2008  Tanaka Akira  <akr@fsij.org>
3190         * gc.c (ruby_initial_gc_stress): defined.
3191           (ruby_initial_gc_stress_ptr): defined.
3193         * debug.c (set_debug_option): use ruby_initial_gc_stress_ptr for
3194           gc_stress option.
3196 Sat Jun 14 00:09:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3198         * gc.c (ruby_gc_stress): moved to rb_objspace_t.
3200         * gc.c (gc_stress_get, gc_stress_set): VM local attribute.
3202         * signal.c (sigsegv): ditto.
3204 Fri Jun 13 21:55:48 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3206         * rational.c (nurat_equal_p): Rational(0,x) and 0 are equivalent,
3207           anyway.
3209 Fri Jun 13 21:26:39 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3211         * complex.c (string_to_c, nucomp_s_convert): preserve the current
3212           backref.
3214         * rational.c (string_to_r, nurat_s_convert): ditto.
3216         * include/ruby/intern.h (rb_match_busy): added a declaration.
3218 Fri Jun 13 18:08:10 2008  Tanaka Akira  <akr@fsij.org>
3220         * lib/time.rb (Time.xmlschema): don't accept decimal dot without
3221           fractional digits.  fractional digits handling simplified.
3223 Fri Jun 13 17:20:40 2008  wanabe  <s.wanabe@gmail.com>
3225         * complex.c (string_to_c_internal): save and restore backref.
3226           fixed [ruby-dev:34991]
3228 Fri Jun 13 17:06:20 2008  wanabe  <s.wanabe@gmail.com>
3230         * rational.c (string_to_r_internal): save and restore backref.
3231           fixed [ruby-dev:34990]
3233 Fri Jun 13 14:41:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3235         * README.EXT.ja: update about Fixnum. reported in
3236            <http://www.tmtm.org/ja/tdiary/?date=20080611#p01>
3238         * README.EXT.ja: describe about StringValueCStr().
3240         * README.EXT: ditto.
3242 Fri Jun 13 14:24:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3244         * gc.c (rb_memerror): exit with EXIT_FAILURE instead of magic number.
3246         * gc.c (ruby_stack_check): STACK_LENGTH should be less than
3247           STACK_LEVEL_MAX.
3249 Fri Jun 13 12:55:37 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3251         * enum.c (sort_by_i): use NODE_DOT2 instead of NODE_MEMO to avoid
3252           extra calls to is_pointer_to_heap() in GC.
3254         * enum.c (enum_zip): ditto.
3256 Fri Jun 13 00:41:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3258         * test/ruby/test_thread.rb: add a test.
3260 Thu Jun 12 23:30:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3262         * thread.c (mutex_unlock): fix cond_notified consistency.
3264 Thu Jun 12 22:19:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3266         * thread_win32.c (native_sleep): fixed previous commit.
3268 Thu Jun 12 21:59:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3270         * thread.c, vm_core.h, vm.c, thread_pthread.c, thread_win32.c: add
3271           deadlock detection.  [ruby-dev:35044]
3273         * bootstraptest/test_thread.rb: add tests for above.
3275 Thu Jun 12 21:39:55 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3277         * complex.c: refactoring.
3279         * rational.c: ditto.
3281 Thu Jun 12 17:11:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3283         * regint.h: undefine USE_CAPTURE_HISTORY which is mentioned as
3284           unsupported in the Onigiruma document.
3286 Thu Jun 12 13:36:54 2008  Tanaka Akira  <akr@fsij.org>
3288         * include/ruby/ruby.h (rb_intern): use rb_intern2 with strlen for
3289           constant symbols to optimize strlen.
3291 Thu Jun 12 08:47:51 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3293         * io.c (read_all): should use io_read_encoding(), not
3294           io_input_encoding().
3296         * io.c (rb_io_getline_1): reduce calling of io_read_encoding().
3298         * string.c (rb_str_scan): need not to restore $~ value, so avoid
3299           pinning match object.
3301 Thu Jun 12 02:49:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3303         * ext/stringio/stringio.c (strio_init): rewind when reopened.
3305 Thu Jun 12 02:43:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3307         * array.c (rb_ary_zip): ANSI style.
3309 Thu Jun 12 02:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3311         * io.c (rb_io_reopen): clear read buffer.
3313 Thu Jun 12 00:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3315         * ext/tk: check proper conditions.  [ruby-dev:35047]
3317 Wed Jun 11 23:33:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3319         * io.c (io_fread): bypass buffered read if reading buffer is empty.
3321         * io.c (remain_size): do not add extra one byte.
3323 Wed Jun 11 12:15:17 2008  Tanaka Akira  <akr@fsij.org>
3325         * bootstraptest/runner.rb (assert_normal_exit): hide stderr output
3326           when success.
3328 Wed Jun 11 09:26:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3330         * common.mk (encs): need to pass miniruby path for windows.
3332 Wed Jun 11 05:53:20 2008  Koichi Sasada  <ko1@atdot.net>
3334         * vm.c, eval_intern.h (PASS_PASSED_BLOCK):
3335           set a VM_FRAME_FLAG_PASSED flag to skip this frame when
3336           searching ruby-level-cfp.
3338         * eval.c, eval_intern.h, proc.c: fix to check cfp.  if there is
3339           no valid ruby-level-cfp, cause RuntimeError exception.
3340           [ruby-dev:34128]
3342         * vm_core.h, vm_evalbody.c, vm.c, vm_dump.c, vm_insnhelper.c,
3343           insns.def: rename FRAME_MAGIC_* to VM_FRAME_MAGIC_*.
3345         * KNOWNBUGS.rb, bootstraptest/test*.rb: move solved bugs.
3347 Wed Jun 11 05:55:31 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3349         * ext/tk/tcltklib.c: SEGV when tcltk-stubs is enabled.
3351         * ext/tk/tcltklib.c: avoid error on a shared object.
3353         * ext/tk/extconf.rb: support --with-tcltkversion
3355         * ext/tk/README.tcltklib: add document about --with-tcltkversion
3357         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb, ext/tk/lib/remote-tk.rb: 
3358           not work on $SAFE==4
3360         * ext/tk/lib/multi-tk.rb: Object#methods returns Symbols on Ruby1.9.
3362         * ext/tk/lib/tk/timer.rb: add TkTimer#at_end(proc) to register the 
3363           procedure which called at end of the timer.
3365         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemfont.rb, ext/tk/lib/font.rb: 
3366           support __IGNORE_UNKNOWN_CONFIGURE_OPTION__ about font options.
3368         * ext/tk/lib/*: treat __IGNORE_UNKNOWN_CONFIGURE_OPTION__
3370         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb, 
3371           ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb, 
3372           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: bug fix. 
3374         * ext/tk/lib/tk/text.rb: typo. call a wrong method.
3376         * ext/tk/lib/tk/itemconfig.rb: ditto.
3378         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemconfig.rb, 
3379           ext/tk/lib/tk/canvas.rb: support alias names of option keys.
3381         * ext/tk/lib/tk/grid.rb: lack of module-method definitions.
3383         * ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: increase supported 
3384           parameter patterns of configure method.
3386         * ext/tk/lib/tk.rb: add TkWindow#grid_anchor, grid_column, grid_row.
3388         * ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
3389           pass the given block to methods of Tk::Wm module.
3391         * ext/tk/lib/tk/wm.rb: Wm#overrideredirect overwrites argument to 
3392           an invalid value.
3394         * ext/tk/lib/tk.rb: fix memory (object) leak bug.
3396         * ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: fix memory leak.
3398         * ext/tk/sample/demos-jp/aniwave.rb, ext/tk/sample/demos-en/aniwave.rb:
3399           bug fix.
3401         * ext/tk/lib/tkextlib/blt/component.rb, 
3402           ext/tk/lib/tkextlib/tile/tentry.rb, 
3403           ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
3405         * ext/tk/lib/tkextlib/tile/tpaned.rb: improve TPaned#add.
3407         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget, 
3408           ext/tk/sample/demos-jp/style.rb, ext/tk/sample/demos-en/style.rb, 
3409           ext/tk/sample/demos-jp/bind.rb, ext/tk/sample/demos-en/bind.rb: 
3410           bug fix.
3412         * ext/tk/sample/ttk_wrapper.rb: ditto.
3414         * ext/tk/sample/ttk_wrapper.rb: support "if __FILE__ == $0" idiom.
3416         * ext/tk/sample/tktextio.rb: add binding for 'Ctrl-u' at console mode.
3418         * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb, 
3419           ext/tk/sample/ttk_wrapper.rb: improve treating and control themes. 
3420           add Tk::Tile.themes and Tk::Tile.set_theme(theme).
3422         * ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.
3424         * ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8) 
3425           characters for headings.
3427         * ext/tk/lib/tkextlib/tkDND/shape.rb: wrong package name.
3429         * ext/tk/tkutil/tkutil.c: improve handling callback-subst-keys. 
3430           Now, support longnam-keys (e.g. '%CTT' on tkdnd-2.0; however, still
3431           not support tkdnd-2.0 on tkextlib), and symbols of parameters (e.g. 
3432           :widget=>'%W', :keycode=>'%k', '%x'=>:x, '%X'=>:root_x, and so on; 
3433           those are attributes of event object). It means that Ruby/Tk accepts
3434           not only "widget.bind(ev, '%W', '%k', ...){|w, k, ...| ... }", but 
3435           also "widget.bind(ev, :widget, :keycode, ...){|w, k, ...| ... }". 
3436           It is potentially incompatible, when user passes symbols to the
3437           arguments of the callback block (the block receives the symbols as
3438           strings). I think that is very rare case (probably, used by Ruby/Tk
3439           experts only). When causes such trouble, please give strings instead
3440           of such symbol parameters (e.g. call Symbol#to_s method).
3442         * ext/tk/lib/tk/event.rb, ext/tk/lib/tk/validation.rb, 
3443           ext/tk/lib/tkextlib/blt/treeview.rb, 
3444           ext/tk/lib/tkextlib/winico/winico.rb: ditto.
3446         * ext/tk/tkutil/tkutil.c: strings are available on subst_tables on 
3447           TkUtil::CallbackSubst class (it is useful on Ruby 1.9). 
3449         * ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tkextlib/iwidgets/hierarchy.rb, 
3450           ext/tk/lib/tkextlib/iwidgets/spinner.rb, 
3451           ext/tk/lib/tkextlib/iwidgets/entryfield.rb, 
3452           ext/tk/lib/tkextlib/iwidgets/calendar.rb, 
3453           ext/tk/lib/tkextlib/blt/dragdrop.rb, 
3454           ext/tk/lib/tkextlib/tkDND/tkdnd.rb, 
3455           ext/tk/lib/tkextlib/treectrl/tktreectrl.rb, 
3456           ext/tk/lib/tkextlib/tktable/tktable.rb: disable code piece became 
3457           unnecessary by reason of the changes of ext/tk/tkutil/tkutil.c.
3459         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb: change strategy to define
3460           the constant WITH_ENCODING.
3462         * ext/tk/lib/tk.rb: fix bug on Tk::Encoding.tk_encoding_names.
3464 Wed Jun 11 03:40:37 2008  Akinori MUSHA  <knu@iDaemons.org>
3466         * lib/find.rb (Find#find): Return an enumerator if no block is
3467           given.
3469 Wed Jun 11 01:28:12 2008  Koichi Sasada  <ko1@atdot.net>
3471         * include/ruby/intern.h, proc.c: revert rb_proc_call() and
3472           create rb_proc_call_with_block() instead.
3474         * include/ruby/ruby.h, eval_jump.c, thread.c, vm_insnhelper.c: 
3475           rb_blockptr should not be exposed.
3477 Tue Jun 10 21:07:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
3479         * test/ruby/test_float.rb: add tests. [ruby-dev:35009]
3481 Tue Jun 10 20:55:57 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3483         * complex.c (nucomp_s_convert): need not to initialize optional
3484           argument for rb_scan_args().
3486 Tue Jun 10 20:13:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3488         * ext/extmk.rb: negate default of --without-ext if --with-ext is
3489           given.
3491         * ext/extmk.rb: negate default of --without-ext.
3493 Tue Jun 10 17:43:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3495         * array.c (rb_ary_shuffle_bang): update RDoc.  [ruby-dev:35034]
3497 Tue Jun 10 17:30:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3499         * include/ruby/intern.h (rb_obj_instance_exec, rb_mod_module_exec):
3500           added prototypes.
3502 Tue Jun 10 17:00:29 2008  wanabe  <s.wanabe@gmail.com>
3504         * util.c (ruby_strtod): ruby_strtod don't allow a trailing
3505           decimal point like "7.". [ruby-dev:34835] [ruby-dev:35009]
3507 Tue Jun 10 13:48:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3509         * rational.c (nurat_s_convert): need not to initialize optional
3510           argument for rb_scan_args().
3512 Tue Jun 10 12:58:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3514         * ext/io/wait/wait.c (FIONREAD_POSSIBLE_P): suppress warnings.
3516 Tue Jun 10 12:43:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3518         * include/ruby/ruby.h (CONST_ID_CACHE): fixed statement expression.
3520 Tue Jun 10 11:25:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3522         * ruby.c (rb_argv0): revised for ext/tk.
3524         * include/ruby/encoding.h: not to use varargs.h since requiring C89.
3526 Tue Jun 10 00:50:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3528         * include/ruby/ruby.h, vm_core.h: add a type rb_blockptr.
3530         * vm_insnhelper.c (vm_yield_with_cfunc): vm_yield_with_cfunc receives
3531           blockptr and passes it to iterating block.
3533         * proc.c (rb_proc_call), include/ruby/intern.h: rb_proc_call receives
3534           blockptr.  "rb_proc_call(self, args, blockptr)" in C corresponds to
3535           "self.call(*args, &block)" in Ruby.
3537         * proc.c (proc_call): pass blockptr to block that is written in C.
3539         * proc.c (curry): receive blockptr and pass it to original proc.
3540           [ruby-core:15551]
3542         * vm.c (invoke_block_from_c): fix for change of vm_yield_with_cfunc.
3544         * thread.c (call_trace_proc), eval_jump.c (rb_call_end_proc): fix for
3545           change of rb_proc_call.
3547 Tue Jun 10 00:10:49 2008  Tanaka Akira  <akr@fsij.org>
3549         * common.mk (test-knownbug): give $(OPTS) for bootstraptest/runner.rb.
3551 Mon Jun  9 23:10:50 2008  Tanaka Akira  <akr@fsij.org>
3553         * eval.c (Init_stack): don't declare.  it is a macro now.
3555 Mon Jun  9 22:46:47 2008  wanabe  <s.wanabe@gmail.com>
3557         * compile.c : treat []&&= in virtually the same way as []||=.
3558           [ruby-dev:34679]
3560 Mon Jun  9 21:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3562         * enc/depend (clean): remove build directories.
3564         * test_knownbug.rb -> KNOWNBUGS.rb: renamed.
3566         * common.mk: apply above change.
3568 Mon Jun  9 21:14:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3570         * lib/mkmf.rb (configuration): set flags.
3572 Mon Jun  9 21:09:02 2008  Koichi Sasada  <ko1@atdot.net>
3574         * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved.
3576         * common.mk: add a rule "test-knownbug".
3578 Mon Jun  9 21:00:32 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3580         * complex.c (nucomp_s_convert): can accept Complex('i').
3581           [ruby-dev:34991]
3583 Mon Jun  9 18:25:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3585         * include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.
3587         * *.c: no cache in init functions.
3589 Mon Jun  9 17:56:30 2008  Akinori MUSHA  <knu@iDaemons.org>
3591         * lib/set.rb (Set#delete_if): Call to_a.
3592           (SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
3593           yield elements in sorted order; [ruby-core:17144] by Arthur
3594           Schreiber.
3595           (SortedSet#each, SortedSet#each, TC_Set#test_each)
3596           (TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
3597           Arthur Schreiber.
3599 Mon Jun  9 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
3601         * io.c (fptr_finalize): close IO object if fd is already closed.
3602           (rb_p): call rb_io_write just once.
3604 Mon Jun  9 15:37:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3606         * ruby.c (require_libraries): req_list may be NULL.  [ruby-dev:35008]
3608 Mon Jun  9 14:18:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3610         * vm_core.h (struct rb_vm_struct): moved src_encoding_index,
3611           ruby_debug, ruby_verbose, and rb_progname.
3613         * ruby.c (rb_argv0): no longer used.
3615         * ruby.c (struct cmdline_options): moved setids and req_list, and the
3616           latter is now an array, to prevent memory leak.
3618         * ruby.c (cmdline_options_init): added.
3620         * ruby.c (add_modules, require_libraries, init_ids, forbid_setid): use
3621           struct cmdline_options.
3623         * vm.c (vm_init2): initialize src_encoding_index.
3625         * vm.c: getters/setters for ruby_{debug,verbose}.
3627 Mon Jun  9 09:54:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3629         * include/ruby/intern.h (Init_stack): make to call ruby_init_stack.
3631 Mon Jun  9 08:12:40 2008  wanabe  <s.wanabe@gmail.com>
3633         * vm_insnhelper.c, vm.c, proc.c : revert r17021. [ruby-dev:34997]
3635 Mon Jun  9 03:12:23 2008  Koichi Sasada  <ko1@atdot.net>
3637         * bootstraptest/pending.rb: move/remove solved issues.
3639         * bootstraptest/test_class.rb: ditto.
3641 Mon Jun  9 02:32:58 2008  Akinori MUSHA  <knu@iDaemons.org>
3643         * ext/zlib/zlib.c (rb_deflate_init_copy): Copy buffers as well.
3644           [ruby-list:45018]
3646 Sun Jun  8 22:22:20 2008  wanabe  <s.wanabe@gmail.com>
3648         * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with
3649           block that both is written in C. [ruby-dev:34273] [ruby-core:15551]
3651         *  proc.c (curry): use proc_call instead of rb_proc_call.
3652           [ruby-dev:34273] [ruby-core:15551]
3654 Sun Jun  8 21:50:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3656         * test/zlib/test_zlib.rb: add tests to achieve over 90% test coverage
3657           of zlib.
3659 Sun Jun  8 20:12:47 2008  wanabe  <s.wanabe@gmail.com>
3661         * vm_insnhelper.c (vm_throw): regard break as return in lambda.
3662           [ruby-dev:34646]
3664 Sun Jun  8 19:17:59 2008  Koichi Sasada  <ko1@atdot.net>
3666         * gc.c: add a build option "CALC_EXACT_MALLOC_SIZE".
3667           This option enables to calculate exact size of current 
3668           allocated size by malloc().  You can access these information
3669           with GC.malloc_allocated_size and GC.malloc_allocations.
3670           This option consume additional memory as a header of each memory
3671           object.  This option also helps to find out xmalloc()/xfree()
3672           consistency.  If you get trouble with this option, some extension
3673           using "free()" instead of "xfree()".
3674           This options is disabled by default.
3676 Sun Jun  8 18:15:38 2008  Koichi Sasada  <ko1@atdot.net>
3678         * array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,
3679           enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c,
3680           io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c,
3681           string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c,
3682           vm.c, gc.c:
3683           allocated memory objects by xmalloc (ruby_xmalloc) should be
3684           freed by xfree (ruby_xfree).
3686         * ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c, 
3687           ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c, 
3688           ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c,
3689           ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c,
3690           ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c:
3691           ditto.
3693 Sun Jun  8 01:15:11 2008  Tanaka Akira  <akr@fsij.org>
3695         * hash.c (hash_i): make Hash#hash order insensitive.
3696           (rb_hash_dup): use DUPSETUP.
3698 Sat Jun  7 23:47:35 2008  Akinori MUSHA  <knu@iDaemons.org>
3700         * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
3701           initialize_copy; [ruby-list:45016].
3703 Sat Jun  7 22:15:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3705         * configure.in (VENDOR_DIR): use LIBDIR instead of PREFIX as well as
3706           SITE_DIR.  a patch from Richard Brown <rbrown AT exherbo.org> in
3707           [ruby-core:17129].
3709 Sat Jun  7 21:37:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3711         * io.c (rb_f_open), re.c (rb_reg_search), transcode.c (str_transcode):
3712           suppress warnings.
3714         * util.c (quorem, rv_alloc, nrv_alloc): only used in dtoa().
3716 Sat Jun  7 16:06:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3718         * configure.in (CFLAGS, CXXFLAGS): append default flags.
3720 Sat Jun  7 01:23:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3722         * io.c (rb_open_file, rb_io_s_sysopen): fmode should be unsigned int.
3723           fixed [ruby-dev:34979]
3725 Fri Jun  6 23:46:19 2008  Koichi Sasada  <ko1@atdot.net>
3727         * vm_insnhelper.c (vm_callee_setup_arg): check simple flag before
3728           calling setup_arg function().  this change reduce function call.
3730 Fri Jun  6 21:51:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3732         * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
3734         * ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
3735           freehostent, freeaddrinfo): undef before define because these are
3736           macros in some versions of Windows SDK.
3738           merged from ruby_1_8.
3740 Fri Jun  6 18:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3742         * test/iconv/utils.rb (default_test): override not to croak.
3744 Fri Jun  6 16:41:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3746         * include/ruby/win32.h: include ws2tcpip.h. fixed [ruby-Bugs-20528]
3748 Fri Jun  6 15:05:02 2008  Tanaka Akira  <akr@fsij.org>
3750         * gc.c (count_objects): clear hash after counting objects.
3752 Fri Jun  6 12:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3754         * test/ruby/test_dir.rb (TestDir::test_glob): glob file names not sorted.
3756 Fri Jun  6 00:05:33 2008  Tanaka Akira  <akr@fsij.org>
3758         * lib/time.rb (Time.xmlschema): don't use float.  fix
3759           http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504
3761 Thu Jun  5 23:56:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3763         * test/ruby/test_gc.rb: add tests to achieve over 90% test coverage of
3764           gc.c.
3766         * test/ruby/test_objectspace.rb: ditto.
3768         * test/ruby/test_marshal.rb: ditto.
3770 Thu Jun  5 23:40:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3772         * gc.c (rb_objspace_alloc): this function is needed only when
3773           ENABLE_VM_OBJSPACE macro is defined.
3775         * vm.c: ditto.
3777 Thu Jun  5 23:31:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3779         * test/stringio/test_stringio.rb: add tests to achieve over 95% test
3780           coverage of stringio.
3782         * test/strscan/test_stringscanner.rb: ditto for strscan.
3784 Thu Jun  5 23:25:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3786         * eval.c (ruby_finalize_0): clear trace_func after executing END
3787           procs.
3789         * thread.c: fix typo.
3791 Thu Jun  5 22:50:50 2008  Tanaka Akira  <akr@fsij.org>
3793         * gc.c (os_obj_of): heaps may be modified in yield.
3795 Thu Jun  5 21:46:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3797         * st.c (st_reverse_foreach): comment out unused function.
3799         * util.c (dtoa): ditto.
3801 Thu Jun  5 20:30:46 2008  Akinori MUSHA  <knu@iDaemons.org>
3803         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
3804           Add a null check for ssl; submitted by akira yamada
3805           in [ruby-dev:34950].
3807         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
3808           SSL_OP_NO_TICKET is present; submitted by akira yamada
3809           in [ruby-dev:34944].
3811         * test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
3812           workaround for the case where OpenSSL is configured with
3813           --enable-tlsext; submitted by akira yamada in [ruby-dev:34944].
3815 Thu Jun  5 20:24:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3817         * thread.c (thread_set_trace_func_m): fix check for proc argument.
3819 Thu Jun  5 20:17:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3821         * lib/rexml/document.rb (REXML::Document:write): leaky modification
3822           trans -> transitive.  [ruby-dev:32040], r13686
3824         * lib/rexml/text.rb (Text.check): fix check for illegal character.
3826 Thu Jun  5 14:03:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3828         * ext/iconv/iconv.c (iconv_create): find encoding without options.
3830 Thu Jun  5 07:48:32 2008  Koichi Sasada  <ko1@atdot.net>
3832         * string.c (hash): should be "static".
3834 Thu Jun  5 01:47:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3836         * test/ruby/test_transcode.rb: add tests for iso-2022-jp.
3838 Thu Jun  5 01:27:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3840         * test/ruby/test_process.rb: add tests.
3842 Wed Jun  4 23:10:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3844         * ext/zlib/zlib.c (rb_gzfile_set_mtime): fix typo.
3846 Wed Jun  4 18:53:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3848         * object.c (rb_obj_alloc): RDoc updated.  a patch from Gaston
3849           Ramos <ramos.gaston at gmail.com> in [ruby-core:17073].
3851 Wed Jun  4 18:36:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3853         * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
3854           <evanfarrar at gmail.com> in [ruby-doc:1382] applied.
3856 Wed Jun  4 17:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3858         * ext/iconv/iconv.c (iconv_iconv): fix for length argument and now
3859           allows range.  [ruby-core:17092]
3861 Wed Jun  4 15:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
3863         * enumerator.c (enumerator_with_index, enumerator_with_memo): Fix
3864           grammo in rdoc.
3866 Wed Jun  4 13:06:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3868         * configure.in (CFLAGS, CXXFLAGS): include additional flags to
3869           CFLAGS and CXXFLAGS while configuration.
3871 Tue Jun  3 23:06:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3873         * ext/strscan/strscan.c (strscan_scan_full, strscan_search_full): fix
3874           document.
3876 Tue Jun  3 22:37:26 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3878         * ext/strscan/strscan.c (strscan_exist_p): fix document.
3880 Tue Jun  3 22:33:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3882         * test/ruby/test_dir.rb: add tests to achieve over 90% test coverage
3883           of dir.c.
3885         * test/ruby/test_encoding.rb: add tests for dummy?, name_list and
3886           aliases.
3888         * test/ruby/test_marshal.rb: add some tests.
3890 Tue Jun  3 22:25:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3892         * test/etc/test_etc.rb: new tests for etc.
3894 Tue Jun  3 19:35:02 2008  Akinori MUSHA  <knu@iDaemons.org>
3896         * enumerator.c (enumerator_with_memo): New method: with_memo().
3898 Tue Jun  3 20:04:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3900         * win32/Makefile.sub (miniruby$(EXEEXT)): miniruby cannot be
3901           written by miniruby itself.
3903 Tue Jun  3 19:33:22 2008  Akinori MUSHA  <knu@iDaemons.org>
3905         * enumerator.c (enumerator_init_copy): Take care of
3906           initialize_copy as well as initialize.
3908 Tue Jun  3 16:06:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3910         * file.c (file_expand_path): fix for non-existent files and SFN of
3911           symlinks.  [ruby-talk:303736]
3913 Tue Jun  3 15:12:01 2008  Akinori MUSHA  <knu@iDaemons.org>
3915         * lib/set.rb (Set#classify): Back out the `group_by' alias.
3916           Better think twice.
3918 Tue Jun  3 15:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
3920         * lib/set.rb (Set#collect, Set#select): Back out.  I thought it
3921           was consistent but turned out to be wrong.
3923 Tue Jun  3 13:41:08 2008  Akinori MUSHA  <knu@iDaemons.org>
3925         * lib/set.rb (Set#collect, Set#select): Override Enumerable
3926           methods and make them return a set. [ruby-core:17055]
3927           (Set#delete_if, Set#collect!, Set#reject!, Set#classify)
3928           (Set#divide, Set#delete_if): Return an enumerator if no block is
3929           given.
3930           (Set#classify): Define an alias `group_by' to override that of
3931           Enumerable.
3933 Tue Jun  3 13:35:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3935         * process.c (run_exec_pgroup): C99 ism.
3937 Tue Jun  3 12:51:57 2008  Akinori MUSHA  <knu@iDaemons.org>
3939         * enumerator.c (enumerator_allocate, enumerator_ptr): Properly
3940           detect if the object is initialized and raise error when
3941           appropriate.
3942           (enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052]
3944 Tue Jun  3 01:21:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3946         * test/ruby/test_method.rb: add a test.
3948 Tue Jun  3 00:26:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3950         * marshal.c (w_object): add a check for modification of array during
3951           its dump.
3953 Mon Jun  2 22:27:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3955         * enc/iso_8859_5.c: Large omicron should lowercase to small omicron.
3957         * test/ruby/test_big5.rb, test/ruby/test_cp949.rb,
3958           test/ruby/test_euc_jp.rb, test/ruby/test_euc_kr.rb,
3959           test/ruby/test_euc_tw.rb, test/ruby/test_gb18030.rb,
3960           test/ruby/test_gbk.rb, test/ruby/test_iso_8859.rb,
3961           test/ruby/test_koi8.rb, test/ruby/test_shift_jis.rb,
3962           test/ruby/test_windows_1251.rb: new tests for encoding.
3964         * test/ruby/test_utf16.rb, test/ruby/test_utf32.rb,
3965           test/ruby/test_regexp.rb: add tests.
3967 Mon Jun  2 21:56:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3969         * test/ruby/test_file.rb: add tests for uninitialized object.
3971         * test/ruby/test_class.rb: ditto.
3973         * test/ruby/test_thread.rb: ditto.
3975 Mon Jun  2 21:44:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3977         * re.c: fix SEGV by Regexp.allocate.names, Match.allocate.names, etc.
3979         * test/ruby/test_regexp.rb: add tests for above.
3981         * io.c: fix SEGV by IO.allocate.print, etc.
3983         * test/ruby/test_io.rb: add tests for above.
3985 Mon Jun  2 19:17:47 2008  Tanaka Akira  <akr@fsij.org>
3987         * test/ruby/test_argf.rb (teardown): remove renamed temporary files.
3989 Mon Jun  2 18:51:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3991         * lib/un.rb (wait_writable): wait until target files can be
3992           written actually.
3994         * win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
3995           mt.exe.
3997 Mon Jun  2 16:26:17 2008  Akinori MUSHA  <knu@iDaemons.org>
3999         * lib/delegate.rb (Delegator::MethodDelegation#respond_to):
4000           respond_to? should now take optional second argument; submitted
4001           by Jeremy Kemper <jeremy at bitsweat.net> in [ruby-core:17045].
4003 Mon Jun  2 16:14:18 2008  Akinori MUSHA  <knu@iDaemons.org>
4005         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Oops.  This
4006           change did not apply to trunk.  Backed out.
4008 Mon Jun  2 16:08:24 2008  Akinori MUSHA  <knu@iDaemons.org>
4010         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Fix a bug
4011           where tokens are not yielded one by one.
4013         * test/erb/test_erb.rb (TestERBCore#_test_01)
4014           (TestERBCore#test_02_safe_04): The expected value should come
4015           first for assert_equal().
4017 Mon Jun  2 13:06:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4019         * mkconfig.rb: hide build path from rbconfig.rb.
4021 Mon Jun  2 08:46:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4023         * util.c (ruby_strtod, dtoa): initialize more variables for error
4024           handling.
4026 Mon Jun  2 04:55:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4028         * suppress warnings on cygwin, mingw and mswin.
4030 Mon Jun  2 04:35:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4032         * enc/gb18030.c (gb18030_code_to_mbc): add 0x80000000
4033           for 4bytes character.
4035 Mon Jun  2 03:52:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4037         * ruby.c (set_arg0): reverted used variable definition.
4039 Mon Jun  2 03:23:25 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4041         * enc/gb18030.c (gb18030_mbc_to_code): mask by 0x7FFFFFFF
4042           because OnigCodePoint will be used as 32bit signed int.
4043           Masking by 0x7FFFFFFF is ok on GB18030;
4044           Minimum 4bytes character is 0x81308130.
4046 Sun Jun  1 22:29:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4048         * rational.c (string_to_r_internal): use rb_isdigit.
4050         * marshal.c (long_toobig): use %zd.
4052         * ruby.c (set_arg0): move unused variable definition.
4054 Sun Jun  1 12:18:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4056         * insns.def (DEFINE_INSN): subtract of pointers is ptrdiff_t.
4057           this is not int on 64bit system.
4059         * vm_dump.c (control_frame_dump): ditto.
4061         * vm_dump.c (stack_dump_each): ditto.
4063         * vm_dump.c (debug_print_register): ditto.
4065         * vm_dump.c (debug_print_pre): ditto.
4067         * transcode.c (str_transcode): ditto.
4069 Sun Jun  1 10:32:18 2008  Tanaka Akira  <akr@fsij.org>
4071         * test/ruby/envutil.rb (assert_normal_exit): show coredump status.
4073 Sat May 31 23:33:34 2008  Akinori MUSHA  <knu@iDaemons.org>
4075         * README, README.ja: Add a note about default C flags.
4077 Sat May 31 23:02:00 2008  Tanaka Akira  <akr@fsij.org>
4079         * gc.c (count_objects): clear given hash.
4081 Sat May 31 20:28:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4083         * test/ruby/test_regexp.rb: add tests.
4085 Sat May 31 19:11:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4087         * enc/utf_16{be,le}.c (utf16{be,le}_code_to_mbc):
4088           fix codepoint to bytes.
4090 Sat May 31 18:28:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4092         * suppress warnings with -Wwrite-string.
4094 Sat May 31 18:26:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4096         * array.c (rb_ary_delete_if): should return enumerator if no block
4097           is given.  [ruby-dev:34901]
4099 Sat May 31 15:58:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4101         * Makefile.in, configure.in (warnflags): defaulted to -Wall
4102           -Wno-parentheses with gcc.  [ruby-dev:34810]
4104 Sat May 31 15:17:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4106         * include/ruby/mvm.h: new header file for MVM, and moved rb_vm_t and
4107           rb_thread_t from vm_core.h.
4109 Sat May 31 12:02:23 2008  Tanaka Akira  <akr@fsij.org>
4111         * test/ruby/envutil.rb (assert_normal_exit): show pid when fail.
4113 Fri May 30 23:55:56 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4115         * test/ruby/test_rubyoptions.rb: add a test of RUBY_DESCRIPTION.
4117 Fri May 30 22:47:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4119         * test/ruby/test_regexp.rb: add tests.
4121 Fri May 30 22:40:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4123         * test/ruby/test_signal.rb: add tests to achieve over 80% test
4124           coverage of signal.c.
4126 Fri May 30 22:28:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4128         * signal.c (esignal_signo): fix SignalException#signo which returned
4129           nil absolutely.
4131         * signal.c (esignal_init): always prepend "SIG" to a string that is
4132           returned by SignalException#signm.
4134 Fri May 30 22:17:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4136         * test/ruby/test_argf.rb: rename a conflicting method name.
4138         * test/ruby/test_string.rb: ditto.
4140         * test/ruby/test_io.rb: ditto.
4142 Fri May 30 22:14:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4144         * compile.c (defined_expr): fix SEGV by defined?([1]).
4146 Fri May 30 12:18:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4148         * common.mk (prelude.c): simply depends on PREP.  [ruby-dev:34877]
4150         * enc/make_encdb.rb, enc/trans/make_transdb.rb: ditto.
4152 Fri May 30 10:55:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4154         * vm_core.h (struct rb_unblock_callback), thread.c
4155           (set_unblock_function), thread_{pthread,win32}.c (native_sleep):
4156           extracted from struct rb_thread_struct.
4158         * thread.c (reset_unblock_function): not check interrupts at leaving
4159           blocking region.  [ruby-dev:34874]
4161 Fri May 30 06:09:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4163         * enc/utf_8.c: add UTF8-MAC (UTF-8-MAC).
4165 Fri May 30 04:17:13 2008  Akinori MUSHA  <knu@iDaemons.org>
4167         * enum.c (enum_count, count_all_i, Init_Enumerable),
4168           array.c (rb_ary_count): If no argument or block is given, count
4169           the number of all elements.
4171 Fri May 30 03:12:18 2008  Akinori MUSHA  <knu@iDaemons.org>
4173         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
4174           Int should be enough here.
4176 Fri May 30 02:35:00 2008  Akinori MUSHA  <knu@iDaemons.org>
4178         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
4179           ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
4180           (ossl_dh_initialize),
4181           ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
4182           ext/openssl/ossl_rand.c (ossl_rand_bytes)
4183           (ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
4184           ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
4185           use FIX2INT() without checking the value type.  Use NUM2INT()
4186           instead; found by akr in [ruby-dev:34890].
4188 Fri May 30 02:08:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4190         * signal.c (esignal_init): handle a non-integer argument correctly,
4191           allowing SignalException.new(:INT).
4193 Fri May 30 00:59:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4195         * test/ruby/test_regexp.rb: add tests.
4197 Thu May 29 22:51:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4199         * test/ruby/test_require.rb: add a test for load with wrap flag, to
4200           achieve 100% test coverage of eval_jump.c.
4202 Thu May 29 22:47:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4204         * test/ruby/test_argf.rb: new tests for ARGF, to achieve over 85% test
4205           coverage of file.c.
4207         * test/ruby/test_io.rb: add tests.
4209 Thu May 29 22:41:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4211         * io.c (argf_readchar): raise EOFError, synchronizing IO#readchar.
4213 Thu May 29 22:29:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4215         * io.c (argf_external_encoding, argf_internal_encoding): fix SEGV by
4216           ARGF.external_encoding.
4218 Thu May 29 17:52:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4220         * ext/zlib/extconf.rb: search zlib1, and regard mswin32 later than VC6
4221           as WIN32.  [ruby-core:16984]
4223 Wed May 28 18:05:28 2008  Akinori MUSHA  <knu@iDaemons.org>
4225         * array.c (rb_ary_nitems, Init_Array): Axe Array#nitems().
4226           cf. [ruby-dev:34676]-[ruby-dev:34713]
4228 Wed May 28 17:50:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4230         * win32/mkexports.rb (Exports#objdump, Exports#each_line): extracted.
4232 Wed May 28 17:41:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4234         * Makefile.in (MKPREP): appended $(RBCONFIG).
4236         * common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
4237           to get of compiling twice each time.
4239         * win32/Makefile.sub (prelude.c): not depend on $(PREP).
4241 Wed May 28 17:37:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4243         * win32/mkexports.rb (Exports::Mswin#each_export): speed up.
4245 Wed May 28 16:41:59 2008  Akinori MUSHA  <knu@iDaemons.org>
4247         * array.c (rb_ary_slice_bang): Call rb_ary_modify_check() at the
4248           beginning. [rubyspec]
4250 Wed May 28 16:12:44 2008  Akinori MUSHA  <knu@iDaemons.org>
4252         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
4253           Set the HTTP status code to 302 if a Location header field is
4254           present and the status code is not valid as a client
4255           redirection.  cf. RFC 3875 6.2.3, 6.2.4.
4257 Wed May 28 15:53:52 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4259         * enc/trans/japanese.c (to_SHIFT_JIS_EF_infos): typo.
4261 Wed May 28 15:18:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4263         * lib/singleton.rb (SingletonClassMethods): _load should be public.
4265 Wed May 28 13:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4267         * enc/trans/japanese.c: add workaround for Unicode to CP932.
4268           U+2015->0x815C, U+2225->0x8161, U+FF0D->0x817C, U+FF3C->0x815F,
4269           U+FF5E->0x8160, U+FFE0->0x8191, U+FFE1->0x8192, U+FFE2->0x81CA
4271 Wed May 28 12:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4273         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
4274           private methods too.  [ruby-dev:34671]
4276         * object.c (convert_type): ditto.
4278 Wed May 28 08:42:51 2008  Tanaka Akira  <akr@fsij.org>
4280         * numeric.c: "%" is required before PRI?VALUE.
4282 Tue May 27 22:10:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4284         * eval_error.c (error_handle): SystemExit and SignalException throws
4285           TAG_RAISE but not TAG_FATAL.
4287         * thread.c (rb_thread_execute_interrupts): delay interrupts during
4288           raising exceptions.  [ruby-dev:34855]
4290 Tue May 27 20:18:30 2008  Akinori MUSHA  <knu@iDaemons.org>
4292         * array.c (rb_ary_slice_bang): Return an empty array instead of
4293           nil when pos is valid and len is adjusted from a valid value to
4294           zero; caught by RubySpec.
4296 Tue May 27 19:12:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4298         * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
4299           rid of depending PREP with nmake.
4301         * common.mk (encs): depends on libruby.
4303 Tue May 27 19:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
4305         * ext/stringio/stringio.c (strio_each_char, Init_stringio): Add
4306           StringIO#{each_char,chars}.
4307           (Init_stringio): Fix StringIO#bytes.
4309 Tue May 27 17:54:35 2008  Akinori MUSHA  <knu@iDaemons.org>
4311         * ext/stringio/stringio.c (strio_each_byte): Return self instead
4312           of nil as the rdoc says.
4314 Tue May 27 15:36:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4316         * numeric.c (check_int): use PRIxVALUE format specifier.
4318         * numeric.c (check_uint, rb_num2fix, int_chr): ditto.
4320         * numeric.c (num_fdiv): fallback to_f should always return float
4321           result.  should not use #quo that may return rational.
4323         * numeric.c (num_div): should raise ZeroDivisionError.
4325         * numeric.c (fix_divide): ditto.
4327         * test/ruby/test_numeric.rb (TestNumeric::test_divmod): avoid
4328           ZeroDivisionError in tests.
4330 Tue May 27 13:14:53 2008  Akinori MUSHA  <knu@iDaemons.org>
4332         * enum.c (enum_to_a): Pass arguments through to #each().
4333           (enum_sort): Follow the enum_to_a signature change.
4334           (enum_reverse_each): Add #reverse_each().
4336 Tue May 27 13:12:37 2008  Akinori MUSHA  <knu@iDaemons.org>
4338         * io.c (Init_IO): Define ARGF.{lines,bytes,chars}.
4340 Tue May 27 12:06:37 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4342         * file.c (BUFCHECK): wrong condition. [ruby-core:16921]
4344         * file.c (file_expand_buf): shouldn't use buflen for length of string.
4346 Mon May 26 18:24:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4348         * file.c (BUFCHECK): no resize if enough room.
4350         * file.c (file_expand_path): use BUFCHECK.
4352 Mon May 26 17:48:42 2008  Akinori MUSHA  <knu@iDaemons.org>
4354         * enumerator.c (struct enumerator, enumerator_init)
4355           (enumerator_init_copy, enumerator_each): Eliminate iter.
4356           (enumerator_ptr): Do not hardcode the class name.
4357           (enumerator_with_index): Delay variable initialization after
4358           RETURN_ENUMERATOR().
4360 Mon May 26 17:23:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4362         * file.c (file_expand_path): add more space for '/'.
4364         * file.c (file_expand_path): should reset address of p after calling
4365           rb_str_resize(). [ruby-dev:34800]
4367 Mon May 26 16:49:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4369         * misc/ruby-mode.el (ruby-mode): use run-hooks if run-mode-hook is
4370           not available.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>
4371           in [ruby-dev:34853].
4373 Mon May 26 16:41:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4375         * file.c (ntfs_tail): filename which starts with '.' is valid.
4377         * file.c (file_expand_path): cygwin symlink support.
4379 Mon May 26 07:15:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4381         * vm_dump.c (rb_vm_bugreport): rb_make_backtrace has no arguments.
4383 Mon May 26 01:17:54 2008  Tanaka Akira  <akr@fsij.org>
4385         * test/ruby/envutil.rb (assert_normal_exit): signal description
4386           refined.
4388 Mon May 26 00:52:52 2008  Akinori MUSHA  <knu@iDaemons.org>
4390         * hash.c (env_each_key, env_each_value, env_reject_bang)
4391           (rb_env_clear, env_replace): Omit duplicated secure level check.
4393 Mon May 26 00:37:16 2008  Akinori MUSHA  <knu@iDaemons.org>
4395         * hash.c (env_each_value): Do not call env_values() twice.
4397 Sun May 25 17:54:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4399         * compile.c (iseq_compile): set local_table for
4400           ISEQ_TYPE_DEFINED_GUARD.
4402 Sun May 25 17:52:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4404         * compile.c (iseq_build_body): remove side effect from
4405           VM::InstructionSequence.load.
4407 Sun May 25 04:30:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4409         * test/ruby/test_modules.rb (remove_json_mixins): change judgment
4410           condition.
4412 Sun May 25 03:54:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4414         * test/ruby/test_modules.rb (test_ancestors, test_included_modules):
4415           ignore json mixins.
4417 Sun May 25 02:37:25 2008  Koichi Sasada  <ko1@atdot.net>
4419         * eval_method.c: renamed from vm_method.c.  "vm_method.c" is included
4420           by "vm.c".
4422         * vm_eval.c: added.  Some codes are moved from "eval.c"
4424         * common.mk: fix for above changes.
4426         * compile.c: make a vm_eval(0)
4428         * eval.c, eval_error.c, eval_intern.h, eval_jump.c, proc.c, vm.c,
4429           id.c, id.h, vm_core.h, vm_dump.c, vm_evalbody.c, vm_insnhelper.c,
4430           blockinlining.c: fix for above changes.  and do some refactoring.
4431           this changes improve rb_yield() performance.
4433 Sat May 24 22:32:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4435         * util.c (ruby_strtod): clear errno at the top of our own
4436           implementation of strtod(3).  [ruby-dev:34834] [ruby-dev:34839]
4438 Sat May 24 15:26:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4440         * compile.c (iseq_set_exception_table, NODE_WHILE, NODE_NEXT): remove
4441           special handling that decrements sp in CATCH_TYPE_NEXT for NODE_WHILE.
4443         * vm.c (vm_eval_body), vm_insnhelper.c (vm_throw): remove unused code.
4445 Sat May 24 08:13:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4447         * transcode.c (rb_str_transcode): argc is 1, and argv is &to.
4449 Fri May 23 17:55:11 2008  Akinori MUSHA  <knu@iDaemons.org>
4451         * array.c (rb_ary_slice_bang): Be consistent with Array#slice()
4452           and String#slice!().  Just return nil when a negative length or
4453           out of boundary index is given instead of raising an exception
4454           via internal functions.
4456 Fri May 23 16:44:34 2008  Akinori MUSHA  <knu@iDaemons.org>
4458         * enumerator.c (Init_Enumerator): Override
4459           Enumerable::Enumerator#each_with_index with #with_index.
4461 Fri May 23 12:23:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4463         * vm_core.h (rb_num_t): moved form vm.h.
4465         * tool/instruction.rb (RubyVM::Instruction#sp_increase_c_expr),
4466           tool/instruction.rb (RubyVM::VmBodyGenerator#make_header_operands):
4467           omit unused variables.
4469 Fri May 23 08:47:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4471         * error.c (exc_equal): == operator should be transitional.  
4472           [ruby-dev:34808]
4474         * error.c (syserr_eqq): === should be able to handle delegated
4475           objects as well.
4477 Fri May 23 06:15:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4479         * iseq.c (rb_iseq_compile_with_option): get rid of segv.
4481 Fri May 23 02:29:14 2008  Koichi Sasada  <ko1@atdot.net>
4483         * insns.def (opt_gt|ge|lt|le): use values directly to compare.
4485 Fri May 23 01:15:09 2008  Koichi Sasada  <ko1@atdot.net>
4487         * eval.c, eval_intern.h, include/ruby/intern.h, include/ruby/ruby.h,
4488           vm.c, vm_core.h, vm_insnhelper.c: remove pointless "const".
4490 Thu May 22 23:45:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4492         * compile.c (get_destination_insn, get_next_insn, get_prev_insn):
4493           peephole optimization should not ignore ISEQ_ELEMENT_ADJUST.
4495 Thu May 22 20:20:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4497         * marshal.c (check_dump_arg, check_load_arg): check if reentered.
4498           [ruby-dev:34802]
4500 Thu May 22 20:14:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4502         * iseq.c (iseq_load, iseq_data_to_ary): support
4503           ISEQ_TYPE_DEFINED_GUARD.
4505 Thu May 22 19:01:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4507         * vm.c (vm_get_ruby_level_cfp): moved from eval_intern.h.
4509         * vm.c (sdr, nsdr): define methods only if VMDEBUG is defined.
4511 Thu May 22 17:18:35 2008  Tanaka Akira  <akr@fsij.org>
4513         * array.c (rb_ary_compact_bang): fix reallocation size.
4515 Thu May 22 15:20:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4517         * eval_intern.h, vm_core.h, include/ruby/intern.h, include/ruby/ruby.h,
4518           vm.c: need to add const to prototypes, of course.
4520 Thu May 22 13:24:43 2008  Koichi Sasada  <ko1@atdot.net>
4522         * eval.c, vm.c, vm_core.h, vm_insnhelper.c: specify "const".
4524         * vm_opts.h: add a OPT_TOKEN_THREADED_CODE macro.
4526 Thu May 22 12:51:41 2008  Tanaka Akira  <akr@fsij.org>
4528         * insns.def (newhash): fix a variable definition: "const k".
4530 Thu May 22 12:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4532         * array.c (flatten): check if reentered.  [ruby-dev:34798]
4534 Thu May 22 11:39:59 2008  Tanaka Akira  <akr@fsij.org>
4536         * test/ruby/envutil.rb (assert_normal_exit): capture stdout and stderr
4537           of the child process.
4539 Thu May 22 08:28:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4541         * array.c (flatten): free memo hash table before raising exception.
4542           [ruby-dev:34789]
4544 Thu May 22 06:30:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4546         * array.c (flatten): fix memory leak.
4548 Thu May 22 06:21:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4550         * ext/nkf/nkf-utf8/nkf.c (nkf_str_caseeql): added.
4552         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index): use nkf_str_caseeql.
4554 Thu May 22 05:45:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4556         * proc.c (proc_dup): should copy safe_level from src proc
4557           properly.  a patch from Keita Yamaguchi
4558           <keita.yamaguchi at gmail.com>
4560 Thu May 22 02:46:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
4562         * lib/net/imap.rb: do not use Thread#raise. [ruby-dev:34739]
4564 Thu May 22 00:30:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4566         * test/ruby/test_require.rb: new tests for library requiring, to
4567           achieve over 90% test coverage of dln.c.
4569         * test/ruby/test_class.rb: add tests to achieve over 90% test coverage
4570           of class.c.
4572         * test/ruby/test_module.rb: ditto.
4574 Thu May 22 00:15:44 2008  Koichi Sasada  <ko1@atdot.net>
4576         * insns.def, vm_insnhelper.c: specify "const".
4578 Wed May 21 23:20:21 2008  Koichi Sasada  <ko1@atdot.net>
4580         * bootstraptest/test_eval.rb: fix syntax.
4582 Wed May 21 17:46:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4584         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index):
4585           use strcasecmp. [ruby-dev:34787]
4587 Wed May 21 16:48:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4589         * array.c (rb_ary_compact_bang): avoid forceful realloc.
4591 Wed May 21 07:42:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4593         * string.c (rb_usascii_str_new): use rb_str_new.
4595         * string.c (rb_enc_str_new): ditto.
4597         * string.c (rb_usascii_str_new2): use rb_str_new2.
4599 Wed May 21 07:22:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4601         * encoding.c, include/ruby/encoding.h
4602           (rb_enc_associate, rb_enc_associate_index):
4603           returns obj. [ruby-dev:34778]
4605 Wed May 21 04:20:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4607         * encoding.c (rb_ascii8bit_encoding): use ENCINDEX_ASCII.
4609         * encoding.c, include/ruby/encoding.h (rb_ascii8bit_encindex):
4610           added.
4612         * encoding.c (rb_locale_encoding): use rb_usascii_encoding().
4614 Wed May 21 01:45:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4616         * test/ruby/test_file_exhaustive.rb (setup): workaround for Windows
4617           Vista.
4619         * test/ruby/envutil.rb (rubyexec): now Open3.open3 is supported on
4620           Windows.
4622         * test/ruby/test_process.rb: use ``||'' instead of ``;'' because
4623           cmd.exe not support it.
4625 Wed May 21 01:28:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4627         * transcode.c, include/ruby/encoding.h (rb_str_transcode):
4628           C API of encoding conversion for Ruby object.
4629           VALUE rb_str_transcode(VALUE str, VALUE to).
4631         * transcode.c (str_encode, str_encode_bang):
4632           rename from rb_tr_transcode or rb_str_transcode_bang.
4634 Tue May 20 23:26:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4636         * test/ruby/test_array.rb: fix tests for 64bit CPU.
4638 Tue May 20 20:59:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4640         * ext/nkf/nkf-utf8/nkf.c (rb_nkf_convert) (nkf_enc_without_bom):
4641           reverted. nkf-utf8/nkf.c should be independent of ruby.
4643         * ext/nkf/nkf.c (options):
4644           moved from nkf-utf8/nkf.c. 
4645           override nkf's original settings for Unicode BOM.
4647 Tue May 20 13:20:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4649         * ext/nkf/nkf.c (rb_nkf_convert), ext/nkf/nkf-utf8/nkf.c
4650           (nkf_enc_without_bom): BOM is not a part of encodings.
4652         * ext/nkf/nkf.c (Init_nkf), ext/nkf/nkf-utf8/nkf.c (options):
4653           UTF-{16,32} without endian have no sense.
4655 Tue May 20 12:13:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4657         * ruby.c (proc_options, process_options): --dump option.
4659 Tue May 20 11:36:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4661         * include/ruby/ruby.h (PRI[diouxX]VALUE): printf format for VALUE.
4663         * gc.c (assign_heap_slot): suppress a warning.
4665 Tue May 20 03:42:43 2008  Koichi Sasada  <ko1@atdot.net>
4667         * eval.c, vm_insnhelper.c: fix cref in instance_eval
4668           and cvar_base search protocol.
4670         * bootstraptest/test_knownbug.rb, test_eval.rb: move solved test
4671           and add new tests.
4673         * test/ruby/test_eval.rb: fix tests for spec.
4675 Tue May 20 01:43:44 2008  Koichi Sasada  <ko1@atdot.net>
4677         * bootstraptest/test_knownbug.rb: fix a test.
4678           "block_given?" returns true if "yield" can be used.
4680 Tue May 20 01:07:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4682         * parse.y (assignable_gen): when "self = 1" was evaluated, unnecessary
4683           error message was output, which might cause null pointer access.
4685 Tue May 20 08:38:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4687         * string.c (rb_enc_strlen_cr): need to set ENC_CODERANGE_7BIT if
4688           search_nonascii() fails.    [ruby-dev:34751]
4690         * string.c (rb_str_reverse): preserve coderange info if the
4691           receiver is 7bit string.
4693         * string.c (rb_str_reverse_bang): ditto.
4695         * string.c (rb_str_reverse_bang): should have called
4696           single_byte_optimizable before rb_str_modify() that clears
4697           coderange info.
4699         * string.c (tr_trans): handle single bytes more eagerly.
4701 Mon May 19 23:32:12 2008  Koichi Sasada  <ko1@atdot.net>
4703         * vm.c (invoke_block_from_c): fix call flow.
4705 Mon May 19 23:19:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4707         * regexec.c (slow_search): check the case when the length is 1.
4708           The behavior of memcmp is undefined if the third argument is 0.
4710 Mon May 19 21:07:48 2008  Koichi Sasada  <ko1@atdot.net>
4712         * thread_pthread.c (native_thread_apply_priority): 
4713           fix argument range check.  [ruby-dev:33124]
4715 Mon May 19 18:22:35 2008  Akinori MUSHA  <knu@iDaemons.org>
4717         * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
4718           of md; pointed out by Takahiro Kambe <taca at back-street.net>
4719           in [ruby-dev:34748].
4721 Mon May 19 17:23:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4723         * regparse.c (PINC): use optimized enclen() instead of
4724           ONIGENC_MBC_ENC_LEN().
4726         * regparse.c (PFETCH): ditto.
4728         * regparse.c (PFETCH): small optimization.
4730         * regexec.c (slow_search): single byte encoding optimization.
4732         * regenc.h (enclen): avoid calling function when encoding's
4733           min_len == max_len.
4735         * re.c (rb_reg_regsub): rb_enc_ascget() optimization for single
4736           byte encoding.
4738         * re.c (rb_reg_search): avoid allocating new re_registers if we
4739           already have MatchData.
4741         * re.c (match_init_copy): avoid unnecessary onig_region_free()
4742           before onig_region_copy. 
4744         * encoding.c (rb_enc_get_index): remove implicit enc_capable check
4745           each time.
4747         * encoding.c (rb_enc_set_index): ditto.
4749         * encoding.c (enc_compatible_p): small refactoring.
4751         * include/ruby/encoding.h (rb_enc_dummy_p): inline
4752           rb_enc_dummy_p() and export related code.
4754 Mon May 19 14:32:03 2008  Koichi Sasada  <ko1@atdot.net>
4756         * version.h: fix strange change by version.h update tool.
4758 Mon May 19 14:18:13 2008  Koichi Sasada  <ko1@atdot.net>
4760         * bootstraptest/test_knownbug.rb: move solved tests.
4762         * bootstraptest/test_eval.rb, test_literal.rb, test_syntax.rb,
4763           test_thread.rb: ditto.
4765         * test/ruby/test_m17n.rb, test_proc.rb, test_sprintf.rb,
4766           test_string.rb, test/ruby/test_struct.rb: ditto.
4768 Mon May 19 13:23:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4770         * process.c (rb_spawn_internal): set last_status when status == -1
4771           because there is no path to set it on win32. this patch is derived
4772           from [ruby-core:16787], submitted by Luis Lavena <luislavena at
4773           gmail.com>
4775 Mon May 19 11:32:47 2008  Koichi Sasada  <ko1@atdot.net>
4777         * vm.c, insns.def, eval.c, vm_insnhelper.c: fix CREF handling.
4778           VM value stack frame of block contains cref information.
4779          (dfp[-1] points CREF)
4781         * compile.c, eval_intern.h, eval_method.c, load.c, proc.c,
4782           vm_dump.h, vm_core.h: ditto.
4784         * include/ruby/ruby.h, gc.c: remove T_VALUES because of above
4785           changes.
4787         * bootstraptest/test_eval.rb, test_knownbug.rb: move solved test.
4789 Sun May 18 22:26:51 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
4791         * lib/webrick/httpservlet/filehandler.rb: should normalize path
4792           name in path_info to prevent script disclosure vulnerability on
4793           DOSISH filesystems. (fix: CVE-2008-1891)
4794           Note: NTFS/FAT filesystem should not be published by the platforms
4795           other than Windows. Pathname interpretation (including short
4796           filename) is less than perfect.
4798         * lib/webrick/httpservlet/abstract.rb
4799           (WEBrick::HTTPServlet::AbstractServlet#redirect_to_directory_uri):
4800           should escape the value of Location: header.
4802         * lib/webrick/httpservlet/cgi_runner.rb: accept interpreter
4803           command line arguments.
4805 Sun May 18 02:54:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4807         * pack.c (pack_pack): check errno to detect error of ruby_strtoul.
4809         * pack.c (pack_unpack): ditto.
4811         * test/ruby/test_pack.rb: add a test for above.
4813 Sat May 17 23:53:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4815         * file.c (file_expand_path): fix for short file name on Cygwin.
4817 Sat May 17 18:03:52 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
4819         * vm.c (Init_VM): removed the definition of Thread#initialize,
4820           which is overwritten in Init_Thread and is never used.
4822 Sat May 17 14:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4824         * array.c (rb_ary_sort_bang): should not free shared pointer, and set
4825           shared.  [ruby-dev:34732]
4827 Sat May 17 12:34:54 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
4829         * thread_pthread.c (Init_native_thread): Kernel#.sleep used never to
4830           sleep on Mac OS X. Reported by arton <artonx AT yahoo.co.jp>.
4832         * thread_pthread.c (native_sleep): added error checks.
4834 Sat May 17 11:29:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4836         * file.c (rb_file_s_extname): first dot is not an extension name.
4838 Sat May 17 03:21:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4840         * array.c (rb_ary_sort_bang): stop memory leak.  [ruby-dev:34726]
4842         * re.c (rb_reg_search): need to free allocated buffer in re_register.
4844         * regexec.c (onig_region_new): more pedantic malloc check.
4846         * regexec.c (onig_region_resize): ditto.
4848         * regexec.c (STATE_CHECK_BUFF_INIT): ditto.
4850         * regexec.c (onig_region_copy): use onig_region_resize.
4852 Fri May 16 12:48:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4854         * math.c (to_flo): rb_Float() accepts even strings for input.
4856         * complex.c (nucomp_to_f): fix wrong message.
4858         * complex.c (nucomp_to_r): ditto.
4860         * object.c (rb_Float): do not check NaN for error.  NaN is a part
4861           of valid float values.
4863 Thu May 15 23:36:09 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4865         * test/ruby/test_string.rb: add tests to achieve over 90% test
4866           coverage of string.c.
4868         * test/ruby/test_m17n.rb: ditto.
4870         * test/ruby/test_symbol.rb: ditto.
4872         * test/ruby/test_pack.rb: ditto.
4874 Thu May 15 23:01:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4876         * string.c (tr_find): String#delete returned wrong result when multiple
4877           utf-8 arguments are passed.
4879         * test/ruby/test_m17n.rb (test_delete): add a test for above.
4881 Thu May 15 22:37:56 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4883         * parse.y (ripper_warningS): now used.
4885 Thu May 15 15:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4887         * file.c (file_expand_path): support for alternative data stream
4888           and ignored trailing garbage of NTFS.
4890         * file.c (rb_file_s_basename): ditto.
4892         * file.c (rb_file_s_extname): ditto.
4894 Thu May 15 13:43:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4896         * object.c (rb_cstr_to_dbl): no need for forceful warning when
4897           converting to float.  overflow is a nature of float values.
4899         * parse.y (parser_yylex): ditto.
4901 Thu May 15 13:23:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4903         * re.c (rb_reg_prepare_enc): error condition was updated for non
4904           ASCII compatible strings.
4906 Thu May 15 12:19:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4908         * ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
4909           prototype change in openssl bundled with newer OpenBSD.
4910           a patch from Takahiro Kambe <taca at back-street.net> in
4911           [ruby-dev:34691].
4913 Wed May 14 22:09:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4915         * ChangeLog: fix typo.
4917 Wed May 14 21:49:14 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4919         * test/ruby/test_object.rb: new tests to achieve over 90% test
4920           coverage of object.c, eval.c and eval_method.c.
4922         * test/ruby/test_module.rb: ditto.
4924         * test/ruby/test_trace.rb: ditto.
4926         * test/ruby/test_integer.rb: ditto.
4928         * test/ruby/test_float.rb: ditto.
4930         * test/ruby/test_method.rb: ditto.
4932         * test/ruby/test_variable.rb: ditto.
4934         * test/ruby/test_eval.rb: ditto.
4936         * test/ruby/test_exception.rb: ditto.
4938         * test/ruby/test_class.rb: ditto.
4940 Wed May 14 12:46:37 2008  Koichi Sasada  <ko1@atdot.net>
4942         * iseq.c (insn_operand_intern): remove Qundef related code.
4944 Wed May 14 12:42:36 2008  Akinori MUSHA  <knu@iDaemons.org>
4946         * array.c (rb_ary_count): Override Enumerable#count for better
4947           performance.
4949 Wed May 14 11:29:06 2008  Koichi Sasada  <ko1@atdot.net>
4951         * insns.def: add a "putcbase" instruction.
4953         * compile.c, insns.def: fix to use putcbase instruction for
4954           class search.  Qundef should not be used.
4956 Wed May 14 07:49:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4958         * eval.c (rb_call0): defer calling of rb_frame_self() until it
4959           become really necessary.
4961         * eval.c (rb_call): ditto.
4963 Wed May 14 00:55:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4965         * test/ruby/test_io_m17n.rb: remove a duplicative method.
4967         * test/ruby/test_utf16.rb: rename a conflicting method name.
4969         * test/ruby/test_array.rb: ditto.
4971         * test/ruby/test_file_exhaustive.rb: ditto.
4973         * test/ruby/test_hash.rb: ditto.
4975         * test/ruby/test_env.rb: ditto.
4977         * test/ruby/test_fixnum.rb: ditto.
4979         * test/ruby/test_rational.rb: ditto.
4981 Wed May 14 00:45:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4983         * eval_method.c (rb_add_method): fix check for warning when
4984           Object#initialize is redefined. (same as 1.8)
4986 Tue May 13 23:32:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4988         * enum.c (enum_yield): use rb_yield_values2.
4990         * enum.c (DEFINE_ENUMFUNCS): macro to define enumerator and yielding
4991           functions.
4993         * enum.c (enum_all_func, enum_any_func, enum_one_func,
4994           enum_none_func): reduced duplicate code.
4996 Tue May 13 15:09:38 2008  Akinori MUSHA  <knu@iDaemons.org>
4998         * enumerator.c: Update rdoc.
4999           (enumerator_initialize): Discourage the use.
5000           (enum_each_slice, enum_each_cons, enumerator_each)
5001           (enumerator_with_index): Add a note about a call without a block.
5003 Tue May 13 08:25:31 2008  Tanaka Akira  <akr@fsij.org>
5005         * io.c (rb_f_gets): re-enable rdoc.
5006           (rb_f_readline): ditto.
5007           (rb_f_readlines): ditto.
5009 Tue May 13 07:56:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5011         * string.c (rb_str_cat): fixed buffer overrun reported by
5012           Christopher Thompson <cthompson at nexopia.com> in [ruby-core:16746]
5014 Mon May 12 23:37:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5016         * vm.c (collect_local_variables_in_env): remove unnecessary check
5017           which causes: x=1;proc{local_variables}.call #=> []
5019         * test/ruby/test_variable.rb: add a test for above.
5021 Mon May 12 23:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5023         * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
5025         * process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
5026           run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
5027           save parent's process environments.
5029         * process.c (rb_spawn_internal): remove calling run_exec_options()
5030           because cannot restore after spawn.
5032         * io.c (pipe_open): ditto.
5034         * test/ruby/test_process.rb (test_execopts_env): upcase environment
5035           variable name for case insensitive platforms.
5037         * win32/win32.c (init_env): set USER environment variable only when
5038           USERNAME is available.
5040 Mon May 12 22:23:01 2008  Tanaka Akira  <akr@fsij.org>
5042         * lib/date.rb (once): use Object#object_id instead of Symbol#to_i.
5044 Mon May 12 21:34:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5046         * test/ruby/envutil.rb (rubybin): return expanded rubyexe instead of
5047           expanded ruby if available.
5049 Mon May 12 20:19:55 2008  Akinori MUSHA  <knu@iDaemons.org>
5051         * enum.c (grep_i): Be aware of multiple values;
5052           fix [ruby-dev:34653].
5053           (grep_iter_i): Ditto.
5054           (count_i): Ditto.
5055           (find_i): Ditto.
5056           (find_index_i): Ditto.
5057           (find_all_i): Ditto.
5058           (reject_i): Ditto.
5059           (inject_i): Ditto.
5060           (inject_op_i): Ditto.
5061           (partition_i): Ditto.
5062           (group_by_i): Ditto.
5063           (first_i): Ditto.
5064           (sort_by_i): Ditto.
5065           (all_i): Ditto.
5066           (all_iter_i): Ditto.
5067           (any_i): Ditto.
5068           (any_iter_i): Ditto.
5069           (one_i): Ditto.
5070           (one_iter_i): Ditto.
5071           (none_i): Ditto.
5072           (none_iter_i): Ditto.
5073           (min_i): Ditto.
5074           (min_ii): Ditto.
5075           (max_i): Ditto.
5076           (max_ii): Ditto.
5077           (minmax_i): Ditto.
5078           (minmax_ii): Ditto.
5079           (min_by_i): Ditto.
5080           (max_by_i): Ditto.
5081           (minmax_by_i): Ditto.
5082           (member_i): Ditto.
5083           (take_i): Ditto.
5084           (take_while_i): Ditto.
5085           (drop_i): Ditto.
5086           (drop_while_i): Ditto.
5087           (cycle_i): Ditto.
5089         * enum.c (each_with_index): Update rdoc.  each_with_index() takes
5090           arguments that are passed through to each(), and a hash preserves
5091           key order.
5093 Mon May 12 19:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5095         * process.c (rb_spawn_internal): remove calling run_exec_options()
5096           because cannot restore after spawn. we'll fix this later.
5098 Mon May 12 18:16:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5100         * process.c (rb_spawn_internal): need to call run_exec_options() before
5101           spawn if the platform doesn't have fork. [ruby-dev:34647]
5103 Mon May 12 15:20:02 2008  Tanaka Akira  <akr@fsij.org>
5105         * gc.c (ruby_vm_xmalloc): increase malloc_increase only if malloc
5106           succeeds.  failed malloc size can be huge.  it may increase
5107           malloc_limit too big which cause less GC and memory full.
5108           (ruby_vm_xrealloc): ditto.
5109           (rb_objspace): make params.limit and params.increase size_t.
5111 Mon May 12 15:04:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5113         * re.c (rb_reg_prepare_re): made non static with small refactoring.
5115         * ext/strscan/strscan.c (strscan_do_scan): should adjust encoding
5116           before regex searching.
5118 Mon May 12 13:57:19 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5120         * eval.c (is_defined): add NODE_OP_ASGN_{OR,AND}.  "defined?(a||=1)"
5121           should not operate assignment.  [ruby-dev:34645]
5123 Mon May 12 13:29:26 2008  Tanaka Akira  <akr@fsij.org>
5125         * bignum.c (bigzero_p): check from MSB to LSB.  [ruby-dev:34649]
5127 Mon May 12 12:32:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5129         * common.mk (RUBYOPT): affected BASERUBY too.  [ruby-talk:301514]
5131 Mon May 12 12:27:55 2008  Tanaka Akira  <akr@fsij.org>
5133         * gc.c (assign_heap_slot): fix condition for number of objects in
5134           a heap.
5136 Mon May 12 12:24:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5138         * string.c (sym_to_i): really removed.  [ruby-dev:34641]
5140 Mon May 12 11:15:55 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5142         * gc.c (assign_heap_slot):  put the binary search routine in order.
5144 Mon May 12 10:52:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5146         * ruby.c (ruby_init_gems), gem_prelude.rb: check if Gem is defined
5147           instead of Gem::Enable.
5149         * gem_prelude.rb (load_full_rubygems_library, const_missing): prevent
5150           infinite recursion.  [ruby-dev:34539]
5152 Sun May 11 23:19:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5154         * enum.c (all_iter_i, any_iter_i): reduced duplicated code.
5156 Sun May 11 22:54:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5158         * bootstraptest/runner.rb (main): leave -I options for purelib.rb
5159           untouched.
5161         * bootstraptest/runner.rb (main): handle relative path -r options.
5163 Sun May 11 19:04:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5165         * test/ruby/test_thread.rb: kill and join temporal threads that are
5166           created in each test.
5168 Sun May 11 17:58:45 2008  Tanaka Akira  <akr@fsij.org>
5170         * test/ruby/test_process.rb (TestProcess#with_stdin): defined.
5171           (TestProcess#test_argv0_noarg): don't use redirect_fds.
5172           [ruby-dev:34647]
5174 Sun May 11 17:57:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5176         * configure.in (MINIRUBY): should not include extension library path.
5178 Sun May 11 14:40:36 2008  Tanaka Akira  <akr@fsij.org>
5180         * include/ruby/ruby.h (SIZET2NUM): new macro.
5181           (NUM2SIZET): new macro.
5183         * gc.c (struct rb_objspace): use size_t for increment, length and
5184           used for 64bit.
5185           (allocate_heaps): ditto.
5186           (assign_heap_slot): ditto.
5187           (set_heaps_increment): ditto.
5188           (gc_mark_all): ditto.
5189           (is_pointer_to_heap): ditto.
5190           (free_unused_heaps): ditto.
5191           (gc_sweep): ditto.
5192           (os_obj_of): ditto.
5193           (rb_gc_call_finalizer_at_exit): ditto.
5194           (count_objects): ditto.
5196 Sun May 11 13:14:09 2008  Tanaka Akira  <akr@fsij.org>
5198         * thread.c (thread_cleanup_func_before_exec): extracted from
5199           thread_cleanup_func not to touch pthread data.
5200           pthread_cond_destroy in forked process may cause deadlock on
5201           Debian GNU/Linux Etch on x86, x86-64 and IA64.
5202           this doesn't cause resource leak because the process will exec soon.
5203           (terminate_atfork_before_exec_i): defined.
5204           (rb_thread_atfork_before_exec): defined.
5206         * include/ruby/intern.h (rb_thread_atfork_before_exec): declared.
5208         * process.c (rb_exec_atfork): call rb_thread_atfork_before_exec
5209           instead of rb_thread_atfork.
5211         * io.c (popen_exec): call rb_thread_atfork_before_exec instead of
5212           rb_thread_atfork.
5214 Sat May 10 22:14:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5216         * string.c (tr_trans): single '^' does not mean negation.
5217           [ruby-dev:34632]
5219         * string.c (tr_trans): should check src size, not str size.
5220           [ruby-dev:34637]
5222         * string.c (tr_trans): should not turn on modify flag if no
5223           modification happens.  [ruby-dev:34631]
5225 Sat May 10 18:11:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5227         * string.c (rb_str_each_line): zero length record separator should
5228           split a string into paragraphs.  [ruby-dev:34586]
5230         * string.c (rb_str_each_line): RDoc updated.
5232 Sat May 10 11:36:20 2008  Tanaka Akira  <akr@fsij.org>
5234         * vm.c (env_mark): mark env->block.self.  prevent SEGV when GC occur
5235           in prepare_iseq_build with gcc version 3.4.6 [FreeBSD] 20060305 on
5236           FreeBSD/amd64.
5238 Fri May  9 19:16:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5240         * thread.c (timeofday): use monotonic clock.  based on a patch
5241           from zimbatm <zimbatm at oree.ch> in [ruby-core:16627].
5243 Fri May  9 07:47:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5245         * cont.c (cont_restore_0): dynamic stack direction code should be
5246           consistent with static one.  [ruby-talk:301152]
5248 Fri May  9 00:03:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5250         * parse.y (arg): operator assignment "a += b rescue c" should be
5251           parsed as "a += (b rescue c)" just like normal assignment.
5252           [ruby-talk:301000]
5254 Thu May  8 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5256         * bignum.c (rb_big_and): bit-wise operation should not take float
5257           values.  [ruby-dev:34612]
5259         * bignum.c (rb_big_or): ditto.
5261         * bignum.c (rb_big_xor): ditto.
5263 Thu May  8 17:44:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5265         * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
5267         * file.c (rb_find_file_ext): guard load_path from GC.
5268           gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) optimizes
5269           load_path by holding only RARRAY_LEN(load_path) and
5270           RARRAY_PTR(load_path) in registers on IA64 GNU/Linux Etch.
5272 Thu May  8 16:41:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5274         * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
5275           [ruby-core:16642]
5277 Thu May  8 16:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5279         * parse.y (parser_yylex): ! and ? at the bottom are no longer part
5280           of valid symbol names.  [ruby-dev:34590]
5282 Thu May  8 15:36:11 2008  Tanaka Akira  <akr@fsij.org>
5284         * thread.c (rb_gc_save_machine_context): call FLUSH_REGISTER_WINDOWS
5285           to mark the register stack from GC on another thread.
5287 Thu May  8 15:14:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5289         * array.c (rb_ary_sort_bang): freeze temporary array.
5291 Thu May  8 13:19:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5293         * vm.c (rb_thread_mark): mark stat_insn_usage only when ptr is not
5294           null.
5296 Thu May  8 10:44:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5298         * array.c (sort_reentered): reentered check may be called from
5299           Array#sort.
5301 Thu May  8 09:51:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5303         * array.c (sort_1, sort_2): check for reentered and if elements are
5304           accessible.  [ruby-core:16679]
5306 Thu May  8 06:43:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5308         * dln.c (dln_find_exe_r, dln_find_file_r): reentrant versions.
5310         * file.c (rb_find_file_ext, rb_find_file), process.c (proc_exec_v),
5311           (rb_proc_exec, proc_spawn_v, proc_spawn), ruby.c (process_options):
5312           use reentrant versions.
5314 Thu May  8 06:27:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5316         * thread.c (rb_thread_key_p): thread local storage stores ID.
5318 Thu May  8 01:10:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5320         * string.c (tr_trans): should squeeze properly.  [ruby-dev:34587]
5322         * string.c (tr_trans): had a bug in treating multi-byte character
5323           replacement.
5325         * string.c (rb_str_delete_bang): need not to do anything for empty
5326           strings.
5328         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_delete): add
5329           test for empty receiver.
5331 Wed May  7 20:19:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5333         * ruby.c (process_options, ruby_set_argv): set encoding of rb_argv
5334           after Init_prelude() because cannot load encoding extensions before
5335           it.
5337 Wed May  7 20:00:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5339         * numeric.c (bit_coerce): float should not be a valid operand of
5340           bitwise operations.  [ruby-dev:34583]
5342 Wed May  7 19:35:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5344         * thread.c (rb_thread_key_p): should always convert symbol to ID.
5345           [ruby-dev:34588]
5347 Wed May  7 19:30:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5349         * numeric.c (fix_divide): float division should floor() before
5350           rounding into integer.  [ruby-dev:34584]
5352 Wed May  7 18:02:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5354         * string.c (sym_to_i): remove obsolete method.  preparation for
5355           symbol GC.
5357         * numeric.c (fix_to_sym): ditto.
5359         * numeric.c (fix_id2name): ditto.
5361 Wed May  7 17:43:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5363         * io.c (io_puts_ary): check recursion first.  [ruby-dev:34580]
5365 Wed May  7 17:41:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5367         * vm.c (vm_eval_body): initialize retval.  [ruby-dev:34576]
5369 Wed May  7 13:02:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5371         * bignum.c (rb_big_fdiv): flo.fdiv(NaN) should result NaN.
5373         * numeric.c (num_quo): renamed and moved from bignum.c.
5374           [ruby-dev:34582]
5376         * bignum.c (rb_big_fdiv): update RDoc description
5378         * rational.c (nurat_s_new_m): small refactoring.
5380         * bignum.c (rb_big2dbl): no need for forceful warning when
5381           converting to float.  overflow is a nature of float values.
5383 Wed May  7 00:54:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5385         * ext/zlib/zlib.c (gzreader_gets): may cause infinite loop.
5386           a patch from Kouya <kouyataifu4 at gmail.com> in
5387           [ruby-reference-manual:762].
5389 Tue May  6 02:08:18 2008  Tanaka Akira  <akr@fsij.org>
5391         * test/io/nonblock/test_flush.rb: don't set Thread.abort_on_exception.
5393         * test/net/imap/test_imap.rb: ensure disconnecting imap to terminate
5394           receiver thread.
5396 Tue May  6 00:29:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5398         * iseq.c (insn_operand_intern): should handle Qundef embedded in
5399           operand.  [ruby-core:16656]
5401 Tue May  6 00:00:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5403         * compile.c (iseq_compile_each): should call compile_cpath() for
5404           modules as well.  [ruby-dev:34585]
5406         * insns.def (defineclass): add undef handling.
5408 Mon May  5 23:49:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5410         * insns.def (defineclass): was using wrong variable.  [ruby-dev:34592]
5412 Mon May  5 20:07:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5414         * io.c (io_fflush): IO#flush problem within threads.  a patch from
5415           <s.wanabe at gmail.com> in [ruby-dev:34595].
5417 Mon May  5 19:58:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5419         * compile.c (defined_expr): protect some expression from
5420           segmentation fault.  a patch from wanabe <s.wanabe at gmail.com>
5421           in [ruby-dev:34593].
5423 Mon May  5 19:49:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5425         * struct.c (rb_struct_s_def): Struct.new(0) should not SEGV.
5426           based on the patch from wanabe <s.wanabe at gmail.com> in
5427           [ruby-dev:34594].
5429         * struct.c (make_struct): call to_str on name object.
5431 Mon May  5 17:17:40 2008  Tanaka Akira  <akr@fsij.org>
5433         * eval.c (ruby_cleanup): wrap ruby_finalize_0 by SAVE_ROOT_JMPBUF to
5434           avoid SEGV by at_exit { Fiber.new{}.resume } on IA64.
5436 Mon May  5 12:12:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5438         * array.c (rb_ary_slice_bang): should adjust length before making
5439           sub-array.
5441 Mon May  5 11:36:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5443         * array.c (rb_ary_dup): should dupe corresponding information.
5444           [ruby-dev:34581]
5446 Mon May  5 11:13:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5448         * compile.c (compile_cpath): use Qundef to denote cbase lookup.
5450         * insns.def (defineclass): Qundef is passed for cbase.
5452         * insns.def (setconstant): ditto.
5454         * vm_insnhelper.c (vm_check_if_namespace): use rb_inspect()
5455           instead of rb_obj_as_string() for better description.
5457 Mon May  5 02:10:23 2008  Tanaka Akira  <akr@fsij.org>
5459         * gc.c (set_heaps_increment): fix memory allocation strategy by
5460           determining heaps_inc from heaps_used, not objects_delta.
5461           (struct rb_objspace): delta removed.  change increment, length and
5462           used to long for LP64.
5463           (objects_delta): removed.
5464           (allocate_heaps): add next_heaps_length argument.
5465           (init_heap): renamed from add_heap.
5466           (garbage_collect): use heaps_increment in dont_gc.
5468 Sun May  4 21:09:32 2008  Tanaka Akira  <akr@fsij.org>
5470         * lib/getoptlong.rb: use $stderr instead of $deferr.
5472 Sun May  4 16:04:28 2008  Tanaka Akira  <akr@fsij.org>
5474         * time.c (obj2nsec): fix string argument.
5476 Sun May  4 14:29:14 2008  Tanaka Akira  <akr@fsij.org>
5478         * eval.c (rb_obj_respond_to): check the result of respond_to? method
5479           by RTEST.
5481 Sun May  4 12:57:58 2008  Tanaka Akira  <akr@fsij.org>
5483         * string.c (rb_str_each_line): return original string.
5485 Sat May  3 20:57:06 2008  Tanaka Akira  <akr@fsij.org>
5487         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_normal_exit):
5488           new method.
5490 Sat May  3 18:10:54 2008  Tanaka Akira  <akr@fsij.org>
5492         * time.c (time_timespec): raise TypeError for nil and other objects
5493           which has no divmod method.
5495 Fri May  2 23:59:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5497         * io.c (internal_read_func, internal_write_func): split from
5498           internal_io_func.
5500 Fri May  2 23:55:15 2008  Tanaka Akira  <akr@fsij.org>
5502         * variable.c (rb_define_hooked_variable): guard *var from GC to
5503           prevent collecting argf under RUBY_DEBUG=gc_stress.
5505 Fri May  2 17:29:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5507         * range.c (range_step): call to_int if step is not a numeric
5508           value.  [ruby-dev:34575]
5510 Fri May  2 16:10:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5512         * range.c (range_step): do not forcefully convert steps into
5513           integers.  [ruby-dev:34571]
5515 Fri May  2 14:52:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5517         * misc/ruby-mode.el: move fontifying code from hook.  a patch from
5518           Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
5520 Fri May  2 14:10:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5522         * range.c (range_step): step may be bignum.
5524 Fri May  2 13:52:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5526         * re.c (Init_Regexp): remove MatchData#select.  [ruby-dev:34563]
5528 Thu May  1 23:59:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5530         * bignum.c (rb_big_divide), numeric.c (fix_divide): check for result
5531           domain.  [ruby-dev:34559]
5533 Thu May  1 23:57:06 2008  James Edward Gray II  <jeg2@ruby-lang.org>
5535         * lib/net/telnet.rb:  This patch from Brian Candler adds a FailEOF mode which
5536           can be activated to have net/telnet raise EOFError exceptions when the
5537           remote connection is closed.  The default behavior remains unchanged though.
5539 Thu May  1 23:43:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5541         * range.c (range_step): check if step can be converted to an integer.
5542           [ruby-dev:34558]
5544         * range.c (range_step): allow float step bigger than zero but less
5545           than one.  [ruby-dev:34557]
5547 Thu May  1 23:20:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5549         * bignum.c (rb_big_divide): return an integer for idiv.
5550           [ruby-dev:34553]
5552 Thu May  1 20:47:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5554         * hash.c (rb_hash_s_create): should access converted hash value.
5555           [ruby-dev:34555]
5557 Thu May  1 20:31:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5559         * test/ruby/test_parse.rb (TestParse::test_void_expr_stmts_value):
5560           shut up warning.
5562         * rational.c (nurat_to_f): no need for forceful warning when
5563           converting to float.  overflow is a nature of float values.
5565 Thu May  1 16:10:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5567         * hash.c (env_delete_if): return enumerator if no block given.
5568           [ruby-dev:34554]
5570 Wed Apr 30 21:36:40 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
5572         * lib/erb.rb (url_encode): [ruby-dev:34497] ERB::Util#url_encode
5573           bug fix. Reported by rubikitch.
5575         * test/erb/test_erb.rb: ditto
5577 Wed Apr 30 20:11:36 2008  James Edward Gray II  <jeg2@ruby-lang.org>
5579         * lib/net/telnet.rb:  Fixing a bug where line endings would not be properly
5580           escaped when the two character ending was broken up into separate TCP
5581           packets.  Issue reported and patched by Brian Candler.
5583 Wed Apr 30 18:03:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5585         * load.c (rb_load_path), vm_core.h (rb_vm_t): moved to VM.
5587         * load.c (rb_get_load_path): returns absolute load path.
5589         * load.c (load_path_getter): $LOAD_PATH getter.
5591         * file.c (rb_find_file_ext, rb_find_file), ruby.c (push_include,
5592           ruby_init_loadpath): use the accessor.
5594         * vm.c (rb_vm_mark): mark load_path.
5596 Wed Apr 30 17:47:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5598         * re.c (rb_reg_search): use local variable.  a patch from wanabe
5599           <s.wanabe AT gmail.com> in [ruby-dev:34537].  [ruby-dev:34492]
5601 Wed Apr 30 16:10:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5603         * eval_intern.h: specify the values of the enumeration constants
5604           explicitly.  [ruby-dev:34489]
5606 Wed Apr 30 12:32:39 2008  Tanaka Akira  <akr@fsij.org>
5608         * process.c (check_exec_redirect_fd): prohibit duplex IO.
5609           (check_exec_fds): record maxhint even if close_others is not
5610           specified.
5611           (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.
5613 Mon Apr 28 20:24:27 2008  Tadayoshi Funaba  <tadf@dotrb.org>
5615         * rational.c (nurat_marshal_load): checks the given
5616           denominator. [ruby-dev:34536]
5618 Mon Apr 28 14:21:18 2008  Tanaka Akira  <akr@fsij.org>
5620         * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
5621           FIXNUM_MAX to make it possible to convert to double accurately on
5622           environments with 64bit VALUE and 64bit double.
5623           It assumes FLT_RADIX is 2.
5624           fix RubyForge bug #14102.
5626 Mon Apr 28 12:48:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5628         * process.c (rb_exec_arg_addopt, rb_exec_arg_addopt): now can specify
5629           close_exec on having no fork environment (but still meaningless).
5631 Mon Apr 28 11:11:29 2008  Tanaka Akira  <akr@fsij.org>
5633         * process.c (run_exec_options): don't call FIX2INT for nil.
5635 Mon Apr 28 11:11:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5637         * proc.c (method_name): should return symbols instead of strings.
5638           [ruby-dev:34531]
5640 Mon Apr 28 09:02:43 2008  Tanaka Akira  <akr@fsij.org>
5642         * include/ruby/intern.h (rb_exec_arg_init): declared.
5643           (rb_exec_arg_addopt): declared.
5644           (rb_exec_arg_fix): declared.
5645           (rb_exec_initarg): removed.
5646           (rb_exec_getargs): removed.
5647           (rb_exec_initarg2): removed.
5649         * io.c (struct popen_arg): make execarg as a pointer.
5650           (popen_exec): follow popen_arg change.
5651           (pipe_open): add eargp argument.  extract argc and argv from eargp.
5652           use rb_exec_arg_addopt to add redirect options.
5653           (pipe_open_v): set up struct rb_exec_arg.
5654           (pipe_open_s): set up struct rb_exec_arg.
5656         * process.c (rb_exec_arg_addopt): new function extracted from
5657           check_exec_options_i.
5658           (check_exec_options_i): use rb_exec_arg_addopt.
5659           (rb_check_exec_options): opthash is always a hash now.
5660           (rb_exec_getargs): make it static.
5661           (rb_exec_fillarg): renamed from rb_exec_initarg2.  don't set up
5662           redirect_fds.
5663           (rb_exec_arg_init): new function.
5664           (rb_exec_arg_fix): new function.
5665           (rb_f_exec): use rb_exec_arg_init and rb_exec_arg_fix.  use
5666           rb_exec_arg_addopt to set close_others option.
5667           (run_exec_options): make close_others by default.
5668           (rb_spawn_internal): use rb_exec_arg_init and rb_exec_arg_fix.  use
5669           rb_exec_arg_addopt to set close_others option.
5671 Sun Apr 27 18:59:04 2008  Tadayoshi Funaba  <tadf@dotrb.org>
5673         * rational.c (nurat_expt): use f_rational_new2. [ruby-dev:34524]
5675 Sun Apr 27 15:23:40 2008  Koichi Sasada  <ko1@atdot.net>
5677         * gc.c (gc_count): add a GC.count method.  This method returns
5678           a GC invoking count.
5680 Sun Apr 27 12:20:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5682         * vm_core.h (rb_vm_t), gc.c (rb_objspace, rb_newobj), vm.c
5683           (Init_BareVM): per-VM object space support, which is disabled now.
5685         * gc.c (rb_objspace_alloc), vm.c (Init_BareVM): should not use ruby
5686           malloc here.
5688         * gc.c (garbage_collect, etc): performance improvement by passing the
5689           reference instead of referring the global variable in each functions.
5691 Sun Apr 27 08:06:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5693         * ruby.c (ruby_set_argv): ARGV should be locale encoding.
5694           [ruby-list:44861]
5696 Sun Apr 27 01:46:29 2008  Tanaka Akira  <akr@fsij.org>
5698         * lib/open3.rb (Open3.popen3w): removed.
5699           (Open3.popen3): notice wait_thr.
5701 Sun Apr 27 01:13:05 2008  Eric Hodel  <drbrain@segment7.net>
5703         * lib/rdoc, test/rdoc:  Update to RDoc 2.0.0 r56.
5705 Sat Apr 26 21:30:40 2008  Tanaka Akira  <akr@fsij.org>
5707         * include/ruby/intern.h (rb_hash_dup): declared.
5709         * hash.c (rb_hash_dup): new function.
5711         * process.c (rb_spawn_internal): don't modify option hash.
5713 Sat Apr 26 18:36:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5715         * io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:
5716           suppress warnings.
5718 Sat Apr 26 17:42:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5720         * error.c (builtin_types), gc.c (count_objects): added Complex and
5721           Rational.
5723 Sat Apr 26 17:35:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5725         * error.c (rb_eNOERROR): renamed.
5727 Sat Apr 26 17:30:11 2008  Koichi Sasada  <ko1@atdot.net>
5729         * include/ruby/ruby.h, gc.c: remove T_BLOCK.
5731         * include/ruby/ruby.h: re-number T_xxx.
5733 Sat Apr 26 17:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5735         * process.c (rb_cProcessTms, rb_cProcessStatus): renamed.
5737         * error.c (builtin_types), signal.c (siglist), st.c (primes),
5738           struct.c (ref_func), time.c (months): constified.
5740 Sat Apr 26 13:00:41 2008  Tanaka Akira  <akr@fsij.org>
5742         * lib/open3.rb: double fork is replaced by spawn with Process.detach.
5743           (Open3.popen3w): new method to access the thread returned by
5744           Process.detach.
5746 Sat Apr 26 00:47:43 2008  Tanaka Akira  <akr@fsij.org>
5748         * process.c (rb_spawn_internal): new function to specify
5749           default_close_others.
5750           (rb_spawn): specify default_close_others true.
5751           (rb_f_system): call rb_spawn_internal with default_close_others as
5752           false.
5754 Sat Apr 26 12:26:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5756         * range.c (range_each): use INT2FIX() for fixnum values.
5758 Fri Apr 25 17:56:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5760         * gc.c (free_unused_heaps): preserve last used heap segment to
5761           reduce malloc() call.
5763 Fri Apr 25 17:54:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5765         * gc.c (HEAP_SIZE): use smaller heap segment (2K) for more chance
5766           to be freed.  based on patch from authorNari <authornari at gmail.com>.
5768         * gc.c (rb_newobj_from_heap): eventually allocate heap segments.
5770 Fri Apr 25 15:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5772         * process.c (rb_spawn): rb_exec_initarg() returns new argc and argv in
5773           earg.
5775 Fri Apr 25 12:37:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5777         * array.c (flatten): returns an instance of same class.
5778           [ruby-core:16554]
5780 Fri Apr 25 10:52:27 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5782         * include/ruby/win32.h: define mode_t for umask.
5784         * process.c (check_exec_options_i, check_exec_fds, run_exec_options):
5785           support "close_others" only when fork(2) is available.
5787 Fri Apr 25 00:16:11 2008  Tanaka Akira  <akr@fsij.org>
5789         * process.c: include sys/stat.h for umask.
5791 Thu Apr 24 23:25:17 2008  Tanaka Akira  <akr@fsij.org>
5793         * include/ruby/intern.h (rb_env_clear): declared.
5794           (rb_io_mode_modenum): declared.
5795           (rb_close_before_exec): declared.
5796           (struct rb_exec_arg): add options and redirect_fds field.
5797           (rb_check_argv): removed.
5798           (rb_exec_initarg): declared.
5799           (rb_exec_getargs): declared.
5800           (rb_exec_initarg2): declared.
5801           (rb_fork): add third argument: fds.
5803         * io.c (max_file_descriptor): new static variable to record maximum
5804           file descriptor ruby used.
5805           (UPDATE_MAXFD): new macro.
5806           (UPDATE_MAXFD_PIPE): new macro.
5807           (rb_io_mode_modenum): externed.
5808           (rb_sysopen): update max_file_descriptor.
5809           (rb_close_before_exec): new function.
5810           (popen_exec): redirection removed because it is done by extended
5811           spawn mechanism.
5812           (pipe_open): generate a hash for spawn options to specify
5813           redirections.
5814           (pipe_open_v): use rb_exec_getargs.
5815           (pipe_open_s): use rb_exec_getargs.
5816           (rb_io_initialize): update max_file_descriptor.
5818         * process.c (hide_obj): new function.
5819           (check_exec_redirect_fd): new function.
5820           (check_exec_redirect): new function.
5821           (check_exec_options_i): new function.
5822           (check_exec_fds): new function.
5823           (rb_check_exec_options): new function.
5824           (check_exec_env_i): new function.
5825           (rb_check_exec_env): new function.
5826           (rb_exec_getargs): new function.
5827           (rb_exec_initarg2): new function.
5828           (rb_exec_initarg): new function.
5829           (rb_f_exec): use rb_exec_initarg.
5830           (intcmp): new function.
5831           (run_exec_dup2): new function.
5832           (run_exec_close): new function.
5833           (run_exec_open): new function.
5834           (run_exec_pgroup): new function.
5835           (run_exec_rlimit): new function.
5836           (run_exec_options): new function.
5837           (rb_exec): call run_exec_options.
5838           (move_fds_to_avoid_crash): new function.
5839           (pipe_nocrash): new function.
5840           (rb_fork): use pipe_nocrash to avoid file descriptor conflicts.
5841           (rb_spawn): use rb_exec_initarg.
5842           (rlimit_resource_name2int): extracted from rlimit_resource_type.
5843           (rlimit_type_by_hname): new function.
5844           (rlimit_type_by_lname): new function.
5845           (rlimit_resource_type): use rlimit_type_by_hname.
5846           (proc_daemon): add fds argument for rb_fork.
5848         * hash.c (rb_env_clear): renamed from env_clear and externed.
5850         [ruby-dev:34086]
5852 Thu Apr 24 23:00:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5854         * test/ruby/test_thread.rb: fix typos.
5856         * test/ruby/envutil.rb (rubyexec): move Open3.popen3 call into timeout
5857           block.
5859 Thu Apr 24 22:34:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5861         * test/ruby/test_comparable.rb: new tests for Comparable, to achieve
5862           100% test coverage of compar.c.
5864 Thu Apr 24 17:19:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5866         * ruby.c (process_options): set safe_level before loading script.
5867           [ruby-dev:34421]
5869 Thu Apr 24 14:15:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5871         * dln.c (dln_find_1): prior files with extensions to files sans
5872           extensions.  [ruby-core:16517]
5874 Thu Apr 24 00:26:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5876         * lib/rdoc/ri/descriptions.rb: fixed wrong class nestings.
5878 Thu Apr 24 00:20:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5880         * test/ruby/test_settracefunc.rb: add a test for set_trace_func.
5882         * test/ruby/envutil.rb: move "rubyexec" method from test_rubyoptions.rb.
5884         * test/ruby/test_rubyoptions.rb: use rubyexec in envutil.rb.
5886         * test/ruby/test_thread.rb: add tests to achieve over 90% test coverage
5887           of thread.c.
5889 Wed Apr 23 15:28:52 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
5891         * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
5892           notice moved from comment to assertion message. [ruby-dev:29127]
5894 Wed Apr 23 11:49:54 2008  Akinori MUSHA  <knu@iDaemons.org>
5896         * lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
5897           an enumerator if no block is given.
5899 Wed Apr 23 00:36:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5901         * test/openssl/test_ssl.rb (start_server): add timeout to server.join.
5903 Wed Apr 23 00:18:45 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
5905         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
5906           tests of Symbol#to_proc.
5908 Tue Apr 22 22:40:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5910         * lib/drb/drb.rb (DRb::DRbServer::check_insecure_method): should
5911           check method names by symbols, not by strings.  a patch from
5912           Kazuhiro NISHIYAMA <zn at mbf.nifty.com> in [ruby-dev:34487].
5914 Tue Apr 22 22:15:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5916         * misc/ruby-style.el (ruby-style-{case,label}-indent): up list from
5917           indentation point.
5919 Tue Apr 22 21:09:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5921         * ext/nkf/nkf-utf8/nkf.c (score_table_A0, score_table_F0):
5922           type of content is unsigned char.
5924         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): 'c' is nkf_char.
5926         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): enc is 0 or pointer.
5928         * ext/nkf//nkf.c (options): type of option is unsigned char.
5930 Tue Apr 22 20:51:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5932         * ext/nkf/nkf-utf8/nkf.c (z_conv): characters must be nkf_char.
5934 Tue Apr 22 19:23:05 2008  Akinori MUSHA  <knu@iDaemons.org>
5936         * enumerator.c (enumerator_initialize): Remove an undocumented
5937           feature (passing a block to the constructor) that's broken.
5938           This is not what I intended.
5940 Tue Apr 22 17:54:05 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
5942         * vm_core.h (exec_event_hooks): ``inline'' is a type modifier, not
5943           a type itself.
5945 Tue Apr 22 16:24:27 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
5947         * string.c (rb_enc_cr_str_buf_cat): do not use C++ comments.
5949 Tue Apr 22 16:23:53 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
5951         * configure.in: use AC_USE_SYSTEM_EXTENSIONS.
5953 Tue Apr 22 16:23:16 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
5955         * vm_evalbody.c (DECL_SC_REG): use __asm__ instead.
5957 Tue Apr 22 16:18:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5959         * vm_evalbody.c (DECL_SC_REG): typo fixed.
5961 Tue Apr 22 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5963         * configure.in (struct timespec): needs time.h according to POSIX.
5965 Tue Apr 22 13:19:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5967         * thread.c (rb_thread_stop_timer_thread): should clear
5968           timer_thread_id after stopping it.
5970 Tue Apr 22 13:12:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5972         * thread.c (thread_join): remove the current thread from the join list
5973           of the target thread.
5975 Tue Apr 22 12:03:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5977         * vm_insnhelper.c (vm_get_ev_const): search from the base klass if it
5978           is given.
5980 Tue Apr 22 09:58:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5982         * ext/win32ole/win32ole.c: avoid warnings.
5984 Tue Apr 22 09:56:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5986         * file.c (eaccess): workaround for recent msvcrt's behavior.
5987           [ruby-core:16460]
5989 Mon Apr 21 19:08:32 2008  Tanaka Akira  <akr@fsij.org>
5991         * io.c (copy_stream_body): call rb_io_check_readable and
5992           rb_io_check_writable.
5994 Mon Apr 21 17:45:27 2008  Akinori MUSHA  <knu@iDaemons.org>
5996         * ext/dbm/dbm.c (fdbm_each_value, fdbm_each_key, fdbm_each_pair):
5997           GDBM#{each,each_pair,each_key,each_value}: Return an enumerator
5998           if no block is given.
6000         * ext/gdbm/gdbm.c (fgdbm_each_value, fgdbm_each_key,
6001           fgdbm_each_pair): GDBM#{each,each_pair,each_key,each_value}:
6002           Return an enumerator if no block is given.
6004         * ext/openssl/ossl_config.c (ossl_config_each):
6005           OpenSSL::Config#each: Return an enumerator if no block is given.
6007         * ext/readline/readline.c (hist_each): Readline::HISTORY#each:
6008           Return an enumerator if no block is given.
6010         * ext/sdbm/init.c (fsdbm_each_value, fsdbm_each_key,
6011           fsdbm_each_pair): SDBM#{each,each_pair,each_key,each_value}:
6012           Return an enumerator if no block is given.
6014         * ext/stringio/stringio.c (strio_each_byte, strio_each):
6015           StringIO#{each,each_line,each_byte}: Return an enumerator if no
6016           block is given.
6018         * ext/stringio/stringio.c (Init_stringio): Add #lines and #bytes,
6019           which are aliases to #each_line and #each_byte, respectively.
6021         * ext/win32ole/win32ole.c (fole_each): WIN32OLE#each: Return an
6022           enumerator if no block is given.
6024         * ext/zlib/zlib.c (rb_gzreader_each_byte, rb_gzreader_each):
6025           Zlib::GzipReader#{each,each_line,each_byte}: Return an
6026           enumerator if no block is given.
6028         * ext/zlib/zlib.c (Init_zlib): Add Zlib::GzipReader#lines and
6029           #bytes, which are aliases to #each_line and #each_byte,
6030           respectively.
6032 Mon Apr 21 17:01:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6034         * iseq.c (rb_iseq_compile_with_option): check if src is a string.
6035           [ruby-core:16453]
6037 Mon Apr 21 16:06:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6039         * enumerator.c (enumerator_init): preserve the method name in ID.
6041         * enumerator.c (enumerator_each): need not to call rb_to_id().
6043         * enumerator.c (enumerator_with_index): ditto.
6045 Mon Apr 21 11:00:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6047         * compile.c (defined_expr): capture exception during defined?
6048           evaluation.  a patch from wanabe <s.wanabe at gmail.com> in
6049           [ruby-dev:34461].  [ruby-core:16010]
6051 Mon Apr 21 10:06:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6053         * time.c: should include <errno.h> to refer errno.
6055 Mon Apr 21 09:58:04 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6057         * time.c (rb_strftime): check errno to detect strftime(3)'s error.
6058           this is workaround for recent version of MSVCRT.
6059           [ruby-dev:34456]
6061 Mon Apr 21 08:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6063         * gc.c (ruby_xmalloc): use size_t for malloc argument instead of long.
6065 Sun Apr 20 21:00:21 2008  Akinori MUSHA  <knu@iDaemons.org>
6067         * enumerator.c, include/ruby/ruby.h: Export rb_cEnumerator.
6069 Sun Apr 20 20:47:50 2008  Akinori MUSHA  <knu@iDaemons.org>
6071         * enumerator.c: Resolve the method every time an enumeration
6072           method is run, not once when the enumerator is initialized as it
6073           was before, so that method_missing() and method (re)definition
6074           afterwards are both in effect; pointed out in: [ruby-core:16441]
6076 Sun Apr 20 15:11:00 2008  Tanaka Akira  <akr@fsij.org>
6078         * io.c (copy_stream_rbuf_to_dst): removed.
6079           (copy_stream_fallback_body): don't bypass write method.
6080           (copy_stream_body): simplified.
6082 Sun Apr 20 15:01:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6084         * vm_core.h (struct iseq_compile_data): moved label_no from
6085           new_label_body().
6087         * compile.c (iseq_set_exception_table): allocates catch_table only
6088           when entries exist.
6090         * compile.c (struct iseq_link_element, struct iseq_insn_data): made
6091           enum for debuggers.
6093 Sun Apr 20 14:44:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6095         * compile.c (iseq_compile_each): fix for splat in when and rescue.
6096           a patch from wanabe <s.wanabe AT gmail.com> in [ruby-dev:34429].
6097           [ruby-core:14537]
6099 Sun Apr 20 13:55:37 2008  Tanaka Akira  <akr@fsij.org>
6101         * io.c (copy_stream_fallback): write directly (bypassing write method)
6102           if possible.
6104 Sun Apr 20 12:49:03 2008  Tanaka Akira  <akr@fsij.org>
6106         * io.c (copy_stream_fallback): read directly (bypassing readpartial
6107           method) if possible.
6109 Sun Apr 20 04:45:13 2008  Tanaka Akira  <akr@fsij.org>
6111         * io.c (copy_stream_body): use readpartial and write method for
6112           non-IOs such as StringIO and ARGF.
6114 Fri Apr 18 20:57:33 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6116         * test/ruby/test_array.rb: add tests to achieve over 95% test coverage
6117           of array.c.
6119 Fri Apr 18 17:37:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6121         * gc.c (rb_gc_mark_locations): get rid of underflow.
6123         * gc.c (mark_current_machine_context): check if the main thread stack
6124           position may shrink under the initialized position.  [ruby-core:16436]
6126 Thu Apr 17 22:20:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6128         * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add
6129           parentheses to remove warnings of gcc.
6131         * io.c (rb_io_getc): remove unused variables.
6133         * compile.c (NODE_NEXT, NODE_REDO): remove unused labels.
6135         * ext/nkf/nkf.c (rb_nkf_convert): remove unused variables.
6137         * ext/syck/rubyext.c (syck_resolver_initialize,
6138           syck_resolver_detect_implicit, syck_emitter_emit): remove unused
6139           variables.
6141 Thu Apr 17 20:12:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6143         * test/ruby/test_rubyoptions.rb (test_search): enable some assertions.
6145         * test/ruby/test_rubyoptions.rb: flunk message in win32.
6147 Thu Apr 17 16:07:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6149         * test/ruby/test_rubyoptions.rb (ruby): run in C locale.
6151         * test/ruby/test_rubyoptions.rb (test_encoding): --encoding does not
6152           affect source code.
6154 Thu Apr 17 00:45:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6156         * test/ruby/test_process.rb (test_rlimit_nofile): reset RLIMIT_NOFILE
6157           before exit (for gcov).
6159         * test/ruby/test_rubyoptions.rb: new tests for option of ruby
6160           interpreter, to achieve over 95% test coverage of ruby.c.
6162 Wed Apr 16 02:40:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6164         * ruby.c (process_options): preludes and parser need to run in safe
6165           level 0.  [ruby-dev:34407]
6167 Wed Apr 16 02:26:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6169         * ruby.c (process_options): dln_find_file returns the pointer to a
6170           static buffer, so should copy it.  [ruby-dev:34409]
6172 Tue Apr 15 23:08:46 2008  Kouhei Sutou  <kou@cozmixng.org>
6174         * lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
6176         * test/xmlrpc/test_cookie.rb: add a test for the above fix.
6178 Tue Apr 15 19:20:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6180         * io.c: #undef rb_argv moved before #define.
6182 Tue Apr 15 18:02:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6184         * include/ruby/intern.h (rb_argv): replaced with rb_get_argv().
6185           [ruby-Bugs-19514]
6187 Tue Apr 15 17:10:59 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6189         * lib/net/http.rb, lib/net/smtp.rb, lib/net/pop.rb: update
6190           URLs of Japanese documents.
6192 Tue Apr 15 16:45:14 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6194         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
6196 Tue Apr 15 15:38:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6198         * misc/ruby-mode.el (ruby-encoding-map): added shift-jis for older
6199           versions.
6201         * misc/ruby-mode.el (ruby-mode-set-encoding):
6202           coding-system-to-mime-charset is not a standard function.
6203           [carbon-emacs:795]
6204           fix for the case that magic comment exists but coding system is
6205           absent.
6207         * misc/ruby-mode.el (ruby-mode): use write-contents-functions or
6208           write-contents-hooks for older versions.
6210 Tue Apr 15 07:21:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6212         * complex.c (nucomp_div): [ruby-dev:34357]
6214         * complex.c (nucomp_abs): use hypot.
6216         * complex.c (nucomp_quo): do not force conversion.
6218         * test/ruby/test_complex.rb: omitted some meaningless tests.
6220 Mon Apr 14 23:25:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6222         * test/ruby/test_objectspace.rb: add a test for
6223           ObjectSpace.count_objects.
6225 Mon Apr 14 22:44:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6227         * file.c (SET_EXTERNAL_ENCODING): avoid call rb_enc_check() on
6228           half-baked result string.
6230         * re.c (rb_reg_search): make search reentrant.  [ruby-dev:34223]
6232         * test/ruby/test_parse.rb (TestParse::test_global_variable):
6233           should preserve $& variable.
6235 Mon Apr 14 17:23:27 2008  Akinori MUSHA  <knu@iDaemons.org>
6237         * hash.c (rb_hash_delete_if, rb_hash_reject_bang, env_delete_if,
6238           env_reject_bang): Return an enumerator if no block is given.
6240 Mon Apr 14 14:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6242         * compile.c, compile.h (compile_debug): made runtime option.
6244         * debug.c (ruby_debug_print_indent): returns if debug_level exceeds
6245           the threshold.
6247         * debug.c (ruby_debug_printf): printf to stderr.
6249         * iseq.c (make_compile_option, make_compile_option_value): added
6250           debug_level option.
6252         * vm_core.h (rb_compile_option_t): added debug_level.
6254         * vm_core.h (struct iseq_compile_data): added node_level.
6256 Mon Apr 14 12:52:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6258         * gc.c (Init_stack): use ruby_init_stack.  [ruby-dev:34350]
6260         * gc.c (rb_objspace_t): packed globals.  [ruby-dev:34348]
6262         * gc.c (finalizers): removed.  [ruby-dev:34349]
6264 Mon Apr 14 11:30:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6266         * array.c (ary_new): new integer overflow check condition.
6267           suggested by TOYOFUKU Chikanobu <nobu_toyofuku at nifty.com> in
6268           [ruby-dev:34156].
6270         * array.c (rb_ary_initialize): ditto.
6272 Mon Apr 14 00:51:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6274         * test/ruby/test_parse.rb: add tests to achieve over 95% test coverage
6275           of parse.y.
6277 Sun Apr 13 23:53:58 2008  Akinori MUSHA  <knu@iDaemons.org>
6279         * enum.c (enum_cycle): Make Enumerable#cycle do a finite loop when
6280           the number of cycles is specified.
6282         * array.c (rb_ary_cycle): Ditto for Array#cycle.
6284 Sun Apr 13 18:52:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6286         * thread_pthread.c (lock_func): should not check interrupts in
6287           blocking region.  [ruby-dev:34378]
6289 Sat Apr 12 12:41:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6291         * eval.c (ruby_exec_node, ruby_run_node), ruby.c (process_options):
6292           use iseq instead of NODE.
6294         * gc.c (source_filenames): removed.
6296         * include/ruby/intern.h, parse.y (yycompile, parser_mark, parser_free,
6297           ripper_initialize): rb_source_filename() is no longer used.
6299         * compile.c, compile.h (ERROR_ARGS), parse.y (node_newnode, fixpos,
6300           parser_warn, e_option_supplied, warn_unless_e_option, range_op,
6301           cond0): nd_file is no longer used.
6303 Sat Apr 12 12:17:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6305         * prelude.rb (require_relative): move require_relative from
6306           lib/require_relative.rb.  [ruby-core:16356]
6308         * lib/require_relative.rb: removed.
6310 Sat Apr 12 05:55:57 2008  Eric Hodel  <drbrain@segment7.net>
6312         * lib/rubygems*, test/rubygems*:  Update to RubyGems 1.1.1 r1701.
6314 Sat Apr 12 03:13:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6316         * file.c (file_expand_path): set external encoding.
6318         * file.c (rb_file_s_basename, rb_file_s_dirname, rb_file_s_extname):
6319           copy encoding.
6321 Fri Apr 11 17:35:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6323         * enum.c (count_i): modified to shut warning up.
6325 Fri Apr 11 17:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
6327         * enum.c (count_i, count_iter_i, enum_count, enum_find_index):
6328           Reduce code.
6330 Fri Apr 11 17:06:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6332         * enum.c (find_index_i): modified to shut warning up.
6334         * enum.c (find_index_iter_i): ditto.
6336 Fri Apr 11 16:44:43 2008  Akinori MUSHA  <knu@iDaemons.org>
6338         * enum.c (enum_find_index): Add support for find_index(obj);
6339           [ruby-dev:34313].
6341         * array.c (rb_ary_index): Define find_index as an alias to index.
6343 Fri Apr 11 16:42:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6345         * lib/yaml/store.rb (YAML::load): modified to support empty
6346           database.
6348 Fri Apr 11 08:05:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6350         * marshal.c (w_object): add volatile to avoid potential GC bug.  a
6351           patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
6352           in [ruby-dev:34311].
6354 Thu Apr 10 23:08:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6356         * lib/pstore.rb (PStore::dump, PStore::load): allow subclass
6357           overriding.  [ruby-dev:34305]
6359         * lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?):
6360           add a method to support faster PStore.
6362 Thu Apr 10 20:36:45 2008  Akinori MUSHA  <knu@iDaemons.org>
6364         * misc/rdebug.el, misc/README: Remove rdebug.el as per request
6365           from the maintainer and mention the ruby-debug project at
6366           RubyForge in README; bug#19043.
6368 Thu Apr 10 19:41:00 2008  Akinori MUSHA  <knu@iDaemons.org>
6370         * eval.c (rb_f_loop): Mention StopIteration in the document.
6372 Thu Apr 10 19:23:55 2008  Akinori MUSHA  <knu@iDaemons.org>
6374         * array.c (rb_ary_pop_m, rb_ary_shift_m): Update documents for
6375           #pop() and #shift().
6377         * array.c (rb_ary_slice_bang): Update document.  Assigning
6378           array[*args]= nil no longer removes elements.
6380 Thu Apr 10 16:58:44 2008  Tanaka Akira  <akr@fsij.org>
6382         * marshal.c (w_object): TYPE_USERDEF assigns id for ivars first.
6383           [ruby-dev:34159] by nagachika.
6385 Thu Apr 10 15:03:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6387         * lib/generator.rb: removed obsolete library.  [ruby-core:16233]
6389         * test/test_generator.rb: removed as well.  [ruby-dev:34306]
6391         * lib/pstore.rb: replaced by Hongli Lai's faster version.
6393 Thu Apr 10 10:27:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6395         * thread_pthread.c (native_sleep): sleep_cond is initialized at
6396           creation.  [ruby-Patches-19361].
6398 Wed Apr  9 14:43:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6400         * thread.c (lock_func): optimized and checks for interrupt_flag.
6401           based on a patch from Sylvain Joyeux in [ruby-Patches-19361] and
6402           [ruby-Patches-19362].
6404 Wed Apr  9 12:12:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6406         * test/ruby/test_thread.rb: new tests from Sylvain Joyeux in
6407           [ruby-Patches-19361].
6409 Tue Apr  8 21:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6411         * thread.c (rb_mutex_sleep): ensures to re-acquire at waking up.
6412           [ruby-Patches-19361]
6414 Tue Apr  8 11:00:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6416         * lib/complex.rb: remove Math first before overwriting by CMath.
6418 Tue Apr  8 10:34:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6420         * load.c (rb_require_safe): should check fname path after $SAFE is
6421           properly set.  [ruby-dev:34268]
6423         * re.c (rb_reg_quote): should always copy the quoting string.
6424           [ruby-core:16235]
6426 Tue Apr  8 10:30:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6428         * common.mk (prelude.c): depends on enc/prelude.rb.
6430         * enc/prelude.rb: fixed initial library names.
6432 Tue Apr  8 03:39:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6434         * load.c (rb_provided): check expanded path for relative path
6435           features, loading or loaded features are already expanded in 1.9.
6437         * variable.c (rb_autoload_load): no needs to check if provided before
6438           rb_require_safe.  [ruby-dev:34266]
6440 Mon Apr  7 22:41:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6442         * numeric.c: cancelled recent changes (except to remove rdiv).
6444         * bignum.c: ditto.
6446         * bignum.c: added rb_big_idiv.
6448 Mon Apr  7 15:51:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6450         * encoding.c (enc_init_db): moved to enc/encdb.c.
6452         * transcode.c (init_transcoder_table): moved to enc/trans/transdb.c.
6454         * enc/depend (enc/encdb.o enc/trans/transdb.o): depend on
6455           corresponding headers.
6457         * common.mk (COMMONOBJS): moved transcode.o from OBJS
6459 Mon Apr  7 12:26:32 2008  Koichi Sasada  <ko1@atdot.net>
6461         * bootstraptest/test_knownbug.rb: add a known-bug.
6463 Mon Apr  7 12:15:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6465         * range.c (range_each_func): should not leave a variable
6466           uninitialized, which could cause SEGV.
6468         * range.c (range_step): removed duplicated and unreachable code.
6470 Mon Apr  7 02:12:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6472         * string.c (rb_str_intern): need not to check if tainted.
6473           [ruby-dev:34219]
6475 Sun Apr  6 09:45:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6477         * dir.c (dir_tell): check if closed.  [ruby-core:16223]
6479 Sat Apr  5 23:17:20 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6481         * lib/cmath.rb: new.
6483         * lib/complex.rb: depends lib/cmath.rb.
6485         * lib/rational.rb: added rdiv.
6487         * complex.c: removed some math functions.
6489 Sat Apr  5 05:50:57 2008  Eric Hodel  <drbrain@segment7.net>
6491         * lib/rdoc/parsers/parse_rb.rb: Fix uninitialized variable warnings.
6493         * lib/rdoc/generator/html.rb: ditto.
6495         * lib/rdoc/options.rb: Fix shadowed variable warning.
6497         * lib/webrick/httprequest.rb: Fix redefined method warning.
6499 Sat Apr  5 02:13:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6501         * bignum.c (rb_cmpint): moved from compar.c, to check bignum
6502           zero.
6504 Fri Apr  4 23:24:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6506         * re.c (rb_memsearch_qs): wrong boundary condition.
6508         * re.c (rb_memsearch_qs_utf8): ditto.
6510 Fri Apr  4 14:11:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6512         * re.c (rb_memsearch_qs): wrong boundary condition.  a patch from
6513           wanabe <s.wanabe AT gmail.com> in [ruby-dev:34248].
6515 Fri Apr  4 05:57:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6517         * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
6518           @n_bytes as well.  [ruby-core:16144]
6520 Fri Apr  4 01:59:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6522         * range.c (range_step): add step for each iteration if begin and
6523           end are numeric.  [ruby-core:15990]
6525 Fri Apr  4 00:42:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6527         * bignum.c (Init_Bignum): rdiv method removed.  [ruby-dev:34242]
6529         * complex.c (nucomp_quo): ditto.
6531         * numeric.c (num_rdiv): ditto.
6533         * rational.c (nurat_div): ditto.
6535         * complex.c (nucomp_fdiv): fdiv implementation restored.
6537         * numeric.c (num_quo): RDoc updated.
6539 Thu Apr  3 21:51:45 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6541         * complex.c (nucomp_int_check): function for DRY real check.
6543         * complex.c (nucomp_{add,sub,mul,div,expt}): use rb_num_coerce_bin().
6545 Thu Apr  3 19:59:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6547         * insns.def (defineclass): check if cbase is a class or a module.
6548           [ruby-core:16118]
6550 Thu Apr  3 14:42:11 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6552         * common.mk (INSNS): add insns_info.inc.
6554         * common.mk (INSNS): make incs separately for nmake.
6556 Thu Apr  3 13:20:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6558         * common.mk (endb.h, transdb.h, prelude.c): depend on $(PREP) and
6559           check if really changed.  [ruby-core:16102]
6561         * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
6562           (MINIOBJS, ARCHMINIOBJS): separated.
6564 Thu Apr  3 09:00:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6566         * compile.c (iseq_set_sequence, iseq_insns_unification,
6567           insn_data_to_s_detail): constified.
6569         * iseq.c (insn_operand_intern, ruby_iseq_disasm_insn): ditto.
6571         * template/{insns_info,opt_sc,optunifs}.inc.tmpl: ditto.
6573         * tool/instruction.rb (OptUnifsIncGenerator): ditto.
6575 Thu Apr  3 08:46:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6577         * range.c (range_include): add RDoc to describe that comparison
6578           for numeric is done according magnitude of values.
6579           [ruby-core:15907]
6581 Wed Apr  2 22:29:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6583         * rational.c (nurat_int_check): function for DRY integer check.
6585         * numeric.c (num_rdiv): should always return rational number.
6587         * rational.c (nurat_add, nurat_sub, nurat_mul, nurat_fdiv,
6588           nurat_cmp): use rb_num_coerce_bin().
6590         * rational.c (nurat_division): does / and rdiv.
6592         * .gdbinit (rp): no longer use rb_p().
6594 Wed Apr  2 06:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6596         * .gdbinit (rp): supports rational and complex numbers.  it's
6597           cheating since it uses rb_p().
6599 Wed Apr  2 06:24:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6601         * include/ruby/node.h: add new constants for rb_call()'s scope.
6603         * eval.c (iterate_method): use CALL_* scope constant to specify
6604           proper scope value.
6606         * eval.c (rb_each, rb_apply, rb_funcall, rb_funcall2, rb_funcall3):
6607           ditto.
6609 Tue Apr  1 21:19:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6611         * rational.c: need to include <float.h> just once.
6613 Tue Apr  1 16:40:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6615         * bignum.c (big2dbl): more precise conversion at edge cases.
6616           [ruby-dev:34195]
6618 Tue Apr  1 14:43:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6620         * configure.in: get rid of empty expansion.
6622         * configure.in: _setjmp is available but _longjmp is not on mingw.
6624 Tue Apr  1 09:41:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6626         * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
6628 Tue Apr  1 07:31:58 2008  Eric Hodel  <drbrain@segment7.net>
6630         * lib/rubygems* test/rubygems*: Import RubyGems 1.1.0.
6632 Tue Apr  1 03:20:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6634         * configure.in (RUBY_SETJMP, RUBY_LONGJMP, RUBY_JMP_BUF): prefers
6635           _setjmp over setjmp and sigsetjmp.  [ruby-core:16023]
6636           __builtin_setjmp cannot handle a variable.
6638         * configure.in (--with-setjmp-type): new option to override the
6639           default rule in the above.
6641         * eval_intern.h (ruby_setjmp, ruby_longjmp), gc.c (rb_setjmp),
6642           vm_core.h (rb_jmpbuf_t): use RUBY_SETJMP, RUBY_LONGJMP and
6643           RUBY_JMP_BUF.
6645 Tue Apr  1 01:55:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6647         * lib/resolv.rb (Resolv::Config.default_config_hash): requires
6648           win32/resolv to use Win32::Resolv.  [ruby-dev:34138]
6650 Tue Apr  1 01:40:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6652         * complex.c: adopted the ruby's style.
6654         * rational.c: ditto.
6656 Tue Apr  1 00:17:35 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6658         * rational.c: revert.
6660 Mon Mar 31 18:57:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6662         * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
6664         * io.c (copy_stream_body): some platform don't have O_NOCTTY.
6666 Mon Mar 31 18:42:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6668         * configure.in: check for ssize_t.  [ruby-dev:34184]
6670 Mon Mar 31 14:45:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6672         * numeric.c (num_quo): should convert its operand to Rational.
6674         * rational.c (string_to_r_strict): should raise TypeError.
6676         * bignum.c (Init_Bignum): should not redefine Bignum#div.
6677           Numeric#div will do.  [ruby-dev:34066]
6679 Mon Mar 31 04:05:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6681         * io.c (io_getc): set coderange while getting characters.
6683 Sun Mar 30 23:16:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6685         * proc.c (proc_dup): should copy is_lambda attribute as well.
6686           [ruby-talk:296244]
6688 Sun Mar 30 15:33:29 2008  Tanaka Akira  <akr@fsij.org>
6690         * io.c: IO.copy_stream implemented.  [ruby-dev:33843]
6692         * thread.c (rb_fd_select): new function.
6694         * configure.in (sys/sendfile.h): check the header file.
6695           (sendfile): check the function.
6696           (pread): check the function.
6698 Sat Mar 29 14:18:41 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
6700         * ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
6702         * ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets'
6703           instate/state/identify method to avoid the conflict with standard
6704           widget options. Those methods are renamed to ttk_instate/ttk_state/
6705           ttk_identify (tile_instate/tile_state/tile_identify are available
6706           too). Although I don't recommend, if you really need old methods,
6707           please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before
6708           "require 'tkextlib/tile'".
6710         * ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
6711           is obsolete. It outputs warning. To control default widget set,
6712           use "Tk.default_widget_set = :Ttk".
6714         * ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and
6715           __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defined
6716           as module methods of TkConfigMethod. It may help users to wrap old
6717           Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
6718           Ttk widgets don't have some options of standard widgets which are
6719           control the view of widgets. When set ignore-mode true, configure
6720           method tries to ignore such unknown options with no exception.
6721           Of course, it may raise other troubles on the GUI design.
6722           So, those are a little danger methods.
6724         * ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__
6725           method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method
6726           are defined as module methods of TkItemConfigMethod as the same
6727           purpose as TkConfigMethod's ones.
6729         * ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for
6730           wrapping old Ruby/Tk scripts (which use standard widgets) to use
6731           Ttk (Tile) widgets as default.
6733         * ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state
6734           method instead of instate/state method.
6736         * ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
6737           ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's
6738           are replaced to "instance_exec(self)".
6740         * ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not
6741           a character code on Ruby1.9).
6743         * ext/tk/lib/tk/variable.rb: support new style of operation argument
6744           on Tcl/Tk's 'trace' command for variables.
6746         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix
6748         * ext/tk/sample/demos-jp/textpeer.rb,
6749           ext/tk/sample/demos-en/textpeer.rb: new widget demo.
6751         * ext/tk/tcltklib.c: decrease SEGV troubles (probably)
6753         * ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9
6755         * ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)
6757         * ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command
6758           to make Tcl/Tk theme sources (based on different version of Tile
6759           extension) available.
6760           (Tk::Tile::__define_LoadImages_proc_for_compatibility__)
6762         * ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
6763           (Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets
6764           as toplevel widgets.
6766         * ext/tk/lib/tkextlib/tile/style.rb: ditto.
6767           (Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)
6769         * ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get
6770           properties as a hash. metrics_hash method returns a boolean value
6771           for 'fixed' option. But metrics method returns numeric value
6772           (0 or 1) for 'fixed' option, because of backward compatibility.
6774         * ext/tk/lib/tk/timer.rb: sometimes fail to set callback procedure.
6776         * ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep
6777           doesn't block the eventloop. It will be better to use the method
6778           in event callbacks.
6780         * ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.
6782 Thu Mar 27 20:44:22 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6784         * complex.c (f_lcm): removed.
6786         * rational.c (rb_lcm, rb_gcdlcm): added.
6788         * lib/complex.rb (gcd, lcm, gcdlcm): removed.
6790         * lib/rational.rb (gcd, lcm, gcdlcm): ditto.
6792 Wed Mar 26 18:11:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6794         * variable.c (rb_mod_constants): rdoc updated.  a patch from
6795           Florian Gilcher <flo AT andersground.net> in [ruby-core:16009].
6797 Wed Mar 26 00:55:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6799         * test/ruby/test_rand.rb: add tests to achieve over 95% test coverage
6800           of random.c.
6802 Wed Mar 26 00:28:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6804         * test/ruby/test_rational.rb: add tests to achieve over 90% test
6805           coverage of rational.c.
6807         * test/ruby/test_complex.rb: ditto for complex.c.
6809 Tue Mar 25 19:34:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6811         * bootstraptest/test_knownbug.rb: add tests.  [ruby-dev:34128]
6813 Tue Mar 25 19:09:04 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6815         * array.c (ary_new): fix size check.  [ruby-dev:34123]
6817         * array.c (rb_ary_take, rb_ary_drop): check negative size and use
6818           NUM2LONG instead of FIX2LONG.  [ruby-dev:34123]
6820         * enum.c (enum_take, enum_drop): check negative size.
6822         * test/ruby/test_array.rb: add tests for above.
6824 Tue Mar 25 16:32:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6826         * ruby.c (proc_options): checks if the word is empty.
6828         * ruby.c (process_options): typo fixed.  [ruby-dev:34122]
6830 Tue Mar 25 15:26:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6832         * compile.c (defined_expr): false short-circuit destination label may
6833           be needed.  [ruby-talk:295296]
6835         * compile.c (iseq_compile_each): put nil if false short-circuit is
6836           created.
6838         * compile.c (compile_massign_opt): no need to use alloca.
6840 Mon Mar 24 19:23:52 2008  Akinori MUSHA  <knu@iDaemons.org>
6842         * parse.y (debug_lines): Always prepare a new array for each
6843           file's SCRIPT_LINES__ storage, instead of appending source lines
6844           every time a file is re-loaded; submitted by Rocky Bernstein in
6845           #18517.
6847 Mon Mar 24 10:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6849         * configure.in: sitearch should use target_cpu.  [ruby-core:15986]
6851 Sun Mar 23 02:51:57 2008  Tanaka Akira  <akr@fsij.org>
6853         * process.c (rlimit_resource_value): use NUM2RLIM.
6855 Sun Mar 23 02:28:01 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6857         * complex.c: fixed. [ruby-dev:34109]
6859         * rational.c: ditto.
6861 Fri Mar 21 21:32:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6863         * io.c (rb_f_gets, rb_f_readline, rb_f_readlines): delegates to ARGF
6864           as well as puts and putc.  [ruby-dev:34100]
6866 Fri Mar 21 21:26:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6868         * lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
6869           [ruby-dev:29945], [ruby-dev:34095]
6871         * lib/win32/registry.rb (Win32::Registry.expand_environ): try upcased
6872           name too for cygwin.  [ruby-dev:29945]
6874         * lib/win32/resolv.rb (Win32::Resolv.get_hosts_path): use expand_path.
6876 Fri Mar 21 21:10:00 2008  Akinori MUSHA  <knu@iDaemons.org>
6878         * lib/ipaddr.rb: Say that I am the current maintainer.
6880         * lib/set.rb: Ditto.
6882         * lib/shellwords.rb: Ditto.
6884         * ext/syslog/syslog.txt: Ditto.
6886 Fri Mar 21 09:24:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6888         * instruby.rb (open_for_install): write block result and rewrite only
6889           if changed from existing file.
6891 Fri Mar 21 08:29:33 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6893         * rational.c (nurat_to_f): rearrangement.
6895 Fri Mar 21 06:44:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6897         * rational.c (nurat_to_f): C99.
6899 Fri Mar 21 01:40:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6901         * complex.c (nucomp_sub, nucomp_expt): call corresponding functions.
6903 Fri Mar 21 01:21:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6905         * missing/tgamma.c: include config.h before math.h.  [ruby-dev:34075]
6907 Thu Mar 20 21:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6909         * io.c (argf_getline): use receiver.
6911 Thu Mar 20 21:20:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6913         * rational.c: some improvements (include Shin-ichiro HARA's
6914           effort).
6916         * complex.c: some improvements.
6918         * test/ruby/test_rational2.rb: new.
6920 Thu Mar 20 00:21:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6922         * io.c (argf_initialize_copy): get rid of segfault.
6924         * io.c (argf_tell, argf_seek_m, argf_set_pos, argf_rewind,
6925           argf_fileno, argf_to_io, argf_eofl, argf_getc, argf_getbyte,
6926           argf_readchar, argf_readbyte, argf_each_line): use receiver.
6928 Wed Mar 19 23:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6930         * io.c (rb_io_putc, rb_io_puts): output directly if the receiver is
6931           rb_stdout to get rid of infinite recursion.  [ruby-dev:34059]
6933 Wed Mar 19 22:27:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6935         * rational.c: added rb_gcd.
6937         * complex.c: use rb_gcd.
6939 Wed Mar 19 18:37:00 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6941         * complex.c: revert.
6943         * rational.c: revert.
6945 Wed Mar 19 17:31:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6947         * eval_intern.h (TH_EXEC_TAG): need not to FLUSH_REGISTER_WINDOWS.
6948           [ruby-core:15871], [ruby-dev:34088]
6950 Wed Mar 19 14:53:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6952         * complex.c (nucomp_to_s, nucomp_inspect): get rid of making
6953           unnecessary intermediate objects.
6955         * complex.c (make_patterns, string_to_c): do not treat successive
6956           underscores as a part of numeric like as literals.  [ruby-dev:34085]
6958         * rational.c (make_patterns, string_to_r): ditto.
6960 Wed Mar 19 14:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6962         * bignum.c (rb_cstr_to_inum): treat successive underscores as
6963           nondigit.  [ruby-dev:34089]
6965 Wed Mar 19 14:08:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6967         * encoding.c (enc_check_encoding): should not load autoloaded encoding
6968           directly, instead use rb_enc_find_index() which deal with alias and
6969           replica.  [ruby-core:15957]
6971 Wed Mar 19 11:49:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6973         * regint.h (include): include ruby.h instead of defines.h and config.h.
6975 Wed Mar 19 10:17:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6977         * regint.h (CHECK_INTERRUPT_IN_MATCH_AT): add interrupt check
6978           during match.  [ruby-talk:295002]
6980 Tue Mar 18 16:24:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6982         * parse.y (literal_concat_gen): bail out at different encoding.
6984 Tue Mar 18 04:00:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6986         * re.c (rb_memsearch_ss): simple shift search.
6988         * re.c (rb_memsearch_qs): quick search.
6990         * re.c (rb_memsearch_qs_utf8): quick search for UTF-8 string.
6992         * re.c (rb_memsearch_qs_utf8_hash): hash functions for above.
6994         * re.c (rb_memsearch): use above functions.
6996         * string.c (rb_str_index): give enc to rb_memsearch.
6998         * include/ruby/intern.h (rb_memsearch): move to encoding.h.
7000         * include/ruby/encoding.h (rb_memsearch): move from intern.h.
7002         * common.mk (PREP): add dependency.
7004 Mon Mar 17 22:23:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7006         * array.c (rb_ary_take, rb_ary_take_while, rb_ary_drop,
7007           rb_ary_drop_while): new methods. [ruby-dev:34067]
7009         * test/ruby/test_array.rb: add tests for above.
7011 Mon Mar 17 17:11:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7013         * misc/ruby-mode.el (ruby-mode): should use `run-mode-hooks' instead
7014           of calling `run-hooks' directly to run the mode hook.  patch from
7015           Chiyuan Zhang <pluskid AT gmail.com> in [ruby-core:15915]
7017 Mon Mar 17 16:41:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7019         * configure.in: unset GREP_OPTIONS.  [ruby-core:15918]
7021 Sun Mar 16 18:07:07 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
7023         * enc/trans/utf_16_32.c: bug fix (some invalid UTF-8 sequences
7024           were legal)
7026         * test/ruby/test_transcode.rb: test for above bug
7028 Sun Mar 16 17:28:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7030         * common.mk (LIBRUBY_SO): add dependency to $(BUILTIN_ENCOBJS).
7032 Sun Mar 16 08:51:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7034         * include/ruby/intern.h: added some declarations.
7036         * include/ruby/ruby.h: ditto.
7038         * common.mk: added some entries.
7040         * configure.in: added a check for signbit.
7042         * lib/complex.rb: nearly all of core definitions have been removed.
7044         * lib/rational.rb: ditto.
7046         * lib/mathn.rb: some trivial adjustments.
7048         * complex.c: new.
7050         * rational.c: ditto.
7052         * numeric.c (flo_{quo,rdiv}, fix_fdiv): added.
7054         * numeric.c ({num,int}_{numerator,denominator}): ditto.
7056         * bignum.c (rb_big_fdiv): ditto.
7058         * numeric.c (fix_{quo,pow}): now may yield rational number.
7060         * bignum.c (rb_big_{quo,pow}): ditto.
7062         * numeric.c (rb_{int,flo}_induced_from): now can accept rational.
7064         * gc.c (gc_mark_children, obj_free): now detects complex and rational.
7066         * inits.c (rb_call_inits): now calls Init_{Complex,Rational}.
7068         * test/ruby/test_complex.rb: new.
7070         * test/ruby/test_rational.rb: ditto.
7072 Sat Mar 15 17:48:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7074         * encoding.c (rb_enc_associate_index): pass unnecessary enc_capable().
7076         * string.c (rb_str_cmp): reduce invocation of rb_enc_compatible().
7078 Fri Mar 14 17:04:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7080         * include/ruby/ruby.h (inttypes.h): includes always if available.
7082         * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h.
7084 Fri Mar 14 16:59:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7086         * configure.in (RUBY_LIB_PREFIX): fix for prefix.
7088 Fri Mar 14 16:35:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7090         * lib/cgi.rb (CGI::Cookie::initialize): performance patch from
7091           Makoto Kuwata <kwa@kuwata-lab.com> in [ruby-dev:34048].
7093 Fri Mar 14 15:49:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7095         * configure.in (RUBY_LIB_PREFIX): use libdir.
7097 Fri Mar 14 14:24:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7099         * ext/digest/defs.h: inttypes.h is still needed.
7101 Fri Mar 14 11:34:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7103         * {bcc,win}32/Makefile.sub: follow below changes.
7105 Fri Mar 14 11:24:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7107         * misc/ruby-mode.el (ruby-encoding-map, ruby-use-encoding-map): added
7108           to customize.
7110 Fri Mar 14 10:37:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7112         * configure.in (int8_t, uint8_t,  int16_t,  uint16_t int32_t,
7113           uint32_t int64_t, uint64_t, int128_t, uint128_t,
7114           intptr_t, uintptr_t): check if defined.
7116         * win32/Makefile.sub: follow configure.in.
7118         * ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t.
7120 Fri Mar 14 10:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7122         * configure.in (RUBY_CHECK_VARTYPE): should not indent preprocessor
7123           directives.
7125 Fri Mar 14 10:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7127         * string.c (UNALIGNED_WORD_ACCESS): IA64 cannot access unaligned word.
7129 Thu Mar 13 21:00:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7131         * array.c (rb_ary_slice_bang): should not use rb_ary_subseq()
7132           which shares internal pointer.  splice modifies the receiver
7133           right after subseq.  [ruby-dev:34005]
7135         * bootstraptest/test_struct.rb: some test moved from test to shut
7136           warning up.
7138 Thu Mar 13 19:42:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7140         * {bcc,win}32/Makefile.sub (config.h): define uint32_t.
7142 Thu Mar 13 14:14:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7144         * trunk/configure.in (AC_CHECK_HEADERS): stdint.h is not needed to
7145           check.
7147         * trunk/configure.in (rb_cv_type_uint32_t): unquoted.  [ruby-dev:34030]
7149         * trunk/string.c (hash): use inttypes.h instead of stdint.h.
7151 Thu Mar 13 10:42:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7153         * numeric.c (fix_divmod): should return integer division.  [ruby-dev:34006]
7155         * enum.c (zip_ary): wrong boundary condition.
7157         * test/ruby/test_numeric.rb (TestNumeric::test_num2long): bit-and
7158           should not raise RangeError.
7160 Thu Mar 13 03:12:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7162         * lib/irb/cmd/help.rb: should be updated for new ri structure.
7163           [ruby-core:15825]
7165         * lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional.
7167         * lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be
7168           empty.
7170         * lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for
7171           method.  maybe broken.
7173         * lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError
7174           no more.
7176 Thu Mar 13 01:45:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7178         * configure.in (stdint.h): check if presence.
7180         * configure.in (uint32_t): check if defined.
7182         * string.c (hash): fix for portability.  [ruby-dev:34020]
7184 Wed Mar 12 17:33:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7186         * object.c (rb_cstr_to_dbl): fix for a mere underscore.
7188 Wed Mar 12 14:47:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7190         * eval_intern.h (rb_thread_raised_set): use generic flags.
7192         * eval.c (rb_longjmp): clear all raised flags.
7194         * eval.c (stack_check): leave clearing flag to rb_longjmp.
7196         * gc.c (rb_memerror): use thread raised flag instead of static flag.
7198 Tue Mar 11 23:38:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7200         * array.c (rb_ary_combination): argument check before creating
7201           Enumerator.
7203         * array.c (rb_ary_permutation): ditto.
7205         * enum.c (enum_zip): optimize if all arguments are arrays.
7207 Tue Mar 11 19:48:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7209         * numeric.c (fix_coerce): try conversion before type check.
7210           [ruby-core:15838]
7212 Tue Mar 11 12:39:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7214         * common.mk (clean-local): WINMAINOBJ is Windows specific.
7216 Tue Mar 11 10:19:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7218         * string.c (hash): replaced by MurmurHash described in
7219           <http://murmurhash.googlepages.com/>.
7221 Tue Mar 11 09:52:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7223         * string.c (rb_str_comparable): empty strings in any encoding are
7224           compatible each other.
7226 Tue Mar 11 00:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7228         * ruby.c (usage): remove some unimportant lines to fit -h message
7229           in a page.  [ruby-dev:34018]
7231 Mon Mar 10 17:11:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7233         * eval.c (rb_f_local_variables): local_variables should return an
7234           array of symbols.  [ruby-dev:34008]
7236         * vm.c (collect_local_variables_in_env): ditto.
7238 Mon Mar 10 15:53:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7240         * version.c (MKSTR): make US-ASCII.  [ruby-dev:34010]
7242 Mon Mar 10 02:08:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7244         * string.c (rb_str_index): if t == s + pos, the character beginning
7245           from s + pos is valid.
7247 Sun Mar  9 13:51:21 2008  Eric Hodel  <drbrain@segment7.net>
7249         * lib/rdoc/generator.rb: Restore missing line to #params.  Patch by
7250           Lincoln Stoll <lstoll at lstoll.net>
7252 Sun Mar  9 09:52:00 2008  Eric Hodel  <drbrain@segment7.net>
7254         * lib/rdoc/code_objects.rb: Remove debugging Kernel#p.  Patch by
7255           Lincoln Stoll <lstoll at lstoll.net>
7256         * lib/rdoc/generator/html.rb: Fully qualify AllReferences.  Patch by
7257           Lincoln Stoll <lstoll at lstoll.net>
7258         * lib/rdoc/ri/writer.rb: Fix 1.8 backwards compatibility.
7260 Sat Mar  8 18:50:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7262         * file.c (isdirsep): backslash is valid path separator on cygwin too.
7264 Sat Mar  8 06:53:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7266         * string.c (search_nonascii): Use VALUE instead of unsigned long
7267           because VALUE can be the fastest unsigned integer type.
7268           On LLP64 unsigned long isn't the fastest.
7269         * string.c (str_strlen): ditto.
7270         * string.c (str_utf8_nth): ditto.
7271         * string.c (count_utf8_lead_bytes_with_ulong): ditto.
7273         * string.c (count_utf8_lead_bytes_with_word): renamed.
7275 Fri Mar  7 21:27:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7277         * bignum.c: fix indent.
7279 Fri Mar  7 21:12:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7281         * bignum.c (power_cache_init, power_cache_get_power0, Init_Bignum):
7282           delayed initializing power cache per base.  [ruby-dev:34003]
7284 Fri Mar  7 20:30:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7286         * cont.c (cont_restore_0): fixed typo.  [ruby-core:15821]
7288 Fri Mar  7 19:56:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7290         * lib/mkmf.rb: rdoc added.  [ruby-Patches-9762]
7292 Thu Mar  6 17:26:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7294         * sprintf.c (rb_str_format): space flag is in effect for Inf/NaN too.
7295           [ruby-dev:34002]
7297 Thu Mar  6 15:44:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7299         * sprintf.c (rb_str_format): casting double to long is undefined
7300           if the integer part of double is out of the range of long.
7302 Thu Mar  6 15:11:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7304         * sprintf.c (rb_str_format): ignore 0 flag for NaN and Inf.
7305           [ruby-dev:33994]
7307 Thu Mar  6 15:05:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7309         * {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
7310           ruby$(EXEEXT).
7311           suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
7312           [ruby-dev:34000]
7314 Thu Mar  6 14:46:08 2008  Tanaka Akira  <akr@fsij.org>
7316         * missing/lgamma_r.c (loggamma): return 0 for 1 and 2.
7318         * test/ruby/test_math.rb: accept errors by functions under missing/.
7320 Thu Mar  6 14:29:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7322         * transcode.c (rb_str_transcode_bang): set coderange.
7324         * transcode.c (rb_str_transcode): use rb_str_transcode_bang.
7326 Thu Mar  6 14:00:10 2008  Tanaka Akira  <akr@fsij.org>
7328         * include/ruby/missing.h (cbrt): add declaration.
7330 Thu Mar  6 11:14:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7332         * misc/ruby-mode.el (ruby-add-log-current-method): use ruby style
7333           method name format.
7335 Thu Mar  6 11:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7337         * sprintf.c (rb_str_format): no need of loop.
7339 Thu Mar  6 08:30:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7341         * object.c (rb_mod_freeze): call rb_class_name() directly.
7342           [ruby-core:15802]
7344 Thu Mar  6 04:32:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7346         * string.c (count_utf8_lead_bytes_with_ulong): fix shift size.
7347           [ruby-dev:33993]
7349         * string.c (str_utf8_nth) fix wrong counting.
7351 Thu Mar  6 00:34:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7353         * sprintf.c (rb_str_format): size_t returned from strlen() can be
7354           unsigned.
7356 Thu Mar  6 00:31:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7358         * struct.c (make_struct): preserve encoding of struct name.
7360 Wed Mar  5 22:49:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7362         * string.c (is_utf8_lead_byte, count_utf8_lead_bytes_with_ulong):
7363           defined for UTF-8 optimization.
7365         * string.c (str_strlen): use is_utf8_lead_byte and
7366           count_utf8_lead_bytes_with_ulong.
7368         * string.c (str_utf8_nth) ditto.
7370 Wed Mar  5 17:53:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7372         * file.c (rb_file_flock): returns false on EAGAIN if non-blocking.
7373           [ruby-core:15795]
7375 Wed Mar  5 17:43:43 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
7377         * transcode.c (transcode_loop): Adjusted detection of invalid
7378           (ill-formed) UTF-8 sequences. Fixing potential security issue, see
7379           http://www.unicode.org/versions/Unicode5.1.0/#Notable_Changes.
7381         * test/ruby/test_transcode.rb: Added two tests for above fix.
7383 Wed Mar  5 14:00:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7385         * numeric.c (fix_to_s): avoid rb_scan_args() when no argument
7386           given.
7387         * bignum.c (rb_big_to_s): ditto.
7388         * enum.c (enum_first): ditto.
7389         * eval_jump.c (rb_f_catch): ditto.
7390         * io.c (rb_obj_display): ditto.
7391         * class.c (rb_obj_singleton_methods): ditto.
7392         * object.c (rb_class_initialize): ditto.
7393         * random.c (rb_f_srand): ditto.
7394         * range.c (range_step): ditto.
7395         * re.c (rb_reg_s_last_match): ditto.
7396         * string.c (rb_str_to_i): ditto.
7397         * string.c (rb_str_each_line): ditto.
7398         * string.c (rb_str_chomp_bang): ditto.
7399         * string.c (rb_str_sum): ditto.
7401         * string.c (str_modifiable): declare inline.
7402         * string.c (str_independent): ditto.
7404 Wed Mar  5 11:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7406         * lib/debug.rb: require 'continuation' to implement "restart"
7407           command.  [ruby-dev:33992]
7409         * lib/debug.rb (Context::debug_command): remove local variable
7410           shadowing to shut up warnings.  [ruby-dev:33992]
7412         * lib/debug.rb (Context::display_list): ditto.
7414         * lib/debug.rb (Context::resume): ditto.
7416         * lib/debug.rb (Context::get_thread): no longer use #index for Hash.
7418 Tue Mar  4 21:35:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7420         * lib/irb.rb (IRB::Irb::eval_input): SyntaxError should not be
7421           considered as IRB bug.  [ruby-dev:33991]
7423         * lib/irb/workspace.rb (IRB::WorkSpace::filter_backtrace): should
7424           filter 'irb.rb' as well for context mode 2 and 3.
7426 Tue Mar  4 19:10:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7428         * hash.c (rb_hash_aset): should not copy key string when
7429           compare_by_identity is set.  [ruby-dev:33604]
7431         * hash.c (hash_equal): two hash tables are different when internal
7432           comparison table differ.  [ruby-dev:33989]
7434 Tue Mar  4 16:29:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7436         * parse.y (parser_yylex): disallow non digits '0o' expression.
7438 Tue Mar  4 14:35:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7440         * io.c (open_key_args): use rb_io_open_with_args instead of rb_f_open.
7441           [ruby-core:15763]
7443 Tue Mar  4 13:41:46 2008  Tanaka Akira  <akr@fsij.org>
7445         * gc.c (add_heap): fix previous change.  [ruby-dev:33988]
7447 Tue Mar  4 10:21:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7449         * gc.c (add_heap): use binary search to find the place to insert the
7450           new heap slot.  [ruby-dev:33983]
7452 Tue Mar  4 05:30:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7454         * io.c (open_key_args): use rb_io_open instead of rb_f_open.
7455           [ruby-core:15746]
7457 Mon Mar  3 23:28:37 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
7459         * lib/webrick/httpservlet/filehandler.rb: should normalize path
7460           separators in path_info to prevent directory traversal
7461           attacks on DOSISH platforms.
7462           reported by Digital Security Research Group [DSECRG-08-026].
7464         * lib/webrick/httpservlet/filehandler.rb: pathnames which have
7465           not to be published should be checked case-insensitively.
7467 Mon Mar  3 17:25:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7469         * gc.c (add_heap): sort heaps array in ascending order to use
7470           binary search.
7472         * gc.c (is_pointer_to_heap): use binary search to identify object
7473           in heaps.  works better when number of heap segments grow big.
7475 Mon Mar  3 17:15:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7477         * re.c (rb_reg_regsub): remove too strict encoding check.
7478           [ruby-dev:33966]
7480 Mon Mar  3 16:14:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7482         * hash.c (rb_any_hash): shrinks all results in Fixnum range.
7483           [ruby-core:15713]
7485 Sun Mar  2 23:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7487         * io.c (rb_io_ungetc): reduce redundant call.
7489 Sun Mar  2 10:13:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7491         * ruby.c (load_file): parse shebang in us-ascii.  a patch from
7492           sheepman <sheepman AT sheepman.sakura.ne.jp> in [ruby-dev:33955]
7494 Sun Mar  2 00:08:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7496         * object.c (rb_cstr_to_dbl): check for successive underscores.
7497           [ruby-dev:33952]
7499 Sat Mar  1 17:59:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7501         * io.c (struct argf): packed ARGF stuffs.
7503         * ruby.c (proc_options): use ruby_set_inplace_mode().
7505 Sat Mar  1 17:51:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7507         * lib/test/unit/collector/dir.rb (recursive_collect): do not always
7508           include all test_*.rb.
7510 Sat Mar  1 14:14:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7512         * development snapshot 1.9.0-1 released.
7514 Sat Mar  1 13:46:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7516         * tool/make-snapshot: make prereq uses MINIRUBY.
7518         * tool/make-snapshot: allow packaging like 1.9.0-1 by second
7519           command-line argument.
7521 Sat Mar  1 13:11:03 2008  Tanaka Akira  <akr@fsij.org>
7523         * test/ruby/allpairs.rb: new file for all pairs method.
7525         * test/ruby/test_m17n_comb.rb: use allpairs.rb to reduce test cases.
7527         * test/ruby/test_sprintf_comb.rb: ditto.
7529 Sat Mar  1 12:34:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7531         * string.c (sym_inspect): use rb_str_inspect() instead of
7532           rb_str_dump().  [ruby-dev:33946]
7534 Sat Mar  1 12:15:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7536         * eval_method.c (rb_get_method_body): ent->method may be freed by
7537           GC.  [ruby-dev:31819]
7539         * thread.c (remove_event_hook): should not access freed memory.
7540           [ruby-dev:31820]
7542 Sat Mar  1 10:31:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7544         * io.c (read_all, rb_io_getline_fast): encoding is io_input_encoding.
7546 Sat Mar  1 10:09:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7548         * string.c (tr_setup_table, rb_str_split_m, rb_str_chomp_bang):
7549           simplified with rb_enc_ascget().  [ruby-dev:33944]
7551 Sat Mar  1 10:01:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7553         * string.c (rb_str_coderange_scan_restartable): should not return
7554           offset in the middle of a character.
7556         * string.c (rb_str_coderange_scan_restartable): should not return
7557           invalid cr value.
7559 Sat Mar  1 09:36:08 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7561         * sprintf.c (rb_str_format): "%#.0o" should keep prefix where
7562           "%#.0x" should not.
7564 Sat Mar  1 02:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7566         * bignum.c (big2str_find_n1): check integer overflow.
7568 Sat Mar  1 00:29:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7570         * encoding.c (rb_enc_dummy_p): bootstrap encodings can not be dummy.
7572         * encoding.c (rb_enc_ascget): no needs to call rb_enc_precise_mbclen()
7573           twice.
7575 Fri Feb 29 23:14:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7577         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test
7578           updated.
7580 Fri Feb 29 20:58:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7582         * test/ruby/test_iterator.rb (TestIterator::test_enumerator):
7583           adjust test for zip behavior reversion.
7585 Fri Feb 29 20:25:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7587         * string.c (rb_str_chomp_bang): now works on UTF-16.
7589         * string.c (tr_setup_table): negation should work on non ASCII
7590           compatible strings as well.
7592         * string.c (rb_str_split_m): awk split should work on non ASCII
7593           compatible strings as well.
7595 Fri Feb 29 18:08:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7597         * time.c (time_strftime): format should be ascii compatible.
7599         * parse.y (rb_intern3): non ASCII compatible symbols.
7601         * re.c (rb_reg_regsub): add encoding check.
7603         * string.c (rb_str_chomp_bang): ditto.
7605         * test/ruby/test_utf16.rb (TestUTF16::test_chomp): raises exception.
7607 Fri Feb 29 15:16:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7609         * string.c (rb_str_rpartition): calculation was done in byte indexing.
7611         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_start_with):
7612           allow start_with? matching on broken strings.
7614 Fri Feb 29 15:12:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7616         * parse.y (opt_block_param): command can start just after block param
7617           definition.  [ruby-list:44479]
7619 Fri Feb 29 03:22:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7621         * test/ruby/test_time.rb (test_readers): fix typo.
7622           (test_strftime): "UTC" is also ok for time.gmtime.strftime("%Z").
7624 Fri Feb 29 02:50:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7626         * string.c (str_new): remove encoding assumption of empty string.
7628         * hash.c ( rb_f_getenv, env_fetch, env_inspect): result of ENV should
7629           be always ASCII-8BIT.
7631         * object.c (nil_to_s): nil.to_s should be US-ASCII.
7633 Fri Feb 29 02:24:22 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
7635         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
7637         * ext/tk/lib/tk.rb, ext/tk/lib/tk/text.rb,
7638           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: remove adhoc check
7639           of Ruby's features (use existence of some classes instead of
7640           comparing with RUBY_VERSION)
7642         * ext/tk/lib/tk/root.rb, ext/tk/lib/tk/autoload.rb: make TkRoot
7643           (Tk::Root) unswitchable
7645         * ext/tk/lib/multi-tk.rb: partial bug fix (still not work!!)
7647 Thu Feb 28 23:37:12 2008  Tanaka Akira  <akr@fsij.org>
7649         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): use ASCII-8BIT
7650           for charset unspecified non-text data.
7652 Thu Feb 28 22:19:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7654         * encoding.c (enc_capable): IMMEDIATE_P doesn't include Qnil and Qfalse.
7655           use SPECIAL_CONST_P.
7657 Thu Feb 28 19:45:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7659         * encoding.c (enc_find): check type of argument and convert to String
7660           if it is StringValue. [ruby-cvs:22866]
7662 Thu Feb 28 18:07:52 2008  Tanaka Akira  <akr@fsij.org>
7664         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): setup encoding
7665           by charset.
7666           (OpenURI::Meta#meta_add_field): call meta_setup_encoding when
7667           content-type.
7669 Thu Feb 28 15:29:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7671         * io.c (rb_io_getline_fast): scan coderange.
7673 Thu Feb 28 14:36:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7675         * string.c (rb_enc_str_copy): removed.
7677 Thu Feb 28 13:51:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7679         * eval.c (stack_check): made flag per threads.
7681         * thread.c (rb_thread_set_raised, rb_thread_reset_raised): prefixed.
7683 Thu Feb 28 11:43:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7685         * file.c (rb_file_flock): immediately returns on EAGAIN if
7686           non-blocking.  [ruby-core:15672]
7688 Thu Feb 28 11:23:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7690         * io.c (rb_io_getline_1): get rid of segfault.  [ruby-dev:33938]
7692 Thu Feb 28 11:19:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7694         * string.c (rb_str_reverse_bang): removed unused variables.
7696         * include/ruby/encoding.h (rb_str_coderange_scan_restartable): added
7697           prototype.
7699         * string.c (rb_str_coderange_scan_restartable, rb_str_times): removed
7700           unused variables.
7702         * string.c (rb_str_reverse_bang): ditto
7704         * string.c (rb_enc_str_copy): unused now.  may be used in future?
7706 Thu Feb 28 03:03:32 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
7708         * ext/tk/lib/tk.rb, ext/tk/lib/*: make default widget set
7709           switchable between Tk (standard Tcl/Tk widget set) and
7710           Ttk (Tile). Initial default widget set is Tk. Now, toplevel
7711           widget classes are removed and defined as aliases.
7712           For example, "TkButton" is an alias of the "Tk::Button" class.
7713           Those aliases are replaced when switching default widget set.
7714           "Tk.default_widget_set=" is the method for switching default
7715           widget set. "Tk.default_widget_set = :Ttk" defines Ttk (Tile)
7716           widget set as default. It means that "TkButton" denotes
7717           "Tk::Tile::Button" class. And then, "TkButton.new" creates
7718           a Tk::Tile::Button widget. Of course, you can back to use
7719           standard Tk widgets as the default widget set by calling
7720           "Tk.default_widget_set = :Tk", whenever you want. Based on
7721           the feature, you can use Ttk widget styling engine on your
7722           old Ruby/Tk application without modifying its source, if you
7723           don't use widget options unsupported on Ttk widgets (At first,
7724           call "Tk.default_widget_set = :Ttk", and next load and run
7725           your application).
7726           This is one step for supporting Tcl/Tk8.5 features.
7728 Wed Feb 27 22:55:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7730         * string.c (rb_str_coderange_scan_restartable): coderange scanning
7731           for partial read.
7733         * io.c (read_all): set coderange when not convert encoding.
7735 Wed Feb 27 03:55:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7737         * ext/extmk.rb, enc/make_encmake.rb: load current mkmf.rb even if
7738           cross-compiling.
7740         * ext/extmk.rb, enc/make_encmake.rb, lib/mkmf.rb: need to be 1.8
7741           compatible for cross-compiling.
7743 Tue Feb 26 16:53:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7745         * misc/ruby-mode.el (ruby-calculate-indent): should distinguish
7746           comment and # in strings.  [ruby-dev:33874]
7748 Tue Feb 26 16:41:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7750         * array.c (combi_len, rb_ary_product): check for overflow.
7751           [ruby-Bugs-18355]
7753 Tue Feb 26 16:38:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7755         * array.c (recursive_cmp): compare minimal length parts.
7757 Tue Feb 26 16:06:00 2008  Technorama Ltd.  <oss-ruby@technorama.net>
7759         * ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
7761         * ext/openssl/ossl_asn1.c: Simplify code.
7763         * ext/openssl/ossl_ssl_session.c Fix compiler warnings.
7764           Undefine #id if SSL_SESSION_get_id is not supported.
7766 Tue Feb 26 15:50:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7768         * parse.y (value_expr_gen): removed inappropriate warning.
7769           [ruby-core:15660]
7771 Tue Feb 26 15:43:42 2008  Tanaka Akira  <akr@fsij.org>
7773         * parse.y (tokadd_escape): refactored.  [ruby-core:15657]
7775 Tue Feb 26 15:30:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7777         * array.c (rb_ary_eql, rb_ary_cmp): get rid of stack overflow with
7778           self-recursive constructs.  [ruby-Bugs-18356]
7780 Tue Feb 26 01:16:01 2008  Tanaka Akira  <akr@fsij.org>
7782         * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.
7783           (ROBJECT_IVPTR): renamed from ROBJECT_PTR.
7785         * variable.c: follow the above renaming.
7787         * object.c: ditto.
7789         * gc.c: ditto.
7791         * marshal.c: ditto.
7793 Mon Feb 25 17:30:29 2008  Technorama Ltd.  <oss-ruby@technorama.net>
7795         * ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
7796           Commit patch #9280 from Akinori MUSHA.
7797           Simplify the OpenSSL::Digest class and make use of the
7798           existing Digest framework.
7799           Enhance performance.
7801 Mon Feb 25 15:33:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7803         * bignum.c (big2str_karatsuba): initialize cache if not initialized.
7805         * bignum.c (Init_Bignum): delayed initializing cache.
7806           [ruby-dev:33930]
7808 Mon Feb 25 13:40:03 2008  Tanaka Akira  <akr@fsij.org>
7810         * process.c (Init_process): share bignum objects for RLIM_INFINITY,
7811           RLIM_SAVED_MAX and RLIM_SAVED_CUR if they are equal.
7813 Mon Feb 25 10:41:41 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
7815         * encoding.c (Encoding#dummy): minor grammatical fixes
7816           in rdoc documentation.
7818 Mon Feb 25 00:01:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7820         * cygwin/GNUmakefile.in (clean-local): should be double-colon.
7822 Sun Feb 24 23:39:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7824         * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
7825           intermediate files.
7827         * cygwin/GNUmakefile.in (clean-local): remove def file.
7829 Sun Feb 24 06:49:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7831         * debug.c (ruby_set_debug_option): separated ruby_each_words().
7833         * util.c (ruby_each_words): extracted from ruby_set_debug_option().
7835         * ruby.c (enable_option, disable_option): allow all for all known
7836           features.
7838         * ruby.c (proc_options): generalized enable/disable options.
7840         * ruby.c (ruby_init_gems): take enabled flag.  [ruby-core:14840]
7842         * ruby.c (process_options): added --disable-rubyopt flag.
7844         * include/ruby/util.h (ruby_each_words): prototype.
7846 Sun Feb 24 05:25:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7848         * ruby.c (proc_options): check if argument for -E exists.
7850 Sun Feb 24 05:09:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7852         * misc/ruby-style.el (ruby-style-label-indent): fix for labels inside
7853           blocks in switch.
7855 Sun Feb 24 03:52:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7857         * util.c (valid_filename): use O_EXCL to get rid of clobbering
7858           existing files in race conditions.
7860 Sat Feb 23 21:36:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7862         * ext/win32ole/win32ole.c (ole_init_cp): should return value.
7864 Sat Feb 23 20:16:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7866         * string.c (str_sublen): removed.
7868         * string.c (rb_str_reverse, rb_str_reverse_bang): use
7869           single_byte_optimizable.
7871 Sat Feb 23 19:25:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7873         * string.c (rb_enc_cr_str_copy_for_substr): renamed from
7874           rb_enc_cr_str_copy.
7876         * string.c: use rb_enc_cr_str_copy_for_substr and keep coderange.
7878 Sat Feb 23 18:50:17 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
7880         * ext/win32ole/win32ole.c (ole_encoding2cp): remove US-ASCII
7881           mapping.
7883 Sat Feb 23 01:09:47 2008  Tanaka Akira  <akr@fsij.org>
7885         * process.c (rlimit_resource_type): new function.
7886           (rlimit_resource_value): new function.
7887           (proc_getrlimit): use rlimit_resource_type to accept
7888           symbol and string as resource type.
7889           (proc_setrlimit): use rlimit_resource_type and rlimit_resource_value
7890           to accept symbol and string as resource type and values.
7892 Fri Feb 22 21:12:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7894         * string.c (rb_enc_cr_str_copy): check string's coderange is 7bit or
7895           valid.
7897 Fri Feb 22 19:50:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7899         * bignum.c (BIGZEROP): fix for longer Bignum zeros.  [ruby-Bugs-17454]
7901 Fri Feb 22 15:47:36 2008  Tanaka Akira  <akr@fsij.org>
7903         * encoding.c (rb_enc_mbclen): return minlen instead of 1 when
7904           a character is not found properly.
7906         * string.c (rb_enc_strlen): round up string length with fixed
7907           multibyte encoding such as UTF-32.
7908           (rb_enc_strlen_cr): ditto.
7909           (rb_str_substr): fix substring with fixed multibyte encoding.
7910           (rb_str_justify): check number of characters.
7912 Fri Feb 22 12:11:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7914         * string.c (rb_str_inspect): string of ascii incompatible encoding
7915           should be escaped and returned as US-ASCII encoding.
7917 Fri Feb 22 11:16:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7919         * string.c (rb_str_substr): copy encoding although empty string.
7921 Fri Feb 22 04:48:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7923         * string.c (rb_str_times): empty string's coderange is CODERANGE_7BIT.
7925         * string.c (rb_str_substr): ditto.
7927         * encoding.c (rb_enc_compatible): empty string is compatible with not
7928           only nonasciicompatible strings. [ruby-dev:33895]
7930 Thu Feb 21 17:15:15 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
7932         * transcode.c: Added basic support for passing options to String#encode
7933           via a hash. Currently only one option, with one value, is supported:
7934           invalid: :ignore (dropping invalid byte sequences instead of
7935           producing an error). Option naming is not yet stable!
7937         * test/ruby/test_transcode.rb: Added a single test for invalid: :ignore
7938           option. Not more tests because most data does not yet distinguish
7939           between INVALID and UNKNOWN.
7941 Thu Feb 21 16:35:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7943         * array.c (rb_ary_unshift_m): expands enough for argc.  [ruby-dev:33880]
7945 Thu Feb 21 14:49:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7947         * io.c (argf_set_encoding): uses current_file after check if next
7948           input is available.
7950 Thu Feb 21 14:13:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7952         * io.c (rb_f_putc): invoke stdout method so that redefining putc
7953           may take effect.   [ruby-talk:291844]
7955         * io.c (rb_f_puts): ditto.
7957 Thu Feb 21 11:10:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7959         * string.c: replace rb_enc_copy by rb_enc_cr_str_copy or
7960           rb_enc_cr_str_exact_copy.
7962 Thu Feb 21 10:35:04 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7964         * include/ruby/encoding.h (rb_enc_asciicompat): dummy encoding is not
7965           ascii compatible. [ruby-dev:33878]
7967 Thu Feb 21 00:01:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7969         * configure.in (RPATHFLAG): -R option of HP-UX ld is not for runtime
7970           load path.  [ruby-list:44600]
7972 Wed Feb 20 23:55:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7974         * win32/win32.c (rb_w32_map_errno): exported.
7976 Wed Feb 20 23:28:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7978         * ext/readline/extconf.rb (rl_event_hook): workaround for native
7979           windows.
7981 Wed Feb 20 19:42:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7983         * encoding.c (rb_enc_associate_index): doesn't clear coderange
7984           when new encoding equals to old one.
7986 Wed Feb 20 19:15:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7988         * string.c (rb_enc_str_copy): added for wrapper for rb_enc_copy.
7989           this also copy coderange when ptr and len is equal.
7991         * string.c (rb_enc_cr_str_copy): added for wrapper for rb_enc_copy.
7992           this always copy coderange.
7994         * string.c (str_replace_shared): use rb_enc_str_copy.
7996         * string.c (str_new3): don't rb_enc_copy because encoding is copied
7997           at str_replace_shared.
7999 Wed Feb 20 13:08:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8001         * instruby.rb (parse_args): added --dir-mode, --script-mode and
8002           --cmd-type options.  [ruby-dev:33816]
8004         * instruby.rb (parse_args): added bin-arch and bin-comm to install
8005           type, for compiled files and script files.
8007         * instruby.rb (parse_args): deal with make style command line macros,
8008           and count as long style options if prefixed with INSTALL_.
8010         * instruby.rb (makedirs): use $dir_mode.  [ruby-dev:33805]
8012         * instruby.rb (open_for_install): set file mode, which is now
8013           permission mode instead of access mode.
8015         * instruby.rb (bin-comm): installs scripts with replacing shebang
8016           lines.
8018 Wed Feb 20 10:04:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8020         * io.c (open_key_args): set arg->io even if no options passed.
8021           [ruby-dev:33072]
8023 Tue Feb 19 21:11:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8025         * string.c (rb_enc_strlen_cr): get length with coderange scan.
8027         * string.c (str_strlen): use rb_enc_strlen_cr. [ruby-dev:33849]
8029 Tue Feb 19 20:49:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8031         * eval.c (rb_raise_jump): moved adjustment for control frame.
8033 Tue Feb 19 18:34:32 2008  Tanaka Akira  <akr@fsij.org>
8035         * gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed.  [ruby-dev:33857]
8037 Tue Feb 19 14:27:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8039         * ext/readline/readline.c (readline_event): prevent polling.  based on
8040           a patch from error errorsson in [ruby-Bugs-17675].
8042 Tue Feb 19 11:14:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8044         * eval.c (ruby_exec_node): no thread starts inside iseq compilation.
8046         * eval.c (rb_f_raise): skip current control frame.  [ruby-core:15589]
8048         * insns.def (opt_div): raise as the ordinary method. [ruby-core:15589]
8050 Mon Feb 18 15:16:30 2008  Tanaka Akira  <akr@fsij.org>
8052         * string.c (rb_str_each_line): fix newline size.
8054 Mon Feb 18 13:06:37 2008  Tanaka Akira  <akr@fsij.org>
8056         * lib/irb/locale.rb (IRB::Locale#lc2kconv): check ja_JP.EUC-JP as well.
8058 Mon Feb 18 11:51:19 2008  Tanaka Akira  <akr@fsij.org>
8060         * re.c (re_warn): defined to restore warnings for /[a-c-e]/, etc.
8062 Mon Feb 18 10:17:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8064         * ext/pty/lib/expect.rb (IO#expect): check if peer is closed.
8065           [ruby-Bugs-17940]
8067 Mon Feb 18 00:33:03 2008  Tanaka Akira  <akr@fsij.org>
8069         * re.c (rb_reg_regsub): don't repeat repl twice with
8070           "X".sub!(/./, sprintf("\\%c", 255)).
8072 Sun Feb 17 23:06:55 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
8074         * lib/cgi.rb (CGI::escapeHTML): use gsub with Hash. [ruby-dev:33828]
8076 Sun Feb 17 21:38:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8078         * encoding.c (ENC_CODERANGE_AND): fix broken case. [ruby-dev:33826]
8080         * string.c (rb_str_times): fix broken case. [ruby-dev:33826]
8082 Sun Feb 17 20:45:10 2008  Tanaka Akira  <akr@fsij.org>
8084         * re.c (rb_reg_prepare_re): add enable_warning parameter.
8085           (rb_reg_adjust_startpos): disable warning by rb_reg_prepare_re.
8086           (rb_reg_search): follow rb_reg_prepare_re parameter change.
8088 Sun Feb 17 20:12:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8090         * test/ruby/test_regexp.rb: add tests to achieve over 90% test
8091           coverage of re.c.
8093 Sun Feb 17 15:25:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8095         * encoding.c (ENC_CODERANGE_AND): added.
8097         * string.c (rb_str_plus, rb_str_times): keep coderange.
8099         * parse.y (STR_NEW0) use rb_usascii_str_new.
8101 Sun Feb 17 14:07:24 2008  Tanaka Akira  <akr@fsij.org>
8103         * string.c (str_strlen): rb_enc_strlen doesn't fail.
8105 Sun Feb 17 13:03:48 2008  Tanaka Akira  <akr@fsij.org>
8107         * string.c (str_sublen): use rb_enc_strlen.
8109 Sun Feb 17 12:17:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8111         * enc/{euc_jp.c,gbk.c,iso_8859_1.c,iso_8859_11.c,iso_8859_13.c,
8112           iso_8859_2.c,iso_8859_6.c,iso_8859_7.c,iso_8859_8.c,iso_8859_9.c,
8113           shift_jis.c,windows_1251.c}: add document about encodings.
8115         * enc/cp949.c: divided into new file.
8117 Sun Feb 17 10:59:04 2008  Tanaka Akira  <akr@fsij.org>
8119         * re.c (rb_reg_quote): return US-ASCII string consistently.
8121 Sun Feb 17 09:17:08 2008  Tanaka Akira  <akr@fsij.org>
8123         * string.c (rb_str_times): reduce loop overhead.
8125 Sun Feb 17 03:37:01 2008  Tanaka Akira  <akr@fsij.org>
8127         * include/ruby/re.h (struct rmatch_offset): new struct for character
8128           offsets.
8129           (struct rmatch): new struct.
8130           (struct RMatch): reference struct rmatch.
8131           (RMATCH_REGS): new macro.
8133         * re.c (match_alloc): initialize struct rmatch.
8134           (pair_byte_cmp): new function.
8135           (update_char_offset): update character offsets.
8136           (match_init_copy): copy regexp and character offsets.
8137           (match_sublen): removed.
8138           (match_offset): use update_char_offset.
8139           (match_begin): ditto.
8140           (match_end): ditto.
8141           (rb_reg_search): make character offset updated flag false.
8142           (match_size): use RMATCH_REGS.
8143           (match_backref_number): ditto.
8144           (rb_reg_nth_defined): ditto.
8145           (rb_reg_nth_match): ditto.
8146           (rb_reg_match_pre): ditto.
8147           (rb_reg_match_post): ditto.
8148           (rb_reg_match_last): ditto.
8149           (match_array): ditto.
8150           (match_aref): ditto.
8151           (match_values_at): ditto.
8152           (match_inspect): ditto.
8154         * string.c (rb_str_subpat_set): use RMATCH_REGS.
8155           (rb_str_sub_bang): ditto.
8156           (str_gsub): ditto.
8157           (rb_str_split_m): ditto.
8158           (scan_once): ditto.
8160         * gc.c (obj_free): free character offsets.
8162 Sun Feb 17 03:13:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8164         * win32/resource.rb: made version infos confirm to OS spec.
8166         * {bcc32,win32}/Makefile.sub (*.rc): add dependency.
8168 Sat Feb 16 20:49:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8170         * string.c (rb_str_substr): optimized for UTF-8.
8172 Sat Feb 16 18:13:53 2008  Tanaka Akira  <akr@fsij.org>
8174         * encoding.c (rb_enc_compatible): check encoding incapable arguments.
8176 Sat Feb 16 20:12:47 2008  Tanaka Akira  <akr@fsij.org>
8178         * re.c (match_inspect): avoid SEGV with MatchData.allocate.inspect.
8180 Sat Feb 16 19:04:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8182         * string.c (str_strlen): revert r15507. [ruby-dev:33810]
8184 Sat Feb 16 18:25:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8186         * string.c (str_strlen): little more optimization.
8187           (rb_enc_nth): remove needless variable 'c'.
8189 Sat Feb 16 18:00:13 2008  Tanaka Akira  <akr@fsij.org>
8191         * encoding.c (rb_enc_compatible): empty strings are always compatible.
8193         * string.c (rb_enc_cr_str_buf_cat): ditto.
8195 Sat Feb 16 16:14:35 2008  Tanaka Akira  <akr@fsij.org>
8197         * string.c (rb_enc_strlen): UTF-8 character count moved to str_strlen.
8198           (str_strlen): UTF-8 character count is only applicable for valid
8199           UTF-8 string.  [ruby-dev:33807]
8201 Sat Feb 16 13:16:49 2008  Tanaka Akira  <akr@fsij.org>
8203         * string.c (rb_str_sub_bang): stringize replacing hash values.
8204           (str_gsub): ditto.
8206 Sat Feb 16 13:01:33 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8208         * string.c (rb_enc_strlen): add search_nonascii like character
8209           counter for UTF-8.
8211 Sat Feb 16 11:53:35 2008  Tanaka Akira  <akr@fsij.org>
8213         * encoding.c (rb_enc_strlen): moved to string.c.
8215         * string.c (rb_enc_strlen): use search_nonascii.
8216           (str_strlen): don't use search_nonascii.
8218 Sat Feb 16 11:45:31 2008  Tanaka Akira  <akr@fsij.org>
8220         * lib/require_relative.rb: check require_relative call in eval.
8222 Sat Feb 16 08:00:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8224         * ruby.c (process_options): set default_external before loading
8225           libraries. [ruby-dev:33801]
8227 Sat Feb 16 05:49:54 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8229         * enc/iso_8859_{4,13}.c: Windows-1257 is replica of ISO-8859-13.
8231         * string.c (single_byte_optimizable): rb_enc_mbminlen must be 1
8232           when rb_enc_mbmaxlen is 1.
8234 Sat Feb 16 03:43:18 2008  Tanaka Akira  <akr@fsij.org>
8236         * encoding.c (rb_enc_nth): moved to string.c.
8238         * string.c (rb_enc_nth): moved from string.c.  use search_nonascii
8239           for ASCII compatible string.
8240           (str_nth): wrong optimization removed to fix
8241           "a".force_encoding("EUC-JP").slice!(0,10) returns
8242           "a\x00\x00\x00\x00\x00\x00\x00\x00\x00"
8244 Sat Feb 16 00:21:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8246         * range.c (rb_range_beg_len): check if responds to "begin" and "end"
8247           methods for non-Range object.
8249 Fri Feb 15 20:29:42 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
8251         * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
8252           according to Encoding.default_external.
8254         * test/win32ole/test_win32ole.rb: ditto.
8256 Fri Feb 15 19:31:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8258         * include/ruby/node.h (NODE_FL_NEWLINE): renamed from NODE_NEWLINE
8259           to denote its a flag.  [ruby-core:15529]
8261 Fri Feb 15 18:23:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8263         * string.c (rb_str_sub_bang, str_gsub): allows hash for replacement.
8265 Fri Feb 15 17:12:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8267         * string.c (str_strlen): use search_nonascii() for performance.
8269         * string.c (str_nth): ditto.
8271 Fri Feb 15 16:22:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8273         * io.c (open_key_args): allow specifying both :mode and :encoding.
8275 Fri Feb 15 15:34:47 2008  Tanaka Akira  <akr@fsij.org>
8277         * string.c (rb_str_getbyte): new method.
8278           (rb_str_setbyte): new method.
8280 Fri Feb 15 15:29:03 2008  Tanaka Akira  <akr@fsij.org>
8282         * lib/require_relative.rb: new file.
8284 Fri Feb 15 15:23:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8286         * ext/iconv/iconv.c (iconv_convert): check upper bound.  a patch from
8287           Daniel Luz at [ruby-Bugs-17910].
8289 Fri Feb 15 10:35:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8291         * re.c (rb_reg_quote): set US-ASCII for ASCII-only string.
8292           [ruby-dev:33785]
8294 Fri Feb 15 10:27:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8296         * {win,bcc}32/Makefile.sub (config.h): added HAVE_FTRUNCATE.
8297           [ruby-dev:33786]
8299 Fri Feb 15 09:44:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8301         * parse.y (reg_compile_gen): reg_fragment_setenc might not raise an
8302           exception before rb_reg_compile.
8304 Fri Feb 15 07:37:40 2008  Eric Hodel  <drbrain@segment7.net>
8306         * lib/rdoc/ri/paths.rb: Preserve compatibility with 1.8.
8308 Fri Feb 15 02:42:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8310         * configure.in (ftruncate): check if available.
8312         * file.c (rb_file_truncate): check if ftruncate instead of truncate.
8314 Fri Feb 15 02:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8316         * configure.in (sigsetmask): check when signal semantics is not POSIX.
8318         * signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is
8319           available.
8321 Thu Feb 14 23:56:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8323         * eval_error.c (error_print): append a newline to rest lines.
8325         * parse.y (reg_compile_gen): appends error message from
8326           rb_reg_compile() to one from reg_fragment_setenc().
8328 Thu Feb 14 21:00:14 2008  Tanaka Akira  <akr@fsij.org>
8330         * io.c (io_reopen): check STDIN, STDOUT and STDERR mode according to
8331           stdio streams.
8333 Thu Feb 14 16:07:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8335         * test/ruby/test_math.rb: actual-expected argument ordering for
8336           test_math.rb fixed.  a patch from Tadashi Saito
8337           <shiba AT mail2.accsnet.ne.jp> in [ruby-dev:33770].
8339 Thu Feb 14 16:02:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8341         * file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
8343 Thu Feb 14 12:30:02 2008  Tanaka Akira  <akr@fsij.org>
8345         * re.c (rb_reg_preprocess_dregexp): use non-preprocessed regexp source
8346           for result.
8348 Thu Feb 14 01:43:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8350         * lib/timeout.rb (Timeout::timeout): made sensitive to location on the
8351           stack.  [ruby-core:15458]
8353 Thu Feb 14 00:49:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8355         * common.mk (INSTRUBY_ARGS): pass mode to install.  [ruby-dev:33766]
8357         * instruby.rb (parse_args): added --data-mode and --prog-mode options.
8359 Thu Feb 14 00:02:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8361         * eval.c (eval): allow to eval in a binding that has a singleton method.
8362           [ruby-dev:33763]
8364         * test/ruby/test_proc.rb: add tests to achieve over 70% test coverage
8365           of proc.c.
8367         * test/ruby/test_method.rb: ditto.
8369 Wed Feb 13 22:46:36 2008  Tanaka Akira  <akr@fsij.org>
8371         * lib/pathname.rb (Pathname#sub_ext): new method.  [ruby-list:44608]
8373 Wed Feb 13 21:50:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8375         * proc.c (proc_curry): new method. [ruby-dev:33676]
8377         * test/ruby/test_proc.rb: add tests for above.
8379 Wed Feb 13 20:48:50 2008  Tanaka Akira  <akr@fsij.org>
8381         * include/ruby/ruby.h (RObject): add iv_index_tbl for shortcut of
8382           RCLASS_IV_INDEX_TBL(rb_obj_class(obj)).
8383           (ROBJECT_IV_INDEX_TBL): defined.
8385         * object.c (init_copy): initialize iv_index_tbl in struct RObject.
8387         * variable.c (ivar_get): use ROBJECT_IV_INDEX_TBL.
8388           (rb_ivar_defined): ditto.
8389           (obj_ivar_each): ditto.
8390           (rb_obj_remove_instance_variable): ditto.
8391           (rb_ivar_set): update iv_index_tbl in struct RObject.
8393 Wed Feb 13 16:21:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8395         * lib/uri/generic.rb: revert r15442. 2nd argument of String#sub parse
8396           escapes. [ruby-dev:33726]
8398         * bootstraptest/test_method.rb, enc/depend, instruby.rb, lib/mkmf.rb,
8399           mkconfig.rb: revert r15443. ditto.
8401 Wed Feb 13 11:20:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8403         * enc/depend: fix typo.
8405         * lib/mkmf.rb: revert r15443. "\\1#{sep}\\2" is wrong if sep is ended
8406           with "\\".
8408 Wed Feb 13 08:57:21 2008  Eric Hodel  <drbrain@segment7.net>
8410         * lib/rdoc/markup/inline.rb:  Allow inline markup to have a leading
8411           '#' or '\', or trailing punctuation.  i.e. *#freeze?*, *\foo?*.
8413 Wed Feb 13 07:21:23 2008  Eric Hodel  <drbrain@segment7.net>
8415         * lib/rdoc/to_html_hyperlink.rb:  Moved linking to to_html.rb, move
8416           crossref to to_html_crossref.rb
8418 Wed Feb 13 04:15:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8420         * parse.y (arg_concat_gen, arg_append_gen): optimize for array push.
8422         * parse.y (arg_concat_gen): optimize for array concat.
8424         * parse.y (arg_add_gen): removed since identical to arg_append_gen.
8426 Tue Feb 12 21:04:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8428         * parse.y (exc_list): should use mrhs if non array.
8430 Tue Feb 12 20:32:50 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8432         * lib/rational.rb (floor, ceil, truncate, round): do not use
8433           definitions of Numeric.
8435         * lib/rational.rb (to_i): should returns truncated self.
8437         * lib/complex.rb (numerator): requires
8438           Integer#{numerator,denominator}.
8440         * lib/complex.rb (quo): do not use definition of Numeric.
8442         * lib/complex.rb (>, >=, <, <=, between?, div, divmod, modulo,
8443           floor, ceil, truncate, round): undef'ed.
8445         * lib/mathn.rb (Rational#inspect): removed.
8447 Tue Feb 12 16:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8449         * parse.y (args, mrhs): flattens literal array splats.
8451         * parse.y (exc_list): splat literal array.
8453 Tue Feb 12 15:27:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8455         * bootstraptest/runner.rb, bootstraptest/test_method.rb, enc/depend,
8456           instruby.rb, lib/mkmf.rb, lib/test/unit/util/procwrapper.rb,
8457           mkconfig.rb, sample/test.rb, template/vm.inc.tmpl,
8458           test/ruby/test_stringchar.rb: fixes around String#gsub.
8461 Tue Feb 12 15:11:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8463         * ext/json/lib/json/pure/generator.rb,
8464           ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
8465           ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
8466           lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
8467           lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
8468           lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
8469           lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
8470           lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
8471           lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
8472           lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
8473           lib/yaml/encoding.rb: performance tuning around String#gsub.
8475 Tue Feb 12 12:16:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8477         * string.c (rb_str_hash_cmp): lighter version of rb_str_cmp() for
8478           hash comparison function.
8480         * hash.c (rb_any_cmp): use rb_str_hash_cmp().
8482         * string.c (rb_str_casecmp): should return nil for incompatible
8483           comparison.
8485 Tue Feb 12 12:13:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8487         * instruby.rb: specify file mode to install.  a patch from
8488           pegacorn  <subscriber.jp AT gmail.com> in [ruby-dev:33699].
8490 Tue Feb 12 11:38:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8492         * numeric.c (rb_num_coerce_bin): add ID argument to specify
8493           caller's method name.  [ruby-dev:33663]
8495         * numeric.c (rb_num_coerce_cmp): ditto.
8497         * numeric.c (rb_num_coerce_relop): ditto.
8499         * ext/bigdecimal/bigdecimal.c (DoSomeOne): add function name argument.
8501 Tue Feb 12 10:25:02 2008
8503         * lib/rdoc/rdoc.rb:  Wrap parse_files' read in version check for
8504           backwards compatibility.
8506 Tue Feb 12 10:15:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8508         * ruby.c (load_file): enc must effect source encoding.
8509           [ruby-core:15496]
8511 Tue Feb 12 10:16:47 2008  Eric Hodel  <drbrain@segment7.net>
8513         * lib/rdoc/ri/paths.rb:  Restore require rubygems check.
8515 Tue Feb 12 02:42:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8517         * range.c (range_include): specialize single character string
8518           case (e.g. (?a ..?z).include(?x)) for performance.
8519           [ruby-core:15481]
8521         * string.c (rb_str_upto): specialize single character case.
8523         * string.c (rb_str_hash): omit coderange scan for performance.
8525         * object.c (rb_check_to_integer): check Fixnum first.
8527         * object.c (rb_to_integer): ditto.
8529         * string.c (rb_str_equal): inline memcmp to avoid unnecessary
8530           rb_str_comparable().
8532         * parse.y (rb_intern2): use US-ASCII encoding.
8534         * parse.y (rb_intern_str): ditto.
8536 Mon Feb 11 17:21:18 2008  Kouhei Sutou  <kou@cozmixng.org>
8538         * lib/rss/rss.rb (RSS::VERSION), test/rss/test_version.rb:
8539           0.2.3 -> 0.2.4.
8541         * lib/rss/maker.rb, lib/rss/maker/, test/rss/test_maker_2.0.rb:
8542           fixed a bug that RSS::Maker.make("0.9")'s item doesn't make some
8543           elements if description is missed.
8544           Reported by Michael Auzenne. Thanks!!!
8546         * lib/rss/maker/0.9.rb, test/rss/test_maker_0.9.rb:
8547           RSS::Maker.make("0.9") generates RSS 0.92 not RSS 0.91.
8549 Mon Feb 11 10:43:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8551         * ruby.c (load_file): the encoding of DATA follows the source
8552           file encoding. [ruby-dev:33693]
8554 Mon Feb 11 06:50:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8556         * test/ruby/test_pack.rb: fix tests for 64bit CPU.
8558         * test/ruby/test_bignum.rb: ditto.
8560         * test/ruby/test_file_exhaustive.rb: ditto.
8562         * test/ruby/test_integer.rb: ditto.
8564         * test/ruby/test_time.rb: ditto.
8566         * test/ruby/test_numeric.rb: ditto.
8568         * test/ruby/test_fixnum.rb: ditto.
8570 Mon Feb 11 00:18:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8572         * lib/benchmark.rb (Job::Benchmark#item): fix typo.
8574 Sun Feb 10 21:58:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8576         * common.mk (encdb, transdb): depend on $(PREP).
8578 Sun Feb 10 16:58:20 2008  Eric Hodel  <drbrain@segment7.net>
8580         * lib/rubygems*, test/rubygems*, gem_prelude.rb: Import RubyGems
8581           r1601.  [ruby-core:15381]
8583 Sun Feb 10 15:07:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8585         * {bcc32,win32,wince}/Makefile.sub (MISSING): added cbrt.obj.
8587 Sun Feb 10 12:58:33 2008  Eric Hodel  <drbrain@segment7.net>
8589         * lib/rdoc/code_objects.rb: Make some attributes accessible for reuse.
8590         * lib/rdoc/generator/html.rb: Pull out ContextUser classes and related
8591           methods for reuse.
8592         * lib/rdoc/generator.rb: Move ContextUser classes to
8593           RDoc::Generator::Context for reuse.
8594         * lib/rdoc/rdoc.rb: Make RDoc::RDoc initialization a little easier.
8595         * lib/rdoc/options.rb: Make RDoc::Options easier to use without
8596           parsing an ARGV.
8597         * lib/rdoc/markup/to_*.rb: Subclass RDoc::Markup::Formatter.
8598         * lib/rdoc/markup/formatter.rb: Add RDoc::Markup::Formatter to make
8599           RDoc markup conversion easier.
8600         * lib/rdoc/markup/fragments.rb: Make RDoc::Markup::ListItem easier to
8601           test.
8602         * lib/rdoc/markup/to_html_hyperlink.rb: Pulled out of the HTML
8603           generator for easier reusability.
8604         * lib/rdoc/markup.rb: Fix bug with labeled lists containing bullet
8605           lists.
8606         * lib/rdoc/generators/html/html.rb: Fix Constant display.
8608 Sat Feb  9 23:44:29 2008  Tanaka Akira  <akr@fsij.org>
8610         * missing/tgamma.c (tgamma): use lgamma_r if available.
8612 Sat Feb  9 23:22:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8614         * ext/bigdecimal/extconf.rb: simplified the condition.
8616 Sat Feb  9 21:20:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8618         * test/ruby/test_math.rb: add tests for Math.gamma, Math.lgamma and
8619           Math.cbrt, and use assert_in_delta instead of assert.
8621 Sat Feb  9 18:34:45 2008  Tanaka Akira  <akr@fsij.org>
8623         * math.c (math_cbrt): new method Math.cbrt.
8625         * configure.in (cbrt): check for replacement functions.
8627         * missing/cbrt.c: new file.
8629 Sat Feb  9 17:51:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8631         * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use strtod() for more
8632           precision.  [ruby-talk:290296]
8634         * ext/bigdecimal/bigdecimal.c (BASE_FIG): made constant.
8636         * ext/bigdecimal/extconf.rb: ditto.  [ruby-dev:33658]
8638 Sat Feb  9 12:06:45 2008  Tanaka Akira  <akr@fsij.org>
8640         * missing/tgamma.c (tgamma): add error check.
8642 Sat Feb  9 11:47:03 2008  Tanaka Akira  <akr@fsij.org>
8644         * math.c (math_gamma): add error check.
8645           (math_lgamma): ditto.
8647 Sat Feb  9 11:09:26 2008  Tanaka Akira  <akr@fsij.org>
8649         * missing/lgamma_r.c (lgamma_r): return HUGE_VAL for non-positive
8650           integers.
8652 Sat Feb  9 10:03:07 2008  Tanaka Akira  <akr@fsij.org>
8654         * string.c (rb_str_new4): copy encoding from orig, instead of shared
8655           one.
8657 Sat Feb 09 01:01:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8659         * file.c (lchmod_internal): fix warning cast from pointer to integer of
8660           different size.
8662 Sat Feb  9 00:44:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8664         * lib/irb.rb (IRB::Irb::eval_input): rescues Interrupt and other than
8665           SystemExit and SignalException.  [ruby-core:15359]
8667 Fri Feb  8 23:51:36 2008  Tanaka Akira  <akr@fsij.org>
8669         * missing/lgamma_r.c (lgamma_r): use smaller argument for sin function.
8671 Fri Feb  8 22:10:36 2008  Tanaka Akira  <akr@fsij.org>
8673         * lib/open-uri.rb (OpenURI.open_http): rescue URI::InvalidURIError by
8674           URI.parse for location URI.
8676 Fri Feb  8 19:22:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8678         * ext/iconv/iconv.c (rb_str_derive): uses rb_str_subseq() for byte
8679           length.  [ruby-dev:33653]
8681         * ext/iconv/iconv.c (iconv_convert): added toidx argument to set
8682           encoding of successfully converted string.  [ruby-dev:33221]
8684 Fri Feb  8 15:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8686         * lib/mkmf.rb (xsystem): expand macros like as make.
8688 Fri Feb  8 09:27:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8690         * lib/rdoc/ri/driver.rb (read_yaml): remove SM* for compatibility.
8692 Fri Feb  8 00:07:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8694         * test/ruby/test_hash.rb: follow the change of Hash#flatten.
8696         * test/ruby/test_time.rb: add tests to achieve over 70% test coverage
8697           of time.c.
8699         * test/ruby/test_prec.rb: ditto over 90% for prec.c.
8701 Thu Feb  7 19:11:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8703         * string.c (rb_str_dup): reverted unneeded change.  [ruby-dev:33634]
8705         * string.c (rb_str_replace): makes frozen shared string before
8706           sharing.
8708 Thu Feb  7 16:33:51 2008  Tanaka Akira  <akr@fsij.org>
8710         * io.c (io_reopen): don't change access mode for stdin, stdout and
8711           stderr.  [ruby-core:15360]
8713 Thu Feb  7 16:33:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8715         * string.c (str_replace_shared): replaces string with sharing.
8717         * string.c (rb_str_new4, rb_str_associate, rb_str_associated): allows
8718           associated strings shared.
8720         * string.c (rb_str_dup, rb_str_substr, rb_str_replace): shares memory.
8721           [ruby-core:15400]
8723 Thu Feb  7 15:42:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8725         * string.c (rb_str_end_with): compares with the suffix.
8727 Thu Feb  7 15:03:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8729         * enc/trans/korean.c: add support for CP949 by Park Ji-In.
8730           [ruby-dev:33626]
8732 Thu Feb  7 11:11:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8734         * missing/lgamma_r.c (lgamma_r): some compilers don't permit dividing
8735           by literal 0.0. use const variable instead.
8737         * {bcc32,win32,wince}/Makefile.sub (MISSING): add lgamma_r.obj and
8738           tgamma.obj.
8740 Thu Feb  7 10:39:21 2008  Tanaka Akira  <akr@fsij.org>
8742         * math.c (math_gamma): new method Math.gamma.
8743           (math_lgamma): new method Math.lgamma.
8745         * include/ruby/missing.h (tgamma): declared unless HAVE_TGAMMA.
8746           (lgamma_r): declared unless HAVE_LGAMMA_R.
8748         * configure.in (tgamma): check for replacement functions.
8749           (lgamma_r): ditto.
8751         * missing/tgamma.c: new file.  based on gamma.c from
8752           "C-gengo niyoru saishin algorithm jiten" (New Algorithm handbook
8753           in C language) (Gijyutsu hyouron sha, Tokyo, 1991)
8754           by Haruhiko Okumura.
8756         * missing/lgamma_r.c: ditto.
8758         * LEGAL (missing/tgamma.c): describe as public domain.
8759           (missing/lgamma_r.c): ditto.
8761 Thu Feb  7 09:05:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8763         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_from_index): BINARY does not
8764           have in-bound encoding index.
8766 Thu Feb  7 04:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8768         * enc/trans/korean.c: add EUC-KR conversion support by Park Ji-In.
8769           [ruby-dev:33621]
8771 Wed Feb  6 01:47:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8773         * hash.c (rb_hash_flatten): do not flatten recursively by default.
8774           [ruby-dev:33603]
8776 Wed Feb  6 00:50:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8778         * insns.def (adjuststack): never use INC_SP with minus value because
8779           some compilers cannot deal it correctly. use DEC_SP instead.
8781 Wed Feb  6 00:48:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8783         * test/ruby/test_hash.rb: add tests to achieve over 90% test coverage
8784           of hash.c.
8786         * test/ruby/test_env.rb: ditto.
8788 Wed Feb  6 00:24:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8790         * hash.c (env_rassoc): remove access to free'd environment on mswin32.
8792 Tue Feb  5 21:57:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8794         * vm.c (rb_call_super): pass a passed block when super is called via
8795           rb_call_super.  [ruby-dev:33598]
8797 Tue Feb  5 11:14:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8799         * lib/mkmf.rb (INSTALL_DIRS, install_dirs): added BINDIR.
8801         * lib/mkmf.rb (install_files): rejects files matching to
8802           $NONINSTALLFILES.
8804         * lib/mkmf.rb (init_mkmf): defaults $NONINSTALLFILES to backup and
8805           temporary files.
8807 Mon Feb  4 21:52:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8809         * lib/delegate.rb (DelegateClass): use define_method instead of
8810           module_eval to improve performance.  [ruby-dev:33586]
8812 Mon Feb  4 16:44:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8814         * configure.in (darwin): NSIG is not defined if _XOPEN_SOURCE > 500L.
8815           [ruby-dev:33584]
8817 Mon Feb  4 14:51:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8819         * parse.y (rb_enc_symname2_p): support "!", "!=" and "!~".
8820           [ruby-dev:33592]
8822 Mon Feb  4 13:58:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8824         * lib/delegate.rb (Delegator.preserved, DelegateClass.methods): extend
8825           shouldn't be delegated. [ruby-dev:32987], etc.
8827 Mon Feb  4 08:59:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8829         * lib/cgi.rb (CGI::QueryExtension::[]): no more transition
8830           extend(CGI::Value).  a patch from <tommy AT tmtm.org> in
8831           [ruby-dev:33583].
8833 Sun Feb  3 21:13:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8835         * test/ruby/test_numeric.rb: forgot to add this (at r15360).
8837         * test/ruby/test_file_exhaustive.rb: add tests to achieve over 80% test
8838           coverage of file.c.
8840 Sat Feb  2 20:06:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8842         * lib/benchmark.rb (Benchmark::realtime): make Benchmark#realtime
8843           a bit faster.  a patch from Alexander Dymo <dymo AT ukrpost.ua> in
8844           [ruby-core:15337].
8846 Sat Feb  2 17:40:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8848         * time.c (time_cmp): Time.<=> no longer supports comparison with
8849           numeric. [ruby-core:15332]
8851 Sat Feb  2 09:53:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8853         * configure.in (darwin): disabled fat-binary support which confuses
8854           configure much, since ``universal'' implies hidden cross-compiling.
8855           TODO: ruby and libruby.bundle might be possible to bound with `lipo'
8856           after builds for each archs.  Anyway, config.h and rbconfig.rb must
8857           be separated definitely at least.
8859 Sat Feb  2 09:28:36 2008  Tanaka Akira  <akr@fsij.org>
8861         * random.c (limited_big_rand): fix buffer overflow when SIZEOF_BDIGITS
8862           is 2.  fixed by Kenta Murata.  [ruby-dev:33565]
8864 Fri Feb  1 21:42:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8866         * configure.in (darwin): _XOPEN_SOURCE is necessary to make ucontext_t
8867           consistent with the library implementation of MacOS X 10.5.
8868           [ruby-dev:33461]
8870         * configure.in (darwin): ucontext on PowerPC MacOS X 10.5 is broken.
8872 Fri Feb  1 11:44:22 2008  Tanaka Akira  <akr@fsij.org>
8874         * tool/compile_prelude.rb (C_ESC): use octal escape to avoid
8875           "\x09for (;;) ..." to be interpret the first character 0x9f.
8877 Thu Jan 31 23:06:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8879         * test/ruby/test_bignum.rb: suppress warnings during test.
8881         * test/ruby/test_enum.rb: ditto.
8883         * test/ruby/test_integer.rb: add tests to achieve over 90% test
8884           coverage of numeric.c.
8886         * test/ruby/test_float.rb: ditto.
8888         * test/ruby/test_fixnum.rb: ditto.
8890         * test/ruby/test_numeric.rb: ditto.
8892         * test/ruby/test_pack.rb: add tests to achieve over 90% test coverage
8893           of pack.c.
8895 Thu Jan 31 17:30:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8897         * marshal.c (r_object0): no need to call r_entry for immediate values.
8899 Thu Jan 31 15:46:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8901         * lib/rdoc/ri/formatter.rb (output): add accessor.
8903         * lib/rdoc/ri/display.rb (page): replace @formatter.output instead of
8904           $stdout.
8906 Thu Jan 31 15:06:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8908         * marshal.c (r_object0): call r_entry/r_leave to call proc when
8909           TYPE_FIXNUM, TYPE_NIL, TYPE_TRUE, TYPE_FALSE, TYPE_SYMBOL.
8911 Thu Jan 31 14:03:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8913         * lib/rdoc/ri/display.rb (display_method_list, display_class_list):
8914           use @formatter.raw_print_line instead of puts.
8916         * lib/rdoc/ri/driver.rb (select_methods): new method to collect all
8917           instance/class methods which match with passed pattern.
8919         * lib/rdoc/ri/driver.rb (run): use class_cache's result directly
8920           instead of select_classes' because it's removed now.
8922         * lib/rdoc/ri/driver.rb (run): search methods when passed name is not
8923           class name. [ruby-core:15309]
8925 Thu Jan 31 08:31:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8927         * common.mk (ext/extmk.rb, instruby.rb): inlined $(MAKE) so that can
8928           be executed even with -n.
8930 Thu Jan 31 06:24:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8932         * io.c (rb_io_close_read): replaces fptr with the tied writer if
8933           duplex.
8935         * io.c (rb_io_close_write): unties the tied IO for writing if duplex.
8936           [ruby-dev:33532]
8938 Thu Jan 31 02:22:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8940         * io.c (open_key_args): allow encoding key to take two encoding
8941           names.  a patch from <rubikitch AT ruby-lang.org>.  [ruby-dev:33540]
8943 Thu Jan 31 02:15:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8945         * parse.y (dsym): allow empty symbols.  [ruby-core:15248]
8947 Thu Jan 31 00:01:51 2008  Tanaka Akira  <akr@fsij.org>
8949         * io.c (select_internal): fix SEGV by `select [STDIN],nil,[STDIN]'.
8950           fixed by Petr Chromec.
8951           http://rubyforge.org/tracker/index.php?func=detail&aid=17275&group_id=426&atid=1698
8953 Wed Jan 30 17:32:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8955         * enc/*.c: add GB12345, UCS-{2,4}{BE,LE}.
8957 Wed Jan 30 14:32:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8959         * lib/rdoc/ri/driver.rb (cache_file_for): shouldn't use `:' in filename.
8961 Wed Jan 30 14:27:19 2008  Tanaka Akira  <akr@fsij.org>
8963         * string.c (rb_str_succ): use wrapped character as a carry for
8964           ASCII incompatible encoding.
8966 Wed Jan 30 12:26:59 2008  Tanaka Akira  <akr@fsij.org>
8968         * enc/utf_16be.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
8969           (UTF16_IS_SURROGATE_SECOND): ditto.
8970           (UTF16_IS_SURROGATE): defined.
8971           (utf16be_mbc_enc_len): validation implemented.
8973         * enc/utf_16le.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
8974           (UTF16_IS_SURROGATE_SECOND): ditto.
8975           (UTF16_IS_SURROGATE): defined.
8976           (utf16le_mbc_enc_len): validation implemented.
8978 Wed Jan 30 12:06:43 2008  Tadayoshi Funaba  <tadf@dotrb.org>
8980         * bignum.c (rb_cstr_to_inum): '0_2' is a valid representation.
8982 Wed Jan 30 11:57:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8984         * bootstraptest/runner.rb: fix -I../../hoge case.
8986 Wed Jan 30 01:25:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8988         * test/ruby/test_range.rb: add tests to achieve over 90% test coverage
8989           of range.c.
8991 Wed Jan 30 00:09:37 2008  Tanaka Akira  <akr@fsij.org>
8993         * enc/euc_tw.c (euctw_mbc_enc_len): validation implemented.
8995 Tue Jan 29 22:58:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8997         * test/ruby/test_enumerator.rb: add tests to achieve over 90% test
8998           coverage of enumerator.c.
9000         * test/ruby/test_enum.rb: add for enum.c.
9002 Tue Jan 29 22:29:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9004         * enumerator.c: fix documents.
9006 Tue Jan 29 22:27:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9008         * range.c: fix SEGV by ("a" .. "z").step(2 ** 30) { }.
9010 Tue Jan 29 21:59:16 2008  Tanaka Akira  <akr@fsij.org>
9012         * enc/euc_tw.c (euctw_islead): 0x8e is a leading byte.
9014 Tue Jan 29 21:55:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9016         * bignum.c: move object allocation out of blocking_region.
9017           [ruby-dev:33139]
9019 Tue Jan 29 20:37:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9021         * enc/trans/make_transdb.rb: add for make transdb.h.
9023         * dmytranscode.c: add for miniruby.
9025         * enc/gbk.c (gbk_left_adjust_char_head, gbk_is_allowed_reverse_match):
9026           fix odd regexp match. [ruby-dev:33502]
9028 Tue Jan 29 20:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9030         * {bcc32,win32}/Makefile.sub (MINIOBJS): add dmytranscode.$(OBJEXT).
9032 Tue Jan 29 19:39:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9034         * configure.in, common.mk: fix rule for dmytranscode.o.
9036 Tue Jan 29 19:03:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9038         * enc/trans/japanese.c (rb_to_Windows_31J): to 'Windows-31J'.
9040         * common.mk: add rules for transdb.h.
9042         * transcode.c (init_transcoder_table): use transdb.h.
9044 Tue Jan 29 18:05:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9046         * encoding.c (encdb_{replicate,alias,dummy,declare}): define only if
9047           NO_ENCDB_H is not defined.
9049 Tue Jan 29 17:54:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9051         * enc/gbk.c (EncLen_gbk): too short. [ruby-dev:33497]
9053 Tue Jan 29 17:25:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9055         * dmyencoding.c, encoding.c (enc_init_db, NO_ENCDB_H):
9056           miniruby doesn't use encdb.
9058         * common.mk: encdb.h use miniruby.
9060 Tue Jan 29 17:37:36 2008  Tanaka Akira  <akr@fsij.org>
9062         * enc/gb18030.c (gb18030_mbc_enc_len): validation implemented.
9064 Tue Jan 29 17:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9066         * tool/ifchange: remove $temp when unchanged.
9068 Tue Jan 29 16:59:01 2008  Tanaka Akira  <akr@fsij.org>
9070         * insns.def (toregexp): generate a regexp from strings instead of one
9071           string.
9073         * re.c (rb_reg_new_ary): defined for toregexp.  it concatenates
9074           strings after each string is preprocessed.
9076         * compile.c (compile_dstr_fragments): split from compile_dstr.
9077           (compile_dstr): call compile_dstr_fragments.
9078           (compile_dregx): defined for dynamic regexp.
9079           (iseq_compile_each): use compile_dregx for dynamic regexp.
9081           [ruby-dev:33400]
9083 Tue Jan 29 16:25:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9085         * common.mk, ext/extmk.rb: always make encdb.h.
9087 Tue Jan 29 12:53:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9089         * enc/gbk.c: add GBK, CP936 and CP949.
9091         * enc/euc_kr.c: remove CP949.
9093         * enc/euc_cn.c: remove CP936 and rename to gb2312.c
9095         * enc/gb2312.c: GB2312 is preferred MIME name.
9097 Tue Jan 29 03:01:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9099         * parse.y (reg_fragment_setenc_gen): US-ASCII script special code.
9101         * parse.y (reg_fragment_check_len, reg_compile_gen): no need such
9102           trick.
9103           [ruby-dev:33399]
9105         * test/ruby/test_m17n.rb (test_regexp_usacii_literal): add tests.
9107 Tue Jan 29 01:38:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9109         * common.mk ($(srcdir)/revision.h): no need to show ifchange execution
9110           because ifchange echos updated or unchanged.
9112 Tue Jan 29 01:26:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9114         * common.mk (up): use last changed revision.
9116         * common.mk (up): force to update revision.h.
9118 Tue Jan 29 00:12:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9120         * bignum.c (rb_big2str0): should be US-ASCII.
9122 Tue Jan 29 00:10:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9124         * misc/ruby-mode.el (ruby-mode-set-encoding): updates magic comment.
9126 Mon Jan 28 23:47:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9128         * parse.y (rb_id2str, ripper_initialize, Init_ripper):
9129           use rb_usascii_str_new2. [ruby-dev:33449]
9131 Mon Jan 28 19:37:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9133         * ext/win32ole/win32ole.c (ole_cp2encoding): new function.
9135         * ext/win32ole/win32ole.c (ole_wc2vstr, ole_variant2val, fole_missing):
9136           set encoding to result.
9138         * ext/win32ole/win32ole.c (fole_s_set_code_page, Init_win32ole): set
9139           default encoding.
9140           [ruby-dev:33433]
9142 Mon Jan 28 11:17:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9144         * string.c, parse.y, re.c: use rb_ascii8bit_encoding.
9146 Mon Jan 28 17:54:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9148         * enc/utf_7.h: add dummy encoding UTF-7 and its alias CP65000.
9150 Mon Jan 28 17:41:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9152         * enc/utf_8.c: add alias CP65001.
9154 Mon Jan 28 15:33:23 2008  Tanaka Akira  <akr@fsij.org>
9156         * enc/big5.c (big5_mbc_enc_len): validation implemented.
9158 Mon Jan 28 13:02:02 2008  Tanaka Akira  <akr@fsij.org>
9160         * enc/euc_kr.c (euckr_mbc_enc_len): validation implemented.
9162 Mon Jan 28 11:24:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9164         * parse.y (parser_str_new): encoding of UTF-8 literal string in
9165           US-ASCII script is UTF-8. [ruby-dev:33406]
9167 Mon Jan 28 10:25:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9169         * test/ruby/test_m17n.rb (test_magic_comment): add test.
9171 Mon Jan 28 09:34:54 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9173         * common.mk (help): use double quotes for nmake.
9175 Mon Jan 28 00:39:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9177         * parse.y (parser_set_encode): check if encoding is ASCII compatible.
9179 Mon Jan 28 01:21:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9181         * io.c (rb_open_file): should check NUL in path.
9182           <http://www.rubyist.net/~matz/20080125.html#c01>.
9184         * io.c (rb_io_s_popen): ditto.
9186         * io.c (rb_io_reopen): ditto.
9188         * io.c (next_argv): ditto.
9190 Sun Jan 27 23:33:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9192         * sprintf.c (rb_str_format): fix for left justify flag.
9194         * sprintf.c (rb_str_format): zero-precision zero bug revised.
9195           [ruby-dev:33419]
9197 Sun Jan 27 23:20:54 2008  Tanaka Akira  <akr@fsij.org>
9199         * include/ruby/oniguruma.h: precise mbclen API redesigned to avoid
9200           inline functions.
9201           (onigenc_mbclen_charfound): removed.
9202           (onigenc_mbclen_needmore): removed.
9203           (onigenc_mbclen_recover): removed.
9204           (ONIGENC_MBCLEN_CHARFOUND): removed.
9205           (ONIGENC_MBCLEN_CHARFOUND_P): defined.
9206           (ONIGENC_MBCLEN_CHARFOUND_LEN): defined.
9207           (ONIGENC_MBCLEN_INVALID): removed.
9208           (ONIGENC_MBCLEN_INVALID_P): defined.
9209           (ONIGENC_MBCLEN_NEEDMORE): removed.
9210           (ONIGENC_MBCLEN_NEEDMORE_P): defined.
9211           (ONIGENC_MBCLEN_NEEDMORE_LEN): defined.
9212           (ONIGENC_MBC_ENC_LEN): use onigenc_mbclen_approximate.
9214         * regenc.c (onigenc_mbclen_approximate): defined.
9216         * include/ruby/encoding.h (MBCLEN_CHARFOUND): removed.
9217           (MBCLEN_INVALID): removed.
9218           (MBCLEN_NEEDMORE): removed.
9219           (MBCLEN_CHARFOUND_P): defined.
9220           (MBCLEN_INVALID_P): defined.
9221           (MBCLEN_NEEDMORE_P): defined.
9222           (MBCLEN_CHARFOUND_LEN): defined.
9223           (MBCLEN_NEEDMORE_LEN): defined.
9225         * encoding.c: use new API.
9227         * re.c: ditto.
9229         * string.c: ditto.
9231         * parse.y: ditto.
9233 Sun Jan 27 22:55:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9235         * parse.y (value_expr_gen): reverted r12880.  [ruby-dev:33388]
9237 Sun Jan 27 22:33:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9239         * sprintf.c (rb_str_format): fix for octal with precision.
9240           [ruby-dev:33411]
9242 Sun Jan 27 22:31:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9244         * misc/ruby-mode.el (ruby-mode-set-encoding): automatically insert
9245           encoding magic comment.
9247         * misc/ruby-mode.el (ruby-mode): set ruby-mode-set-encoding to buffer
9248           local before-save-hook.
9250 Sun Jan 27 19:51:15 2008  Tanaka Akira  <akr@fsij.org>
9252         * string.c (rb_str_inspect): avoid exception by
9253           "\#\xa1".force_encoding("euc-jp").inspect.
9255 Sun Jan 27 19:07:33 2008  Tanaka Akira  <akr@fsij.org>
9257         * string.c (rb_str_succ): warning suppressed.
9259 Sun Jan 27 18:18:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9261         * common.mk (help): show major targets.
9263 Sun Jan 27 17:54:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9265         * ext/nkf/nkf.c: raise error when no output encoding is given.
9267 Sun Jan 27 17:20:10 2008  Tanaka Akira  <akr@fsij.org>
9269         * string.c (rb_str_succ): don't increment/decrement codepoint.
9271 Sun Jan 27 16:03:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9273         * lib/irb/ruby-lex.rb (RubyLex#buf_input): use chars.to_a.
9275 Sun Jan 27 16:27:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9277         * ext/nkf/nkf-utf8: update nkf.
9279 Sun Jan 27 16:25:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9281         * re.c (rb_reg_source): set encoding as regexp encoding.
9283 Sun Jan 27 05:56:39 2008  Tanaka Akira  <akr@fsij.org>
9285         * re.c (rb_reg_preprocess): force fixed encoding when ASCII
9286           incompatible source string.
9288 Sat Jan 26 23:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9290         * sprintf.c (rb_str_format): zero-precision zero should be empty.
9291           [ruby-dev:33363]
9293         * sprintf.c (rb_str_format): not prepend octal prefix to negative or
9294           zero value.  [ruby-dev:33363], [ruby-dev:33367]
9296 Sat Jan 26 23:42:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9298         * parse.y (assignable_gen, keyword_to_name): __ENCODING__ was missing.
9300 Sat Jan 26 19:08:45 2008  Tanaka Akira  <akr@fsij.org>
9302         * marshal.c (w_object): dump string encoding in USERDEF.
9303           [ruby-dev:33401]
9305 Sat Jan 26 17:42:23 2008  Koichi Sasada  <ko1@atdot.net>
9307         * compile.c (iseq_compile_each): validate argument expr of "next"
9308           statement.
9310         * bootstraptest/test_syntax.rb: add a test.
9312 Sat Jan 26 17:22:46 2008  Koichi Sasada  <ko1@atdot.net>
9314         * compile.c, compile.h: fix to calculate correct stack depth
9315            at each instruction.
9317 Sat Jan 26 09:41:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9319         * lib/rexml/doctype.rb, test/rss/test_maker_itunes.rb: replace
9320           multi-byte string.
9322         * test/json/{test_json.rb, test_json_unicode.rb}:
9323           add magic comment.
9325 Sat Jan 26 09:30:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9327         * include/ruby/encoding.h (rb_usascii_encindex): added prototype.
9329         * include/ruby/intern.h (rb_usascii_str_new, rb_usascii_str_new2):
9330           ditto.
9332 Sat Jan 26 09:17:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9334         * string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
9335           empty string (len == 0).
9337 Sat Jan 26 03:41:53 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9339         * parse.y (parser_initialize): set default script encoding as US-ASCII.
9341         * ruby.c (load_file): ditto.
9343         * ruby.c (process_options): set script encoding of -e from locale
9344           except when -K is specified.
9346         * ruby.c (load_file): set script encoding of stdin from locale except
9347           when -K is specified. [ruby-dev:33375]
9349 Sat Jan 26 02:51:06 2008  Koichi Sasada  <ko1@atdot.net>
9351         * compile.c, compile.h: fix stack pointer issues.
9352           calculate correct stack depth at compile time.
9354         * insns.def (emptstack): remove it and add a new insn "adjuststack".
9356         * bootstraptest/test_knownbug.rb: move/remove fixed test.
9358         * bootstraptest/test_syntax.rb: ditto.
9360 Sat Jan 26 00:17:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9362         * string.c (rb_str_usascii_new{,2}: defined.
9363           (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when empty
9364           string.
9366         * encoding.c (rb_usascii_encoding, rb_usascii_encindex): defined.
9367           (rb_enc_inspect, enc_name, rb_locale_charmap, rb_enc_name_list_i):
9368           use rb_str_ascii_new.
9370         * array.c (recursive_join, inspect_ary): ditto.
9372         * object.c (nil_to_s, nil_inspect, true_to_s, false_to_s,
9373           rb_mod_to_s): ditto.
9375         * hash.c (inspect_hash, rb_hash_inspect, rb_f_getenv, env_fetch,
9376           env_clear, env_to_s, env_inspect): ditto.
9378         * numeric.c (flo_to_s, int_chr, rb_fix2str): ditto.
9380         * bignum.c (rb_big2str): ditto.
9382         * file.c (rb_file_ftype, rb_file_s_dirname, rb_file_s_extname,
9383           file_inspect_join, Init_file): ditto.
9385         * test/ruby/test_ruby_m17n.rb: add checks for encoding of string.
9387 Sat Jan 26 01:35:46 2008  Tanaka Akira  <akr@fsij.org>
9389         * marshal.c (r_byte): use getbyte instead of getc.
9390           (marshal_load): ditto.
9391           [ruby-dev:33264]
9393 Sat Jan 26 00:43:40 2008  Tanaka Akira  <akr@fsij.org>
9395         * io.c (rb_io_getline_fast): don't care ASCII incompatible encoding.
9396           (prepare_getline_args): generate a newline according to IO encoding
9397           when necessary.
9398           (rb_io_getline_1): call rb_io_getline_fast only for ASCII
9399           compatible encoding.
9401 Fri Jan 25 21:49:36 2008  Tanaka Akira  <akr@fsij.org>
9403         * string.c (rb_str_buf_cat_ascii): use rb_enc_cr_str_buf_cat.
9405 Fri Jan 25 19:38:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9407         * common.mk (version.$(OBJEXT)): depends on $(srcdir)/revision.h.
9409         * common.mk (revision.h): extracts revision number with ``svn info''.
9411         * common.mk (up): target to update from the repository.
9413         * Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
9414           file if changed.
9416         * tool/ifchange: for unixen.
9418         * win32/ifchange.bat: some fix
9420 Fri Jan 25 17:12:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9422         * ruby.c (load_file): set default to ASCII-8BIT explicitly if -K
9423           option is not given.
9425 Fri Jan 25 16:31:47 2008  Tanaka Akira  <akr@fsij.org>
9427         * include/ruby/intern.h (rb_str_buf_cat_ascii): declared.
9429         * string.c (rb_str_buf_cat_ascii): defined.
9431         * re.c (rb_reg_s_union): use rb_str_buf_cat_ascii to support ASCII
9432           incompatible encoding.
9434 Fri Jan 25 16:11:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9436         * ruby.c (process_options, load_file, rb_load_file): propagates script
9437           encoding by -K to libraries.  [ruby-dev:33156]
9439 Fri Jan 25 15:56:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9441         * ruby.c (cmdline_arguments): split argc and argv from cmdline_options.
9443         * ruby.c (process_options): not set encoding of -e option from -E
9444           option if they are not compatible.
9446 Fri Jan 25 13:15:23 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9448         * ruby.c (proc_options, process_options, load_file): shouldn't effect
9449           --encoding to script encoding. [ruby-dev:33169]
9451 Fri Jan 25 10:31:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9453         * */*.bat: set svn:mime-type to text/batch.
9455 Thu Jan 24 23:23:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9457         * enum.c (enum_one, enum_take_while, enum_drop_while): fix documents.
9459 Thu Jan 24 21:46:24 2008  Tanaka Akira  <akr@fsij.org>
9461         * parse.y (reg_fragment_setenc_gen): associate ASCII-8BIT only if
9462           str has only ASCII characters.
9464 Thu Jan 24 20:46:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9466         * test/ruby/test_m17n.rb: follow to the following changes.
9468 Thu Jan 24 20:21:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9470         * parser.y (parser_str_new): automatically update string literal's
9471           encoding from US-ASCII to ASCII-8BIT when script encoding is US-ASCII
9472           and the string includes non-ascii bytes. [ruby-dev:33348]
9474         * parser.y (reg_fragment_check_gen, reg_compile_gen): automatically
9475           update regexp literal's encoding from US-ASCII to ASCII-8BIT when
9476           script encoding is US-ASCII, the regexp has no kcode option and the
9477           regexp includes non-ascii bytes. [ruby-dev:33353]
9479 Thu Jan 24 19:36:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9481         * lib/uri/generic.rb (URI::Generic::inspect): use Kernel#to_s instead
9482           object_id with printf.  [ruby-dev:33347]
9484 Thu Jan 24 19:29:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9486         * sprintf.c (remove_sign_bits): returns pointer to the first char to
9487           be used, instead of copying.
9489         * sprintf.c (rb_str_format): negative indicator dots should come
9490           before sign digits always.  [ruby-dev:33224]
9492 Thu Jan 24 18:19:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9494         * include/ruby/encoding.h (rb_enc_is_newline): parenthesized arguments.
9496 Thu Jan 24 18:14:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9498         * re.c (rb_reg_fixed_encoding_p): no need to treat ASCII-8BIT specially.
9500 Thu Jan 24 16:53:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9502         * re.c (rb_reg_initialize): 7bit clean regexp should be US-ASCII.
9503           [ruby-dev:33346]
9505 Thu Jan 24 16:31:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9507         * io.c (rb_io_getline_fast): the end point of left_char_head()
9508           must be the last character.  [ruby-cvs:22445]
9510 Thu Jan 24 16:24:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9512         * parse.y (reg_fragment_setenc_gen): recognize regexp with option n as
9513           as ASCII-8BIT instead of US-ASCII. [ruby-dev:33339]
9515 Thu Jan 24 15:44:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9517         * array.c (collect_bang_i): use rb_ary_store() to avoid potential
9518           memory corruption.  a patch from Yusuke Endoh <mame@tsg.ne.jp>
9519           in [ruby-dev:33328].
9521         * array.c (ITERATE): remove unnecessary macro.
9523         * array.c (sort_1): remove ary_sort_check().  in-place sort keep
9524           original elements even when it's modified.
9526         * array.c (sort_2): ditto.
9528 Thu Jan 24 15:09:40 2008  Tanaka Akira  <akr@fsij.org>
9530         * time.c (make_time_t): revert round trip test.  [ruby-dev:33058]
9532 Thu Jan 24 11:14:56 2008  Tanaka Akira  <akr@fsij.org>
9534         * string.c (rb_enc_cr_str_buf_cat): ASCII incompatible encoding is
9535           not compatible with any other encoding.
9537 Thu Jan 24 07:34:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9539         * parse.y (STR_NEW0): set encoding as US-ASCII.
9541 Thu Jan 24 03:47:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9543         * lib/rexml/text.rb, lib/rubygems/open-uri.rb, lib/open-uri.rb,
9544           test/logger/test_logger.rb, test/ruby/test_regexp.rb:
9545           fix tests. [ruby-dev:33336]
9547 Thu Jan 24 03:23:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9549         * string.c (rb_str_each_line): use memchr(3) for faster newline
9550           search.
9552         * io.c (appendline): remove unused arguments
9554         * io.c (rb_io_getline_fast): make much simpler (and faster).
9556 Thu Jan 24 02:13:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9558         * insns.def (expandarray): fix stack inc.  [ruby-dev:32892]
9560         * bootstraptest/test_knownbug.rb, test_massign.rb: move a fixed test.
9562 Thu Jan 24 01:00:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9564         * encoding.{c, h} (rb_usascii_encoding): added.
9566         * parse.y (parser_str_new, rb_intern3): ascii only string literal is
9567           US-ASCII.
9569         * ruby.c (proc_optionc): -Kn means ASCII-8BIT.
9571 Wed Jan 23 23:54:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9573         * sprintf.c: fix comment.  [ruby-dev:33275]
9575         * math.c: fix comment.  [ruby-dev:33276]
9577 Wed Jan 23 22:47:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9579         * test/ruby/test_struct.rb: add tests to achieve over 90% test
9580           coverage of struct.c.
9582         * test/ruby/test_sprintf.rb: ditto for sprintf.c.
9584         * test/ruby/test_math.rb: ditto for math.c.
9586 Wed Jan 23 22:14:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9588         * enc/trans/japanese.c (rb_from_Windows_31J, rb_to_Windows_31J):
9589           provisional workaround for Windows-31J.  [ruby-dev:33320]
9591 Wed Jan 23 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9593         * time.c (time_strftime): copy encoding from format.  [ruby-dev:33303]
9595 Wed Jan 23 15:04:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9597         * string.c (str_make_independent): should set length.
9599         * string.c (rb_str_associate): hide associated array from ObjectSpace.
9601         * string.c (rb_str_associated): return associated array with freezing
9602           instead of false.  [ruby-dev:33282]
9604         * string.c (rb_str_freeze): freeze associated array together.
9606 Wed Jan 23 13:39:48 2008  Tanaka Akira  <akr@fsij.org>
9608         * re.c (rb_reg_prepare_re): fix SEGV by
9609           /a/ =~ "aa".force_encoding("utf-16be").
9611 Wed Jan 23 11:53:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9613         * string.c (str_mod_check, str_nth, str_offset): constified.
9615         * string.c (rb_str_dump): dump in ASCII-8BIT always.
9617 Wed Jan 23 10:18:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9619         * eval_method.c (rb_export_method): set ruby_vm_redefined_flag for
9620           visibility change as well.  reported by K.Kosako in
9621           http://d.hatena.ne.jp/kkos/20080122#1201012720.
9623 Tue Jan 22 22:26:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9625         * test/ruby/test_bignum.rb: change some tests because rational
9626           redefines Bignum#quo and Bignum#**.
9628 Tue Jan 22 20:58:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9630         * lib/mkmf.rb (create_makefile): need to output sodir rule.
9632 Tue Jan 22 19:37:16 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9634         * lib/mkmf.rb (create_makefile): lib files shouldn't depend on install
9635           dir because if the dir is newer than lib files, lib files will be
9636           always copied.
9638 Tue Jan 22 17:52:52 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
9640         * enc/trans/utf_16_32.c: Streamline parentheses, add more
9641           'static' qualifiers.
9643 Tue Jan 22 12:57:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9645         * configure.in (MINIRUBY): remove -I$(EXTOUT)/$(arch) from
9646           MINIRUBY since miniruby might not be able to load DLL.
9648         * test/ruby/test_m17n.rb: move tests from bootstrap test.
9650         * encoding.c (enc_find): should check name if ASCII compatible.
9652         * string.c (rb_str_end_with): should check character boundary.
9654         * encoding.c (rb_enc_compatible): encoding must be ASCII
9655           compatible before checking ENC_CODERANGE_7BIT.
9657         * encoding.c (rb_enc_compatible): wrong compatibility condition.
9658           [ruby-dev:33273]
9660 Tue Jan 22 09:26:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9662         * string.c (rb_str_each_char): iterates over a shadow.
9663           [ruby-dev:33243]
9665 Tue Jan 22 08:59:52 2008  Eric Hodel  <drbrain@segment7.net>
9667         * lib/rdoc/ri/formatter.rb:  Indent labeled lists like note lists.
9669         * test/rdoc/test_rdoc_ri_overstrike_formatter.rb:  Added.
9671         * test/rdoc/test_rdoc_ri_formatter.rb:  Added tests.
9673 Tue Jan 22 04:40:28 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9675         * parse.y (rb_intern3): do not call rb_enc_mbclen() if *m is
9676           ASCII.  [ruby-talk:287225]
9678         * string.c (rb_str_each_line): use rb_enc_is_newline() to gain
9679           performance if the record separator ($/) is not modified.
9681 Tue Jan 22 01:15:51 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
9683         * ChangeLog: format-time-string under C locale. [ruby-dev:33261]
9685 Tue Jan 22 00:45:12 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9687         * test/ruby/test_bignum.rb: add tests for bignum.c.
9689 Tue Jan 22 00:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9691         * bignum.c (big_shift): fix a bug that caused infinite loop when
9692           left shifting.
9694 Mon Jan 21 20:09:38 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9696         * lib/date.rb (marshal_load): initialize the cache.
9698 Mon Jan 21 19:42:42 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
9700         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
9701           added UTF-32BE and UTF-32LE conversions.
9703 Mon Jan 21 14:36:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9705         * transcode.c (str_transcode): initialize transcoder in
9706           rb_transcoding.  [ruby-dev:33234]
9708         * transcode_data.h (rb_transcoding): transcoder constified.
9710 Mon Jan 21 12:50:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9712         * eval.c, gc.c (setjmp): sigsetjmp is a macro on cygwin.
9714 Mon Jan 21 12:35:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9716         * transcode.c (transcode_loop, str_transcoding_resize): use unsigned
9717           char.  [ruby-dev:33232]
9719         * transcode_data.h (rb_transcoding, rb_transcoder): removed callback
9720           parameters.
9722         * enc/trans/japanese.c: ditto.
9724         * enc/trans/utf_16_32.c: parenthesized bit-or operands.
9726 Mon Jan 21 11:59:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9728         * string.c (rb_str_each_char): move forward.  [ruby-dev:33231]
9730 Mon Jan 21 06:40:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9732         * transcode.c (transcode_dispatch): constified return value.
9734         * transcode_data.h (rb_transcoding): include pointer to rb_transcoder
9735           and auxiliary data.
9737         * transcode_data.h (rb_transcoder): all callback functions should have
9738           their own parameters.
9740         * enc/trans/{japanese,single_byte}.c: constified.
9742 Mon Jan 21 03:45:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9744         * string.c (rb_str_each_char): advance offset before get next char
9745           length.  [ruby-dev:33211]
9747 Sun Jan 20 20:00:20 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
9749         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
9750           added UTF-16LE conversions.
9752         * fixed changelog for last commit
9754 Sun Jan 20 17:54:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
9756         * added changelog for last commit
9758 Sun Jan 20 15:08:08 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
9760         * enc/trans/utf_16_32.c: new file, currently implementing
9761           UTF-16BE conversions only.
9763         * test/ruby/test_transcode.rb: Added tests for UTF-16BE;
9764           made check_both_ways() use force_encoding differently.
9766         * transcode_data.h, transcode.c: Support for more conversion
9767           functions.
9769 Sun Jan 20 13:06:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9771         * string.c (rb_str_each_char): performance improvement, and stop if
9772           shortened in the block.  [ruby-dev:33189]
9774 Sun Jan 20 09:12:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9776         * common.mk: use -Ks when read insns.def. [ruby-dev#33185]
9778         * parse.y: fix -e and stdin strings aren't set encoding.
9780 Sun Jan 20 05:12:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9782         * enc/make_encdb.rb: fix duplication check.
9784 Sun Jan 20 05:03:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9786         * ascii.c: remove definition of replica KOI8-U.
9788 Sun Jan 20 00:33:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9790         * enc/koi8_u.c: added.
9792         * regenc.c, enc/utf_8.c, enc/unicode.c, enc/gb18030.c: add ARG_UNUSED.
9794 Sat Jan 19 22:41:39 2008  Tanaka Akira  <akr@fsij.org>
9796         * string.c (coderange_scan): don't call mbclen functions for ASCII
9797           characters with ASCII compatible encoding.
9799 Sat Jan 19 21:00:34 2008  Tanaka Akira  <akr@fsij.org>
9801         * lib/rdoc/template.rb (RDoc): defined to avoid uninitialized constant
9802           error by `./ruby test/rubygems/test_gem_server.rb'.
9804 Sat Jan 19 20:41:29 2008  Tanaka Akira  <akr@fsij.org>
9806         * encoding.c (enc_new): don't free rb_encoding to avoid SEGV by
9807           `miniruby -e exit' on x86_64 GNU/Linux.
9809 Sat Jan 19 18:40:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9811         * lib/date.rb (once): use an instance variable which points a hash
9812           as cache. [experimental]
9814 Sat Jan 19 17:21:29 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9816         * lib/date.rb, lib/date/format.rb: parse's hints as an
9817           experimental function has been removed.
9819 Sat Jan 19 11:21:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9821         * configure.in (sigsetjmp): check if available.
9823         * eval.c, gc.c (setjmp): do not use _setjmp if sigsetjmp is available.
9825 Sat Jan 19 11:10:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9827         * configure.in: Remove wrong assumptions about Cygwin.  a patch from
9828           Corinna Vinschen in [ruby-Bugs-17018].
9830 Sat Jan 19 09:23:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
9832         * ext/win32ole/win32ole.c (ole_set_safe_array): should not use
9833           recursive calling.
9835         * test/win32ole/test_win32ole_variant.rb: ditto.
9837 Sat Jan 19 08:58:47 2008  Eric Hodel  <drbrain@segment7.net>
9839         * lib/rdoc/markup: Remove ListBase and Line constants.
9841         * lib/rdoc/ri: Allow output IO to be specified.
9843         * test/rdoc/parser/test_parse_c.rb: Move up one level, fixed.
9845         * test/rdoc/parser/test_rdoc_markup_attribute_manager.rb: Renamed to
9846           match new class name, updated to match new classes.
9848         * test/rdoc/test_rdoc_ri_formatter.rb: Start of RI formatting tests.
9850         * test/rdoc/test_rdoc_ri_attribute_manager.rb: Start of
9851           RDoc::RI::AttributeManager tests.
9853         * test/rdoc/test_simple_markup.rb: Moved to match new class name.
9855 Sat Jan 19 08:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9857         * parse.y (parser_prepare): get encoding from the first line.
9858           [ruby-dev:33168]
9860         * ruby.c (load_file): set encoding to input with set_encoding.
9862 Sat Jan 19 03:46:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9864         * thread.c (thread_create_core): prohibit thread creation in the
9865           frozen thread group.  a patch in [ruby-dev:33176] from sheepman
9866           <sheepman AT sheepman.sakura.ne.jp>.
9868         * thread.c (thread_create_core): should inherit ThreadGroup from
9869           the current thread.
9871 Sat Jan 19 00:37:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9873         * sprintf.c (rb_str_format): set result encoding for wider width.
9875 Sat Jan 19 00:13:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9877         * thread_win32.c (w32_wait_events): shouldn't invoke interrupt handle
9878           by timer_thread.
9880 Fri Jan 18 23:49:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9882         * thread.c (thread_create_core): set thread group before creating
9883           thread.
9885 Fri Jan 18 20:19:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9887         * parse.y (ripper_initialize): too early to set parser->enc.
9889 Fri Jan 18 20:03:05 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9891         * win32/setup.mak (BASERUBY): nmake cannot execute ruby correctly
9892           if the path of ruby.exe is quoted.
9894         * win32/setup.mak ($(ARCH)): if a macro is appended by $(APPEND),
9895           a space will be inserted on the top of the line.
9897 Fri Jan 18 17:56:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9899         * eval_intern.h, insnhelper.h, thread_pthread.h, vm_core.h, vm_opts.h:
9900           prefixed include guards with RUBY.
9902         * id.h: added include guard.
9904         * regenc.h, regint.h, regparse.h: prefixed include guards with
9905           ONIGURUMA.
9907 Fri Jan 18 15:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9909         * thread.c (thread_cleanup_func): ignore errors from destroying mutex
9910           of dead thread.  [ruby-core:15069]
9912         * thread_pthread.c, thread_win32.c (native_thread_destroy): ditto.
9914 Fri Jan 18 15:56:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9916         * encoding.c (rb_enc_name_list_i, rb_enc_aliases_enc_i): freeze
9917           element strings to be returned.
9919 Fri Jan 18 14:36:34 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
9921         * test/ruby/test_m17n.rb (test_str_dump): added test for
9922           String#dump. [ruby-dev:33142]
9924 Fri Jan 18 12:25:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9926         * encoding.c (load_encoding): check if successfully loaded.
9928         * encoding.c (rb_enc_find_index): use original encoding name to
9929           replicate loaded encoding instead alias.
9931 Fri Jan 18 09:43:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9933         * re.c (rb_char_to_option_kcode): Regexp switch `s' should mean
9934           Windows-31J, as wells as `-Ks'.
9936 Fri Jan 18 09:22:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9938         * parse.y (parser_initialize): explicitly call rb_ascii8bit_encoding().
9940         * parse.y (parser_prepare): lex_input may not be have encoding (e.g. IO).
9942         * parse.y (rb_parser_compile_string): set encoding from input string.
9944         * encoding.c (rb_enc_find_index): use ASCII-8BIT if loading known
9945           encoding failed.
9947         * parse.y (ripper_initialize): move parser->enc initialization.
9949         * encoding.c (rb_enc_aliases_enc_i): exclude non alias names from
9950           Encoding.aliases.
9952         * encoding.c (rb_enc_find_index): use original encoding name to
9953           load DLL.
9955 Fri Jan 18 07:06:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9957         * io.c (Init_IO): stdin/stdout may not be duplex.
9959 Fri Jan 18 04:27:57 2008  Eric Hodel  <drbrain@segment7.net>
9961         * sample/rdoc/markup/rdoc2latex.rb:  Fix for new namespacing.
9963         * lib/rdoc/markup/to_latex.rb:  Fix namespacing.
9965 Fri Jan 18 02:02:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9967         * bootstraptest/runner.rb (assert_valid_syntax): added.
9969         * bootstraptest/test_knownbug.rb: added test for [ruby-list:44479]
9971 Fri Jan 18 01:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9973         * vm_insnhelper.c (vm_call_method): check argument number to
9974           attr_reader.  [ruby-core:15120]
9976 Fri Jan 18 00:49:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9978         * io.c (rb_io_check_readable): flush tied write IO too.
9980         * io.c (Init_IO): tie stdin with stdout.  [ruby-core:15107]
9982 Fri Jan 18 00:23:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9984         * encoding.c (enc_free): removed since rb_encoding may be used while
9985           cleanup.
9987 Fri Jan 18 00:17:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9989         * enc/euc_cn.c: split from enc/euc_kr.c.
9991 Fri Jan 18 00:03:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9993         * ext/stringio/stringio.c (strio_init): use default external encoding
9994           if nothing is given.  a patch from sheepman <sheepman AT
9995           sheepman.sakura.ne.jp> in [ruby-dev:33159].
9997 Thu Jan 17 23:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9999         * common.mk (encdb.h): give output file name to make_encdb.rb.
10001         * encoding.c (enc_table): simplified.
10003         * encoding.c (enc_register_at): lazy loading.  [ruby-dev:33013]
10005         * regenc.h (ENC_DUMMY): added.
10007         * enc/make_encdb.rb: now emits macros only.
10009         * enc/iso_2022_jp.h: split from encoding.c.
10011 Thu Jan 17 21:48:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10013         * re.c (rb_char_to_option_kcode): fixed typo.
10015 Thu Jan 17 21:01:25 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10017         * lib/date.rb (Date::Infinity#<=>): didn't work.  A patch from
10018           Dirkjan Bussink <d.bussink AT gmail.com> [ruby-core:15098].
10019           This is a bug obviously.  However it didn't affect the library's
10020           functions.
10022         * lib/date.rb, lib/date/format.rb: some trivial changes.
10024 Thu Jan 17 13:07:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10026         * string.c (rb_str_dump): preserve the encoding of source string
10027           if it is ASCII compatible.  otherwise, add '.force_encoding()'
10028           for ugly work around.  maybe we should implement some other way
10029           to keep non ASCII encoding in dumped string.  [ruby-dev:33142]
10031 Thu Jan 17 10:30:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10033         * io.c (io_fwrite): always flush IO on tty, even without newlines.
10034           [ruby-core:15107]
10036 Wed Jan 16 22:45:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10038         * encoding.c (enc_register_at): make own copy.  [ruby-dev:33136]
10040 Wed Jan 16 18:03:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10042         * io.c (pipe_open, rb_io_s_popen): clear temporary object to release
10043           and prevent from GC.
10045 Wed Jan 16 17:55:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10047         * numeric.c (fix_quo): typo. a patch from Shin-ichiro HARA
10048           <sinara AT blade.nagaokaut.ac.jp> in [ruby-dev:33130]
10050 Wed Jan 16 17:36:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10052         * test/test_delegate.rb: add new test file for delegate.rb.
10054 Wed Jan 16 16:14:00 2008  Akinori MUSHA  <knu@iDaemons.org>
10056         * ruby.1: Fix grammar.
10058 Wed Jan 16 15:26:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10060         * file.c (sys_fail2): get rid of unlimited alloca.
10062         * io.c (mode_enc, pipe_open, rb_io_s_popen): ditto.
10064         * load.c (rb_feature_p): ditto.
10066         * object.c (rb_cstr_to_dbl): ditto.
10068         * io.c (mode_enc): fixed uninitialized variable.
10070 Wed Jan 16 12:51:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10072         * include/ruby/intern.h (rb_str_tmp_new, rb_str_shared_replace):
10073           prototype moved.
10075 Tue Jan 15 23:52:51 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10077         * enc/*: add ARG_UNUSED.
10079         * enc/koi8_u.c: added.
10081 Tue Jan 15 23:00:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10083         * enc/utf_{16,32}{be,le}.c: remove some ARG_UNUSED.  replace struct
10084           OnigEncodingST by OnigEncoding.
10086 Tue Jan 15 22:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10088         * encoding.c (ENC_REGISTER): use &OnigEncoding*.
10089           (ENCINDEX_UTF_8): renamed from ENCINDEX_UTF8.
10090           (rb_enc_init): use ENC_REGISTER.
10092         * include/ruby/oniguruma.h (OnigEncodingUTF8, ONIG_ENCODING_UTF8):
10093           removed.
10095         * enc/*.c: remove use of &encoding_*; use enc argument instead.
10097 Tue Jan 15 18:44:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10099         * enc/utf_8.c: remove use of ONIG_ENCODING_UTF8 altogether; use
10100           enc argument instead.
10102 Tue Jan 15 18:05:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10104         * enc/utf_8.c (ONIG_ENCODING_UTF8): reverted.
10106 Tue Jan 15 18:01:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10108         * win32/Makefile.sub (MKFILES): add dependencies.
10110 Tue Jan 15 18:00:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10112         * enc/utf_8.c (OnigEncodingDefine): encoding name should be kept
10113           unchanged.
10115 Tue Jan 15 17:53:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10117         * enc/utf_8.c: renamed as IANA name.
10119         * enc/Makefile.in: ditto.
10121 Tue Jan 15 16:59:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10123         * ruby.c (proc_options): encoding libraries cannot be loaded until
10124           load path is set.
10126 Tue Jan 15 15:09:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10128         * win32/setup.mak: strip out empty lines from CPP output.
10130 Tue Jan 15 14:57:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10132         * {win,bcc}32/setup.mak (-basic-vars-): expand BASERUBY to full path
10133           to get rid of ./ruby.exe.
10135         * win32/enc-setup.mak: workaround for Borland make.
10137 Tue Jan 15 14:44:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10139         * encoding.c (rb_locale_charmap): use ASCII-8BIT in miniruby.
10141 Tue Jan 15 13:54:41 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10143         * {bcc32,win32}/Makefile.sub (RUNRUBY): need to set archdir when
10144           invoking ruby.
10146 Tue Jan 15 13:43:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10148         * common.mk (us_ascii.o): add dependencies. [ruby-dev:33111]
10150 Tue Jan 15 03:41:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10152         * eval.c (eval): check if backtrace is empty.  [ruby-core:15040]
10154 Tue Jan 15 01:28:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10156         * common.mk: simplified dummy objects dependencies.
10158 Tue Jan 15 01:19:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10160         * common.mk (OBJS): moved encoding.o from COMMONOBJS.
10162         * common.mk (dmyencoding.o): added.  [ruby-dev:33099]
10164         * configure.in, {win,bcc}32/Makefile.sub (MINIOBJS): added
10165           dmyencoding.o.
10167         * dmyencoding.c (rb_locale_charmap): returns nil for miniruby.
10169 Tue Jan 15 00:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10171         * io.c (appendline): specifying limit should not generate broken
10172           byte sequence.  strings should be rounded.  [ruby-dev:33088]
10174 Mon Jan 14 23:33:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10176         * ext/nkf/lib/kconv.rb (Kconv.tolocale): argument is str.
10178 Mon Jan 14 23:31:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10180         * configure.in (setup): add -I$(EXTOUT)/$(arch) to MINIRUBY.
10182         * bootstraptest/runner.rb (main): expand -I directory path.
10184 Mon Jan 14 23:28:10 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10186         * win32/enc-setup.mak (BUILTIN_ENCOBJS): depends on enc/Makefile.in.
10188 Mon Jan 14 22:48:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10190         * re.c (rb_char_to_option_kcode): use rb_enc_find_index() instead
10191           of using fixed index value.
10193         * enc/Makefile.in (encsrcdir): make US-ASCII built-in.
10195 Mon Jan 14 22:25:02 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
10197         * golf_prelude.rb: Shorter method name completion.  Same method
10198           used for const missing. do_while and do_until added.  Enumerator
10199           gains all of Array's abilities. Ex:
10200             '123'.m{|i|i*2} #=> "112233"
10201             '123'.pe #=> '123'.perm*' ' #=> "123 132 213 231 312 321"
10202           base on a patch from Darren Smith <darrenks AT ml1.net>.
10204 Mon Jan 14 21:10:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10206         * enc/us_ascii.c: wrong alias name: ANSI_X3.4-1986.
10208         * rubytest.rb: add -I#{srcdir} to load encoding DLL.
10210 Mon Jan 14 18:53:58 2008  Koichi Sasada  <ko1@atdot.net>
10212         * thread.c: clear thread structure.
10213           (TODO: survey that child process should clear mutex or not).
10215         * bootstraptest/test_knownbug.rb, test_thread.rb: move a fixed test.
10217 Mon Jan 14 18:43:38 2008  Koichi Sasada  <ko1@atdot.net>
10219         * bootstraptest/runner.rb: add "flunk" method.
10221         * bootstraptest/test_knownbug.rb: fix to use flunk.
10223 Mon Jan 14 18:10:59 2008  Koichi Sasada  <ko1@atdot.net>
10225         * vm.h: remove dangerous assembler sentence.
10227 Mon Jan 14 18:06:37 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10229         * encoding.c (rb_locale_encoding): return US-ASCII when charmap is
10230           nil.
10232 Mon Jan 14 16:12:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10234         * lib/shellwords.rb: scape should be an alias to shellescape.  a
10235           patch from Masahiro Kawato <m-kawato AT mwb.biglobe.ne.jp> in
10236           [ruby-dev:33060].
10238 Mon Jan 14 16:09:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10240         * ruby.1: a patch to describe --encoding.  a patch from Yugui
10241           <yugui AT yugui.sakura.ne.jp> in [ruby-dev:33079].
10243         * ruby.c: ditto.
10245 Mon Jan 14 13:49:26 2008  Tanaka Akira  <akr@fsij.org>
10247         * re.c (rb_reg_prepare_re): initialize error message buffer.
10248           (rb_reg_search): ditto.
10249           (rb_reg_check_preprocess): ditto.
10250           (rb_reg_new_str): ditto.
10251           (rb_enc_reg_new): ditto.
10252           (rb_reg_compile): ditto.
10253           (rb_reg_initialize_m): ditto.
10254           (rb_reg_s_union_m): ditto.
10256 Mon Jan 14 12:33:07 2008  Eric Hodel  <drbrain@segment7.net>
10258         * lib/rdoc/markup*:  Renamespace from SM::SimpleMarkup to
10259           RDoc::Markup.
10261 Mon Jan 14 10:45:45 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10263         * enc/ascii.c: Exchanged order of arguments for one ENC_ALIAS
10265 Mon Jan 14 09:19:07 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10267         * lib/time.rb: do not reference Time directly from the inside of
10268           definitions. [ruby-dev:33059]
10270 Mon Jan 14 05:44:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10272         * enc/*.c: add replicas and aliases.
10274         * enc/make_encdb.h: add duplicate and undefined check.
10276 Mon Jan 14 02:03:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10278         * include/ruby/oniguruma.h: remove ONIG_ENCODING_* and OnigEncoding*
10279           which are not builtin.
10281         * regenc.{c,h} (onigenc_mb2_code_to_mbclen, onigenc_mb4_code_to_mbclen):
10282           fix prototype.
10284         * enc/big5.c, enc/euc_kr.c, enc/euc_tw.c, enc/gb18030.c,
10285           enc/koi8_r.c, enc/windows_1251.c: imported from Oniguruma.
10287 Sun Jan 13 22:47:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10289         * enc/make_encdb.h: sort encoding names by original name.
10291         * encoding.c, enc/*.c: define replicas and aliases.
10293 Sun Jan 13 20:24:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10295         * encoding.c: add documents.
10297 Sun Jan 13 18:41:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10299         * encoding.c (Init_Encoding): moved initialization from encdb.h.
10301         * enc/make_encdb.rb (enc_name_list): constified.
10303         * enc/make_encdb.rb (enc_init_db): moved some functions to encoding.c.
10305 Sun Jan 13 13:53:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10307         * ruby.c (load_file): local variable was not initialized when -x flag
10308           is given.
10310         * ruby.c (load_file): script files should not be affected by locale.
10311           [ruby-dev:33054]
10313 Sun Jan 13 12:01:32 2008  Eric Hodel  <drbrain@segment7.net>
10315         * lib/rdoc/generators*: Reorganize RDoc generators.
10317 Sun Jan 13 11:41:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10319         * encoding.c (ENCINDEX_EUC_JP, ENCINDEX_SJIS): removed.
10320           (rb_enc_init): EUC-JP and Shift_JIS are not builtin now.
10322         * enc/Makefile.in: ditto.
10324         * common.mk: ditto.
10326         * ruby.c (proc_options): ditto.
10328         * enc/shift_jis.c, enc/euc_jp.c: fixes for remove from builtin.
10330 Sun Jan 13 10:21:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10332         * encoding.c (enc_table): packed all enc_table stuff.
10334 Sun Jan 13 09:58:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10336         * encoding.c (rb_enc_init): revert removing SJIS.
10338         * enc/sjis.c: move to enc/shift_jis.c, to make encoding name equal to
10339           filename for convenience of loading lib.
10341         * enc/shift_jis.c: moved from enc/sjis.c.
10343         * common.mk: follows enc/shift_jis.c.
10345         * enc/Makefile.in: ditto.
10347 Sun Jan 13 09:22:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10349         * common.mk (incs): includes encdb.h.
10351 Sun Jan 13 09:17:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10353         * {bcc,win}32/Makefile.sub (MV): use move instead of ren.  [ruby-Bugs-17019]
10355 Sun Jan 13 01:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10357         * enc/make_encdb.rb: should work on Ruby 1.8.  [ruby-dev:33069]
10359         * common.mk (encdb.h): pass enc dir from outside to make_encdb.rb.
10361 Sun Jan 13 00:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10363         * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
10365         * regenc.h (ENC_REPLICATE, ENC_ALIAS): added for defining replica
10366           encoding and encoding alias.
10368         * encoding.c (rb_enc_init): move alias definitions to enc/*.c.
10369           (rb_enc_find_index): search original of replica and alias when no
10370           encoding library.
10371           (rb_enc_name_list, rb_enc_aliases_enc_i, rb_enc_aliases_str_i,
10372            rb_enc_aliases, Encoding.name_list, Encoding.aliases): added.
10373           (Init_Encoding): init encdb.
10375         * enc/ascii.c, enc/us_ascii.c, enc/euc_jp.c, enc/sjis.c:
10376           add replica encoding and encoding alias definition.
10378         * common.mk (dist-clean-local): add rule for remove encdb.h.
10380 Sat Jan 12 18:27:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10382         * eval.c (rb_define_alloc_func, rb_undef_alloc_func): should
10383           define/undef on a singleton class.  [ruby-core:09959]
10385 Sat Jan 12 12:44:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10387         * ext/nkf/nkf.c: rdoc update.
10389 Sat Jan 12 12:01:49 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10391         * lib/date.rb, lib/date/format.rb: tuning for performance.
10393 Sat Jan 12 11:29:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10395         * bootstraptest/test_proc.rb: fixed wrong expected result.  pointed
10396           out by Kornelius "murphy" Kalnbach <murphy AT rubychan.de> in
10397           [ruby-core:15022].
10399 Sat Jan 12 04:38:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10401         * ruby.c (process_options): -e'script' is locale encoding by default.
10402           (load_file): ruby script from stdin is locale encoding by default.
10404 Sat Jan 12 04:31:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10406         * ext/nkf/nkf-utf8/nkf.c: fix bug: -m was -m0.
10408 Fri Jan 11 23:22:31 2008  Tanaka Akira  <akr@fsij.org>
10410         * string.c (string.c): call rb_str_buf_append to update encoding of
10411           str1, even if str2 is empty.
10413 Fri Jan 11 20:20:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10415         * proc.c (proc_mark): needs to mark the receiver too.  a patch from
10416           Chris Heath <chris AT heathens.co.nz> in [ruby-core:14983].
10417           [ruby-core:14885]
10419 Fri Jan 11 18:28:49 2008  Eric Hodel  <drbrain@segment7.net>
10421         * lib/rdoc/usage.rb: Removed.
10423         * lib/getoptlong.rb: Update example to not use lib/rdoc/usage.rb.
10425 Fri Jan 11 18:17:10 2008  Eric Hodel  <drbrain@segment7.net>
10427         * lib/rdoc/ri/driver.rb (read_yaml): Follow namespace change
10428           [ruby-core:14964].
10430 Fri Jan 11 16:55:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10432         * string.c (rb_str_append): performance improvement.
10434 Fri Jan 11 12:35:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10436         * configure.in: moved broken syscall checks from process.c etc.
10438         * defines.h (WORDS_BIGENDIAN): honor __BIG_ENDIAN__ than the result of
10439           configure.
10441         * lib/rdoc/options.rb (check_diagram): more precise check, darwin
10442           is not Windows but mingw is on it.
10444 Fri Jan 11 09:59:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10446         * ext/nkf/nkf-utf8/nkf.c: update to r1.163.
10448         * ext/nkf/nkf.c: ASCII's canonical name is US-ASCII.
10450         * ext/nkf/lib/kconv.rb (Kconv.isjis): force_encoding('BINARY').
10452 Fri Jan 11 09:23:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10454         * encoding.c (set_base_encoding): must use rb_enc_dummy_p.
10456 Fri Jan 11 06:13:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10458         * encoding.c (rb_to_encoding_index, rb_to_encoding): disallow nil.
10459           [ruby-dev:33003]
10461 Fri Jan 11 01:08:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10463         * thread.c (rb_mutex_unlock): proper error message for unlocking
10464           mutex that is not locked.  a patch from Yusuke ENDOH
10465           <mame at tsg.ne.jp> in [ruby-dev:33010].
10467 Thu Jan 10 18:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10469         * prelude.rb (Mutex::synchronize): capture exception from unlock.
10470           [ruby-dev:32935]
10472 Thu Jan 10 10:15:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10474         * io.c (io_encoding_set): IO.pipe("euc-jp", nil) should work as
10475           IO.pipe("euc-jp", nil).  [ruby-dev:33000]
10477         * io.c (io_encoding_set): handle nil for v1.
10479 Thu Jan 10 02:41:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10481         * io.c (rb_io_binmode): should not alter encoding.  [ruby-dev:32918]
10483         * io.c (io_read_encoding): need not to return ASCII-8BIT for
10484           binary IO.
10486 Wed Jan  9 22:04:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10488         * lib/mathn.rb (Prime#each): returns an enumerator if no block
10489           given. [ruby-dev:32815]
10491 Wed Jan  9 22:03:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10493         * encoding.c (rb_enc_replicate): replica of dummy is a dummy.
10495 Wed Jan  9 20:55:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10497         * lib/e2mmap.rb (Exception2MessageMapper::Raise): define fail.
10498           [ruby-dev:32854]
10500 Wed Jan  9 20:35:42 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
10502         * lib/webrick/httprequest.rb: support X-Forwarded-* header fields.
10503           WEBrick::HTTPRequest#{host,port,request_uri} is derived having
10504           regards to X-Forwarded-Proto and X-Forwarded-Host.
10506         * lib/webrick/httprequest.rb
10507           (WEBrick::HTTPRequest#server_name?): new method.
10508           (WEBrick::HTTPRequest#remote_ip?): new method.
10509           (WEBrick::HTTPRequest#ssl?): new method.
10511 Wed Jan  9 18:24:39 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
10513         * golf_prelude.rb (Array#to_s): alias to join.
10515         * golf_prelude.rb (FalseClass#to_s): return "".
10517 Wed Jan  9 16:59:54 2008  Tanaka Akira  <akr@fsij.org>
10519         * string.c (rb_enc_cr_str_buf_cat): fix self appending.
10521 Wed Jan  9 15:54:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10523         * ruby.c (process_options): give priority command line encoding option
10524           to RUBYOPT, and enable -E option in RUBYOPT.
10526         * ruby.c (load_file): deal with encoding option in shebang line if
10527           nothing in command line and RUBYOPT.
10529 Wed Jan  9 14:55:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10531         * parse.y (yycompile0): remove setting parser->enc because it is set
10532           in parser_prepare() by previous change of parser_prepare().
10534 Wed Jan  9 14:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10536         * string.c (rb_enc_cr_str_buf_cat, rb_str_buf_append): deal with self
10537           appending.
10539 Wed Jan  9 14:44:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10541         * parse.y (parser_prepare): set parser->enc from lex_input for ripper.
10543 Wed Jan  9 13:45:52 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
10545         * lib/webrick/server.rb (WEBrick::HTTPServer#start):
10546           :DoNotReverseLookup option had not been performed.
10548 Wed Jan  9 13:03:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10550         * string.c (rb_enc_cr_str_buf_cat): do not recalculate coderange
10551           value if it's given from outside.
10553 Wed Jan  9 08:42:01 2008  James Edward Gray II  <jeg2@ruby-lang.org>
10555         * enum.c:  Updating the documentation of Enumerable#zip to reflect
10556           the recent changes Matz made to the method.
10558 Wed Jan  9 01:35:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10560         * enc/Makefile.in (BUILTIN_ENCS): UTF-{16,32}{BE,LE} are not builtin.
10562 Tue Jan  8 23:55:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10564         * encoding.c (rb_enc_init): UTF-{16,32}{BE,LE} are not builtin.
10566 Tue Jan  8 22:33:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10568         * encoding.c, Makefile.in, include/ruby/oniguruma.h,
10569           enc/Makefile.in: fix rules for UTF-{16,32}{BE,LE}.
10571 Tue Jan  8 20:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10573         * win{32,ce}/Makefile.sub: merged.
10575 Tue Jan  8 19:48:15 2008  Eric Hodel  <drbrain@segment7.net>
10577         * lib/rdoc/ri/driver.rb: Speed up Marshal.load. Fix bug with nested
10578           classes' methods.
10580 Tue Jan  8 19:17:29 2008  Eric Hodel  <drbrain@segment7.net>
10582         * lib/rdoc/*: Clean up namespacing of RI's classes.
10584 Tue Jan  8 18:05:35 2008  Eric Hodel  <drbrain@segment7.net>
10586         * bin/ri, lib/rdoc/ri/*: Replace with Ryan Davis' cached ri.
10588 Tue Jan  8 17:32:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10590         * enum.c (enum_zip): honor length of the receiver, not the
10591           shortest length.  [ruby-core:14738]
10593         * enum.c (enum_zip): returns array not enumerator for no block
10594           form.  [ruby-core:14738]
10596         * enumerator.c (next_ii): do not ignore multiple values yielded.
10598         * array.c (rb_ary_zip): faster version without creating generators.
10600 Tue Jan  8 15:47:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10602         * enc/utf{16,32}_{be,le}.c: use &OnigEncodingName(*) instead of
10603           ONIG_ENCODING_*.
10605 Tue Jan  8 15:40:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10607         * regenc.c (onigenc_strlen_null, onigenc_str_bytelen_null): suppressed
10608           warnings.
10610         * regenc.h, enc/unicode.c (onigenc_unicode_ctype_code_range): added
10611           encoding argument.
10613         * enc/utf{16,32}_{be,le}.c: added init functions.
10615         * enc/utf{16,32}_{be,le}.c: imported from Oniguruma 5.9.1.
10617 Tue Jan  8 15:03:10 2008  Tanaka Akira  <akr@fsij.org>
10619         * string.c (str_gsub): avoid appending empty pre-match substr.
10621 Tue Jan  8 13:05:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10623         * compile.c (iseq_build_from_ary), iseq.c (iseq_load): fix for format change.
10625 Tue Jan  8 07:56:11 2008  Tanaka Akira  <akr@fsij.org>
10627         * string.c (rb_str_buf_append): fix append itself.
10629 Tue Jan  8 01:13:50 2008  Tanaka Akira  <akr@fsij.org>
10631         * string.c (STR_ENC_GET): defined.  same as rb_enc_get without
10632           enc_capable.
10633           (coderange_scan): ASCII-8BIT test refined.
10634           (rb_enc_cr_str_buf_cat): new internal function to accumulate
10635           strings with encoding.
10636           (rb_enc_str_buf_cat): use rb_enc_cr_str_buf_cat.
10637           (rb_str_buf_append): ditto
10638           (str_gsub): use rb_str_buf_append.
10639           (rb_str_hash): use ENCODING_GET.
10640           (rb_str_comparable): ditto.
10641           (rb_str_cmp): compare encoding index, not rb_encoding address.
10643 Mon Jan  7 20:37:55 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
10645         * lib/webrick/httpservlet/cgihandler.rb: external encoding of
10646           tempfiles is set to "ASCII-8BIT".
10648 Mon Jan  7 19:39:50 2008  Eric Hodel  <drbrain@segment7.net>
10650         * lib/rdoc/template.rb:  Use ERB instead of custom template language.
10652         * lib/rdoc/generators/template/html/old_html.rb:  Remove.
10654         * lib/rdoc/generators/template/*: Convert to ERB.
10656 Mon Jan  7 19:11:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10658         * string.c (Init_String): sym_match arity spec was wrong.  a patch
10659           from Hiroyuki Iwatsuki <don at na.rim.or.jp> in [ruby-dev:32957].
10661 Mon Jan  7 18:10:33 2008  Tanaka Akira  <akr@fsij.org>
10663         * string.c (str_gsub): move rb_enc_get(str) to out of loop.
10665 Mon Jan  7 15:52:10 2008  Tanaka Akira  <akr@fsij.org>
10667         * include/ruby/oniguruma.h (OnigEncodingType): new member
10668           ruby_encoding_index to avoid linear search in rb_enc_to_index.
10670         * include/ruby/encoding.h (rb_enc_to_index): macro defined to use
10671           ruby_encoding_index.
10673         * encoding.c (rb_enc_to_index): removed.
10674           (enc_register_at): initialize ruby_encoding_index member.
10676 Mon Jan  7 16:10:35 2008  Eric Hodel  <drbrain@segment7.net>
10678         * lib/rdoc/tokenstream.rb:  Namespace under RDoc.
10680 Mon Jan  7 16:06:09 2008  Eric Hodel  <drbrain@segment7.net>
10682         * lib/rdoc/dot.rb:  Namespace under RDoc.
10684         * lib/rdoc/diagram.rb:  Clean up formatting.
10686 Mon Jan  7 15:51:35 2008  Eric Hodel  <drbrain@segment7.net>
10688         * lib/rdoc/options.rb:  Convert to OptionParser, clean up -h output,
10689           namespace under RDoc.
10690         * lib/rdoc/*:  Namespace RDoc::Options.
10692 Mon Jan  7 15:42:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10694         * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
10695           removing rule of ext/ripper/y.output from common.mk to Makefiles
10696           that depend on platforms.
10698 Mon Jan  7 13:54:57 2008  Tanaka Akira  <akr@fsij.org>
10700         * re.c (rb_reg_preprocess): fix fixed_enc condition.
10702 Mon Jan  7 11:51:49 2008  Eric Hodel  <drbrain@segment7.net>
10704         * lib/rdoc/generators/ri_generator.rb:  Merge documentation from the
10705           same class on output.  Fixes bug where documentation could
10706           disappear.
10708         * lib/rdoc/options.rb:  Fix typo.
10710         * lib/rdoc/generators/*: Clean up some namespacing and make RDoc
10711           consistent.
10713 Mon Jan  7 11:44:45 2008  Tanaka Akira  <akr@fsij.org>
10715         * encoding.c (rb_enc_internal_get_index): extracted from
10716           rb_enc_get_index.
10717           (rb_enc_internal_set_index): extracted from rb_enc_associate_index
10719         * include/ruby/encoding.h (ENCODING_SET): work over ENCODING_INLINE_MAX.
10720           (ENCODING_GET): ditto.
10721           (ENCODING_IS_ASCII8BIT): defined.
10722           (ENCODING_CODERANGE_SET): defined.
10724         * re.c (rb_reg_fixed_encoding_p): use ENCODING_IS_ASCII8BIT.
10726         * string.c (rb_enc_str_buf_cat): use ENCODING_IS_ASCII8BIT.
10728         * parse.y (reg_fragment_setenc_gen): use ENCODING_IS_ASCII8BIT.
10730         * marshal.c (has_ivars): use ENCODING_IS_ASCII8BIT.
10732 Mon Jan  7 02:14:07 2008  Tanaka Akira  <akr@fsij.org>
10734         * string.c (coderange_scan): avoid rb_enc_to_index.
10735           (rb_enc_str_buf_cat): ditto.
10736           (str_cat_char): use rb_enc_str_buf_cat.
10737           (rb_str_inspect): ditto.
10739 Mon Jan  7 01:36:49 2008  Tanaka Akira  <akr@fsij.org>
10741         * string.c (coderange_scan): optimize ASCII-8BIT string.
10742           (rb_enc_str_buf_cat): don't call coderange_scan if possible.
10744 Mon Jan  7 01:05:45 2008  Tanaka Akira  <akr@fsij.org>
10746         * lib/erb.rb (ERB::Revision): cut off locale dependent string in Date
10747           keyword.
10749 Mon Jan  7 00:48:02 2008  Tanaka Akira  <akr@fsij.org>
10751         * Date keyword removed to avoid inclusion of locale dependent
10752           string.  [ruby-dev:32940]
10754 Sun Jan  6 21:14:12 2008  Tanaka Akira  <akr@fsij.org>
10756         * re.c (rb_reg_initialize_str): forbid raw non ASCII character
10757           for ASCII-8BIT regexp in non ASCII-8BIT script.
10759 Sun Jan  6 18:19:12 2008  Tanaka Akira  <akr@fsij.org>
10761         * include/ruby/encoding.h (rb_enc_str_buf_cat): declared.
10763         * string.c (coderange_scan): extracted from rb_enc_str_coderange.
10764           (rb_enc_str_coderange): use coderange_scan.
10765           (rb_str_shared_replace): copy encoding and coderange.
10766           (rb_enc_str_buf_cat): new function for linear complexity string
10767           accumulation with encoding.
10768           (rb_str_sub_bang): don't conflict substituted part and replacement.
10769           (str_gsub): use rb_enc_str_buf_cat.
10770           (rb_str_clear): clear coderange.
10772         * re.c (rb_reg_regsub): use rb_enc_str_buf_cat.
10774 Sun Jan  6 17:55:44 2008  Technorama Ltd.  <oss-ruby@technorama.net>
10776         * lib/securerandom.rb: Add Win32 support.
10778 Sun Jan  6 09:32:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10780         * lib/date.rb, lib/date/format.rb: introduced some constants
10781           (for internal use) and aliases (minute and second).
10783         * sample/cal.rb: trivial adjustments.
10785 Sun Jan  6 01:38:07 2008  Tanaka Akira  <akr@fsij.org>
10787         * re.c (rb_reg_initialize_str): /\x80/n is not an error even if script
10788           encoding is EUC-JP.
10790 Sun Jan  6 00:48:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10792         * lib/resolv.rb (Resolv::DNS#each_address): get A record and then AAAA
10793           record. [ruby-dev:32925]
10795 Sat Jan  5 21:48:03 2008  Tanaka Akira  <akr@fsij.org>
10797         * vm_insnhelper.c (vm_callee_setup_arg): it is not inlinable because
10798           alloca is used.
10800 Sat Jan  5 16:50:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10802         * string.c (rb_str_resize): copy if old data is not empty
10803           [ruby-core:14785]
10805 Sat Jan  5 13:04:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10807         * ruby.c (proc_options): no need for intermediate object.
10809 Sat Jan  5 11:48:19 2008  Tanaka Akira  <akr@fsij.org>
10811         * encoding.c (Init_Encoding): alias csWindows31J to Windows-31J.
10812           IE6 accepts csWindows31J but Windows-31J.
10814 Sat Jan  5 02:21:10 2008  Tanaka Akira  <akr@fsij.org>
10816         * include/ruby/ruby.h (rb_intern): memorize interned ID for constant
10817           string, using gcc's __builtin_constant_p and statement expression.
10819 Sat Jan  5 02:14:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10821         * string.c (trnext): should enable backslash escape.
10823 Sat Jan  5 01:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10825         * eval.c (Init_eval): move instance_eval and instance_exec to
10826           BasicObject.  [ruby-core:14747]
10828         * lib/delegate.rb: should preserve new methods in BasicObject.
10830 Sat Jan  5 01:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10832         * ruby.c (proc_options): update according to the last API revert.
10834 Sat Jan  5 01:30:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10836         * include/ruby/intern.h, re.c (rb_reg_new): keep interface same as
10837           1.8.  [ruby-core:14583]
10839         * include/ruby/intern.h, re.c (rb_reg_new_str): renamed, and defines
10840           HAVE_RB_REG_NEW_STR macro to tell if it is available.
10842         * include/ruby/encoding.h (rb_enc_reg_new): added.
10844         * insns.def (toregexp), marshal.c (r_object0): use rb_reg_new_str().
10846         * re.c (rb_reg_regcomp, rb_reg_s_union): ditto.
10848 Fri Jan  4 23:08:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10850         * time.c (time_arg): use converted object.  [ruby-core:14759]
10852 Fri Jan  4 16:24:58 2008  Tanaka Akira  <akr@fsij.org>
10854         * ext/digest/lib/digest/hmac.rb (Digest::HMAC#initialize): use
10855           String#bytesize to avoid test errors on EUC-JP environment.
10857 Fri Jan  4 14:00:50 2008  Tanaka Akira  <akr@fsij.org>
10859         * re.c (rb_reg_prepare_re): check string encoding.  Oniguruma doesn't
10860           support invalid encoding.
10862 Fri Jan  4 10:22:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10864         * re.c (rb_reg_search): avoid inner loop for reverse search.
10866         * regexec.c: unset USE_MATCH_RANGE_MUST_BE_INSIDE_OF_SPECIFIED_RANGE
10867           which is turned on since oniguruma 5.9.1.
10869 Fri Jan  4 02:53:31 2008  Tanaka Akira  <akr@fsij.org>
10871         * enc/euc_jp.c: remove eucjp_ prefix.  breakpoint can be specified as
10872           euc_jp.c:mbc_enc_len.  avoid needless conflict by merge.
10874         * enc/sjis.c: remove sjis_ prefix.
10876         * enc/utf8.c: remove utf8_ prefix.
10878         * enc/iso_8859_1.c: remove iso_8859_1_ prefix.
10880         * enc/iso_8859_2.c: remove iso_8859_2_ prefix.
10882         * enc/iso_8859_3.c: remove iso_8859_3_ prefix.
10884         * enc/iso_8859_4.c: remove iso_8859_4_ prefix.
10886         * enc/iso_8859_5.c: remove iso_8859_5_ prefix.
10888         * enc/iso_8859_6.c: remove iso_8859_6_ prefix.
10890         * enc/iso_8859_7.c: remove iso_8859_7_ prefix.
10892         * enc/iso_8859_8.c: remove iso_8859_8_ prefix.
10894         * enc/iso_8859_9.c: remove iso_8859_9_ prefix.
10896         * enc/iso_8859_10.c: remove iso_8859_10_ prefix.
10898         * enc/iso_8859_11.c: remove iso_8859_11_ prefix.
10900         * enc/iso_8859_13.c: remove iso_8859_13_ prefix.
10902         * enc/iso_8859_14.c: remove iso_8859_14_ prefix.
10904         * enc/iso_8859_15.c: remove iso_8859_15_ prefix.
10906         * enc/iso_8859_16.c: remove iso_8859_16_ prefix.
10908 Fri Jan  4 02:47:06 2008  Tanaka Akira  <akr@fsij.org>
10910         * re.c (rb_reg_search): iterate onig_match for reverse mode.
10912 Fri Jan  4 01:20:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10914         * win32.h: only VC6 needs extern "C++" for math.h.  [ruby-talk:285660]
10916 Fri Jan  4 00:54:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10918         * include/ruby/oniguruma.h: Oniguruma 5.9.1 merged.
10920 Fri Jan  4 00:20:47 2008  Tanaka Akira  <akr@fsij.org>
10922         * io.c (io_ungetc): move data in buffer if it is required to store the
10923           argument.
10925 Thu Jan  3 21:56:07 2008  Tanaka Akira  <akr@fsij.org>
10927         * include/ruby/ruby.h (st_strcasecmp): declared for STRCASECMP.
10928           (st_strncasecmp): declared for STRNCASECMP.
10930 Thu Jan  3 20:24:48 2008  Koichi Sasada  <ko1@atdot.net>
10932         * eval_jump.c (rb_f_catch): Restore cfp if caught thrown object.
10934 Thu Jan  3 19:45:57 2008  Koichi Sasada  <ko1@atdot.net>
10936         * bootstraptest/test_eval.rb, test_knownbug.rb: move a fixed test.
10938 Thu Jan  3 18:39:12 2008  Tanaka Akira  <akr@fsij.org>
10940         * encoding.c: (rb_tolower, rb_toupper): body was exchanged.
10942 Thu Jan  3 17:54:01 2008  Tanaka Akira  <akr@fsij.org>
10944         * regenc.h (onigenc_ascii_is_code_ctype): put back.
10946 Thu Jan  3 17:33:09 2008  Tanaka Akira  <akr@fsij.org>
10948         * encoding.c (rb_isalnum): defined.
10949           (rb_isalpha): ditto.
10950           (rb_isblank): ditto.
10951           (rb_iscntrl): ditto.
10952           (rb_isdigit): ditto.
10953           (rb_isgraph): ditto.
10954           (rb_islower): ditto.
10955           (rb_isprint): ditto.
10956           (rb_ispunct): ditto.
10957           (rb_isspace): ditto.
10958           (rb_isupper): ditto.
10959           (rb_isxdigit): ditto.
10960           (rb_tolower): ditto.
10961           (rb_toupper): ditto.
10963         * include/ruby/ruby.h: don't include include/ruby/encoding.h.
10964           (rb_isascii): defined.
10965           (rb_isalnum): declared.
10966           (rb_isalpha): ditto.
10967           (rb_isblank): ditto.
10968           (rb_iscntrl): ditto.
10969           (rb_isdigit): ditto.
10970           (rb_isgraph): ditto.
10971           (rb_islower): ditto.
10972           (rb_isprint): ditto.
10973           (rb_ispunct): ditto.
10974           (rb_isspace): ditto.
10975           (rb_isupper): ditto.
10976           (rb_isxdigit): ditto.
10977           (rb_tolower): ditto.
10978           (rb_toupper): ditto.
10979           (ISASCII): simplified.
10980           (ISPRINT): ditto.
10981           (ISSPACE): ditto.
10982           (ISUPPER): ditto.
10983           (ISLOWER): ditto.
10984           (ISALNUM): ditto.
10985           (ISALPHA): ditto.
10986           (ISDIGIT): ditto.
10987           (ISXDIGIT): ditto.
10988           (TOUPPER): ditto.
10989           (TOLOWER): ditto.
10991         * include/ruby/encoding.h (rb_isascii): removed.
10992           (rb_isalnum): ditto.
10993           (rb_isalpha): ditto.
10994           (rb_isblank): ditto.
10995           (rb_iscntrl): ditto.
10996           (rb_isdigit): ditto.
10997           (rb_isgraph): ditto.
10998           (rb_islower): ditto.
10999           (rb_isprint): ditto.
11000           (rb_ispunct): ditto.
11001           (rb_isspace): ditto.
11002           (rb_isupper): ditto.
11003           (rb_isxdigit): ditto.
11004           (rb_tolower): ditto.
11005           (rb_toupper): ditto.
11007         * common.mk: dependency updated.
11009 Thu Jan  3 15:10:26 2008  Tanaka Akira  <akr@fsij.org>
11011         * include/ruby/encoding.h (rb_isascii): simplified.
11012           (rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
11013           (rb_isalpha): ditto.
11014           (rb_isblank): ditto.
11015           (rb_iscntrl): ditto.
11016           (rb_isdigit): ditto.
11017           (rb_isgraph): ditto.
11018           (rb_islower): ditto.
11019           (rb_isprint): ditto.
11020           (rb_ispunct): ditto.
11021           (rb_isspace): ditto.
11022           (rb_isupper): ditto.
11023           (rb_isxdigit): ditto.
11025         * include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
11026           moved from regenc.h.
11028 Thu Jan  3 14:37:17 2008  Tanaka Akira  <akr@fsij.org>
11030         * parse.y (parser_magic_comment): use STRNCASECMP.
11031           (set_file_encoding): ditto.
11033 Thu Jan  3 11:44:37 2008  Tanaka Akira  <akr@fsij.org>
11035         * time.c: don't mention an obsolete library, ParseDate.
11037 Thu Jan  3 11:28:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11039         * io.c (fptr_finalize): clear errno first.  [ruby-talk:284492]
11041 Thu Jan  3 05:02:36 2008  Tanaka Akira  <akr@fsij.org>
11043         * enc/us_ascii.c: add us_ascii_ prefix for functions to ease
11044           setting breakpoint when debugging.
11046         * enc/euc_jp.c: add eucjp_ prefix.
11048         * enc/sjis.c: add sjis_ prefix.
11050         * enc/iso_8859_1.c: add iso_8859_1_ prefix.
11052         * enc/iso_8859_2.c: add iso_8859_2_ prefix.
11054         * enc/iso_8859_3.c: add iso_8859_3_ prefix.
11056         * enc/iso_8859_4.c: add iso_8859_4_ prefix.
11058         * enc/iso_8859_5.c: add iso_8859_5_ prefix.
11060         * enc/iso_8859_6.c: add iso_8859_6_ prefix.
11062         * enc/iso_8859_7.c: add iso_8859_7_ prefix.
11064 Thu Jan  3 02:44:34 2008  Tanaka Akira  <akr@fsij.org>
11066         * bignum.c (conv_digit): use ISDIGIT, ISLOWER and ISUPPER.
11068 Wed Jan  2 23:50:15 2008  Tanaka Akira  <akr@fsij.org>
11070         * util.c (ruby_strtoul): "0x", "+" and "-" is not a valid integer.
11071           end of integer should be just after "0", the beginning, the
11072           beginning respectively.
11074 Wed Jan  2 15:23:15 2008  Tanaka Akira  <akr@fsij.org>
11076         * util.c (ruby_strtoul): locale independent strtoul is implemented to
11077           avoid "i".to_i(36) cause 0 under tr_TR locale on Debian GNU/Linux
11078           4.0 (Etch).
11079           This is newly implemented, not a copy of missing/strtoul.c.
11081         * include/ruby/ruby.h (ruby_strtoul): declared.
11082           (STRTOUL): defined to use ruby_strtoul.
11084         * bignum.c, pack.c, ext/socket/socket.c: use STRTOUL.
11086         * configure.in (strtoul): don't check.
11088         * missing/strtoul.c: removed.
11090         * include/ruby/missing.h (strtoul): removed.
11092         * common.mk (strtoul.o): removed.
11094         * LEGAL (missing/strtoul.c): removed.
11096 Wed Jan  2 14:41:08 2008  Tanaka Akira  <akr@fsij.org>
11098         * common.mk (strcasecmp.o): removed.
11099           (strncasecmp.o): removed.
11101         * include/ruby/missing.h (strcasecmp): removed.
11102           (strncasecmp): removed.
11104 Wed Jan  2 11:34:57 2008  Tanaka Akira  <akr@fsij.org>
11106         * missing/strcasecmp.c: removed.  Ruby don't use locale dependent
11107           strcasecmp.
11109         * missing/strncasecmp.c: ditto.
11111         * configure.in: don't check strcasecmp and strncasecmp.
11113         * LEGAL: missing/strcasecmp.c and missing/strncasecmp.c removed.
11115 Wed Jan  2 10:13:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11117         * sample/time.rb: use Process.times instead of Time.times.
11119 Wed Jan  2 09:09:53 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11121         * sample/goodfriday.rb: examples for date are enough.  retired.
11123 Wed Jan  2 08:58:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11125         * sample/cal.rb: just updated with the newest version.
11127 Wed Jan  2 01:19:31 2008  Tanaka Akira  <akr@fsij.org>
11129         * enc/depend: dependency updated.
11131 Wed Jan  2 00:14:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11133         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: Update nkf.
11135         * ext/nkf/nkf.c: fix documents.
11137         * ext/nkf/lib/kconv.rb: fix documents.
11138           (Kconv.is*): use valid_encoding?.
11139           (Kconv.isjis): defined.
11141 Tue Jan  1 23:17:03 2008  Tanaka Akira  <akr@fsij.org>
11143         * common.mk: dependency updated.
11145 Tue Jan  1 21:11:33 2008  Tanaka Akira  <akr@fsij.org>
11147         * include/ruby/encoding.h (rb_isascii): defined.
11148           (rb_isalnum): ditto.
11149           (rb_isalpha): ditto.
11150           (rb_isblank): ditto.
11151           (rb_iscntrl): ditto.
11152           (rb_isdigit): ditto.
11153           (rb_isgraph): ditto.
11154           (rb_islower): ditto.
11155           (rb_isprint): ditto.
11156           (rb_ispunct): ditto.
11157           (rb_isspace): ditto.
11158           (rb_isupper): ditto.
11159           (rb_isxdigit): ditto.
11160           (rb_tolower): ditto.
11161           (rb_toupper): ditto.
11163         * include/ruby/st.h (st_strcasecmp): declared.
11164           (st_strncasecmp): ditto.
11166         * st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
11167           (st_strcasecmp): defined.
11168           (st_strncasecmp): ditto.
11170         * include/ruby/ruby.h: include include/ruby/encoding.h.
11171           (ISASCII): use rb_isascii.
11172           (ISPRINT): use rb_isprint.
11173           (ISSPACE): use rb_isspace.
11174           (ISUPPER): use rb_isupper.
11175           (ISLOWER): use rb_islower.
11176           (ISALNUM): use rb_isalnum.
11177           (ISALPHA): use rb_isalpha.
11178           (ISDIGIT): use rb_isdigit.
11179           (ISXDIGIT): use rb_isxdigit.
11180           (TOUPPER): defined.
11181           (TOLOWER): ditto.
11182           (STRCASECMP): ditto.
11183           (STRNCASECMP): ditto.
11185         * dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
11186           transcode.c, ext/readline/readline.c: use locale insensitive
11187           functions.  [ruby-core:14662]
11189 Tue Jan  1 17:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11191         * io.c (rb_io_mode_enc): encoding spec is not allowed in binary mode.
11192           [ruby-dev:32913]
11194 Tue Jan  1 14:41:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11196         * lib/rexml: 1.9 patch from Sam Ruby mentioned in his blog:
11197           <http://intertwingly.net/blog/2007/12/31/Porting-REXML-to-Ruby-1-9>
11198           [ruby-core:14639]
11200 Tue Jan  1 14:15:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11202         * string.c (rb_str_substr): offset movement bug.  a patch from
11203           Vincent Isambart <vincent.isambart at gmail.com> in
11204           [ruby-core:14647].  [ruby-core:14644]
11206 Tue Jan  1 01:29:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11208         * encoding.c (rb_to_encoding): raises for non-nil, non-encoding,
11209           non-string object.  [ruby-core:14634]
11211 Tue Jan  1 01:04:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11213         * ruby.c (process_options): rejects dummy encoding.
11215 Mon Dec 31 23:53:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11217         * ruby.c (proc_options, process_options): delays finding encoding
11218           until load_path is set.
11220 Mon Dec 31 23:27:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11222         * string.c (rb_str_resize): embeds if ptr is null.  [ruby-dev:32819]
11224 Mon Dec 31 23:17:22 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11226         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
11227           call do_XXX which correspond with request method.
11228           (WEBrick::HTTPProxyServer#do_CONNECT,do_GET,do_POST,do_HEAD): added.
11230         * test/webrick/test_httpproxy.rb: add test for WEBrick::HTTPProxyServer.
11232 Mon Dec 31 22:53:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11234         * thread_pthread.c (native_sleep): timespec tv_sec may overflow on
11235           some platform.  a patch from zunda <zunda616e AT yahoo.co.jp> in
11236           [ruby-dev:32904].
11238 Mon Dec 31 19:35:20 2007  Tanaka Akira  <akr@fsij.org>
11240         * string.c (IS_7BIT): removed.
11241           (single_byte_optimizable): new function to test optimizationability
11242           using single byte string.
11243           (str_strlen): use single_byte_optimizable instead of
11244           is_ascii_string.
11245           (str_nth): rename argument: asc -> singlebyte.
11246           (str_offset): ditto.
11247           (rb_str_substr): use single_byte_optimizable instead of IS_7BIT.
11248           (rb_str_index): ditto.
11249           (rb_str_rindex): ditto.
11250           (rb_str_splice): ditto.
11251           (rb_str_justify): ditto.
11253 Mon Dec 31 07:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11255         * main.c, goruby.c (RUBY_MAIN_INIT): removed.
11257         * goruby.c (goruby_run_node): run after ruby_init_loadpath() so that
11258           require works, and protect the call.
11260 Mon Dec 31 06:50:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11262         * common.mk: not use -I$(srcdir)/lib with $(MINIRUBY) for cross
11263           compiling.
11265         * configure.in, {win,bcc}32/Makefile.sub (MINIRUBY): -I$(srcdir)/lib
11266           moved.
11268 Mon Dec 31 06:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11270         * include/ruby/encoding.h (rb_enc_sprintf, rb_enc_vsprintf): prototyped.
11272         * sprintf.c (rb_enc_sprintf, rb_enc_vsprintf): new functions to format
11273           arguments with encoding.
11275 Sun Dec 30 23:48:00 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11277         * golf_prelude.rb (String#/): define / as split, as association of
11278           Array#*.
11280 Sun Dec 30 23:19:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
11282         * golf_prelude.rb (@@golf_hash): for performance improvement.
11284 Sun Dec 30 22:44:50 2007  Tadayoshi Funaba  <tadf@dotrb.org>
11286         * lib/date.rb (_valid_time?): I'm not sure to recommend such an
11287           expression.  but anyway it is acceptable now.  [ruby-core:14580]
11289 Sun Dec 30 21:54:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11291         * parse.y (program, yycompile0): too early to drop lex_lastline in
11292           rules.
11294 Sun Dec 30 19:23:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11296         * bootstraptest/test_knownbug.rb: support DOSISH.
11298 Sun Dec 30 17:43:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11300         * encoding.c (Init_Encoding): registered rb_encoding differs from
11301           ONIG_ENCODINGs.
11303 Sun Dec 30 13:56:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11305         * parse.y (program): clear input strings after all process.
11307         * parse.y (parser_nextc, parser_yylex): should not drop lex_lastline
11308           while lex_p is valid.  [ruby-dev:32896]
11310 Sun Dec 30 10:54:49 2007  NARUSE, Yui  <naruse@ruby-lang.org>
11312         * configure.in: rm largefile.h.
11314         * common.mk: clean golf, conf*, preludes, and so on.
11316         * enc/depend: silent and ignore error for rm.
11318         * enc/Makefile.in: should define prefix and exec_prefix.
11320 Sun Dec 30 06:31:11 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11322         * encoding.c (Init_encoding): register Windows-31J and its alias.
11323           [ruby-dev:32843]
11325         * ruby.c (proc_options): -Ks options means Windows-31J, not Shift_JIS.
11327 Sun Dec 30 06:27:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11329         * lib/mkmf.rb (depend_rules): need to convert `/' to `\' for windows
11330           native commands.
11332 Sun Dec 30 01:43:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11334         * enc/Makefile.in (DLDFLAGS): like as extensions.  [ruby-core:14567]
11336 Sat Dec 29 23:48:13 2007  Tanaka Akira  <akr@fsij.org>
11338         * io.c (io_fflush): don't retry when wbuf modified by other threads.
11340 Sat Dec 29 22:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11342         * re.c (rb_reg_regsub): returns the given string itself if nothing
11343           changed.
11345         * string.c (rb_str_sub_bang): keeps code-range as possible.
11347         * string.c (str_gsub): adjusts code-range.  [ruby-core:14566]
11349 Sat Dec 29 21:54:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11351         * common.mk (clean, distclean, realclean): should include clean-enc
11352           and others.  [ruby-dev:32887]
11354 Sat Dec 29 13:29:29 2007  Tanaka Akira  <akr@fsij.org>
11356         * bootstraptest/test_knownbug.rb: add a test reported by
11357           Kazuhiro NISHIYAMA.  [ruby-dev:32819].
11358           add a test reported by Frederick Cheung.  [ruby-core:14556].
11360         * test/ruby/test_m17n.rb (test_gsub): add a test reported by
11361           Sam Ruby.  [ruby-core:14566]
11363 Sat Dec 29 04:46:58 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11365         * lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_throws):
11366           throw won't raise NameError nor ThreadError but ArgumentError on 1.9.
11367           (Test::Unit::Assertions#assert_not_throws): ditto.
11369         * test/testunit/test_assertions.rb: add assertions for throwing some
11370           objects other than Symbol.
11372 Sat Dec 29 03:10:12 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11374         * io.c (io_unread): fix typo.
11376 Sat Dec 29 02:18:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11378         * io.c (io_unread): adhoc workaround for non-binary mode of some DOSish
11379           platforms. this is not perfect and safety, but works with most cases.
11381 Fri Dec 28 23:53:18 2007  Tanaka Akira  <akr@fsij.org>
11383         * ext/strscan/strscan.c (str_new): new function for allocate an string
11384           with encoding propagation.
11385           (extract_range): use str_new.
11386           (extract_beg_len): ditto.
11387           (strscan_peek): ditto.
11388           (strscan_rest): ditto.
11390 Fri Dec 28 20:18:42 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
11392         * golf_prelude.rb (Object.say): derived from Perl 5.10.
11394 Fri Dec 28 19:39:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11396         * encoding.c (rb_locale_encoding): should check return value from
11397           rb_locale_charmap().
11399         * ruby.c (locale_encoding): removed.
11401         * ruby.c (process_options): use rb_locale_encoding() instead of
11402           locale_encoding().
11404         * ext/readline/readline.c (readline_readline): use locale encoding
11405           instead of input IO's encoding. [ruby-dev:32872]
11407 Fri Dec 28 19:29:07 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11409         * ext/readline/readline.c (readline_readline, readline_s_set_input):
11410           use mReadline directly because self is not always same.
11412 Fri Dec 28 19:11:28 2007  Tanaka Akira  <akr@fsij.org>
11414         * encoding.c (rb_locale_encoding): defined.
11416         * include/ruby/encoding.h (rb_locale_encoding): declared.
11418 Fri Dec 28 18:45:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11420         * ext/readline/readline.c (readline_readline): set encoding to result.
11422         * ext/readline/readline.c (readline_s_set_input, Init_readline): save
11423           input IO to hidden instance variable.
11425 Fri Dec 28 01:55:04 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
11427         * transcode.c (transcode_dispatch): reverted some of the changes
11428           in r14746.
11430         * transcode.c, enc/trans/single_byte.c: Added conversions to/from
11431           US-ASCII and ASCII-8BIT (using data tables).
11433         * enc/trans/single_byte.c: Some spacing/ordering changes due to
11434           automatic data file generation.
11436         * transcode_data.h, transcode.c: Preliminary code for using
11437           micro-conversion functions.
11439         * test/ruby/test_transcode.rb: Added some tests for US-ASCII and
11440           ASCII-8BIT conversions.
11442 Fri Dec 28 17:33:44 2007  Tanaka Akira  <akr@fsij.org>
11444         * time.c (make_time_t): verify mktime and timegm result.
11446 Fri Dec 28 16:36:33 2007  NARUSE, Yui  <naruse@airemix.com>
11448         * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
11450 Fri Dec 28 16:10:00 2007  Eric Hodel  <drbrain@segment7.net>
11452         * lib/rdoc/dot/dot.rb: Move to lib/rdoc/dot.rb. Fix namespacing.
11454         * lib/rdoc/diagram.rb: Update for 1.9.
11456 Fri Dec 28 15:38:29 2007  Eric Hodel  <drbrain@segment7.net>
11458         * lib/rdoc/markup/sample/: Move to sample/rdoc/markup directory.
11460 Fri Dec 28 15:15:12 2007  Akinori MUSHA  <knu@iDaemons.org>
11462         * lib/irb/completion.rb: Remove garbage ("X=1").
11464 Fri Dec 28 15:12:05 2007  Eric Hodel  <drbrain@segment7.net>
11466         * lib/rdoc, test/rdoc: Move RDoc tests out of lib/.
11468 Fri Dec 28 15:10:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11470         * encoding.c (set_base_encoding, enc_base_encoding): renamed
11471           based_encoding as base_encoding.
11473 Fri Dec 28 13:57:49 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11475         * golf_prelude.rb (Integer#each): use alias simply.
11477 Fri Dec 28 13:45:21 2007  Akinori MUSHA  <knu@iDaemons.org>
11479         * golf_prelude.rb (Object.const_missing): No need to delegate to
11480           superclass.  Just raise a NameError when none matches.
11482 Fri Dec 28 13:18:47 2007  Kouhei Sutou  <kou@cozmixng.org>
11484         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.2 -> 0.2.3.
11486         * lib/rss/parser.rb, test/rss/test_parser.rb: supported "-" in tag name.
11487           Reported by Ray Chen. Thanks.
11489 Fri Dec 28 13:07:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11491         * gc.c (os_obj_of): returns an enumerator if no block given.  based on
11492           a patch from Yugui <yugui AT yugui.sakura.ne.jp>.  [ruby-dev:32828]
11494 Fri Dec 28 11:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11496         * tool/ytab.sed: skip yydestruct hack unless yymsg exists, for bison
11497           1.8 series.  [ruby-dev:32825]
11499 Fri Dec 28 11:39:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11501         * golf_prelude.rb (Object.quine): need to join because SCRIPT_LINES__[]
11502           returns an array of lines.
11504 Fri Dec 28 11:16:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11506         * golf_prelude.rb (Object.quine): get the script itself.
11508 Fri Dec 28 10:06:54 2007  Akinori MUSHA  <knu@iDaemons.org>
11510         * golf_prelude.rb (Object.const_missing): Auto-complete constants.
11512 Fri Dec 28 01:55:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11514         * transcode.c (transcode_dispatch): allows transcoding from/to
11515           ASCII-8BIT.
11517 Fri Dec 28 01:47:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11519         * golf_prelude.rb (Integer): Integer is now enumerable on goruby.
11521 Fri Dec 28 01:27:47 2007  Tanaka Akira  <akr@fsij.org>
11523         * lib/rdoc/rdoc.rb (parse_files): don't depend on the default external
11524           encoding.
11526 Fri Dec 28 00:01:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11528         * common.mk (golf_prelude.c): use MINIRUBY instead of BASERUBY because
11529           tool/compile_prelude.rb requires rbconfig.rb.
11531 Thu Dec 27 23:56:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11533         * mkconfig.rb: should not use the libraries under the source directory
11534           at cross compiling.
11536 Thu Dec 27 23:43:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11538         * cygwin/GNUmakefile.in (EXTOBJS): uses ruby.rc always for other than
11539           rubyw.exe.
11541 Thu Dec 27 22:31:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11543         * lib/rubygems/commands/update_command.rb (do_rubygems_update): use
11544           portable and safely ENV operation. reported in
11545           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
11547 Thu Dec 27 21:47:04 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11549         * mkconfig.rb (prefix): archdir is "1.9.0", not "1.9". reported in
11550           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
11552 Thu Dec 27 17:57:30 2007  Tanaka Akira  <akr@fsij.org>
11554         * parse.y, transcode_data.h, transcode.c, lib/weakref.rb,
11555           lib/irb/ruby-lex.rb, lib/irb/lc/error.rb, enc/trans/japanese.c:
11556           change "illegal" to "invalid" in a context which doesn't against
11557           a law.
11559 Thu Dec 27 16:37:06 2007  Tanaka Akira  <akr@fsij.org>
11561         * re.c (rb_reg_s_union): show encodings in error message.
11563 Thu Dec 27 15:25:16 2007  Tanaka Akira  <akr@fsij.org>
11565         * encoding.c (rb_enc_codelen): show codepoint in error message.
11567         * include/ruby/encoding.h (rb_enc_codelen): comment it returns
11568           positive integer.
11570         * string.c (rb_str_concat): rb_enc_codelen doesn't return 0.
11572 Thu Dec 27 15:18:44 2007  Tanaka Akira  <akr@fsij.org>
11574         * encoding.c (rb_enc_codelen): error message refined.
11576 Thu Dec 27 15:11:27 2007  Tanaka Akira  <akr@fsij.org>
11578         * encoding.c (rb_enc_check): show encodings in error message.
11580 Thu Dec 27 15:02:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11582         * string.c (rb_str_casecmp): fixed using a wrong variable.
11583           [ruby-list:44402]
11585 Thu Dec 27 14:34:38 2007  Tanaka Akira  <akr@fsij.org>
11587         * io.c (io_fflush): checks wbuf modification by other threads.
11588           not perfect.  it need locks.
11590 Thu Dec 27 10:44:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11592         * ext/socket/socket.c: a patch to support IRIX from Andrew
11593           Thompson <andrew@hijacked.us> in [ruby-core:14447].
11595 Thu Dec 27 02:25:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11597         * lib/mkmf.rb (create_tmpsrc): retry to create file if Errno::EACCES
11598           occurs. this is a workaround for mswin32.
11600 Wed Dec 26 22:47:31 2007  NARUSE, Yui <naruse@ruby-lang.org>
11602         * lib/resolv.rb (Resolv::DNS::Name.==): fix for other is array of
11603           Resolv::DNS::Label::Str.
11605         * lib/resolv.rb (Resolv::DNS::MessageEncoder#put_label): String#string
11606           is not defined, so replace to_s.
11608         * lib/resolv.rb (Resolv::IPv6#to_name): ip6.int is obsoleted by
11609           ip6.arpa.
11612 Wed Dec 26 21:27:02 2007  Tadayoshi Funaba  <tadf@dotrb.org>
11614         * lib/date/format.rb (_xmlschema): some improvements.
11616         * lib/date/format.rb (_parse): a new hint compfunc. [experimental]
11618 Wed Dec 26 17:31:08 2007  Tanaka Akira  <akr@fsij.org>
11620         * io.c (io_fflush): check closed fptr after rb_write_internal to avoid
11621           SEGV on MacOS X.
11623 Wed Dec 26 16:10:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11625         * string.c (Init_String): defines chars method.
11627 Wed Dec 26 14:38:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11629         * instruby.rb: install goruby if exists.
11631 Wed Dec 26 13:55:02 2007  James Edward Gray II  <jeg2@ruby-lang.org>
11633         * lib/csv.rb:  Cleaned up some code with Ruby 1.9 idioms.
11635 Wed Dec 26 13:29:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11637         * array.c (tmpbuf): use rb_str_tmp_new().
11639 Wed Dec 26 00:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11641         * ext/json/ext/generator/generator.c (Init_generator): requires
11642           json/common.rb for GeneratorError, when static linked.  a patch from
11643           Kenta Murata <muraken AT gmail.com> in [ruby-dev:32789].
11645 Tue Dec 25 23:33:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11647         * development version 1.9.0 released.
11649 Tue Dec 25 23:25:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11651         * lib/rexml/node.rb (REXML::Node::indent): should initialize rv
11652           variable.  a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
11653           [ruby-dev:32783].
11655 Tue Dec 25 23:16:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11657         * ruby.c (proc_options): encoding option in shebang and RUBYOPT did not
11658           work, do not store alloca()ed string in a parent scope struct.
11660 Tue Dec 25 22:56:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11662         * win32/Makefile.sub (config.status): keep this file.
11664 Tue Dec 25 22:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11666         * configure.in (TIMEZONE_VOID): typo.
11668 Tue Dec 25 22:45:10 2007  Koichi Sasada  <ko1@atdot.net>
11670         * insns2vm.rb: add encoding option to shebang.
11672 Tue Dec 25 22:13:51 2007  Koichi Sasada  <ko1@atdot.net>
11674         * bootstraptest/pending.rb: add pending issue.
11676 Tue Dec 25 22:12:40 2007  Koichi Sasada  <ko1@atdot.net>
11678         * thread.c: remove Thread.critical(=).
11680 Tue Dec 25 21:44:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11682         * tool/make-snapshot: add version number.
11684 Tue Dec 25 21:32:54 2007  Koichi Sasada  <ko1@atdot.net>
11686         * compile.c (iseq_compile_each): fix stack consistency error
11687           (break is compiled to throw instead of jump insn).
11688           these problems are reported by Yusuke ENDOH <mame AT tsg.ne.jp>
11690         * bootstraptest/test_knownbug.rb, test_syntax.rb: move fixed test.
11692 Tue Dec 25 21:32:44 2007  Tanaka Akira  <akr@fsij.org>
11694         * parse.y (struct parser_params): make parser_ruby_sourcefile common
11695           field.  it is used by node_newnode.
11696           new field parser_ruby_sourcefile_string for ripper.
11697           (parser_initialize): initialize parser_ruby_sourcefile in ripper.
11698           (ripper_initialize): initialize parser_ruby_sourcefile_string.
11700 Tue Dec 25 21:26:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11702         * common.mk (parse.c): depends on tool/ytab.sed.
11704         * tool/ytab.sed: hack for bison 2.1.
11706 Tue Dec 25 20:24:58 2007  Technorama Ltd.  <oss-ruby@technorama.net>
11708         * ext/openssl/ossl_ssl.c: Only show a warning if the default
11709           DH callback is actually used.
11711         * ext/openssl/ossl_rand.c: New method: random_add().
11713 Tue Dec 25 20:24:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11715         * tool/make-snapshot: argument check, and cleanup exported directory.
11717 Tue Dec 25 20:07:13 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
11719         * tool/make-snapshot: more portable.
11721 Tue Dec 25 19:01:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11723         * encoding.h (rb_enc_mbc_to_codepoint): wrapper for
11724           ONIGENC_MBC_TO_CODE().
11726         * string.c (rb_str_succ): deal with invalid sequence as binary.
11728 Tue Dec 25 18:40:46 2007  Koichi Sasada  <ko1@atdot.net>
11730         * iseq.c: all methods need $SAFE < 1.
11732          vm.c: comment out debug functions.
11734 Tue Dec 25 18:37:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11736         * io.c (appendline): move RS comparison to rb_io_getline_1().
11738 Tue Dec 25 18:27:51 2007  Tanaka Akira  <akr@fsij.org>
11740         * string.c (rb_str_each_line): don't call rb_enc_codepoint with empty
11741           string.
11743 Tue Dec 25 18:06:04 2007  Tanaka Akira  <akr@fsij.org>
11745         * string.c (rb_str_inspect): don't call rb_enc_codepoint with empty
11746           string.  fix '#'.inspect.
11748         * encoding.c (rb_enc_codepoint): raise on empty string.
11750 Tue Dec 25 17:48:28 2007  Shugo Maeda  <shugo@ruby-lang.org>
11752         * vm.c (rb_frame_method_id_and_class): new function to get the
11753           method id and class of the current frame.
11755 Tue Dec 25 17:32:04 2007  Akinori MUSHA  <knu@iDaemons.org>
11757         * lib/mkmf.rb (create_makefile): Add a missing dependency on the
11758           target directory for each .rb file.  This will hopefully fix
11759           parallel make (-jN).  Tested on FreeBSD.
11761 Tue Dec 25 16:51:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11763         * enc/trans/japanese.c (rb_{from,to}_{SHIFT_JIS,EUC_JP}): inversed
11764           from_encoding and to_encoding.
11766 Tue Dec 25 16:41:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11768         * golf_prelude.rb (h): add new method for all golfers.
11770 Tue Dec 25 16:37:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11772         * enc/trans/japanese.c (rb_to_EUC_JP): fixed typo.
11774 Tue Dec 25 16:34:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11776         * ext/dl/depend: add dependencies. [ruby-dev:32760]
11778 Tue Dec 25 16:26:48 2007  Koichi Sasada  <ko1@atdot.net>
11780         * include/ruby/ruby.h, thread.c: rename is_ruby_native_thread() to
11781           ruby_native_thread_p().
11783         * ext/tk/tcltklib.c: apply it.
11785 Tue Dec 25 16:15:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11787         * common.mk (clean-enc): clean encoding objects.
11789 Tue Dec 25 16:04:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11791         * common.mk, goruby.c, golf_prelude.rb: for golfers.
11793         * main.c (main): hook for embedding applications.
11795         * tool/compile_prelude.rb: can change initialize function name.
11797 Tue Dec 25 15:59:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11799         * encoding.c (rb_enc_register): do not use based_encoding to check if
11800           dummy encoding.
11802 Tue Dec 25 15:55:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11804         * string.c (rb_str_succ): fix for string with non-alphanumeric chars.
11806 Tue Dec 25 15:42:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11808         * io.c (rb_io_external_encoding): should return nil for
11809           pass-through write IO.  [ruby-dev:32740]
11811 Tue Dec 25 15:24:57 2007  Tanaka Akira  <akr@fsij.org>
11813         * io.c (appendline): initialize rslen to 1 if rsptr is 0.
11814           rslen is the length of the delimiter.
11815           if only delim is given, it should be 1.
11816           [ruby-dev:32746]
11818 Tue Dec 25 15:21:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11820         * transcode.c (transcode_dispatch): fix for multistep transcode.
11822 Tue Dec 25 15:07:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
11824         * enc/trans/single_byte.c (Init_single_byte): renamed.
11826 Tue Dec 25 15:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11828         * enum.c (enum_yield): when multiple values yielded from #each
11829           pack them into an array.  [ruby-dev:32708]
11831         * enum.c: all method but all?, any?, one? and none? passed packed
11832           multiple values to the block.
11834         * enum.c (collect_all): should pack all values.  [ruby-core:14410]
11836 Tue Dec 25 14:57:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11838         * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans.
11840         * transcode_data.h (rb_transcoding, rb_transcoder): prefixed.
11842         * transcode.c (rb_register_transcoder, rb_declare_transcoder): split
11843           declaration and registration.  [ruby-dev:32704]
11845         * transcode.c (transcode_dispatch): autoload pre-declared transcoder.
11847         * transcode.c (str_transcode): use rb_define_dummy_encoding().
11849         * transcode.c (Init_transcode): initialize transcoder tables.
11851         * enc/trans/single_byte.c, enc/trans/japanese.c: moved from top.
11853 Tue Dec 25 14:20:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11855         * lib/mkmf.rb (map_dir): should generate path including $top_srcdir.
11857 Tue Dec 25 14:09:16 2007  James Edward Gray II  <jeg2@ruby-lang.org>
11859         * lib/csv.rb:  Fixed test failures caused by changes to Ruby.
11861         * test/csv/tc_serialization, test/csv/tc_csv_parsing, test/csv/tc_features:
11862           Fixed test failures caused by changes to Ruby.
11864 Tue Dec 25 14:11:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11866         * io.c (io_encoding_set): missing return type.
11868 Tue Dec 25 14:03:48 2007  NARUSE, Yui <naruse@ruby-lang.org>
11870         * test/rinda/test_rinda.rb (MockClock#{_forward, forward, sleep}):
11871           Change default value of n as @reso from nil.  If default value is
11872           nil, n.+ is not defined.
11874 Tue Dec 25 13:54:01 2007  Tanaka Akira  <akr@fsij.org>
11876         * test/ruby/test_io_m17n.rb (test_pipe): fixed.
11877           [ruby-dev:32743]
11879 Tue Dec 25 13:44:51 2007  Koichi Sasada  <ko1@atdot.net>
11881         * thread.c (rb_thread_wait_fd_rw): should check EBADF on select().
11883 Tue Dec 25 13:30:03 2007  Koichi Sasada  <ko1@atdot.net>
11885         * thread_pthread.c, thread_pthread.h, thread_win32.c,
11886           thread_win32.c: make some functions static functions.
11887           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
11888           in [ruby-core:14407]
11890 Tue Dec 25 13:23:13 2007  Tanaka Akira  <akr@fsij.org>
11892         * test/ruby/test_io_m17n.rb (test_write_noenc): don't mix text and
11893           binary mode.  [ruby-dev:32743]
11895 Tue Dec 25 13:13:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11897         * README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
11898           lex.c.blt, keywords, load.c, thread.c: more ANSI'ize.
11899           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
11900           in [ruby-dev:32725]
11902 Tue Dec 25 13:07:56 2007  Koichi Sasada  <ko1@atdot.net>
11904         * vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
11905           RUBY_VM_SET_TIMER_INTERRUPT(), RUBY_VM_INTERRUPTED().
11907         * thread.c, thread_pthread.c, thread_win32.c: fix to ignore time slice
11908           event until sleep.
11910         * bootstraptest/test_thread.rb: add a test for time limited join test.
11912 Tue Dec 25 12:42:59 2007  Koichi Sasada  <ko1@atdot.net>
11914         * vm.c (Init_VM): remove unused code.
11915           [ruby-dev:32732]
11917 Tue Dec 25 12:32:32 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
11919         * transcode.c: Moving a static counter from inside register_transcoder()
11920           and register_functional_transcoder() to outside the functions, renaming
11921           from n to next_transcoder_position. Fixes 3) in [ruby-dev:32715].
11923 Tue Dec 25 12:22:17 2007  NARUSE, Yui <naruse@ruby-lang.org>
11925         * sample/from.rb: follow Ruby 1.9 libraries.
11927 Tue Dec 25 12:21:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11929         * proc.c (method_inspect): preserve encoding of the method name.
11931 Tue Dec 25 12:07:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11933         * configure.in (BASERUBY): delayed error until BASERUBY is used.
11935 Tue Dec 25 11:48:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11937         * sample/README: removed obsoleted files: dbmtest.rb,
11938           getopts.test, mrshtest.rb, regx.rb.
11940 Tue Dec 25 11:45:34 2007  James Edward Gray II  <jeg2@ruby-lang.org>
11942         * lib/csv.rb:  Import the FasterCSV source as the new CSV class.
11944         * test/csv/*:  Added all applicable tests from FasterCSV.
11946 Tue Dec 25 11:33:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11948         * error.c (report_bug): uses ruby_description.
11950 Tue Dec 25 11:20:38 2007  Koichi Sasada  <ko1@atdot.net>
11952         * compile.c (iseq_compile_each): fix stack consistency error.
11953           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32720]
11955         * bootstraptest/test_syntax.rb: add 2 tests for above.
11957 Tue Dec 25 11:14:20 2007  Koichi Sasada  <ko1@atdot.net>
11959         * iseq.c, vm_core.h: comment out unused fields.
11961 Tue Dec 25 11:02:10 2007  Koichi Sasada  <ko1@atdot.net>
11963         * vm.c: check frame is FINAL when creating env.
11964           [ruby-core:14395]
11966         * bootstraptest/test_block.rb: add a test for above.
11968 Tue Dec 25 09:12:13 2007  Eric Hodel  <drbrain@segment7.net>
11970         * lib/rdoc/:  Enable RDoc debugging only with $DEBUG_RDOC.
11972 Tue Dec 25 08:37:43 2007  James Edward Gray II  <jeg2@ruby-lang.org>
11974         * lib/csv.rb, test/csv/test_csv.rb:  Removed in preparation for
11975           FasterCSV code import.
11977 Tue Dec 25 08:27:43 2007  Eric Hodel  <drbrain@segment7.net>
11979         * lib/rubygems.rb:  Fix test failures.
11981         * test/rubygems/test_gem.rb:  Fix test failure.
11983 Tue Dec 25 06:23:40 2007  Koichi Sasada  <ko1@atdot.net>
11985         * bootstraptest/test_knownbug.rb, test_literal.rb: move fixed test.
11987 Tue Dec 25 06:19:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11989         * sample/biorhythm.rb: follow Ruby 1.9 libraries.
11991 Tue Dec 25 06:15:01 2007  Koichi Sasada  <ko1@atdot.net>
11993         * vm.c: add dummy toplevel frame.
11995 Tue Dec 25 05:44:56 2007  Eric Hodel  <drbrain@segment7.net>
11997         * lib/net/http.rb:  Fix uninitialized variable warning.
11998           [ruby-talk:284582]
12000         * lib/irb/output-method.rb:  Remove unused #foo method.
12001           [ruby-talk:284582]
12003 Tue Dec 25 05:24:12 2007  Koichi Sasada  <ko1@atdot.net>
12005         * compile.c (iseq_compile): clear local table if node == 0.
12006           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32530]
12008         * vm.c: clear VM stack.
12010 Tue Dec 25 04:23:32 2007  Tanaka Akira  <akr@fsij.org>
12012         * parse.y (rb_id2str): fill klass of returned string as rb_cString.
12013           some strings are allocated before rb_cString is created.
12014           This prevents a "called on terminated object" error by
12015           ObjectSpace.each_object(Module) {|m| p m.name }.
12017 Tue Dec 25 03:51:55 2007  Koichi Sasada  <ko1@atdot.net>
12019         * compile.c (iseq_compile_each): fix stack consistency bug.
12020           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
12022 Tue Dec 25 03:19:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12024         * tool/make-snapshot: must create configure and lex.c.
12026 Tue Dec 25 03:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12028         * io.c (rb_io_s_pipe): now takes up to two arguments.  allow its
12029           external/internal encoding by Encoding objects.
12031         * io.c (rb_io_set_encoding): new method to set encoding of the IO.
12033         * io.c (argf_set_encoding): ditto.
12035 Tue Dec 25 03:08:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12037         * pack.c (pack_pack): use NUM2LONG instead of NUM2INT.
12039         * numeric.c (fix_lshift, fix_aref): use SIZEOF_LONG instead of
12040           SIZEOF_VALUE.
12042         * bignum.c (big2ulong, rb_big_aref): ditto.
12044 Tue Dec 25 02:55:26 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12046         * lib/rexml/element.rb (REXML::Elements#each): yield in each
12047           should be called with one parameter. [ruby-dev:32708]
12049 Tue Dec 25 02:15:39 2007  Koichi Sasada  <ko1@atdot.net>
12051         * compile.c (iseq_compile_each): add a "pop" insn after break
12052           to fix stack consistency error.  [ruby-core:14385]
12054         * bootstraptest/test_syntax.rb: add tests for above.
12056         * bootstraptest/test_knownbug.rb: remove fixed bug.
12058 Tue Dec 25 01:54:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12060         * id.c (Init_id): remove several unused symbols. [ruby-core:14362]
12062         * compile.c (iseq_specialized_instruction): do not use
12063           VM_CALL_SEND_BANG flag any longer.
12065 Tue Dec 25 01:42:41 2007  Tanaka Akira  <akr@fsij.org>
12067         * lib/rdoc/rdoc.rb (parse_files): interpret coding cookie.
12069 Tue Dec 25 01:38:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12071         * proc.c (method_name): preserve Symbol's encoding.
12073         * numeric.c (fix_id2name): ditto.
12075 Tue Dec 25 01:19:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12077         * include/ruby/encoding.h (rb_enc_left_char_head): new utility macro.
12079         * include/ruby/encoding.h (rb_enc_right_char_head): ditto.
12081         * io.c (appendline): does multibyte RS search in the function.
12083         * io.c (prepare_getline_args): RS may be nil.
12085         * io.c (rb_io_getc): should process character based on external
12086           encoding, when transcoding required.
12088 Tue Dec 25 01:07:57 2007  Tanaka Akira  <akr@fsij.org>
12090         * lib/irb/output-method.rb: translate a comment to English to
12091           avoid mix of EUC-JP comment and UTF-8 Date keyword.
12092           svn substitute Date keyword with UTF-8 weekday on UTF-8 locale.
12094 Tue Dec 25 00:27:28 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12096         * lib/webrick/httpservley/cgihandler.rb
12097           (WEBrick::HTTPServlet::CGIHandler#do_GET): m17nized.
12099 Mon Dec 24 23:55:29 2007  Tanaka Akira  <akr@fsij.org>
12101         * lib/cgi.rb (CGI::escape): m17nized.
12102           (CGI::unescape): ditto.
12103           (CGI::escapeHTML): ditto.
12104           (CGI::unescapeHTML): ditto.
12106 Mon Dec 24 23:32:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12108         * transcode_data_japanese.c (select_iso_2022_mode): '\e' is not valid.
12110 Mon Dec 24 23:13:09 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12112         * lib/rdoc/diagram.rb (RDoc::Diagram#initialize): use fileuitls
12113           instead of ftools.
12115 Mon Dec 24 23:04:57 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
12117         * lib/ftools.rb: removed obsoleted lib.  use fileutils instead (by eban).
12119         * lib/rdoc/rdoc.rb, lib/rdoc/generators/*, lib/rake.rb: let it use
12120           fileutils instead of ftools.
12122         * lib/shell/command-processor.rb: removed unused references to ftools.
12124         * lib/parsedate.rb: removed.  see [ruby-core:12535], [ruby-dev:31969].
12126         * lib/README: updated.
12128 Mon Dec 24 23:01:04 2007  Tanaka Akira  <akr@fsij.org>
12130         * lib/open-uri.rb (OpenURI::Buffer): use Meta ===.  [ruby-core:14295]
12132 Mon Dec 24 22:46:42 2007  NARUSE, Yui <naruse@ruby-lang.org>
12134         * transcode.c: register_functional_transcoder() added.
12135           (init_transcoder_table(: register ISO-2022-JP.
12136           (str_transcode): add preprocessor and postprocessor.
12138         * transcode_data_japanese.c: add ISO-2022-JP support.
12140         * transcode_data.h: moved transcoder and transcoding definition from
12141           transcode.c.
12143 Mon Dec 24 20:29:28 2007  Koichi Sasada  <ko1@atdot.net>
12145         * test/io/nonblock/test_flush.rb: fix test for 1.9.
12147 Mon Dec 24 20:23:44 2007  Koichi Sasada  <ko1@atdot.net>
12149         * test/rinda/test_rinda.rb: revert last commit because this test seems
12150           to have timing problem to halt all tests.
12152 Mon Dec 24 20:18:52 2007  Koichi Sasada  <ko1@atdot.net>
12154         * test/rinda/test_rinda.rb: enable rinda test.
12156 Mon Dec 24 20:16:54 2007  Koichi Sasada  <ko1@atdot.net>
12158         * instruby.rb: fix rdoc install dir.
12160 Mon Dec 24 18:37:32 2007  Tanaka Akira  <akr@fsij.org>
12162         * re.c (rb_reg_prepare_re): show regexp encoding in the error message.
12164 Mon Dec 24 18:23:32 2007  Tanaka Akira  <akr@fsij.org>
12166         * eval.c (rb_exc_raise): ANSI style.
12167           (rb_exc_fatal): ditto.
12168           (rb_raise_jump): ditto.
12169           (rb_jump_tag): ditto.
12170           (rb_block_given_p): ditto.
12172         * variable.c (original_module): ditto.
12174 Mon Dec 24 18:05:09 2007  Koichi Sasada  <ko1@atdot.net>
12176         * iseq.c (Init_ISeq): disable ISeq.load() because there is no verifier.
12178         * iseq.c, proc.c: add ISeq.disasm(method).
12180 Mon Dec 24 18:06:03 2007  Tanaka Akira  <akr@fsij.org>
12182         * eval_method.c (Init_eval_method): extracted from Init_eval
12183           for rdoc to find rb_mod_remove_method, rb_mod_undef_method and
12184           rb_mod_alias_method.
12186         * eval.c (Init_eval): call Init_eval_method.
12188 Mon Dec 24 17:59:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12190         * load.c (load_lock): reverted.
12192         * thread.c (rb_barrier_wait): check for recursive wait.
12194 Mon Dec 24 17:50:54 2007  Tanaka Akira  <akr@fsij.org>
12196         * eval.c (function_call_may_return_twice_jmp_buf): removed.
12197           (function_call_may_return_twice_false): removed.
12198           [ruby-core:14335]
12200 Mon Dec 24 17:40:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12202         * common.mk (node_name.inc, miniprelude.c, prelude.c): nmake cannot
12203           handle target vpath in other than implicit rules.
12205 Mon Dec 24 17:20:34 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
12207         * lib/{mailread.rb,getopts.rb,parsearg.rb}: removed.
12208           see [ruby-core:12535], [ruby-dev:31969].
12210 Mon Dec 24 17:12:57 2007  Tanaka Akira  <akr@fsij.org>
12212         * include/ruby/intern.h, random.c, array.c:
12213           change exported name.
12214           genrand_int32 -> rb_genrand_int32.
12215           genrand_real -> rb_genrand_real.
12216           [ruby-core:14335]
12218 Mon Dec 24 17:06:37 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
12220         * {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion
12221           at ruby-core and ruby-dev.  see [ruby-core:12535], [ruby-dev:31969].
12223 Mon Dec 24 17:06:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12225         * load.c (rb_feature_p): returns loading path name too.
12227         * load.c (search_required): returns path too if feature is being
12228           loaded.  [ruby-dev:32048]  [TODO: refactoring]
12230 Mon Dec 24 16:29:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12232         * sample/openssl: reviewed and remove dependency on getopts.rb.
12234 Mon Dec 24 16:18:57 2007  Koichi Sasada  <ko1@atdot.net>
12236         * mkconfig.rb: add teeny to CONFIG['ruby_version'].
12238 Mon Dec 24 15:55:50 2007  Koichi Sasada  <ko1@atdot.net>
12240         * tool/compile.rb, getrev.rb, runruby.rb: remove unused tools.
12242 Mon Dec 24 15:42:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12244         * configure.in, cygwin/GNUmakefile.in, */Makefile.sub,
12245           djgpp/config.hin.: version dependent directory names now contain
12246           teeny.
12248 Mon Dec 24 15:29:13 2007  Tanaka Akira  <akr@fsij.org>
12250         * tool/serb.rb: removed.
12252 Mon Dec 24 13:55:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12254         * proc.c (rb_proc_new), vm.c (invoke_block): removed u3.state magic.
12255           [ruby-core:14310]
12257         * test/ruby/test_symbol.rb (test_to_proc): a test from Frederick
12258           Cheung <frederick.cheung AT gmail.com>.
12260 Mon Dec 24 13:43:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12262         * thread.c (rb_thread_atfork): should not leave living_threads
12263           referring freed table while allocating new table.
12265 Mon Dec 24 12:49:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12267         * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
12268           compiled output file name explicitly.
12270         * enc/Makefile.in, enc/depend: now makes compiler to put generated
12271           files under directories corresponding to the each source.
12272           enc/trans supported.
12274         * enc/make_encmake.rb: evaluates depend file before Makefile.in so
12275           that the former can influence to CONFIG.
12277 Mon Dec 24 12:35:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12279         * win{32,ce}/Makefile.sub (MFLAGS): defaulted to -l.
12281 Mon Dec 24 12:08:10 2007  Eric Hodel  <drbrain@segment7.net>
12283         * /, ext/:  Add svn:ignore for OS X Xcode 3's conftest.dSYM
12284           directories.
12286 Mon Dec 24 11:56:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12288         * common.mk: should not pass MAKEFLAGS to recursive make.
12289           + normal make: MFLAGS are set and command line options and macros
12290             are all passed silently.
12291           + GNU make: ditto, and all options and macros in MAKEFLAGS are in
12292             effect.
12293           + nmake: MFLAGS is not set and MAKEFLAGS has only options without
12294             hyphen, no macros exist in any variables.
12295           + Borland make: ditto, and command line macros cannot override
12296             macros in makefile, so passing them is vain.
12298         * {bcc32,win{32,ce}}/Makefile.sub (SET_MAKE): set MFLAGS which is not
12299           set by default, to get rid of chaotic situation of MFLAGS/MAKEFLAGS.
12301 Mon Dec 24 11:32:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12303         * string.c (rb_str_comparable): fixed to keep transitivity.
12304           [ruby-dev:32693]
12306 Mon Dec 24 11:20:31 2007  Eric Hodel  <drbrain@segment7.net>
12308         * lib/rdoc/ri/ri_options.rb:  Fix display of GEMDIRS, make command
12309           examples match ri's name.
12311         * lib/rdoc/ri/ri_paths.rb:  Only allow latest ri dirs in ri output.
12313 Mon Dec 24 10:49:04 2007  Eric Hodel  <drbrain@segment7.net>
12315         * lib/uri/mailto.rb, lib/uri/common.rb:  Fix Regexp warnings.  Patch
12316           #16524 from Kornelius Kalnbach, [ruby-core:14302].
12318 Mon Dec 24 10:37:38 2007  Eric Hodel  <drbrain@segment7.net>
12320         * gem_prelude.rb:  Remove methods from Gem, not QuickLoader, to fix
12321           warnings.
12323 Mon Dec 24 09:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12325         * transcode.c, transcode_data_one_byte.c, transcode_data_japanese.c:
12326           added rb_ prefix to external data symbols.
12328 Mon Dec 24 05:32:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12330         * enum.c (enum_inject): updated documentation.  a patch from Keita
12331           Yamaguchi <keita.yamaguchi AT gmail.com> in [ruby-dev:32686].
12333         * README.EXT: updated.  a patch from Tadashi Saito
12334           <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14328].
12336         * array.c (rb_ary_at): updated documentation. a patch from Tadashi
12337           Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14330].
12339 Mon Dec 24 05:13:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12341         * string.c (tr_trans): should associate new encoding if modified.
12343 Mon Dec 24 04:04:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12345         * test/net/http/test_https.rb: should rescue LoadError.
12347 Mon Dec 24 03:57:28 2007  Koichi Sasada  <ko1@atdot.net>
12349         * cont.c, vm.h: fix to support sparc machine.
12350           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
12352 Mon Dec 24 03:35:19 2007  Koichi Sasada  <ko1@atdot.net>
12354         * common.mk: remove additional "-".
12356 Mon Dec 24 02:59:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12358         * io.c (rb_io_check_readable): should not fill fptr->enc always.
12359           read-write IO (e.g. socket) does not work.  [ruby-dev:32685]
12361         * io.c (io_read_encoding): retrieve reading encoding.
12363         * io.c (prepare_getline_args): convert RS to external encoding.
12365         * string.c (str_new_shared): was setting embedding flag of wrong
12366           string object.  [ruby-dev:32685]
12368         * io.c (io_enc_str): should preserve default_external encoding.
12370         * io.c (appendline): should do multibyte aware RS search.
12372 Mon Dec 24 02:06:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12374         * io.c (rb_f_open): documentation update.
12376         * io.c (rb_io_s_pipe): ditto.
12378         * io.c (io_fwrite): wrong encoding destination.
12380         * io.c (rb_io_external_encoding): should return the encoding of
12381           the file reading.
12383         * io.c (rb_io_internal_encoding): should return the encoding of
12384           read string.
12386 Mon Dec 24 01:46:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12388         * io.c (rb_io_s_pipe): allow specifying read-side encoding.
12390         * io.c (io_enc_str): wrong encoding destination.
12392 Mon Dec 24 01:03:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12394         * string.c (rb_str_comparable): comparison including broken
12395           coderange strings do not consider encoding.
12397 Mon Dec 24 00:57:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12399         * io.c (open_key_args): IO direct methods (foreach, readlines,
12400           read) now takes keyword argument: encoding, mode, open_args.
12402 Mon Dec 24 00:52:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12404         * io.c (rb_io_s_read): encoding argument reverted.
12406         * io.c (mode_enc): independent function to share code.
12408         * io.c (rb_io_internal_encoding): new method.
12410 Mon Dec 24 00:47:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12412         * test/ruby/test_beginendblock.rb (TestBeginEndBlock::test_endblockwarn):
12413           rename endblockwarn.rb to endblockwarn_rb to avoid unnecessary
12414           warning in make test.
12416 Sun Dec 23 23:03:13 2007  Tanaka Akira  <akr@fsij.org>
12418         * encoding.c (rb_enc_codepoint): implemented to raise invalid
12419           encoding.
12421         * include/ruby/encoding.h (rb_enc_codepoint): macro is replaced as a
12422           declaration.
12424 Sun Dec 23 19:45:22 2007  Tanaka Akira  <akr@fsij.org>
12426         * lib/time.rb (Time.httpdate): fix 2 digits year for 20xx.
12427           reported by Tadayoshi Funaba.  [ruby-dev:32687]
12429 Sun Dec 23 19:33:42 2007  Eric Hodel  <drbrain@segment7.net>
12431         * lib/open-uri.rb:  Fix method redefined warning.  [ruby-core:14304]
12433 Sun Dec 23 18:31:49 2007  NARUSE, Yui <naruse@ruby-lang.org>
12435         * ext/nkf/nkf.c (rb_nkf_enc_get): use rb_define_dummy_encoding.
12437         * ext/nkf/nkf.c (Init_nkf): use rb_nkf_enc_get("ASCII").
12439         * ext/nkf/nkf-utf8/nkf.c: Update 1.161.
12441         * ext/nkf/nkf-utf9/config.h: default output encoding is now UTF-8.
12443         * ext/nkf/lib/kconv.rb (Kconv.kconv): replace Encoding#name by
12444           Encoding#to_s.
12446 Sun Dec 23 18:02:52 2007  Eric Hodel  <drbrain@segment7.net>
12448         * lib/rubygems/gem_open_uri.rb:  Fix version check.
12450 Sun Dec 23 17:24:48 2007  Tanaka Akira  <akr@fsij.org>
12452         * encoding.c (rb_enc_init): add eucJP as an alias of EUC-JP.
12454 Sun Dec 23 17:00:23 2007  Tanaka Akira  <akr@fsij.org>
12456         * lib/time.rb (Time.httpdate): use Time.utc for
12457           "day-of-week, dd-mon-yy HH::MM:SS GMT" format.
12459 Sun Dec 23 16:12:40 2007  Eric Hodel  <drbrain@segment7.net>
12461         * lib/rdoc:  Fix 1.9 warnings.
12463 Sun Dec 23 15:28:37 2007  Eric Hodel  <drbrain@segment7.net>
12465         * lib/rubygems, test/rubygems:  Fix new 1.9 warnings.
12467 Sun Dec 23 14:43:10 2007  Eric Hodel  <drbrain@segment7.net>
12469         * gem_prelude.rb:  Use require to load rubygems.rb so the correct path
12470           is in $LOADED_FEATURES on RubyGems upgrade.
12472 Sun Dec 23 11:26:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12474         * string.c (sym_call): use exact argument array interface.
12475           [ruby-core:14279]
12477 Sun Dec 23 11:01:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12479         * io.c (rb_io_binmode_m): removed C99ism.
12481 Sun Dec 23 10:23:23 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12483         * transcode_data_one_byte.c: Better (and more honest) optimization.
12485         * transcode_data_japanese.c: First optimization step.
12487 Sun Dec 23 09:07:02 2007  Tanaka Akira  <akr@fsij.org>
12489         * include/ruby/encoding.h, encoding.c, re.c, io.c, parse.y, numeric.c,
12490           ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding to
12491           rb_ascii8bit_encoding.  rb_ascii_encoding is ambiguous with
12492           ASCII-8BIT and US-ASCII.
12494 Sun Dec 23 03:35:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12496         * version.h: use patchlevel if revision is not set.
12498         * {bcc32,win{32,ce}}/setup.mak (-version-): skip including revision.h.
12500         * common.mk (srcs): new target to generated sources.
12502         * common.mk (encs, ext/ripper/ripper.c): MAKEFLAGS needs -.
12504         * enc/depend, enc/make_encmake.rb: use erb.
12506 Sun Dec 23 01:56:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12508         * io.c (rb_io_mode_enc): do not set encoding unless explicitly
12509           specified.
12511         * io.c (rb_io_check_readable): fill fptr->enc by default_external
12512           if it's empty.
12514         * io.c (io_enc_str): fptr->enc is always set for reading IO (by
12515           rb_io_check_readable(fptr)).
12517 Sun Dec 23 01:18:06 2007  David Flanagan  <david@davidflanagan.com>
12519         * io.c, io.h: temporary patch to partially implement
12520           transcode-on-read and transcode-on-write
12522 Sun Dec 23 00:48:05 2007  Shugo Maeda  <shugo@ruby-lang.org>
12524         * test/net/imap/test_imap.rb: added tests for SSL.
12526 Sat Dec 22 21:10:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12528         * ext/syck/rubyext.c (syck_genericresolver_node_import): should
12529           not set instance variable "@kind" before initializing it.
12530           [ruby-dev:32677]
12532 Sat Dec 22 19:52:23 2007  Koichi Sasada  <ko1@atdot.net>
12534         * bootstraptest/test_objectspace.rb: fix condition.
12536 Sat Dec 22 19:17:10 2007  Koichi Sasada  <ko1@atdot.net>
12538         * ext/probeprofiler/: removed.
12540 Sat Dec 22 19:14:38 2007  Koichi Sasada  <ko1@atdot.net>
12542         * process.c (rb_f_fork): Unsupport Kernel.fork() on NetBSD.
12544 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12546         * test/ruby/test_transcode.rb: Added simple tests for
12547           EUC-JP and Shift_JIS and tests for ASCII-only range
12549 Sat Dec 22 18:20:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12551         * common.mk (version.o): add dependency. [ruby-dev:32680]
12553 Sat Dec 22 17:45:11 2007  NARUSE, Yui <naruse@ruby-lang.org>
12555         * ext/nkf/nkf.c (Init_nkf): use rb_ascii_encoding() for
12556           rb_nkf_enc_get("US-ASCII").
12557           * if use rb_nkf_enc_get("US-ASCII"), ruby will crash - this is bug?
12559 Sat Dec 22 17:39:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12561         * lib/mkmf.rb ($extmk): fixed broken condition.
12563 Sat Dec 22 17:35:59 2007  NARUSE, Yui <naruse@ruby-lang.org>
12565         * ext/nkf/nkf-utf8.c: Update nkf.c rev:1.157.
12567         * ext/nkf/nkf.c (rb_nkf_enc_get): replicate proper based encoding.
12569         * ext/nkf/kconv.c (Kconv#kconv, to*): use self.encoding as from_enc
12570           when from_enc isn't given.
12572 Sat Dec 22 17:06:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12574         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext.build): removed.
12576         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext#set_params):
12577           new method to set suitable SSL parameters.
12579         * lib/net/pop.rb, lib/net/http.rb, lib/net/imap.rb,
12580           test/openssl/test_ssl.rb: follow above change.
12582         * test/net/http/test_https.rb: refine error case.
12584 Sat Dec 22 16:58:49 2007  Shugo Maeda  <shugo@ruby-lang.org>
12586         * lib/net/imap.rb (encode_utf7): accept UTF-8 strings.
12588         * lib/net/imap.rb (decode_utf7): return UTF-8 strings.
12590 Sat Dec 22 15:56:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12592         * transcode_data_japanese: typo.
12594 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12596         * ChangeLog: Information for last patch got lost, fixed
12598 Sat Dec 22 15:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12600         * transcode_data_one_byte: slightly optimized
12602         * transcode_data_japanese: new data file for EUC-JP and SHIFT_JIS
12603           (not yet optimized; tests to follow; data from
12604           http://nkf.sourceforge.jp/ucm/{SJIS|eucJP}-nkf.ucm)
12606         * common.mk, transcode.c: Adjusted for transcode_data_japanese
12608 Sat Dec 22 15:30:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12610         * */Makefile.sub (MFLAGS): define unless defined.
12612 Sat Dec 22 15:17:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12614         * lib/mkmf.rb ($extmk): set true only when under ext/ or tool/.
12616 Sat Dec 22 15:14:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12618         * common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
12620         * configure.in (STRINGIZE): stringizing macro.
12622         * include/ruby/defines.h (STRINGIZE): fallback.
12624         * tool/make-snapshot: new file.
12626         * version.c (ruby_description, ruby_copyright): string constants for
12627           -v option.
12629 Sat Dec 22 15:03:37 2007  Shugo Maeda  <shugo@ruby-lang.org>
12631         * lib/net/imap.rb (initialize): fixed documentation.
12633 Sat Dec 22 15:01:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
12635         * lib/net/pop.rb (enable_ssl): use OpenSSL::SSL::SSLContext.build
12636           instead of SSLContext.new (default verify mode is now
12637           OpenSSL::SSL::VERIFY_PEER).
12639 Sat Dec 22 14:45:21 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12641         * lib/date.rb: shouldn't freeze nil. [ruby-dev:32677]
12643 Sat Dec 22 14:27:27 2007  Tanaka Akira  <akr@fsij.org>
12645         * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c.
12647         * regenc.h (onigenc_ascii_is_code_ctype): declared.
12649         * enc/ascii.c: use onigenc_ascii_is_code_ctype.
12651         * enc/us_ascii.c: new file for US-ASCII.
12653 Sat Dec 22 14:30:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12655         * parse.y (reg_named_capture_assign_iter): allows non-ascii names and
12656           get rid of reserved word IDs.
12658 Sat Dec 22 14:18:45 2007  Koichi Sasada  <ko1@atdot.net>
12660         * test/ruby/test_float.rb, test_sprintf.rb: fix test place.
12662 Sat Dec 22 14:17:02 2007  Koichi Sasada  <ko1@atdot.net>
12664         * bootstraptest/test_objectspace.rb: skip frozen string.
12666 Sat Dec 22 14:02:58 2007  Koichi Sasada  <ko1@atdot.net>
12668         * array.c (rb_ary_permutation): add volatile to avoid GC problem.
12670 Sat Dec 22 11:47:42 2007  Koichi Sasada  <ko1@atdot.net>
12672         * eval.c (rb_obj_instance_eval): use class of immediate objects.
12674         * test/ruby/test_eval.rb: fix a test.
12676 Sat Dec 22 11:37:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12678         * encoding.c (rb_locale_charmap): win32 support.
12680 Sat Dec 22 11:31:14 2007  Eric Hodel  <drbrain@segment7.net>
12682         * gem_prelude.rb:  Place bin dir before lib dir so gem bin stubs work.
12684 Sat Dec 22 11:05:44 2007  Jim Weirich  <jim@tardis.local>
12686         * lib/rake.rb (Rake): Added Rake and related libraries to the
12687           source code base.
12689 Sat Dec 22 10:30:45 2007  Koichi Sasada  <ko1@atdot.net>
12691         * tool/insns2vm.rb: moved from lib/vm/instruction.rb.
12693 Sat Dec 22 10:25:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12695         * parse.y (reg_named_capture_assign_iter): captured name should
12696           not be reserved word.  a patch from Keita Yamaguchi
12697           <keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
12699         * parse.y (reg_named_capture_assign_iter): just ignore the
12700           captures that do not have valid local variable name.
12702 Sat Dec 22 10:19:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12704         * eval.c (rb_f_method_name): now __method__ and __callee__ are
12705           aliases.  [ruby-core:14244]
12707 Sat Dec 22 08:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12709         * string.c (rb_str_buf_append): improvement for non-broken coded
12710           strings.
12712 Sat Dec 22 06:30:04 2007  Koichi Sasada  <ko1@atdot.net>
12714         * bootstraptest/test_fork.rb: skip if fork is not unsupported.
12716         * bootstraptest/test_io.rb: skip if require failed.
12718 Sat Dec 22 06:09:12 2007  David Flanagan  <david@davidflanagan.com>
12720         * io.c: fix typo in rdoc comment
12722 Sat Dec 22 05:09:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12724         * parse.y (parser_str_new, rb_intern3): rb_default_encoding() renamed.
12726         * ext/nkf/nkf.c (rb_nkf_putchar): ditto.
12728 Sat Dec 22 03:54:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12730         * encoding.c (rb_ascii_encoding): renamed from previous
12731           rb_default_encoding().
12733 Sat Dec 22 02:49:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12735         * parse.y (command): block from cmd_brace_block was ignored.
12736           [ruby-dev:32644]
12738         * re.c (rb_reg_prepare_re): stop ENCODING_NONE warning if the
12739           encoding of the str is ASCII-8BIT.
12741 Sat Dec 22 01:52:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12743         * io.c (io_ungetc): avoid buffer relocation, which might cause
12744           serious problem under concurrent situation.
12746 Sat Dec 22 01:35:41 2007  Tanaka Akira  <akr@fsij.org>
12748         * re.c (ARG_ENCODING_NONE): defined for /.../n option.
12749           (REG_ENCODING_NONE): ditto.
12750           (rb_char_to_option_kcode): return ARG_ENCODING_NONE for n.
12751           (rb_reg_prepare_re): warn /ascii/n =~ "non-ascii".
12752           (rb_reg_initialize): set REG_ENCODING_NONE from ARG_ENCODING_NONE.
12754 Sat Dec 22 01:23:10 2007  Shugo Maeda  <shugo@ruby-lang.org>
12756         * test/json/test_json_addition.rb (test_core): do not use Time.now
12757           because JSON can't hold nsec.
12759 Sat Dec 22 01:10:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12761         * ext/tk/sample/tkextlib/vu/canvSticker2.rb,
12762           ext/tk/sample/demos-{en,jp}/bind.rb: fix typo. [ruby-dev:32668]
12764 Sat Dec 22 00:56:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12766         * sample/test.rb (valid_syntax): force_encoding input script.
12768 Fri Dec 21 23:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12770         * lib/mkmf.rb (depend_rules): suffixes list broken. fixed.
12772 Fri Dec 21 20:18:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12774         * bignum.c (rb_big_mul0): remove unused variable.
12776         * bignum.c (bigdivrem): ditto.
12778 Fri Dec 21 20:13:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12780         * include/ruby/ruby.h (rb_catch_obj, rb_throw_obj): prototyped.
12782         * include/ruby/intern.h (rb_fiber_alive_p): prototyped.
12784 Fri Dec 21 20:09:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12786         * string.c (rb_str_succ): retry increasing until valid char is found.
12788 Fri Dec 21 20:00:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12790         * encoding.c (rb_enc_replicate): now creates first class encoding.
12792         * encoding.c (rb_define_dummy_encoding): always based on the default
12793           encoding.
12795         * encoding.c (rb_enc_dummy_p): check if dummy.
12797         * encoding.c (enc_inspect): shows if dummy.
12799         * encoding.c (Init_Encoding): added dummy? method
12801         * include/ruby/encoding.h (ENCODING_INLINE_MAX): increased.
12803 Fri Dec 21 18:40:54 2007  Koichi Sasada  <ko1@atdot.net>
12805         * io.c: write() should be in blocking region.
12807         * bootstraptest/test_io.rb, test_knownbug.rb: move a fixed test.
12809 Fri Dec 21 17:56:30 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
12811         * ext/tk/tcltklib.c: provisional support on Ruby-VM.
12813         * ext/tk/MANUAL_tcltklib.eng, ext/tk/MANUAL_tcltklib.eucj:
12814           modify document about new functions.
12816         * ext/tk/lib/tk.rb, ext/tk/lib/tk/labelframe.rb,
12817           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/toplevel.rb,
12818           ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/message.rb,
12819           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/text.rb,
12820           ext/tk/lib/tk/scale.rb, ext/tk/lib/tk/entry.rb,
12821           ext/tk/lib/tk/ttk_selector.rb, ext/tk/lib/tk/menu.rb,
12822           ext/tk/lib/tk/label.rb, ext/tk/lib/tk/spinbox.rb,
12823           ext/tk/lib/tk/textmark.rb, ext/tk/lib/tk/winpkg.rb,
12824           ext/tk/lib/tk/checkbutton.rb, ext/tk/lib/tk/panedwindow.rb,
12825           ext/tk/lib/tk/texttag.rb, ext/tk/lib/tk/root.rb,
12826           ext/tk/lib/tk/textimage.rb, ext/tk/lib/tk/radiobutton.rb,
12827           ext/tk/lib/tk/package.rb, ext/tk/lib/tk/macpkg.rb,
12828           ext/tk/lib/tk/composite.rb, ext/tk/lib/tk/autoload.rb,
12829           ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/button.rb,
12830           ext/tk/lib/tk/textwindow.rb,
12831           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb,
12832           ext/tk/lib/tkextlib/tile/style.rb,
12833           ext/tk/lib/tkextlib/tile/tscrollbar.rb,
12834           ext/tk/lib/tkextlib/tile/tpaned.rb, ext/tk/lib/tkextlib/tile.rb,
12835           ext/tk/extconf.rb: support Tcl/Tk8.5 (partial, not complete).
12837         * ext/tk/sample/demos-jp/widget,
12838           ext/tk/sample/demos-jp/pendulum.rb,
12839           ext/tk/sample/demos-jp/bind.rb,
12840           ext/tk/sample/tkextlib/vu/canvSticker2.rb,
12841           ext/tk/sample/demos-en/pendulum.rb,
12842           ext/tk/sample/demos-en/bind.rb: remove $KCODE and minor bug fix.
12844 Fri Dec 21 17:49:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12846         * transcode.c (rb_str_transcode_bang): returns self if no conversion.
12847           [ruby-dev:32662]
12849 Fri Dec 21 17:44:47 2007  Eric Hodel  <drbrain@segment7.net>
12851         * lib/rubygems*:  Update to RubyGems 1.0.1, r1581
12853 Fri Dec 21 17:32:49 2007  Koichi Sasada  <ko1@atdot.net>
12855         * bootstraptest/pending.rb: renamed from featurebug.rb.
12856           This file contains bugs which is known but will not be
12857           fixed in days.
12859 Fri Dec 21 17:31:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12861         * debug.c (dummy_gdb_enums.various): added ENCODING and CODERANGE
12862           constants.
12864         * .gdbinit: use enum constants.
12866 Fri Dec 21 17:28:17 2007  Koichi Sasada  <ko1@atdot.net>
12868         * bootstraptest/featurebug.rb: added.
12870         * bootstraptest/test_knownbug.rb: move a feature bug.
12872 Fri Dec 21 17:25:22 2007  Koichi Sasada  <ko1@atdot.net>
12874         * thread.c (rb_thread_atfork): fix to mark thread object.
12875           [ruby-dev:32404]
12877         * bootstraptest/test_knownbug.rb, test_fork.rb: move a fixed test.
12879 Fri Dec 21 17:07:13 2007  Koichi Sasada  <ko1@atdot.net>
12881         * gc.h: extern variable should not be initialized.
12883         * thread_pthread.c: add a parameter.
12885 Fri Dec 21 16:50:43 2007  Tanaka Akira  <akr@fsij.org>
12887         * encoding.c (Init_Encoding): use enc_name as to_s.
12888           (enc_inspect): renamed from enc_to_s.  add "#" at beginning.
12890 Fri Dec 21 16:37:43 2007  NARUSE, Yui <naruse@ruby-lang.org>
12892         * ext/nkf/nkf-utf8/config.h (MIME_DECODE_DEFAULT, X0201_DEFAULT):
12893          defined as FALSE.  nkf and kconv don't decode MIME encoded string
12894          and don't convert JIS X 0201 Katakana.
12896         * test/nkf/test_kconv.rb: fix tests.
12898 Fri Dec 21 16:33:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12900         * enumerator.c (enumerator_iter_i): adjusted for rb_block_call_func.
12902         * include/ruby/ruby.h (rb_block_call_func): function to be called back
12903           as block.
12905 Fri Dec 21 16:25:25 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12907         * common.mk, transcode_data_iso_8859.c: renamed to
12908           transcode_data_one_byte.c.
12910 Fri Dec 21 16:10:30 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
12912         * ext/bigdecimal/bigdecimal.c (VpMidRound): Round method bug
12913           pointed by Ryan Platte fixed(Patch to the patch from "NATORI
12914           Shin").  [ruby-talk:273360]
12916 Fri Dec 21 16:06:13 2007  Tanaka Akira  <akr@fsij.org>
12918         * re.c (append_utf8): use rb_utf8_encoding() instead of
12919           rb_enc_find("utf-8").
12921 Fri Dec 21 15:59:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12923         * encoding.c (rb_enc_init): use enc_register_at() directly.
12925         * encoding.c (rb_utf8_encoding): returns utf-8 encoding.
12927         * include/ruby/encoding.h (rb_utf8_encoding): prototyped.
12929         * parse.y (UTF8_ENC): uses rb_utf8_encoding().
12931 Fri Dec 21 15:31:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12933         * io.c (rb_io_s_read): allow specifying encoding explicitly.
12935         * io.c (rb_io_binmode): specifies encoding to ASCII-8BIT (binary).
12937         * io.c (rb_io_s_read): IO should be in binary mode when offset is
12938           specified.
12940         * encoding.c (rb_to_encoding): returns default encoding if no
12941           corresponding encoding found.
12943 Fri Dec 21 15:24:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
12945         * lib/net/imap.rb (initialize): accept service name.  changed
12946           the default value of the old style +verify+ argument to true.
12948 Fri Dec 21 15:15:44 2007  Tanaka Akira  <akr@fsij.org>
12950         * gc.c (rb_garbage_collect): new function for debugging.
12952 Fri Dec 21 15:16:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12954         * encoding.c (rb_to_encoding_index): should return error instead of
12955           exception even if type is incorrect.
12957 Fri Dec 21 14:58:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12959         * enumerator.c (enumerator_init_copy): prohibit cloning of
12960           generators since Fibers cannot be copied.
12962         * enumerator.c (enumerator_init_copy): typo fixed.
12964 Fri Dec 21 14:46:07 2007  Tanaka Akira  <akr@fsij.org>
12966         * io.c (Init_IO): define IO::BINARY even if O_BINARY is not exist.
12968 Fri Dec 21 14:01:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12970         * test/ruby/test_system.rb (TestSystem::valid_syntax): apply
12971           ASCII-8BIT encoding explicitly.
12973         * re.c (rb_reg_prepare_re): add encoding name in the message.
12975 Fri Dec 21 13:54:05 2007  Tanaka Akira  <akr@fsij.org>
12977         * re.c: change "character encodings differ" error messages.
12979 Fri Dec 21 13:46:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12981         * encoding.c (rb_enc_register): set encoding constant.
12983         * encoding.c (rb_enc_find_index): replace non-alphanumeric chars with
12984           underscores, so that initialize function can be called.
12986         * encoding.c (rb_enc_find_index): extension libraries have lower case
12987           names conventionally.
12989         * ruby.c (proc_options, process_options): finds encoding after
12990           load_path is initialized.
12992 Fri Dec 21 13:10:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12994         * io.c (rb_io_external_encoding): new method.
12996         * encoding.c (rb_enc_from_encoding): returns Qnil for NULL
12997           encoding.
12999         * io.c (rb_io_external_encoding): should fill delayed
13000           initialization for STDIN.
13002 Fri Dec 21 13:09:11 2007  Tanaka Akira  <akr@fsij.org>
13004         * encoding.c (rb_locale_charmap): return nil if no locale information.
13006 Fri Dec 21 12:55:39 2007  Tanaka Akira  <akr@fsij.org>
13008         * lib/runit, lib/rubyunit.rb, test/testunit/runit: removed.
13010 Fri Dec 21 12:45:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13012         * string.c (rb_str_chomp_bang): avoid unnecessary loop using
13013           ONIGENC_LEFT_ADJUST_CHAR_HEAD().
13015 Fri Dec 21 12:32:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13017         * file.c (Init_File): File.exists? revived.
13019         * dir.c (Init_Dir): Dir.exists? again.
13021 Fri Dec 21 12:26:36 2007  Koichi Sasada  <ko1@atdot.net>
13023         * compile.c: remove "illegal".
13025 Fri Dec 21 12:22:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13027         * keywords, parse.y (__ENCODING__): represent script encoding.
13029 Fri Dec 21 12:16:50 2007  Tanaka Akira  <akr@fsij.org>
13031         * string.c (rb_str_is_ascii_only_p): new method ascii_only?.
13033 Fri Dec 21 12:11:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13035         * io.c (rb_io_mode_enc): set default external encoding if no
13036           encoding specified explicitly.
13038 Fri Dec 21 12:00:34 2007  Tanaka Akira  <akr@fsij.org>
13040         * configure.in: check langinfo.h and locale.h.
13042         * encoding.c: use langinfo.h only if available.
13044         * main.c: use locale.h only if available.
13046 Fri Dec 21 11:47:56 2007  Tanaka Akira  <akr@fsij.org>
13048         * encoding.c: include locale.h
13049           (rb_locale_charmap): new method Encoding.locale_charmap for
13050           nl_langinfo(CODESET).
13052         * include/ruby/encoding.h (rb_locale_charmap): declared.
13054         * main.c (main): call setlocale with LC_CTYPE.
13056         * ruby.c (locale_encoding): use rb_locale_charmap.
13058 Fri Dec 21 11:35:10 2007  Koichi Sasada  <ko1@atdot.net>
13060         * vm.c, vm_dump.c: fix typo.  Reported by Yuki Mitsui.
13062 Fri Dec 21 11:28:00 2007  Tanaka Akira  <akr@fsij.org>
13064         * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
13065           compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
13066           ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
13067           ext/openssl/ossl_bn.c, numeric.c, vm.c,
13068           benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
13069           for non law violation context.
13071 Fri Dec 21 11:23:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13073         * common.mk (enc.mk): depends on $(RBCONFIG) instead of rbconfig.rb.
13075         * encoding.c (Init_Encoding): ISO-8859-1 is no longer a replica.
13077         * regenc.h (OnigEncodingDefine): names of extension and encoding can
13078           differ.
13080         * enc/Makefile.in: always shared.
13082         * enc/depend (deffile): should not upcase.
13084         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: fix for Init.
13086 Fri Dec 21 09:26:48 2007  Tanaka Akira  <akr@fsij.org>
13088         * tool/compile_prelude.rb: use erb.
13090 Fri Dec 21 08:07:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13092         * enumerator.c (enumerator_next): should call next_init() if fiber
13093           is dead already. [ruby-dev:32459]
13095 Fri Dec 21 01:21:49 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13097         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
13098           enable CRL checking by default.
13100 Fri Dec 21 01:20:56 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13102         * lib/net/http.rb (Net::HTTP#connect): use
13103           OpenSSL::SSL::SSLContext.build instead of SSLContext.new (default
13104           verify mode is now OpenSSL::SSL::VERIFY_PEER).
13106         * lib/net/https.rb: SSL parameters are defined by attr_accessor.
13108         * test/net/http/test_https.rb: add test for HTTPS features.
13110 Fri Dec 21 01:11:37 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13112         * io.c (select_internal): should return original value.
13114 Fri Dec 21 00:26:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13116         * string.c (tr_trans): wrong encoding check for tree strings.
13118         * test/ruby/test_m17n.rb (TestM17N::test_tr_s): "invalid mbstring
13119           sequence" is not an error to be tested.
13121         * test/ruby/test_m17n.rb (TestM17N::test_tr): ditto.
13123 Thu Dec 20 19:29:07 2007  Shugo Maeda  <shugo@ruby-lang.org>
13125         * lib/net/imap.rb (initialize): the second argument is an option
13126           hash now.  use SSLContext.build to specify SSL parameters.
13128 Thu Dec 20 19:11:56 2007  Koichi Sasada  <ko1@atdot.net>
13130         * thread_pthread.c (native_thread_apply_priority): check
13131           _POSIX_PRIORITY_SCHEDULING for OpenBSD.
13133 Thu Dec 20 18:33:54 2007  Koichi Sasada  <ko1@atdot.net>
13135         * configure.in: add libthr for FreeBSD.
13137 Thu Dec 20 18:17:14 2007  Koichi Sasada  <ko1@atdot.net>
13139         * common.mk, *.ci: renamed to *.c.
13141         * eval_load.c: renamed to load.c.
13143 Thu Dec 20 17:36:01 2007  Eric Hodel  <drbrain@segment7.net>
13145         * lib/rubygems*:  Import RubyGems 1.0.0, r1575.
13147 Thu Dec 20 17:18:38 2007  Koichi Sasada  <ko1@atdot.net>
13149         * proc.c: support Proc#binding.
13151         * sample/test.rb: add a test.
13153 Thu Dec 20 17:15:15 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13155         * pack.c: Slight change to documentation ('character' ->
13156           'byte (C char)'). [ruby-core:13126], see also [ruby-core:13998].
13158 Thu Dec 20 17:07:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13160         * common.mk (enc.mk): depends on rbconfig.rb.
13162         * regenc.h (OnigEncodingDefine): external encoding definition macro.
13164         * enc/Makefile.in: fix for linking.
13166         * enc/depend, enc/make_encmake.rb: fix for Windows.
13168         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: renamed.
13170 Thu Dec 20 16:42:55 2007  Koichi Sasada  <ko1@atdot.net>
13172         * iseq.c (find_line_no): return 0 if not found.
13174 Thu Dec 20 16:04:17 2007  Koichi Sasada  <ko1@atdot.net>
13176         * insnhelper.ci, vm.c, vm_core.h: change interface of
13177           vm_invoke_block() to specify block ptr.  [ruby-talk:266422]
13179         * cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c:
13180           apply above change.
13182         * bootstraptest/test_knownbug.rb: move fixed bug.
13184         * bootstraptest/test_block.rb: ditto. and add a test.
13186 Thu Dec 20 15:47:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13188         * enc/iso_8859_{1..16}.c: renamed.
13190 Thu Dec 20 09:59:27 2007  Koichi Sasada  <ko1@atdot.net>
13192         * insnhelper.ci (vm_expandarray): fix sp increase place.
13193           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
13195         * bootstraptest/test_massign.rb: add a test for above.
13197         * bootstraptest/test_syntax.rb: fix last committed test.
13199 Thu Dec 20 09:47:58 2007  Koichi Sasada  <ko1@atdot.net>
13201         * bootstraptest/test_syntax.rb: add a test.
13203 Thu Dec 20 09:40:51 2007  Koichi Sasada  <ko1@atdot.net>
13205         * compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
13207 Thu Dec 20 09:42:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13209         * bignum.c (big2str_orig): access beyond memory region cause crash
13210           on interrupt.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in
13211           [ruby-dev:32651].  [ruby-dev:32641]
13213 Thu Dec 20 09:06:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13215         * string.c (rb_str_index): wrong starting position.
13217 Thu Dec 20 06:34:27 2007  Koichi Sasada  <ko1@atdot.net>
13219         * compile.c (iseq_compile_each): add pop after throw as return.
13221         * bootstraptest/test_knownbug.rb, test_syntax.rb: move resolved test.
13223         * vm_core.h, iseq.c, compile.h: add debug output code.
13225 Thu Dec 20 04:57:18 2007  Koichi Sasada  <ko1@atdot.net>
13227         * compile.c (iseq_compile_each): remove unused retry entry.
13229 Thu Dec 20 04:15:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13231         * */Makefile.sub (DEFS, RM): output to config.status.
13233 Thu Dec 20 02:59:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13235         * common.mk (encs): create encoding directory.
13237 Thu Dec 20 02:50:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13239         * enc/iso8859_{1..16}.c: adjust for ruby.
13241 Thu Dec 20 02:28:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13243         * enc/iso8859_{1..16}.c: imported from Onigiruma 5.9.0.
13245 Thu Dec 20 02:23:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13247         * enc/Makefile.in (RM): added.
13249         * enc/depend (encs): sort in alpha-numeric order.
13251         * enc/depend (clean, distclean): added.
13253 Thu Dec 20 01:10:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13255         * compile.c (iseq_compile_each): should handle upper level eval iseq
13256           from break/next, and COMPILE_ERROR() breaks only one block.
13257           [ruby-dev:31372]
13259 Thu Dec 20 00:07:36 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
13261         * test/drb/drbtest.rb (test_07_public_private_protected_missing):
13262           followed current Ruby specification.
13264 Wed Dec 19 23:57:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13266         * dir.c (dir_inspect, dir_path, dir_tell): check for frozen and closed
13267           is not needed.  [ruby-dev:32640]
13269 Wed Dec 19 22:59:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13271         * string.c (str_sublen): adjust position if position is not at the
13272           head of a character.
13274         * string.c (rb_str_chomp_bang): check if match start at the head
13275           of a character.
13277         * string.c (rb_str_chomp_bang): wrong adjust condition.
13279         * string.c (rb_str_rindex): comparison length should be based on
13280           bytes, not characters.
13282         * string.c (rb_str_rindex_m): too much adjustment.
13284         * re.c (reg_match_pos): pos adjustment should be based on
13285           characters.
13287         * test/ruby/test_m17n.rb (TestM17N::test_str_insert): test updated
13288           to check negative offset behavior.
13290         * string.c (rb_str_each_line): should consider rslen.
13292         * string.c (rb_str_buf_append): should propagate encoding.
13294         * string.c (rb_str_each_line): ditto.
13296         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): should
13297           check encoding as well.
13299         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): empty
13300           array can not propagate encoding;  should not check.
13302 Wed Dec 19 21:42:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13304         * re.c (rb_reg_regsub): should set checked encoding.
13306         * string.c (rb_str_sub_bang): applied r14212 too.
13308 Wed Dec 19 20:40:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13310         * bignum.c (bigmul1): C99ism.
13312         * bignum.c (bigdivrem1): need dummy return value.
13314 Wed Dec 19 19:18:06 2007  NARUSE, Yui <naruse@ruby-lang.org>
13316         * ext/nkf/nkf-utf8/nkf.c: Updated.
13318         * ext/nkf/nkf.c (rb_nkf_enc_get): added.
13319           (find encoding or replicate default encoding)
13321         * ext/nkf/nkf.c (NKF::<ENCODING>): redefine encoding constant.
13323         * ext/nkf/lib/kconv.rb (Kconv::<ENCODING>): redefined as Encoding.
13325         * ext/nkf/lib/kconv.rb: refactoring.
13327 Wed Dec 19 19:11:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13329         * bignum.c (rb_big_mul0): blocking check for bigger numbers.
13330           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32632].
13332         * bignum.c (bigdivrem): ditto.
13334 Wed Dec 19 17:34:50 2007  Koichi Sasada  <ko1@atdot.net>
13336         * compile.c (iseq_compile_each): remove "retry" in block.
13337           ("iter{retry}" cause syntax error)
13338           Currently, "begin; ...; rescue; iter{retry}; end" cause
13339           syntax error too.
13341         * bootstraptest/test_jump.rb: ditto.
13343         * lib/drb/invokemethod.rb: ditto.
13345         * sample/drb/darrayc.rb: ditto.
13347         * sample/test.rb: ditto.
13349         * test/drb/drbtest.rb: ditto.
13351         * test/ruby/test_iterator.rb: ditto.
13353         * sample/test.rb: add a 'test' directory on the SYSTEM test.
13355 Wed Dec 19 17:12:59 2007  Koichi Sasada  <ko1@atdot.net>
13357         * bootstraptest/test_knownbug.rb, test_block.rb:
13358           move fixed bug.
13360         * bootstraptest/test_m17n.rb: added.
13362 Wed Dec 19 16:59:55 2007  Koichi Sasada  <ko1@atdot.net>
13364         * eval.c (errinfo_place): skip if error is Fixnum.  [ruby-dev:32608]
13366         * bootstraptest/test_exception.rb, test_known_bug.rb: move fixed bug.
13368 Wed Dec 19 16:31:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13370         * parse.y (reg_named_capture_assign_iter): remove C99 dependency.
13372         * parse.y (reg_named_capture_assign_iter): get rid of creating
13373           unnecessary ID.
13375         * parse.y (rb_enc_symname2_p): check for non-nul-terminated string.
13377 Wed Dec 19 15:37:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13379         * insnhelper.ci (vm_yield_with_cfunc): call cfunc with
13380            (argv[0], data, argc, argv) to pass all arguments.
13382         * enumerator.c (enumerator_each_i): adapted to new calling
13383           convention.
13385 Wed Dec 19 15:13:20 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13387         * string.c (rb_str_justify): should propagate encoding from pad
13388           string too.
13390 Wed Dec 19 13:57:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13392         * configure.in (TIMEZONE_VOID): check whether timezone requires zero
13393           arguments.  [ruby-dev:32631]
13395 Wed Dec 19 13:22:14 2007  NARUSE, Yui <naruse@ruby-lang.org>
13397         * ext/nkf/nkf.c (NKF::_ENCODING): removed.
13399         * ext/nkf/nkf.c (rb_nkf_kconv): renamed to rb_nkf_convert.
13401         * ext/nkf/nkf.c (rb_nkf_convert): set encoding.
13403         * ext/nkf/nkf.c (rb_nkf_guess1): removed.
13405         * ext/nkf/nkf.c (rb_nkf_guess2): renamed to rb_nkf_guess.
13407         * ext/nkf/nkf.c (rb_nkf_guess):
13408           guess method now returns encoding object.
13410         * ext/nkf/nkf-utf8/nkf.c: Update to nkf 2.0.8 2007-12-19.
13412 Wed Dec 19 10:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13414         * bignum.c (rb_cstr_to_inum): an underscore succeeding after octal
13415           prefix is allowed.  [ruby-core:14139]
13417 Wed Dec 19 00:09:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13419         * bignum.c (rb_cstr_to_inum): wrong radix check.  a patch from
13420           Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32628].
13422         * bignum.c (big2str_find_n1): ditto.
13424 Tue Dec 18 23:53:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13426         * compile.c (iseq_compile_each): fix for segfault.  [ruby-dev:31372]
13428 Tue Dec 18 23:44:32 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13430         * test/net/http/utils.rb: split TestNetHTTPUtils module from
13431           test/net/http/test_http.rb. and start HTTP server in each test case.
13433 Tue Dec 18 23:27:51 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13435         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
13436           should rescue Errno::EINVAL from TCPServer#accept. this exception
13437           might occur if the server socket is not in ready to listen.
13439         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
13440           don't call TCPServer#close if the :ShutdownSocketWithoutClose is set.
13442         * lib/webrick/config.rb (WEBrick::Config::General): add new parameter
13443           :ShutdownSocketWithoutClose.
13445 Tue Dec 18 22:51:47 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13447         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#shutdown):
13448           new method which calls TCPSocket#shutdown of the underlying socket.
13450 Tue Dec 18 22:11:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13452         * lib/rss/parser.rb, lib/rss/atom.rb, lib/rss/rss.rb,
13453           test/rss/rss-assertions.rb, test/rss/test_atom.rb: use
13454           pack/unpack("m") instead of base64 library.
13456         * lib/webrick/httpproxy.rb: use delete("\n") instead of chomp/chop
13457           because the result of pack("m") might be multi-line.
13459 Tue Dec 18 22:12:35 2007  Koichi Sasada  <ko1@atdot.net>
13461         * insnhelper.ci, vm.c: rewrite sp manipulation around method/block
13462           invocation.  [ruby-dev:32547]
13464 Tue Dec 18 22:11:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13466         * ext/dl/win32/lib/win32/sspi.rb: use pack/unpack("m") instead of
13467           base64 library which was already removed.
13469 Tue Dec 18 21:09:23 2007  Koichi Sasada  <ko1@atdot.net>
13471         * vm.c (invoke_block): merge 2 stack overflow checks.
13473 Tue Dec 18 20:58:35 2007  Koichi Sasada  <ko1@atdot.net>
13475         * compile.c, insnhelper.ci, insns.def, object.c, vm.c, vm.h:
13476           optimize !@, != method invocation.
13478         * id.c, id.h: ditto.
13480         * bootstraptest/test_syntax.rb: add tests for above.
13482 Tue Dec 18 18:10:05 2007  Koichi Sasada  <ko1@atdot.net>
13484         * bootstraptest/test_knownbug.rb: add issues.
13486 Tue Dec 18 20:22:44 2007  Tanaka Akira  <akr@fsij.org>
13488         * parse.y (arg tMATCH arg): call reg_named_capture_assign_gen if regexp
13489           literal is used.
13490           (reg_named_capture_assign_gen): assign the result of named capture
13491           into local variables.
13492           [ruby-dev:32588]
13494         * re.c: document the assignment by named captures.
13496 Tue Dec 18 18:09:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13498         * string.c (rb_str_splice): propagate encoding.
13500         * string.c (rb_str_subpat_set): ditto.
13502 Tue Dec 18 17:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13504         * object.c (rb_obj_freeze): preserve frozen state of immediate
13505           values in internal hash table, a la generic_ivar.
13507         * object.c (rb_obj_frozen_p): check immediate values too.
13509         * variable.c (generic_ivar_set): add frozen check fro immediate
13510           values.
13512 Tue Dec 18 17:04:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13514         * transcode.c (rb_str_transcode_bang, rb_str_transcode): set new
13515           encoding even if no conversion is done because of 7bit only.
13516           [ruby-dev:32591]
13518 Tue Dec 18 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13520         * common.mk (encs, ext/ripper/ripper.c): other options must come
13521           before MAKEFLAGS in GNU make.
13523 Tue Dec 18 15:19:55 2007  Eric Hodel  <drbrain@segment7.net>
13525         * lib/rdoc/parsers/parse_rb.rb: Don't call private fail anymore.
13527 Tue Dec 18 15:17:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13529         * common.mk (encs, ext/ripper/ripper.c): pass MAKEFLAGS.
13531 Tue Dec 18 14:45:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13533         * parse.y (op_tbl): remove duplication to avoid symbol aliases.
13535 Tue Dec 18 14:39:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13537         * string.c (str_nth): need not to raise out-of-range exception.
13539         * test/ruby/test_m17n.rb (TestM17N::test_str_aref_len): removed
13540           debug print.
13542 Tue Dec 18 14:05:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13544         * enc/depend: get rid of target expanded as empty for nmake.
13546 Tue Dec 18 07:56:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13548         * proc.c (rb_obj_public_method): Object#public_method to retrieve
13549           public method object.
13551         * proc.c (rb_mod_public_instance_method): Module#public_instance_method
13552           to retrieve public instance method from class / module.
13554         * proc.c (mnew): visibility check added.
13556         * eval_error.ci (rb_print_undef): add rb_ prefix.
13558         * eval_error.ci (rb_print_undef): add visibility in the error
13559           message.
13561 Tue Dec 18 05:54:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13563         * lib/Env.rb, lib/base64.rb, lib/importenv.rb, lib/eregex.rb: removed.
13565         * lib/ping.rb, lib/readbytes.rb: removed
13567 Tue Dec 18 02:30:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13569         * configure.in (BUILTIN_ENCS): removed.
13571         * common.mk (enc.mk): pass BUILTIN_ENCS from command line.
13573         * enc/depend: ditto.
13575         * enc/make_encmake.rb: ditto.
13577 Tue Dec 18 01:46:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13579         * sprintf.c (rb_str_format): need to clear output buffer to avoid
13580           broken encoding compatibility check.
13582 Tue Dec 18 01:40:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13584         * lib/mkmf.rb (depend_rules): inserts ruby to only headers.
13586 Tue Dec 18 01:21:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13588         * parse.y (parser_encode_length): chomp eol style modifiers.
13590         * parse.y (parser_magic_comment): ditto.
13592         * parse.y (set_file_encoding): ditto.
13594 Tue Dec 18 01:15:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13596         * common.mk (encs): added dependencies.
13598         * enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.
13600         * lib/mkmf.rb (depend_rules): now takes content string, not file name.
13602         * win32/enc-setup.mak: overrides default target.
13604 Tue Dec 18 00:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13606         * re.c (rb_reg_initialize): raise error if non-Unicode fixed
13607           encoding option is specified for regexp literals with \u{}
13608           escapes.
13610         * string.c (rb_str_squeeze_bang): should squeeze multibyte
13611           characters as well.
13613 Mon Dec 17 21:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13615         * win32/enc-setup.mak: extracts BUILTIN_ENCOBJS.
13617         * tool/compile_prelude.rb: needs srcdir.
13619 Mon Dec 17 21:24:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13621         * common.mk (miniprelude.c): add -I$(srcdir).
13623 Mon Dec 17 20:53:27 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13625         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ssl_version):
13626           new method OpenSSL::SSL::SSLContext#ssl_version to wrap
13627           SSL_CTX_set_ssl_version.
13629         * ext/openssl/ossl_ssl.c (ossl_ssl_get_verify_result):
13630           new method OpenSSL::SSL::SSLSocket#verify_result to wrap
13631           SSL_get_verify_result.
13633         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
13634           new method to build OpenSSL::SSL::SSLContext with Hash parameters.
13635           this method provides safety default parameters than SSLContext.new.
13637         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL.verify_certificate_identity):
13638           new module function: pull out identity verification process
13639           from OpenSSL::SSL::SSLSocket#post_connection_check.
13641 Mon Dec 17 18:42:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13643         * string.c (scan_once): need no encoding compatibility check.
13644           it's done inside of re_reg_search().
13646         * string.c (rb_str_split_m): ditto.
13648         * re.c (rb_reg_regsub): ditto.
13650 Mon Dec 17 17:50:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13652         * string.c (rb_str_index): check if substring is broken.
13654         * string.c (rb_str_rindex): ditto.
13656         * string.c (rb_str_succ): should carry over.
13658 Mon Dec 17 17:47:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13660         * common.mk (encs): new target to compile external encodings.
13662         * enc/Makefile.in: became a serb template.
13664         * enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.
13666         * lib/mkmf.rb (relative_from): moved from ext/extmk.rb.
13668         * lib/mkmf.rb ($extmk): true if under to top source directory, not
13669           only ext.
13671         * lib/mkmf.rb (depend_rules): extracted from create_makefile.
13673         * tool/serb.rb (serb): splitted from tool/compile_prelude.rb.
13675 Mon Dec 17 17:32:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13677         * configure.in (MAKEFILES): removed enc/Makefile.
13679         * configure.in (EXTERNAL_ENCOBJS, ENCSOS): removed.
13681         * enc/Makefile.in (BUILTIN_ENCS): includes .c suffix.
13683         * enc/depend: splitted from Makefile.in.
13685         * {bcc32,win32,wince}/setup.mak (-encs-): extracts BUILTIN_ENCOBJS.
13687 Mon Dec 17 17:07:53 2007  Tanaka Akira  <akr@fsij.org>
13689         * string.c (rb_enc_str_asciionly_p): use rb_enc_str_coderange.
13691 Mon Dec 17 16:39:25 2007  Tanaka Akira  <akr@fsij.org>
13693         * string.c (rb_enc_str_coderange): set ENC_CODERANGE_BROKEN using
13694           rb_enc_precise_mbclen.
13695           (rb_str_valid_encoding_p): just check coderange is
13696           ENC_CODERANGE_BROKEN or not.
13698 Mon Dec 17 16:04:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13700         * ext/openssl/lib/openssl/buffering.rb (Buffering#gets): added second
13701           optional argument to specify maximum length limit.
13703 Mon Dec 17 16:02:30 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13705         * lib/webrick/httprequest.rb, lib/webrick/cgi.rb: Request-Line or
13706           header fields should be read with maximum length. [ruby-talk:231745]
13708 Mon Dec 17 14:03:39 2007  Tanaka Akira  <akr@fsij.org>
13710         * include/ruby/encoding.h (ENC_CODERANGE_VALID): rename from
13711           ENC_CODERANGE_8BIT.
13713         * string.c (rb_enc_str_coderange): follow the renaming.
13715 Mon Dec 17 13:56:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13717         * string.c (tr_find): wrong condition fixed.
13719         * sprintf.c (rb_str_format): check encoding based on result, not
13720           the format string.
13722         * string.c (rb_str_upto): add encoding check.
13724 Mon Dec 17 12:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13726         * Makefile.in (RUNRUBY): added RUNRUBYOPT.
13728 Mon Dec 17 11:38:59 2007  Tanaka Akira  <akr@fsij.org>
13730         * thread_win32.ci (native_thread_create): initialize
13731           th->machine_stack_maxsize as rb_gc_stack_maxsize.
13733 Sun Dec 16 17:07:35 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13735         * transcode.c (transcode_loop): removed special case (-1)
13736           for undefined conversions.
13738         * transcode_data_iso_8859.c: Changed from character constants
13739           ('\xC2') to integer constants (0xC2) for shorter files and
13740           better readability; eliminated duplicated tables; changed
13741           from -1 offset to actual UNDEF entry (not yet distinguishing
13742           UNDEF and ILLEGAL correctly).
13744         * test/ruby/test_transcode.rb: added a test for UNDEF conversion.
13746 Sun Dec 16 14:51:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13748         * configure.in (MAKEFILES): should be enc/Makefile, not GNUmakefile.
13749           [ruby-dev:32609]
13751         * configure.in (BUILTIN_ENCS): removed escapes for OpenBSD.
13753 Sat Dec 15 23:58:46 2007  Tanaka Akira  <akr@fsij.org>
13755         * test/openssl/test_pair.rb (SSLPair#ssl_pair): join the thread, even
13756           on an error.
13758 Sat Dec 15 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
13760         * test/xmlrpc/webrick_testing.rb: join webrick server thread.
13762 Sat Dec 15 22:27:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13764         * configure.in (BUILTIN_ENCS): splitted command line instead of
13765           semicolons for Solaris.
13767 Sat Dec 15 21:38:24 2007  Tanaka Akira  <akr@fsij.org>
13769         * lib/timeout.rb: join the background thread to make sure it is dead.
13771 Sat Dec 15 20:20:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13773         * configure.in (enc/Makefile): add external encoding objects list.
13775         * common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.
13777         * configure.in (BUILTIN_ENCS): [] needs to be enclosed because of m4.
13779         * Makefile.in (BUILTIN_ENCOBJS): substituted by autoconf.
13781         * enc/Makefile.in: new file to compile external encoding sources.
13783         * encoding.c (rb_enc_find_index): auto-load external encoding objects
13784           as "ext/ENCODING_NAME".  [ruby-dev:32606]
13786 Sat Dec 15 13:04:30 2007  Tanaka Akira  <akr@fsij.org>
13788         * vm_core.h (rb_thread_t): new member machine_stack_maxsize and
13789           machine_register_stack_maxsize.
13791         * gc.c (rb_gc_stack_maxsize): new global variable for the thread size
13792           of the main thread.
13793           (STACK_LEVEL_MAX): use machine_stack_maxsize of current thread.
13794           (ruby_stack_check): check IA64 register stack.
13795           (ruby_set_stack_size): set rb_gc_stack_maxsize.
13796           (Init_stack): set rb_gc_stack_maxsize.
13798         * thread_pthread.ci (native_thread_create): initialize
13799           th->machine_stack_maxsize and th->machine_register_stack_maxsize.
13801         * vm.c (Init_BareVM): initialize th->machine_stack_maxsize and
13802           th->machine_register_stack_maxsize.
13804         * thread_win32.ci (native_thread_create): initialize
13805           th->machine_stack_maxsize.  not tested.  just a guess at all.
13807         [ruby-dev:32604]
13809 Sat Dec 15 12:58:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13811         * encoding.c (rb_enc_register, rb_enc_replicate, rb_enc_alias): check
13812           if already registered.
13814 Sat Dec 15 01:57:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13816         * lib/rdoc/options.rb (Options::parse): do not access $KCODE any
13817           longer.  [ruby-core:14079]
13819         * lib/irb/init.rb (IRB::IRB.parse_opts): ditto.
13821         * lib/cgi.rb (CGI::CGI): ditto.
13823 Fri Dec 14 18:18:31 2007  Tanaka Akira  <akr@fsij.org>
13825         * thread_pthread.ci (native_thread_create): twice the stack size.
13826           512KB is not enough to complete test-all on Debian GNU/Linux on
13827           IA64.
13829 Fri Dec 14 16:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13831         * io.c (rb_f_p): RDoc update.  a patch from murphy <murphy AT rubychan.de>.
13832           [ruby-core:14010]
13834 Fri Dec 14 16:06:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13836         * string.c (rb_str_cmp): encoding aware comparison.
13838         * string.c (rb_str_casecmp): ditto.
13840 Fri Dec 14 15:25:30 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13842         * transcode.c (encoding_equal): new function.
13844         * transcode.c (str_transcode, transcode_dispatch): added two-step
13845           conversion logic via UTF-8.
13847         * transcode.c: some minor formatting fixes
13849         * transcode_data.h, transcode_data_iso_8859.c: Shortened
13850           extremely frequently used macros to shorten file length.
13852         * test/ruby/test_transcode.rb: Fixed name of test class;
13853           added setup method to ensure all necessary encodings exist;
13854           split tests into more test methods; added tests; fixed ordering
13855           of arguments in assert_equal to have expected result first.
13857 Fri Dec 14 13:47:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13859         * common.mk (ruby.imp): fix for circular dependency.  a patch from
13860           Yutaka Kanemoto <kinpoco AT gmail.com> in [ruby-dev:32590].
13862         * regint.h, st.c, ext/json/ext/generator/generator.c: suppress
13863           warnings on AIX.
13865 Fri Dec 14 12:36:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13867         * configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined
13868           and its type.
13870         * configure.in (timezone, altzone): check for recent cygwin.
13872         * missing/strftime.c (strftime): fix for timezone.  [ruby-dev:32536]
13874         * lib/mkmf.rb (try_var): should fail for functions.
13876         * ext/readline/extconf.rb: should use have_func for functions instead
13877           of have_var.
13879 Fri Dec 14 10:25:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13881         * lib/e2mmap.rb (Exception2MessageMapper::E2MM.Raise): $! no
13882           longer modifiable in 1.9.
13884 Fri Dec 14 08:17:24 2007  Tanaka Akira  <akr@fsij.org>
13886         * eval.c (rb_protect): restore root_jmpbuf even if proc exits by
13887           break such as dbm.delete_if { break }.
13889 Fri Dec 14 02:55:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13891         * string.c (str_nth): direct jump if string is 7bit only.  great
13892           performance boost for worst case.
13894         * string.c (str_strlen): direct size if string is 7bit only.
13896 Fri Dec 14 02:29:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13898         * encoding.c (rb_enc_compatible): 1st argument (typically the
13899           receiver) would have higher priority in encoding detection.
13901 Fri Dec 14 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13903         * io.c (rb_io_synchronized): should check if initialized.
13904           [ruby-dev:32585]
13906 Fri Dec 14 00:54:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13908         * re.c (rb_reg_initialize): embedded string may override encoding
13909           of the regular expression.
13911         * re.c (rb_reg_initialize): fix encoding of regular expression if
13912           embedded string has its own encoding specified.
13914 Thu Dec 13 22:16:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13916         * encoding.c (rb_enc_compatible): encoding should never fall back
13917           to ASCII-8BIT unless both encodings are ASCII-8BIT.
13919 Thu Dec 13 20:31:28 2007  Tanaka Akira  <akr@fsij.org>
13921         * string.c (rb_str_shared_replace): make str noembed after free.
13923 Thu Dec 13 20:09:09 2007  Tanaka Akira  <akr@fsij.org>
13925         * eval.c (rb_protect): restore root_jmpbuf to avoid SEGV by
13926           'IO.pipe; [].each.next' with gcc version 3.3.5 (Debian 1:3.3.5-13)
13927           on IA64.
13929 Thu Dec 13 17:51:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13931         * string.c (rb_str_split_m): need not to check encoding if regexp
13932           is empty.
13934         * string.c (rb_str_justify): associate encoding of original to the
13935           result.
13937         * string.c (rb_str_chomp_bang): need to check encoding of record
13938           separator.
13940         * string.c (str_gsub): should copy encoding to the result.
13942         * sprintf.c (rb_str_format): ditto.
13944         * string.c (rb_str_succ): should not enter infinite loop for
13945           non-ASCII, non-alphanumeric character at the bottom.
13947 Thu Dec 13 17:03:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13949         * encoding.c (rb_enc_compatible): should swap encoding indexes too.
13951 Thu Dec 13 16:41:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13953         * encoding.c (rb_enc_compatible): should not judge compatibility
13954           based on rb_enc_asciicompat().
13956 Thu Dec 13 13:09:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13958         * include/ruby/io.h (MakeOpenFile): fptr->enc should be
13959           initialized to zero.  [ruby-dev:32569]
13961 Thu Dec 13 08:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13963         * io.c (rb_io_getc): use default external encoding if fptr->enc is
13964           not set.  [ruby-dev:32565]
13966         * lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
13967           [ruby-dev:32565]
13969 Thu Dec 13 08:24:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13971         * io.c (read_all): should associate default external encoding.
13973         * io.c (io_read): should NOT associate default external encoding.
13975 Wed Dec 12 23:22:58 2007  Tanaka Akira  <akr@fsij.org>
13977         * re.c, regerror.c, string.c, parse.y, ruby.c, file.c:
13978           use capital letter for \xHH notation.  [ruby-dev:32511]
13980 Wed Dec 12 22:21:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13982         * io.c (rb_io_mode_enc): allow specifying external encoding in
13983           open mode, e.g. open(path, "r:utf-8").
13985 Wed Dec 12 21:26:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13987         * eval_method.ci (rb_alias): no need to skip aliasing when new
13988           equals to old.  [ruby-core:13990]
13990 Wed Dec 12 16:34:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13992         * io.c (rb_io_check_readable): set default external encoding to
13993           STDIN.
13995         * io.c (io_enc_str): associate encoding to output string.
13997 Wed Dec 12 12:44:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13999         * parse.y (expr): 'not' and '!' should act as conditional
14000           expression.   [ruby-dev:32548]
14002 Wed Dec 12 12:11:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14004         * re.c (rb_reg_regsub): should copy encoding.
14006         * string.c (rb_str_sub_bang, str_gsub): should check and copy encoding
14007           to be replaced.
14009 Tue Dec 11 23:04:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14011         * pack.c (pack_pack): RDoc update.  a patch from Gary Wright
14012           <radar2002 AT gmail.com>.  [ruby-core:13998]
14014         * pack.c (pack_unpack): ditto.
14016 Tue Dec 11 16:37:47 2007  Tanaka Akira  <akr@fsij.org>
14018         * encoding.c (rb_enc_ascget): renamed from rb_enc_get_ascii.
14020         * include/ruby/encoding.h: follow the renaming.
14022         * re.c: ditto.
14024 Tue Dec 11 16:19:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14026         * Makefile.in, */Makefile.sub (CP, MV): added.
14028         * common.mk (.y.c): not discard the old target until successfully
14029           created.
14031 Tue Dec 11 15:20:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14033         * object.c (Init_Object): singleton_method_{added,removed,undefined}
14034           hooks should be defined for BasicObject.  [ruby-dev:32531]
14036         * eval.c (Init_eval): method_missing should be defined for all
14037           objects; moved to BasicObject.
14039 Tue Dec 11 14:27:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14041         * transcode.c (transcode_loop): get rid of SEGV at sequence can not be
14042           converted.
14044         * transcode.c (rb_str_transcode_bang): copy encoding.  [ruby-dev:32532]
14046         * test/ruby/test_transcode.rb: added tests from Martin Duerst <duerst
14047           AT it.aoyama.ac.jp>.  [ruby-dev:32532]
14049 Tue Dec 11 12:05:51 2007  Tanaka Akira  <akr@fsij.org>
14051         * encoding.c (rb_enc_get_ascii): add an argument to provide the
14052           length of the returned character.
14054         * include/ruby/encoding.h (rb_enc_get_ascii): add the argument.
14056         * re.c (rb_reg_expr_str): modify rb_enc_get_ascii call.
14057           (rb_reg_quote): ditto.
14058           (rb_reg_regsub): ditto.
14060 Tue Dec 11 09:40:21 2007  Tanaka Akira  <akr@fsij.org>
14062         * include/ruby/oniguruma.h (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE):
14063           parenthesize an argument.
14065 Tue Dec 11 02:23:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14067         * eval.c (rb_method_missing): RDoc update patch from Hugh Sasse
14068           <hgs AT dmu.ac.uk>.  [ruby-core:12932]
14070 Tue Dec 11 01:51:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14072         * lib/net/http.rb (Net::HTTP::get): now supports gzip
14073           content-encoding.  a patch from Hugh Sasse <hgs AT dmu.ac.uk>.
14074           [ruby-core:13451]
14076 Tue Dec 11 01:21:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14078         * parse.y (shadowing_lvar_gen): no duplicate error for "_".
14080 Mon Dec 10 22:08:47 2007  Akinori MUSHA  <knu@iDaemons.org>
14082         * array.c (rb_ary_slice_bang): If an invalid range is given, do
14083           not raise an exception but return nil just like slice() does.
14085 Mon Dec 10 21:47:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14087         * transcode.c (str_transcode): allow non-registered encodings.
14088           [ruby-dev:32520]
14090 Mon Dec 10 21:00:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14092         * array.c (rb_ary_slice_bang): should return nil if position out
14093           of range.  a patch from Akinori MUSHA <knu AT iDaemons.org>.
14094           [ruby-dev:32518]
14096 Mon Dec 10 19:02:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14098         * re.c (rb_reg_match): should calculate offset by converted
14099           operand.  [ruby-cvs:21416]
14101 Mon Dec 10 18:28:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14103         * lib/uri/common.rb (URI::REGEXP::PATTERN): typo in REG_NAME
14104           regular expression.  a patch from Ueda Satoshi
14105           <s-ueda AT livedoor.jp>.  [ruby-dev:32514]
14107 Mon Dec 10 17:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14109         * string.c (rb_str_tmp_new): creates hidden temporary buffer.
14111         * transcode.c (transcoding): added a pointer to function to flush.
14113         * transcode.c (transcode_loop): do not use string internal.
14114           [ruby-dev:32512]
14116         * transcode.c (str_transcode): allow Encoding objects.
14118         * transcode_data.h (BYTE_LOOKUP): use actual struct name.
14120 Mon Dec 10 16:52:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14122         * string.c (rb_str_insert): should not add length in bytes to index in
14123           chars.
14125 Mon Dec 10 14:33:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14127         * eval.c (rb_f_public_send): rename invoke_method to public_send.
14128           it now invokes public method only no matter how it's called.
14130 Mon Dec 10 14:00:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14132         * transcode.c: new file to provide encoding conversion features.
14133           code contributed by Martin Duerst.
14135 Mon Dec 10 13:50:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14137         * re.c (rb_reg_search): return byte offset.  [ruby-dev:32452]
14139         * re.c (rb_reg_match, rb_reg_match2, rb_reg_match_m): convert byte
14140           offset to char index.
14142         * string.c (rb_str_index): return byte offset.  [ruby-dev:32472]
14144         * string.c (rb_str_split_m): calculate in byte offset.
14146 Mon Dec 10 09:56:29 2007  Koichi Sasada  <ko1@atdot.net>
14148         * benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: added.
14150 Mon Dec 10 07:48:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14152         * parse.y (parser_yylex): wrong token was generated.  [ruby-dev:32498]
14154         * object.c (rb_obj_not_match): wrong test.
14156 Mon Dec 10 06:44:47 2007  Tanaka Akira  <akr@fsij.org>
14158         * re.c (rb_reg_expr_str): use \xHH instead of \OOO.
14160         * regerror.c (to_ascii): ditto.
14161           (onig_snprintf_with_pattern): ditto.
14162           (onig_snprintf_with_pattern): ditto.
14164         * string.c (rb_str_inspect): ditto.
14165           (rb_str_dump): ditto.
14167         * parse.y (parser_yylex): ditto.
14169         * ruby.c (proc_options): ditto.
14171         * file.c (rb_f_test): ditto.
14173         [ruby-dev:32495]
14175 Mon Dec 10 06:41:00 2007  Tanaka Akira  <akr@fsij.org>
14177         * re.c (rb_reg_names): new method Regexp#names.
14178           (rb_reg_named_captures): new method Regexp#named_captures
14179           (match_regexp): new method MatchData#regexp.
14180           (match_names): new method MatchData#names.
14182         * lib/pp.rb (MatchData#pretty_print): show names of named captures.
14184         [ruby-dev:32493]
14186 Mon Dec 10 01:35:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14188         * parse.y (expr): redefinable not (!) operator.
14190         * parse.y (arg): ditto.
14192         * object.c (rb_obj_not): new method "!".
14194         * object.c (rb_obj_not_equal): new method "!=".
14196         * object.c (rb_obj_not_match): new method "!~".
14198 Sun Dec  9 22:31:36 2007  Tanaka Akira  <akr@fsij.org>
14200         * re.c (rb_reg_s_last_match): accept named capture's name.
14202 Sun Dec  9 15:57:53 2007  Tanaka Akira  <akr@fsij.org>
14204         * re.c (match_backref_number): new function for converting a backref
14205           name/number to an integer.
14206           (match_offset): use match_backref_number.
14207           (match_begin): ditto.
14208           (match_end): ditto.
14209           (name_to_backref_number): raise IndexError instead of RuntimeError.
14210           (match_inspect): show capture index.
14212 Sun Dec  9 14:59:15 2007  Koichi Sasada  <ko1@atdot.net>
14214         * eval_intern.h (CHECK_STACK_OVERFLOW): reserve frame size.
14215           [ruby-dev:32485]
14217 Sun Dec  9 14:38:25 2007  Koichi Sasada  <ko1@atdot.net>
14219         * vm.c (rb_thread_mark): use rb_gc_mark_maybe() for
14220           VM stack specified by mark_stack_len.  [ruby-dev:32462]
14222         * insnhelper.ci: clear vm stack extended by opt value.
14224 Sun Dec  9 14:08:47 2007  Tanaka Akira  <akr@fsij.org>
14226         * include/ruby/ruby.h (FilePathStringValue): defined.  similar to
14227           FilePathValue but no taint check.
14229         * file.c (rb_get_path_no_checksafe): implementation of
14230           FilePathStringValue.
14231           (rb_file_s_basename): use FilePathStringValue.
14232           (rb_file_s_dirname): ditto.
14233           (rb_file_s_extname): ditto.
14234           (rb_file_s_split): ditto.
14235           (rb_file_join): ditto.
14237         * dir.c (file_s_fnmatch): ditto.
14239 Sun Dec  9 12:49:34 2007  Tanaka Akira  <akr@fsij.org>
14241         * re.c (append_utf8): check unicode range.
14243 Sun Dec  9 12:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14245         * lib/cgi.rb (read_multipart): exclude blanks from header values.
14246           [ruby-list:44327]
14248 Sun Dec  9 12:18:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14250         * file.c (rb_get_path): use the original object if to_path method is
14251           not defined.  [ruby-dev:32473]
14253         * io.c (rb_f_open): call to_open on non-string objects, instead of
14254           to_str.  [ruby-dev:32473]
14256 Sun Dec  9 12:12:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14258         * string.c (tr_find): returns true if no characters to be removed is
14259           specified.
14261 Sun Dec  9 12:03:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14263         * parse.y (parser_magic_comment): delimits with a semicolon.
14265 Sun Dec  9 11:29:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14267         * string.c (tr_trans): get rid of segfaults when has multibytes but
14268           source sets have no multibytes.
14270 Sun Dec  9 04:01:28 2007  Tanaka Akira  <akr@fsij.org>
14272         * encoding.c (rb_enc_mbclen): return 1 if underlying implementation
14273           returns a length longer than e-p.
14274           (rb_enc_precise_mbclen): return needmore if underlying
14275           implementation returns a length longer than e-p.
14277 Sat Dec  8 17:59:40 2007  Tanaka Akira  <akr@fsij.org>
14279         * signal.c (posix_signal): return value.
14281 Sat Dec  8 17:22:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14283         * test/openssl/test_pkcs7.rb: Remove redundant module namespace.
14285 Sat Dec  8 17:07:10 2007  Tanaka Akira  <akr@fsij.org>
14287         * ruby.c (proc_options): make rb_raise format as a string literal to
14288           avoid warning.
14290 Sat Dec  8 16:18:16 2007  Tanaka Akira  <akr@fsij.org>
14292         * re.c (rb_reg_check_preprocess): new function for validating regexp
14293           fragment.
14295         * parse.y (regexp): invoke reg_fragment_check.
14296           (reg_fragment_check): defined.
14297           (reg_fragment_check_gen): defined.
14299 Sat Dec  8 11:06:29 2007  Tanaka Akira  <akr@fsij.org>
14301         * encoding.c (rb_enc_mbclen): make it never fail.
14302           (rb_enc_nth): don't check the return value of rb_enc_mbclen.
14303           (rb_enc_strlen): ditto.
14304           (rb_enc_precise_mbclen): return needmore(1) if e <= p.
14305           (rb_enc_get_ascii): new function for extracting ASCII character.
14307         * include/ruby/encoding.h (rb_enc_get_ascii): declared.
14309         * include/ruby/regex.h (ismbchar): removed.
14311         * re.c (rb_reg_expr_str): use rb_enc_get_ascii.
14312           (unescape_escaped_nonascii): use rb_enc_precise_mbclen to determine
14313           the termination of escaped non-ASCII character.
14314           (unescape_nonascii): use rb_enc_precise_mbclen.
14315           (rb_reg_quote): use rb_enc_get_ascii.
14316           (rb_reg_regsub): use rb_enc_get_ascii.
14318         * string.c (rb_str_reverse) don't check the return value of
14319           rb_enc_mbclen.
14320           (rb_str_split_m): don't call rb_enc_mbclen with e <= p.
14322         * parse.y (is_identchar): use ISASCII.
14323           (parser_ismbchar): removed.
14324           (parser_precise_mbclen): new macro.
14325           (parser_isascii): new macro.
14326           (parser_tokadd_mbchar): use parser_precise_mbclen to check invalid
14327           character precisely.
14328           (parser_tokadd_string): use parser_isascii.
14329           (parser_yylex): ditto.
14330           (is_special_global_name): don't call is_identchar with e <= p.
14331           (rb_enc_symname_p): ditto.
14333           [ruby-dev:32455]
14335         * ext/tk/sample/tkextlib/vu/canvSticker2.rb: remove coding cookie
14336           because the encoding is not UTF-8.  [ruby-dev:32475]
14338 Fri Dec  7 20:21:35 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14340         * ext/openssl/lib/net/ftptls.rb, ext/openssl/lib/net/telnets.rb:
14341           half-finished libraries are discontinued.
14343 Fri Dec  7 15:44:40 2007  Tanaka Akira  <akr@fsij.org>
14345         * lib/pp.rb: use Hash for recursion check as inspect.
14347 Fri Dec  7 15:04:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14349         * array.c (flatten): some performance improvements, based on a patch
14350           from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13877].
14351           [ruby-core:13851]
14353         * thread.c (rb_exec_recursive): use Hash instead of Array for
14354           performance improvement.  [ruby-core:13898]
14356         * thread.c (recursive_pop): use object ID.
14358 Thu Dec  6 19:52:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14360         * parse.y (arg): typo fixed ("!" -> "|") in the ripper code.
14362 Thu Dec  6 19:48:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14364         * parse.y (arg): tUPLUS no longer works as identity operation any
14365           more.  inspired by [ruby-talk:265532].
14367 Thu Dec  6 18:22:11 2007  Tanaka Akira  <akr@fsij.org>
14369         * encoding.c (rb_enc_precise_mbclen): new function for mbclen with
14370           validation.
14372         * include/ruby/encoding.h (rb_enc_precise_mbclen): declared.
14373           (MBCLEN_CHARFOUND): new macro.
14374           (MBCLEN_INVALID): new macro.
14375           (MBCLEN_NEEDMORE): new macro.
14377         * include/ruby/oniguruma.h (OnigEncodingTypeST): replace mbc_enc_len
14378           by precise_mbc_enc_len.
14379           (ONIGENC_PRECISE_MBC_ENC_LEN): new macro.
14380           (ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND): new macro.
14381           (ONIGENC_CONSTRUCT_MBCLEN_INVALID): new macro.
14382           (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE): new macro.
14383           (ONIGENC_MBCLEN_CHARFOUND): new macro.
14384           (ONIGENC_MBCLEN_INVALID): new macro.
14385           (ONIGENC_MBCLEN_NEEDMORE): new macro.
14386           (ONIGENC_MBC_ENC_LEN): use ONIGENC_PRECISE_MBC_ENC_LEN.
14388         * enc/euc_jp.c: validation implemented.
14390         * enc/sjis.c: ditto.
14392         * enc/utf8.c: ditto.
14394         * string.c (rb_str_inspect): use rb_enc_precise_mbclen for invalid
14395           encoding.
14396           (rb_str_valid_encoding_p): new method String#valid_encoding?.
14398         * io.c (rb_io_getc): use rb_enc_precise_mbclen.
14400         [ruby-dev:32438]
14402 Thu Dec  6 01:37:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14404         * regparse.c (i_apply_case_fold): fix for negative character class.  a
14405           patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13884].
14407 Thu Dec  6 01:00:38 2007  NARUSE, Yui <naruse@ruby-lang.org>
14409         * ext/iconv/iconv.c (iconv_s_list): support NetBSD/Citrus iconv.
14411 Wed Dec  5 16:18:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14413         * proc.c (rb_proc_s_new): call initialize.  [ruby-core:13824]
14415         * proc.c (rb_proc_location): return file name and line number where
14416           the proc is defined.
14418         * thread.c (thread_s_new): call initialize.  [ruby-core:13835]
14420         * thread.c (thread_initialize): split initialize method.
14422 Wed Dec  5 15:25:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14424         * parse.y (rb_intern3): fix to changing encoding to default, and
14425           uncommented r13835, which is rare but not impossible.
14427 Wed Dec  5 15:15:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14429         * range.c (step_i, range_step): support non-fixnum steps.
14430           [ruby-talk:282100]
14432 Wed Dec  5 14:25:11 2007  Koichi Sasada  <ko1@atdot.net>
14434         * compile.c (iseq_compile_each): fix typo.
14436 Wed Dec  5 13:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14438         * parse.y (yycompile): get rid of tracing while parsing.
14439           [ruby-dev:31351]
14441         * thread.c (ruby_suppress_tracing): added a new parameter, which
14442           directs to call func always.
14444 Tue Dec  4 19:56:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14446         * ext/iconv/iconv.c (iconv_convert): should not set encoding unless
14447           the target encoding is supported.  [ruby-dev:32451]
14449 Tue Dec  4 17:34:17 2007  NARUSE, Yui  <naruse@ruby-lang.org>
14451         * ext/nkf/lib/kconv.rb (tojis, tosjis, toeuc, toutf8):
14452           set encoding. [ruby-dev:32447]
14454 Tue Dec  4 17:07:25 2007  NARUSE, Yui  <naruse@ruby-lang.org>
14456         * lib/json.rb, lib/json/*: moved to ext/json/lib.
14458 Tue Dec  4 16:34:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14460         * ext/iconv/iconv.c (iconv_create): achieve target encoding.
14462         * ext/iconv/iconv.c (iconv_convert, iconv_finish, iconv_iconv,
14463           iconv_conv): set result string encoding.  [ruby-dev:32446]
14465         * ext/iconv/iconv.c (iconv_initialize, iconv_s_open): set encoding to
14466           Iconv instance.
14468 Tue Dec  4 14:34:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14470         * ruby.c (process_options): reverted c flag.
14472 Tue Dec  4 11:23:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14474         * bignum.c (rb_cstr_to_inum): trailing spaces may exist at squeezing
14475           preceding 0s.  [ruby-core:13873]
14477 Mon Dec  3 11:51:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14479         * ext/Win32API/*: removed or moved to ext/dl/win32.
14481         * ext/dl/win32/*: new. [ruby-dev:32387]
14483 Sun Dec  2 22:08:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14485         * parse.y (parser_tokadd_mbchar): fix for ASCII chars.  [ruby-dev:32432]
14487         * parse.y (parser_parse_string, parser_here_document): prevent false
14488           error messages.
14490 Sun Dec  2 20:43:22 2007  Tanaka Akira  <akr@fsij.org>
14492         * re.c (unescape_escaped_nonascii): fix mbclen argument.
14494 Sun Dec  2 15:47:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14496         * parse.y (parser_tokadd_mbchar): check insufficient multibyte char.
14497           [ruby-dev:32429]
14499 Sun Dec  2 15:42:16 2007  Kouhei Sutou  <kou@cozmixng.org>
14501         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.1 -> 0.2.2.
14503         * lib/rss/maker/itunes.rb: fixed new_itunes_category.
14504         * lib/rss/maker/taxonomy.rb: new_taxo_topic -> new_topic because
14505           of consistency.
14507         * test/rss/test_maker_itunes.rb, test/rss/test_itunes.rb: removed
14508           needless UTF-8 characters.
14510 Sun Dec  2 15:18:37 2007  Koichi Sasada  <ko1@atdot.net>
14512         * insnhelper.ci (vm_callee_setup_arg): fix error message.
14513           [ruby-dev:32430]
14515 Sun Dec  2 09:12:48 2007  Tanaka Akira  <akr@fsij.org>
14517         * parse.y (regexp): fix /#{}\xa1\xa2/e to be EUC-JP.
14518           (reg_fragment_setenc_gen): extracted from reg_compile_gen.
14520 Sun Dec  2 01:39:51 2007  Tanaka Akira  <akr@fsij.org>
14522         * include/ruby/intern.h (rb_uv_to_utf8): declared.
14524         * re.c (rb_reg_preprocess): new function for dynamic regexp with
14525           \u{} such as Regexp.new("\\u{6666}").
14526           (rb_reg_prepare_re): preprocess regexp for recompiling.
14527           (read_escaped_byte): new function.
14528           (unescape_escaped_nonascii): new function.
14529           (append_utf8): new function.
14530           (unescape_unicode_list): new function.
14531           (unescape_unicode_bmp): new function.
14532           (unescape_nonascii): new function.
14533           (rb_reg_initialize): preprocess regexp.
14535         * pack.c (rb_uv_to_utf8): renamed from uv_to_utf8.
14537         * parse.y (STR_NEW3): take func instead of has8 and hasmb.
14538           (parser_str_new): use default coderange mechanism except for regexp.
14539           (parser_tokadd_utf8): copy regexp source as-is.
14540           (parser_read_escape): UTF-8 stuff removed.
14541           (parser_tokadd_escape): has8bit and hasmb removed.
14542           (parser_tokadd_string): fix 8-bit single byte character with \u.
14543           (parser_parse_string): has8bit and hasmb removed.
14544           (parser_here_document): has8bit and hasmb removed.
14545           (parser_yylex): call parser_tokadd_utf8 instead of read_escape for
14546           UTF-8 character.
14548 Wed Dec  2 01:00:07 2007  James Edward Gray II  <jeg2@ruby-lang.org>
14550         * lib/xmlrpc/server.rb (XMLRPC::Server#server): Improve signal handling so
14551           pressing control-c in the controlling terminal or sending SIGTERM stops
14552           the XML-RPC server.
14554 Sat Dec  1 23:04:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14556         * encoding.c: rename primary_encoding -> default_external (encoding).
14558 Sat Dec  1 19:52:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
14560         * lib/date.rb (Time#to_datetime): use nsec instead of usec.
14562         * lib/date.rb (DateTime#to_time): second minute as an argument to
14563           Time::utc contains fractional part in rational; hence Time
14564           object may keep resolution at most nanosecond.
14566 Sat Dec  1 14:36:05 2007  Koichi Sasada  <ko1@atdot.net>
14568         * bootstraptest/test_knownbug.rb: move fixed bugs.
14570         * test/ruby/test_sprintf.rb: ditto.
14572         * test/yaml/test_yaml.rb: ditto.
14574 Sat Dec  1 13:24:47 2007  Koichi Sasada  <ko1@atdot.net>
14576         * insnhelper.ci (vm_yield_with_cfunc): fix to passing argc on third
14577           parameter of IFUNC.  [ruby-dev:32329]
14579         * enumerator.c: fix to pass exact number of argument.
14581         * eval.c (rb_yield_values2): added.
14583         * include/ruby/ruby.h: ditto.
14585         * bootstraptest/test_knownbug.rb: move a fixed test.
14587         * bootstraptest/test_block.rb: ditto.
14589 Sat Dec  1 10:45:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14591         * io.c (rb_f_open): use to_open for every non-string object.  path
14592           object may use method_missing.
14594 Sat Dec  1 09:44:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14596         * insns.def (concatarray, splatarray): use to_a instead of
14597           to_splat.
14599         * insnhelper.ci (caller_setup_args): ditto.
14601 Sat Dec  1 03:34:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14603         * parse.y (newline_node): always remove NODE_BEGIN.
14605 Fri Nov 30 23:48:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14607         * signal.c (ruby_signal): use SA_SIGINFO if available.
14608           [ ruby-Patches-6418 ]
14610 Fri Nov 30 22:52:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14612         * signal.c (trap_signm): SIGVTALRM no longer used for green
14613           thread.  [ruby-talk:281318]
14615         * signal.c (ruby_sig_finalize): do not install SIG_DFL handler if
14616           previous handler is sighandler().
14618 Fri Nov 30 21:02:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
14620         * lib/json.rb, lib/json/add/{core.rb, rails.rb},
14621           test/json/test_json_rails.rb: additional files of JSON 1.1.2.
14622           [ruby-dev:32405]
14624 Fri Nov 30 19:33:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14626         * ext/syck/rubyext.c (rb_syck_mktime): avoid segmentation fault.
14627           [ruby-core:13735]
14629 Fri Nov 30 19:05:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14631         * enum.c (enum_count): precise argument number check.
14633         * enum.c (enum_count): return Enumerator if no block given.
14635 Fri Nov 30 16:42:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14637         * enum.c (enum_take_while): returns Enumerator if no block given.
14639         * enum.c (enum_drop_while): ditto.
14641 Thu Nov 29 16:59:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14643         * parse.y (stmt): remove unnecessary NODE_BEGIN.  [ruby-core:13814]
14645 Thu Nov 29 06:45:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14647         * hash.c (rb_hash_eql): recursive comparison should be based on
14648           eql?  [ruby-core:13803]
14650 Wed Nov 28 18:08:00 2007  NARUSE, Yui  <naruse@ruby-lang.org>
14652         * ext/json, lib/json, test/json: Update to JSON 1.1.2.
14653           (RubyForge#15447)
14655         * math.c: fix typo.
14657 Wed Nov 28 16:29:35 2007  Koichi Sasada  <ko1@atdot.net>
14659         * insnhelper.ci (vm_invoke_block): should splat args.
14660           [ruby-dev:32392]
14662         * test/ruby/test_yield.rb: add tests for above.
14664 Wed Nov 28 14:43:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14666         * ext/extmk.rb (extract_makefile): use dldflags instead of DLDFLAGS to
14667           get rid of mixing $LDFLAGS and $ARCH_FLAG.
14669         * lib/mkmf.rb (configuration): ditto.
14671         * lib/mkmf.rb (create_makefile): support for extensions which has no
14672           shared object.
14674 Wed Nov 28 02:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14676         * bignum.c (big2str_find_n1): removed extraneous element.
14677           [ruby-dev:32351], [ruby-dev:32365]
14679         * bignum.c (big2str_find_n1): returns necessary digits now.
14681         * sprintf.c (remove_sign_bits): extends sign bit first.
14683 Tue Nov 27 15:53:43 2007  Koichi Sasada  <ko1@atdot.net>
14685         * compile.c (iseq_compile_each): "when *[],1" dumps core.
14686           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32350]
14688         * bootstraptest/test_syntax.rb: add a test for above.
14690 Tue Nov 27 15:40:05 2007  Koichi Sasada  <ko1@atdot.net>
14692         * compile.c (iseq_compile_each): "a[*b] += 1" dumps core.
14693           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32354]
14695         * bootstraptest/test_syntax.rb: add a test for above.
14697 Tue Nov 27 12:47:23 2007  Koichi Sasada  <ko1@atdot.net>
14699         * compile.c, insns.def: change return value of "defined?"
14700           for $&, $1, ... .  If such variables are defined,
14701           return "global-variable".
14703         * test/ruby/test_defined.rb: add tests.
14705         * bootstraptest/test_syntax.rb: fix a test.
14707 Tue Nov 27 11:54:46 2007  Koichi Sasada  <ko1@atdot.net>
14709         * insns.def: fix typo.
14711 Tue Nov 27 11:23:20 2007  Koichi Sasada  <ko1@atdot.net>
14713         * test_beginendblock.rb: add loop to wait signal.
14714           [ruby-dev:32332]
14716 Tue Nov 27 11:14:57 2007  Tanaka Akira  <akr@fsij.org>
14718         * include/ruby/encoding.h, encoding.c, re.c, string.c, parse.y:
14719           rename ENC_CODERANGE_SINGLE to ENC_CODERANGE_7BIT.
14720           rename ENC_CODERANGE_MULTI to ENC_CODERANGE_8BIT.
14721           Because single byte 8bit character, such as Shift_JIS 1byte katakana,
14722           is represented by ENC_CODERANGE_MULTI even if it is not multi byte.
14724 Tue Nov 27 10:45:45 2007  Koichi Sasada  <ko1@atdot.net>
14726         * eval.c (rb_method_missing): fix stack trace.
14728         * bootstraptest/test_knownbug.rb: move solved tests.
14730         * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto.
14732 Tue Nov 27 09:57:42 2007  Koichi Sasada  <ko1@atdot.net>
14734         * insns.def, compile.c: fix to allow dsym for alias/undef.
14735           [ruby-dev:32355]
14737         * bootstraptest/test_method.rb: add tests for above.
14739 Mon Nov 26 23:18:46 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14741         * lib/drb/extserv.rb (initialize, stop_service): synchronize with
14742           ExtServManager.
14744         * test/drb/test_drb.rb (TestDRbEval): ignored.
14746 Mon Nov 26 17:32:16 2007  Tanaka Akira  <akr@fsij.org>
14748         * re.c (Init_Regexp): new method Regexp#fixed_encoding?
14749           [ruby-dev:32361]
14751 Mon Nov 26 13:28:14 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
14753         * lib/complex.rb: be able to create Complex(0, -0.0). [ruby-list:44268]
14755 Mon Nov 26 11:24:04 2007  Tanaka Akira  <akr@fsij.org>
14757         * re.c (rb_reg_fixed_encoding_p): extracted from rb_reg_prepare_re and
14758           rb_reg_s_union.
14759           (rb_reg_s_union): refactored.
14761 Mon Nov 26 10:44:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14763         * io.c (rb_read_internal, rb_sysopen_internal): remove C99 dependency.
14765 Sun Nov 25 22:21:35 2007  Tanaka Akira  <akr@fsij.org>
14767         * include/ruby/encoding.h (rb_enc_str_asciionly_p): declared.
14768           (rb_enc_str_asciicompat_p): defined.
14770         * re.c (rb_reg_initialize_str): use rb_enc_str_asciionly_p.
14771           (rb_reg_quote): return ascii-8bit string if the argument is
14772           ascii-only to generate encoding generic regexp if possible.
14773           (rb_reg_s_union): fix encoding handling.  [ruby-dev:32094]
14775         * string.c (rb_enc_str_asciionly_p): defined.
14777 Sun Nov 25 12:12:03 2007  Eric Hodel  <drbrain@segment7.net>
14779         * gem_prelude.rb: Import fast-loading gem_prelude.rb from RubyGems.
14781         * lib/rubygems*: Import RubyGems r1516.
14783 Sat Nov 24 23:25:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14785         * test/ruby/test_eval.rb (TestEval::test_instance_eval_cvar):
14786           updated not to modify class variable of Object class.
14788 Fri Nov 23 17:34:24 2007  Koichi Sasada  <ko1@atdot.net>
14790         * io.c: add rb_read_internal() as blocking function.
14792 Fri Nov 23 17:33:39 2007  Koichi Sasada  <ko1@atdot.net>
14794         * vm.c: fix comment.
14796 Fri Nov 23 17:26:11 2007  Koichi Sasada  <ko1@atdot.net>
14798         * bootstraptest/test_knownbug.rb: move solved tests.
14800         * bootstraptest/test_io.rb, test_marshal.rb, test_objectspace.rb:
14801           ditto.
14803         * test/ruby/test_integer.rb, test_regexp.rb: ditto.
14805 Fri Nov 23 15:59:04 2007  Tanaka Akira  <akr@fsij.org>
14807         * struct.c (rb_struct_alloc_noinit): new function.
14808           (rb_struct_define_without_accessor): add allocator to the arguments.
14810         * range.c (range_alloc): re-introduced using rb_struct_alloc_noinit.
14812 Fri Nov 23 15:27:43 2007  Tanaka Akira  <akr@fsij.org>
14814         * re.c (REG_CASESTATE): unused macro removed.
14815           (rb_reg_prepare_re): check encoding difference.
14816           (rb_reg_initialize): check 8bit byte.
14818         * parse.y (parser_tokadd_escape): fix has8bit.
14820           [ruby-dev:32113]
14822 Fri Nov 23 15:16:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14824         * variable.c (rb_f_global_variables): variable names should not
14825           duplicate.  [ruby-dev:32344]
14827 Fri Nov 23 13:34:08 2007  Tanaka Akira  <akr@fsij.org>
14829         * struct.c (rb_struct_define_without_accessor): new function.
14831         * range.c (range_alloc): removed.
14832           (Init_Range): use rb_struct_define_without_accessor.
14834           based on [ruby-dev:32327].
14836 Fri Nov 23 11:01:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14838         * re.c (match_begin): should return offset by character.
14839           [ruby-dev:32331]
14841         * re.c (match_end): ditto.
14843         * re.c (rb_reg_search): ditto.
14845 Fri Nov 23 10:44:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14847         * compile.c (defined_expr): defined(method(x)) dumped core.  a
14848           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32335]
14850 Wed Nov 21 18:03:49 2007  Koichi Sasada  <ko1@atdot.net>
14852         * vm.c: fix to recycle thread data (VM stack).
14854         * thread.c: ditto.
14856         * benchmark/bm_vm3_thread_create_join.rb: add loop count.
14858 Wed Nov 21 18:02:10 2007  Koichi Sasada  <ko1@atdot.net>
14860         * benchmark/driver.rb: add path to trunk/lib if driver runner is
14861           in build directory.
14863 Wed Nov 21 16:39:21 2007  Tanaka Akira  <akr@fsij.org>
14865         * test/fileutils/fileasserts.rb (assert_equal_timestamp): new assert
14866           to test tv_sec only for filestamp resolution portability.
14867           (assert_same_entry): use assert_same_entry for mtime comparison.
14869 Wed Nov 21 14:55:13 2007  Koichi Sasada  <ko1@atdot.net>
14871         * array.c (rb_ary_permutation): add gc guard codes.
14873 Wed Nov 21 11:16:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14875         * insnhelper.ci (vm_search_normal_superclass): rename function.
14877         * insnhelper.ci (vm_search_superclass): ditto.
14879         * proc.c (struct METHOD): rename rklass -> rclass.
14881 Wed Nov 21 03:12:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14883         * process.c (rb_f_system): returns nil on execution failure.
14884           [ruby-core:13715]
14886 Wed Nov 21 01:04:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14888         * object.c (nil_plus): remove unused function.  [ruby-core:13737]
14890 Tue Nov 20 21:46:46 2007  Tanaka Akira  <akr@fsij.org>
14892         * time.c (time_mload): ignore invalid digits in submicro.
14894 Tue Nov 20 20:33:32 2007  Koichi Sasada  <ko1@atdot.net>
14896         * include/ruby/ruby.h: rename RFloat#double_value -> float_value.
14898         * numeric.c, parse.y: ditto.
14900 Tue Nov 20 19:36:21 2007  Koichi Sasada  <ko1@atdot.net>
14902         * gc.h, vm_core.h: decl of rb_gc_save_machine_context()
14903           should be at vm_core.h.
14905         * include/ruby/ruby.h, intern.h: remove type rb_thread_t.
14907         * include/ruby/intern.h: change rb_unblock_function_t,
14908           rb_unblock_function_t.
14910         * file.c, process.c: apply above changes.
14912         * thread.c, thread_pthread.ci, thread_win32.ci: ditto.
14914         * io.c: support blocking open (2). [ruby-core:13614]
14916 Tue Nov 20 17:10:11 2007  Tanaka Akira  <akr@fsij.org>
14918         * io.c (rb_io_close_on_exec_p): new method IO#close_on_exec?.
14919           (rb_io_set_close_on_exec): new method IO#close_on_exec=.
14920           [ruby-dev:32323]
14922 Tue Nov 20 16:24:31 2007  Tanaka Akira  <akr@fsij.org>
14924         * gc.c (gc_mark_children): obj->as.file.fptr may be 0 for T_FILE.
14926 Tue Nov 20 15:09:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14928         * parse.y (parser_read_escape): has8bit flag may be set with control
14929           escape.  [ruby-core:13722]
14931         * parse.y (parser_prepare): set begging after BOM if exists.
14932           [ruby-core:13718]
14934 Tue Nov 20 14:55:37 2007  Eric Hodel  <drbrain@segment7.net>
14936         * lib/rubygems*: Update to RubyGems 0.9.5.
14938 Tue Nov 20 13:00:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14940         * include/ruby/win32.h win32/win32.c (rb_w32_pipe_exec): use dual fd
14941           instead of socketpair when mode is RDWR.
14943         * io.c (pipe_open): pass &write_fd to rb_w32_pipe_exec().
14945         * io.c (popen_redirect): define only when HAVE_FORK.
14947 Tue Nov 20 12:12:04 2007  Tanaka Akira  <akr@fsij.org>
14949         * include/ruby/io.h (rb_io_t): add tied_io_for_writing member.
14951         * io.c: use tied_io_for_writing for duplex popen.
14953         * gc.c: mark tied_io_for_writing.
14955         * common.mk: gc.o depends io.h.
14957           [ruby-dev:32205]
14959 Tue Nov 20 11:59:33 2007  Tanaka Akira  <akr@fsij.org>
14961         * test/drb/test_drb.rb: rename TestRubyYield to TestDRbRubyYield to
14962           avoid name crash with test/ruby/test_yield.rb.
14963           TestRuby18Yield is renamed to TestDRbRuby18Yield too.
14965 Tue Nov 20 03:24:42 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
14967         * lib/drb/extservm.rb: merged from ruby_1_8 branch.
14969         * lib/drb/acl.rb: ditto.
14971         * lib/drb/ssl.rb: ditto.
14973         * lib/drb/unix.rb: ditto.
14975         * lib/drb/drb.rb: ditto.
14977         * lib/drb/observer.rb: ditto.
14979         * lib/drb/invokemethod.rb: ditto.
14981         * test/drb/test_drbssl.rb: ditto.
14983         * test/drb/test_drb.rb: ditto.
14985         * test/drb/drbtest.rb: ditto.
14987         * test/drb/test_drbunix.rb: ditto.
14989 Tue Nov 20 00:52:46 2007  Tanaka Akira  <akr@fsij.org>
14991         * test/fileutils/fileasserts.rb (assert_equal_time): show nsec if
14992           assertion fails but time.to_s equals.
14993           (assert_same_entry): use assert_equal_time.
14995         * test/fileutils/test_fileutils.rb (test_install): use
14996           assert_equal_time.
14998 Mon Nov 19 18:46:49 2007  Tanaka Akira  <akr@fsij.org>
15000         * file.c (utime_internal): fallback utimensat to utimes.
15002 Mon Nov 19 17:51:27 2007  Tanaka Akira  <akr@fsij.org>
15004         * configure.in: check struct timespec, clock_gettime, utimensat,
15005           struct stat.st_atim,
15006           struct stat.st_atimespec,
15007           struct stat.st_atimensec,
15008           struct stat.st_mtim,
15009           struct stat.st_mtimespec,
15010           struct stat.st_mtimensec,
15011           struct stat.st_ctim,
15012           struct stat.st_ctimespec,
15013           struct stat.st_ctimensec.
15015         * include/ruby/missing.h: provide struct timespec if not available.
15017         * time.c: support nanosecond-resolution using struct timespec.
15018           (time_nsec): new method: Time#nsec and Time#tv_nsec.
15020         * include/ruby/intern.h: provide rb_time_nano_new.
15022         * file.c (utime_internal): use utimensat if available.
15023           (rb_file_s_utime): refactored.
15024           (rb_f_test): use stat_atime, stat_mtime, stat_ctime.
15025           (rb_stat_cmp): check tv_nsec.
15026           (stat_atimespec): new function.
15027           (stat_atime): ditto.
15028           (stat_mtimespec): ditto.
15029           (stat_mtime): ditto.
15030           (stat_ctimespec): ditto.
15031           (stat_ctime): ditto.
15032           (rb_stat_atime): use stat_atime.
15033           (rb_file_s_atime): ditto.
15034           (rb_file_atime): ditto.
15035           (rb_stat_mtime): use stat_mtime.
15036           (rb_file_s_mtime): ditto.
15037           (rb_file_mtime): ditto.
15038           (rb_file_ctime): use stat_ctime.
15039           (rb_file_s_ctime): ditto.
15040           (rb_stat_ctime): ditto.
15042         * variable.c (rb_copy_generic_ivar): clear clone's instance variables
15043           if obj has no instance variable.
15045         * marshal.c (w_object): dump instance variables of generated string
15046           for TYPE_USERDEF, even if original object has instance variables.
15048         * lib/time.rb (Time#xmlschema): use nsec instead of usec.
15050         [ruby-dev:32306]
15052 Mon Nov 19 17:48:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15054         * object.c (rb_class_superclass): should not raise exception for
15055           BasicObject.  [ruby-Bugs-15668]
15057 Mon Nov 19 16:04:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15059         * array.c (rb_ary_permutation): gives all permutations of elements
15060           if no argument given.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
15061           [ruby-dev:32309]
15063 Mon Nov 19 02:44:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15065         * compile.c (iseq_compile_each): alias and undef accept dsyms as well
15066           as literals.  [ruby-dev:32308]
15068 Mon Nov 19 02:31:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15070         * eval_method.ci (rb_add_method): no redefinition warning for undef.
15072 Mon Nov 19 01:53:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15074         * parse.y (parser_read_escape): disallow control and meta modifiers
15075           for non-ASCII characters.  [ruby-core:13685]
15077 Sun Nov 18 20:47:41 2007  Tanaka Akira  <akr@fsij.org>
15079         * marshal.c (mark_dump_arg): it may be called after dump_ensure.
15081 Sun Nov 18 18:27:47 2007  Tanaka Akira  <akr@fsij.org>
15083         * time.c (time_minus): fix Time.at(2**60+1) - Time.at(2**60).
15085 Sun Nov 18 17:28:49 2007  Tanaka Akira  <akr@fsij.org>
15087         * time.c (time_arg): show actual year in 2-3 digits year warning.
15088           (time_mdump): show actual year in "year too big to marshal" error.
15090 Sun Nov 18 14:03:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15092         * eval_method.ci (rb_alias): do not call hook functions until
15093           initialization finishes.  [ruby-talk:279538]
15095 Sun Nov 18 09:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15097         * lib/mkmf.rb (String#tr_cpp): make preprocessor identifiers.
15099 Sun Nov 18 05:19:46 2007  Tanaka Akira  <akr@fsij.org>
15101         * lib/mkmf.rb (have_struct_member): define HAVE_type_member.
15103 Sat Nov 17 23:51:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
15105         * ext/win32ole/win32ole.c (ole_invoke): bug fix. [ruby-talk:279100]
15107 Sat Nov 17 23:21:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15109         * parse.y (parser_yylex): should clear parser->tokp as well.
15110           [ruby-dev:32250]
15112         * parse.y: remove NEED_ASSOC that break test_parser_events.
15114         * parse.y (parser_yylex): should not decrement line numbers at the
15115           end of file.
15117         * file.c (rb_find_file_ext): search .rb files first through in the
15118           loadpath.
15120 Fri Nov 16 23:31:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15122         * bignum.c (rb_big_odd_p): new method added.  a patch from Tadashi
15123           Saito <shiba AT mail2.accsnet.ne.jp>.  [ruby-dev:32305]
15125         * bignum.c (rb_big_even_p): ditto.
15127 Fri Nov 16 17:41:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15129         * ext/iconv/iconv.c (Document-class): moved the simplest example to
15130           the top.
15132         * ext/iconv/iconv.c (iconv_s_iconv): Document-method: needs class
15133           prefix for class method.  [ruby-core:13542]
15135         * ext/iconv/iconv.c (iconv_iconv): also instance method needs to be
15136           qualified.
15138 Fri Nov 16 16:26:57 2007  Shugo Maeda  <shugo@ruby-lang.org>
15140         * include/ruby/ruby.h: added some declarations for event hooks.
15142         * lib/profile.rb: set VM::InstructionSequence.compile_option.
15144 Fri Nov 16 11:16:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15146         * lib/yaml/rubytypes.rb (String#is_binary_data?): use Integer#fdiv.
15148 Fri Nov 16 03:36:01 2007  why the lucky stiff  <why@ruby-lang.org>
15150         * ext/syck/rubyext.c: Node#value defined twice.
15152         * lib/yaml/: several method redefinitions causing warnings.
15154 Fri Nov 16 03:01:00 2007  why the lucky stiff  <why@ruby-lang.org>
15156         * lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit.
15158 Fri Nov 16 02:51:59 2007  why the lucky stiff  <why@ruby-lang.org>
15160         * lib/yaml.rb (quick_emit): use combination of object_id and hash to
15161           identify repeated object references, since GC will reuse memory of
15162           objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698]
15164 Thu Nov 15 19:49:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15166         * ext/curses/extconf.rb: check macro if cannot find func.
15167           [ruby-list:44224]
15169 Thu Nov 15 18:04:06 2007  Tanaka Akira  <akr@fsij.org>
15171         * tool/compile_prelude.rb: fix TMP_RUBY_PREFIX for relative load path
15172           environment.
15174 Thu Nov 15 17:28:21 2007  Tanaka Akira  <akr@fsij.org>
15176         * tool/compile_prelude.rb: absolute path may not start with a slash.
15177           pointed by usa.
15179 Thu Nov 15 17:07:54 2007  Tanaka Akira  <akr@fsij.org>
15181         * tool/compile_prelude.rb: fix first substitution.
15182           use constant for prefix.
15183           pointed by Richard Kilmer.
15185 Thu Nov 15 14:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15187         * common.mk (prereq): added auto generated sources.  [ruby-dev:32280]
15189 Thu Nov 15 12:31:13 2007  Tanaka Akira  <akr@fsij.org>
15191         * tool/compile_prelude.rb: use constant for prefix.
15193 Thu Nov 15 12:24:39 2007  Tanaka Akira  <akr@fsij.org>
15195         * tool/compile_prelude.rb: use simple template system for source
15196           code generation.
15198 Thu Nov 15 12:19:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15200         * lib/cgi/session.rb (CGI::Session::FileStore::restore): use
15201           lockfile for exclusive locks.  a patch from <tommy AT tmtm.org>.
15202           [ruby-dev:32296]
15204 Thu Nov 15 12:14:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15206         * tool/compile_prelude.rb (c_esc): need to escape closing brace.
15208 Thu Nov 15 11:52:16 2007  Tanaka Akira  <akr@fsij.org>
15210         * tool/compile_prelude.rb: adjust RbConfig::CONFIG paths relative
15211           to the installation path.
15213 Thu Nov 15 11:25:20 2007  Tanaka Akira  <akr@fsij.org>
15215         * ruby.c (usage): fix typo on --disable-gems option.
15216           pointed by Richard Kilmer.
15218 Wed Nov 14 16:16:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15220         * test/net/http/test_https_proxy.rb
15221           (HTTPSProxyTest::test_https_proxy_authentication): initialize
15222           local variable 't' first.  [ruby-dev:32253]
15224 Wed Nov 14 15:39:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15226         * test/socket/test_socket.rb: update not to use 1.8 assignment to
15227           external local variable in the block parameters.  [ruby-dev:32251]
15229         * test/strscan/test_stringscanner.rb: avoid $KCODE, and use
15230           String#force_encoding().  [ruby-dev:32251]
15232 Wed Nov 14 14:04:42 2007  Tanaka Akira  <akr@fsij.org>
15234         * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
15235           rename ext_prelude.c to prelude.c
15237         * win32/Makefile.sub: ditto.
15239         * bcc32/Makefile.sub: ditto.
15241 Wed Nov 14 07:09:48 2007  Koichi Sasada  <ko1@atdot.net>
15243         * blockinlining.c, compile.c, compile.h, debug.c, debug.h,
15244           id.c, insnhelper.h, insns.def, thread.c, thread_pthread.ci,
15245           thread_pthread.h, thread_win32.ci, thread_win32.h, vm.h,
15246           vm_dump.c, vm_evalbody.ci, vm_opts.h: fix comments and
15247           copyright year.
15249 Wed Nov 14 07:07:51 2007  Koichi Sasada  <ko1@atdot.net>
15251         * tool/makedocs.rb, template/insnstbl.html: removed.
15253 Wed Nov 14 02:50:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15255         * common.mk (parse.c): dependency also needs vpath.
15257         * common.mk (node_name.inc, prelude.c): VPATH in nmake does not
15258           work for targets of explicit rules.
15260 Wed Nov 14 02:11:38 2007  Tanaka Akira  <akr@fsij.org>
15262         * missing/isinf.c (isinf): don't define if the macro is defined.
15264         * configure.in: no need to set ac_cv_func_isinf=yes on non-gcc
15265           solaris.
15267 Wed Nov 14 01:34:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15269         * numeric.c (round): fallback definition.
15271         * numeric.c (flo_divmod, flo_round): use round() always.
15272           [ruby-dev:32269]
15274 Wed Nov 14 00:33:49 2007  Koichi Sasada  <ko1@atdot.net>
15276         * include/ruby/ruby.h: introduce 2 macros:
15277           RFLOAT_VALUE(v), DOUBLE2NUM(dbl).
15278           Rename RFloat#value -> RFloat#double_value.
15279           Do not touch RFloat#double_value directly.
15281         * bignum.c, insns.def, marshal.c, math.c, numeric.c, object.c,
15282           pack.c, parse.y, process.c, random.c, sprintf.c, string.c,
15283           time.c: apply above changes.
15285         * ext/dl/mkcallback.rb, ext/json/ext/generator/generator.c:
15286           ditto.
15288 Wed Nov 14 00:15:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15290         * tool/ytab.sed: get rid of GNU sed feature.  a patch from Laurent
15291           Sansonetti <laurent.sansonetti AT gmail.com> in [ruby-core:13470].
15293 Tue Nov 13 21:41:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15295         * common.mk (parse.c), ext/ripper/depend (ripper.c): process after
15296           bison with sed.  [ruby-dev:32204]
15298         * ruby.c (proc_options): use yydebug in cmdline_options.
15300         * ruby.c (process_options): set yydebug flag of parser.
15302         * parse.y (yydebug): moved into struct parser_params.
15304         * parse.y (rb_parser_get_yydebug, rb_parser_set_yydebug): parser
15305           generic methods.
15307         * */Makefile.sub (parse.c): moved to common.mk.
15309         * tool/ytab.sed: comment out yydebug definition, and substitute
15310           yyerror with parser_yyerror.
15312 Tue Nov 13 16:33:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15314         * numeric.c (flodivmod): work around for infinity.
15316         * numeric.c (flo_divmod): work around for platforms have no round().
15317           [ruby-dev:32247]
15319 Tue Nov 13 15:26:33 2007  Tanaka Akira  <akr@fsij.org>
15321         * lex.c.blt: moved from lex.c.
15323         * lex.c.src: copied from keywords.  This is the source of lex.c.blt.
15325         * Makefile.in (lex.c): use lex.c.blt if keywords is same as lex.c.src.
15327         * win32/Makefile.sub (lex.c): re-introduce copy rule.
15329         * bcc32/Makefile.sub (lex.c): ditto.
15331         * wince/Makefile.sub (lex.c): ditto.
15333 Tue Nov 13 15:21:52 2007  Koichi Sasada  <ko1@atdot.net>
15335         * compile.c (iseq_specialized_instruction): check argc.
15337 Tue Nov 13 14:44:32 2007  why the lucky stiff  <why@ruby-lang.org>
15339         * test/yaml/test_yaml.rb: fixed the failing YAML Struct test
15340           at ko1's request.
15342 Tue Nov 13 02:57:04 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
15344         * numeric.c (flo_divmod): round to the nearest integer.
15345           [ ruby-Bugs-14540 ]
15347 Tue Nov 13 00:36:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
15349         * test/ruby/test_settracefunc.rb: fixed tests for set_trace_func.
15351 Mon Nov 12 19:47:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15353         * thread.c (call_trace_proc): should return value.
15355 Mon Nov 12 19:45:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15357         * {bcc,win}32/Makefile.sub (miniruby): use $(COMMONOBJS) and $(DMYEXT)
15358           instead of $(LIBRUBY_A).
15360 Mon Nov 12 18:32:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15362         * {bcc,win}32/Makefile.sub (MINIOBJS): added prelude.$(OBJEXT).
15364 Mon Nov 12 17:13:23 2007  Tanaka Akira  <akr@fsij.org>
15366         * Makefile.in, common.mk: add prelude.o to MINIOBJS.
15368 Mon Nov 12 16:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15370         * lib/mkmf.rb (create_makefile): rdoc about srcprefix.  a patch from
15371           Daniel Berger <djberg96 AT gmail.com> in [ruby-core:13378].
15373 Mon Nov 12 16:48:09 2007  Tanaka Akira  <akr@fsij.org>
15375         * Makefile.in, common.mk: add ext_prelude.o to OBJS.
15377 Mon Nov 12 13:57:39 2007  Tanaka Akira  <akr@fsij.org>
15379         * configure.in (MINIDLNOBJS): removed.
15380           (MINIOBJS): set to dln.o if dmydln.o is not used.
15382         * Makefile.in (miniruby): use MINIOBJS instead of MINIDLNOBJS.
15384 Mon Nov 12 13:53:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15386         * misc/ruby-mode.el (ruby-parse-partial): handle stringified
15387           symbols properly using ruby-forward-string.
15389 Mon Nov 12 12:17:59 2007  Tanaka Akira  <akr@fsij.org>
15391         * configure.in (MINIDLNOBJS): defined.
15393         * Makefile.in (miniruby): use MINIDLNOBJS and COMMONOBJS instead of
15394           MINIOBJS and OBJS to avoid linking both dmydln.o and dln.o.
15396 Sun Nov 11 20:32:45 2007  Tanaka Akira  <akr@fsij.org>
15398         * {win32,wince,bcc32}/Makefile.sub: delete lex.c rule.
15400 Sun Nov 11 19:40:52 2007  Tanaka Akira  <akr@fsij.org>
15402         * Makefile.in (lex.c): simplified.
15404 Sun Nov 11 18:31:48 2007  Tanaka Akira  <akr@fsij.org>
15406         * Makefile.in (lex.c): touch lex.c if gperf failed but lex.c exists.
15407           Although this may cause non-updated lex.c,
15408           svn co may generate keywords newer than lex.c especially on
15409           a file system which can record fractional mtime such as XFS.
15411 Sun Nov 11 17:32:46 2007  Shugo Maeda  <shugo@ruby-lang.org>
15413         * insnhelper.ci (vm_call_method): pass mn->nd_clss to
15414           vm_call_cfunc() instead of klass.
15416         * vm.c (rb_thread_method_id_and_klass): traverse parent_iseq.
15418         * thread.c (call_trace_proc): use rb_thread_method_id_and_klass().
15420 Sun Nov 11 16:54:25 2007  Tanaka Akira  <akr@fsij.org>
15422         * lex.c: renamed from lex.c.blt.
15424         * Makefile.in (lex.c): use find command to check mtime.
15426 Sun Nov 11 05:34:13 2007  Eric Hodel  <drbrain@segment7.net>
15428         * bin/gem: Add forgotten gem command.
15430 Sat Nov 10 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
15432         * string.c (tr_trans): cast to unsigned char after dereference
15433           a pointer to a char to avoid SEGV with "\377".tr("a", "b").
15434           on FreeBSD/amd64.
15436 Sat Nov 10 23:08:53 2007  Tanaka Akira  <akr@fsij.org>
15438         * configure.in, common.mk, Makefile.in: don't generate
15439           libminiruby-static.a.
15441 Sat Nov 10 19:46:54 2007  Tanaka Akira  <akr@fsij.org>
15443         * configure.in, common.mk, Makefile.in: generate libminiruby-static.a
15444           which contains prelude.o for miniruby.
15446 Sat Nov 10 18:10:07 2007  Tanaka Akira  <akr@fsij.org>
15448         * gem_prelude.rb: new file for gem libraries.  currently empty.
15450         * common.mk: generate ext_prelude.c by prelude.rb and gem_prelude.rb.
15451           ruby (not miniruby) is linked with ext_prelude.o instead of
15452           prelude.o.
15454         * inits.c (rb_call_inits): don't call Init_prelude.
15456         * ruby.c: support --disable-gems option.
15457           (ruby_init_gems): new function to define Gem::Enable and
15458           invoke Init_prelude.
15459           (process_options): call ruby_init_gems just after
15460           ruby_init_loadpath.
15462         * tool/compile_prelude.rb: support multiple files.
15464 Sat Nov 10 17:27:55 2007  Shugo Maeda  <shugo@ruby-lang.org>
15466         * thread.c (call_trace_proc): don't call ID2SYM() for ID_ALLOCATOR
15467           to avoid SEGV.
15469 Sat Nov 10 16:37:07 2007  Eric Hodel  <drbrain@segment7.net>
15471         * lib/rubygems: Import RubyGems revision 1493.
15473         * lib/rubygems.rb: ditto.
15475         * lib/ubygems.rb: ditto.
15477         * lib/rbconfig/datadir.rb: ditto.
15479         * test/rubygems: ditto.
15481 Sat Nov 10 16:34:21 2007  Eric Hodel  <drbrain@segment7.net>
15483         * lib/soap/property.rb: Don't override Enumerable#inject for 1.9.
15485 Sat Nov 10 14:43:30 2007  David Flanagan  <davidflanagan@ruby-lang.org>
15487         * parse.y: use ASCII encoding for string literals that are
15488           7-bit clean, fixing regression from my previous patch
15490 Sat Nov 10 13:18:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15492         * {bcc32,win32}/Makefile.sub: vendor_ruby support.
15494 Fri Nov  9 23:33:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15496         * parse.y (parser_nextc): added single line read forward buffer.
15498         * parse.y (parser_yylex): adjust line number for fluent interface.
15500 Fri Nov  9 22:04:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15502         * vm.h (FRAME_MAGIC_MASK_BITS): bits of FRAME_MAGIC_MASK.
15504         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): use shift operations.
15506 Fri Nov  9 21:46:28 2007  Koichi Sasada  <ko1@atdot.net>
15508         * eval.c (eval): should be volatile value for GC.
15510 Fri Nov  9 17:48:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15512         * ruby.c (locale_encoding): guesstimate encoding from environment
15513           variables.  [ruby-core:13315]
15515         * ruby.c (process_options): set primary encoding from environment.
15517 Fri Nov  9 16:51:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15519         * io.c (rb_io_each_byte): should update rbuf_off and rbuf_len for
15520           each iteration.  [ruby-dev:31659][ruby-dev:32192]
15522         * variable.c (rb_cvar_set): cvar assignment obey same rule to cvar
15523           reference.  [ruby-dev:32192]
15525 Fri Nov  9 15:52:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15527         * encoding.c (enc_check_encoding, rb_set_primary_encoding): ENCODING
15528           is no longer in FL_USERS flags.
15530 Fri Nov  9 15:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15532         * string.c (rb_str_squeeze_bang): initialize squeezing table if no
15533           arguments given.
15535 Fri Nov  9 13:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15537         * enum.c (each_with_index_i): use rb_yield_values() for
15538           compatibility with Enumerator#with_index().  a patch from Yusuke
15539           ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32195]
15541 Fri Nov  9 13:45:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15543         * test/ruby/test_iterator.rb (TestIterator::IterTest::each):
15544           #each_pair is now alias to #each.  [ruby-dev:32192]
15546         * test/ruby/test_iterator.rb (TestIterator::test_assoc_yield):
15547           ditto
15549 Fri Nov  9 12:56:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15551         * eval_load.c (loaded_feature_path): check with type of given feature.
15553 Fri Nov  9 12:43:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15555         * test/ruby/test_basicinstructions.rb: updated for new class
15556           behavior.  [ruby-dev:32192]
15558         * encoding.c (enc_name): Encoding should not rely on ENCODING in
15559           the FL_USERS flags.
15561         * encoding.c (rb_enc_from_encoding): do not call rb_enc_associate
15562           for encoding itself.
15564         * encoding.c (enc_register_at): ditto.
15566         * marshal.c (r_ivar): do not set real instance variable for
15567           encoding data associated.
15569 Fri Nov  9 10:43:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15571         * eval.c (send_internal): use self in the previous frame to check for
15572           protected methods.  [ruby-core:13254]
15574         * insnhelper.ci (vm_call_method): send! method has gone.
15576 Fri Nov  9 10:38:13 2007  Koichi Sasada  <ko1@atdot.net>
15578         * marshal.c (w_object): should be SPECIAL_CONST_P() instead of
15579           IMMEDIATE_P().
15581 Fri Nov  9 10:29:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15583         * eval.c (rb_invoke_method): check if invoked in function style.
15584           [ruby-core:13245]
15586         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): stores and returns VM
15587           calling flags.
15589         * vm.c (rb_vm_cfunc_funcall_p): returns if the current method is
15590           invoked in function style.
15592 Fri Nov  9 10:10:21 2007  Koichi Sasada  <ko1@atdot.net>
15594         * cont.c: add rb_context_t#type.
15596 Fri Nov  9 10:05:54 2007  Koichi Sasada  <ko1@atdot.net>
15598         * ruby.c (set_arg0): fix breaking environ bugs.
15600 Fri Nov  9 07:26:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15602         * random.c: update MT URL.[ruby-core:13305].
15604 Thu Nov  8 17:09:55 2007  David Flanagan  <davidflanagan@ruby-lang.org>
15606         * object.c: improve docs for Object.tap
15608         * ChangeLog: fix bogus dates on my previous entries
15610 Thu Nov  8 15:13:56 2007 David Flanagan <davidflanagan@ruby-lang.org>
15612         * parse.y: fix segfault with \x escapes in regexps
15613           delete unused #if 0 code regions from previous patch
15615 Thu Nov  8 12:12:10 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15617         * parse.y (parser_read_escape): remove C99/gcc-ism.
15619 Thu Nov  8 07:54:22 2007 David Flanagan <davidflanagan@ruby-lang.org>
15621         * parse.y: patch, based on Nobu's, work to support \u escapes
15622                    also modifications for better coderange detection
15624         * test/ruby/test_unicode_escapes.rb: test cases
15626         * test/ruby/test_mixed_unicode_escapes.rb: mixed encoding test cases
15628 Thu Nov  8 07:14:37 2007 David Flanagan <davidflanagan@ruby-lang.org>
15630         * parse.y (rb_intern3): commented out broken code that prevented
15631           correct interning of multi-byte symbols.  Without this patch
15632           :x==:x is false when x is a multi-byte character.
15634 Thu Nov  8 07:04:31 2007 David Flanagan <davidflanagan@ruby-lang.org>
15636         * string.c (tr_setup_table, tr_trans): fix test failures
15637           in test/ruby/test_string.rb
15639 Wed Nov  7 15:07:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15641         * enum.c (enum_each_with_index): make different arrays at each
15642           iteration.  [ruby-dev:32181]
15644 Wed Nov  7 05:17:24 2007  David Flanagan <davidflanagan@ruby-lang.org>
15646         * eval.c: fix typo in invoke_method documentation
15648 Wed Nov  7 03:52:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15650         * array.c (rb_ary_product): core dumped with non array arguments.
15651           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32180]
15653 Wed Nov  7 03:32:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15655         * lib/rexml/encodings/SHIFT-JIS.rb (REXML::Encoding): place -x for
15656           nkf conversion.  a patch from <moonwolf AT moonwolf.com>.
15657           [ruby-dev:32183]
15659 Wed Nov  7 02:59:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15661         * array.c (rb_ary_each_index): should return meaningful value.
15663 Tue Nov  6 16:37:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15665         * eval_load.c (loaded_feature_path): need to expand relative paths.
15667         * eval_load.c (rb_feature_p): check if the feature is loading with
15668           load path.  [ruby-dev:31932]
15670         * eval_load.c (load_lock): check the result of barrier waiting.
15672         * thread.c (rb_barrier_wait): check if owned by the current thread.
15674         * thread.c (rb_barrier_release): ditto.
15676 Mon Nov  5 08:01:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15678         * eval.c (Init_eval): move #send to Kernel module from BasicObject.
15680 Mon Nov  5 05:17:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15682         * lib/optparse.rb (OptionParser::Switch::summarize): fix for long form
15683           option with very long argument.  a patch from Kobayashi Noritada
15684           <nori1 AT dolphin.c.u-tokyo.ac.jp> in [ruby-list:44179].
15686 Mon Nov  5 01:20:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15688         * parse.y (call_args): remove "parenthesize argument(s) for future
15689           version" warning.  when I added this warning, I had a plan to
15690           reimplement the parser that is simpler than the current one.
15691           since we abandoned the plan, warning no longer required.
15693 Mon Nov  5 01:02:56 2007  Minero Aoki  <aamine@loveruby.net>
15695         * lib/net/http.rb (HTTPHeader#initialize): provide default
15696           User-Agent to fix 500 error on some corrupted HTTP servers.
15697           [ruby-core:13135]
15699 Mon Nov  5 00:32:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15701         * eval.c (rb_f_send): allow send/__send__ to call methods of all
15702           visibility again.  we no longer provide __send, __send!.
15704         * eval.c (rb_invoke_method): new method to honor private
15705           visibility.  if it's invoked in a function call style, it calls
15706           private methods as well (previous 1.9 send behavior).
15708 Mon Nov  5 00:24:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15710         * win32/Makefile.sub: vendor_ruby support.
15712         * configure.in (RUBY_LIB): duplicated.
15714 Mon Nov  5 00:01:33 2007  Tanaka Akira  <akr@fsij.org>
15716         * re.c (rb_reg_quote): quote \v as well.
15718 Sun Nov  4 23:51:59 2007  Tanaka Akira  <akr@fsij.org>
15720         * re.c (rb_reg_initialize_m): use StringValuePtr instead of
15721           StringValueCStr because \0 exists when Regexp.new("\0").
15723 Sun Nov  4 08:11:19 2007  Tanaka Akira  <akr@fsij.org>
15725         * gc.c (count_objects): count TOTAL.
15727 Sun Nov  4 03:58:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15729         * string.c (tr_setup_table): use C array for characters that fit
15730           in a byte to gain performance.
15732         * string.c (rb_str_delete_bang): ditto.
15734         * string.c (rb_str_squeeze_bang): ditto.
15736         * string.c (rb_str_count): ditto.
15738         * string.c (tr_trans): ditto.
15740 Sun Nov  4 00:06:40 2007  Tanaka Akira  <akr@fsij.org>
15742         * gc.c (count_objects): ObjectSpace.count_objects implemented.
15743           [ruby-core:12301]
15745 Sat Nov  3 22:49:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15747         * hash.c (rb_hash_each_pair): make Hash#each to be alias to
15748           Hash#each_pair for compatibility and clarity.
15750         * hash.c (env_each_pair): ditto.
15752 Sat Nov  3 22:41:05 2007  Tanaka Akira  <akr@fsij.org>
15754         * configure.in: --with-vendor-hdrdir implemented.
15756         * lib/mkmf.rb: check --vendor argument.
15758         * README.EXT: explain --vendor option for extconf.rb
15760         * README.EXT.ja: ditto.
15762 Sat Nov  3 20:30:48 2007  Tanaka Akira  <akr@fsij.org>
15764         * configure.in: --with-vendordir implemented.
15766         * mkconfig.rb: add config to vendorlibdir and vendorarchdir.
15768         * instruby.rb: make vendor library directories.
15770         * ruby.c: insert vendor library directories into load path.
15772 Fri Nov  2 20:55:49 2007  Kouhei Sutou  <kou@cozmixng.org>
15774         * lib/rss/content.rb, lib/rss/content/, lib/rss/maker/content.rb,
15775           test/rss/test_content.rb, test/rss/test_maker_content.rb,
15776           test/rss/rss-testcase.rb (RSS::TestCase): supported
15777           content:encoded with RSS 2.0.
15778           Suggested by Sam Lown. Thanks.
15780 Fri Nov  2 20:47:04 2007  Kouhei Sutou  <kou@cozmixng.org>
15782         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.0 -> 0.2.1.
15784 Thu Nov  1 21:56:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15786         * error.c (Init_Exception): make NameError to be subclass of
15787           StandardError again.
15789         * error.c (Init_Exception): make SecurityError to be subclass of
15790           Exception, since it's too important to be handled implicitly.
15792 Thu Nov  1 14:51:39 2007 David Flanagan <davidflanagan@ruby-lang.org>
15793         * enum.c (take_while_i, drop_while_i) add RTEST to handle nil return
15795 Thu Nov  1 02:12:50 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15797         * common.mk (prereq): update the path of prelude.c.
15799         * common.mk (prelude.c): rollback a part of r13675, because it is not
15800           documented and causes build error.
15802 Thu Nov  1 01:52:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15804         * enum.c (enum_drop): fix typo.
15806 Thu Nov  1 01:51:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15808         * vm_core.h (ruby_current_thread): RUBY_EXTERN'ed for probeprofiler.
15810 Thu Nov  1 00:46:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15812         * win32/configure.bat, setup.mak: now can recognize OS even if
15813           the ``--target'' option of configure is omitted.
15815         * win32/README.win32: update the descriptions about compiler.
15817 Wed Oct 31 03:13:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15819         * enum.c (enum_take_while): separate with-block form.
15821         * enum.c (drop_while_i): ditto.
15823         * enum.c (enum_butfirst): abandon butfirst method.  reverted.
15825 Tue Oct 30 10:03:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15827         * enum.c (enum_butfirst): add a new method to iterates over
15828           elements but first n.  RDoc need to be updated.
15830         * enumerator.c (Init_Enumerator): remove unnecessary symbol
15831           initialization.
15833 Mon Oct 29 18:42:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15835         * parse.y (bvar): block-local variable can shadow outer variable.
15836           [ruby-core:13036]
15838 Mon Oct 29 17:58:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15840         * string.c (rb_str_substr): performance improvement.  [ruby-dev:31806]
15842 Mon Oct 29 17:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15844         * encoding.c (rb_enc_replicate): new function to replicate encoding.
15846         * encoding.c (enc_based_encoding): Encoding#base_encoding returns
15847           based encoding of replica.
15849 Mon Oct 29 17:18:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15851         * encoding.c (rb_enc_compatible): ASCII encoding is compatible with
15852           ASCII-compatible encoding, even for non-string objects.
15854 Sun Oct 28 21:50:02 2007  Tanaka Akira  <akr@fsij.org>
15856         * lib/open-uri.rb: :redirect option implemented to disable redirects.
15857           (OpenURI::HTTPRedirect): new exception class for redirection.
15859 Fri Oct 26 17:38:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15861         * numeric.c (int_chr): take an optional encoding parameter.
15862           [ruby-core:12816]
15864 Fri Oct 26 17:14:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15866         * numeric.c (fix_pow): returns 1.0 for 0**0.0.
15868         * numeric.c (fix_pow): returns infinity for 0**-1.  [ruby-dev:32084]
15870 Fri Oct 26 15:00:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15872         * misc/ruby-style.el (ruby-style-{case,label}-indent): adjust for
15873           labels inside switch block.
15875 Fri Oct 26 05:48:57 2007  David Flanagan <davidflanagan@ruby-lang.org>
15876         * array.c: raise IndexError for negative length in rb_ary_fill
15878 Wed Oct 25 07:12:03 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15880         * lib/net/telnet.rb (Net::Telnet#login): Allowing "passphrase" in
15881           addition to "password" for Telnet login prompts. [ruby-Bugs-10746]
15883 Wed Oct 25 06:34:11 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15885         * lib/net/telnet.rb (Net::Telnet#login): Making the password prompt
15886           pattern case insensitive. [ruby-Bugs-10746]
15888 Fri Oct 26 04:21:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15890         * lib/net/pop.rb (Net::POP3::do_start): type fixed.  a patch from
15891           Dan Zwell <dzwell AT zwell.net> in [ruby-core:12941].
15893 Fri Oct 26 01:48:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15895         * array.c (rb_ary_assoc): check and convert inner arrays (assocs)
15896           using #to_ary.
15898         * hash.c (rb_hash_s_create): check and convert argument hash
15899           using #to_hash.
15901         * hash.c (rb_hash_s_create): Hash#[] now takes assocs as source of
15902           hash conversion.
15904 Thu Oct 25 16:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15906         * parse.y (parser_yylex): dot at the head of the line denote line
15907           continuation from previous one to support fluent interface.
15908           [experimental]
15910         * misc/ruby-mode.el (ruby-calculate-indent): support fluent dot.
15912 Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15914         * io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
15916 Thu Oct 25 13:59:53 2007 David Flanagan <davidflanagan@ruby-lang.org>
15918         * parse.y (parser_tokspace): increment tokidx
15919           fixes test failure at [test/ruby/test_stringchar.rb:72]
15921 Thu Oct 25 09:49:49 2007  akira yamada  <akira@ruby-lang.org>
15923         * lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
15924           scheme. [ruby-dev:31896]
15926 Wed Oct 25 06:23:14 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15928         * lib/xmlrpc/parser.rb (XMLRPC::Convert::dateTime): Fixing a bug that
15929           caused time zone conversion to fail for some ISO 8601 date formats.
15930           [ruby-Bugs-12677]
15932 Wed Oct 25 04:59:28 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15934         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Explicitly start
15935           the HTTP connection to support keepalive requests. [ruby-Bugs-9353]
15937 Wed Oct 25 04:46:53 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15939         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Improving the error
15940           message for Content-Type check failures. [ruby-core:12163]
15942 Wed Oct 25 03:45:08 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15944         * lib/xmlrpc/utils.rb (XMLRPC::ParseContentType#parse_content_type):
15945           Making Content-Type checks case insensitive. [ruby-Bugs-3367]
15947 Wed Oct 24 17:09:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15949         * parse.y (parser_tokspace): make space in token buffer.
15951         * parse.y (parser_yylex): fix encoding of single character literal.
15953 Tue Oct 23 13:44:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15955         * parse.y (call_args2): nd_head of NODE_BLOCK_PASS should be a list.
15956           [ruby-core:12850]
15958 Tue Oct 23 10:42:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15960         * ruby.c (process_options): encoding set by command line option takes
15961           priority over the encoding in the source, as the primary encoding.
15963 Mon Oct 22 19:24:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15965         * ruby.c (proc_options): allow space after -E (encoding) option.
15967 Mon Oct 22 11:03:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15969         * encoding.c (enc_check_encoding): returns index now.
15971         * encoding.c (rb_enc_compatible): check if two objects have compatible
15972           encodings.
15974         * encoding.c (enc_compatible_p): added Encoding.compatible?.
15976         * include/ruby/encoding.h (rb_enc_compatible): prototype.
15978 Sun Oct 21 18:29:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15980         * encoding.c (rb_enc_default, rb_enc_primary): return pointers to
15981           rb_encoding of default and primary respectively.  [ruby-core:12795]
15983         * encoding.c (set_primary_encoding): removed primary_encoding setter.
15985 Sat Oct 20 13:17:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15987         * enum.c (enum_cycle): hide temporary array from ObjectSpace.
15988           [ruby-core:12762]
15990 Sat Oct 20 11:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15992         * file.c (rb_get_path): returns frozen string.
15994         * file.c (rb_file_s_chown, rb_file_s_lchown): use uid_t and gid_t.
15996 Fri Oct 19 20:08:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15998         * encoding.c (rb_id_encoding): returns ID "encoding".
16000         * marshal.c (w_encoding): dump encoding name.
16002         * marshal.c (r_ivar): load encoding.
16004 Fri Oct 19 16:41:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16006         * parse.y (parser_regx_options, reg_compile_gen): relaxened encoding
16007           matching rule.
16009         * re.c (rb_reg_initialize): always set encoding of Regexp.
16011         * re.c (rb_reg_initialize_str): fix encoding for non 7bit-clean
16012           strings.
16014         * re.c (rb_reg_initialize_m): use ascii encoding for 'n' option.
16016 Fri Oct 19 11:09:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16018         * ruby.c (process_options): set primary encoding from the parser
16019           always.  [ruby-core:12758]
16021         * ruby.c (load_file): should not discard the parser parameter.
16023 Fri Oct 19 10:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16025         * range.c (range_last): removed unused variables.
16027 Thu Oct 18 17:08:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16029         * enum.c (enum_find_index): update RDoc.  a patch from David Flanagan
16030           <david AT davidflanagan.com> in [ruby-core:12710].
16032         * enum.c (enum_take, enum_drop): ditto.
16034         * enum.c (enum_cycle): should not cause infinite loop for empty
16035           arrays.  [ruby-core:12710]
16037         * range.c (Init_Range): typo fixed.
16039 Thu Oct 18 16:39:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16041         * lib/rexml/source.rb (REXML::SourceFactory::SourceFactory): more
16042           duck typed.  better performance on JRuby.
16043           http://headius.blogspot.com/2007/10/another-performance-discovery-rexml.html
16045 Thu Oct 18 09:33:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16047         * range.c (range_first): takes first n element if argument is
16048           given.  [ruby-core:12697]
16050         * range.c (range_last): returns last n elements if argument is
16051           given.
16053         * array.c (rb_ary_subseq, rb_ary_last): export.
16055 Wed Oct 17 17:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16057         * ruby.c (proc_options): fixed reversed condition.  [ruby-core:12722]
16059 Wed Oct 17 13:54:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16061         * re.c (rb_reg_s_union): the last check was not complete.
16063 Wed Oct 17 11:30:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16065         * encoding.c (rb_enc_from_encoding, rb_enc_register): associate index
16066           to self.
16068         * encoding.c (enc_capable): Encoding objects are encoding capable.
16070         * re.c (rb_reg_s_union): check if encoding matching by exact encoding
16071           objects.
16073 Wed Oct 17 06:18:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16075         * encoding.c (rb_enc_alias, rb_enc_find_index): changed
16076           enc_table_alias to a name-to-index hash.
16078         * encoding.c (rb_enc_init): use upper case names for aliases to use as
16079           constant names.
16081         * encoding.c (enc_find): allow symbols.
16083         * encoding.c (Init_Encoding): define encoding constants.
16085         * st.c (strcasehash): fix wrong code range condition.
16087 Wed Oct 17 05:07:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16089         * encoding.c (rb_primary_encoding): added Encoding.primary_encoding.
16091         * parse.y (rb_parser_encoding): added.
16093         * ruby.c (proc_options): added -E and --encoding options.
16095         * ruby.c (process_options): set primary encoding from command line
16096           option if set, or source encoding.
16098         * include/ruby/encoding.h (rb_enc_from_encoding,
16099           rb_get_primary_encoding, rb_set_primary_encoding): prototypes.
16101         * include/ruby/node.h (rb_parser_encoding): prototype.
16103 Wed Oct 17 03:37:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16105         * re.c (rb_reg_desc): set encoding.
16107         * re.c (rb_reg_s_union): check encodings.
16109         * enc/utf8.c (utf8_code_to_mbclen): 0xfe and 0xff are valid Unicode to
16110           be encoded to 2bytes in UTF-8.  [ruby-core:12700]
16112 Wed Oct 17 02:50:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16114         * string.c (rb_str_ord): use encoding.
16116 Wed Oct 17 01:57:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16118         * re.c (rb_reg_initialize_m): allow binary encoding option.
16119           [ruby-dev:32083]
16121 Tue Oct 16 19:48:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16123         * re.c (rb_reg_s_union): check for encoding of original object.
16125 Tue Oct 16 18:28:51 2007  Tanaka Akira  <akr@fsij.org>
16127         * debug.c: use enum for constants for gdb if possible.
16129 Tue Oct 16 18:20:10 2007  Tanaka Akira  <akr@fsij.org>
16131         * ruby.c, debug.c: move debug enum and constants to debug.c.
16133 Tue Oct 16 18:16:15 2007  Tanaka Akira  <akr@fsij.org>
16135         * ruby.c (RUBY_ENCODING_SHIFT): added as enum.
16137         * .gdbinit (rp): show encoding and coderange for strings.
16139 Tue Oct 16 14:48:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16141         * parse.y (parser_regx_options): check if regexp encoding option
16142           matches to current encoding.
16144         * re.c (char_to_option, rb_char_to_option_kcode): 'n' is not kcode
16145           option now.
16147         * re.c (rb_reg_to_s, rb_reg_error_desc): copy encoding rather than
16148           append as an option.
16150         * re.c (make_regexp, rb_reg_prepare_re): use encoding of Regexp and
16151           String instead of kcode.
16153         * re.c (rb_reg_initialize): set fixed option if none is set.
16155         * re.c (rb_reg_regcomp): ditto.
16157         * re.c (rb_reg_equal): check if encodings are equal.
16159         * re.c (rb_reg_initialize_m): encoding option is obsolete.
16161         * re.c (rb_kcode, rb_get_kcode, rb_set_kcode): removed.
16163         * re.c (Init_Regexp): removed Regexp#kcode method.
16165         * ruby.c (proc_options): allow long encoding name.
16167 Tue Oct 16 14:03:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16169         * re.c (rb_reg_s_union): encoding of all regexp objects should
16170           match.  [ruby-dev:32076]
16172 Tue Oct 16 13:49:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16174         * encoding.c (enc_to_s): rename function.
16176 Tue Oct 16 13:25:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16178         * string.c (rb_str_new4): should copy encoding.  a patch from NARUSE,
16179           Yui <naruse AT airemix.com>.  [ruby-dev:32076]
16181 Tue Oct 16 01:31:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16183         * enum.c (enum_inject): RDoc update.  a patch from David Flanagan
16184           <david AT davidflanagan.com> in [ruby-core:12710].
16186 Tue Oct 16 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16188         * encoding.c (Init_Encoding): define #to_s to show encoding name
16189           in to_s representation as well as #inspect.
16191 Mon Oct 15 13:24:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16193         * numeric.c (flo_round): should be number but not rounding factor.
16194           [ruby-dev:32060]
16196 Mon Oct 15 11:45:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16198         * marshal.c (r_bytes0): refined length check.  [ruby-dev:32059]
16200 Mon Oct 15 10:24:19 2007  Tanaka Akira  <akr@fsij.org>
16202         * process.c (pst_to_s): returns a string such as "pid 10220 exit 1"
16203           instead of "256".  [ruby-dev:32053]
16204           (pst_inspect): change format
16205           "#<Process::Status: pid=10220,exited(1)>" to
16206           "#<Process::Status: pid 10220 exit 1>".
16208 Mon Oct 15 09:58:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16210         * marshal.c (r_bytes0): check if source has enough data.
16211           [ruby-dev:32054]
16213 Mon Oct 15 01:15:09 2007  Tanaka Akira  <akr@fsij.org>
16215         * ext/socket/socket.c (s_accept_nonblock): make accepted fd
16216           nonblocking.  [ruby-talk:274079]
16218 Sun Oct 14 17:31:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16220         * encoding.c (rb_obj_encoding): rdoc update.  a patch from David
16221           Flanagan <david AT davidflanagan.com>.  [ruby-core:12664]
16223         * encoding.c (enc_dump, enc_load): marshaling feature.  a patch from
16224           David Flanagan.  [ruby-core:12665]
16226         * encoding.c (Init_Encoding): undefine allocator of Encoding.
16227           [ruby-core:12665], [ruby-core:12666]
16229         * test/ruby/test_encoding.rb: tests for Encoding from David Flanagan
16230           [ruby-core:12665]
16232 Sun Oct 14 11:09:09 2007  Tanaka Akira  <akr@fsij.org>
16234         * lib/pp.rb (PP::PPMethods#pp_hash): don't sort keys because hash is
16235           ordered.
16236           (ENV.pretty_print): call pp_hash with sorted hash.
16238 Sun Oct 14 04:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16240         * configure.in (AC_SYS_LARGEFILE): keep results also in command
16241           options, to vail out of mismatch.  [ruby-list:44114]
16243         * mkconfig.rb, lib/mkmf.rb (configuration): add DEFS.
16245 Sun Oct 14 03:55:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16247         * win32/mkexports.rb: deal with __fastcall name decorations.
16248           [ruby-list:44111]
16250 Sun Oct 14 02:20:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16252         * encoding.c (rb_cEncoding): new Encoding class.
16254         * encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
16256         * encoding.c (rb_obj_encoding): return Encoding object now.
16258         * gc.c (garbage_collect): mark Encoding objects.
16260         * inits.c (rb_call_inits): call Init_Encoding.
16262         * string.c (rb_str_force_encoding): accept Encoding object as well as
16263           encoding name.
16265         * include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
16266           prototypes.
16268 Sun Oct 14 01:03:30 2007  Tanaka Akira  <akr@fsij.org>
16270         * lib/open-uri.rb (OpenURI.open_http): fix :ssl_ca_cert option.
16272 Sat Oct 13 21:23:21 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
16274         * ext/win32ole/win32ole.c (foletype_s_ole_classes,
16275           foletype_s_typelibs): refactoring.
16277         * test/win32ole/test_win32ole_type.rb: add some test.
16279         * ext/win32ole/win32ole.c (Init_win32ole): change method name
16280           WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes.
16282         * test/win32ole/test_win32ole_typelib.rb: ditto.
16284         * test/win32ole/test_folderitem2_invokeverb.rb: check create
16285           shortcut string more strictly (This test is invoked in Japanese
16286           Windows environment).
16288 Sat Oct 13 09:11:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16290         * parse.y (set_file_encoding): case-insensitive search, a patch from
16291           David Flanagan <david AT davidflanagan.com> [ruby-core:12629]
16293 Sat Oct 13 09:02:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16295         * {bcc,win}32/mkexports.rb: explicit data.  [ruby-list:44108]
16297 Sat Oct 13 00:17:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16299         * lib/rexml/document.rb (REXML::Document::write): leaky
16300           modification trans -> transitive.  [ruby-dev:32040]
16302 Sat Oct 13 00:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16304         * parse.y: encoding specifier should work if the line matches
16305           /coding[:=] ?/, a la Python PEP-263, so that VIM comments like
16306           "# vim: set fileencoding=<encoding name>" should be recognized.
16308 Fri Oct 12 15:04:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16310         * parse.y (magic_comments): add "encoding" as same as "coding".
16312         * parse.y (set_file_encoding): special file encoding handling.
16314         * parse.y (parser_yylex): ditto.
16316 Fri Oct 12 12:44:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16318         * array.c (rb_ary_combination): fixed memory corruption due to too
16319           small memory allocation
16321         * array.c (rb_ary_product): accessing out of memory bounds.
16322           condition fixed.
16324 Fri Oct 12 11:22:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16326         * re.c (match_values_at): make #select to be alias to #values_at
16327           to adapt RDoc description.  [ruby-core:12588]
16329 Thu Oct 11 21:10:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16331         * include/ruby/node.h (NOEX_LOCAL): remove unused local visibility.
16333         * class.c (ins_methods_push): ditto.
16335         * class.c (rb_class_local_methods): method removed.
16337 Thu Oct 11 14:29:31 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16339         * */Makefile.sub (COMMON_MACROS): workaround for old SDK's bug.
16340           [ruby-core:12584]
16342 Thu Oct 11 06:35:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16344         * Makefile.in, */Makefile.sub (VPATH): add enc directory.
16346         * common.mk (ENCOBJS): encoding objects.
16348         * enc: directory for encodings.
16350 Thu Oct 11 00:04:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16352         * include/ruby/oniguruma.h (OnigEncodingTypeST): add OnigEncoding
16353           parameter to every function members.
16355         * include/ruby/oniguruma.h (OnigEncodingTypeST): add auxiliary
16356           data member to provide user defined data for an encoding.
16358 Wed Oct 10 23:32:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16360         * re.c (rb_reg_s_quote): no longer takes optional second argument
16361           that has never been documented.
16363 Wed Oct 10 15:39:04 2007  Tanaka Akira  <akr@fsij.org>
16365         * encoding.c (rb_enc_init): don't alias iso-8859-1 to ascii.
16367         * ascii.c (OnigEncodingASCII): change the name US-ASCII to ASCII-8BIT.
16369 Wed Oct 10 14:31:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16371         * string.c (rb_enc_str_coderange): fixed check for non-ascii.
16373 Tue Oct  9 21:35:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16375         * array.c (rb_ary_permutation, rb_ary_combination): missing type
16376           names.
16378         * array.c (rb_ary_permutation): used buffer should be t1.
16380         * array.c (rb_ary_permutation): use frozen shared hidden array.
16381           [ruby-dev:31985]
16383 Tue Oct  9 16:58:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16385         * array.c: remove to_a completely.
16387         * array.c (tmpbuf): keep DRY to clear klass of temporary objects.
16389 Tue Oct  9 16:33:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16391         * array.c (rb_ary_permutation, rb_ary_combination, rb_ary_product):
16392           hide internal buffer objects.  [ruby-dev:31982]
16394 Tue Oct  9 16:00:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16396         * parse.y (parser_read_escape, parser_tokadd_escape): check code range.
16397           [ruby-dev:31980]
16399 Tue Oct  9 15:40:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16401         * parse.y (STR_NEW3): check for if single byte sequence.
16403 Mon Oct  8 20:06:29 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
16405         * lib/net/imap.rb, lib/net/smtp.rb, lib/net/pop.rb: hostname should
16406           be verified against server's identity as presented in the server's
16407           certificate. [ruby-dev:31960]
16409         * ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.
16411 Sun Oct  7 22:37:47 2007  Kouhei Sutou  <kou@cozmixng.org>
16413         * test/rss/test_taxonomy.rb, test/rss/test_parser_1.0.rb,
16414           test/rss/test_image.rb, test/rss/rss-testcase.rb: ensured
16415           declaring XML namespaces.
16417 Sun Oct  7 22:00:01 2007  Tanaka Akira  <akr@fsij.org>
16419         * include/ruby/node.h: make node flags as VALUE type.
16420           enum ruby_node_flags removed.
16422         * ruby.c: define RUBY_NODE_* as const for gdb.
16424 Sun Oct  7 18:57:12 2007  Tanaka Akira  <akr@fsij.org>
16426         * include/ruby/ruby.h: enum ruby_value_flags removed.  [ruby-dev:31959]
16428         * ruby.c: define RUBY_FL_* as const VALUE for gdb.
16430 Sun Oct  7 17:50:14 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
16432         * lib/net/http.rb: remove enable_post_connection_check flag.
16434         * lib/open-uri.rb: ditto.
16436 Sun Oct  7 15:48:40 2007  Koichi Sasada  <ko1@atdot.net>
16438         * insns.def (opt_eq): fix to use rb_str_equal().
16440 Sat Oct  6 23:14:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16442         * string.c (rb_str_to_i): update RDoc since base can be any value
16443           between 2 and 36.  [ruby-talk:272879]
16445 Sat Oct  6 16:24:02 2007  Koichi Sasada  <ko1@atdot.net>
16447         * cont.c (cont_free): check Fiber or Continuation.
16449         * bootstraptest/test_knownbug.rb: remove a fixed test.
16451 Sat Oct  6 14:56:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16453         * encoding.c (rb_enc_register): returns new index or -1 if failed.
16455         * encoding.c (rb_enc_alias): check if original name is registered.
16457         * encoding.c (rb_enc_init): register in same order as kcode options in
16458           re.c.  added new aliases.
16460         * string.c (rb_str_force_encoding): check if valid encoding name.
16462 Sat Oct  6 14:32:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16464         * insns.def (opt_eq): get rid of gcc bug.
16466 Sat Oct  6 02:34:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16468         * include/ruby/defines.h: no longer provide DEFAULT_KCODE.
16470 Fri Oct  5 21:24:59 2007  Tanaka Akira  <akr@fsij.org>
16472         * re.c (rb_reg_s_union_m): Regexp.union accepts single argument which
16473           is an array of patterns.  [ruby-list:44084]
16475 Fri Oct  5 16:42:27 2007  Tanaka Akira  <akr@fsij.org>
16477         * bootstraptest/runner.rb (assert_not_match): new method.
16479 Fri Oct  5 16:15:52 2007  Akinori MUSHA  <knu@iDaemons.org>
16481         * configure.in: Turn on --enable-pthread by default for FreeBSD
16482           5.2.1-RELEASE and later, and remove pthread support for older
16483           versions which has never worked perfectly.
16485 Fri Oct  5 16:11:50 2007  Akinori MUSHA  <knu@iDaemons.org>
16487         * time.c (time_to_s): Fix documentation.  Time format changed.
16489 Fri Oct  5 04:02:39 2007  Akinori MUSHA  <knu@iDaemons.org>
16491         * lib/ipaddr.rb (in_addr, in6_addr, addr_mask): Make some minor
16492           code optimization.
16494 Fri Oct  5 03:25:51 2007  Akinori MUSHA  <knu@iDaemons.org>
16496         * lib/ipaddr.rb (<=>): Implement IPAddr#<=> and make IPAddr
16497           comparable.
16499         * lib/ipaddr.rb (succ): Implement IPAddr#succ.  You can now create
16500           a range between two IPAddr's, which (Range) object is
16501           enumerable.
16503         * lib/ipaddr.rb (to_range): A new method to create a Range object
16504           for the (network) address.
16506 Fri Oct  5 03:14:45 2007  Akinori MUSHA  <knu@iDaemons.org>
16508         * lib/ipaddr.rb (coerce_other): Support type coercion and make &,
16509           |, == and include? accept a string or an integer instead of an
16510           IPAddr object as the argument.
16512         * lib/ipaddr.rb (initialize): Give better error messages.
16514         * lib/ipaddr.rb: Improve documentation.
16516 Thu Oct  4 20:45:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16518         * process.c (Init_process): win32 has our own WNOHANG definition, so
16519           remove unnecessary #ifdef guard.
16521 Thu Oct  4 20:17:19 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16523         * array.c (rb_ary_permutation, rb_ary_product): support non C99
16524           compilers.
16526 Thu Oct  4 17:33:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16528         * re.c (kcode_setter): Perl-ish global variable `$=' no longer
16529           effective.
16531         * io.c (Init_IO): remove obsolete variables: $defout, $deferr.
16533         * re.c (Init_Regexp): remove obsolete const alias: MatchingData.
16535         * time.c (Init_Time): remove obsolete Time::times.
16537         * re.c (ignorecase_setter): change warning message.
16539         * re.c (ignorecase_getter): now gives warning.
16541         * string.c (rb_str_cmp_m): update RDoc document.
16543         * re.c (kcode_setter): restore erroneously removed setter.
16545 Thu Oct  4 16:28:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16547         * encoding.c (rb_obj_encoding): returns encoding of the given object.
16549         * parse.y (reg_compile_gen): copy encoding from source string if
16550           non-empty.
16552         * re.c (Init_Regexp): new method Regexp#encoding.
16554         * string.c (str_encoding): moved to encoding.c
16556 Thu Oct  4 15:49:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16558         * array.c (rb_ary_permutation): remove C99 dependency.
16559           [ruby-dev:31934]
16561         * array.c (rb_ary_product): ditto.
16563 Wed Oct  3 23:37:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16565         * ext/nkf/nkf.c, bin/ri, bin/irb: fixed typos in doc and comments.
16566           a patch from Eugene Ossintsev  <eugoss AT gmail.com>.
16567           [ruby-core:12375]
16569 Wed Oct  3 17:56:22 2007  Koichi Sasada  <ko1@atdot.net>
16571         * benchmark/driver.rb: enable specify label to executable.
16572           (-e "ruby1::/path/to/ruby1; ruby2::/path/to/ruby2; ...")
16574 Wed Oct  3 16:58:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16576         * parse.y (parser_str_new, parser_yylex, rb_intern3): set code-range
16577           bits.
16579         * parse.y (parser_tokadd_string): check code-range.
16581         * parse.y (parser_parse_string, parser_here_document): ditto.
16583         * parse.y (parser_set_encode): check if valid encoding.
16585 Wed Oct  3 15:43:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16587         * variable.c (rb_cvar_set): check whether class variable is
16588           defined in superclasses.  root classes have higher priority.
16589           removes lower class variable entry from IV_TBL (if it's defined
16590           in classes, not modules).
16592         * variable.c (rb_cvar_get): ditto.
16594 Wed Oct  3 10:06:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16596         * ruby.c (ruby_process_options): push frame with program name.
16597           [ruby-core:12351]
16599 Tue Oct  2 20:16:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16601         * win32/win32.c (init_env): refactoring. remove unused code.
16603 Tue Oct  2 12:30:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16605         * array.c (rb_ary_product): generalized product, now takes
16606           arbitrary number of arrays.  a patch from David Flanagan
16607           <david AT davidflanagan.com>.  [ruby-core:12346]
16609 Tue Oct  2 08:25:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16611         * array.c (rb_ary_permutation): implementation contributed from
16612           David Flanagan.  [ruby-core:12344]
16614         * array.c (rb_ary_combination): RDoc update to clarify.  a patch
16615           from David Flanagan.  [ruby-core:12344]
16617         * array.c (rb_ary_permutation): small dirty hack by Matz to avoid
16618           arrays on stack.
16620 Tue Oct  2 07:01:05 2007  Koichi Sasada  <ko1@atdot.net>
16622         * proc.c (proc_dup): proc->block.proc should be self.
16624         * bootstraptest/test_knownbug.rb, test_method.rb:
16625           move a fixed test.
16627 Mon Oct  1 16:17:44 2007  Tanaka Akira  <akr@fsij.org>
16629         * bootstraptest/test_method.rb: use assert_normal_exit to test
16630           [ruby-dev:31818].
16632 Mon Oct  1 15:57:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16634         * gc.c (id2ref): skip ICLASS.
16636 Mon Oct  1 15:29:35 2007  Tanaka Akira  <akr@fsij.org>
16638         * bootstraptest/runner.rb (assert_normal_exit): use `` instead of
16639           system.
16641 Mon Oct  1 15:17:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16643         * gc.c (id2ref): T_VALUES is less than T_BLOCK.  [ruby-dev:31911]
16645 Mon Oct  1 10:58:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16647         * ruby.c (require_libraries): use require method instead of calling
16648           rb_require directly.  [ruby-dev:31322]
16650 Mon Oct  1 10:52:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16652         * eval.c (ruby_options), ruby.c (proc_options, process_options): not
16653           call exit(2) directly.  [ruby-dev:31912]
16655         * eval.c (ruby_run_node): deal with direct exit code.
16657 Sun Sep 30 17:12:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16659         * string.c (rb_str_append): always set encoding, and coderange
16660           cache bits.
16662         * include/ruby/encoding.h (ENC_CODERANGE_SET): fixed a bug not to
16663           set cache bits.
16665 Sun Sep 30 11:52:11 2007  Tanaka Akira  <akr@fsij.org>
16667         * bootstraptest/runner.rb (pretty): don't show beginning empty line.
16669 Sun Sep 30 11:32:34 2007  Tanaka Akira  <akr@fsij.org>
16671         * numeric.c: use #ifdef for test LONG_LONG_VALUE.
16673 Sun Sep 30 04:30:55 2007  Tanaka Akira  <akr@fsij.org>
16675         * bignum.c: use SIZEOF_LONG instead of SIZEOF_ULONG which is not
16676           defined.
16678 Sun Sep 30 04:03:43 2007  Tanaka Akira  <akr@fsij.org>
16680         * re.c (Init_Regexp): test DEFAULT_KCODE in C code because
16681           KCODE_EUC, etc. are enum.
16683 Sun Sep 30 00:55:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16685         * variable.c (obj_ivar_each): get rid of warning.
16687 Sat Sep 29 17:45:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16689         * main.c (main): use platform-independent per-process initialization.
16690           [ruby-dev:31900]
16692         * ruby.c (ruby_sysinit): new function for per-process initialization.
16694         * include/ruby/ruby.h (RUBY_GLOBAL_SETUP): toplevel setup declaration.
16696         * include/ruby/win32.h, win32/mkexports.rb: alias NtInitialize
16697           ruby_sysinit.
16699         * win32/win32.c (rb_w32_sysinit): renamed from NtInitialize.
16701 Sat Sep 29 17:31:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16703         * array.c (rb_ary_combination): new method to give all combination
16704           of elements from an array.  [ruby-list:42671]
16706         * array.c (rb_ary_product): a new method to get all combinations
16707           of elements from two arrays.  can be extended to combinations of
16708           n-arrays, e.g. a.product(b,c,d).  anyone volunteer?
16710         * array.c (rb_ary_permutation): empty function body to calculate
16711           permutations of array elements.  need volunteer.
16713 Sat Sep 29 17:14:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16715         * marshal.c (r_leave): move proc invocation from r_entry() to
16716           avoid potential crash.
16718 Sat Sep 29 12:28:08 2007  Tanaka Akira  <akr@fsij.org>
16720         * bootstraptest/runner.rb (assert_normal_exit): new method.
16722         * bootstraptest/test_knownbug.rb: add test for Marshal.load.
16724 Sat Sep 29 10:12:20 2007  Tanaka Akira  <akr@fsij.org>
16726         * variable.c (rb_ivar_set): fix class instance variable.
16728         * object.c (rb_class_real): cl argument may be 0.
16730 Sat Sep 29 09:12:02 2007  Tanaka Akira  <akr@fsij.org>
16732         * object.c (rb_class_real): use BUILTIN_TYPE instead of TYPE.
16733           access flags directly instead of FL_TEST.
16734           they are enough because cl argument is a class.
16736 Sat Sep 29 08:57:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16738         * include/ruby/win32.h (strcasecmp): needed for type_strcasehash.
16740 Sat Sep 29 06:47:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16742         * ruby.c (struct cmdline_options): static variables packed.
16744 Sat Sep 29 05:29:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16746         * io.c (rb_io_fdopen): create IO object from fd.
16748         * parse.y (yycompile): use encoding of the source as default.
16750         * ruby.c (proc_options, load_file): ditto.
16752 Sat Sep 29 04:27:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16754         * encoding.c (rb_enc_alias): allow encodings multiple aliases.
16756         * encoding.c (rb_enc_find_index): search the encoding which has the
16757           given name and return its index if found, or -1.
16759         * st.c (type_strcasehash): case-insensitive string hash type.
16761         * string.c (rb_str_force_encoding): force encoding of self.  this name
16762           comes from [ruby-dev:31894] by Martin Duerst.  [ruby-dev:31744]
16764         * include/ruby/encoding.h (rb_enc_find_index, rb_enc_associate_index):
16765           prototyped.
16767         * include/ruby/encoding.h (rb_enc_isctype): direct interface to ctype.
16769         * include/ruby/st.h (st_init_strcasetable): prototyped.
16771 Sat Sep 29 03:53:26 2007  Koichi Sasada  <ko1@atdot.net>
16773         * cont.c: Thread local storage should be fiber local.
16775         * bootstraptest/test_knownbug.rb, test/ruby/test_fiber.rb:
16776           move a fixed test.
16778 Fri Sep 28 23:15:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16780         * insnhelper.ci (vm_call_method): allow send! to call protected
16781           methods as well.  [ruby-core:12280]
16783 Fri Sep 28 22:33:47 2007  Koichi Sasada  <ko1@atdot.net>
16785         * benchmark/bm_so_fasta.rb: added.
16787         * benchmark/bm_so_k_nucleotide.rb: added.
16789         * benchmark/bm_so_reverse_complement.rb: added.
16791         * benchmark/make_fasta_output.rb: added.
16793         * benchmark/prepare_so_k_nucleotide.rb: added.
16795         * benchmark/prepare_so_reverse_complement.rb: added.
16797 Fri Sep 28 19:14:51 2007  Koichi Sasada  <ko1@atdot.net>
16799         * benchmark/driver.rb: fix notations.
16801         * benchmark/bm_loop_whileloop.rb: ditto.
16803         * benchmark/bm_loop_whileloop2.rb: ditto.
16805         * benchmark/bm_app_uri.rb: added.
16807         * benchmark/bm_vm1_ivar_set.rb: ditto.
16809         * benchmark/bm_so_binary_trees.rb: added from Computer Language
16810           Benchmarks Game (http://shootout.alioth.debian.org/).
16812         * benchmark/bm_so_fannkuch.rb: ditto.
16814         * benchmark/bm_so_mandelbrot.rb: ditto.
16816         * benchmark/bm_so_meteor_contest.rb: ditto.
16818         * benchmark/bm_so_nbody.rb: ditto.
16820         * benchmark/bm_so_nsieve.rb: ditto.
16822         * benchmark/bm_so_nsieve_bits.rb: ditto.
16824         * benchmark/bm_so_partial_sums.rb: ditto.
16826         * benchmark/bm_so_pidigits.rb: ditto.
16828         * benchmark/bm_so_spectralnorm.rb: ditto.
16830 Fri Sep 28 16:22:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16832         * vm_core.h (rb_vm_struct): fix typo: bufferd -> buffered.
16834 Fri Sep 28 15:47:48 2007  Koichi Sasada  <ko1@atdot.net>
16836         * benchmark/driver.rb: fix to output benchmark results
16837           to file "bmlog-#{Time.now.strftime('%Y%m%d-%H%M%S')}.#{$$}".
16839         * benchmark/bm_io_file_create.rb: remove useless codes.
16841         * benchmark/bm_vm2_eval.rb: added.
16843 Fri Sep 28 15:05:24 2007  Tanaka Akira  <akr@fsij.org>
16845         * include/ruby/intern.h: export rb_ivar_foreach.
16847         * include/ruby/ruby.h: modify struct RObject and RClass for optimizing
16848           T_OBJECT space.  [ruby-dev:31853]
16849           (ROBJECT_LEN, ROBJECT_PTR)
16850           (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL)
16851           (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor
16852           defined.
16854         * variable.c: support the modified RObject and RClass.
16856         * object.c: ditto.
16858         * class.c: ditto.
16860         * gc.c: ditto.
16862         * marshal.c: ditto.
16864         * eval_method.ci: use the abstract accessor.
16866         * insns.def: ditto.
16868         * proc.c: ditto.
16870         * struct.c: ditto.
16872         * eval.c: ditto.
16874         * error.c: ditto.
16876         * vm.c: ditto.
16878         * insnhelper.ci: ditto.
16880         * ext/digest/digest.c: ditto.
16882 Fri Sep 28 13:20:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16884         * io.c (rb_io_getline_fast, rb_io_getline_1): set encoding to the
16885           result string, as well as getc.
16887 Fri Sep 28 12:51:42 2007  Koichi Sasada  <ko1@atdot.net>
16889         * benchmark/bm_app_erb.rb: added.
16891         * benchmark/bm_io_file_(create|read|write).rb: added.
16893 Fri Sep 28 12:49:05 2007  Koichi Sasada  <ko1@atdot.net>
16895         * benchmark/driver.rb: fix file selection algorithm.
16897 Fri Sep 28 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16899         * string.c (rb_str_comparable): need not to check asciicompat here.
16901         * encoding.c (rb_enc_check): ditto.
16903         * string.c (rb_enc_str_coderange): tuned a bit; no broken check.
16905         * encoding.c (rb_enc_check): new encoding comparison criteria.
16907 Thu Sep 27 17:36:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16909         * win32/REAMDE.win32: follow recent changes.
16911 Thu Sep 27 16:01:53 2007  Koichi Sasada  <ko1@atdot.net>
16913         * benchmark/driver.rb: fix to output some helpful messages.
16915 Thu Sep 27 15:44:51 2007  Koichi Sasada  <ko1@atdot.net>
16917         * benchmark/driver.rb: added.
16919         * common.mk: fix to use above driver.
16921         * benchmark/prepare_so_count_words.rb: added.
16923         * benchmark/bm_so_count_words.rb: fix benchmark process.
16925 Thu Sep 27 15:42:34 2007  Koichi Sasada  <ko1@atdot.net>
16927         * ext/fiber/fiber.c: modify prototype declaration.
16928           [ruby-core:12247]
16930 Thu Sep 27 09:42:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16932         * parse.y (strings, xstring, regexp, dsym): empty strings have
16933           US-ASCII encoding.
16935 Thu Sep 27 07:39:13 2007  Tanaka Akira  <akr@fsij.org>
16937         * bootstraptest/runner.rb (assert_finish): new method.
16939         * bootstraptest/test_knownbug.rb: add test for [ruby-dev:31866] using
16940           assert_finish.
16942 Thu Sep 27 04:46:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16944         * encoding.c (rb_enc_associate_index): deal with ASCII compatible
16945           flags.
16947         * encoding.c (rb_enc_check): allow ASCII compatible strings.
16949         * parse.y (rb_intern_str): use ASCII encoding for ASCII string.
16951         * string.c (rb_enc_str_coderange): check for code-range.
16953         * string.c (rb_str_modify): clear code-range flags.
16955         * string.c (rb_str_hash, rb_str_eql): ASCII compatible strings are
16956           comparable.
16958         * include/ruby/encoding.h: added code-range flags.
16960 Thu Sep 27 04:40:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16962         * gc.c (rb_mark_set): new function to mark keys.
16964         * marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
16965           data and compat_tbl entries.  [ruby-dev:31870]
16967 Thu Sep 27 03:17:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16969         * process.c (rb_waitpid): no needs to poll.  [ruby-dev:31871]
16971 Wed Sep 26 20:11:46 2007  Koichi Sasada  <ko1@atdot.net>
16973         * bootstraptest/test_knownbug.rb: remove a fixed test.
16975 Wed Sep 26 20:00:12 2007  Koichi Sasada  <ko1@atdot.net>
16977         * bootstraptest/test_knownbug.rb: move fixed tests.
16979         * bootstraptest/test_method.rb: ditto.
16981         * test/ruby/test_io.rb: ditto.
16983 Wed Sep 26 19:36:26 2007  Koichi Sasada  <ko1@atdot.net>
16985         * eval.c (eval): fix to check stack overflow.
16986           [ruby-dev:31850]
16988         * eval_intern.h, vm.h: move CHECK_STACK_OVERFLOW() macro.
16990 Wed Sep 26 19:27:11 2007  Koichi Sasada  <ko1@atdot.net>
16992         * insnhelper.ci (vm_throw): fix to move increment point.
16993           [ruby-dev:31840]
16995 Wed Sep 26 19:23:56 2007  Koichi Sasada  <ko1@atdot.net>
16997         * cont.c: Fiber as SemiCoroutine on default. [ruby-core:12146]
16999         * ext/fiber/fiber.c: enable Fiber#transfer.
17001 Wed Sep 26 18:38:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17003         * encoding.c (rb_enc_check): check for ASCII-compatibilities.
17005         * parse.y (parser_tokadd_string, parser_parse_string,
17006           parser_here_document, parser_yylex): set encoding to US-ASCII.
17008         * parse.y (rb_enc_symname_p): check if valid with encoding.
17010         * parse.y (rb_intern3): let symbols have encoding.
17012         * string.c (rb_str_hash): add encoding index.
17014         * string.c (rb_str_comparable, rb_str_equal, rb_str_eql): check if
17015           compatible encoding.
17017         * string.c (sym_inspect): made encoding aware.
17019         * insns.def (opt_eq): compare with encoding.
17021         * include/ruby/encoding.h (rb_enc_asciicompat): check if ASCII
17022           compatible.
17024         * include/ruby/encoding.h (rb_enc_get_index): added prototype.
17026         * include/ruby/intern.h (rb_str_comparable, rb_str_equal): ditto.
17028 Wed Sep 26 15:01:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17030         * eval_method.ci (rb_get_alloc_func): cast to suppress a warning.
17032         * eval_method.ci (remove_method): local variable to be initialized.
17034 Wed Sep 26 08:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17036         * Makefile.in (ext/extinit.o): use $(OUTFLAG) as well as other
17037           objects.  [ruby-Bugs-14228]
17039 Wed Sep 26 05:12:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17041         * parse.y (parser_yyerror): limit error message length.
17042           [ruby-dev:31848]
17044 Tue Sep 25 15:11:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17046         * io.c (io_ungetc): reallocate internal buffer if pushing data
17047           excess capacity.  [ruby-dev:31650]
17049 Tue Sep 25 13:43:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17051         * eval_method.ci (remove_method): should not remove undef place
17052           holder.  [ruby-dev:31816], [ruby-dev:31817]
17054 Tue Sep 25 09:51:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17056         * eval.c (rb_longjmp): source file information may be NULL.
17057           [ruby-dev:31849]
17059         * eval.c (ruby_finalize_0): clear trace_func before finalization.
17061 Mon Sep 24 22:36:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17063         * array.c (rb_ary_equal): should handle recursive array.
17065         * hash.c (hash_equal): should handle recursive hash.
17067 Mon Sep 24 22:14:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17069         * lib/weakref.rb (WeakRef): remove debug print.  [ruby-dev:31799]
17071         * hash.c (hash_i): avoid too frequent hash conflict where key and
17072           value are same.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
17073           [ruby-dev:31802]
17075 Mon Sep 24 17:56:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17077         * ext/strscan/strscan.c (strscan_initialize, strscan_getch): use the
17078           encoding of the target string instead of setting to StringScanner
17079           instance.  [ruby-dev:31831]
17081 Mon Sep 24 16:52:11 2007  Urabe Shyouhei  <shyouhei@ruby-lang.org>
17083         * lib/net/http.rb: fix typo.
17085 Mon Sep 24 06:49:15 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17087         * lib/net/http.rb: an SSL verification (the server hostname should
17088           be matched with its certificate's commonName) is added.
17089           this verification can be skipped by
17090           "Net::HTTP#enable_post_connection_check=(false)".
17091           suggested by Chris Clark <cclark at isecpartners.com>
17093         * lib/net/open-uri.rb: use Net::HTTP#enable_post_connection_check to
17094           perform SSL post connection check.
17096         * ext/openssl/lib/openssl/ssl.c
17097           (OpenSSL::SSL::SSLSocket#post_connection_check): refine error message.
17099 Sun Sep 23 09:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17101         * gc.c (os_obj_of, os_each_obj): hide objects to be finalized.
17102           [ruby-dev:31810]
17104 Sun Sep 23 08:58:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17106         * eval_method.ci (rb_attr): should not use alloca for unknown size
17107           input.  [ruby-dev:31818]
17109         * parse.y (rb_intern_str): prevent str from optimization.
17111 Sun Sep 23 06:16:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17113         * eval_method.ci (remove_method): check for undefined method.
17114           [ruby-dev:31816]
17116 Sun Sep 23 05:42:35 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
17118         * lib/rdoc/options.rb (Options::check_diagram): dot -V output
17119           changed. [ ruby-Bugs-11978 ], Thanks Florian Frank.
17121 Sat Sep 22 06:02:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17123         * lib/optparse.rb (OptionParser::List::summarize): use each_line if
17124           defined rather than each.  [ruby-Patches-14096]
17126 Sat Sep 22 05:19:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17128         * ext/stringio/stringio.c (strio_init): separate from strio_initialize
17129           to share with strio_reopen properly.  [ruby-Bugs-13919]
17131 Fri Sep 21 14:51:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17133         * gc.c (gc_mark_rest): copy just used part.
17135         * gc.c (gc_mark_children): mark u1 and u2 of NODE_ARGSCAT.
17137         * gc.c (os_obj_of): hide T_VALUES too.  [ruby-dev:31804]
17139         * gc.c (run_final): freeze temporary argument array.
17141 Fri Sep 21 04:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17143         * misc/ruby-style.el (ruby-style-label-indent): fix for function top
17144           level labels.
17146 Fri Sep 21 02:11:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17148         * re.c (rb_reg_match_m): evaluate a block if match.  it would make
17149           condition statement much shorter, if no else clause is needed.
17151         * string.c (rb_str_match_m): ditto.
17153 Fri Sep 21 02:02:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17155         * hash.c (hash_equal): should call rb_eql when argument eql is set.
17157 Thu Sep 20 17:28:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17159         * io.c (popen_exec), process.c (rb_spawn): stop other threads before
17160           exec.  [ruby-core:08262]
17162 Tue Sep 18 22:08:42 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
17164         * lib/matrix.rb: fix a coerce bug of Vector. [ruby-core: 12190]
17166 Mon Sep 17 21:06:03 2007  Minero Aoki  <aamine@loveruby.net>
17168         * lib/net/http.rb (HTTP::GenericRequest#initialize): check path is
17169           not nil. [ruby-dev:31149]
17171 Mon Sep 17 21:00:51 2007  Minero Aoki  <aamine@loveruby.net>
17173         * parse.y (ripper): rename event: arglist_* -> args_*.
17175         * parse.y (ripper): rename event: restparam -> rest_param.
17177         * parse.y (ripper): rename event: constpath_* -> const_path_*.
17179         * parse.y (ripper): rename event: topconst_* -> top_const_*.
17181         * parse.y (ripper): rename event: iter_block -> method_add_block.
17183         * parse.y (ripper): support block local parameter declaration.
17185         * parse.y (ripper): introduce new macro params_new.
17187         * ext/ripper/lib/ripper/sexp.rb: should not dispose event
17188           arguments whose name ends with "_new" but arity != 0.
17190 Sat Sep 15 23:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17192         * parse.y (struct parser_params): common members in the parser and
17193           ripper must be placed at each same location.
17195 Sat Sep 15 18:25:15 2007  Kouhei Sutou  <kou@cozmixng.org>
17197         * string.c (rb_str_rstrip_bang): fixed too much rstrip. [ruby-dev:31786]
17199 Sat Sep 15 17:32:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17201         * parse.y (parser_initialize): set default encoding.  [ruby-dev:31787]
17203         * ruby.c (load_file): make new parse instance after processing shebang
17204           line options.
17206 Sat Sep 15 17:04:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17208         * encoding.c (rb_enc_associate_index, rb_enc_get_index): check if
17209           object is encoding capable.  [ruby-dev:31780]
17211         * string.c (rb_str_subpat_set): check for if the argument is a String.
17213 Sat Sep 15 13:31:21 2007  Kouhei Sutou  <kou@cozmixng.org>
17215         * lib/rss.rb, lib/rss/, test/rss/:
17216           - 0.1.9 -> 0.2.0.
17217           - supported Slash module.
17219 Fri Sep 14 22:20:01 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17221         * ext/win32ole/win32ole.c (fev_unadvise): no needs to reset
17222           event handlers.
17224 Fri Sep 14 17:28:32 2007  Koichi Sasada  <ko1@atdot.net>
17226         * test/ruby/test_io.rb: tests which cause SEGV should not be
17227           added.
17229         * bootstraptest/test_knownbug.rb: add above test to known bug.
17231 Fri Sep 14 16:24:04 2007  Koichi Sasada  <ko1@atdot.net>
17233         * insnhelper.ci (vm_expandarray): assignment should be placed
17234           after creating new array.
17236 Fri Sep 14 16:17:30 2007  Koichi Sasada  <ko1@atdot.net>
17238         * bootstraptest/runner.rb: add a stress test (-s).
17240 Fri Sep 14 16:14:28 2007  Koichi Sasada  <ko1@atdot.net>
17242         * vm.h, eval_intern.h: move some macros to eval_intern.h.
17244         * eval_jump.ci (rb_f_throw): fix to use NEW_THROW_OBJECT().
17246         * eval.c (rb_f_loop): remove additional macro.
17248 Fri Sep 14 16:12:10 2007  Koichi Sasada  <ko1@atdot.net>
17250         * insnhelper.ci (vm_expandarray): should be volatile value for GC.
17252 Thu Sep 13 15:42:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17254         * compile.c (iseq_compile_each): inline cache entries are overwritten
17255           in iseq_build_body().
17257 Thu Sep 13 14:00:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17259         * parse.y (brace_block): should use compstmt.  patch submitted by
17260           Kirill A. Shutemov <k.shutemov AT gmail.com>  [ruby-core:12154].
17262 Thu Sep 13 13:47:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17264         * parse.y (rb_id2str): fixed typo.
17266 Wed Sep 12 23:12:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17268         * ruby.c (proc_options): -W should be allowed in RUBYOPT
17269           environment variable.  [ruby-core:12118]
17271 Wed Sep 12 15:19:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17273         * io.c (rb_io_s_sysopen): should not use alloca for unknown size
17274           input.  [ruby-dev:31775]
17276         * parse.y (rb_id2str): ditto.
17278         * marshal.c (w_float): use snprintf instead of sprintf.
17280 Tue Sep 11 17:28:00 2007  Akinori MUSHA  <knu@iDaemons.org>
17282         * lib/tempfile.rb (Tempfile::make_tmpname): Allow to specify a
17283           suffix for a temporary file name.
17285         * lib/tempfile.rb (Tempfile::make_tmpname): Make temporary file
17286           names less predictable by including a random string.
17287           [inspired by: akr]
17289 Tue Sep 11 17:25:59 2007  Akinori MUSHA  <knu@iDaemons.org>
17291         * lib/shellwords.rb: Add shellescape() and shelljoin().
17293         * lib/shellwords.rb: Rename shellwords() to shellsplit() and make
17294           the former an alias to the latter.
17296         * lib/shellwords.rb: Add escape(), split(), join() as class
17297           methods, which are aliases to their respective long names
17298           prefixed with `shell'.
17300         * lib/shellwords.rb: Add String#shellescape(), String#shellsplit()
17301           and Array#shelljoin() for convenience.
17303 Mon Sep 10 15:48:31 2007  Tanaka Akira  <akr@fsij.org>
17305         * range.c: represent initialized state using EXCL instead of FL_USER3.
17307         * range.c (range_dumper): make uninitialized range dumpable.
17308           (range_loader): make uninitialized range loadable.
17310 Mon Sep 10 13:44:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17312         * array.c (rb_ary_cycle): avoid infinite loop for empty array.
17313           based on a patch from David Flanagan.  [ruby-core:12085]
17315 Mon Sep 10 01:21:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17317         * marshal.c (r_object0): struct allocation first to check if a
17318           class is a struct.  compatibility check should come next.
17320 Mon Sep 10 01:05:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17322         * range.c (range_step): fixed integer overflow.  [ruby-dev:31763]
17324 Sun Sep  9 08:57:27 2007  Tadayoshi Funaba  <tadf@dotrb.org>
17326         * lib/date/format.rb (_strptime): now also attaches an element
17327           which denotes leftover substring if exists.
17329 Sun Sep  9 01:59:08 2007  Tanaka Akira  <akr@fsij.org>
17331         * marshal.c (r_object0): check T_STRUCT type for structs.
17333 Sun Sep  9 01:17:05 2007  Tanaka Akira  <akr@fsij.org>
17335         * marshal.c (r_object0): don't call user-defined initialize for
17336           T_STRUCT objects.
17338         * include/ruby/intern.h (rb_struct_initialize): declared.
17340         * struct.c (rb_struct_initialize): export.
17342 Sat Sep  8 23:55:56 2007  Tanaka Akira  <akr@fsij.org>
17344         * eval_method.ci (rb_get_alloc_func): new function to get allocation
17345           function.
17347         * include/ruby/intern.h (rb_alloc_func_t): declared.
17348           (rb_define_alloc_func): declared.
17349           (rb_marshal_define_compat): declared.
17351         * range.c: use T_STRUCT for Range.
17353         * inits.c: move Init_marshal() prior to Init_Range() because
17354           Init_Range calls rb_marshal_define_compat which needs
17355           marshal's compat_allocator_tbl initialized.
17357         * marshal.c: support marshal format compatibility layer designed for
17358           marshaling T_STRUCT Range using T_OBJECT format.
17359           (rb_marshal_define_compat): defined.
17361         [ruby-dev:31710]
17363 Sat Sep  8 10:05:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17365         * struct.c (rb_struct_s_members): check if __members__ is an
17366           array to prevent segmentation fault.  [ruby-dev:31759]
17368 Sat Sep  8 09:33:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
17370         * lib/date/format.rb (str[fp]time): now check specifications more
17371           strictly.
17373 Sat Sep  8 02:56:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17375         * test/ruby/test_fiber.rb (TestFiber::test_throw): uncaught throw
17376           now raise ArgumentError exception.
17378 Sat Sep  8 02:45:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17380         * struct.c (rb_struct_s_members): should raise TypeError instead
17381           of call rb_bug().  [ruby-dev:31709]
17383         * marshal.c (r_object0): no nil check require any more.
17385 Sat Sep  8 01:46:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17387         * regenc.c, regenc.h (onigenc_single_byte_mbc_enc_len): should take
17388           two arguments. [ruby-dev:31754]
17390 Fri Sep  7 00:58:16 2007  Koichi Sasada  <ko1@atdot.net>
17392         * common.mk: fix typo.
17394 Fri Sep  7 00:28:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17396         * io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.
17398         * ext/stringio/stringio.c (strio_getc): rb_enc_mbclen() fix.
17400         * ext/stringio/stringio.c (strio_ungetc): ditto.
17402 Thu Sep  6 22:57:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17404         * lib/fileutils.rb (FileUtils::Entry_::copy): prevent self copy of
17405           directories.
17407         * lib/fileutils.rb (FileUtils::fu_each_src_dest0): use try_convert.
17409         * lib/fileutils.rb (FileUtils::fu_update_option): ditto.
17411 Thu Sep  6 21:36:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17413         * include/ruby/oniguruma.h (OnigEncodingTypeST): add end parameter
17414           to mbc_enc_len.
17416         * euc_jp.c (mbc_enc_len), sjis.c (mbc_enc_len),
17417           utf8.c (utf8_mbc_enc_len): ditto.
17419         * encoding.c (rb_enc_mbclen): add end parameter.
17421 Thu Sep  6 21:31:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17423         * array.c (rb_ary_cycle): typo in rdoc.  a patch from Yugui
17424           <yugui@yugui.sakura.ne.jp>.  [ruby-dev:31748]
17426 Thu Sep  6 12:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17428         * string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
17429           [ruby-dev:31734]
17431 Wed Sep  5 22:02:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17433         * array.c (rb_ary_subseq): need integer overflow check.
17434           [ruby-dev:31736]
17436         * array.c (rb_ary_splice): ditto.  [ruby-dev:31737]
17438         * array.c (rb_ary_fill): ditto.  [ruby-dev:31738]
17440         * string.c (rb_str_splice): integer overflow for length.
17441           [ruby-dev:31739]
17443 Tue Sep  4 20:43:44 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17445         * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
17447         * test/win32ole/test_win32ole_event.rb: ditto.
17449 Mon Sep  3 15:37:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17451         * common.mk (vm.o): depends on st.h too.
17453 Sun Sep  2 23:38:29 2007  Tanaka Akira  <akr@fsij.org>
17455         * include/ruby/st.h (struct st_table): make num_entries bitfield
17456           instead of num_bins for speed.  num_entries has less access.
17458 Sun Sep  2 00:37:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
17460         * lib/date/format.rb (_parse): improved parsing of ordinal dates.
17462         * lib/date/format.rb (_parse): use named character classes in some
17463           regular expressions.
17465 Sat Sep  1 23:44:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17467         * eval_jump.ci (rb_f_throw): wrap tag and TAG_THROW in a NODE_MEMO
17468           node to make throw instruction to work well.
17470 Sat Sep  1 20:56:07 2007  Tanaka Akira  <akr@fsij.org>
17472         * include/ruby/ruby.h (struct RBignum): embed digits in RBignum for
17473           small bignums.
17475         * bignum.c: RBignum embedded digits implemented.
17477         * include/ruby/intern.h: declare rb_big_resize.
17479         * gc.c: don't free embedded digits.
17481         * numeric.c: replace direct bignum field accessor by abstract field
17482           accessor such as RBIGNUM(val)->sign to RBIGNUM_SIGN(val).
17484         * sprintf.c: ditto.
17486         * compar.c: ditto.
17488         * marshal.c: ditto.
17490         * random.c: ditto.
17492         * .gdbinit: support embedded small bignums.
17494         [ruby-dev:31689]
17496 Sat Sep  1 19:59:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17498         * ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
17499           released.
17501         * ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
17502           released.
17504         * ext/win32ole/win32ole.c (fev_initialize): refactoring.
17506 Sat Sep  1 16:26:09 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17508         * test/socket/test_tcp.rb (test_recvfrom): same as mswin32 on mswin64.
17510 Sat Sep  1 14:24:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17512         * st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
17513           the former may be larger than the latter.
17515         * include/ruby/st.h (CHAR_BIT): get rid of magic number.
17517         * include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
17518           is larger than int.
17520 Sat Sep  1 10:43:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17522         * eval_jump.ci (rb_f_catch): generate new tag object if no argument is
17523           given.  backported from MatzRuby.  [ruby-dev:31609]
17525         * eval_jump.ci (rb_catch): call #catch without arguments if tag
17526           string is NULL.
17528         * eval_jump.ci (rb_f_throw): allow throwing non-symbol object.
17530         * eval_jump.ci (rb_catch_obj): new function to wait throw with arbitrary
17531           object.
17533         * eval_jump.ci (rb_throw_obj): new function to throw arbitrary object.
17535         * variable.c (check_autoload_table): prevent multiple calls from
17536           RSTRING_PTR().
17538 Fri Aug 31 07:12:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17540         * numeric.c (SQRT_LONG_MAX): use SIZEOF_LONG instead of SIZEOF_VALUE
17541           because SIZEOF_VALUE > SIZEOF_LONG on some platforms.
17543 Fri Aug 31 04:18:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17545         * parse.y (f_norm_arg, f_arg_item): not croak already erred names.
17546           [ruby-dev:31687]
17548         * parse.y (assignable_gen): ignore already erred names.
17550         * parse.y (shadowing_lvar_gen): always make new block local variable
17551           when shadowing outer local variable.  [ruby-dev:31507]
17553 Thu Aug 30 19:40:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17555         * regenc.h: check RUBY_EXTERN before including config.h and defines.h
17557         * common.mk: update header dependency.
17559 Thu Aug 30 14:06:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17561         * proc.c (rb_obj_define_method): reverted.  [ruby-talk:266637]
17563 Thu Aug 30 13:49:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17565         * lib/mkmf.rb: initialize $top_srcdir always.  [ruby-dev:31682]
17567         * lib/mkmf.rb (try_const, have_const): check for a const is defined.
17568           [ruby-core:04422]
17570 Thu Aug 30 08:00:12 2007  Tanaka Akira  <akr@fsij.org>
17572         * include/ruby/intern.h: declare rb_hash_tbl.
17574         * include/ruby/ruby.h (RHash): delay st_table allocation.
17575           rename tbl field to ntbl to detect direct reference to the st_table
17576           as a compile error.
17577           (RHASH_TBL): abstract accessor defined.
17578           (RHASH_ITER_LEV): ditto.
17579           (RHASH_IFNONE): ditto.
17580           (RHASH_SIZE): ditto.
17581           (RHASH_EMPTY_P): ditto.
17582           (hash_alloc0, hash_alloc): unified because hash_alloc doesn't
17583           allocate st_table now.
17585         * hash.c: delay st_table allocation.
17587         * gc.c: replace tbl by ntbl.
17589         * array.c: replace direct field accessor by abstract field accessor
17590           such as RHASH(hash)->tbl to RHASH_TBL(hash).
17592         * marshal.c: ditto.
17594         * insns.def: ditto.
17596         * ext/iconv/iconv.c: ditto.
17598         * ext/json/ext/generator/generator.c: ditto.
17600         * ext/json/ext/parser/parser.c: ditto.
17602         * ext/json/ext/parser/parser.rl: ditto.
17604         * ext/syck/rubyext.c: ditto.
17606         * ext/tk/tkutil/tkutil.c: ditto.
17608         [ruby-dev:31678]
17610 Wed Aug 29 18:36:06 2007  Tanaka Akira  <akr@fsij.org>
17612         * lib/open-uri.rb: add :ftp_active_mode option.  [ruby-dev:31677]
17614 Wed Aug 29 14:55:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17616         * string.c (str_gsub): should not use mbclen2() which has broken API.
17618         * re.c: remove rb_reg_mbclen2().
17620 Wed Aug 29 12:48:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17622         * parse.y (aref_args): args may not be a list.  [ruby-dev:31592]
17624 Wed Aug 29 11:30:10 2007  Tanaka Akira  <akr@fsij.org>
17626         * include/ruby/st.h (struct st_table): add entries_packed 1-bit
17627           bitfield.  decrease num_bins 1-bit.
17629         * st.c: pack numhash which have 5 or less entries in bins.
17630           (st_init_table_with_size): setup entries_packed flag.
17631           (st_clear): support packed mode.
17632           (st_lookup): ditto.
17633           (st_insert): ditto.
17634           (st_add_direct): ditto.
17635           (st_copy): ditto.
17636           (st_delete): ditto.
17637           (st_foreach): ditto.
17638           (st_reverse_foreach): ditto.
17639           (unpack_entries): new function for converting to unpacked mode.
17641         [ruby-list:43954]
17643 Wed Aug 29 10:46:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17645         * include/ruby/defines.h (flush_register_windows): call "ta 0x03"
17646           even on Linux/Sparc.  [ruby-dev:31674]
17648 Tue Aug 28 19:16:00 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17650         * ext/win32ole/win32ole.c (ole_type_progid): progid getted by
17651           ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.
17653         * test/win32ole/test_win32ole.rb (test_raise_message): set negative
17654           compareMode value to raise WIN32OLERuntimeError.
17656         * test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
17657           support some environment which returns IShellDispatch5 instead
17658           of IShellDispatch.
17660 Tue Aug 28 15:42:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17662         * string.c (rb_str_subseq): retrieve substring based on byte offset.
17664         * string.c (rb_str_rindex_m): was confusing character offset and
17665           byte offset.
17667 Tue Aug 28 14:23:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17669         * string.c (rb_str_splice_0): should check to modify.  [ruby-dev:31665]
17671 Tue Aug 28 14:21:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17673         * parse.y (parser_prepare): set parser encode too when BOM exists.
17675 Tue Aug 28 00:51:22 2007  Koichi Sasada  <ko1@atdot.net>
17677         * thread.c: fix Mutex to be interruptable lock.
17679         * thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
17680           prepare native_cond_*() which are based on pthread_cond_*() spec.
17682         * prelude.rb: fix Mutex#synchronize method.
17684         * vm_core.h, include/ruby/intern.h: change unblock function interface
17685           (to pass some user data).
17687         * file.c, process.c: ditto.
17689         * benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
17691         * benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
17692           with contention.
17694         * benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
17696         * test/ruby/test_thread.rb: add a test.
17698         * common.mk: fix benchmark options.
17700 Mon Aug 27 23:14:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17702         * string.c (rb_str_rstrip_bang): wrong strip point.  [ruby-dev:31652]
17704         * string.c (rb_str_each_line): should swallow sequence of newlines
17705           if rs (optional argument) is an empty string.  [ruby-dev:31652]
17707 Mon Aug 27 22:39:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17709         * encoding.c (rb_enc_codelen): raises invalid sequence exception
17710           if ONIGENC_CODE_TO_MBCLEN() returns zero.  [ruby-dev:31661]
17712         * encoding.c (rb_enc_mbclen): check invalid sequence.
17714 Mon Aug 27 20:27:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17716         * ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
17717           [ruby-dev:31576]
17719         * test/win32ole/test_win32ole_type.rb (test_initialize):
17720           remove duplicate assertions.
17722 Mon Aug 27 19:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17724         * ext/etc/etc.c (etc_getlogin): update documentation to note
17725           security issue.  [ruby-Bugs-11821]
17727 Mon Aug 27 15:56:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17729         * string.c (sym_encoding): return the encoding of a Symbol.
17731 Mon Aug 27 15:33:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17733         * util.c (IEEE_BIG_ENDIAN): use configured value.  [ruby-dev:31623]
17735         * util.c (Llong): set to LONG_LONG if available.
17737 Mon Aug 27 13:11:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17739         * string.c (tr_trans): wrong condition for mbmaxlen==1 strings.
17740           [ruby-dev:31652]
17742 Mon Aug 27 00:41:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17744         * io.c (rb_io_each_byte): caused infinite loop.  [ruby-dev:31652]
17746         * io.c (rb_io_getc): should return nil at EOF, not EOFError.
17748         * lib/delegate.rb (SimpleDelegator::__setobj__): use raise
17749           argument to specify backtrace.
17751         * test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test):
17752           String#include? no longer works for Fixnum.  use #chr.
17753           [ruby-dev:31652]
17755 Sun Aug 26 12:27:14 2007  Koichi Sasada  <ko1@atdot.net>
17757         * cont.c: fix to remove Fiber.new until fiber.so is not loaded.
17759         * test/ruby/test_continuation.rb: fix to use resume.
17761 Sun Aug 26 06:51:46 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17763         * ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
17764           buffer should be NULL terminated.
17766 Sun Aug 26 06:04:13 2007  Koichi Sasada  <ko1@atdot.net>
17768         * insnhelper.ci (vm_setup_method): reorder code for branch prediction.
17770 Sun Aug 26 05:54:49 2007  Koichi Sasada  <ko1@atdot.net>
17772         * insnhelper.ci (vm_call_method): fix to relaxant safe level check
17773           ($SAFE > 2).  [ruby-core:11998]
17775         * bootstraptest/test_method.rb: add tests for above.
17777 Sun Aug 26 05:52:08 2007  Koichi Sasada  <ko1@atdot.net>
17779         * test/ruby/test_fiber.rb: fix to require 'continuation'.
17781 Sat Aug 25 23:52:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17783         * enumerator.c (enumerator_next): message changed.
17785 Sat Aug 25 23:22:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17787         * include/ruby/encoding.h: remove unused rb_enc_ismbchar().
17789 Sat Aug 25 22:50:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17791         * ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
17792           fev_initialize): remove the connection ole_event_free and
17793           EVENTSINK_Destructor.
17795 Sat Aug 25 17:52:06 2007  Koichi Sasada  <ko1@atdot.net>
17797         * string.c, include/ruby/intern.h: export rb_str_length().
17799         * insns.def: use rb_str_length() in opt_length.
17801 Sat Aug 25 17:48:51 2007  Koichi Sasada  <ko1@atdot.net>
17803         * cont.c: rename FIBER_STACK_SIZE to FIBER_VM_STACK_SIZE.
17805 Sat Aug 25 17:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17807         * io.c (swallow): removed condition using an unset variable.
17809         * parse.y, re.c: re-applied revision 13092.
17811         * string.c (rb_str_splice): return from void function.
17813         * include/ruby/encoding.h (rb_enc_str_new): prototype added.
17815 Sat Aug 25 11:45:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17817         * encoding.c: provide basic features for M17N.
17819         * parse.y: encoding aware parsing.
17821         * parse.y (pragma_encoding): encoding specification pragma.
17823         * parse.y (rb_intern3): encoding specified symbols.
17825         * string.c (rb_str_length): length based on characters.
17826           for older behavior, bytesize method added.
17828         * string.c (rb_str_index_m): index based on characters.  rindex as
17829           well.
17831         * string.c (succ_char): encoding aware succeeding string.
17833         * string.c (rb_str_reverse): reverse based on characters.
17835         * string.c (rb_str_inspect): encoding aware string description.
17837         * string.c (rb_str_upcase_bang): encoding aware case conversion.
17838           downcase, capitalize, swapcase as well.
17840         * string.c (rb_str_tr_bang): tr based on characters.  delete,
17841           squeeze, tr_s, count as well.
17843         * string.c (rb_str_split_m): split based on characters.
17845         * string.c (rb_str_each_line): encoding aware each_line.
17847         * string.c (rb_str_each_char): added.  iteration based on
17848           characters.
17850         * string.c (rb_str_strip_bang): encoding aware whitespace
17851           stripping.  lstrip, rstrip as well.
17853         * string.c (rb_str_justify): encoding aware justifying (ljust,
17854           rjust, center).
17856         * string.c (str_encoding): get encoding attribute from a string.
17858         * re.c (rb_reg_initialize): encoding aware regular expression
17860         * sprintf.c (rb_str_format): formatting (i.e. length count) based
17861           on characters.
17863         * io.c (rb_io_getc): getc to return one-character string.
17864           for older behavior, getbyte method added.
17866         * ext/stringio/stringio.c (strio_getc): ditto.
17868         * io.c (rb_io_ungetc): allow pushing arbitrary string at the
17869           current reading point.
17871         * ext/stringio/stringio.c (strio_ungetc): ditto.
17873         * ext/strscan/strscan.c: encoding support.
17875 Sat Aug 25 10:59:19 2007  Koichi Sasada  <ko1@atdot.net>
17877         * cont.c: separate Continuation and Fiber from core.
17879         * ext/continuation/*, ext/fiber/*: ditto.
17881         * include/ruby/ruby.h: remove rb_cFiber.
17883         * include/ruby/intern.h: add the rb_fiber_new() declaration.
17885         * enumerator.c (next_init): fix to use rb_fiber_new().
17887         * test/ruby/test_enumerator.rb: remove next? tests.
17889         * test/ruby/test_continuation.rb: add a require 'continuation'.
17891         * test/ruby/test_fiber.rb: add a require 'fiber'.
17893 Sat Aug 25 10:20:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17895         * common.mk (prelude.o): depends on vm_core.h now.
17897         * common.mk (prelude.c): depends on tool/compile_prelude.rb too.
17899         * common.mk (prereq): updates all auto-generated sources.
17901         * tool/compile_prelude.rb: separated dynamic and static portions.
17903 Sat Aug 25 10:05:17 2007  Koichi Sasada  <ko1@atdot.net>
17905         * prelude.rb: add Thread.exclusive.  This class method
17906           is different from 1.8's.  Thread.exclusive only does
17907           synchronize with VM global mutex.
17909 Sat Aug 25 09:39:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17911         * array.c (rb_ary_s_try_convert): more document description.
17913         * re.c (rb_reg_s_try_convert): typo fixed.
17915 Sat Aug 25 08:54:12 2007  Koichi Sasada  <ko1@atdot.net>
17917         * id.h, id.c: remove idFuncall.
17919         * compile.c (iseq_specialized_instruction): ditto.
17921 Sat Aug 25 08:47:28 2007  Koichi Sasada  <ko1@atdot.net>
17923         * tool/compile_prelude.rb: fix to include "vm_core.h".
17925 Sat Aug 25 03:49:14 2007  Tanaka Akira  <akr@fsij.org>
17927         * test/ruby/sentence.rb (Sentence): include Enumerable.
17928           (Sentence#each): defined.
17930         * test/ruby/test_assignment.rb: use Sentence#expand.
17932 Sat Aug 25 03:08:57 2007  Koichi Sasada  <ko1@atdot.net>
17934         * prelude.rb: fix Mutex#synchronize definition.
17936 Sat Aug 25 02:08:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17938         * array.c (rb_ary_s_try_convert): a new class method to convert
17939           object or nil if it's not target-type.  this mechanism is used
17940           to convert types in the C implemented methods.
17942         * hash.c (rb_hash_s_try_convert): ditto.
17944         * io.c (rb_io_s_try_convert): ditto.
17946         * re.c (rb_reg_s_try_convert): ditto.
17948         * string.c (rb_str_s_try_convert): ditto.
17950 Sat Aug 25 00:49:44 2007  Koichi Sasada  <ko1@atdot.net>
17952         * benchmark/bm_loop_generator.rb: added.
17954 Sat Aug 25 00:22:31 2007  Koichi Sasada  <ko1@atdot.net>
17956         * prelude.rb: added.  run this script on startup.
17958         * tool/compile_prelude.rb: compile prelude.rb to C string.
17959           (prelude.rb -> prelude.c)
17961         * common.mk: fix to build with prelude.c.
17963         * inits.c (rb_call_inits): ditto.
17965         * thread.c (Init_Thread): move definition of Mutex#synchronize
17966           to prelude.rb.
17968 Sat Aug 25 00:08:43 2007  Koichi Sasada  <ko1@atdot.net>
17970         * compile.c (compile_massign_opt): fix to skip massign optimization
17971           with global variables.
17973         * bootstraptest/test_massign.rb: add some tests for above.
17975 Fri Aug 24 18:42:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17977         * test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
17979         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::initialize):
17980           initialize @workdir to stop warning.
17982 Fri Aug 24 18:30:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17984         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform_without_block):
17985           replace funcall by send!.  other files in the distribution as well.
17987 Fri Aug 24 17:06:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17989         * eval.c (rb_f_send_bang): abandon the name funcall for private
17990           aware method call.
17992 Fri Aug 24 15:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17994         * enumerator.c (enumerator_next): stop pre-fetching.
17996         * enumerator.c (Init_Enumerator): remove next? method.
17998 Fri Aug 24 15:14:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18000         * eval.c (rb_f_loop): now handles StopIteration exception.
18002 Thu Aug 23 20:31:31 2007  Koichi Sasada  <ko1@atdot.net>
18004         * compile.c: optimize simple massign.
18006 Thu Aug 23 20:02:25 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18008         * ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
18009           of RegQueryValueEx.
18011         * ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
18012           that the function always returns Qnil.
18014         * test/win32ole/test_win32ole_type.rb (test_initialize): add some test.
18016 Thu Aug 23 17:25:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18018         * configure.in (group_member): check if presents.
18020         * configure.in (XCFLAGS): add _GNU_SOURCE on linux.
18022         * file.c (group_member): use system routine if available.
18024         * process.c: moved _GNU_SOURCE macro to Makefile.
18026 Thu Aug 23 16:59:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18028         * compile.c (compile_massign), insnhelper.ci (vm_throw): not use C99
18029           comment.
18031         * cont.c (rb_cont_call, fiber_switch, rb_fiber_resume, rb_fiber_yield):
18032           suppress warnings.
18034         * cont.c (rb_fiber_start): change on non-volatile variable between
18035           setjmp and longjmp may not has an effect.
18037         * enumerator.c (sym_call): initialize first.
18039         * enumerator.c (enum_iter): typedefed.
18041         * enumerator.c (next_i): suppress a warning.
18043 Thu Aug 23 16:04:11 2007  Koichi Sasada  <ko1@atdot.net>
18045         * compile.c, insns.def, parse.y: fix massign order.  This change
18046           causes performance problem.  Try vm1_swap benchmark.
18047           [ruby-dev:31522]
18049         * insns.def, insnhelper.ci: move process body of expandarray insn to
18050           vm_expandarray().
18052         * bootstraptest/test_knownbug.rb, bootstraptest/test_massign.rb:
18053           move a solved test.
18055 Thu Aug 23 15:51:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18057         * parse.y (f_norm_arg): ripper has no shadowing check.
18059         * parse.y (f_block_arg): dispatch blkarg_mark.
18061 Thu Aug 23 15:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18063         * compile.c (make_masgn_lhs, iseq_compile_each): fixed indent.
18065         * compile.c (iseq_translate_threaded_code),
18066           vm_evalbody.ci (get_insns_address_table),
18067           template/vmtc.inc.tmpl (insns_address_table): constified.
18069         * vm_evalbody.ci (vm_eval),
18070           template/insns_info.inc.tmpl (insn_stack_increase, insn_ret_num):
18071           suppress warnings.
18073 Thu Aug 23 13:19:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18075         * parse.y (f_norm_arg): check also nested arguments.  [ruby-dev:31502]
18077 Thu Aug 23 00:06:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18079         * util.c: updated for ANSI C only.  applied a patch from
18080           <snakagawa AT infoteria.co.jp>.  [ruby-dev:31591]
18082 Thu Aug 23 00:04:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18084         * missing/strtod.c: removed.  [ruby-dev:31588]
18086         * LEGAL: updated.
18088 Wed Aug 22 15:59:44 2007  Koichi Sasada  <ko1@atdot.net>
18090         * bootstraptest/test_knownbug.rb:
18091           fix typo of filename (test_knwonbug.rb).
18093 Wed Aug 22 14:04:53 2007  Koichi Sasada  <ko1@atdot.net>
18095         * bootstraptest/test_knwonbug.rb: added.  This file will contain
18096           test cases which point out known bug.  If bug is fixed, tests
18097           should move to the suitable place.
18099         * bootstraptest/test_massign.rb: move a test which show known bug
18100           to test_knownbug.rb.
18102 Wed Aug 22 13:02:26 2007  Tanaka Akira  <akr@fsij.org>
18104         * bootstraptest/runner.rb (in_temporary_working_directory):
18105           don't remove the directory specified by --dir.
18107 Wed Aug 22 05:51:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18109         * util.c (ruby_strtod): replaced by the implementation by David
18110           M. Gay inspired by William D. Clinger's paper "How to Read Floating
18111           Point Numbers Accurately" [Proc. ACM SIGPLAN '90, pp. 92-101].
18112           a patch from Satoshi Nakagawa <snakagawa AT infoteria.co.jp>.
18113           [ruby-dev:31582]
18115         * test/ruby/test_float.rb (TestFloat::test_float): add test for
18116           precision.
18118 Wed Aug 22 03:51:07 2007  Koichi Sasada  <ko1@atdot.net>
18120         * cont.c: add Fiber#resume and Fiber.yield.
18121           and Fiber::Core class to realize Coroutine.
18123         * include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume().
18125         * enumerator.c: use above api.
18127         * test/ruby/test_fiber.rb: fix and add tests for above changes.
18129 Tue Aug 21 21:09:48 2007  Tanaka Akira  <akr@fsij.org>
18131         * lib/tmpdir.rb (Dir.mktmpdir): make directory suffix specifiable.
18132           suggested by knu.  [ruby-dev:31568]
18134 Tue Aug 21 15:00:23 2007  Koichi Sasada  <ko1@atdot.net>
18136         * st.c (st_clear): reset num_entries too.
18138 Tue Aug 21 13:57:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18140         * hash.c (st_foreach_func, rb_foreach_func): typedefed.
18142         * hash.c (rb_hash_clear): use st_clear() unless iterating.
18144         * st.c (struct st_table_entry): add new members, fore and back, to
18145           iterate in inserted order.
18147         * include/ruby/st.h (struct st_table): ditto.
18149 Tue Aug 21 04:09:06 2007  Koichi Sasada  <ko1@atdot.net>
18151         * benchmark/bm_vm2_case.rb: add a new benchmark.
18152           YARV optimize case/when syntax.  If every conditions
18153           are literal (such as Symbol, Fixnum, String), dispatch
18154           calc order will be O(1).
18156 Tue Aug 21 04:08:07 2007  Koichi Sasada  <ko1@atdot.net>
18158         * test/ruby/test_enumerator.rb: fix last commit.
18160 Tue Aug 21 03:59:32 2007  Koichi Sasada  <ko1@atdot.net>
18162         * test_enumerator.rb (enum_test): fix to return sorted
18163           array (for Hash test).
18165 Tue Aug 21 03:55:20 2007  Koichi Sasada  <ko1@atdot.net>
18167         * enumerator.c (next_i): fix to return with Fiber#yield at
18168           the end of each block.  [ruby-dev:31470]
18170         * enumerator.c (enumerator_next_p): call init_next if not
18171           initialized.  [ruby-dev:31514]
18173         * test/ruby/test_enumerator.rb: add tests for Enumerator.
18175 Mon Aug 20 23:28:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18177         * string.c (Init_String): remove Symbol.intern and Symbol#dump.
18178           [ruby-dev:31525]
18180         * dir.c (dir_foreach): return Enumerator if no block given.
18181           [ruby-dev:31525]
18183         * io.c (rb_io_s_foreach): argument count check before making
18184           Enumerator.  [ruby-dev:31525]
18186 Mon Aug 20 23:17:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18188         * vm_core.h (struct rb_thread_struct): removed first_func_arg and
18189           reuse first_args instead.
18191 Sun Aug 19 13:31:40 2007  Tanaka Akira  <akr@fsij.org>
18193         * gc.c: use VALGRIND_MAKE_MEM_UNDEFINED to detect use of collected
18194           objects if valgrind is available.  It cannot detect first 2 words
18195           because they are used as the free list.
18197 Sun Aug 19 13:13:52 2007  Koichi Sasada  <ko1@atdot.net>
18199         * compile.c (iseq_compile_each/NODE_RESBODY): fix to add
18200           additional nop to prevent tailcall optimization.
18202         * vm_opts.h: clean up comments.
18204 Sun Aug 19 12:58:39 2007  Koichi Sasada  <ko1@atdot.net>
18206         * insnhelper.ci (vm_call_bmethod): fix to propagate information
18207           that this proc is "from Method".  [ruby-dev:31490]
18209         * proc.c (method_proc, rb_mod_define_method): ditto.
18211         * vm.c (vm_invoke_proc_core): removed.
18213         * vm_core.h: ditto.
18215 Sun Aug 19 12:36:11 2007  Tanaka Akira  <akr@fsij.org>
18217         * test/ruby/sentence.rb: new method Sentence().
18219 Sun Aug 19 12:32:39 2007  Koichi Sasada  <ko1@atdot.net>
18221         * insnhelper.ci (vm_callee_setup_arg): fix to mark enough VM stack.
18222           [ruby-dev:31492]
18224 Sat Aug 18 19:02:34 2007  Tanaka Akira  <akr@fsij.org>
18226         * test/ruby/test_yield.rb (TestYieldGen): relax array size check
18227           in nested parameters.
18228           [ruby-dev:31485]
18230 Sat Aug 18 17:44:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18232         * ext/tk/tcltklib.c (Init_tcltklib): use rb_set_end_proc().
18234 Sat Aug 18 17:40:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18236         * thread.c (is_ruby_native_thread): check properly.  [ruby-dev:31166]
18238 Sat Aug 18 16:44:15 2007  Koichi Sasada  <ko1@atdot.net>
18240         * insnhelper.ci (vm_call_bmethod),
18241           vm.c (vm_invoke_proc_core): fix to do not restore
18242           $SAFE when proc invoked by bmethod.
18244         * vm_core.h: ditto.
18246 Sat Aug 18 16:44:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18248         * eval_error.ci (ruby_error_print): call error_print.
18250         * eval_jump.ci, process.c (rb_exit, rb_f_exit, rb_f_abort): moved.
18252 Sat Aug 18 15:59:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18254         * process.c (detach_process_watcher): should not pass the pointer
18255           to an auto variable to the thread to be created.  pointed and
18256           fix by KUBO Takehiro <kubo at jiubao.org>  [ruby-dev:30618]
18258 Sat Aug 18 15:52:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18260         * insnhelper.ci (vm_send_optimize): use MEMMOVE to shift values inside
18261           an array.
18263 Sat Aug 18 15:45:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18265         * insnhelper.ci (vm_yield_setup_args): rsize and psize should not be
18266           negative.
18268 Sat Aug 18 14:35:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18270         * insnhelper.ci (vm_callee_setup_arg, vm_send_optimize,
18271           vm_yield_setup_args): bulk copy for arguments.
18273 Sat Aug 18 13:55:58 2007  Koichi Sasada  <ko1@atdot.net>
18275         * compile.c (iseq_compile_each): fix to allow self.x=
18276           if x= is private.
18278         * bootstraptest/test_method.rb: add a test for above.
18280 Sat Aug 18 14:05:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18282         * parse.y (reg_compile_gen): obtain error info from errinfo.
18284         * re.c (rb_reg_error_desc): make RegexpError for initialization error.
18286         * re.c (rb_reg_compile): return nil and set errinfo if error.
18288 Sat Aug 18 13:23:01 2007  Koichi Sasada  <ko1@atdot.net>
18290         * eval.c: $! should not be writable.
18292         * eval.c (rb_rubylevel_errinfo): added.  rb_errinfo() returns
18293           rb_thread_t#errinfo.  rb_rubylevel_errinfo() returns $! value.
18295 Sat Aug 18 13:14:40 2007  Koichi Sasada  <ko1@atdot.net>
18297         * insnhelper.ci (vm_callee_setup_arg): fix to check arguments
18298           correctly. [ruby-dev:31472]
18300 Sat Aug 18 13:13:06 2007  Koichi Sasada  <ko1@atdot.net>
18302         * bootstraptest/test_exception.rb: add escape character ("\") for
18303           editors.
18305 Sat Aug 18 12:42:50 2007  Tanaka Akira  <akr@fsij.org>
18307         * test/ruby/test_yield.rb (TestYieldGen): add test for yielding to
18308           lambda using lambda parameter passing emulator.
18310 Sat Aug 18 12:24:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18312         * sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
18313           comment lines first.
18315 Sat Aug 18 11:44:59 2007  Koichi Sasada  <ko1@atdot.net>
18317         * compile.c (iseq_set_arguments), insnhelper.ci
18318           (vm_callee_setup_arg, vm_yield_setup_args):
18319           fix to cause raise on "lambda{|a|}.call(1, 2)".
18320           [ruby-dev:31464]
18322         * bootstraptest/test_block.rb: add tests for above.
18324 Sat Aug 18 01:12:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18326         * eval.c (frame_func_id): return proper method ID.
18328 Fri Aug 17 22:43:11 2007  Koichi Sasada  <ko1@atdot.net>
18330         * compile.c (iseq_compile_each): massign should return rvalue(s).
18332 Fri Aug 17 22:10:19 2007  Koichi Sasada  <ko1@atdot.net>
18334         * test/ruby/test_basicinstructions.rb: fix old tests.
18335           class variables should be inherited.
18337 Fri Aug 17 21:20:44 2007  Koichi Sasada  <ko1@atdot.net>
18339         * eval.c (rb_call), eval_method.ci (rb_add_method, rb_alias),
18340           insnhelper.ci (vm_call_method): fix to save safelevel for
18341           method node.
18343         * include/ruby/node.h: ditto.
18345         * bootstraptest/test_method.rb: add a test for above.
18347 Fri Aug 17 16:02:50 2007  Koichi Sasada  <ko1@atdot.net>
18349         * thread.c (rb_thread_terminate_all): fix to ignore
18350           exceptions.
18352         * thread.c (thread_start_func_2): fix
18353           abort_on_exception process.  [ruby-dev:31394]
18355 Fri Aug 17 14:38:36 2007  Tanaka Akira  <akr@fsij.org>
18357         * bootstraptest/runner.rb (in_temporary_working_directory): use
18358           Dir.mktmpdir to create and remove temporary directory.
18359           (Dir.mktmpdir): define if not available.
18360           [ruby-dev:31431]
18362 Fri Aug 17 03:07:37 2007  Koichi Sasada  <ko1@atdot.net>
18364         * compile.c (iseq_compile_each): fix throw insn option of next.
18366 Fri Aug 17 01:25:23 2007  Koichi Sasada  <ko1@atdot.net>
18368         * compile.c (iseq_set_arguments), insnhelper.ci
18369           (vm_callee_setup_arg, vm_yield_setup_args): fix
18370           block parameter problems. [ruby-dev:31437], [ruby-dev:31440]
18372         * bootstraptest/test_block.rb: add a test of [ruby-dev:31440].
18374 Fri Aug 17 01:24:12 2007  Koichi Sasada  <ko1@atdot.net>
18376         * iseq.c (ruby_iseq_disasm): fix to show arg_simple value.
18378 Fri Aug 17 01:21:29 2007  Koichi Sasada  <ko1@atdot.net>
18380         * insns.def (throw): insert a RUBY_VM_CHECK_INTS(). [ruby-dev:31361]
18382 Thu Aug 16 20:40:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18384         * bignum.c (bigtrunc): RBIGNUM(x)->len may be zero.  out of bound
18385           access.  [ruby-dev:31404]
18387         * sprintf.c (rb_str_format): small float should not call
18388           rb_dbl2big().
18390 Thu Aug 16 22:10:06 2007  Koichi Sasada  <ko1@atdot.net>
18392         * compile.c (iseq_compile_each): fix next/redo stack consistency.
18393           [ruby-dev:31373]
18395         * bootstraptest/test_syntax.rb: add tests for above.
18397         * sample/test.rb: fix to use __FILE__ instead of $0 to know basedir.
18399 Thu Aug 16 21:14:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
18401         * configure.in (BASERUBY): need AC_SUBST.  [ruby-dev:31438]
18403 Thu Aug 16 19:18:26 2007  Tanaka Akira  <akr@fsij.org>
18405         * test/ruby/sentence.rb: Sentence class implemented
18406           based on sentgen.rb
18408         * test/ruby/sentgen.rb: removed.
18410         * test/ruby/test_assignment.rb: use sentence.rb.
18412         * test/ruby/test_yield.rb: block parameter passing emulator
18413           implemented.
18415 Thu Aug 16 16:48:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18417         * configure.in (BASERUBY): check if base ruby is runnable first.
18418           [ruby-core:11900]
18420 Thu Aug 16 16:46:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18422         * configure.in (aix): enable shared by default.
18424         * configure.in (aix): for 64bit-mode AIX.  [ruby-dev:31401]
18425           + use CC for LDSHARED if non-gcc,
18426           + moved -G option from *LDFLAGS to LDSHARED,
18427           + set -brtl only in XLDFLAGS.
18429 Thu Aug 16 13:06:08 2007  Tanaka Akira  <akr@fsij.org>
18431         * bignum.c (big_lshift): make shift offset long type.
18432           (big_rshift): ditto.
18433           (rb_big_lshift): ditto.
18434           (big_rshift): ditto.
18435           [ruby-dev:31434]
18437 Thu Aug 16 06:29:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18439         * io.c (argf_readpartial): argf_forward needs argc and argv.
18441 Thu Aug 16 02:47:39 2007  Koichi Sasada  <ko1@atdot.net>
18443         * cont.c (rb_fiber_m_yield): added.  use this function
18444           for Fiber#yield instead of rb_fiber_yield.
18446 Thu Aug 16 00:36:52 2007  Tanaka Akira  <akr@fsij.org>
18448         * lib/tmpdir.rb (Dir.mktmpdir): new method.  [ruby-dev:31416]
18450 Wed Aug 15 18:57:30 2007  Koichi Sasada  <ko1@atdot.net>
18452         * gc.c (os_live_obj): fix to skip T_VALUES.
18454         * sample/test.rb: add an ObjectSpace test.
18456 Wed Aug 15 16:49:04 2007  Koichi Sasada  <ko1@atdot.net>
18458         * inits.c (rb_call_inits): change initializing order.
18459           [ruby-dev:31420]
18461 Wed Aug 15 16:44:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18463         * io.c (ARGF_FORWARD): wrongly compares with current_file with
18464           rb_stdout.  should be rb_stdin.  [ruby-cvs:20177]
18466 Wed Aug 15 14:59:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18468         * io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppress
18469           warnings.
18471 Wed Aug 15 14:22:05 2007  Koichi Sasada  <ko1@atdot.net>
18473         * parse.y: remove "//" type comment.
18475 Wed Aug 15 13:42:15 2007  Koichi Sasada  <ko1@atdot.net>
18477         * parse.y: fix rules around f_margs.  "make test" passes all tests.
18479         * bootstraptest/test_block.rb: add some tests for above.
18481 Wed Aug 15 13:50:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18483         * hash.c (rb_hash_delete_key): delete the entry without calling block.
18485         * hash.c (rb_hash_shift): should consider iter_lev too.
18487         * hash.c (delete_if_i): use rb_hash_delete_key() so that the block
18488           isn't called twice.  [ruby-core:11556]
18490 Wed Aug 15 13:39:25 2007  Koichi Sasada  <ko1@atdot.net>
18492         * process.c (proc_geteuid): fix strange conversion.  [ruby-dev:31417]
18494 Wed Aug 15 01:05:55 2007  Tanaka Akira  <akr@fsij.org>
18496         * bootstraptest/runner.rb (assert_check): don't call newtest.
18497           (assert_equal): call newtest.
18498           (assert_match): ditto.
18500 Tue Aug 14 21:43:39 2007  Tanaka Akira  <akr@fsij.org>
18502         * bootstraptest/runner.rb (assert_check): new method.
18503           (assert_match): new method.
18504           (assert_equal): use assert_check.
18505           (pretty): give failure description as an argument.
18507         * bootstraptest/test_exception.rb: use assert_match to describe the
18508           test for [ruby-dev:31407].  [ruby-dev:31412]
18510 Tue Aug 14 19:53:15 2007  Koichi Sasada  <ko1@atdot.net>
18512         * proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
18513           init place of exception_error.
18515         * inits.c: ditto.
18517         * eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
18518           [ruby-dev:31407]
18520         * bootstraptest/test_exception.rb: add a test for above.
18522 Tue Aug 14 19:51:20 2007  Koichi Sasada  <ko1@atdot.net>
18524         * common.mk: change test order (test -> btest).
18526 Tue Aug 14 00:04:27 2007  Kouhei Sutou  <kou@cozmixng.org>
18528         * lib/rss/rss.rb: 0.1.8 -> 0.1.9.
18530         * test/rss/test_version.rb: followed the above change.
18532         * lib/rss/parser.rb: fixed a bug that handles unintended elements.
18533           Thanks to Takuo Yonezawa. [ruby-list:43841]
18535 Mon Aug 13 17:23:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18537         * eval.c (rb_clear_trace_func, rb_thread_stop_timer_thread):
18538           declarations for forward references.
18540         * eval.c (rb_longjmp, eval): use local variable.
18542         * eval.c (rb_longjmp): string object not to be optimized.
18544 Mon Aug 13 13:21:58 2007  Tanaka Akira  <akr@fsij.org>
18546         * lib/open-uri.rb: make ftp passive mode to avoid NAT problem.
18547           [ruby-dev:31377]
18549 Mon Aug 13 09:18:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18551         * ext/stringio/stringio.c (strio_getc): should returns
18552           one-character string.
18554         * ext/stringio/stringio.c: remove unnecessary prototypes.
18556         * ext/stringio/stringio.c (strio_getbyte): new method.
18558         * ext/stringio/stringio.c (strio_readbyte): new method.
18560         * ext/stringio/stringio.c (strio_ungetc): should take a string as
18561           an input.
18563 Mon Aug 13 08:19:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18565         * io.c (argf_close): always close via method.
18567         * io.c (Init_IO): remove obsolete Kernel#getc.
18569 Mon Aug 13 05:03:53 2007  Koichi Sasada  <ko1@atdot.net>
18571         * thread.c (rb_thread_raise): check if target thread is
18572           thrown by another thread or not.  [ruby-dev:31371]
18574         * bootstraptest/test_thread.rb: add a test for above.
18576 Mon Aug 13 04:35:30 2007  Koichi Sasada  <ko1@atdot.net>
18578         * compile.c (iseq_peephole_optimize): fix peephole optimization
18579           bug. [ruby-dev:31360]
18581         * bootstraptest/test_syntax.rb: add a test for above.
18583 Mon Aug 13 04:02:29 2007  Koichi Sasada  <ko1@atdot.net>
18585         * vm_dump.c (debug_print_pre): fix to show control frame count.
18587         * insns.def (opt_call_c_function): fix operand type.
18589         * lib/vm/instruction.rb: ditto.
18591         * insnhelper.ci (vm_push_frame, vm_pop_frame): fix to show
18592           control stack status on if VMDEBUG == 2.
18594         * vm.h: add a comment about VMDEBUG.
18596         * iseq.c (find_prev_line_no): fix to skip bug report if
18597           line is not found.
18599         * lib/vm/instruction.rb: fix to use build_string() on
18600           source code generators.
18602 Mon Aug 13 03:57:32 2007  Koichi Sasada  <ko1@atdot.net>
18604         * template/yasmdata.rb.tmpl: fix type and name.
18606 Sat Aug 11 23:27:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18608         * io.c (argf_each_line): should use #each_line, not #each.
18610         * io.c (argf_each_line): simplified.
18612         * io.c (argf_getline): should handle non T_FILE object in ARGV.
18614         * io.c (argf_each_byte): each_byte should yield bytes not
18615           one-character strings.  [ruby-dev:31374]
18617 Sat Aug 11 07:24:55 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18619         * lib/date/format.rb: reverted some wrongly erased "o" options
18620           (pointed out by nobu).
18622 Sat Aug 11 00:01:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18624         * thread.c (thread_start_func_2): not re-raise to main thread if it is
18625           joining the current thread.
18627 Fri Aug 10 23:54:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18629         * thread.c (thread_create_core): inherit the priority of creating
18630           thread.  submitted at [ruby-core:11873] by David Flanagan <david AT
18631           davidflanagan.com>.  [ruby-core:11876]
18633 Fri Aug 10 05:12:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18635         * thread.c (thread_start_func_2): let abort_on_exception work.
18636           [ruby-core:11873]
18638 Fri Aug 10 04:47:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18640         * parse.y (internal_id_gen): internal ID must be bigger than
18641           tLAST_TOKEN.
18643 Thu Aug  9 16:04:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18645         * parse.y (stmt): check if rhs has value before assignment instead
18646           inside node_assign_gen().  [ruby-dev:31293]
18648         * parse.y (call_bin_op_gen, call_uni_op_gen): split call_op_gen.
18650 Thu Aug  9 14:01:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18652         * parse.y (f_marg_list): renamed from f_marg_head.
18654         * parse.y (f_margs): allow multiple mandatory arguments after a splat.
18655           [ruby-dev:31153]
18657 Thu Aug  9 02:02:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18659         * enum.c (enum_cycle): typo fixed.  a patch from Kazuhiro
18660           NISHIYAMA <zn AT mbf.nifty.com>.  [ruby-dev:31362]
18662 Wed Aug  8 19:17:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18664         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): no longer check
18665           HAVE_RB_IO_STDIO_FILE.
18667 Wed Aug  8 15:52:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18669         * enumerator.c (enumerator_next_p): should check correctly even when
18670           e.next has not been called before.
18672         * enumerator.c (enumerator_next): raise StopIteration (name taken
18673           from Python) instead of IndexError.
18675         * enum.c (enum_zip): catch StopIteration exception.
18677         * enumerator.c (enumerator_with_index): return Enumerator if no
18678           block is given.
18680         * test/ruby/test_iterator.rb (TestIterator::test_enumerator): add
18681           test for enumerators.
18683 Wed Aug  8 11:48:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18685         * bignum.c (rb_big2str0): should not use RTEST for non-VALUE.
18687 Wed Aug  8 11:25:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18689         * bignum.c (rb_big2str0): should preserve sign mark.
18691 Wed Aug  8 11:02:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18693         * common.mk (btest-miniruby, test-sample): split the test target
18694           so that -k option works.
18696 Tue Aug  7 14:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18698         * ext/pty/pty.c (establishShell): handshaking before close slave
18699           device.  [ruby-talk:263410]
18701         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): constified.
18703         * ext/pty/pty.c (SlaveName): removed static buffer.
18705         * ext/pty/expect_sample.rb: support for autologin.
18707 Tue Aug  7 13:58:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18709         * include/ruby/ruby.h (ruby_special_consts): added RUBY_SPECIAL_SHIFT.
18711         * .gdbinit: some improvements.
18713 Tue Aug  7 13:28:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18715         * common.mk (node_name.inc): use $? instead of $< for nmake.
18716           [ruby-dev:31356]
18718 Tue Aug  7 12:45:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18720         * configure.in (ac_cv_func_isinf): set yes also on OpenSolaris.
18721           [ruby-Bugs-12859]
18723 Tue Aug  7 12:31:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18725         * io.c (pipe_open): fix for win32 platforms.
18727 Tue Aug  7 02:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18729         * bignum.c (rb_big2str0): make Bignum#to_s even faster.  a patch
18730           from Kenta Murata <muraken AT gmail.com>.  [ruby-dev:31354]
18732 Tue Aug  7 01:42:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18734         * enum.c (enum_zip): zip no longer converts arguments into
18735           arrays, uses enumerators.
18737 Tue Aug  7 01:27:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18739         * cont.c (rb_fiber_yield): change argument ordering.  export.
18741         * cont.c (rb_fiber_current): export
18743         * include/ruby/intern.h: export several functions from cont.c.
18745         * enumerator.c (enumerator_next): new method to implement external
18746           iterator (generator) using fiber.
18748         * enumerator.c (enumerator_next_p): new method to check whether
18749           any element is left in the generator sequence.
18751         * enumerator.c (enumerator_rewind): a new method to rewind the
18752           generator sequence.
18754 Tue Aug  7 01:15:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18756         * enum.c (enum_cycle): new method to cycle enumerable forever.
18758 Tue Aug  7 00:05:38 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
18760         * irb/ruby-lex.rb: support for '\c'. [ruby-talk:263508]
18762 Mon Aug  6 20:29:22 2007  Koichi Sasada  <ko1@atdot.net>
18764         * insnhelper.ci, insns.def: move some statements to functions.
18766         * vm.c, vm.h, vm_evalbody.ci: fix include/typedef places.
18768 Mon Aug  6 18:41:12 2007  Koichi Sasada  <ko1@atdot.net>
18770         * lib/vm/instruction.rb (make_header_analysys): fix last commit.
18772 Mon Aug  6 18:33:22 2007  Koichi Sasada  <ko1@atdot.net>
18774         * lib/vm/instruction.rb (make_header_analysys): add to separate
18775           header addition process.
18777 Mon Aug  6 17:36:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18779         * lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax.
18781 Mon Aug  6 16:57:08 2007  Koichi Sasada  <ko1@atdot.net>
18783         * sample/test.rb: fix to output file name if it contains
18784           invalid syntax.
18786 Mon Aug  6 16:41:22 2007  Koichi Sasada  <ko1@atdot.net>
18788         * parse.y (value_expr_gen): fix to cause "void value expression"
18789           when jump expression such as "next" are shown on value_expr().
18790           [ruby-dev:31119]
18792         * bootstraptest/test_syntax.rb: fix to above change.
18794 Mon Aug  6 14:36:30 2007  Koichi Sasada  <ko1@atdot.net>
18796         * parse.y: fix a f_marg rule. [ruby-dev:31160]
18798 Mon Aug  6 14:29:30 2007  Koichi Sasada  <ko1@atdot.net>
18800         * bootstraptest/runner.rb (assert_equal): add additional
18801           message parameter.
18803 Mon Aug  6 13:34:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18805         * common.mk (INSNS): not chdir to srcdir.
18807         * common.mk (node_name.inc): auto-generate node name list.
18809         * iseq.c (ruby_node_name): ditto.
18811         * iseq.c (iseq_s_compile_option_get, Init_ISeq): added a new
18812           method VM::InstructionSequence::compile_option.
18814         * lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
18815           option.
18817         * tool/node_name.rb: to auto-generate node name list.
18819 Sun Aug  5 11:51:39 2007  Kouhei Sutou  <kou@cozmixng.org>
18821         * lib/rss, sample/rss, test/rss:
18822         - 0.1.7 -> 0.1.8.
18823         - supported <itunes:XXX>.
18824         - reverted backward incompatibility API changes introduced 0.1.7.
18826 Sun Aug  5 04:56:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18828         * io.c (pipe_open_v, pipe_open_s): separate array and string
18829           cases.  [ruby-dev:31344]
18831 Fri Aug  3 11:05:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18833         * ext/extmk.rb (extmake): save all CONFIG values.
18835         * ext/extmk.rb (extmake): remove mkmf.log at clean, and extconf.h at
18836           distclean, respectively.
18838         * ext/extmk.rb: remove rdoc at clean, and installed list file at
18839           distclean, respectively.
18841 Fri Aug  3 07:09:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18843         * lib/mkmf.rb: more verbose message.  [ruby-Bugs-12766]
18845         * lib/mkmf.rb (have_type): suppress a warning with -Wall.
18847         * lib/mkmf.rb (find_type): new method.
18849 Fri Aug  3 00:00:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18851         * bignum.c (big2str_table): base cannot be 0 or 1.
18853 Thu Aug  2 23:42:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18855         * parse.y (reg_compile_gen): set error if failed to compile regexp
18856           literal.  [ruby-dev:31336]
18858         * re.c (option_to_str, arg_kcode, opt_kcode): options conversion
18859           between int and string.
18861         * re.c (rb_reg_compile): should not use regexp which could not get
18862           initialized.  [ruby-dev:31333]
18863           return error message to let the parser know it.
18865         * re.c (rb_reg_compile): append regexp options to error message.
18866           [ruby-dev:31334]
18868 Thu Aug  2 22:05:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18870         * bignum.c (rb_big2str0): faster Bignum#to_s using Karatsuba
18871           algorithm.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
18872           in [ruby-dev:31312], slightly modified by Kenta Murata
18873           <muraken AT gmail.com> in [ruby-dev:31339].
18875 Thu Aug  2 13:46:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18877         * sprintf.c (rb_f_sprintf): should not check positional number as
18878           width.  [ruby-core:11838]
18880 Wed Aug  1 12:40:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18882         * generic.rb (URI::Generic::merge_path): behave as RFC 3986.
18883           [ruby-talk:252052]
18885 Tue Jul 31 23:38:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18887         * lib/date/format.rb (_parse): now interprets slashed numerical
18888           dates as a big endian (except dd/mm/yyyy). [experimental]
18890 Mon Jul 30 11:16:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18892         * bignum.c (rb_big_aref): check for Bignum index range.
18893           [ruby-dev:31271]
18895 Sat Jul 28 09:35:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18897         * ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
18898           infinite recursive const_missing call.  [ruby-talk:262193]
18900 Thu Jul 26 20:40:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18902         * range.c (range_eqq): call_super() in === does not work well
18903           since Enumerable#=== has different behavior.  [ruby-dev:31296]
18905 Thu Jul 26 13:57:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18907         * dln.c (load_1, dln_find_1): constified.
18909         * dln.c (conv_to_posix_path): removed.
18911         * ruby.c (usage): constified.
18913         * ruby.c (rubylib_mangled_path, rubylib_mangled_path2): return
18914           VALUE instead of a pointer to static buffer.
18916         * ruby.c (push_include_cygwin): fixed buffer overflow.
18917           [ruby-dev:31297]
18919         * ruby.c (ruby_init_loadpath): not convert built-in paths.
18921 Tue Jul 24 10:37:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18923         * io.c (rb_f_p): return nil if no argument.  [ruby-dev:31285]
18925 Tue Jul 24 01:05:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18927         * regint.h (USE_MATCH_RANGE_IS_COMPLETE_RANGE): undef to achieve old
18928           rindex behavior.  [ruby-dev:31265]
18930 Mon Jul 23 18:37:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18932         * include/ruby/oniguruma.h: upgrade to Oniguruma 5.9.0.  fixes
18933           some memory violation.  [ruby-dev:31070]
18935 Sun Jul 22 20:09:49 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18937         * lib/date/format.rb (Date._parse): now accepts some new
18938           hints. [experimental]
18940         * lib/parsedate.rb: followed the changes on
18941           lib/date/format.rb. [experimental]
18943 Sun Jul 22 16:06:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18945         * thread.c (is_ruby_native_thread): made an int function as
18946           well as version 1.8.
18948         * include/ruby/ruby.h (is_ruby_native_thread): moved prototype
18949           from intern.h as well as version 1.8.
18951 Sun Jul 22 14:33:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18953         * file.c (rb_file_s_rename): deleted code to get rid of a bug of
18954           old Cygwin.
18956         * file.c (rb_file_truncate): added prototype of GetLastError()
18957           on cygwin.  [ruby-dev:31239]
18959         * include/ruby/intern.h (is_ruby_native_thread): prototype.
18961         * missing/strftime.c (strftime): fix printf format and actual
18962           arguments.
18964         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
18966         * ext/tk/tcltklib.c (ip_finalize): ditto.
18968         * ext/win32ole/win32ole.c (lcid_installed): ditto.
18970         * ext/socket/getnameinfo.c: include stdio.h always.
18972 Sat Jul 21 21:39:12 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18974         * lib/date.rb, lib/date/format.rb (Date._parse): now can take some
18975           hints (its aim must be mainly determination of endianness of
18976           date). [experimental]
18978         * lib/date.rb, lib/date/format.rb (Date._parse): now completes
18979           truncated year as default action. [experimental]
18981         * lib/date.rb, lib/date/format.rb: added ::iso8601, ::rfc3339,
18982           ::xmlschema, ::rfc2822, ::httpdate, ::jisx0301, #xmlschema,
18983           #httpdate. [experimental]
18985 Sat Jul 21 17:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18987         * common.mk: inverted rules order.
18989         * thread_win32.ci (w32_create_thread): bcc does not have
18990           _beginthreadex().
18992         * lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
18993           only if extconf.h is created.
18995         * bcc32/Makefile.sub: headers have moved.
18997         * bcc32/{Makefile.sub,configure.bat,setup.mak: configure_args
18998           support.
19000         * bcc32/setup.mak: check runtime version.
19002         * win32/win32.c (rb_w32_open_osfhandle): prototype has changed
19003           in bcc 5.82.
19005         * {win32,wince,bcc32}/setup.mak (-version-): no RUBY_EXTERN magic.
19007         * win32/resource.rb: include patchlevel number.
19009 Sat Jul 21 12:06:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19011         * lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
19013 Sat Jul 21 01:45:03 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19015         * lib/date/format.rb (Date._parse): completes calendar week based year.
19017         * lib/date/format.rb (Date._parse): detects year of ordinal date in
19018           extended format.
19020 Fri Jul 20 16:30:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19022         * compile.c (iseq_set_sequence): raise SyntaxError instead of rb_bug
19023           since this function can be called from VM::InstructionSequence.load.
19025         * compile.c (insn_set_sc_state, iseq_set_sequence_stackcaching): ditto.
19027 Fri Jul 20 16:11:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19029         * compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
19030           initialize aggregations with dynamic values.  [ruby-talk:259306]
19032         * eval.c (rb_protect): not to initialize aggregations with dynamic
19033           values.  [ruby-talk:259306]
19035         * gc.c (mark_current_machine_context): ditto.
19037         * thread.c (thgroup_list, call_trace_func): ditto.
19039         * vm.c (vm_init_redefined_flag): ditto.
19041 Fri Jul 20 15:22:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19043         * ext/openssl/ossl_config.c (ossl_config_set_section): do not
19044           initialize aggregations with dynamic values.  [ruby-talk:259306]
19046 Fri Jul 20 10:39:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19048         * parse.y (stmt, mlhs_node, lhs, arg, var_ref): return dummy
19049           NODE_BEGIN after errors.  [ruby-dev:31100], [ruby-dev:31118]
19051         * parse.y (remove_begin): keep empty NODE_BEGIN, instead of null.
19052           [ruby-dev:31252], [ruby-dev:31263]
19054 Fri Jul 20 09:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19056         * bootstraptest/runner.rb (get_result_string): check $?.coredump?
19057           first.
19059         * bootstraptest/runner.rb (cleanup_coredump, check_coredump): see
19060           stackdump file too.
19062 Thu Jul 19 20:39:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19064         * parse.y (value_expr_gen): warn for empty expression ().
19065           [ruby-dev:31252]
19067 Thu Jul 19 19:24:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19069         * eval_error.ci (get_backtrace): check the result more.
19070           [ruby-dev:31261] [ruby-bugs-12398]
19072 Thu Jul 19 14:38:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19074         * bignum.c (rb_big_lshift, rb_big_rshift): separated functions
19075           to get rid of infinite recursion.  fixed calculation in edge
19076           cases.  [ruby-dev:31244]
19078         * numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
19080 Wed Jul 18 16:57:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19082         * bignum.c (rb_big_pow): refine overflow check.  [ruby-dev:31242]
19084 Wed Jul 18 09:19:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19086         * parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
19087           for node to the head.
19089         * ruby.c (proc_options): do nothing for -p/-n options if tree is null.
19090           submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
19092 Wed Jul 18 08:47:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19094         * time.c (time_succ): Time#succ should return a time object in the
19095           same timezone mode to the original.  [ruby-talk:260256]
19097 Mon Jul 16 23:07:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19099         * lib/base64.rb (Base64::b64encode): should not specify /o option
19100           for regular expression.  [ruby-dev:31221]
19102 Mon Jul 16 22:57:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19104         * sprintf.c (rb_str_format): make %u behave like %d for negative
19105           values, since decimal format does not work with preceding dots.
19106           [ruby-core:11575]
19108 Mon Jul 16 18:29:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19110         * string.c (rb_str_rindex_m): accept string-like object convertible
19111           with #to_str method, as well as rb_str_index_m.  [ruby-core:11692]
19113 Mon Jul 16 07:17:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19115         * insns.def (getspecial): lfp_svar_get() requires int for special
19116           global variables.
19118 Mon Jul 16 05:45:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19120         * sprintf.c (rb_f_sprintf): more checks for format argument.
19121           [ruby-core:11569], [ruby-core:11570], [ruby-core:11571],
19122           [ruby-core:11573]
19124 Mon Jul 16 00:26:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19126         * bignum.c (rb_big_pow): removed invariant variable.  [ruby-dev:31236]
19128 Sun Jul 15 22:24:37 2007  pegacorn  <subscriber.jp AT gmail.com>
19130         * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format.  [ruby-dev:31222]
19132         * ext/digest/digest.c (rb_digest_instance_update,
19133           rb_digest_instance_finish, rb_digest_instance_reset,
19134           rb_digest_instance_block_length): %s in rb_raise() expects char*.
19135           [ruby-dev:31222]
19137         * ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]
19139         * ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]
19141         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
19142           instead of rb_raise().  [ruby-dev:31222]
19144         * ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]
19146         * ext/syck/syck.h: include stdlib.h for malloc() and free().
19147           [ruby-dev:31232]
19149         * ext/syck/syck.h (syck_parser_set_input_type): prototype added.
19150           [ruby-dev:31231]
19152         * win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]
19154         * include/ruby/win32.h (rb_w32_getcwd): prototype added.
19155           [ruby-dev:31232]
19157 Sun Jul 15 21:07:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19159         * bignum.c (bigtrunc): do not empty Bignum.  [ruby-dev:31229]
19161 Sun Jul 15 19:05:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19163         * bignum.c (rb_cstr_to_inum): check leading non-digits.
19164           [ruby-core:11691]
19166 Sun Jul 15 04:42:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19168         * bignum.c (get2comp): do nothing for empty Bignum.  [ruby-dev:31225]
19170 Sat Jul 14 22:49:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19172         * numeric.c (fix_pow): integer power calculation: 0**n => 0,
19173           1**n => 1, -1**n => 1 (n: even) / -1 (n: odd).
19175         * test/ruby/test_fixnum.rb (TestFixnum::test_pow): update test
19176           suite.  pow(-3, 2^64) gives NaN when pow(3, 2^64) gives Inf.
19178 Sat Jul 14 18:46:35 2007  Tanaka Akira  <akr@fsij.org>
19180         * configure.in: add --with-valgrind.
19182         * gc.h (SET_MACHINE_STACK_END): new macro to replace
19183           rb_gc_set_stack_end.  it find out accurate stack boundary by
19184           asm using gcc on x86.
19186         * thread.c (rb_gc_set_stack_end): don't define if asm-version
19187           SET_MACHINE_STACK_END is available.
19189         * gc.c (mark_current_machine_context): extracted from garbage_collect.
19190           it use SET_MACHINE_STACK_END to not scan out of stack area.
19191           it notify conservative GC information to valgrind if
19192           --with-valgrind.
19194 Sat Jul 14 14:04:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19196         * enum.c (sort_by_cmp): check if reentered.  [ruby-dev:24291]
19198 Sat Jul 14 11:08:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19200         * ext/json/ext/generator/generator.c (check_max_nesting): wrong
19201           format specifier.  a patch from pegacorn <subscriber.jp AT gmail.com>.
19202           [ruby-dev:31217]
19204 Sat Jul 14 02:27:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19206         * numeric.c (int_pow): overflow detection using FIT_SQRT_LONG().
19207           [ruby-dev:31215]
19209 Sat Jul 14 02:05:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19211         * insns.def (opt_div): LONG2FIX() may not work for corner cases,
19212           use LONG2NUM() instead.  [ruby-dev:31210]
19214 Sat Jul 14 00:34:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19216         * numeric.c (int_round): should not return false, but self.
19217           [ruby-dev:31212]
19219 Fri Jul 13 18:31:27 2007  Koichi Sasada  <ko1@atdot.net>
19221         * include/ruby/intern.h: remove unused function declarations.
19223         * include/ruby/ruby.h: ditto.
19225 Fri Jul 13 17:32:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19227         * vm.c (vm_free): clear free'ed living_threads field.
19228           [ruby-dev:31163]
19230         * insns.def (opt_succ): use cast to shut a warning up.
19232 Fri Jul 13 16:10:00 2007  Tanaka Akira  <akr@fsij.org>
19234         * lib/open-uri.rb (URI::Generic#find_proxy): use ENV.to_hash to access
19235           http_proxy environment variable to avoid case insensitive
19236           environment search.
19238 Fri Jul 13 15:02:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19240         * win32/win32.c (CreateChild): enclose command line except for
19241           command.com which can not handle quotes.  [ruby-talk:258939]
19243 Fri Jul 13 11:33:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19245         * range.c (range_max, range_min): return nil for empty set as well as
19246           1.8 and Enumerable.  [ruby-dev:31198]
19248 Fri Jul 13 11:28:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19250         * parse.y (bvar): semicolon was lost for ripper description.
19251           [ruby-dev:31140]
19253 Fri Jul 13 11:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19255         * parse.y (program, stmt, primary): reduced duplicated code.
19257         * parse.y (dsym): convert also literals containing NUL to
19258           symbol.
19260         * parse.y (debug_lines): use rb_hash_lookup() to get rid of
19261           call of Hash#default.
19263         * parse.y (ripper_warningS): unused in ripper right now.
19265 Fri Jul 13 10:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19267         * array.c (rb_ary_flatten_bang): check argument if valid
19268           integer.  [ruby-dev:31197]
19270 Fri Jul 13 10:10:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19272         * lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
19273           ::CONFIG which is an alias of MAKEFILE_CONFIG.
19275 Thu Jul 12 21:38:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19277         * insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
19278           [ruby-dev:31199]
19280 Thu Jul 12 18:42:18 2007  Tanaka Akira  <akr@fsij.org>
19282         * range.c (range_max): use FIX2LONG instead of FIX2INT to avoid
19283           RangeError by ((-0x80000001)...(-0x80000001)).max on LP64.
19285         * insns.def (opt_plus): use FIX2LONG instead of FIX2INT to avoid
19286           RangeError by 0x3fffffffffffffff+1 on LP64.
19288         * insns.def (opt_succ): don't use 0x80000000 which assumes 32bit VALUE.
19289           use FIX2LONG instead of FIX2INT.
19290           [ruby-dev:31190]
19292 Thu Jul 12 17:03:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19294         * struct.c (rb_struct_init_copy): disallow changing the size.
19295           [ruby-dev:31168]
19297 Thu Jul 12 12:58:21 2007  Koichi Sasada  <ko1@atdot.net>
19299         * blockinlining.c: remove "yarv" prefix.
19301         * array.c, numeric.c: ditto.
19303         * insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
19305         * yarvcore.c: removed.
19307         * yarvcore.h: renamed to core.h.
19309         * cont.c, debug.c, error.c, process.c, signal.c : ditto.
19311         * ext/probeprofiler/probeprofiler.c: ditto.
19313         * id.c, id.h: added.
19315         * inits.c: ditto.
19317         * compile.c: rename internal functions.
19319         * compile.h: fix debug flag.
19321         * eval.c, object.c, vm.c: remove ruby_top_self.
19322           use rb_vm_top_self() instead.
19324         * eval_intern.h, eval_load: ditto.
19326         * gc.c: rename yarv_machine_stack_mark() to
19327           rb_gc_mark_machine_stack().
19329         * insnhelper.h: remove unused macros.
19331         * iseq.c: add iseq_compile() to create iseq object
19332           from source string.
19334         * proc.c: rename a internal function.
19336         * template/insns.inc.tmpl: remove YARV prefix.
19338         * thread.c: use rb_iseq_eval() and rb_str_new2().
19340         * vm.c (rb_iseq_eval): added.
19342         * vm.c: move some functions from yarvcore.c.
19344         * vm_dump.c: fix to remove compiler warning.
19346 Thu Jul 12 12:24:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19348         * insns.def (opt_succ): fixed typo.  [ruby-dev:31189]
19350 Thu Jul 12 10:30:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19352         * thread.c (thread_start_func_2): moved prototye from thread_*.ci.
19354         * thread_pthread.ci (thread_start_func_2): not use a directive
19355           inside a macro argument.  [ruby-talk:258763]
19357         * thread.c (thread_join): pthread_t may not be pointer.
19359         * thread_pthread.ci (ubf_select_each): ditto.
19361 Thu Jul 12 05:32:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19363         * include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
19365 Tue Jul 10 19:34:45 2007  Koichi Sasada  <ko1@atdot.net>
19367         * hash.c (rb_hash_lookup): added.  this function is similar to
19368           rb_hash_aref(), but doesn't call Hash#default when no entry
19369           exists.
19371         * include/ruby/intern.h: ditto.
19373         * insnhelper.ci (lfp_svar_get): use rb_hash_lookup().
19375 Tue Jul 10 19:16:28 2007  Koichi Sasada  <ko1@atdot.net>
19377         * eval.c, insnhelper.ci, vm.c: change cref index (-1 -> 2).
19379 Tue Jul 10 18:49:56 2007  Koichi Sasada  <ko1@atdot.net>
19381         * eval.c (exec_under): add proper casts.
19383 Tue Jul 10 16:58:16 2007  Koichi Sasada  <ko1@atdot.net>
19385         * vm.c, insnhelper.ci: fix svar interface.
19387         * compile.c (iseq_compile_each), yarvcore.h: fix to use new
19388           svar interface for flip flop.
19390         * eval.c: ditto.
19392         * insns.def: ditto.
19394         * include/ruby/intern.h: remove "rb_svar()" declaration.
19396 Tue Jul 10 16:52:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19398         * compile.c (rb_iseq_compile): formatted if/else to switch statement.
19400 Tue Jul 10 15:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19402         * bootstraptest/test_flip.rb: new test for flip-flop operator.
19404 Tue Jul 10 14:50:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19406         * bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
19408 Mon Jul  9 02:17:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19410         * cont.c (cont_restore_1): workaround for x64-mswin64's SEH.
19412 Sun Jul  8 02:08:53 2007  NARUSE, Yui  <naruse@ruby-lang.org>
19414         * lib/json.rb, lib/json/, ext/json/: import JSON 1.1.1
19416 Sat Jul  7 21:59:29 2007  Tanaka Akira  <akr@fsij.org>
19418         * lib/pp.rb (PP::PPMethods#pp_hash): sort condition changed:
19419           all keys have a same class which is kind of Comparable.
19421 Sat Jul  7 17:12:37 2007  Koichi Sasada  <ko1@atdot.net>
19423         * compile.c: use rb_bug() instead of rb_compile_error().
19425 Sat Jul  7 16:12:48 2007  Koichi Sasada  <ko1@atdot.net>
19427         * parse.y: fix node construction (around f_margs).
19428           [ruby-dev:31143]
19430         * bootstraptest/test_block.rb: add a test for above.
19432         * insnhelper.ci: fix indent.
19434 Sat Jul  7 15:36:50 2007  Tanaka Akira  <akr@fsij.org>
19436         * lib/pp.rb (PP::PPMethods#pp_hash): sort if
19437           all keys are strings, symbols or integers.
19439 Sat Jul  7 15:30:05 2007  Koichi Sasada  <ko1@atdot.net>
19441         * insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
19442           fix to pass nil as block parameter to yielded block.
19443           [ruby-dev:31147]
19445         * bootstraptest/test_block.rb: add a test for above.
19447 Fri Jul  6 19:55:10 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
19449         * lib/irb.rb: typo. Thanks, Giles Bowkett.
19451         * lib/irb/completion.rb: support Ruby1.9 changing return value
19452           String to Symbol for Object#methods, etc. [ruby-dev:31148].
19454 Fri Jul  6 18:20:50 2007  Koichi Sasada  <ko1@atdot.net>
19456         * bootstraptest/runner.rb: fix load path.
19458         * common.mk: fix "test" rule to run with "btest".
19460         * rubytest.rb, sample/test.rb: fix to show tests progress.
19462 Fri Jul  6 15:37:48 2007  Koichi Sasada  <ko1@atdot.net>
19464         * test/ruby/test_iterator.rb: fix test to 1.9 spec.
19466 Fri Jul  6 15:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19468         * eval.c (rb_interrupt): suppress a gcc's officious warning.
19470 Fri Jul  6 14:57:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19472         * parse.y (keyword_to_name): constified.
19474         * ext/ripper/eventids2.c (token_to_eventid): ditto.
19476 Fri Jul  6 14:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19478         * bootstraptest/runner.rb: added --quiet option.
19480 Fri Jul  6 14:35:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19482         * parse.y (f_marg): wrap f_norm_arg assignment node with NODE_LIST.
19483           [ruby-dev:31141]
19485 Fri Jul  6 12:15:01 2007  Tanaka Akira  <akr@fsij.org>
19487         * test/ruby/sentgen.rb: new file.
19489         * test/ruby/test_assignment.rb: tests implemented using assignment
19490           generator and emulator.
19492 Fri Jul  6 03:06:58 2007  Koichi Sasada  <ko1@atdot.net>
19494         * insns.def: remove unused code.
19496         * compile.c (compile_massign): fix to invoke to_splat on
19497           splat rhs (example: *a = *nil). [ruby-dev:31136]
19499         * bootstraptest/test_massign.rb: add tests for above.
19501         * compile.c (iseq_compile_each): disable excess optimization.
19502           [ruby-dev:31126]
19504 Fri Jul  6 02:08:25 2007  Koichi Sasada  <ko1@atdot.net>
19506         * insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
19507           [ruby-dev:31138].
19509         * bootstraptest/test_literal.rb: add tests for above.
19511 Thu Jul  5 19:45:55 2007  Koichi Sasada  <ko1@atdot.net>
19513         * yarvcore.h: rename rb_control_frame_t#magic to flag.
19515         * vm.h: add VM_FRAME_TYPE() and VM_FRAME_FLAG().
19517         * cont.c, insnhelper.ci, insns.def, vm.c, vm_dump.c,
19518           vm_evalbody.ci, yarvcore.c: apply above changes.
19520 Thu Jul  5 19:16:14 2007  Koichi Sasada  <ko1@atdot.net>
19522         * test/ruby/test_basicinstructions.rb: remove an assertion using
19523           unsupported hash literal (such as {1, 2}).
19525         * test/ruby/test_hash.rb: ditto.
19527 Thu Jul  5 19:12:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19529         * ruby.c: Qfalse is VALUE, not pointer.
19531 Thu Jul  5 18:42:01 2007  Koichi Sasada  <ko1@atdot.net>
19533         * compile.c (iseq_compile_each): add break catch point.
19535         * insns.def (throw): support correct "break" and "return".
19536           this commit achieve that "make test" passes all tests.
19538         * vm.c: ditto.
19540 Thu Jul  5 18:44:12 2007  Tanaka Akira  <akr@fsij.org>
19542         * parse.y (mlhs_basic): use mlhs_post after tSTAR.
19543           [ruby-dev:31109]
19545 Thu Jul  5 18:27:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19547         * include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
19548           eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
19549           yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
19550           ruby_nerrs): purge global variables.
19552         * ruby.c (proc_options): moved do_print and do_loop options
19553           handling from ruby_process_options().
19555 Thu Jul  5 16:37:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19557         * numeric.c (int_pow): fix previous nubu's commit.
19559         * test/ruby/test_fixnum.rb: new test.
19561 Thu Jul  5 15:56:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19563         * numeric.c (int_pow): even number multiplication never be negative.
19565 Thu Jul  5 10:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19567         * include/ruby/{node,ruby}.h, ruby.c: added enum constants for gdb
19568           support.  [ruby-dev:31066]
19570         * .gdbinit: some improvements.
19572 Thu Jul  5 10:13:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19574         * parse.y (global_symbols.last_id): reduce unused ID numbers.
19576         * include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
19577           constified.
19579 Wed Jul  4 23:36:27 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
19581         * lib/webrick/httpauth/authenticator.rb
19582           (WEBrick::HTTPAuth::Authenticator#check_scheme): auth-scheme must be
19583           treated as a case-insensitive token according to RFC 2617 section 1.2.
19585 Wed Jul  4 18:30:04 2007  Tanaka Akira  <akr@fsij.org>
19587         * parse.y (mlhs_inner): new rule.  [ruby-dev:31132]
19589 Wed Jul  4 05:11:57 2007  Koichi Sasada  <ko1@atdot.net>
19591         * iseq.c (set_relation): added.
19593 Wed Jul  4 04:58:30 2007  Koichi Sasada  <ko1@atdot.net>
19595         * insnhelper.ci (caller_setup_args): fix to show correct class
19596           on an error message (ex: m(&1)). [ruby-dev:31101]
19598 Wed Jul  4 04:30:32 2007  Koichi Sasada  <ko1@atdot.net>
19600         * compile.c (compile_array, iseq_compile_each): fix about array
19601           generation in void context. [ruby-dev:31102]
19603         * bootstraptest/test_literal.rb: add a test for above.
19605 Wed Jul  4 04:07:00 2007  Koichi Sasada  <ko1@atdot.net>
19607         * compile.c (compile_array): ignore NODE_ZARRAY.
19608           [ruby-dev:31110]
19610         * bootstraptest/test_method.rb: add a test for above.
19612 Wed Jul  4 04:04:02 2007  Koichi Sasada  <ko1@atdot.net>
19614         * compile.h: fix debug print level.
19616 Wed Jul  4 03:52:55 2007  Koichi Sasada  <ko1@atdot.net>
19618         * compile.c (iseq_compile_each): support v[&b]= type method call.
19619           [ruby-dev:31094]
19621         * bootstraptest/test_method.rb: add a test for above.
19623 Wed Jul  4 03:43:29 2007  Koichi Sasada  <ko1@atdot.net>
19625         * compile.c (compile_massign): fix massign compilation
19626           (example: a, *v, (*x) = ...).  [ruby-dev:31107]
19628         * bootstraptest/test_massign.rb: add tests for above.
19630 Tue Jul  3 23:12:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19632         * include/ruby/onigiruma.h (ONIG_EXTERN): use RUBY_EXTERN if defined.
19634         * regenc.h: include ruby/defines.h.
19636         * regint.h: x64-mswin64 support.
19638 Tue Jul  3 13:47:44 2007  Koichi Sasada  <ko1@atdot.net>
19640         * cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
19642 Mon Jul  2 21:45:53 2007  Koichi Sasada  <ko1@atdot.net>
19644         * compile.c: rename iseq_translate_direct_threaded_code()
19645           to iseq_translate_threaded_code().
19647         * eval_intern.h, yarvcore.h: mv EXEC_EVENT_HOOK() and
19648           exec_event_hooks() to yarvcore.h.
19650         * insnhelper.ci, vm.c: mv yarv_finish_insn_seq to vm.c.
19652         * insns.def (opt_call_c_function): fix to use RESTORE_REGS().
19654         * iseq.c (rb_iseq_build_for_ruby2cext): fix to allocate iseq.
19656 Mon Jul  2 11:59:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19658         * insns.def (defineclass): suppress a warning.
19660         * insns.def (opt_call_c_function): should raise the thrown exception
19661           instead of returning it.
19663 Mon Jul  2 08:53:47 2007  Koichi Sasada  <ko1@atdot.net>
19665         * eval_intern.h, yarvcore.h: move declaration of sysstack_error
19666           to yarvcore.h.
19668         * iseq.c: fix symbol name (:toplevel -> :top).
19670         * lib/vm/instruction.rb, template/vm.inc.tmpl: replaceable
19671           current file name.
19673 Mon Jul  2 05:29:07 2007  Koichi Sasada  <ko1@atdot.net>
19675         * compile.c, iseq.c: fix iseq some of load/store process.
19677 Mon Jul  2 03:09:36 2007  Koichi Sasada  <ko1@atdot.net>
19679         * yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
19680           rename structure names and field names.
19682         * insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
19684         * iseq.c: add rb_iseq_build_for_ruby2cext().
19686         * yarvcore.h, vm.h: move declaration of rb_insn_func_t
19687           to yarvcore.h.
19689 Sun Jul  1 03:25:53 2007  Koichi Sasada  <ko1@atdot.net>
19691         * insnhelper.h, vm.h: some refactoring.
19692           remove useless comments, etc.
19694 Sun Jul  1 03:02:29 2007  Koichi Sasada  <ko1@atdot.net>
19696         * yarvcore.h: some refactoring on rb_iseq_t.
19697           rename some variable names, add comments, etc.
19699         * compile.c, iseq.c, proc.c, vm.c: ditto.
19701 Sun Jul  1 02:57:57 2007  Koichi Sasada  <ko1@atdot.net>
19703         * vm.h: rename insn_func_type to rb_insn_func_type.
19705         * vm_evalbody.ci: ditto.
19707         * insns.def: add opt_call_native_compiled instruction
19708           instead of opt_call_native_compiled.
19710 Sat Jun 30 00:17:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19712         * parse.y (parser_yylex): return non-valid token for an invalid
19713           instance/class variable name.  a patch from Yusuke ENDOH
19714           <mame AT tsg.ne.jp>.  [ruby-dev:31095]
19716 Fri Jun 29 23:38:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19718         * parse.y (stmts): fix for ripper.
19720 Fri Jun 29 21:55:48 2007  Koichi Sasada  <ko1@atdot.net>
19722         * parse.y: fix to show line number of blank block.
19723           [ruby-dev:31093]
19725 Fri Jun 29 20:51:04 2007  Tanaka Akira  <akr@fsij.org>
19727         * lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
19728           follow Ruby 1.8.
19730 Fri Jun 29 17:10:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19732         * debug.h: constified.
19734         * debug.c (ruby_set_debug_option): separated from main.c.
19736         * gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed.
19738 Fri Jun 29 16:39:06 2007  Koichi Sasada  <ko1@atdot.net>
19740         * proc.c (proc_new): fix to return a proc object
19741           which block is contained ([ruby-dev:31056]).
19743 Fri Jun 29 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19745         * numeric.c (fix_pow): get rid of division by zero.  reported by
19746           Yusuke ENDOH <mame AT tsg.ne.jp> [ruby-dev:31040]
19748         * numeric.c (int_round): do nothing when rounding by zeroth digit.
19749           check underflow.  [ruby-dev:31043]
19751 Fri Jun 29 15:32:00 2007  Koichi Sasada  <ko1@atdot.net>
19753         * configure.in: add fastcall attribute check.
19755 Fri Jun 29 14:51:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19757         * parse.y (assoc_list): remove expanded hash literal (no splat).
19759         * lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::EOFError): adapt
19760           to new syntax.
19762 Fri Jun 29 14:48:18 2007  Koichi Sasada  <ko1@atdot.net>
19764         * tool/insns2vm.rb, lib/vm/instruction.rb: move process body
19765           to lib/vm/instruction.rb.
19767         * common.mk: fix aotc rule.
19768           experimental. bin/ruby2cext is not added yet.
19770 Fri Jun 29 11:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19772         * parse.y (dsym): return non-null NODE even if yyerror().  based on a
19773           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:31085]
19775 Thu Jun 28 23:29:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19777         * parse.y (assoc_list): odd number check only for NODE_ARRAY.
19778           [ruby-dev:31082]
19780 Thu Jun 28 22:24:33 2007  Koichi Sasada  <ko1@atdot.net>
19782         * win32/Makefile.sub: define FUNC_FASTCALL macro.
19784         * vm.h: fix to use FUNC_FASTCALL macro.
19785           TODO: add FUNC_FASTCALL macro by configure.
19787 Thu Jun 28 19:38:53 2007  Koichi Sasada  <ko1@atdot.net>
19789         * compile.c: fix to remove -Wall warnings on gcc.
19791         * compile.c (make_name_with_str): removed. use rb_sprintf() instead.
19793 Thu Jun 28 18:53:01 2007  Tanaka Akira  <akr@fsij.org>
19795         * bignum.c (rb_big_hash): fix hash area.
19797 Thu Jun 28 15:00:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19799         * ext/stringio/stringio.c (strio_getline): local variable to be
19800           initialized.  [ruby-dev:31077]
19802 Thu Jun 28 11:30:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19804         * gc.c (rb_obj_id): use SIGNED_VALUE instead of long.
19806 Thu Jun 28 05:01:56 2007  Koichi Sasada  <ko1@atdot.net>
19808         * common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
19810         * vm.c (rb_vm_set_finish_env): add a cast.
19812         * vm.h: support __fastcall for MSVC.
19814 Thu Jun 28 02:12:08 2007  Koichi Sasada  <ko1@atdot.net>
19816         * bootstraptest/runner.rb: fix to untouch $:.
19818 Thu Jun 28 02:03:07 2007  Koichi Sasada  <ko1@atdot.net>
19820         * compile.c (setup_args): change parameter type.
19822 Thu Jun 28 02:03:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19824         * parse.y (rb_intern2): unconstify cast.
19826 Thu Jun 28 01:44:31 2007  Tanaka Akira  <akr@fsij.org>
19828         * parse.y (rb_intern2): don't allocate a string object at first.
19829           [ruby-dev:31064]
19831 Thu Jun 28 01:24:02 2007  Koichi Sasada  <ko1@atdot.net>
19833         * bootstraptest/runner.rb: fix to show file name.
19835         * bootstraptest/test_*.rb: add bootstrap tests.
19837 Thu Jun 28 01:22:15 2007  Koichi Sasada  <ko1@atdot.net>
19839         * include/ruby/node.h, parse.y, gc.c, iseq.c: remove NODE_CREF.
19841 Thu Jun 28 01:19:43 2007  Koichi Sasada  <ko1@atdot.net>
19843         * compile.c (iseq_compile_each): fix popped backref and others.
19844           ([ruby-dev:31068]).
19846         * compile.c (iseq_compile_each): remove needless statements.
19848 Wed Jun 27 23:51:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19850         * win32/win32.c: remove unused functions.
19852 Wed Jun 27 20:46:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19854         * include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
19855           win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
19856           x64-mswin64 port.
19858 Wed Jun 27 20:31:07 2007  Koichi Sasada  <ko1@atdot.net>
19860         * compile.c (iseq_translate_direct_threaded_code): fix prototype
19861           function name.
19863         * vm.h: add correct cast.
19865 Wed Jun 27 17:08:42 2007  Koichi Sasada  <ko1@atdot.net>
19867         * vm_evalbody.ci: support OPT_CALL_THREADED_CODE.
19869         * insns.def, vm.c, vm.h: ditto.
19871         * vm.h: add VM_CFP_CNT() and VM_SP_CNT().
19873 Wed Jun 27 04:23:47 2007  Koichi Sasada  <ko1@atdot.net>
19875         * compile.c (iseq_compile_each): fix type error.
19877 Wed Jun 27 03:26:15 2007  Koichi Sasada  <ko1@atdot.net>
19879         * compile.c (compile_massign), insns.def (expandarray): support
19880           postarg with massign (a, *b, c = ...).
19882         * bootstraptest/test_massign.rb: add tests for above.
19884         * compile.h: fix debug macro names.
19886 Wed Jun 27 00:18:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19888         * string.c (rb_str_clear): need to check STR_EMBED_P() before
19889           free()ing memory.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
19890           [ruby-dev:31062]
19892 Tue Jun 26 16:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19894         * process.c (proc_getgroups): use GIDT2NUM for rb_gid_t.
19896 Tue Jun 26 16:28:24 2007  Koichi Sasada  <ko1@atdot.net>
19898         * thread.c (rb_thread_wait_fd_rw): terminate fdset.
19900 Tue Jun 26 16:26:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19902         * regint.h: IL32LLP64 support.
19904 Tue Jun 26 16:22:45 2007  Koichi Sasada  <ko1@atdot.net>
19906         * iseq.c (ruby_node_name): update node names.
19908 Tue Jun 26 15:21:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19910         * include/ruby/ruby.h: IL32LLP64 support.
19912         * bignum.c (bigfixize, rb_cstr_to_inum): ditto.
19914         * insns.def (opt_plus, opt_minus, opt_mult): ditto.
19916 Tue Jun 26 15:04:06 2007  Koichi Sasada  <ko1@atdot.net>
19918         * cont.c (rb_fiber_s_new): revert initializing VM stack.
19920         * yarvcore.c (th_init2): ditto.
19922         * vm.c, vm.h: fix to stop using Qundef on VM stack.  According to
19923           this change, VM stack should not include Qundef value.
19925         * insns.def (putundef): removed.
19927         * compile.c (iseq_compile_each): ditto.
19929         * eval.c (eval): fix spacing.
19931 Tue Jun 26 04:03:50 2007  Koichi Sasada  <ko1@atdot.net>
19933         * insnhelper.ci (vm_yield_with_cfunc), proc.c: fix Method#to_proc
19934           to return lambda Proc ([ruby-dev:31021], [ruby-dev:31037]).
19936 Tue Jun 26 03:46:08 2007  Koichi Sasada  <ko1@atdot.net>
19938         * cont.c (rb_fiber_s_new): fix to clear rb_thread_t#tag.
19939           [ruby-dev:30995]
19941 Tue Jun 26 03:38:31 2007  Koichi Sasada  <ko1@atdot.net>
19943         * cont.c (rb_fiber_s_new), yarvcore.c (th_init2): fix to clear
19944           VM stack ([ruby-dev:31046]).
19946 Tue Jun 26 03:15:27 2007  Koichi Sasada  <ko1@atdot.net>
19948         * compile.c: rename setup_arg() to setup_args().
19949           fix to use setup_args() at processing NODE_YIELD.
19951 Tue Jun 26 02:50:24 2007  Koichi Sasada  <ko1@atdot.net>
19953         * compile.c (setup_arg): support kind of "m(*ary, x)" method call.
19954           ([ruby-dev:31048]).
19956 Tue Jun 26 00:28:44 2007  Koichi Sasada  <ko1@atdot.net>
19958         * insnhelper.ci, vm.c: complete block parameter support.
19959           post arguments, optional arguments, block argument.
19961         * compile.c, parse.y: fix {|a|} parameter.
19963         * insnshelper.ci, insns.def: revert caller_setup_args() option
19964           (need_block_check) parameter.
19966 Mon Jun 25 20:18:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19968         * gc.c (RVALUE): in RVALUE and RBasic, flags must be the same type.
19970 Mon Jun 25 18:02:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19972         * ext/pty/extconf.rb: skip wince and win64.
19974 Mon Jun 25 17:59:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19976         * include/ruby/node.h (NODE_LMASK, nd_line): shouldn't use int and/or
19977           long carelessly.
19979 Mon Jun 25 11:36:35 2007  Koichi Sasada  <ko1@atdot.net>
19981         * gc.h: add RUBY_ prefix to debug macros.
19983         * cont.c, proc.c, yarvcore.c,
19985         * gc.c: define ruby_gc_debug_indent variable to debug mark/free.
19987         * vm.c, insnhelper.ci: rename some functions to vm_* or rb_vm_*.
19988           move some functions, definitions, declarations to suitable files.
19990         * eval.c, yarvcore.h, eval_error.ci, insnhelper.ci: ditto.
19992 Mon Jun 25 09:45:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19994         * eval_error.ci, eval_jump.ci, eval_method.ci, eval_safe.ci: c-mode.
19996 Mon Jun 25 05:27:54 2007  Koichi Sasada  <ko1@atdot.net>
19998         * eval.c: remove ruby_current_node and change eval() prototype.
19999           fix to use rb_sourcefile/line() instead of ruby_sourcefile/line.
20001         * error.c, eval_error.ci, eval_load.c, eval_safe.ci, gc.c,
20002           include/ruby/intern.h, parse.y, process.c, ruby.c: ditto.
20004         * vm.c: fix spaces.
20006 Mon Jun 25 04:20:14 2007  Koichi Sasada  <ko1@atdot.net>
20008         * eval_*.h: rename to eval_*.ci.
20010         * common.mk: ditto.
20012         * eval_error.ci: remove ruby_set_current_source().
20014         * error.c, eval.c, ruby.c: ditto.
20016         * eval_safe.c, proc.c: remove unused macros.
20018 Mon Jun 25 03:37:20 2007  Koichi Sasada  <ko1@atdot.net>
20020         * insnhelper.ci (caller_setup_args): add need_block_check option.
20022         * insns.def: ditto.
20024         * yarvcore.h: add GetCoreDataFromValue().
20026 Mon Jun 25 02:14:30 2007  Koichi Sasada  <ko1@atdot.net>
20028         * call_cfunc.ci: removed.
20030         * insnhelper.ci: added. this function includes all functions that
20031           vm insns need.
20033         * common.mk: ditto.
20035         * insnhelper.h, vm.h, vm.c: move some declaration.
20037         * gc.h: remove GC_CHECK() macro because GC.stress is more useful.
20039         * compile.c, iseq.c, vm_dump: ditto.
20041         * gc.h, thread.c: move a prototype declaration.
20043         * debug.c, debug.h: rename some functions.
20045         * compile.h: ditto.
20047 Mon Jun 25 00:45:02 2007  Koichi Sasada  <ko1@atdot.net>
20049         * insns.def (invokesuper): fix error message.
20051 Mon Jun 25 00:14:13 2007  Koichi Sasada  <ko1@atdot.net>
20053         * vm.c: some refactoring.
20054           * rename th_* to vm_*.
20055           * remove unused variables functions.
20056           * add prototypes.
20058         * blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
20059           eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
20060           proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
20061           vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
20063 Sun Jun 24 22:32:00 2007  Koichi Sasada  <ko1@atdot.net>
20065         * eval_method.h (rb_add_method): fix to check 0.
20067 Sun Jun 24 22:00:17 2007  Koichi Sasada  <ko1@atdot.net>
20069         * insn_send.ci: removed.
20071         * common.mk: ditto.
20073         * vm.c (vm_call_bmethod), isnsn.def: added.  fix to use this
20074           function instead of using goto.
20076         * vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
20078         * vm.c (vm_method_missing): renamed from eval_method_missing().
20080         * vm_evalbody.ci: remove tmp_* variables.
20082         * insnhelper.h: add some macros.
20084         * insns.def: forbid zsuper from method defined by define_method().
20086         * test/ruby/test_super.rb: ditto.
20088 Sun Jun 24 20:01:08 2007  Koichi Sasada  <ko1@atdot.net>
20090         * vm_macro.def: removed.
20092         * insn_send.ci: added.  this file includes send instruction body.
20094         * common.mk: ditto.
20096         * insns.def: ditto.
20098         * tool/insns2vm.rb: ditto.
20100         * vm.c: ditto.
20102 Sun Jun 24 19:30:37 2007  Koichi Sasada  <ko1@atdot.net>
20104         * insnhelper.h (RESTORE_REGS): add do/while(0) around macro.
20106         * vm.c, vm_macro.def: remove macro_eval_invoke_func() and
20107           add vm_setup_method().  use it instead.
20109 Sun Jun 24 19:02:33 2007  Koichi Sasada  <ko1@atdot.net>
20111         * vm.c, vm_macro.def : remove macro_eval_invoke_cfunc() and
20112           add vm_call_cfunc().
20114 Sun Jun 24 17:54:13 2007  Koichi Sasada  <ko1@atdot.net>
20116         * insns.def, vm.c: add/fix stack overflow check.
20118 Sun Jun 24 17:28:52 2007  Koichi Sasada  <ko1@atdot.net>
20120         * insnhelper.h: change CHECK_STACK_OVERFLOW() to throw exception.
20122         * vm.c (caller_setup_arg), vm_macro.def: remove
20123           macro_eval_setup_send_arguments and add caller_setup_arg().
20125         * insns.def: ditto.
20127         * bootstraptest/test_method.rb: add splat arg tests.
20129 Sun Jun 24 16:35:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20131         * proc.c (proc_to_s): used a variable before initialized.
20133 Sun Jun 24 16:05:45 2007  Koichi Sasada  <ko1@atdot.net>
20135         * vm.c (callee_setup_arg): added.  support correct post arg.
20137         * vm_macro.def (macro_eval_invoke_func): fix to use
20138           callee_setup_arg.
20140         * compile.c (set_arguments): adjust for above changes.
20142         * compile.c (iseq_compile_each): ditto.
20144         * iseq.c (ruby_iseq_disasm): ditto.
20146         * yarvcore.h: add rb_iseq_t#post_arg_start and arg_size.
20148         * bootstraptest/test_method.rb: add post arg tests.
20150 Sun Jun 24 16:10:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20152         * proc.c (proc_to_s): suppress warning, and reduced duplicated code.
20154 Sun Jun 24 15:33:47 2007  Koichi Sasada  <ko1@atdot.net>
20156         * bootstraptest/runner.rb: set default directory to
20157           '/tmp/bootstraptest.tmpwd' and add --dir option.
20158           fix to output driver and target information.
20160         * common.mk: fix to run btest on BASERUBY and
20161           add OPTS to pass option ("make btest OPTS=...").
20163 Sun Jun 24 03:05:00 2007  Tanaka Akira  <akr@fsij.org>
20165         * enum.c (enum_minmax): fix SEGV by [].minmax.
20167 Sat Jun 23 17:18:19 2007  Tanaka Akira  <akr@fsij.org>
20169         * re.c (match_inspect): MatchData#inspect implemented.
20171 Sat Jun 23 15:00:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20173         * enum.c (enum_minmax): new method to get the minimum and maximum
20174           values from the enumerable at once.
20176         * enum.c (enum_minmax_by): ditto.
20178 Sat Jun 23 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20180         * hash.c (rb_hash_assoc): new method.
20182         * hash.c (rb_hash_rassoc): ditto.
20184         * hash.c (rb_hash_flatten): ditto.
20186 Fri Jun 22 23:55:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20188         * string.c (rb_str_upto): add optional argument to specify
20189           exclusiveness.
20191         * range.c (range_step): use String#upto with optional argument.
20193         * range.c (range_each): ditto.
20195 Fri Jun 22 19:55:51 2007  Tanaka Akira  <akr@fsij.org>
20197         * proc.c (proc_to_s): revert the change from %p to %lx at YARV
20198           merge time.
20200 Fri Jun 22 19:33:49 2007  Tanaka Akira  <akr@fsij.org>
20202         * proc.c (proc_to_s): show is_lambda.
20204 Thu Jun 21 20:36:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20206         * hash.c (rb_hash_sort): remove hash specific implementation.
20208 Thu Jun 21 20:28:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20210         * hash.c (rb_hash_select): returns new hash, not assoc array.
20211           [ruby-core:11504]
20213         * hash.c (env_select): ditto.
20215 Thu Jun 21 23:08:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20217         * parse.y (rb_intern2): ID_JUNK test based on len, not by NUL.
20219 Thu Jun 21 19:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20221         * yarvcore.c (rb_thread_mark): mark also thrown_errinfo.
20223 Thu Jun 21 17:13:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20225         * parse.y (rb_intern2): name may not be NUL-terminated.
20227 Wed Jun 20 08:27:57 2007  Tanaka Akira  <akr@fsij.org>
20229         * eval_error.h (error_print): show full stacktrace on
20230           non-SystemStackError.
20232 Wed Jun 20 04:45:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20234         * parse.y (rb_intern2): use rb_intern2 to intern without trailing
20235           equal sign.
20237         * parse.y (rb_intern2, ripper_id2sym): fixed indent.
20239 Tue Jun 19 10:55:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20241         * eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
20242           pointer.  [ruby-Bugs-11659]
20244 Mon Jun 18 08:47:54 2007  Technorama Ltd.  <oss-ruby@technorama.net>
20246         * ext/openssl/{extconf.rb,ossl_ssl_session.c}:
20247           Fix ruby-Bugs-11513.
20249         * ext/openssl/ossl_pkey_ec.c
20250           New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
20251           By default output the same key form as the openssl command.
20253         * ext/openssl/ossl_rand.c
20254           New method Random.status?
20256         * test/openssl/test_ec.rb
20257           New tests.
20259 Mon Jun 18 17:04:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20261         * eval_load.c (rb_require_safe, ruby_init_ext): load with ruby level
20262           cfp.  [ruby-core:10779]
20264         * eval_intern.h, vm.c (rb_vm_call_cfunc): new function to call a
20265           function with ruby level cfp.
20267 Mon Jun 18 16:57:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20269         * parse.y (yycompile): disable trace while creating ruby_debug_lines.
20270           [ruby-talk:253586]
20272         * thread.c (ruby_suppress_tracing): new function to call a function
20273           with suppressing trace.
20275         * lib/debug.rb, lib/tracer.rb: for YARV.
20277 Mon Jun 18 13:54:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20279         * eval.c (ruby_cleanup): return EXIT_FAILURE if any exceptions occurred
20280           in at_exit blocks.  [ruby-core:11263]
20282 Mon Jun 18 02:49:16 2007  Koichi Sasada  <ko1@atdot.net>
20284         * vm.c (env_mark): fix to mark block.proc.
20286         * vm.c (th_make_proc_from_block): set created proc to block->proc.
20288 Mon Jun 18 02:48:12 2007  Koichi Sasada  <ko1@atdot.net>
20290         * vm_dump.c (vm_stack_dump_raw): hide VM stack trace.
20292 Mon Jun 18 02:43:53 2007  Koichi Sasada  <ko1@atdot.net>
20294         * signal.c (sigsegv): clear gc_stress flag on SEGV.
20296 Mon Jun 18 01:14:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20298         * variable.c (rb_path2class): get rid of dangling pointer caused by
20299           optimized out value.
20301         * variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,
20302           rb_generic_ivar_table, generic_ivar_get, generic_ivar_set,
20303           generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar,
20304           rb_free_generic_ivar, rb_copy_generic_ivar,
20305           rb_obj_instance_variables): suppress warnings.
20307 Sun Jun 17 11:11:07 2007  Tanaka Akira  <akr@fsij.org>
20309         * eval.c (rb_method_missing): avoid a warning "too many arguments
20310           for format string" on "./ruby -ve 'def m() super end; m'".
20312 Sat Jun 16 22:24:17 2007  Tanaka Akira  <akr@fsij.org>
20314         * gc.c (garbage_collect): re-introduce ruby_current_node marking code.
20315           [ruby-dev:31005]
20317 Sat Jun 16 21:37:43 2007  Tanaka Akira  <akr@fsij.org>
20319         * gc.c (gc_sweep): re-introduce heap extension strategy change.
20320           [ruby-dev:31005]
20322 Fri Jun 15 22:59:37 2007  Tanaka Akira  <akr@fsij.org>
20324         * .gdbinit: new file to ease debugging using gdb.
20326 Fri Jun 15 22:33:55 2007  Tanaka Akira  <akr@fsij.org>
20328         * signal.c (default_handler): func argument removed.
20329           (trap_handler): support SYSTEM_DEFAULT.  call default_handler
20330           internally.
20331           (sig_trap): don't call default_handler.
20332           [ruby-dev:30999]
20334 Fri Jun 15 22:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20336         * common.mk (realclean): separate local and ext.
20338         * ext/extmk.rb: not remove unrelated directories.
20340 Fri Jun 15 20:50:02 2007  Tanaka Akira  <akr@fsij.org>
20342         * keywords: enclose C code in declaration section by %{ and %} to
20343           avoid extra semicolon after #ifdef RIPPER.
20344           pointed by eban.
20346 Fri Jun 15 18:56:52 2007  Tanaka Akira  <akr@fsij.org>
20348         * signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrong
20349           trap error because SIG_DFL may be zero.
20351 Fri Jun 15 15:55:55 2007  Koichi Sasada  <ko1@atdot.net>
20353         * insns.def (setconstant, toregexp): fix to mark object correctly.
20355 Fri Jun 15 13:24:18 2007  Koichi Sasada  <ko1@atdot.net>
20357         * hash.c: exchange semantics of Hash#each and Hash#each_pair.
20358           pointed out by [ruby-dev:30997].
20360         * test/ruby/test_iterator.rb: ditto.
20362         * test/ruby/test_yield.rb: ditto.
20364 Fri Jun 15 12:38:29 2007  Koichi Sasada  <ko1@atdot.net>
20366         * test/ruby/test_iterator.rb: remove debug code (GC.stress=true).
20368 Fri Jun 15 12:25:33 2007  Koichi Sasada  <ko1@atdot.net>
20370         * vm.c (th_yield_setup_args): |v| should work as |v,|.
20371           ex) def m;yield 1, 2; end; m{|v| p v} #=> 1
20373         * parse.y: apply above change for "for" statement.
20375         * test/ruby/test_assignment.rb: ditto
20377         * test/ruby/test_basicinstructions.rb: ditto.
20379         * test/ruby/test_iterator.rb: ditto.
20381         * test/ruby/test_yield.rb: ditto.
20383         * compile.c (iseq_compile_each): fix debug.
20385 Fri Jun 15 12:22:10 2007  Koichi Sasada  <ko1@atdot.net>
20387         * eval.c (ruby_finalize_1): rb_thread_t#errinfo should be clear with
20388           Qnil.
20390 Fri Jun 15 12:20:11 2007  Koichi Sasada  <ko1@atdot.net>
20392         * cont.c (rb_cont_call): forbid cross fiber continuation call.
20394         * test/ruby/test_fiber.rb: ditto.
20396 Fri Jun 15 12:14:07 2007  Koichi Sasada  <ko1@atdot.net>
20398         * sample/test.rb: fix to show line information whether test succeeds.
20400 Thu Jun 14 17:16:05 2007  Tanaka Akira  <akr@fsij.org>
20402         * eval_load.c (Init_load): delay allocating an array for rb_load_path
20403           to avoid GC problem in very early stage.
20404           (RUBY_GC_STRESS causes GC in such stage.)
20406         * variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in
20407           very early stage.
20409         * thread.c (thread_cleanup_func) [IA64]: clear register stack position.
20410           (thread_start_func_2) [IA64]: record the beginning of register
20411           stack using extra argument.
20412           (rb_gc_save_machine_context) [IA64]: record the end of register
20413           stack.
20415         * gc.c [IA64] (SET_STACK_END): record the end of register stack.
20416           (garbage_collect) [IA64]: use recorded register stack area for
20417           GC marking.
20418           (yarv_machine_stack_mark) [IA64]: GC mark from the register stack
20419           area.
20421         * yarvcore.c [IA64] (rb_gc_register_stack_start): defined.
20422           (Init_VM): store th->self on stack to fix GC problem.
20423           (Init_yarv) [IA64]: initialize the beginning of register stack.
20425         * yarvcore.h (struct rb_thread_struct) [IA64]: new members for
20426           register stack area.
20428         * thread_pthread.ci (thread_start_func_1) [IA64]: call
20429           thread_start_func_2 with the end of register stack.
20431         * cont.c (struct rb_context_struct) [IA64]: new members for register
20432           stack area.
20433           (cont_mark) [IA64]: GC mark from register stack area.
20434           (cont_free) [IA64]: free saved register stack.
20435           (cont_save_machine_stack) [IA64]: record the position and contents
20436           of the register stack.
20437           (cont_capture): store cont->self on stack to fix GC problem.
20438           (cont_restore_1) [IA64]: restore the register stack.
20439           [IA64] (register_stack_extend): new function.
20440           (cont_restore_0) [IA64]: call register_stack_extend instead of
20441           cont_restore_1.
20443         [ruby-dev:30982]
20445 Thu Jun 14 17:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20447         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser): handle more
20448           extensions.  [ruby-dev:30972]
20450 Thu Jun 14 14:40:42 2007  Tanaka Akira  <akr@fsij.org>
20452         * lib/securerandom.rb: document updated.
20453           suggested by NaHi.  [ruby-dev:30966]
20455 Wed Jun 13 22:42:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20457         * gc.c (garbage_collect): update IA64 register stack code.
20458           [ruby-dev:30971]
20460 Wed Jun 13 06:05:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20462         * configure.in (darwin): prohibit loading extension libraries to
20463           miniruby.
20465 Tue Jun 12 21:50:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20467         * parse.y (call_args): no allow splat after assocs.  takes
20468           consistency over compatibility.
20470         * parse.y (call_args2): ditto
20472 Tue Jun 12 14:53:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20474         * lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
20475           use it.  [ruby-core:10909]
20477         * lib/mkmf.rb (find_header): use header names in the message.
20479 Sun Jun 10 18:37:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20481         * ext/probeprofiler/probeprofiler.c: clean warnings.
20483 Sun Jun 10 18:32:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20485         * missing/isinf.c, missing/dup2.c, missing/strtod.c, missing/x68.c,
20486           missing/alloca.c: use "ruby/config.h".
20488 Sun Jun 10 17:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20490         * instruby.rb (install_recursive): should check parent directories of
20491           the destination.  [ruby-dev:30947]
20493 Sun Jun 10 16:59:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20495         * parse.y (do_block, brace_block): fix line numbers.  [ruby-dev:30831]
20497 Sun Jun 10 16:57:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20499         * instruby.rb (install_recursive): add :glob option rather than
20500           using FNM_DOTMACH.
20502         * instruby.rb (ext-comm): make header directory first.
20504 Sun Jun 10 16:10:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20506         * test/ruby/test_beginendblock.rb: typo.
20508 Sun Jun 10 16:07:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20510         * instruby.rb (install_recursive): skip .svn directories.
20512 Sun Jun 10 15:44:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20514         * win32/Makefile.sub (config.status): rubyhdrdir was missing.
20516 Sun Jun 10 15:26:36 2007  Tanaka Akira  <akr@fsij.org>
20518         * Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
20520 Sun Jun 10 15:11:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20522         * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
20524         * ext/extmk.rb: prepend also topdir to mflags at last.
20526 Sun Jun 10 13:47:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20528         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
20529           get rid of invoking shell.  [ruby-dev:30942]
20531 Sun Jun 10 12:56:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20533         * include/ruby: moved public headers.
20535         * instruby.rb (install_recursive): skip backup files.
20537         * instruby.rb (ext-comm): install only current platform headers.
20539 Sun Jun 10 10:42:04 2007  Tanaka Akira  <akr@fsij.org>
20541         * lib/securerandom.rb: renamed from lib/secrand.rb.
20542           suggested by NaHi.  [ruby-dev:30934]
20544 Sat Jun  9 06:40:05 2007  Tanaka Akira  <akr@fsij.org>
20546         * lib/secrand.rb: rename SecRand() to SecRand.random_number.
20547           suggested by NaHi.  [ruby-dev:30934]
20549 Fri Jun  8 16:34:20 2007  Tanaka Akira  <akr@fsij.org>
20551         * ext/zlib/zlib.c (gzfile_s_open): use FilePathValue to support
20552           to_path.
20554 Fri Jun  8 16:11:00 2007  Koichi Sasada  <ko1@atdot.net>
20556         * eval_jump.h: th->errinfo should clear with nil.
20558 Fri Jun  8 14:53:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20560         * parse.y (call_args): allow splat argument after unpacked
20561           assocs like 1.8 does.
20563         * parse.y (call_args): ditto.
20565 Fri Jun  8 14:26:18 2007  Tanaka Akira  <akr@fsij.org>
20567         * lib/secrand.rb: new file for secure random interface.
20569         * lib/cgi/session.rb: use secrand for generating cookies.
20571 Fri Jun  8 12:44:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20573         * {win32,wince}/Makefile.sub: add lex.c rule.
20575 Fri Jun  8 11:54:18 2007  Tanaka Akira  <akr@fsij.org>
20577         * lex.c.blt: moved from lex.c.
20579         * Makefile.in: use lex.c.blt if gperf is not available.
20580           [ruby-list:8212], [ruby-list:8214], [ruby-list:24667],
20581           [ruby-talk:120857], [ruby-dev:28102]
20583 Thu Jun  7 21:38:39 2007  Koichi Sasada  <ko1@atdot.net>
20585         * thread.c (rb_thread_execute_interrupts): invoke ensure when
20586           main thread exits.
20588 Thu Jun  7 19:02:48 2007  Tanaka Akira  <akr@fsij.org>
20590         * lib/pp.rb: call original "method" method instead of redefined one.
20592 Thu Jun  7 17:20:57 2007  Koichi Sasada  <ko1@atdot.net>
20594         * iseq.c (prepare_iseq_build): freeze filename and name string.
20596         * variable.c: freeze class name string.
20598 Thu Jun  7 12:48:33 2007  Koichi Sasada  <ko1@atdot.net>
20600         * cont.c (cont_restore_1): fix to check root fiber [ruby-dev:30911].
20602         * test/ruby/test_fiber.rb: add a test.
20604 Thu Jun  7 07:24:36 2007  NARUSE, Yui  <naruse@ruby-lang.org>
20606         * lib/json/common.rb: Ponder offering parse! method.
20608         * lib/json/editor.rb: be a bit more robust while loading data.
20610         * ext/json/ext/{generator,parser}/extconf.rb:
20611           add a have_header directive for st.h
20613         * test/json: fix some tests.
20615 Thu Jun  7 03:29:18 2007  Koichi Sasada  <ko1@atdot.net>
20617         * test_fiber.rb: add a test (Continuation and Fiber).
20619 Thu Jun  7 03:17:24 2007  Koichi Sasada  <ko1@atdot.net>
20621         * cont.c (cont_new): add debug message.
20623         * cont.c (cont_restore_1): copy stack information from fiber.
20625         * cont.c (rb_fiber_s_new): fix to mark created fiber.
20627         * test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
20629         * yarvcore.c (thread_free): fix to skip freeing stack if root fiber
20630           is available.
20632 Thu Jun  7 01:03:20 2007  Koichi Sasada  <ko1@atdot.net>
20634         * eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
20636         * cont.c (rb_fiber_start): remove zero-clearing tag.
20638 Wed Jun  6 20:23:46 2007  Koichi Sasada  <ko1@atdot.net>
20640         * insns.def (invokeblock): fix of splat argument.
20641           (splat same as normal method dispatch)
20643 Wed Jun  6 16:27:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20645         * insns.def: fixed indentation.
20647 Wed Jun  6 10:58:23 2007  Koichi Sasada  <ko1@atdot.net>
20649         * eval.c (rb_yield): fix to check Qundef.
20651 Wed Jun  6 10:57:45 2007  Koichi Sasada  <ko1@atdot.net>
20653         * test/ruby/test_continuation.rb: add a test for last commit.
20655 Wed Jun  6 10:55:42 2007  Koichi Sasada  <ko1@atdot.net>
20657         * cont.c (rb_cont_call): forbid calling dead fiber with
20658           Continuation#call.
20660 Wed Jun  6 10:50:01 2007  Koichi Sasada  <ko1@atdot.net>
20662         * compile.c (iseq_compile_each): fix around yield arguments
20663           (with NODE_ARGSCAT).
20665 Wed Jun  6 02:50:53 2007  Koichi Sasada  <ko1@atdot.net>
20667         * cont.c (rb_fiber_start): clear th->tag and check error to fix
20668           [ruby-dev:30888] and [ruby-dev:30889].
20670         * eval_intern.h: fix rb_fiber_start() prototype.
20672         * test/ruby/test_fiber.rb: add tests for above.
20674 Wed Jun  6 02:40:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20676         * insnhelper.h, insns.def (DEC_SP): shouldn't use unary minus operator
20677           in pointer operation. some compilers (such as VC++8 x64) cannot deal
20678           it with expected way.
20680 Wed Jun  6 02:19:48 2007  Koichi Sasada  <ko1@atdot.net>
20682         * parse.y (new_yield), compile.c (iseq_compile_each): fix
20683           passing parameter.
20685         * eval.c, eval_jump.h: simplify rb_yield*.
20687         * proc.c (proc_mark): fix to mark proc->block.proc.
20689         * proc.c (Init_Proc): add Proc#lambda?
20691         * test/ruby/test_lambda.rb: add some tests.
20693         * vm.c (invoke_block): fix to check lambda block or not.
20695         * vm.c (th_yield_setup_args): fix to check arguments size
20696           when lambda block.
20698 Tue Jun  5 16:30:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20700         * io.c (rb_f_p): returns arguments to intervene.  [ruby-dev:29736]
20702 Tue Jun  5 14:07:55 2007  Koichi Sasada  <ko1@atdot.net>
20704         * insns.def (invokeblock): check block is created by lambda
20705           or Proc.new.
20707         * vm.c (block_proc_is_lambda): added.
20709 Tue Jun  5 14:47:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20711         * lib/pp.rb (PP::PPMethods::seplist): revert last change to work
20712           around wrapper bug.  [ruby-dev:30840]
20714 Tue Jun  5 14:11:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
20716         * ext/nkf/nkf-utf8/nkf.c (kanji_convert): Fix guess fallback.
20718 Tue Jun  5 13:32:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20720         * compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
20721           pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
20722           thread_pthread.ci, thread_win32.ci: fixed indentation.
20724         * call_cfunc.ci: protoized.
20726         * thread_win32.ci: fixed typo.
20728 Tue Jun  5 13:17:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20730         * call_cfunc.ci, compile.c, dir.c, eval.c, eval_jump.h, numeric.c,
20731           pack.c, re.c, thread.c, thread_win32.ci, vm.c, vm_dump.c: fixed
20732           indentation.
20734 Mon Jun  4 21:15:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
20736         * lib/json.rb, lib/json, ext/json, test/json:
20737           import JSON library.
20739         * ext/nkf: import nkf.c rev:1.124
20740           Support CP10001.
20742 Mon Jun  4 20:52:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20744         * numeric.c (int_round): should not just truncate.
20746 Sat Jun  2 16:48:55 2007  Koichi Sasada  <ko1@atdot.net>
20748         * cont.c (Fiber#pass): rename to Fiber#yield.  Block parameter
20749           of fiber body receive first yield values.
20750           e.g.: Fiber.new{|x| p x}.yield(:ok) #=> :ok
20752         * cont.c: rename rb_context_t#retval to rb_context_t#value.
20754         * test/ruby/test_fiber.rb: ditto.
20756 Sat Jun  2 16:45:21 2007  Koichi Sasada  <ko1@atdot.net>
20758         * proc.c (Init_Proc): remove a line break.
20760 Sat Jun  2 01:27:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20762         * numeric.c (int_round): small optimization to handle bignums.
20764 Fri Jun  1 13:02:35 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20766         * insnhelper.h (INC_SP): shouldn't cast ``x'' to unsigned type because
20767           it might be a negative value.
20769         * insnhelper.h, insns.def: shouldn't use unary minus operator in index
20770           operator. some compilers (such as VC++8 x64) cannot deal it with
20771           expected way.
20773 Fri Jun  1 11:33:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20775         * numeric.c (num_round): should convert self to Float.
20776           [ruby-dev:30860]
20778 Fri Jun  1 02:01:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20780         * numeric.c (flo_round): now takes optional argument to specify
20781           number of digits, like round() in Python/PHP.
20783         * numeric.c (num_round): ditto.
20785 Fri Jun  1 01:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20787         * enum.c (each_with_index_i): should work well with continuation.
20788           a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
20789           [ruby-dev:30846]
20791 Thu May 31 17:27:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20793         * lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
20794           argument unintentionally.  [ruby-talk:253676]
20796 Wed May 30 14:43:00 2007  Koichi Sasada  <ko1@atdot.net>
20798         * cont.c (cont_capture): store all local variables in heap
20799           ([ruby-dev:30832]).
20801         * vm.c (th_stack_to_heap): added.
20803         * test/ruby/test_continuation.rb: add a test for above.
20805         * eval_intern.h (th_get_ruby_level_cfp): fix to clean code.
20807 Wed May 30 13:32:34 2007  Shugo Maeda  <shugo@ruby-lang.org>
20809         * lib/net/imap.rb (ResponseParser#next_token): fixed
20810           error message.
20812         * lib/net/imap.rb (ResponseParser#parse_error): fixed
20813           the condition not to refer @token.symbol unexpectedly.
20814           Thanks, Dick Monahan.
20816 Wed May 30 13:24:33 2007  Shugo Maeda  <shugo@ruby-lang.org>
20818         * lib/net/ftp.rb (Net::FTP#transfercmd): skip 2XX
20819           responses for some FTP servers.
20821 Wed May 30 04:18:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20823         * eval.c (rb_eval_cmd): just return if no exceptions.
20824           [ruby-dev:30820]
20826 Wed May 30 02:14:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20828         * signal.c (interrupt_init): needs to pass nil for Interrupt.
20829           [ruby-core:11038]
20831         * signal.c (trap): fixed segfaults.  [ruby-dev:30830]
20833 Wed May 30 00:50:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20835         * gc.c (rb_source_filename, obj_free): suppress warnings.
20837         * gc.c (garbage_collect, yarv_machine_stack_mark): fixed typo.
20838           http://bugs.debian.org/426267
20840 Wed May 30 00:24:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20842         * parse.y (open_args, arg_ambiguous, parser_warning): should not use
20843           rb_warning in the parser.
20845 Tue May 29 12:31:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20847         * win32/win32.c (rb_w32_opendir): removed duplicated code.
20849 Tue May 29 10:55:24 2007  Koichi Sasada  <ko1@atdot.net>
20851         * cont.c: fix bug around Continuation and Fiber.
20853         * test/ruby/test_continuation.rb: add tests for Continuation.
20855 Tue May 29 10:54:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20857         * win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
20858           numbers.
20860 Mon May 28 10:27:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20862         * cont.c: fixed a function name.
20864 Mon May 28 03:56:44 2007  Koichi Sasada  <ko1@atdot.net>
20866         * cont.c: support Fiber.  Check test/ruby/test_fiber.rb for detail.
20867           Fiber is known as "Micro Thread", "Coroutine", and other terms.
20868           At this time, only Fiber#pass is supported to change context.
20869           I want to know more suitable method name/API for Fiber (... do you
20870           know more suitable class name instead of Fiber?) as "suspend/resume",
20871           "call", "yield", "start/kick/stop/restart", ....
20873         * eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
20875 Sat May 26 00:38:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20877         * eval.c (ruby_exec_internal): do nothing if no code.
20879         * compile.c (rb_iseq_compile): check node if NULL before check
20880           nd_type.  [ruby-talk:252956]
20882 Sat May 26 00:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20884         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
20885           skip tests for exitstatus and termsig on the platforms where
20886           signals not supported.
20888 Fri May 25 16:04:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20890         * yarvcore.c (Init_VM): wrap already initialized structs to use
20891           it directly.
20893 Fri May 25 11:09:47 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20895         * regint.h (include): on some platform, defines.h redefines
20896           SIZE_OF_LONG_LONG so shouldn't re-include config.h after included
20897           defines.h.
20899         * regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
20901 Thu May 24 12:07:27 2007  Koichi Sasada  <ko1@atdot.net>
20903         * cont.c: check across trap violation.
20905         * eval.c, yarvcore.h: ditto.
20907 Thu May 24 11:46:55 2007  Koichi Sasada  <ko1@atdot.net>
20909         * gc.c, yarvcore.c: fix to mark VM structure on startup.
20911         * yarvcore.h: disable USE_CACHED_VALUE.
20913 Thu May 24 01:54:53 2007  Koichi Sasada  <ko1@atdot.net>
20915         * cont.c: support callcc which everyone love.
20916           incomplete. please give me bug reports.
20918         * common.mk, inits.c, thread.c: ditto.
20920         * yarvcore.c: export thread_mark().
20922         * yarvcore.h: disable value cache option.
20924         * eval_intern.h: set th_get_ruby_level_cfp to inline.
20926 Wed May 23 15:39:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20928         * common.mk: add a rule for regsyntax.c.
20930 Wed May 23 10:31:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20932         * oniguruma.h: updated to Oniguruma 5.7.0.
20934         * regsyntax.c, unicode.c: new files along with Oniguruma 5.x.
20936 Wed May 23 06:51:46 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
20938         * lib/cgi.rb (CGI#[]): get rid of exceptions being raised.
20939           [ruby-dev:30740], Thanks Kentaro KAWAMOTO.
20941 Wed May 23 05:49:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20943         * ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
20944           load path to get rid of load pre-installed extensions/libraries.
20945           [ruby-core:11017]
20947 Tue May 22 16:37:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20949         * ruby.c (set_arg0): support RSTRING_LEN on HP-UX.  a patch from
20950           WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>.  [ruby-dev:30806]
20952 Mon May 21 13:40:00 2007  Koichi Sasada  <ko1@atdot.net>
20954         * compile.c, vm_macro.def: support tail call optimization
20955           (on default, this feature is not enabled).
20957         * iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
20958           option.
20960         * sample/test.rb (test_ok): fix to adjust tailcall stack layout.
20962         * insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
20963           add opt_gt, opt_le instructions.
20965 Mon May 21 03:34:06 2007  Minero Aoki  <aamine@loveruby.net>
20967         * lib/net/smtp.rb: CRAM-MD5 authentication did not work.
20968           [ruby-dev:30770]
20970 Sat May 19 10:26:01 2007  Tadayoshi Funaba  <tadf@dotrb.org>
20972         * lib/date/format.rb (Date._parse): detects some OFX dates
20973           (Of course not fully).
20975 Sat May 19 03:08:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20977         * enum.c (enum_inject): minor improvement.  [ruby-dev:30792]
20979         * enum.c (one_i): no needs to iterate once the result became false.
20981         * enum.c (enum_one): fix for an example.
20983         * enum.c (one_iter_i, none_iter_i): DRY.;
20985 Sat May 19 01:07:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20987         * enum.c (enum_inject): it is now can work without block.  you
20988           have to specify two argument method name as the first argument.
20990         * enum.c (Init_Enumerable): reduce is new alias to inject.
20992 Sat May 19 01:05:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20994         * file.c (Init_File): method definition mismatch.
20996 Fri May 18 16:44:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20998         * file.c (Init_File): add to_path method to File objects.
21000 Fri May 18 11:12:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21002         * ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
21003           to DllMain instead of VirtualQuery so that loadpath becomes relative
21004           from the DLL on WinCE too.
21006 Thu May 17 17:03:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21008         * misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
21010 Thu May 17 13:30:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21012         * parse.y (f_arg): remove typo from ripper description.
21014 Thu May 17 13:23:38 2007  Koichi Sasada  <ko1@atdot.net>
21016         * parse.y, compile.c (set_arguments): fix to support in-paren
21017           parameter (ex: def foo((a, b))).
21019 Thu May 17 13:01:52 2007  Koichi Sasada  <ko1@atdot.net>
21021         * iseq.c (ruby_iseq_disasm): fix to show post arg info.
21023 Thu May 17 12:56:52 2007  Koichi Sasada  <ko1@atdot.net>
21025         * debug.c (ruby_debug_node): fix to show node line.
21027 Wed May 16 21:48:44 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
21029         * lib/logger.rb (Logger::Application): remove meaningless logdev
21030           attribute and added logger attribute instead.  [ruby-core:11143]
21031           also added Logger#formatter rdoc comment.
21033 Tue May 15 16:40:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21035         * test/ruby/test_beginendblock.rb (test_endblockwarn): now parser
21036           warnings emit source names and line numbers.
21038 Tue May 15 15:01:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21040         * win32/win32.c (init_stdhandle): stderr should be without buffering,
21041           but mswin32 use buffering when stderr is not connected to tty.
21043 Mon May 14 02:12:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21045         * array.c (rb_ary_zip): a.zip(b,c) should return an array, not
21046           enumerator.
21048         * array.c (rb_ary_zip): a.zip(b,c) should return array with size
21049           truncated to the size of its shortest argument array.
21050           [incompatible]
21052 Mon May 14 01:54:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21054         * array.c (rb_ary_choice): should return nil when the array is
21055           empty.
21057 Sat May 12 18:26:36 2007  Minero Aoki  <aamine@loveruby.net>
21059         * lib/net/http.rb (tokens): forgot to add strip. [ruby-core:11120]
21061         * test/net/http/test_http.rb: test Net::HTTP.post_form.
21063 Fri May 11 15:27:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21065         * iseq.c (iseq_data_to_ary): internal IDs must not be exposed.
21066           [ruby-core:11073]
21068         * parse.y (internal_id_gen): now returns scope local ID instead of
21069           global one.
21071 Thu May 10 15:15:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21073         * test/ruby/test_super.rb: add tests.
21075 Thu May 10 15:14:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21077         * ext/iconv/iconv.c (iconv_s_conv): rdoc fix.
21079 Thu May 10 15:09:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21081         * parse.y (POINTER_P): pointer may be larger than long.
21083         * parse.y (vtable_size, vtable_included, vtable_tblcpy,
21084           vtable_to_tbl): constified.
21086 Thu May 10 10:13:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21088         * thread.c (rb_thread_priority): rdoc fix; the initial value is
21089           inherited from the creating thread.  [ruby-core:10607]
21091 Wed May  9 12:28:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21093         * bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
21094           aliases of quo.  [ruby-dev:30771]
21096 Tue May  8 23:39:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21098         * lib/date/format.rb (Date._parse): revised treatment of
21099           hyphened/separatorless dates.
21101         * lib/date/format.rb: some trivial adjustments.
21103 Tue May  8 20:23:07 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21105         * lib/date/format.rb: reverted.
21107 Tue May  8 19:32:18 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
21109         * lib/rational.rb: fix high-precision Rationals cannot be
21110           converted to Floats. [ruby-Bugs:10502], [ruby-core:11069],
21111           [ruby-dev:30743]
21113 Mon May  7 10:59:55 2007  Kouhei Sutou  <kou@cozmixng.org>
21115         * lib/rss/image.rb, test/rss/test_image.rb: fixed Image module
21116           namespace URI. reported by Dmitry Borodaenko. Thanks.
21118 Sun May  6 18:44:11 2007  Minero Aoki  <aamine@loveruby.net>
21120         * lib/net/http.rb (Net::HTTP.post_form): allow an Array of String
21121           for pairs argument. [ruby-Bugs:10340]
21123         * lib/net/http.rb (Net::HTTP#set_form_data): ditto.
21125 Sun May  6 17:54:36 2007  Minero Aoki  <aamine@loveruby.net>
21127         * lib/net/http.rb: Connection header field might include both of
21128           "keep-alive" token and "close" token. [ruby-core:10818]
21130 Sat May  5 16:26:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21132         * lib/date/format.rb (Format::Bag#method_missing): get rid of
21133           modifying original argument.  [ruby-core:11090]
21135 Thu May  3 22:20:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21137         * configure.in, defines.h, eval_load.c (rb_feature_p, rb_provided,
21138           search_required, rb_require_safe), ext/extmk.rb: Fix
21139           a bug where a statically linked extension cannot be autoloaded.
21140           [ruby-dev:30023] / [ruby-dev:30239]
21142         * thread.c: added an internal class, Barrier.
21144         * thread.c: copied rdocs from fastthread.
21146         * yarvcore.h (struct rb_vm_struct): moved loading_table from global.
21148 Thu May  3 18:10:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21150         * vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
21151           renamed to get rid of name clash.  [ruby-dev:30504]
21153         * yarvcore.c (ruby_thread_init): ditto.
21155 Wed May  2 18:52:58 2007  Koichi Sasada  <ko1@atdot.net>
21157         * vm.c, yarvcore.h, yarvcore.c, insns.def: fix to mark VM stack
21158           in correct range.
21160 Wed May  2 17:13:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21162         * bignum.c (rb_big_quo): now calculate in integer.  [ruby-dev:30753]
21164 Wed May  2 15:14:56 2007  Koichi Sasada  <ko1@atdot.net>
21166         * eval_method.h: add redefine checks ([ruby-dev:30751]).
21168 Wed May  2 11:22:52 2007  Koichi Sasada  <ko1@atdot.net>
21170         * compile.c: use Qtrue instead of 2.
21172         * vm.c, insns.def: support "lambda" calling convention.
21174 Wed May  2 06:46:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21176         * error.c, parse.y, ruby.h (rb_compile_warn, rb_compile_warning): warn
21177           for compilation.  the parser should no longer use rb_warn() and
21178           rb_warning().  [ruby-dev:30121]
21180 Wed May  2 05:45:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21182         * parse.y (assoc): result of assoc_new needs to be an assoc.
21184 Wed May  2 05:40:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21186         * bignum.c (rb_big_pow): improvement by calculating from MSB and using
21187           factorization.  <http://yowaken.dip.jp/tdiary/20070426.html#p01>
21189 Tue May  1 18:45:45 2007  Koichi Sasada  <ko1@atdot.net>
21191         * sample/test.rb: import matzruby's sample/test.rb.
21193 Tue May  1 17:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21195         * array.c (rb_ary_choice): a new method to choose an element
21196           randomly from an array.
21198         * array.c (rb_ary_choice): fixed mistake from RDoc.
21200 Tue May  1 13:59:18 2007  Koichi Sasada  <ko1@atdot.net>
21202         * proc.c (proc_arity): fix an arity bug ([ruby-core:11060]).
21204 Tue May  1 13:12:49 2007  Koichi Sasada  <ko1@atdot.net>
21206         * yarvcore.h, compile.c (set_arguments): support post arguments.
21208         * test/ruby/test_method.rb: add tests for above.
21210         * test/ruby/test_proc.rb: ditto.
21212         * proc.c: fix an arity bug ([ruby-core:11029]).
21214         * vm.c, vm.h, insns.def, vm_dump.h: fix bmethod process.
21216         * vm.c: support block argument on block parameter.
21218 Fri Apr 27 17:05:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21220         * numeric.c (int_pow): bugfix of overflow detection.
21222         * numeric.c (int_pow): rb_big_pow() may return other than Bignum.
21224 Fri Apr 27 01:51:50 2007  Koichi Sasada  <ko1@atdot.net>
21226         * compile.c: support multiple splat (e.g, [a, *b, *c, e, *f]).
21228 Fri Apr 27 00:03:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21230         * bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
21232 Thu Apr 26 17:31:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21234         * bignum.c (rb_big_pow): reduce multiplying for even number.
21236         * numeric.c (int_pow): calculate power in Fixnum as possible.
21237           [ruby-dev:30726]
21239 Thu Apr 26 17:18:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21241         * parse.y: fixes for ripper.
21243         * parse.y (primary): reduced duplicated code.
21245         * parse.y (f_arg_item): should not override by meaningless value.
21247         * parse.y (f_arg, assocs): should not use $$ before assigned.
21249         * parse.y (assoc_list): dispatch assoclist_from_args for assocs as
21250           well as args.
21252         * parse.y (assoc): return assoc if dispatched result is $1.
21254 Thu Apr 26 13:54:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21256         * misc/ruby-style.el: new file.  C/C++ style for ruby source code.
21258 Wed Apr 25 19:49:16 2007  Tanaka Akira  <akr@fsij.org>
21260         * ext/socket/socket.c (unix_send_io, unix_recv_io): use CMSG_DATA to
21261           align file descriptor appropriately.
21263 Wed Apr 25 15:23:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21265         * win32/win32.c (NtInitialize, exit_handler): add initializing and
21266           cleanup of critical section object for select.
21268         * win32/win32.c (do_select): block reentrance.
21270         * win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
21271           workaround because winsock cannot do select at same socket at the
21272           same time by two or more threads.
21274 Wed Apr 25 14:10:47 2007  Koichi Sasada  <ko1@atdot.net>
21276         * ext/probeprofiler/probeprofiler.c: fix function name and
21277           return value.
21279 Wed Apr 25 12:42:40 2007  Koichi Sasada  <ko1@atdot.net>
21281         * yarvcore.h: remove rb_control_frame_t#callee_id.
21283         * vm_macro.def: ditto.
21285         * eval_intern.h (exec_event_hooks): fix to check event flags
21287         * eval_intern.h (EXEC_EVENT_HOOK): fix to re-check event flags.
21289         * ext/probeprofiler : added.  this profiler is sampling based
21290           profiler.
21292         * vm.c: add rb_thread_current_status() API for probeprofiler.
21294         * thread.c (rb_thread_execute_interrupts): add comments.
21296 Wed Apr 25 10:36:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21298         * eval_intern.h (PUSH_TAG): no argument now.
21300         * eval.c, eval_error.h, eval_jump.h, eval_load.c, proc.c, thread.c:
21301           ditto.
21303         * thread.c (alloc_event_hook, rb_thread_remove_event_hook): should
21304           return value.
21306 Tue Apr 24 09:33:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21308         * dir.c (do_stat, do_lstat, do_opendir): should not warn ENOTDIR.
21309           [ruby-talk:248288]
21311 Mon Apr 23 22:14:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21313         * ext/extmk.rb ($ruby): add extout directory to include path.
21314           [ruby-core:11003]
21316         * lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
21317           directory.
21319         * lib/mkmf.rb (init_mkmf): add current directory to default
21320           library path with highest priority.  [ruby-core:10960]
21322         * lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.
21324 Fri Apr 20 16:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21326         * configure.in (LIBPATHFLAG, RPATHFLAG): no needs to be quoted,
21327           it is done by libpathflag in mkmf.rb.
21329 Fri Apr 20 12:27:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21331         * lib/optparse.rb: fix to override conv proc.
21333 Fri Apr 20 12:21:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21335         * eval.c (ruby_cleanup): fixed access to out of bound, and inverted
21336           the order of errinfos.
21338 Fri Apr 20 10:33:23 2007  Koichi Sasada  <ko1@atdot.net>
21340         * eval_intern.h: add prototypes of rb_sourceline() and
21341           rb_sourcefile().
21343 Fri Apr 20 02:37:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21345         * eval.c (ruby_cleanup): re-send signal.  [ruby-dev:30516]
21347         * eval_error.h (error_handle): no message when exiting by signal.
21349         * intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes.
21351         * signal.c (esignal_init): takes a signal number and an optional
21352           signal name.
21354         * signal.c (interrupt_init): pass SIGINT always.
21356         * signal.c (ruby_default_signal): invoke system default signal
21357           handler.
21359         * signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT.
21361         * signal.c (rb_signal_exec, trap): handle SIGTERM.  [ruby-dev:30505]
21363         * thread.c (rb_thread_signal_raise): now takes signal number instead
21364           of signal name.
21366         * thread.c (rb_thread_signal_exit): since rb_make_exception() calls
21367           #exception method, rb_class_new_instance() is not needed here.
21369         * yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process):
21370           exit_code is no longer stored in VM.
21372 Thu Apr 19 18:37:49 2007  Koichi Sasada  <ko1@atdot.net>
21374         * eval.c, node.h, thread.c, yarvcore.[ch], eval_intern.h:
21375           support set_trace_func (incomplete.  id and klass
21376           don't be passed).  And support Thread#set_trace_func
21377           which hook only specified thread and Thread#add_trace_func
21378           which add new trace func instead of replace old one.
21379           C level API was modified.  See thread.c (logic) and
21380           yarvcore.h (data structures).
21382         * vm.c, vm_macro.def: add hook points.
21384         * compile.c, insns.def: fix "trace" instruction.
21386         * iseq.c, vm_macro.h: add compile option "trace_instruction".
21388         * test/ruby/test_settracefunc.rb: hook "c-return" of set_trace_func.
21390 Thu Apr 19 20:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21392         * parse.y (symbol): symbols should be followed by EXPR_ENDARG.
21394         * parse.y (dsym): ditto.
21396         * parse.y (parser_yylex): strings should be followed by
21397           EXPR_ENDARG.
21399         * parse.y (parser_yylex): ditto for numbers.
21401         * parse.y (parser_yylex): EXPR_ENDARG after ']' and '}'.
21403 Thu Apr 19 17:46:36 2007  Koichi Sasada  <ko1@atdot.net>
21405         * lib/optparse.rb: fix to override conv proc.
21407 Wed Apr 18 10:41:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21409         * util.c (ruby_strtod): exponent is radix 10.  [ruby-talk:248272]
21411 Wed Apr 18 02:50:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21413         * yarvcore.c (th_init2): push initial blockptr value for
21414           rb_block_given_p() outside ruby_exec().  [ruby-core:10923]
21416 Wed Apr 18 02:30:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21418         * configure.in (LDFLAGS): prepend -L. instead appending it to
21419           XLDFLAGS.  [ruby-core:10933]
21421         * configure.in (Makefile): remove $U for automake from MISSING.
21422           [ruby-talk:248171]
21424 Mon Apr 16 22:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21426         * ext/pty/expect_sample.rb: avoid symbolic link representation for
21427           expect.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
21428           [ruby-dev:30714]
21430 Mon Apr 16 22:51:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21432         * sample: replace TRUE, FALSE with true, false respectively.
21433           a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
21434           [ruby-dev:30713]
21436 Mon Apr 16 17:08:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21438         * lib/optparse.rb (make_switch): do not clobber converter if pattern
21439           has no convert method.  reported by sheepman in [ruby-dev:30709].
21441 Mon Apr 16 16:49:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21443         * ext/stringio/stringio.c (strio_seek): consistent behavior with
21444           IO#seek.  patch by sheepman in [ruby-dev:30710].
21446 Mon Apr 16 16:34:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21448         * parse.y (parser_yylex): should set command_start after block
21449           starting "do"s and braces.  [ruby-core:10916]
21451 Mon Apr 16 10:51:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21453         * enum.c (enum_each_with_index): each_with_index to forward
21454           arguments to each.  [ruby-core:10921]
21456 Mon Apr 16 10:43:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21458         * time.c (time_arg): should allow to specify 24:00.
21459           [ruby-core:10915]
21461 Sun Apr 15 09:12:54 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21463         * lib/date/format.rb: added some zone names.
21465         * lib/date/format.rb (_parse): now interprets doted numerical
21466           dates as a big endian (except dd.mm.yyyy).
21468 Thu Apr 12 17:13:22 2007  Koichi Sasada  <ko1@atdot.net>
21470         * thread.c (mutex_try_lock): check and set owner thread.
21472         * thread_pthread.ci: fix to show error code in error message.
21474 Thu Apr 12 17:11:54 2007  Koichi Sasada  <ko1@atdot.net>
21476         * eval.c (rb_rescue2): restore cfp ([ruby-dev:30582]).
21478 Thu Apr 12 16:06:48 2007  Koichi Sasada  <ko1@atdot.net>
21480         * eval.c (rb_protect): restore cfp ([ruby-dev:30671]).
21482 Thu Apr 12 16:04:31 2007  Koichi Sasada  <ko1@atdot.net>
21484         * compile.c (iseq_compile_each): check node->nd_state == 1, not !0.
21486 Wed Apr 11 16:35:16 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21488         * win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
21489           need to reject reentrance. removed.
21491         * rubysig.h (RUBY_CRITICAL): follow above changes.
21493         * rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.
21495 Tue Apr 10 17:02:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21497         * win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
21498           before calling original fclose()/close().
21500 Tue Apr 10 16:14:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21502         * thread_win32.ci (w32_wait_events): check whether interrupt_event is
21503           valid handle or not.
21505         * thread_win32.ci (native_thread_destroy): clear interrupt_event when
21506           close it.
21508 Tue Apr 10 15:53:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21510         * thread_pthread.ci (native_thread_create): initialize sleep_cond.
21511           fixed: [ruby-dev:30675]
21513 Mon Apr  9 18:48:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21515         * thread.c (do_select): ubf_select() is not necessary. interrupt is
21516           checked in the loop.
21518 Mon Apr  9 18:27:26 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21520         * thread.c (do_select): use ubf_select() as UBF on windows.
21522         * win32/win32.c (do_select): shouldn't call catch_interrupt() here.
21523           fixed: [ruby-dev:30674], reported by wanabe.
21525 Mon Apr  9 09:24:32 2007  Shugo Maeda  <shugo@ruby-lang.org>
21527         * lib/net/imap.rb (disconnect): call shutdown for
21528           SSLSocket. Thanks, Technorama Ltd.
21530 Sun Apr  8 13:28:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21532         * compile.c (defined_expr): test arguments of NODE_CALL and so
21533           on as well as NODE_ATTRASGN.  [ruby-core:10886]
21535 Fri Apr  6 10:56:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21537         * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_get_group): get rid of
21538           warning. we are aware of it.
21540 Fri Apr  6 04:00:24 2007  Technorama Ltd.  <oss-ruby@technorama.net>
21542         * ext/openssl/ossl_{bn,x509{attr,cert,name,store}}.c:
21543           Add documentation.
21545 Thu Apr  5 17:59:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21547         * compile.c (defined_expr): support for assignment.
21548           [ruby-core:10867]
21550         * compile.h (ADD_CATCH_ENTRY): removed temporary variable.
21552 Thu Apr  5 15:13:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21554         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_alloc): should
21555           return value.
21557 Thu Apr  5 14:58:49 2007  Technorama Ltd. <oss-ruby@technorama.net>
21559         * ext/openssl/ossl_pkcs5.c: New module.
21561         * ext/openssl/ossl_{cipher,digest,pkcs7,pkcs12}.c:
21562           Remove redundant module namespace.
21564         * ext/openssl/lib/openssl/{cipher,digest}.rb
21565           Add backwards compatible classes for rearranged classes.
21567         * ext/openssl/ossl_{pkcs7,pkcs12}.c: Add documentation.
21569 Thu Apr  5 00:42:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21571         * error.c (rb_notimplement), io.c (pipe_open): removed definite
21572           articles and UNIX manual section from messages.  [ruby-dev:30690]
21574 Wed Apr  4 17:09:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21576         * io.c (pipe_open): refined the message of NotImplementedError.
21577           [ruby-dev:30685]
21579 Wed Apr  4 12:29:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21581         * error.c (rb_notimplement): should show the name of this func,
21582           not callee.
21584 Wed Apr  4 10:18:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21586         * io.c (popen_exec): should not close close-on-exec FDs.
21587           [ruby-dev:30679]
21589         * io.c (pipe_open): raise NotImplementedError for command "-" on
21590           platforms where fork(2) is not available.  [ruby-dev:30681]
21592 Tue Apr  4 04:17:18 2007  Technorama Ltd. <oss-ruby@technorama.net>
21594         * ext/openssl/ossl_ssl.c: Add documentation.
21596 Tue Apr  3 16:22:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21598         * ext/openssl/extconf.rb: check for functions added in 1.9.
21600         * ext/openssl/ruby_missing.h: check per features instead by
21601           checking version code.  [ruby-core:10845]
21603 Tue Apr  3 16:02:44 2007  Technorama Ltd. <oss-ruby@technorama.net>
21605         * ext/openssl/ossl_bn.c: More documentation.
21607         * ext/openssl/lib/ossl_{pkey,pkey_ec}.[ch]: Add elliptic curves.
21609 Tue Apr  3 15:50:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21611         * ext/socket/socket.c (s_recv, s_recvfrom): some systems (such as
21612           windows) doesn't set fromlen if the socket is connection-oriented.
21613           reported by Bram Whillock in [ruby-core:10512] [ruby-Bugs#9061]
21615 Tue Apr  3 09:36:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21617         * ext/openssl/ruby_missing.h: need to include version.h to check
21618           RUBY_VERSION_CODE.
21620 Mon Apr  3 07:10:12 2007  Technorama Ltd. <oss-ruby@technorama.net>
21622         * ext/openssl/ossl_{ssl.[ch],ssl_session.c},
21623           ext/openssl/lib/openssl/lib/openssl/ssl.rb:
21624           New SSL::Session class.  Add session cb's, getter/setters,
21625           config, and statistics methods.
21627 Mon Apr  3 04:00:23 2007  Technorama Ltd. <oss-ruby@technorama.net>
21629         * ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
21631         * ext/openssl/ossl_hmac.c Add reset method.
21633         * ext/openssl/ossl_cipher.c (Cipher#update) Take additional
21634           buffer argument.
21636         * ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h}
21637           compatibility with 1.8.
21639 Mon Apr  2 21:55:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21641         * insns.def (throw), thread.c, yarvcore.h (throwed_errinfo): fixed
21642           typo.
21644 Fri Mar 30 11:46:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21646         * win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
21647           wanabe [ruby-dev:30672]
21649         * win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
21650           instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]
21652 Fri Mar 30 02:29:04 2007  Technorama  <oss-ruby@technorama.net>
21654         * ext/openssl/ossl_{bn,cipher,digest,hmac,rand,pkey_{dh,dsa,rsa}}.c:
21655           Add Documentation for various methods.
21657         * ext/openssl/lib/openssl/cipher.rb: Ditto
21659         * ext/openssl/ossl_bn.c: add lshift! and rshift! methods.
21661         * ext/openssl/ossl_digest.c: GetDigestPtr() also accept a string.
21663 Fri Mar 23 11:28:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21665         * win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
21666           rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
21667           rb_w32_get_environ): use strlcpy() and strlcat().
21669         * win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().
21671         * win32/win32.c (rb_w32_closedir): check NULL before free pointers.
21673 Fri Mar 23 00:24:52 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
21675         * lib/shell: commit miss(support for ruby 1.9(YARV) thread model).
21677 Thu Mar 22 13:32:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21679         * win32/Makefile.sub (LIBS): remove an unnecessary library.
21681 Thu Mar 22 10:27:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21683         * test/ruby/test_bignum.rb (test_to_s): add tests for Bignum#to_s.
21685 Wed Mar 21 20:38:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21687         * marshal.c (w_short, w_long, w_object): get rid of VC++ warnings.
21689 Wed Mar 21 20:05:07 2007  Koichi Sasada  <ko1@atdot.net>
21691         * compile.c, parse.y, eval.c, intern.h, iseq.c, lex.c, node.h,
21692           proc.c, vm.c, vm_macro.def, vm_macro.def, yarvcore.c, yarvcore.h,
21693           debug.c, debug.h: merge half-baked-1.9 changes.  The biggest change
21694           is to change node structure around NODE_SCOPE, NODE_ARGS.  Every
21695           scope (method/class/block) has own NODE_SCOPE node and NODE_ARGS
21696           represents more details of arguments information.  I'll write a
21697           document about detail of node structure.
21699 Wed Mar 21 17:04:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21701         * bignum.c (rb_big2str0): round up for the most significant digit.
21702           [ruby-core:10686]
21704 Tue Mar 21 08:20:00 2007  Nathaniel Talbott  <ntalbott@ruby-lang.org>
21706         * test/testunit/collector/test_dir.rb: Fixed test/unit tests that
21707           were breaking due to Module#public_instance_methods now
21708           returning a Symbol instead of a String.
21710         * test/testunit/collector/test_objectspace.rb: Ditto.
21712 Tue Mar 20 22:54:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21714         * marshal.c (w_extended): erroneous check condition when dump
21715           method is defined.  [ruby-core:10646]
21717 Tue Mar 20 21:36:47 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
21719         * lib/shell.rb, lib/shell: support for ruby 1.9(YARV) thread model.
21721 Tue Mar 20 16:36:08 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
21723         * distruby.rb: Add zip generation.
21725 Tue Mar 20 16:20:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21727         * eval.c (rb_f_callee_name): add __method__ and __callee__ again.
21728           __callee__ need to rework to adopt YARV.  [ruby-core:10671]
21730 Tue Mar 20 11:09:00 2007  Akinori MUSHA  <knu@iDaemons.org>
21732         * lib/set.rb: Revise rdoc.
21734         * lib/set.rb (Set#freeze, Set#taint, Set#untaint): Implement
21735           Set#freeze, Set#taint, and Set#untaint; requested by: Dan
21736           Hutchings <dan AT moltoagitato.com> in [ruby-bugs:PR#9359].
21738 Tue Mar 20 09:13:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21740         * process.c (rb_fork): flush stdouts always before fork(2).
21741           fixed: [ruby-dev:30612]
21743 Tue Mar 20 01:38:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21745         * thread.c (thread_start_func_2): store the result of first_func
21746           as well as first_proc.
21748         * thread.c (thread_create_core): block is not used if first_func
21749           is given.
21751 Mon Mar 19 16:58:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21753         * missing/{strlcat,strlcpy}.c, missing.h: new functions.
21755         * LEGAL: add copyright notice about above files.
21757         * configure.in: check whether strlcat and strlcpy are exist or not.
21759         * {bcc32,win32,wince}/Makefile.sub: use above files.
21761 Mon Mar 19 14:12:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21763         * lib/matrix.rb (Matrix::inverse_from): adding partial pivoting to
21764           the Gauss-Jordan algorithm, making it stable.  a patch from
21765           Peter Vanbroekhoven.  [ruby-core:10641]
21767 Mon Mar 19 12:13:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21769         * regparse.c, etc.: K&R to ANSI code cleanup patch from Stefan
21770           Huehner <stefan at huehner.org>.  [ruby-core:10543]
21772 Mon Mar 19 11:27:13 2007  Minero Aoki  <aamine@loveruby.net>
21774         * lib/net/protocol.rb (rbuf_read): extend buffer size for speed.
21776 Sun Mar 18 08:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21778         * win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
21779           rb_w32_closedir): get rid of possible buffer-overflows.
21781 Sat Mar 17 19:10:39 2007  Kouhei Sutou  <kou@cozmixng.org>
21783         * lib/rss, test/rss:
21784         - supported Atom.
21785         - bumped version 0.1.6 to 0.1.7.
21786         * sample/rss/convert.rb: added new sample.
21788 Fri Mar 16 22:32:20 2007  Minero Aoki  <aamine@loveruby.net>
21790         * lib/net/pop.rb: change default verification mode from
21791           VERIFY_PEER to VERIFY_NONE because most POPS server does not have
21792           true certification.
21794 Fri Mar 16 22:19:24 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
21796         * ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
21797           a little bit supporting ActiveX control. [ruby-talk:241188]
21799 Fri Mar 16 22:16:58 2007  Minero Aoki  <aamine@loveruby.net>
21801         * lib/net/http.rb: merge Ruby-SSPI patch contributed by Justin
21802           Bailey.
21804         * ext/Win32API/lib/win32/sspi.rb: new file.
21806 Wed Mar 14 12:30:00 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
21808         * ext/bigdecimal/bigdecimal.c: BigDecimal("-.31") is now
21809           treated as ("-0.31") not as ("0.31").
21811 Tue Mar 13 19:04:30 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
21813         * lib/sync.rb: support for ruby 1.9(YARV) thread model.
21815 Tue Mar 13 09:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21817         * common.mk (clear-installed-list): separated from install-prereq.
21819 Tue Mar 13 07:23:20 2007  Shugo Maeda  <shugo@ruby-lang.org>
21821         * lib/monitor.rb (mon_try_enter): call @mon_muetx.try_lock.
21822           Thanks, Keiju ISHITSUKA. [ruby-dev:30507]
21824 Tue Mar 13 02:42:58 2007  Akinori MUSHA  <knu@iDaemons.org>
21826         * lib/cgi.rb (CGI::header): IIS >= 5.0 does not need the nph
21827           assumption any more; submitted by MIYASAKA Masaru <alkaid AT
21828           coral.ocn.ne.jp> in [ruby-dev:30537].
21830 Mon Mar 12 10:53:28 2007  Akinori MUSHA  <knu@iDaemons.org>
21832         * ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
21833           externally defined modules; submitted by Technorama
21834           Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].
21836         * ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.
21838         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.
21840         * ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.
21842         * ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.
21844         * ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.
21846         * ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.
21848         * ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.
21850         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.
21852         * ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.
21854         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.
21856 Sun Mar 11 18:42:01 2007  Akinori MUSHA  <knu@iDaemons.org>
21858         * misc/ruby-mode.el (ruby-block-end-re): Support for the
21859           experimental ';;' terminator had been dropped.
21861 Sun Mar 11 05:45:46 2007  Akinori MUSHA  <knu@iDaemons.org>
21863         * misc/README, misc/rdebug.el: Add rdebug.el, Emacs ruby-debug
21864           interface based on rubydb3x.el; submitted by Martin Nordholts
21865           <enselic AT gmail.com> in [ruby-bugs:PR#9023].
21867 Sat Mar 10 07:20:28 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
21869         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
21870           WIN32OLE_TYPELIB#visible?.
21872         * test/win32ole/test_win32ole_typelib.rb: ditto.
21874 Thu Mar  8 09:17:59 2007  Minero Aoki  <aamine@loveruby.net>
21876         * compile.c: iseq_compile -> rb_iseq_compile.
21878         * iseq.c: ditto.
21880         * intern.h: provide function prototype of Init_jump.
21882         * eval_jump.h (Init_jump): declare function type.
21884         * thread.c: platform-dependent functions should be surrounded by #ifdef.
21886         * iseq.c (iseq_data_to_ary): remove unused variable.
21888         * compile.c (set_arguments): ditto.
21890         * thread.c (set_unblock_function): ditto.
21892         * thread_pthread.ci: reduce printf warning.
21894         * vm_dump.c: ditto.
21896 Tue Mar  6 16:35:04 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
21898         * lib/shell/process-controller.rb: fix thread synchronization problem for [ruby-dev:30477].
21900 Tue Mar  6 11:53:25 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
21902         * ext/tk/sample/irbtkw.rbw: fails to exit process.
21904 Tue Mar  6 10:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21906         * runruby.rb: added --pure (turned on by default) and --debugger
21907           options.
21909 Mon Mar  5 09:19:33 2007  Minero Aoki  <aamine@loveruby.net>
21911         * lib/timeout.rb (Timeout.timeout): should return the block value
21912           always.
21914         * lib/timeout.rb (Timeout.timeout): should yield sec argument
21915           always.
21917         * lib/timeout.rb (Timeout.timeout): fix document.
21919 Mon Mar  5 09:16:40 2007  Minero Aoki  <aamine@loveruby.net>
21921         * lib/net/smtp.rb: support automatic STARTTLS.
21923         * lib/net/smtp.rb: check server advertisement.
21925         * lib/net/smtp.rb: introduce new class SMTP::Response.
21927         * lib/net/smtp.rb (getok): should not use sprintf.
21929         * lib/net/smtp.rb (get_response): ditto.
21931         * lib/net/protocol.rb: reduce syntax warning on 1.9.
21933 Mon Mar  5 07:13:28 2007  Minero Aoki  <aamine@loveruby.net>
21935         * lib/net/smtp.rb: reconstruct SMTPS/STARTTLS interface.  New
21936           interface is incompatible from current 1.9 interface at all.
21938         * lib/net/smtp.rb: All SSL-related class methods are removed; use
21939           instance methods instead.
21941         * lib/net/smtp.rb: rename methods: *ssl -> *tls (with alias
21942           "ssl").
21944         * lib/net/smtp.rb: rename methods: *tls -> *starttls.
21946 Mon Mar  5 01:36:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21948         * parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
21949           indentation broken at YARV merger.
21951 Sun Mar  4 23:41:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21953         * file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
21954           rb_gid_t instead of int.
21956         * file.c (rb_stat_s_utime): fixed a commit miss for the platforms
21957           where utimes() does not exist.
21959         * lib/fileutils.rb (touch): ditto.
21961 Sun Mar  4 14:46:56 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
21963         * util.c (push_element): should return a int value.
21965 Sun Mar  4 01:01:25 2007  Akinori MUSHA  <knu@iDaemons.org>
21967         * lib/set.rb (Set#^, Set#&): Correct documentation.  Those methods
21968           return sets, not arrays; noted by Oliver Frank Wittich <nietz AT
21969           mangabrain.de>.
21971 Sat Mar  3 22:54:33 2007  Minero Aoki  <aamine@loveruby.net>
21973         * lib/fileutils.rb (touch): last #touch change causes error when
21974           :mtime option was not given.
21976 Sat Mar  3 22:51:29 2007  Minero Aoki  <aamine@loveruby.net>
21978         * lib/fileutils.rb (mv): could not move directory between
21979           different file systems. [ruby-dev:30411]
21981 Sat Mar  3 22:37:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21983         * file.c (rb_file_s_utime): allow nil to set the current time.
21985         * lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
21986           options.  fixed: [ruby-talk:219037]
21988 Sat Mar  3 15:52:26 2007  Akinori MUSHA  <knu@iDaemons.org>
21990         * object.c (instance_variable_get): Restore rdoc markups lost in
21991           the last commit.
21993 Fri Mar  2 21:17:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
21995         * ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
21996           ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
21997           ): fix some bugs of WIN32OLE_VARIANT.new when variant type is
21998           VT_ARRAY|VT_BSTR or VT_BYREF.
22000         * ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
22001           WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
22002           is defined as instance method of WIN32OLE_VARIANT.
22004         * test/win32ole/test_win32ole_variant.rb: add some test for
22005           VT_ARRAY, VT_BYREF variant type.
22007 Fri Mar  2 07:58:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22009         * object.c (rb_obj_ivar_set): RDoc updated according to a
22010           suggestion from Brian Candler <B.Candler AT pobox.com>.
22011           [ruby-core:10469]
22013 Thu Mar  1 21:38:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22015         * parse.y (stmt, arg): should not omit lhs of OP_ASGN1 even if
22016           empty.  [ruby-dev:30455]
22018 Thu Mar  1 02:55:25 2007  Akinori MUSHA  <knu@iDaemons.org>
22020         * ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
22021           Digest::Base subclasses, which was unintentionally made
22022           impossible while restructuring Digest classes.
22024 Thu Mar  1 02:05:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22026         * mkconfig.rb (patchlevel): read from version.h.
22028 Wed Feb 28 21:15:00 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22030         * configure.in (ac_cv_func_fcntl): fcntl support for MinGW.
22032         * missing/flock.c: workaround for MinGW.
22034 Wed Feb 28 20:51:32 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22036         * pack.c (pack_unpack): properly ignore non-base64 octets such as
22037           UTF-8 encoded BOMs; submitted by SOUMA Yutaka <holon@radastery.jp>
22038           to fix [ruby-core:10437]
22040 Wed Feb 28 18:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22042         * ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
22043           they are already checked at configure.
22044           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22046 Wed Feb 28 18:23:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22048         * lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
22049           should be the first elements of library paths list.
22050           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22052 Wed Feb 28 10:33:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22054         * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
22055           specific thread model.
22057         * compile.h, regint.h, vm.h, array.c: removed unnecessary #include.
22059 Wed Feb 28 04:03:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22061         * enum.c (take_i): small cosmetic / documentation patch from
22062           Tadashi Saito <shiba AT mail2.accsnet.ne.jp>. [ruby-dev:30446]
22064 Wed Feb 28 01:20:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22066         * test/{dbm,gdbm}/test_{dbm,gdbm}.rb: shouldn't use host_os. use
22067           target_os instead. reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22069 Wed Feb 28 00:08:11 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
22071         * mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
22073         * common.mk: new target dist
22075         * distruby.rb: new file
22077 Tue Feb 27 22:18:45 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22079         * configure.in (--enable-auto-image-base): avoid the necessity to
22080           rebase the shared libs as much as possible;
22081           submitted by Corinna Vinschen <spam at vinschen.de> in
22082           [ruby-talk:240964].
22084 Tue Feb 27 21:36:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22086         * util.c (__crt0_glob_function): use ruby_glob() instead of rb_globi().
22088 Tue Feb 27 21:33:04 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22090         * configure.in (ac_cv_func_setrlimit): workaround for djgpp.
22092 Tue Feb 27 20:35:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22094         * common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
22096 Tue Feb 27 19:26:31 2007  Akinori MUSHA  <knu@iDaemons.org>
22098         * ext/nkf/nkf.c (rb_str_resize, rb_nkf_kconv, rb_nkf_guess1,
22099           rb_nkf_guess2): Silence warnings regarding char * vs. unsigned
22100           char * mismatch; submitted by Lyle Johnson
22101           <lyle.johnson@gmail.com> in [ruby-core:10416].
22103 Tue Feb 27 19:15:01 2007  Akinori MUSHA  <knu@iDaemons.org>
22105         * lib/base64.rb (Base64::b64encode): Fix documentation; submitted
22106           by David Symonds <dsymonds@gmail.com> in [ruby-core:10432].
22108 Tue Feb 27 18:59:42 2007  Akinori MUSHA  <knu@iDaemons.org>
22110         * ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
22111           regarding char * vs. unsigned char * mismatch; submitted by Lyle
22112           Johnson <lyle.johnson@gmail.com> in [ruby-core:10416].
22114         * ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto.
22116         * ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto.
22118         * ext/digest/digest.c (rb_digest_base_finish,
22119           rb_digest_base_update): Ditto.
22121 Tue Feb 27 18:12:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22123         * enum.c (enum_take): new method.  [ruby-dev:30407]
22125         * enum.c (enum_drop): ditto.
22127 Tue Feb 27 07:47:24 2007  Koichi Sasada  <ko1@atdot.net>
22129         * yarvcore.h, vm.h: rename th_invoke_yield() to th_yield().
22131         * blockinlining.c: ditto.
22133         * eval.c: ditto.
22135         * vm.c, insns.def: rename th_invoke_yield_cfunc()
22136           to th_yield_with_cfunc().
22138         * yarvcore.h, yarvcore.c: rename theYarvVM to ruby_current_vm and
22139           yarvCurrentThread to ruby_current_thread.  remove yarvVMArray.
22141 Tue Feb 27 00:45:23 2007  Minero Aoki  <aamine@loveruby.net>
22143         * test/ruby/test_optimization.rb: restore method before calling
22144           assert_equal.
22146 Mon Feb 26 00:58:39 2007  Koichi Sasada  <ko1@atdot.net>
22148         * yarvcore.h: add rb_thread_t#top_wrapper, top_self.
22150         * eval_load.c (rb_load): support eval in wrapper module
22151           (load(file, true)).
22153         * eval.c: ditto.
22155         * eval_jump.h: ditto.
22157         * iseq.c: ditto.
22159         * vm.c: ditto.
22161         * yarvcore.c: ditto.
22163         * insns.def: add a empty line.
22165 Mon Feb 26 00:54:36 2007  Koichi Sasada  <ko1@atdot.net>
22167         * common.mk: change "gdb" rule.  You can debug miniruby with
22168           $(srcdir)/test.rb on gdb by this rule (type "make gdb").
22169           If you write break points to "breakpoints.gdb" on $srcdir,
22170           gdb runs with this file.
22172 Sun Feb 25 11:46:58 2007  Koichi Sasada  <ko1@atdot.net>
22174         * win32/Makefile.sub: enable -Zi (debug) option.
22176 Sun Feb 25 11:38:40 2007  Koichi Sasada  <ko1@atdot.net>
22178         * ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.
22180         * intern.h: ditto.
22182         * signal.c (posix_signal): remove unused function
22183           posix_nativethread_signal().
22185 Sun Feb 25 11:31:13 2007  Koichi Sasada  <ko1@atdot.net>
22187         * thread.c (rb_thread_run): fix to ANSI style.
22189 Sun Feb 25 11:09:16 2007  Minero Aoki  <aamine@loveruby.net>
22191         * bootstraptest/runner.rb: show source code in error message.
22193 Sun Feb 25 09:39:50 2007  Koichi Sasada  <ko1@atdot.net>
22195         * yarvcore.h:
22196           rename:
22197             rb_iseq_t#file_name -> filename
22198             rb_iseq_t#local_tbl -> local_table
22199           add:
22200             rb_iseq_t#local_table_size
22202         * compile.c: separate local_table_size and local_size
22203           (local variable size)
22205         * blockinlining.c: apply above rename.
22207         * compile.h: ditto.
22209         * eval.c: ditto.
22211         * iseq.c: ditto.
22213         * proc.c: ditto.
22215         * vm.c: ditto.
22217         * vm_dump.c: ditto.
22219 Sun Feb 25 10:27:17 2007  Minero Aoki  <aamine@loveruby.net>
22221         * bootstraptest/runner.rb: add lib/ to load path.
22223 Sat Feb 25 10:16:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22225         * rubyio.h (HAVE_RB_IO_T): macro to tell if rb_io_t is defined.
22227 Sat Feb 24 19:39:16 2007  Minero Aoki  <aamine@loveruby.net>
22229         * common.mk: new target "btest", to run bootstraptests.
22231 Sat Feb 24 19:30:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22233         * file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
22234           renamed from OpenFile.
22236         * ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
22237           ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
22238           ext/readline/readline.c, ext/socket/socket.c: ditto.
22240 Sat Feb 24 19:28:23 2007  Minero Aoki  <aamine@loveruby.net>
22242         * bootstraptest/runner.rb: new option -v,--verbose.
22244 Sat Feb 24 18:55:50 2007  Minero Aoki  <aamine@loveruby.net>
22246         * yarvtest/test_method.rb: removed (merged to bootstraptest).
22248         * yarvtest/test_class.rb: ditto.
22250 Sat Feb 24 18:44:39 2007  Minero Aoki  <aamine@loveruby.net>
22252         * bootstraptest/test_class.rb: new file.
22254         * bootstraptest/test_method.rb: add tests.
22256 Sat Feb 24 18:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22258         * intern.h (rb_thread_blocking_region): add prototype.
22260         * file.c (rb_thread_flock, rb_file_flock): use UBF feature.
22262         * process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
22264         * thread.c (rb_thread_debug): added runtime debugging flag.
22266         * thread.c (BLOCKING_REGION): restore previous UBF.
22268         * thread.c (rb_thread_blocking_region): default UBF to interrupt
22269           in system dependent way by RB_UBF_DFL.
22270           + ubf_select() on posix system
22271           + ubf_handle() on Win32
22272           + none on cygwin
22274         * thread_win32.ci (rb_w32_wait_events_blocking): blocking version.
22276         * win32/win32.c (waitpid): use rb_w32_wait_events_blocking().
22278 Sat Feb 24 17:45:48 2007  Minero Aoki  <aamine@loveruby.net>
22280         * parse.y (f_arg, opt_f_block_arg): ripper should export VALUE.
22282 Sat Feb 24 16:52:55 2007  Minero Aoki  <aamine@loveruby.net>
22284         * bootstraptest/runner.rb: fix syntax error.
22286 Sat Feb 24 16:51:09 2007  Minero Aoki  <aamine@loveruby.net>
22288         * bootstraptest/runner.rb: new option --help.
22290 Sat Feb 24 16:47:33 2007  Minero Aoki  <aamine@loveruby.net>
22292         * bootstraptest: new test suite.
22294         * bootstraptest/runner.rb: new file.
22296         * bootstraptest/test_literal.rb: new file.
22298         * bootstraptest/test_method.rb: new file.
22300 Sat Feb 24 16:29:15 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22302         * win32/win32.c (StartSocket): remove unnecessary code.
22304 Sat Feb 24 16:04:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22306         * parse.y (struct local_vars): remove unused nofree member from
22307           struct.
22309         * parse.y (parser_free): ditto.
22311 Sat Feb 24 15:57:19 2007  Shugo Maeda  <shugo@ruby-lang.org>
22313         * lib/thread.rb (ConditionVariable#broadcast): use Mutex
22314           instead of Thread.exclusive.
22316         * lib/monitor.rb (MonitorMixin#mon_exit): unset @mon_owner
22317           before calling Mutex#unlock.
22319 Sat Feb 24 15:51:45 2007  Minero Aoki  <aamine@loveruby.net>
22321         * parse.y (program): remove useless assignment to reduce warning.
22323 Sat Feb 24 15:41:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22325         * parse.y (lambda): remove unused clause from the rule to stop
22326           warning.
22328 Sat Feb 24 15:41:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
22330         * lib/thread.rb: do not redefine Mutex#synchronize.
22332 Sat Feb 24 15:14:02 2007  Shugo Maeda  <shugo@ruby-lang.org>
22334         * lib/monitor.rb: rewritten using Mutex/ConditionVariable.
22336 Sat Feb 24 13:25:32 2007  Koichi Sasada  <ko1@atdot.net>
22338         * lib/soap/mapping/factory.rb: catch up with spec changes (return
22339           Symbols instead of Strings).
22341         * lib/soap/mapping/mapping.rb: ditto.
22343 Sat Feb 24 10:49:55 2007  Koichi Sasada  <ko1@atdot.net>
22345         * parse.y, node.h, compile.c: change node tree structure.  a purpose
22346           of this change is to unify argument structure of method and block.
22347           this change prohibits duplicate block parameter name.
22348           new argument information:
22349             NODE_ARGS     [m: int, o: NODE_OPT_ARG, ->]
22350             NODE_ARGS_AUX [r: ID, b: ID, ->]
22351             NODE_ARGS_AUX [Pst: id, Plen: int, init: NODE*]
22352           optarg information:
22353             NODE_OPT_ARGS [idx, expr, ->]
22355         * vm_macro.def: ditto.
22357         * gc.c: ditto.
22359         * iseq.c: ditto.
22361         * compile.h: fix debug function name.
22363         * test/ripper/test_scanner_events.rb: |_,_,foo| -> |_1,_2,foo|
22365         * test/ruby/test_lambda.rb: disable test temporarily.
22367 Sat Feb 24 10:46:28 2007  Koichi Sasada  <ko1@atdot.net>
22369         * test/testunit/test_testcase.rb: catch up with current instance
22370           variable spec.
22372 Sat Feb 24 10:32:59 2007  Koichi Sasada  <ko1@atdot.net>
22374         * common.mk: change vm_macro.def rule.
22376 Sat Feb 24 10:38:05 2007  Minero Aoki  <aamine@loveruby.net>
22378         * ext/racc/cparse/cparse.c (cparse_params_mark): remove useless
22379           rb_gc_mark.  Thanks Tomoyuki Chikanaga. [ruby-dev:30405]
22381 Sat Feb 24 07:31:35 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22383         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
22384           WIN32OLE_VARIANT#value=, refactoring.
22386         * test/win32ole/test_win32ole_variant.rb: add some test for
22387           WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.
22389 Fri Feb 23 18:37:55 2007  Minero Aoki  <aamine@loveruby.net>
22391         * test/ruby/test_yield.rb: new test.
22393         * yarvtest/test_yield.rb: removed (moved to test_yield.rb).
22395 Fri Feb 23 18:27:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22397         * thread.c (rb_thread_polling): check interrupts here.
22399         * thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
22400           now receive multiple event handles.
22402         * win32/win32.c (wait_events, rb_w32_main_context): removed.
22404         * thread_win32.ci (rb_w32_wait_events): new function.
22406         * thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
22407           from win32/win32.c to thread_win32.ci, and use w32_wait_events().
22409 Fri Feb 23 18:13:22 2007  Minero Aoki  <aamine@loveruby.net>
22411         * test/ruby/test_optimization.rb: new test (merges test_opts.rb).
22413         * yarvtest/test_opts.rb: removed.
22415 Fri Feb 23 16:59:39 2007  Minero Aoki  <aamine@loveruby.net>
22417         * test/ruby/test_assignment.rb: merge yarvtest/test_massign.
22419         * yarvtest/test_massign.rb: removed (merged to
22420           test_assignment.rb).
22422 Fri Feb 23 15:58:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22424         * signal.c (sighandler): need to re-install sighandler on some
22425           platforms.
22427 Fri Feb 23 15:05:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22429         * win32/win32.c (set_pioinfo_extra): simplified.
22431 Fri Feb 23 14:23:20 2007  Minero Aoki  <aamine@loveruby.net>
22433         * test/ruby/test_literal.rb: new test.
22435 Fri Feb 23 12:40:12 2007  James Edward Gray II  <james@grayproductions.net>
22437         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): Make the
22438           Content-Length parameter optional for responses in
22439           xmlrpc/client.rb; suggested by Daniel Berger
22440           <Daniel.Berger@qwest.com> and approved by the maintainer.
22442         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Add DateTime
22443           support to xmlrpc; approved by the maintainer.
22445 Fri Feb 23 12:24:46 2007  Minero Aoki  <aamine@loveruby.net>
22447         * parse.y (lambda): add ripper event.  This fixes bus error on
22448           "make test-all".
22450         * ext/ripper/extconf.rb: do not stop build.
22452 Fri Feb 23 12:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22454         * parse.y: remove dyna_check_gen() prototype.
22456 Fri Feb 23 11:41:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22458         * parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,
22459           object.c, string.c, variable.c, vm_macro.def: revert private
22460           instance variable feature, which is postponed until next major
22461           release.
22463         * marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to
22464           8th version.
22466 Fri Feb 23 10:53:21 2007  Shugo Maeda  <shugo@ruby-lang.org>
22468         * thread_pthread.ci (native_mutex_lock): do not call
22469           pthread_mutex_trylock().
22471 Fri Feb 23 10:31:16 2007  Minero Aoki  <aamine@loveruby.net>
22473         * dln.c: use dlopen on Mac OS X 10.3 or later.
22475 Fri Feb 23 10:03:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22477         * string.c (rb_str_ord): need not to check string length;  ord
22478           returns a codepoint for the first character in the string.
22480 Wed Feb 21 22:29:45 2007  Akinori MUSHA  <knu@iDaemons.org>
22482         * numeric.c (fix_equal): A bit more optimization.
22484 Wed Feb 21 17:40:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22486         * numeric.c (fix_equal): remove FIX2LONG() to optimize.  suggested
22487           in http://t-a-w.blogspot.com/2007/02/making-ruby-faster.html.
22488           [ruby-talk:240223]
22490         * numeric.c (fix_cmp): ditto.
22492 Wed Feb 21 09:14:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22494         * eval_load.c (rb_require_safe): should restore safe level.
22496 Tue Feb 20 21:19:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22498         * ext/win32ole/win32ole.c (installed_code_page_proc,
22499           ole_variant2val): small refactoring.
22501 Tue Feb 20 15:11:42 2007  Koichi Sasada  <ko1@atdot.net>
22503         * eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
22504           vm.c from eval.c.  change th_call_super() to static function.
22506 Tue Feb 20 15:08:25 2007  Koichi Sasada  <ko1@atdot.net>
22508         * test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
22509           another thread close IO object which current thread is blocking with.
22511 Tue Feb 20 15:03:29 2007  Koichi Sasada  <ko1@atdot.net>
22513         * thread.c (do_select, rb_thread_wait_fd_rw): raise sys error if
22514           errno is not 0 and EBADF.
22516 Mon Feb 19 22:15:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22518         * configure.in (RUBY_REPLACE_TYPE): cache convertible type info.
22520         * intern.h (rb_detach_process): use rb_pid_t instead of pid_t.
22522         * ruby.h (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM, NUM2GIDT):
22523           defaulted to conversion using long.
22525 Mon Feb 19 17:14:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22527         * ext/socket/socket.c (unix_peeraddr): wrong syscall name in error
22528           message for #peeraddr. a patch from Sam Roberts
22529           <sroberts at uniserve.com>.  [ruby-core:10366]
22531 Sun Feb 18 22:56:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22533         * ext/etc/etc.c (etc_getgrgid): missed to replace a macro.
22535 Sun Feb 18 19:33:00 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22537         * lib/date/format.rb: updated based on date2 4.0.3.
22539 Sun Feb 18 13:11:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22541         * configure.in (pid_t, uid_t, gid_t): check if defined.
22543         * intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
22544           rb_{pid,uid,gid}_t instead of plain int.  [ruby-dev:30376]
22546         * ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
22547           NUM2GIDT): moved to configure.in.
22549 Fri Feb 16 21:34:33 2007  Koichi Sasada  <ko1@atdot.net>
22551         * object.c (rb_obj_ivar_set/get/defined): fix to check :@_v/C id.
22553         * test/testunit/test_testcase.rb: fix to use instance_variable_get()
22554           to access @_result.
22556 Fri Feb 16 20:59:10 2007  Koichi Sasada  <ko1@atdot.net>
22558         * intern.h: add a prototype of rb_sym_to_s().
22560 Fri Feb 16 19:24:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22562         * math.c (math_log): update document to mention second optional
22563           argument for logarithm base.
22565 Fri Feb 16 19:19:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22567         * parse.y (mrhs): need to append by arg_append().
22568           [ruby-talk:239385]
22570 Fri Feb 16 11:18:21 2007  Eric Hodel  <drbrain@segment7.net>
22572         * lib/.document: Apply patch for irb, e2mmap and README by Hugh Sasse
22573           <hgs at dmu.ac.uk> from [ruby-core:10135]
22575         * lib/prettyprint.rb: Suppress RDoc for PrettyPrint test suite.
22577 Thu Feb 15 20:48:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22579         * win32/win32.c (set_pioinfo_extra): new function for VC++8 SP1
22580           workaround. [ruby-core:10259]
22582         * win32/win32.c (NtInitialize): call above function.
22584 Thu Feb 15 16:25:54 2007  Akinori MUSHA  <knu@iDaemons.org>
22586         * lib/uri/generic.rb (URI::Generic::userinfo): Considering how
22587           `scheme://user:@...', `scheme://:password@...' and
22588           `scheme://:@...' are parsed, an empty user name or password
22589           should be allowed and represented as it is.
22591 Thu Feb 15 01:52:53 2007  Koichi Sasada  <ko1@atdot.net>
22593         * vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to
22594           ruby_vm_global_state_version.
22596 Thu Feb 15 01:50:26 2007  Koichi Sasada  <ko1@atdot.net>
22598         * test/fileutils/test_fileutils.rb (check_singleton): fix to use
22599           symbol instead of string.
22601         * test/io/nonblock/test_flush.rb: enable tests.
22603         * test/xmlrpc/test_webrick_server.rb: ditto.
22605 Thu Feb 15 01:43:45 2007  Koichi Sasada  <ko1@atdot.net>
22607         * lib/delegate.rb: catch up with class local variable (@_v) spec.
22609         * lib/singleton.rb: ditto.
22611 Wed Feb 14 22:52:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22613         * ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
22614           support VT_I8, VT_UI8.
22616 Wed Feb 14 22:10:21 2007  Koichi Sasada  <ko1@atdot.net>
22618         * configure.in: change stack limit to 2MB from 32MB.
22620         * win32/Makefile.sub: ditto.
22622 Wed Feb 14 21:39:36 2007  Akinori MUSHA  <knu@iDaemons.org>
22624         * ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
22625           autoloads for sha2 classes in favor of handling in
22626           const_missing(), to work around a problem exposed on OS X.
22628 Wed Feb 14 21:19:47 2007  Koichi Sasada  <ko1@atdot.net>
22630         * thread_pthread.ci (native_thread_create): adjust 4KB (page size)
22631           alignment.
22633 Wed Feb 14 21:12:36 2007  Koichi Sasada  <ko1@atdot.net>
22635         * thread_pthread.ci (CHECK_ERR): call rb_bug()
22636           instead of printf() and exit().
22638 Wed Feb 14 16:48:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22640         * lib/date/format.rb (Date::Format::Bag::method_missing): need not
22641           to use instance variables corresponding each method; use Hash
22642           instead.
22644 Wed Feb 14 13:12:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22646         * re.c (reg_operand): allow symbols to be operands for regular
22647           expression matches.
22649         * string.c (Init_String): allow Symbol#===.
22651         * lib/date/format.rb (Date::Format::Bag::to_hash): string
22652           added prefixes.
22654 Wed Feb 14 12:58:38 2007  Koichi Sasada  <ko1@atdot.net>
22656         * thread.c (do_select): fix to iterate select().
22657           on cygwin/mswin32, iterate in unblocking region.
22659         * thread.c (rb_thread_select): don't iterate on this function.
22660           (iterate in do_select).
22662 Wed Feb 14 11:39:18 2007  Koichi Sasada  <ko1@atdot.net>
22664         * thread.c (set_unblock_function): fix function interface.
22666 Wed Feb 14 11:12:02 2007  Koichi Sasada  <ko1@atdot.net>
22668         * eval_load.c, yarvcore.h: use rb_vm_t#loaded_features instead of
22669           rb_features (global variable).
22671         * yarvcore.c: mark rb_vm_t#loaded_features.
22673 Wed Feb 14 08:46:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22675         * compile.c (defined_expr): no longer distinguish ordinary local
22676           variables and in-block local variables in defined? value.
22678 Wed Feb 14 03:14:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22680         * lib/uri/generic.rb (URI::Generic::userinfo): should support
22681           empty password.  [ruby-core:10290]
22683         * lib/uri/generic.rb (URI::Generic::set_password): password can be
22684           cleared by nil.  [ruby-core:10290]
22686 Wed Feb 14 03:10:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22688         * parse.y (struct local_vars): no need to warn out-of-scope
22689           variables; remove dnames member from struct.
22691 Wed Feb 14 03:04:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22693         * parse.y: RVarmap no longer used as yytype; removed.
22695         * parse.y (dyna_push_gen): no longer need return value.
22697         * parse.y (dyna_pop_gen): no longer need argument.
22699         * parse.y (local_push_gen): initialize nofree.
22701 Wed Feb 14 00:30:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22703         * ext/socket/socket.c (init_unixsock): path may contain NUL for
22704           abstract unix sockets.  [ruby-core:10288]
22706 Tue Feb 13 02:21:12 2007  Sam Roberts  <sroberts@uniserve.com>
22708         * io.c (rb_f_syscall): Fix buffer overflow with syscall
22709           arguments.  [ruby-bugs:PR#8541]
22711 Mon Feb 12 13:57:30 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22713         * ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
22715 Mon Feb 12 11:48:52 2007  Kouhei Sutou  <kou@cozmixng.org>
22717         * lib/rss/dublincore.rb, lib/rss/maker/dublincore.rb: dc_rightses
22718           -> dc_rights_list. dc_rightses still exists for backward
22719           compatibility. [ruby-core:8350]
22721         * test/rss/test_maker_dc.rb: added tests for dc_rights_list.
22723 Sun Feb 11 22:40:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22725         * ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
22726           should not return "VARIANT,VARIANT".
22728 Sun Feb 11 22:11:05 2007  Kouhei Sutou  <kou@cozmixng.org>
22730         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#initialize):
22731           kept backward compatibility.
22733 Sun Feb 11 22:10:08 2007  Kouhei Sutou  <kou@cozmixng.org>
22735         * lib/rss/parser.rb (RSS::ListenerMixin#start_else_element): used
22736           const_defined? instead of constants.include?.
22738 Sun Feb 11 18:47:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22740         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
22741           WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.
22743         * test/win32ole/test_win32ole_variant.rb: ditto.
22745         * ext/win32ole/win32ole.c: small refactoring.
22747 Sun Feb 11 07:42:25 2007  Akinori MUSHA  <knu@iDaemons.org>
22749         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Properly parse
22750           a quoted-string in a Content-Disposition value.
22752 Sat Feb 10 20:21:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22754         * ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
22755           thanks to Mikael Pahmp.
22757         * test/win32ole/test_win32ole.rb: ditto.
22759 Sat Feb 10 17:46:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22761         * common.mk: targets which depend on yarvcore.h now depend on
22762           rubysig.h too.
22764         * yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.
22766 Sat Feb 10 00:13:11 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22768         * ext/tk/lib/tk.rb: fix typo (TkConfigMethod::__confinfo_cmd,
22769           __conv_keyonly_opts).
22771 Fri Feb  9 12:33:40 2007  Koichi Sasada  <ko1@atdot.net>
22773         * thread_win32.ci (w32_show_error_message): renamed to w32_error.
22774           this function do rb_bug().
22776         * thread_win32.ci (w32_set_event, w32_reset_event, w32_close_handle,
22777           w32_resume_thread): added. fix to use these functions instead calling
22778           win32api directly.
22780         * thread_win32.ci (w32_create_thread): create suspend thread
22781           (caller must call w32_resume_thread()).
22783 Fri Feb  9 11:03:40 2007  Koichi Sasada  <ko1@atdot.net>
22785         * test/ruby/test_readpartial.rb: tests are working on mswin32/cygwin.
22787 Fri Feb  9 05:08:17 2007  Koichi Sasada  <ko1@atdot.net>
22789         * thread.c, thread_pthread.ci, thread_win32.ci (thread_start_func_1):
22790           move cleanup function to thread_start_func_2().
22792         * thread.c, thread_pthread.ci, thread_win32.ci:
22793           add more destruct functions.
22794           (native_thread_destroy() and native_mutex_destroy())
22796         * thread_pthread.ci, thread_pthread.h: make native_mutex_* functions
22797           (check error, etc), it's not macro any more.
22799         * thread_win32.ci (thread_start_func_1): store some values before
22800           running thread (to release these after running thread).
22802         * thread_win32.ci (native_thread_create): fix spaces.
22804 Thu Feb  8 22:44:04 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22806         * ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
22807           ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
22808           1st argument is empty array, and when 2nd argument is
22809           VT_ARRAY|VT_BYREF.
22811         * test/win32ole/test_win32ole_variant.rb: ditto.
22813 Thu Feb  8 22:39:09 2007  Koichi Sasada  <ko1@atdot.net>
22815         * yarvtest/yarvtest.rb: check target command names.
22817 Thu Feb  8 22:31:45 2007  Koichi Sasada  <ko1@atdot.net>
22819         * test/ruby/test_clone.rb: fix to current spec
22820           (Module should not be occur many times in ancestors).
22822 Thu Feb  8 22:26:14 2007  Koichi Sasada  <ko1@atdot.net>
22824         * test/ruby/test_string.rb: ("foo" == :foo) and ("foo" === :foo)
22825           should be false.
22827         * ChangeLog: fix last messages.
22829 Thu Feb  8 22:24:06 2007  Koichi Sasada  <ko1@atdot.net>
22831         * test/ruby/test_module.rb: fix to use Symbol instead of String.
22833         * test/ruby/test_module.rb: remove space before argument parentheses.
22835 Thu Feb  8 22:02:14 2007  Koichi Sasada  <ko1@atdot.net>
22837         * test/ruby/marshaltestlib.rb: eval(sym) -> eval(sym.to_s)
22839 Thu Feb  8 21:35:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22841         * test/win32ole/test_propertyputref.rb (setup): fix typo.
22843         * test/win32ole/test_win32ole_event.rb: should not use
22844           InternetExplorer.gohome to test.
22846 Thu Feb  8 21:02:07 2007  Koichi Sasada  <ko1@atdot.net>
22848         * thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
22850         * thread.c (rb_thread_run_parallel): rename to
22851           rb_thread_blocking_region().
22853 Thu Feb  8 15:48:44 2007  Koichi Sasada  <ko1@atdot.net>
22855         * yarvcore.h, thread.c: fix to use pthread on cygwin.
22857         * yarvcore.h, thread.c: move GVL_UNLOCK_BEGIN() and GVL_UNLOCK_END()
22858           from yarvcore.h to thread.c.
22860         * thread.c: change GVL_UNLOCK_RANGE() arguments
22861           (adding ubf as 2nd argument).
22863         * thread.c: fix to use polling in select on cygwin and mswin32.
22865         * thread.c, thread_pthread.ci, thread_win32.ci, yarvcore.h:
22866           rename:
22867           * rb_thread_t#interrupt_function -> unblock_function
22868           * rb_interrupt_function_t -> rb_unblock_function
22869           * some interrupt function name -> ubf_*
22870           * yarv_* -> *
22872 Thu Feb  8 16:08:02 2007  Koichi Sasada  <ko1@atdot.net>
22874         * common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
22876         * common.mk ($(INSNS) rule): remove $(PROGRAM) first.
22878 Thu Feb  8 15:43:05 2007  Koichi Sasada  <ko1@atdot.net>
22880         * process.c: fix to use rb_status_line_set/get/clear().
22882         * eval_intern.h: fix line break.
22884 Thu Feb  8 15:00:14 2007  Koichi Sasada  <ko1@atdot.net>
22886         * blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
22887           eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
22888           thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
22889           vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
22890           fix typo (rb_thead_t -> rb_thread_t).
22892         * eval_intern.h: remove unused definitions.
22894         * common.mk: fix around vm_opts.h path
22895           and remove harmful argument passed to insns2vm.rb.
22897 Thu Feb  8 03:11:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22899         * lib/cgi.rb (CGI::unescapeHTML): invalid decoding for single
22900           unescaped ampersand.  a patch from Tietew
22901           <tietew+ruby-dev at tietew.net> in [ruby-dev:30292].
22902           fixed: [ruby-dev:30289]
22904 Wed Feb  7 23:25:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22906         * eval.c (specific_eval): suppress warning.
22908         * thread_win32.h: undefine _WIN32 on cygwin.  [ruby-dev:30303]
22910 Wed Feb  7 22:41:34 2007  Koichi Sasada  <ko1@atdot.net>
22912         * eval_intern.h: remove UNSUPPORTED() macro.
22914         * thread.c: fix to define Continuation methods
22915           (they only do rb_notimplement()).
22917 Wed Feb  7 22:33:58 2007  Koichi Sasada  <ko1@atdot.net>
22919         * eval_intern.h, yarvcore.h: remove unused macro definition.
22921 Wed Feb  7 22:30:28 2007  Koichi Sasada  <ko1@atdot.net>
22923         * eval.c: fixed to use ANSI function style.
22925 Wed Feb  7 09:35:32 2007  Koichi Sasada  <ko1@atdot.net>
22927         * this commit is a result of refactoring. only renaming functions,
22928           moving definitions place, add/remove prototypes, deleting
22929           unused variables and removing yarv.h.
22930           This commit doesn't change any behavior of ruby/vm.
22932         * yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
22934         * error.c, eval_intern.h: include yarvcore.h instead yarv.h
22936         * rename some functions:
22937           * debug.[ch]: debug_*() -> ruby_debug_*()
22938           * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
22939           * iseq.c: node_name() -> ruby_node_name()
22940           * vm.c: yarv_check_redefinition_opt_method() ->
22941                   rb_vm_check_redefinition_opt_method()
22943         * some refactoring with checking -Wall.
22945         * array.c: remove rb_ary_ptr() (unused) and remove unused
22946           local variables.
22948         * object.c: add a prototype of rb_mod_module_exec().
22950         * eval_intern.h (ruby_cref): set it inline.
22952         * eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
22954         * parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
22956         * process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
22958         * thread.c: remove raw_gets() function (unused) and fix some format
22959           mismatch (format mismatches have remained yet. this is todo).
22961         * thread.c (rb_thread_wait_fd_rw): fix typo on label name.
22963         * thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
22965         * vm.c (rb_svar, rb_backref_get, rb_backref_get,
22966           rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
22968         * vm.c (yarv_init_redefined_flag): add a prototype and rename
22969           yarv_opt_method_table to vm_opt_method_table.
22971         * vm.c (rb_thread_eval): moved from yarvcore.c.
22973         * yarvcore.c: remove unused global variables and fix to use nsdr().
22975 Wed Feb  7 03:39:32 2007  Koichi Sasada  <ko1@atdot.net>
22977         * blockinlining.c, compile.c, compile.h, error.c, eval.c,
22978           eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
22979           eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
22980           process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
22981           vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
22982           yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
22983           * yarv_*_t -> rb_*_t
22984           * yarv_*_struct -> rb_*_struct
22985           * yarv_tag -> rb_vm_tag
22986           * YARV_* -> RUBY_VM_*
22988         * proc.c, vm.c: move functions about env object creation
22989           from proc.c to vm.c.
22991         * proc.c, yarvcore.c: fix rb_cVM initialization place.
22993         * inits.c: change Init_ISeq() order (after Init_VM).
22995         * ruby.h, proc.c: change declaration place of rb_cEnv
22996           from proc.c to ruby.c.
22998 Tue Feb  6 22:06:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
23000         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c}:
23001           imported nkf 2007-01-28.
23002           * Fixed: can't decode MIME encode JIS string.
23003           * Fixed: Fullwidth-halfwidth conversion.
23004           * Support DoCoMo's and Softbank's EMOJI
23005           * Support CP932, CP5022x, eucJP-ms UDC
23006           * Support UTF-32 encoding
23007           * Support beyond BMP
23008           [ruby-dev:29700] [ruby-dev:29922] [ruby-dev:30144]
23010 Tue Feb  6 20:36:19 2007  Kouhei Sutou  <kou@cozmixng.org>
23012         * lib/rss/rss.rb, lib/rss/parser.rb: followed current Ruby
23013           specification. [ruby-dev:30274]
23015 Tue Feb  6 20:29:44 2007  Kouhei Sutou  <kou@cozmixng.org>
23017         * lib/rss/rss.rb, lib/rss/parser.rb: removed needless code for
23018           backward compatibility.
23020 Tue Feb  6 18:43:17 2007  Shugo Maeda  <shugo@ruby-lang.org>
23022         * lib/net/ftp.rb: moved fixes for EPIPE to the correct
23023           place. [ruby-core:10204]
23025 Tue Feb  6 16:38:08 2007  Koichi Sasada  <ko1@atdot.net>
23027         * vm_opts.h: set properties:
23028           svn:keywords:  Author Date Id Revision
23029           svn:eol-style: native
23031 Tue Feb  6 15:55:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23033         * variable.c (ivar_i): need to support class local instance
23034           variables.
23036 Tue Feb  6 15:44:11 2007  Koichi Sasada  <ko1@atdot.net>
23038         * compile.c (iseq_compile_each): fix setting is_local flag.
23040         * yarvtest/test_class.rb: add a test for class local instance variable.
23042 Tue Feb  6 14:15:34 2007  Koichi Sasada  <ko1@atdot.net>
23044         * compile.c, insns.def: remove (get|set)instancevariable2 and add a
23045           operand is_local to (get|set)instancevariable.
23047         * yarvtest/test_class.rb: add a test for class local instance variable.
23049         * parse.y (rb_decompose_ivar2): remove unused variable oid.
23051         * tool/insns2vm.rb: remove needless require.
23053 Tue Feb  6 11:18:41 2007  Shugo Maeda  <shugo@ruby-lang.org>
23055         * lib/net/ftp.rb: check the control connection on EPIPE.
23056           Thanks, Simon Williams. [ruby-core:9547]
23058 Tue Feb  6 11:03:27 2007  Koichi Sasada  <ko1@atdot.net>
23060         * complement last commit.
23062         * common.mk (*.inc): use VPATH.
23064         * vm_opts.h: renamed from vm_opts.h.base.
23066 Tue Feb  6 10:02:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23068         * tool/insns2vm.rb: use vm_opts.h in VPATH.
23070 Tue Feb  6 03:47:58 2007  Koichi Sasada  <ko1@atdot.net>
23072         * proc.c: support Binding#eval.
23074         * yarvtest/test_eval.rb: add a test for above change.
23076 Tue Feb  6 03:13:33 2007  Koichi Sasada  <ko1@atdot.net>
23078         * proc.c: refactoring (remove K&R style, move Binding stuffs from
23079           Init_Proc() to Init_Binding()).
23081 Tue Feb  6 01:07:14 2007  Koichi Sasada  <ko1@atdot.net>
23083         * intern.h: prepare rb_last_status_get() and rb_last_status_set().
23084           Use these functions instead of rb_last_status ([ruby-dev:30264]).
23086         * process.c: define above functions.
23088         * ext/pty/pty.c: use above functions.
23090         * io.c (pipe_finalize): ditto.
23092         * process.c: ditto.
23094 Mon Feb  5 21:26:56 2007  Koichi Sasada  <ko1@atdot.net>
23096         * ruby.h: add a prototype of rb_id2str().
23098 Mon Feb  5 21:06:50 2007  Koichi Sasada  <ko1@atdot.net>
23100         * eval_thread.c, common.mk: remove eval_thread.c.
23102         * yarvcore.c: rename cYarvThread to rb_cThread.
23104         * gc.c: remove YARV_* prefix.
23106         * gc.h: add an include guard and prototype of rb_gc_set_stack_end().
23108         * inits.c: fix to ANSI prototype style and reorder Init_*().
23110         * io.c (pipe_finalize): TODO: comment out last_status.
23112         * process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
23113           rb_last_status and make last_status_get() to access $?.
23115         * yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
23117         * ruby.h: add declarations of rb_cISeq and rb_cVM.
23119         * thread.c: move eval_thread.c codes to thread.c and remove yarv_*
23120           function prefix.
23122         * thread.c (thread_start_func_2): use yarv_thread_t#first_func if
23123           it is not null.
23125         * vm.c: fix copyright year.
23127         * yarvcore.c (Init_vm): rename to Init_VM().
23129 Mon Feb  5 04:09:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23131         * eval.c (rb_frame_callee): check if prev_cfp can be accessible.
23132           a patch from Yoshinori Sano <yoshinori.sano at gmail.com> in
23133           [ruby-dev:30252].  solves [ruby-dev:30200] and [ruby-core:9856].
23135 Sun Feb  4 20:34:41 2007  Kouhei Sutou  <kou@cozmixng.org>
23137         * test/rss/rss-assertions.rb: removed needless code for backward
23138           compatibility.
23140 Sun Feb  4 02:22:59 2007  Akinori MUSHA  <knu@iDaemons.org>
23142         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
23143           print.
23145 Sat Feb  3 23:51:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23147         * parse.y (rb_compose_ivar2): function to create a new ivar2
23148           symbol from a symbol and a class.  back-ported from matzruby.
23150         * parse.y (rb_decompose_ivar2): reverse function of
23151           rb_compose_ivar2().
23153         * marshal.c (w_symbol): support class local instance variables.
23155         * marshal.c (r_object0): ditto.
23157         * compile.c (defined_expr): ditto.
23159         * compile.c (iseq_compile_each): ditto.
23161         * insns.def: add two new instructions: getinstancevariable2 and
23162           setinstancevariable2.
23164 Sat Feb  3 23:21:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23166         * insns.def (setclassvariable): remove unnecessary operand.
23168         * compile.c (iseq_compile_each): ditto.
23170         * common.mk (insns_info.inc): add dependency for insns_info.inc.
23172 Sat Feb  3 14:32:58 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23174         * ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
23175           fix the bug of WIN32OLE_VARIANT.new when variant type is
23176           VT_ARRAY.
23178         * ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.
23180         * test/win32ole/test_win32ole.rb: add some test.
23182         * test/win32ole/test_win32ole_variant.rb: ditto.
23184 Sat Feb  3 03:35:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23186         * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
23188         * common.mk (runruby, benchmark, benchmark-each, tbench): use
23189           PROGRAM for the file to be built.
23191         * proc.c (yarv_proc_alloc): needs return.
23193         * call_cfunc.ci, compile.c, compile.h, debug.h, eval.c,
23194           eval_error.h, eval_jump.h, eval_load.c, eval_thread.c, gc.c,
23195           insnhelper.h, insns.def, iseq.c, main.c, numeric.c, parse.y,
23196           range.c, ruby.h, signal.c, thread.c, thread_win32.ci, vm.c,
23197           vm.h, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
23198           fixed indents and non-C90 comments.
23200         * regenc.h: revert to before YARV.
23202         * lib/mkmf.rb (create_makefile): make object files depend on
23203           extconf.h even if depend file exists.
23205 Fri Feb  2 23:39:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23207         * common.mk (bin): add more dependency.  a patch from Tadashi
23208           Saito <shiba at mail2.accsnet.ne.jp>.  [ruby-dev:30245]
23210 Fri Feb  2 18:44:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23212         * insns.def (setclassvariable): remove warn argument.
23214 Fri Feb  2 18:36:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23216         * common.mk (compile.$(OBJEXT)): add config.h to vm.c and
23217           compile.c.
23219 Fri Feb  2 18:27:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23221         * eval.c: remove duplicated global variables rb_cProc and
23222           rb_cBinding.  [ruby-dev:30242]
23224 Fri Feb  2 00:13:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23226         * ruby.h (SYMBOL_P): make Symbol immediate again for performance.
23228         * string.c: redesign symbol methods.
23230 Thu Feb  1 23:25:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23232         * parse.y (rb_id2str): store Strings for operator symbols.
23233           [ruby-dev:30235]
23235 Thu Feb  1 21:04:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23237         * parse.y (assignable_gen): no need to generate NODE_CVDECL.
23239         * compile.c (iseq_compile_each): no NODE_CVDECL.
23241 Thu Feb  1 20:53:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23243         * vm.c (eval_get_cvar_base): destination for class variable access
23244           is now strictly innermost surrounding class or module.  warned
23245           if accessed from toplevel.
23247         * variable.c (rb_cvar_get): new class variable look-up scheme:
23248           1) look up in the class.  2) if the class is singleton attached
23249           to a class (i.e. metaclass) then start look up in the attached
23250           class and its ancestors. 3) otherwise, look-up in ancestors of
23251           the class.
23253         * eval.c (cvar_cbase): destination for class variable access is
23254           the class/module that holds the method, or cbase outside of
23255           methods.
23257 Thu Feb  1 20:31:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23259         * variable.c (rb_cvar_set): remove warn argument.
23261 Wed Jan 31 14:52:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23263         * test/ruby/test_iterator.rb (TestIterator::test_block_given_within_iterator):
23264           add new test.  [ruby-core:10125]
23266 Tue Jan 30 17:01:21 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23268         * string.c (rb_str_sub_bang): calling rb_str_modify() should be just
23269           before actually modifying the string.
23270           fixed: [ruby-dev:30211] (originally reported by zunda)
23272 Tue Jan 30 13:24:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23274         * numeric.c (int_pred): add Integer#pred corresponding
23275           Integer#succ.  [RCR#5]
23277 Tue Jan 30 12:05:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23279         * mkconfig.rb: autoconf 2.61 support.  [ruby-core:10016]
23281 Mon Jan 29 23:52:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23283         * tool/compile.rb: replace YARVCore by VM class.
23285 Mon Jan 29 17:52:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23287         * lib/date/format.rb (Date::Format::Bag::method_missing): add
23288           prefix to avoid making t class-local instance variable.
23290 Mon Jan 29 21:32:37 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23292         * ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
23293           WIN32OLE_VARIANT#vartype.
23295         * test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
23296           WIN32OLE.locale.
23298         * test/win32ole/test_win32ole_variant.rb: add test for
23299           WIN32OLE_VARIANT#vartype.
23301 Mon Jan 29 14:14:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23303         * tool/parse.rb: replace YARVCore by VM class.
23304           http://d.hatena.ne.jp/ysano2005/20070128
23306 Sun Jan 28 08:41:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23308         * ext/win32ole/win32ole.c: refactoring.
23310 Sat Jan 27 18:36:33 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23312         * ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
23313           WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
23314           when variant type is VT_ARRAY.
23316         * test/win32ole/test_win32ole_variant.rb: add some test.
23318 Fri Jan 26 23:55:56 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23320         * ext/win32ole/win32ole.c: bug fix of WIN32OLE_VARIANT when variant
23321           type is VT_BYREF|VT_VARIANT.
23323         * test/win32ole/test_win32ole_variant_with_ie.rb: ditto.
23325 Fri Jan 26 12:03:39 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23327         * ext/tk/lib/tk.rb (TkConfigMethod#__confinfo_cmd,
23328           __conv_keyonly_optkeys): make them private [ruby-dev:30074].
23330         * ext/tk/lib/tk/txtwin_abst.rb: fix typo [ruby-dev:30073].
23332         * ext/tk/lib/tk/canvas.rb (TkCanvas#scan_dragto): lack of an argument.
23334         * ext/tk/lib/tk/canvas.rb: clarify the including module name
23335           [ruby-dev:30080].
23337         * ext/tk/lib/tk/scrollable.rb: change primary name of modules
23338           [ruby-dev:30080].
23340 Fri Jan 26 07:48:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23342         * enumerator.c (enumerator_init_copy): need to copy internal
23343           structure on clone and dup.  [ruby-dev:30192]
23345 Wed Jan 24 20:34:51 2007  Kouhei Sutou  <kou@cozmixng.org>
23347         * test/ruby/test_iterator.rb: removed a needless workaround.
23349 Wed Jan 24 18:05:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23351         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): fix
23352           regexp font-lock bug.  [ruby-talk:235758]
23354 Tue Jan 23 18:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23356         * lib/cgi.rb (CGI::QueryExtension::read_multipart): use == instead
23357           of ===.  [ruby-dev:30176]
23359 Tue Jan 23 15:39:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23361         * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
23362           setup.mak}: add --with-baseruby configure option.
23364 Mon Jan 22 14:57:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23366         * ext/socket/socket.c: fix errors in socket sample code.
23367           [ruby-core:09992]
23369 Sat Jan 20 21:05:18 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23371         * ext/win32ole/win32ole.c (fole_s_set_code_page): WIN32OLE.codepage=
23372           accepts installed codepage.
23374         * test/win32ole/test_win32ole.rb (test_s_codepage_changed): ditto.
23376 Sat Jan 20 11:18:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23378         * ext/win32ole/win32ole.c (ole_invoke, ole_invoke2, ole_propertyput):
23379           modify WIN32OLERuntimeError message.
23381         * test/win32ole/test_win32ole.rb: ditto.
23383 Sat Jan 20 06:45:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23385         * eval_proc.c (method_receiver): add new method to get the bound
23386           receiver of the method object.  [ruby-talk:234949]
23388         * eval_proc.c (method_name): new method to get the name of a
23389           method.
23391         * eval_proc.c (method_owner): a new method to get the class or
23392           module that defines the method.
23394 Fri Jan 19 17:12:23 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23396         * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_VARIANT::Empty,
23397           WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
23399         * test/win32ole/test_win32ole_variant.rb: ditto.
23401         * test/win32ole/test_nil2vtempty.rb(test_openSchema): ditto.
23403 Fri Jan 19 06:53:38 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23405         * ext/win32ole/win32ole.c (olevariant_free): fix memory leak.
23407         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
23408           WIN32OLE_VARIANT.new accepts nil as first argument for some VARIANT
23409           TYPE.
23411         * test/win32ole/test_win32ole_variant.rb: ditto.
23413 Wed Jan 17 17:31:28 2007  Koichi Sasada  <ko1@atdot.net>
23415         * some refactoring around yarvcore and proc.
23417         * eval_proc.c: renamed to proc.c.
23419         * common.mk: ditto.
23421         * yarvcore.h, yarvcore.c: rename or remove some global variables
23422           removed: mYarvCore, mYarvInsns
23423           renamed: cYarvISeq -> rb_cISeq,
23424                    cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
23425           ::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
23426           And change/remove some functions which added with YARV.
23428         * compile.c: ditto.
23430         * eval.c: ditto.
23432         * iseq.c: ditto.
23434         * vm.c: ditto.
23436         * inits.c: rename Init_yarvcore to Init_vm.
23438         * yarvcore.c, proc.c: move some functions and initialization
23439           from yarvcore.c to proc.c.
23441         * intern.h, proc.c: add global function rb_binding_new(void).
23443 Tue Jan 16 17:49:29 2007  Koichi Sasada  <ko1@atdot.net>
23445         * vm.c (eval_search_super_klass): rename to search_super_klass() and
23446           use it by th_call_super().
23448         * insns.def: ditto.
23450 Tue Jan 16 17:48:11 2007  Koichi Sasada  <ko1@atdot.net>
23452         * common.mk: fix ruby script path.
23454 Tue Jan 16 17:39:44 2007  Koichi Sasada  <ko1@atdot.net>
23456         * vm.c (invoke_block): fix to specify self.
23458 Tue Jan 16 12:12:27 2007  Koichi Sasada  <ko1@atdot.net>
23460         * env.h: removed
23462 Tue Jan 16 12:00:06 2007  Koichi Sasada  <ko1@atdot.net>
23464         * eval_proc.c (rb_proc_new): added.
23466         * string.c (sym_to_proc): supported.
23468         * vm.c (invoke_block, th_invoke_yield, th_invoke_proc): fix to support
23469           rb_proc_new.
23471         * yarvcore.c: add a test code.
23473 Sat Jan 13 23:24:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23475         * ext/win32ole/win32ole.c (ole_free, ole_type_free,
23476           olemethod_free, olevariable_free, oleparam_free,
23477           ole_event_free): fix memory leak.  [ruby-core:09846]
23479 Wed Jan 10 00:10:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23481         * array.c (rb_ary_replace): use ptr and len of orig instead of
23482           shared.  fixed: [ruby-dev:30116]
23484 Tue Jan  9 17:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23486         * file.c (rb_find_file): should not call fpath_check() with NULL.
23487           fixed: [ruby-core:09867]
23489 Tue Jan  9 12:29:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23491         * ext/etc/etc.c (etc_getpwuid, etc_getgrgid): fix to correctly
23492           convert uid/gid from VALUE.
23494         * ext/etc/etc.c (etc_getpwuid): ditto.
23496 Tue Jan  9 03:54:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23498         * string.c (rb_str_upto): String#upto from empty string makes
23499           infinite loop.  [ruby-core:09864]
23501         * string.c (rb_str_upto): use RSTRING_LEN().
23503 Sun Jan  7 18:36:05 2007  Koichi Sasada  <ko1@atdot.net>
23505         * thread.c (rb_thread_stop_timer_thread(), rb_thread_reset_timer_thread(),
23506           rb_thread_start_timer_thread()): added.
23508         * thread_pthread.ci: add a native_thread_join() and move
23509           rb_thread_reset_timer_thread() definition to thread.c.
23511         * thread_win32.ci: ditto
23513         * process.c: fix before_exec(), after_exec() to stop timer thread
23514           (and restart timer thread if exec failed).  and fix to reset
23515           timer thread information when forked child process starts
23516           (to fix [ruby-core:09822]).
23518 Sun Jan  7 18:28:17 2007  Koichi Sasada  <ko1@atdot.net>
23520         * common.mk: add a "compare" rule and fix MATZRUBY variable
23522 Sun Jan  7 17:47:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23524         * test/win32ole/test_win32ole.rb: add test for WIN32OLE#[],
23525           WIN32OLE#[]=.
23527         * ext/win32ole/win32ole.c: update comment for rdoc of
23528           WIN32OLE#[] and WIN32OLE#[]=.
23530 Sun Jan  7 12:13:26 2007  Eric Hodel  <drbrain@segment7.net>
23532         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_class_comment):
23533           Look for class and module comments above rb_define_class and
23534           rb_define_module.  Patch by Daniel Berger <djberg96 at gmail.com>
23536 Sun Jan  7 10:32:12 2007  Eric Hodel  <drbrain@segment7.net>
23538         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
23539           Properly handle escaping of : in comments.
23540         * test/rdoc/parsers/test_parse_c.rb:
23541           Test RDoc::C_Parser#do_classes and Rdoc::C_Parser#find_class_comment.
23543 Sun Jan  7 09:31:18 2007  Tadayoshi Funaba  <tadf@dotrb.org>
23545         * lib/date/format.rb: updated based on date2 4.0.1.
23547 Sat Jan  6 18:46:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23549         * io.c (rb_io_getline_fast, rb_io_getline): increase lineno
23550           when met the delimiter or EOF.  fixed: [ruby-dev:30081]
23552         * io.c (prepare_getline_args, rb_io_getline_1): split
23553           preparation of arguments and reading.  [ruby-dev:30085]
23555 Sat Jan  6 13:48:36 2007  Koichi Sasada  <ko1@atdot.net>
23557         * insns.def (send): fix to optimize send() with Symbol.
23559         * yarvtest/test_method.rb: add another test.
23561 Sat Jan  6 13:43:55 2007  Koichi Sasada  <ko1@atdot.net>
23563         * common.mk: add PHONY dependency to some rules
23565 Sat Jan  6 11:50:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23567         * io.c (argf_read): fix wrong replacement.  [ruby-dev:30070]
23569 Sat Jan  6 09:10:52 2007  Koichi Sasada  <ko1@atdot.net>
23571         * insns.def: support direct method dispatch with "send" or "funcall".
23572           This means that "obj.send :m" skips "BasicObject#send" invocation
23573           (method frame creation, etc) and "obj.m" invokes directly.
23574           If you make backtrace, there are no entries of "send" method.
23576         * compile.c (iseq_specialized_instruction): fix to support above
23578         * eval.c: ditto (remove "static" from rb_f_send and rb_f_funcall
23580         * yarvcore.c: ditto (add a external IDs for compiler)
23582         * yarvcore.h: ditto (add a VM_CALL_SEND_BIT macro)
23584         * yarvtest/test_method.rb: add tests for above changes
23586         * eval.c: remove unused "Kernel#send" declaration
23588 Sat Jan  6 08:29:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23590         * ext/win32ole/win32ole.c (Init_win32ole): add
23591           WIN32OLE::VARIANT::VT_EMPTY, WIN32OLE::VARIANT::VT_NULL
23593         * test/win32ole/test_win32ole_variant_m.rb (test_variant): ditto.
23595 Sat Jan  6 03:49:22 2007  Koichi Sasada  <ko1@atdot.net>
23597         * benchmark/run.rb: change option format
23599         * common.mk: ditto
23601 Fri Jan  5 22:21:08 2007  Koichi Sasada  <ko1@atdot.net>
23603         * benchmark/bm_app_pentomino.rb: use Array#dup instead of
23604           Array#clone
23606         * benchmark/bmx_temp.rb: removed
23608         * benchmark/run.rb: use run.rb instead of run_rite.rb
23610         * common.mk: ditto
23612         * benchmark/run_rite.rb: removed
23614         * common.mk: use $(srcdir)/test.rb to run a test program
23615           with "make run"
23617         * benchmark/bmx_temp.rb: removed and
23618           set svn:ignore (bmx_*.rb) to benchmark/
23620         * test.rb: set svn:ignore
23622 Fri Jan  5 21:03:08 2007  Koichi Sasada  <ko1@atdot.net>
23624         * yarvtest/yarvtest.rb: fix to compare results
23626 Fri Jan  5 20:52:56 2007  Koichi Sasada  <ko1@atdot.net>
23628         * compile.c, compile.h: add ADD_CALL_RECEIVER() macro.
23630         * insns.def (send): use GET_SELF() direct if FCALL.
23632         * eval.c (rb_f_send): check method dispatch type to permit
23633           invoking private method when dispatch type is FCALL/VCALL
23635         * insns.def (opt_ltlt): remove useless statement.
23637         * vm.h: remove unused macros.
23639 Fri Jan  5 20:50:31 2007  Koichi Sasada  <ko1@atdot.net>
23641         * benchmark/run_rite.rb: fix to use readlines instead of
23642           read(...).lines (because 1.8 doesn't have String#lines).
23644 Fri Jan  5 20:28:19 2007  Koichi Sasada  <ko1@atdot.net>
23646         * thread_win32.ci (rb_thread_reset_timer_thread):
23647           added ([ruby-dev:30086]).
23649 Fri Jan  5 20:20:36 2007  Koichi Sasada  <ko1@atdot.net>
23651         * common.mk: add .SUFFIXES rule
23653 Fri Jan  5 15:58:15 2007  Koichi Sasada  <ko1@atdot.net>
23655         * eval_method.h (rb_alias): fix to check search result
23657 Fri Jan  5 13:59:53 2007  Koichi Sasada  <ko1@atdot.net>
23659         * eval_method.h (rb_add_method): fix to check old_node
23661 Fri Jan  5 12:03:07 2007  Koichi Sasada  <ko1@atdot.net>
23663         * compile.c (iseq_compile_each, set_block_local_tbl):
23664           support NODE_LAMBDA (partly).
23666         * sample/test.rb: restore test of NODE_LAMBDA
23668         * test/ruby/test_lambda.rb: ditto
23670 Fri Jan  5 12:31:23 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
23672         * thread_pthread.ci (native_sleep): fix tv_nsec overflow.
23674 Thu Jan  4 20:01:29 2007  Koichi Sasada  <ko1@atdot.net>
23676         * common.mk: rename yarv-test-[all/each] to compare-test[/-each].
23677           purpose of "compare-test" rule is to compare ruby (trunk) and
23678           matzruby (branches/matzruby) binary in miniruby level.  MATZRUBY
23679           parameter means an path to miniruby of matzruby binary.  to do this
23680           comparison test, you should build matzruby branch.
23682         * yarvtest/yarvtest.rb: fix to use command line option as
23683           command names to be compared.
23685         * yarvtest/runner.rb: remove a debug output.
23687 Thu Jan  4 19:12:27 2007  Koichi Sasada  <ko1@atdot.net>
23689         * common.mk: fix to use test.rb script in build directory.
23690           ($(srcdir)/test.rb -> test.rb)
23692 Thu Jan  4 17:28:05 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
23694         * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler#initialize):
23695           Arrays could not be modified in its each block. [ruby-dev:30063]
23697 Thu Jan  4 16:57:14 2007  Koichi Sasada  <ko1@atdot.net>
23699         * yarv_version.h: removed.
23701         * common.mk: remove yarv_version.h from rules
23703         * yarvcore.h (Init_yarvcore): remove useless constants
23705 Thu Jan  4 17:00:06 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
23707         * ext/openssl/ossl_asn1.c (Init_ossl_asn1):
23708           OpenSSL::ASN1::ASN1Data#value,#tag,#tag_class and
23709           OpenSSL::ASN1::BitString#unused_bits should be public.
23711 Thu Jan  4 13:45:10 2007  Koichi Sasada  <ko1@atdot.net>
23713         * thread_pthread.ci: fix last changes around PTHREAD_STACK_MIN.
23715 Thu Jan  4 13:42:47 2007  Koichi Sasada  <ko1@atdot.net>
23717         * common.mk: restore changes.
23719 Thu Jan  4 10:33:54 2007  Koichi Sasada  <ko1@atdot.net>
23721         * thread_pthread.ci: fix to skip using PTHREAD_STACK_MIN.
23722           [ruby-dev:30063]
23724 Thu Jan  4 10:30:11 2007  Koichi Sasada  <ko1@atdot.net>
23726         * benchmark/run_rite.rb (bm): fix to use lines.
23728 Wed Jan  3 18:49:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23730         * io.c (rb_io_getline): lineno update condition was wrong.
23731           [ruby-dev:30065]
23733         * io.c (rb_io_getline_fast): ditto.
23735 Wed Jan  3 11:36:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23737         * io.c (ruby_dup): start GC on ENOMEM as well.
23739 Tue Jan  2 10:29:54 2007  Eric Hodel  <drbrain@segment7.net>
23741         * ext/zlib/zlib.c: fix to compile on YARV
23742           ruby_errinfo -> rb_errinfo()
23744 Mon Jan  1 08:07:06 2007  Koichi Sasada  <ko1@atdot.net>
23746         * ext/tk/tcltklib.c: fix to compile on YARV
23747           ruby_errinfo -> rb_errinfo(),
23748           ruby_safe_level -> rb_safe_level().
23750 Mon Jan  1 07:57:17 2007  Koichi Sasada  <ko1@atdot.net>
23752         * test/drb/test_drbssl.rb: fix to skip drb tests.
23754 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
23756         * lib/rdoc/parsers/c_parser.rb: Make Rdoc accessible.  Update constant
23757           value information.
23759 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
23761         * ext/bigdecimal/bigdecimal.c: Update constant comments to provide
23762           values for RDoc.
23764 Mon Jan  1 06:05:55 2007  Eric Hodel  <drbrain@segment7.net>
23766         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
23767           Allow RDoc comment to give friendly value for rb_define_const.  Patch
23768           by Daniel Berger <djberg96 at gmail.com>, [ruby-patches-7499].
23769         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants): Fix
23770           whitespace handling in constant comments.
23772 Mon Jan  1 00:00:00 2007  Koichi Sasada  <ko1@atdot.net>
23774         * Merge YARV
23776 Sun Dec 31 16:22:48 2006  Eric Hodel  <drbrain@segment7.net>
23778         * array.c: Fix Array#reject.
23780 Sun Dec 31 00:46:25 2006  Tadayoshi Funaba  <tadf@dotrb.org>
23782         * lib/date2.rb: removed.
23784 Sun Dec 31 00:15:13 2006  Tadayoshi Funaba  <tadf@dotrb.org>
23786         * lib/date.rb, lib/date/format.rb: updated based on date2 4.0.
23788 Sat Dec 30 04:38:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23790         * enum.c (enum_each_with_index): reuse array for yield parameters.
23792         * enum.c (enum_min, enum_max): ditto.
23794 Sat Dec 30 04:25:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23796         * enum.c (enum_inject): reuse array for yield parameters.
23798 Sat Dec 30 02:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23800         * ext/stringio/stringio.c (strio_gets): accepts limit argument.
23802         * ext/stringio/stringio.c (strio_readline, strio_each,
23803           strio_readlines): ditto.
23805 Sat Dec 30 02:22:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23807         * ext/stringio/stringio.c (strio_getline): add limit capability.
23809         * io.c (rb_io_gets_m): accepts limit argument.  [ruby-talk:231563]
23811         * io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline):
23812           ditto.
23814         * io.c (appendline): add limit capability.
23816         * io.c (rb_io_getline_fast, rb_io_getline): ditto.
23818         * io.c (rb_io_getline): small refactoring for DRY.
23820         * io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring.
23822 Thu Dec 28 15:27:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23824         * lib/cgi.rb (CGI::Cookie::initialize): use Array() again.
23825           [ruby-core:09781]
23827 Wed Dec 27 20:52:32 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23829         * ext/win32ole/win32ole.c: remove WIN32OLE::PROPERTY class.
23831         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
23833 Wed Dec 27 10:04:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23835         * object.c (rb_Array): returns 1-element array if the argument
23836           does not have to_ary nor to_a.
23838 Tue Dec 26 21:02:14 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23840         * test/win32ole/test_folderitem2_invokeverb.rb: The argument
23841           of Shell.NameSpace should not be file path.
23843 Tue Dec 26 06:13:08 2006  Minero Aoki  <aamine@loveruby.net>
23845         * ext/bigdecimal/bigdecimal.c: remove useless method
23846           BigDecimal#!=. [ruby-dev:30050]
23848 Thu Dec 21 15:37:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23850         * string.c (rb_str_slice_bang): rdoc description bug fixed.
23851           [ruby-core:09754]
23853 Wed Dec 20 12:54:31 2006  Koichi Sasada  <ko1@atdot.net>
23855         * Convert CVS repository to Subversion repository.
23857 Mon Dec 18 08:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23859         * lib/cgi.rb (CGI::Cookie::initialize): Array(string) no longer
23860           works.  [ruby-core:09738]
23862 Fri Dec 15 00:19:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23864         * win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
23866         * lib/mkmf.rb (create_makefile): remove static library before update,
23867           to get rid of sludge of Borland tlib.exe.
23869 Thu Dec 14 18:29:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23871         * ext/readline/readline.c: NetBSD editline does not have
23872           rl_username_completion_function() and rl_completion_matches().
23873           a patch from Takahiro Kambe <taca at back-street.net>.
23874           [ruby-dev:30008]
23876 Thu Dec 14 18:20:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23878         * lib/irb/locale.rb (IRB::Locale::puts): typo fixed.  a patch from
23879           NAKAMURA Usaku <usa@ruby-lang.org>.  [ruby-dev:30012]
23881 Tue Dec 12 23:33:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23883         * lib/optparse.rb (Switch#parse_arg, Switch#conv_arg): splat failures.
23885 Mon Dec 11 11:51:10 2006  Akinori MUSHA  <knu@iDaemons.org>
23887         * ext/digest/sha2/lib/sha2.rb: Moved one level up from under
23888           the superfluous subdirectory digest/.
23890 Mon Dec 11 11:46:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23892         * variable.c (rb_define_const): typo fixed.
23894 Mon Dec 11 09:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23896         * string.c (rb_str_aset): index double decode problem.
23897           [ruby-core:09695]
23899 Sat Dec  9 21:39:24 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23901         * eval.c (ruby_cleanup): keep the exception till after END blocks.
23902           [ruby-core:09675]
23904 Sat Dec  9 11:22:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23906         * lib/irb/locale.rb (IRB::Locale::search_file): use File.exist?
23907           instead of File.exists?.  a patch from Yutaka Kanemoto
23908           <kinpoco at gmail.com> in [ruby-dev:30000].
23910 Fri Dec  8 18:11:18 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
23912         * lib/optparse.rb: cannot put :nodoc: before method definition.
23913           put after it.
23915 Fri Dec  8 17:00:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
23917         * bin/rdoc: use File.exist? instead of File.exists?.
23919 Thu Dec  7 23:50:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23921         * object.c (Init_Object): new method Dir.exist?(path).
23922           [ruby-core:09663]
23924         * file.c (Init_File): remove File.exists?; use File.exist?
23925           instead.
23927         * file.c: rename functions to test_* to rb_file_*_p.
23929 Thu Dec  7 09:29:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23931         * lib/weakref.rb (WeakRef::__setobj__): should support
23932           marshaling.  [ruby-talk:228508]
23934 Wed Dec  6 23:58:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23936         * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
23937           command does not run.  fixed: [ruby-dev:29994]
23939         * win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
23940           [ruby-core:09572]
23942 Tue Dec  5 19:01:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
23944         * configure.in (SITE_DIR): fixed to empty RUBY_SITE_LIB in config.h on
23945           NetBSD.  fixed: [ruby-dev:29358]
23947 Tue Dec  5 18:38:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23949         * lib/matrix.rb (Matrix::rank): use quo method to avoid integer
23950           division problem.  [ruby-core:09644]
23952         * lib/matrix.rb (Matrix::rank_e): ditto.
23954 Tue Dec  5 00:59:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23956         * misc/ruby-mode.el (ruby-parse-partial): need to parse "/=" as
23957           self assignment operator, not regex.  [ruby-talk:227324]
23959 Tue Dec  5 00:19:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23961         * intern.h, object.c, variable.c (rb_mod_constants): added an optional
23962           flag to search ancestors, which is defaulted to true, as well as
23963           const_defined? and const_get.  [ruby-dev:29989]
23965 Mon Dec  4 23:49:28 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23967         * instruby.rb (install_recursive): get rid of warning.
23969         * lib/optparse.rb (CompletingHash#match): get rid of splat failure.
23971 Mon Dec  4 19:16:39 2006  Akinori MUSHA  <knu@iDaemons.org>
23973         * ext/digest/lib/digest/hmac.rb: Do alias << update.
23975 Mon Dec  4 10:48:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
23977         * ruby.h (OFFT2NUM): use LONG2NUM() if sizeof(long) equals to
23978           sizeof(off_t).
23980 Mon Dec  4 08:32:25 2006  Shugo Maeda  <shugo@ruby-lang.org>
23982         * lib/cgi.rb (CGI::QueryExtension::read_multipart): should quote
23983           boundary. JVN#84798830
23985 Sun Dec  3 16:16:53 2006  Akinori MUSHA  <knu@iDaemons.org>
23987         * ext/digest/lib/digest/hmac.rb: Fix problems with update
23988           timing. [Reported by: oss-ruby@technorama.net]
23990 Sat Dec  2 07:33:53 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
23992         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):
23993           HTTPUtils::parse_header() takes a string.  [ruby-dev:29931]
23995         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header):
23996           String does no longer have each method.
23998         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data):
23999           ditto.
24001 Sat Dec  2 07:09:04 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24003         * ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
24004           subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]
24006 Fri Dec  1 16:31:53 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24008         * ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
24009           [ruby-talk: 227408]
24011 Tue Nov 28 17:25:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24013         * array.c (ary_iter_check): should check modification (size
24014           change) during iteration.
24016         * array.c (rb_ary_initialize, rb_ary_shift, rb_ary_unshift,
24017           rb_ary_splice, rb_ary_reverse, rb_ary_sort, rb_ary_delete,
24018           rb_ary_delete_at, rb_ary_reject_bang, rb_ary_replace,
24019           rb_ary_clear, rb_ary_fill, rb_ary_uniq_bang, rb_ary_compact,
24020           rb_ary_shuffle): add iteration check.
24022 Mon Nov 27 09:00:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24024         * string.c (rb_str_ord): typo fixed.  reported from Kornelius
24025           Kalnbach <murphy@rubychan.de>.  [ruby-core:09621]
24027 Sun Nov 26 16:36:46 2006  URABE Shyouhei  <shyouhei@ruby-lang.org>
24029         * version.h: addition of RUBY_PATCHLEVEL.
24030         * version.c: ditto.
24032 Wed Nov 22 16:00:49 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24034         * ext/tk/extconf.rb: support --with-X11/--without-X11 option.
24036         * ext/tk/README.tcltklib: add description about --with-X11-* option
24037           [ruby-talk:225166] and --with-X11/--without-X11 option.
24039         * ext/tk/tkutil/extconf.rb: able to be called manually
24040           [ruby-talk:225950].
24042 Sat Nov 18 23:39:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24044         * object.c (rb_obj_tap): a new method.  [ruby-talk:224013]
24046 Wed Nov 15 23:22:54 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24048         * file.c (test_grpowned, rb_stat_grpowned): should honor
24049           supplementary group IDs.  [ruby-core:09546]
24051 Tue Nov  7 18:35:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24053         * eval.c (formal_assign): need to pack rest arg information in
24054           argc.
24056 Tue Nov  7 18:05:01 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24058         * ext/tk/lib/tk/itemconfig.rb: minor bug fix.
24060 Tue Nov  7 17:52:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24062         * class.c (rb_include_module): revert duplicate inclusion of
24063           modules.  [ruby-dev:29793]
24065 Tue Nov  7 17:18:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24067         * eval.c (method_missing): update old argument adjustment.
24069 Tue Nov  7 16:41:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24071         * eval.c (when_check): need to splat for NODE_ARGSCAT as well.
24072           [ruby-dev:29860]
24074 Mon Nov  6 22:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24076         * string.c (Init_String): remove duplicated definition of
24077           Symbol#to_s.
24079 Mon Nov  6 18:54:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24081         * eval.c (svalue_to_avalue): need to splat but no error.
24083         * eval.c: new macros - YIELD_CALL, YIELD_VALUES.
24085         * eval.c (rb_yield_values): specify YIELD_VALUES.
24087         * eval.c (rb_yield_0): use new macros.
24089         * eval.c (proc_invoke): slightly modified to separate YIELD_CALL
24090           and YIELD_VALUES from YIELD_ARY_ARGS.
24092         * object.c (Init_Object): add nil.to_splat => [].
24094 Mon Nov  6 15:41:55 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24096         * ext/tk/lib/tk/itemconfig.rb: ext/tk/lib/tk/itemconfig.rb: bug
24097           fix on 'itemconfiginfo' method, and modify to make it easy to
24098           override 'itemconfiginfo' method.
24100         * ext/tk/lib/tkextlib/tile/treeview.rb: support Tile 0.7.8.
24102         * ext/tk/lib/tkextlib/version.rb: [new] add Tk::Tkextlib_RELEASE_DATE
24103           to get the information from scripts.
24105         * ext/tk/lib/tk.rb: load 'tkextlib/version.rb', and update RELEASE_DATE
24107         * ext/tk/lib/tkextlib/SUPPORT_STATUS: update.
24109         * ext/tk/sample/editable_listbox.rb: [new] the listbox with editable
24110           items. It's one of the example about usage of Place geometry manager.
24112         * ext/tk/sample/tktextio.rb: improve the functions of TkTextIO class.
24113           Those are required by 'irbtkw.rbw'.
24115         * ext/tk/sample/irbtkw.rbw: [new] IRB on Ruby/Tk. It doesn't need any
24116           real console. IRB works on a text widget without I/O blocking. That
24117           is, thread switching on IRB will work properly, even if on Windows.
24119 Mon Nov  6 00:42:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24121         * parse.y (arg_dup_check): vid may be nameless internal id.
24123 Sun Nov  5 19:52:19 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24125         * lib/date.rb: updated based on date2 3.9.7.
24127 Sat Nov  4 13:09:31 2006  Shugo Maeda  <shugo@ruby-lang.org>
24129         * lib/net/imap.rb: accept NOMODSEQ. [ruby-core:9002]
24131 Fri Nov  3 00:16:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24133         * ext/socket/socket.c (ruby_getnameinfo__aix): AF_INET6 workaround
24134           for AIX.  a patch from Yutaka Kanemoto <kinpoco AT gmail.com>.
24135           [ruby-dev:29744]
24137 Thu Nov  2 14:19:44 2006  Akinori MUSHA  <knu@iDaemons.org>
24139         * lib/set.rb (Set#^): Fix XOR operation against a container that
24140           holds duplicate values. [ruby-core:9372]
24142 Thu Nov  2 10:00:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24144         * string.c: class Symbol is no longer subclass of String. also
24145           covers [ruby-core:09366]
24147 Thu Nov  2 08:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24149         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol should
24150           come earlier than String.
24152         * lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap):
24153           ditto.
24155         * lib/set.rb (TC_Set::test_s_new): strings are no longer
24156           Enumerable
24158         * lib/soap/property.rb (Property::load): ditto.
24160         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto.
24162         * lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto.
24164 Thu Nov  2 09:08:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24166         * array.c: revert lfree shift/unshift boost patch to avoid unknown
24167           memory error.
24169 Wed Nov  1 23:24:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24171         * ruby.h (struct RArray): revert embedding ptr in RVALUE.
24173         * array.c: ditto.
24175 Wed Nov  1 23:01:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24177         * string.c (hash): use Bob Jenkins' hash algorithm.
24179 Wed Nov  1 02:22:31 2006  Akinori MUSHA  <knu@iDaemons.org>
24181         * ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
24182           optimization.
24184         * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
24185           a digest instance with another of a different class.
24187 Wed Nov  1 01:05:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24189         * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
24190           fixed: [ruby-list:42928]
24192 Tue Oct 31 17:03:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24194         * time.c (time_dup): duplicate the class of original time.
24195           [ruby-core:09357]
24197         * lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
24198           should respect subclasses.  [ruby-core:09357]
24200 Tue Oct 31 16:25:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24202         * array.c (ary_shared_first): should address offset after
24203           ary_shared_array().  [ruby-core:09358]
24205 Mon Oct 30 23:40:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24207         * Makefile.in (miniruby): add XLDFLAGS.
24209         * configure.in (aix): use -bE option for miniruby.  [ruby-dev:29698]
24211         * dir.c (glob_helper): get rid of possible memory leak.
24213         * win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
24214           rb_w32_get_environ): not to use GC before initialization.
24216 Mon Oct 30 19:28:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24218         * bignum.c (rb_big2str0): use better approximation.
24220 Mon Oct 30 18:35:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24222         * bignum.c (rb_big2str0): wrong allocation length.  a patch from
24223           U.Nakamura <usa at garbagecollect.jp> [ruby-dev:29710]
24225 Mon Oct 30 12:34:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24227         * eval.c (rb_eval): fix commit miss.  [ruby-dev:29707]
24229 Mon Oct 30 11:15:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24231         * sprintf.c (rb_str_format): should preserve leading zero
24232           information for negative %b and %x.  [ruby-talk:221347]
24234 Sun Oct 29 19:51:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
24236         * regexec.c: invalid offset value was used in STATE_CHECK_BUFF_INIT().
24238 Sat Oct 28 20:13:18 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
24240         * oniguruma.h: Version 4.4.5
24242         * regint.h: ditto.
24244         * regerror.c: ditto.
24246         * regexec.c: ditto.
24248         * regcomp.c ditto.
24250         * regparse.c ditto.
24252 Sat Oct 28 07:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24254         * marshal.c (r_object0): missing break.  [ruby-core:09345]
24256 Fri Oct 27 17:30:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24258         * enumerator.c (enum_each_cons): move RETURN_ENUMERATOR() after
24259           argument check.
24261 Thu Oct 26 21:05:48 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24263         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
24264           (fix http://bugs.debian.org/394336)
24266         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.
24268 Thu Oct 26 15:23:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24270         * enumerator.c: remove by_slice and by_cons.
24272 Thu Oct 26 15:12:12 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24274         * ext/digest/digest.c (Init_digest): typo.
24276 Wed Oct 25 17:16:05 2006  Akinori MUSHA  <knu@iDaemons.org>
24278         * test/digest/test_digest_hmac.rb: added.
24280 Wed Oct 25 16:34:31 2006  Akinori MUSHA  <knu@iDaemons.org>
24282         * ext/digest/test.sh: make this script work again.
24284 Wed Oct 25 07:59:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24286         * lib/date/format.rb: updated based on date2 3.9.6.
24287           [ruby-core:09323]
24289 Wed Oct 25 00:58:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24291         * win32/mkexports.rb, win32/resource.rb: use unique variable names.
24293 Tue Oct 24 19:18:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24295         * enumerator.c (enumerator_by_slice): new method added.
24297         * enumerator.c (enumerator_by_cons): ditto.
24299 Tue Oct 24 18:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24301         * enumerator.c (enum_each_slice, enum_each_cons): returns
24302           Enumerable::Enumerator if no block is given.  [ruby-dev:29246]
24304         * enumerator.c: remove methods: enum_with_index, enum_slice,
24305           enum_cons.  [ruby-dev:29246]
24307 Tue Oct 24 18:51:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24309         * enum.c (enum_zip): add RETURN_ENUMERATOR() to zip method.
24311 Mon Oct 23 04:30:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24313         * marshal.c (r_object0): use return value from proc given as the
24314           second argument to Marshal#load() to allow value replacement in
24315           the restoring data.
24317 Sun Oct 22 14:48:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24319         * signal.c (Init_signal): avoid duplicated installation of SIGCHLD
24320           handler.
24322 Sun Oct 22 16:47:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24324         * string.c (rb_str_substr): should be infected with only original
24325           string, but not the shared string.  fixed: [ruby-core:09152]
24327         * string.c (rb_str_new4): keep shared string untainted when original
24328           string is tainted.  fixed: [ruby-dev:29672]
24330 Sun Oct 22 07:55:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24332         * string.c (rb_str_upcase, rb_str_downcase, rb_str_downcase,
24333           rb_str_upcase_bang, rb_str_downcase_bang, rb_str_swapcase_bang):
24334           add RDoc description that case conversion to be effective only
24335           in ASCII region.
24337 Sun Oct 22 05:20:34 2006  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
24339         * configure.in: alloca is broken; use C_ALLOCA instead.
24340           [ruby-dev:29416]
24342 Sat Oct 21 17:50:40 2006  Akinori MUSHA  <knu@iDaemons.org>
24344         * ext/digest/lib/digest.rb: Follow the framework updates.
24346 Fri Oct 20 22:00:43 2006  Akinori MUSHA  <knu@iDaemons.org>
24348         * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
24350         * ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
24352 Fri Oct 20 20:28:37 2006  Akinori MUSHA  <knu@iDaemons.org>
24354         * ext/digest: Prefix C constants with RUBY_ and C type names with
24355           rb_ to avoid name clash in writing extensions.
24357         * ext/digest: Introduce Digest::Class and Digest::Instance for
24358           ease of implementing subclasses and add-ons, inspired by
24359           gotoyuzo.
24361         * ext/digest: The Digest::Instance module now requires and assumes
24362           that any instance be resettable and clonable, and add some
24363           convenient instance methods such as "new()", for creating a new
24364           copy, parameter taking "digest()" and "hexdigest()", for instant
24365           calculation.  These methods make digest instances work just like
24366           digest classes.
24368         * ext/digest/sha2/lib/digest/sha2.rb:
24369           Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256,
24370           SHA384 and SHA512, hoping this module would make a decent
24371           example of a digest subclass written in Ruby.
24373         * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2
24374           classes.
24376         * ext/digest/lib/digest/hmac.rb: Follow the framework updates.
24378 Fri Oct 20 10:47:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24380         * lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
24382 Fri Oct 20 08:42:38 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24384         * common.mk (NULLCMD): dummy command.
24386         * bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
24387           command-less double-colon rules.  [ruby-dev:29676]
24389 Fri Oct 20 00:37:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24391         * bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
24393         * ext/extmk.rb: workaround for Borland make.
24395 Wed Oct 18 23:02:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24397         * array.c (rb_ary_shift): shorten copy size.  fixed: [ruby-list:42907]
24399         * signal.c (Init_signal): handle SIGTERM.  fixed: [ruby-list:42895]
24401         * win32/win32.c (rb_w32_utime): allow NULL to set the current time.
24402           [ruby-talk:219248]
24404 Wed Oct 18 13:25:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24406         * string.c (rb_str_each_line): String#lines now works when a block
24407           is given.  in other words, lines become an alias to each_line.
24408           [ruby-core:09218]
24410         * string.c (rb_str_each_byte): ditto for bytes in place of lines.
24412 Wed Oct 18 00:55:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24414         * parse.y (parser_yylex): use particular enums.  [ruby-core:09221]
24416 Tue Oct 17 22:03:08 2006  Minero Aoki  <aamine@loveruby.net>
24418         * lib/erb.rb: String#each was removed, use #each_line instead.
24420 Tue Oct 17 12:27:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24422         * array.c (ary_shared_array): should set NOEMBED flag for a copied
24423           array.
24425 Tue Oct 17 08:04:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24427         * string.c (rb_str_lines): now takes optional argument for the
24428           line separator.
24430         * io.c (rb_io_lines, rb_io_bytes): new methods.
24432 Mon Oct 16 23:33:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24434         * array.c (rb_ary_unshift_m): a bug in lfree shift length
24435           calculation.
24437 Mon Oct 16 08:30:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24439         * mkconfig.rb: *OBJS are not needed for extension libraries.
24441         * {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
24442           missing comma.
24444 Mon Oct 16 00:44:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24446         * pack.c (pack_unpack): execute block if given with unpacked value
24447           instead of creating an array.  an idea from Tim Bray.
24449 Sun Oct 15 01:03:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24451         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): append base
24452           directory but not prepend.
24454         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): do not
24455           join with dot.  fixed: [ruby-core:09179]
24457 Sat Oct 14 23:39:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24459         * parse.y (singleton): no need to re-create NODE_SELF() again.
24460           [ruby-core:09177]
24462 Sat Oct 14 23:25:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24464         * parse.y (parser_warning, parser_warn): some error message may
24465           contain format specifiers.  a patch from Akinori MUSHA <knu at
24466           iDaemons.org>.  [ruby-dev:29657]
24468         * regparse.c (onig_rb_warning, onig_rb_warn): ditto.
24470         * ext/bigdecimal/bigdecimal.c (VpException): ditto.
24472         * ext/dl/handle.c (rb_dlhandle_initialize): ditto.
24474         * ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.
24476 Sat Oct 14 08:15:42 2006  Akinori MUSHA  <knu@iDaemons.org>
24478         * ext/digest/digest.c, ext/digest/digest.h,
24479           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
24480           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c:
24481           Introduce API versioning.
24483         * ext/digest/digest.c, ext/digest/digest.h,
24484           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
24485           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove
24486           the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into
24487           instance methods digest_length() and block_length().  Class
24488           methods with the same names are also provided, which take extra
24489           parameters for a digest method.
24491         * ext/digest/lib/digest/hmac.rb: Completely redesign the somewhat
24492           bizarre API, now that Digest classes can take hashing
24493           parameters.
24495 Sat Oct 14 05:54:05 2006  Akinori MUSHA  <knu@iDaemons.org>
24497         * ext/digest/digest.c: Improve RDoc documentation further more.
24499 Sat Oct 14 04:33:33 2006  Akinori MUSHA  <knu@iDaemons.org>
24501         * ext/digest/digest.c: Improve RDoc documentation.
24503         * ext/digest/digest.c (Init_digest, rb_digest_base_s_digest,
24504           rb_digest_base_s_hexdigest): Make Digest::Base::digest() and
24505           Digest::Base::hexdigest() take extra arguments, which are passed
24506           through to the constructor in an internal call.
24508         * ext/digest/bubblebabble/bubblebabble.c
24509           (rb_digest_base_s_bubblebabble): Ditto for
24510           Digest::Base::bubblebabble().
24512 Sat Oct 14 00:55:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24514         * bcc32/Makefile.sub (post-install-ext): no longer needed.
24516         * bcc32/configure.bat: get rid of a quirk of Borland make, which
24517           sets empty macro in command line to "1".
24519 Fri Oct 13 22:49:02 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24521         * lib/date.rb: updated based on date2 3.9.5.
24523 Fri Oct 13 21:00:01 2006  Akinori MUSHA  <knu@iDaemons.org>
24525         * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
24526           digest modules when a specified digest class is missing.
24528         * ext/digest/lib/digest.rb: Define Digest(name) for ease of
24529           dynamically selecting a hashing algorithm.
24531 Fri Oct 13 20:53:37 2006  Akinori MUSHA  <knu@iDaemons.org>
24533         * ext/digest/digest.c (Init_digest): Digest::Base.new() does no
24534           longer take an initial string to feed.  This change allows
24535           subclasses to take hashing parameters.  A statement such as
24536           ``md = Digest::MD5.new(s)'' can be easily rewritten as
24537           ``md = Digest::MD5.new << s'' or
24538           ``md = Digest::MD5.new.update(s)''.
24540 Fri Oct 13 20:51:55 2006  Akinori MUSHA  <knu@iDaemons.org>
24542         * ext/digest/digest.c, ext/digest/md5/md5init.c,
24543           ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c,
24544           ext/digest/sha2/sha2init.c: Add RDoc documentation.
24546         * ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in
24547           favor of embedded RDoc documentation.
24549 Fri Oct 13 20:38:12 2006  Akinori MUSHA  <knu@iDaemons.org>
24551         * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
24552           support out of the base class and have a separate module named
24553           digest/bubblebabble.
24555 Fri Oct 13 19:53:59 2006  Akinori MUSHA  <knu@iDaemons.org>
24557         * ext/digest/digest.c (rb_digest_base_equal): Again, should call
24558           digest() of a subclass instead of the one defined in the base
24559           class.
24561 Fri Oct 13 18:19:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24563         * object.c: Class#inherited RDoc added.  a patch from Daniel
24564           Berger <djberg96 at gmail.com>  [ruby-core:08942]
24566 Fri Oct 13 02:42:00 2006  Akinori MUSHA  <knu@iDaemons.org>
24568         * ext/digest/digest.c (rb_digest_base_equal): Should call digest()
24569           of a subclass instead of the one defined in the base class.
24571 Fri Oct 13 02:30:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24573         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): prepend
24574           base directory to load path.
24576         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): should
24577           use the given File-like interface, but not File directly.
24579         * test/testunit/collector/test_dir.rb (TestDir::FileSystem): implement
24580           File-like methods correctly.
24582 Fri Oct 13 01:48:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24584         * lib/date.rb (Date::self.complete_hash): need to check if g is
24585           nil before dereference.  [ruby-core:09116]
24587 Fri Oct 13 01:05:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24589         * string.c (rb_str_partition): RDoc update.  a patch from
24590           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09160]
24592         * hash.c (rb_hash_compare_by_id): ditto.
24594 Fri Oct 13 00:34:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24596         * object.c (rb_mod_cvar_defined): wrong id check.  a patch from
24597           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09158]
24599         * object.c (rb_mod_cvar_get): typo fixed.  [ruby-core:09168]
24601         * object.c (rb_mod_cvar_set): ditto.
24603 Thu Oct 12 22:58:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24605         * hash.c (rb_hash_compare_by_id): somehow we lost renaming from
24606           Hash#identical.  [ruby-core:09163]
24608 Thu Oct 12 18:25:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24610         * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
24611           character literal (1 char string).
24613         * lib/mkmf.rb: shut up some warnings from tk's extconf.rb.
24615 Thu Oct 12 02:15:24 2006  Akinori MUSHA  <knu@iDaemons.org>
24617         * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
24619 Thu Oct 12 02:12:31 2006  Akinori MUSHA  <knu@iDaemons.org>
24621         * ext/digest/digest.c (get_digest_base_metadata): Use an instance
24622           variable of a class object instead of a class variable for
24623           metadata.  This change is only crucial for ruby 1.8 because
24624           class variables are inherited to subclasses prior to 1.9, but
24625           applying it also to 1.9 will assure compatibilities.
24627         * ext/digest/md5/md5init.c (Init_md5): Ditto.
24629         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
24631         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
24633         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
24635 Wed Oct 11 21:36:47 2006  Akinori MUSHA  <knu@iDaemons.org>
24637         * ext/digest/digest.c (rb_digest_base_alloc,
24638           rb_digest_base_equal): Simplify the equality check and just
24639           compare resulted digests since state-level equality should
24640           not be so significant.
24642         * ext/digest/digest.h: Ditto.
24644         * ext/digest/*/*.[ch]: Ditto.
24646 Wed Oct 11 17:11:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24648         * eval.c (rb_obj_define_method): add half boiled RDoc document.
24650 Wed Oct 11 16:57:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24652         * array.c (rb_ary_replace): should shift lfree pointer before
24653           calling xfree.
24655 Wed Oct 11 15:07:42 2006  Akinori MUSHA  <knu@iDaemons.org>
24657         * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
24658           HMAC keyed-hashing algorithm.
24660 Wed Oct 11 15:03:55 2006  Akinori MUSHA  <knu@iDaemons.org>
24662         * ext/digest/digest.c (rb_digest_base_reset): Do not make
24663           recursive calls, but call initialize() when reset() is not
24664           defined in a subclass.
24666 Wed Oct 11 14:56:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24668         * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
24669           SHA_BLOCK_LENGTH.
24671 Wed Oct 11 14:03:31 2006  Akinori MUSHA  <knu@iDaemons.org>
24673         * ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
24674           Digest::Base#reset.
24676         * ext/digest/digest.h: Update the header comment.
24678         * ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5):
24679           Define DIGEST_LENGTH and BLOCK_LENGTH.
24681         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
24683         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
24685         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
24687         * ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES
24688           rather than adding make targets. [Pointed out by: nobu]
24690 Tue Oct 10 16:39:08 2006  Akinori MUSHA  <knu@iDaemons.org>
24692         * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
24693           Perform StringValue() checks properly.
24695 Tue Oct 10 13:21:21 2006  Akinori MUSHA  <knu@iDaemons.org>
24697         * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
24698           dependencies.
24700 Mon Oct  9 23:46:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24702         * lib/parsedate.rb: documentation patch from Konrad Meyer
24703           <konrad.meyer@gmail.com>.  [ruby-doc:1238]
24705         * lib/open3.rb, lib/ping.rb: ditto.
24707 Mon Oct  9 23:40:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24709         * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
24710           lib/shellwords.rb: get rid of shadowing outer local variable.
24712 Mon Oct  9 22:56:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24714         * lib/rexml/encoding.rb (REXML::Encoding::check_encoding): spaces
24715           are allowed around equal sign.  [ruby-core:09032]
24717         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser): ditto.
24719 Mon Oct  9 01:56:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24721         * eval.c (rb_obj_define_method): add new method
24722           Kernel#define_singleton_method.  [ruby-list:42851]
24724 Sat Oct  7 23:53:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24726         * string.c (rb_str_scan): small documentation fix.
24727           [ruby-core:09007]
24729 Sat Oct  7 23:44:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24731         * bignum.c (rb_big_rshift): a bug in right shift of negative
24732           bignums.  [ruby-core:09020]
24734 Sat Oct  7 23:33:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24736         * eval.c (formal_assign): packed post splat arguments may conflict
24737           with normal arguments.  [ruby-core:09021]
24739         * eval.c (rb_call0): ditto.
24741 Sat Oct  7 11:53:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24743         * object.c (rb_mod_initialize): since module_eval no longer passes
24744           self, use module_exec instead.  fixed: [ruby-dev:29637]
24746 Sat Oct  7 00:27:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24748         * class.c (rb_include_module): remove unnecessary check.
24749           [ruby-talk:218402]
24751 Fri Oct  6 15:19:59 2006  Akinori MUSHA  <knu@iDaemons.org>
24753         * ext/digest/depend: Fix header installation when the build
24754           directory is different from srcdir. [Pointed out by: eban]
24756 Fri Oct  6 09:56:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24758         * {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
24759           copy command instead of install. use -run install.
24761 Fri Oct  6 06:53:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24763         * eval.c (rb_yield_0): small refactoring.
24765         * parse.y (bparam_item): fixed bugs in handling parenthesized LHS.
24767 Fri Oct  6 04:47:07 2006  Akinori MUSHA  <knu@iDaemons.org>
24769         * ext/digest/depend: Install digest.h.
24771 Fri Oct  6 04:27:40 2006  Akinori MUSHA  <knu@iDaemons.org>
24773         * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
24774           compatibility stub libraries.
24776         * sample/openssl/c_rehash.rb: Use digest/md5 instead of obsolete md5.
24778 Fri Oct  6 04:09:51 2006  Akinori MUSHA  <knu@iDaemons.org>
24780         * ext/digest/digest.c: Make hexdigest() always call digest() internally.
24782         * ext/digest/digest.c: Add bubblebabble().
24784 Fri Oct  6 02:38:42 2006  Akinori MUSHA  <knu@iDaemons.org>
24786         * ext/digest/digest.c: Allow subclassing in Ruby.
24788 Fri Oct  6 02:06:10 2006  Akinori MUSHA  <knu@iDaemons.org>
24790         * ext/digest/digest.c (hexdigest_str_new): Add a string size check.
24792 Thu Oct  5 19:28:35 2006  Akinori MUSHA  <knu@iDaemons.org>
24794         * ext/digest/digest.[ch]: Since the argument order of
24795           hash_final_func_t was inconsistent with others, change it and
24796           rename to hash_finish_func_t to avoid confusion.
24798         * ext/digest/digest.[ch]: Remove and eliminate the use of
24799           hash_end_func_t.  Implement hexdigest conversion in the base
24800           class.
24802         * ext/digest/md5/md5.c, ext/digest/md5/md5.h,
24803           ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c,
24804           ext/digest/md5/md5ossl.h: Remove MD5_End() and change
24805           MD5_Final() to MD5_Finish().
24807         * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb,
24808           ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h,
24809           ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c,
24810           ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h:
24811           Remove unused functions RMD160_End(), RMD160_File(),
24812           RMD160_Data() and change RMD160_Final() to RMD160_Finish().
24814         * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c,
24815           ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c,
24816           ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c,
24817           ext/digest/sha1/sha1ossl.h: Likewise.
24819         * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c,
24820           ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c,
24821           ext/digest/sha2/sha2init.c: Likewise.
24823 Wed Oct  4 18:47:25 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24825         * ext/tk/lib/tkextlib/*: bugfix and update
24826           (see ext/tk/ChangeLog.tkextlib).
24828 Wed Oct  4 17:25:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24830         * eval.c (rb_call): check protected visibility based on real self,
24831           not ruby_frame->self.  [ruby-talk:217822]
24833 Wed Oct  4 15:46:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24835         * parse.y (block_param): should interpret single parenthesized
24836           left hand side expression.
24838 Wed Oct  4 08:52:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24840         * test/optparse/test_getopts.rb: changed the class name of test case
24841           to get rid of conflict with test_optparse.rb.
24843 Tue Oct  3 21:04:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24845         * parse.y (dyna_in_block): inline using macro.
24847         * parse.y (mlhs): simplifies the rule a bit.
24849         * parse.y (block_param): restrict block parameters to be local
24850           variables only.
24852         * test/ruby/test_iterator.rb (TestIterator::test_nested_iterator):
24853           update test suite to conform the last change.
24855 Tue Oct  3 02:31:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24857         * eval.c (splat_value): use "to_splat" instead of "to_ary" to
24858           prepare splat values as an array.
24860         * array.c (Init_Array): define to_splat.
24862         * range.c (range_to_splat): new method.
24864         * enumerator.c (enumerator_to_splat): ditto.
24866 Tue Oct  3 01:36:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24868         * string.c (rb_str_lines): returns an Enumerator instead of an
24869           array of lines.
24871         * string.c (rb_str_bytes): a new method.
24873 Mon Oct  2 23:47:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24875         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::COLLECTORS):
24876           base directory should be lower precedence.  fixed: [ruby-dev:29622]
24878         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): typo.
24880         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
24881           load expanded path.  fixed: [ruby-dev:29621]
24883 Mon Oct  2 15:47:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24885         * instruby.rb: batfile should be CRLF'ed.
24887 Mon Oct  2 01:24:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24889         * common.mk (test-all): separate directory where running test cases
24890           from source tree.
24892         * lib/test/unit/autorunner.rb (options): added --basedir, --workdir
24893           and --load-path options.
24895         * lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
24896           base directory support.
24898 Sun Oct  1 23:56:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24900         * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
24901           LIBRUBY_SO unless need to be removed.
24903 Sun Oct  1 23:12:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24905         * lib/optparse.rb (OptionParser#make_switch): pass arguments directly.
24907 Sat Sep 30 15:11:26 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24909         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.4.
24911 Fri Sep 29 13:18:24 2006  Akinori MUSHA  <knu@iDaemons.org>
24913         * ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
24914           breakage.  Point out by NAKAMURA Usaku in [ruby-dev:29619].
24916 Fri Sep 29 12:11:04 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
24918         * jcode.rb (succ!): call original succ! if $KCODE == 'n'.
24919           fixed: [ruby-talk:216845]
24921 Fri Sep 29 11:43:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24923         * lib/mkmf.rb (try_func): revert fallback checking undeclared function.
24924           fixed: [ruby-core:08949]
24926 Fri Sep 29 09:56:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24928         * ext/extmk.rb: extout is needed for also clean.
24929           fixed: [ruby-core:08944]
24931         * lib/optparse.rb (OptionParser::Switch#conv_arg): unsplat by
24932           Proc#call if no conversion is given.
24934 Thu Sep 28 23:59:31 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24936         * node.h (struct thread): declare win32_exception_list on cygwin and
24937           win32 regardless if it is implemented.  Provisional fix for
24938           [ruby-core:08917].
24940 Thu Sep 28 20:49:20 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24942         * lib/tmpdir.rb: use return value of getdir.call for length.
24944 Wed Sep 27 22:08:16 2006  Akinori MUSHA  <knu@iDaemons.org>
24946         * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
24947           require "digest" rather than "digest.so".
24949         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
24951         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
24953         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
24955 Wed Sep 27 21:21:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24957         * string.c (rb_str_startwith): rename startwith? to start_with?,
24958           endwith? to endwith?, respectively.  [ruby-talk:216685]
24960 Wed Sep 27 13:29:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24962         * lib/cgi.rb (CGI::TagMaker::nOE_element_def): replace to_s by
24963           join.  some other methods as well.  [ruby-dev:29613]
24965 Wed Sep 27 01:04:49 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24967         * lib/mkmf.rb (try_func): check function pointer first and macro next.
24969         * lib/mkmf.rb (have_type): simplified with typedef and sizeof.
24971 Wed Sep 27 00:08:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24973         * array.c (rb_ary_shift): shift/unshift performance boost patch,
24974           based on the patch from Eric Mahurin <eric_mahurin at yahoo.com>.
24975           [ruby-core:05861]
24977         * array.c (rb_ary_unshift_m): ditto.
24979         * array.c (ary_make_shared): ditto.
24981         * array.c (RESIZE_CAPA): ditto.
24983         * array.c (rb_ary_free): new function to free memory.  code moved
24984           from gc.c.
24986         * string.c (rb_str_free): ditto.
24988 Tue Sep 26 23:57:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24990         * lib/optparse.rb (OptionParser#getopts): use strings as key.
24991           fixed: [ruby-dev:29614]
24993 Tue Sep 26 15:29:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24995         * {win32,wince}/Makefile.sub (CPP): check predefined value.
24997 Tue Sep 26 07:55:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24999         * array.c (rb_ary_shift): should not move memory region if array
25000           body is shared.  a patch from Kent Sibilev <ksruby at gmail.com>.
25001           [ruby-core:08922]
25003 Mon Sep 25 23:10:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25005         * dir.c (rb_push_glob): need not to check by FilePathValue().
25006           [ruby-dev:29599]
25008         * dir.c (dir_globs): ditto.
25010 Mon Sep 25 22:26:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25012         * file.c (rb_path_end): skip root directory.  fixed: [ruby-core:08913]
25014         * lib/mkmf.rb (rm_f): get rid of NUL.
25016         * lib/mkmf.rb (init_mkmf): set default $LDFLAGS.  Patch by Michal
25017           Suchanek <hramrach at centrum.cz>.  [ruby-talk:216256]
25019 Mon Sep 25 15:06:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25021         * sample/test.rb: "print nil" now prints empty string.
25023         * test/ruby/test_system.rb (TestSystem::test_system): ditto.
25025 Mon Sep 25 11:26:25 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25027         * hash.c (recursive_hash): remove unused local variable.
25029         * parse.y (parser_yylex): ditto.
25031         * parse.y (rb_gc_mark_symbols): fix unmatched prototype .
25033         * file.c (rb_get_path): check NUL byte in the path string.
25035 Mon Sep 25 08:14:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25037         * array.c (rb_ary_shift): should clear shifting top element.
25038           [ruby-talk:216055]
25040         * array.c (rb_ary_shift): avoid creating shared object if array
25041           size is small.
25043 Mon Sep 25 08:11:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25045         * random.c (rb_f_rand): RDoc typo fix.  a patch from Frederick
25046           Cheung <fred at 82ask.com>.  [ruby-talk:216047]
25048 Sun Sep 24 21:19:24 2006  Guy Decoux  <ts@moulon.inra.fr>
25050         * gc.c (gc_mark_children): NODE_POSTEXE holds Ruby VALUE.
25051           [ruby-core:08912]
25053 Sun Sep 24 22:28:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25055         * runruby.rb: extension library scripts moved into common directory.
25057 Sun Sep 24 12:10:04 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25059         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.3.
25061 Sun Sep 24 06:55:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25063         * io.c (rb_io_print): no special handling for nil as well as puts.
25064           fixed: [ruby-dev:29586]
25066 Sun Sep 24 06:25:53 2006  why the lucky stiff  <why@ruby-lang.org>
25068         * eval.c (rb_thread_save_context, rb_thread_restore_context):
25069           sandbox hook to save and restore sandbox state.
25071         * eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
25073         * eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
25074           to circumvent ensure, in order to prevent endless loops.
25075           contributed by MenTaLguY. [ruby-core:08768]
25077         * eval.c (rb_thread_kill): fix Thread#kill docs, which returns
25078           the thread object in all cases.
25080         * node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
25081           with the thread flags.  used by the sandbox extension.
25083         * ruby.h: extern rb_eThreadError, so sandbox can swap it.
25085 Sat Sep 23 21:34:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25087         * lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
25088           may be empty.  a patch from Jamis Buck <jamis at 37signals.com>.
25090 Sat Sep 23 20:54:28 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25092         * oniguruma.h: Version 4.4.4
25094         * regexec.c: ditto.
25096         * regcomp.c ditto.
25098 Sat Sep 23 08:35:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25100         * lib/rdoc/ri/ri_options.rb: prevent NameError.  [ruby-dev:29597]
25102 Sat Sep 23 01:02:57 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25104         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.2.
25106 Fri Sep 22 18:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25108         * string.c (rb_str_partition): no need to call rb_call_super(),
25109           since String is no longer includes Enumerable.
25111 Fri Sep 22 17:33:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25113         * hash.c (rb_hash_eql): new method to be used by Hash.
25115         * hash.c (rb_hash_hash): ditto.
25117 Fri Sep 22 06:53:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25119         * bignum.c (rb_big_hash): use rb_memhash().
25121         * numeric.c (flo_hash): simplified.  klass need not to affect
25122           resulting hash value.
25124 Fri Sep 22 02:06:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25126         * .cvsignore: ignore timestamp files and installed list file.
25128 Fri Sep 22 01:36:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25130         * instruby.rb: include FileUtils unconditionally.
25132 Fri Sep 22 00:36:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25134         * numeric.c (Init_Numeric): fix_odd_p and fix_even_p are for Fixnum.
25135           patch from Ondrej Bilka <neleai at seznam.cz>.  [ruby-core:08904]
25137 Thu Sep 21 22:56:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25139         * common.mk (no-install): not install rdoc actually.
25141         * common.mk (install-doc, no-install-doc): use instruby.rb.
25143         * instruby.rb: rdoc installation.
25145         * ext/extmk.rb: expand ruby executable names.
25147 Thu Sep 21 20:19:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25149         * string.c (str_new3): embed shorter strings more eagerly.
25151 Thu Sep 21 17:44:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25153         * string.c (rb_str_startwith): a new method to check if a string
25154           starts with given prefix.
25156         * string.c (rb_str_endwith): the opposite of String#startwith?.
25158 Thu Sep 21 16:29:02 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
25160         * rubytest.rb: use each_line instead of each.
25162 Thu Sep 21 15:06:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25164         * numeric.c (int_odd_p): a new method to check even or odd.
25165           [RCR#337]
25167         * numeric.c (int_even_p): ditto.
25169 Thu Sep 21 13:55:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25171         * ext/etc/etc.c (etc_getpwuid): uid integer should be wrapped in
25172           uid_t value.  [ruby-core:08897]
25174         * ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
25175           'int' type.
25177 Thu Sep 21 10:07:09 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25179         * string.c (rb_str_partition): RDoc typo fixed.  [ruby-core:08898]
25181         * string.c (rb_str_rpartition): fixed separation seek bug.
25183 Thu Sep 21 09:38:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25185         * string.c (rb_str_lines): new method to split a string into lines.
25187         * string.c (Init_String): Strings are no longer Enumerable.  use
25188           each_line or lines method explicitly.
25190         * string.c (Init_String): remove each method. use each_lines.
25192 Wed Sep 20 23:17:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25194         * common.mk (pre-install-doc): create data directory before install.
25196         * lib/mkmf.rb (dir_re): fixed typo.
25198         * lib/mkmf.rb (install_dirs): remove extra slash.
25200 Wed Sep 20 22:41:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25202         * numeric.c (fix_mul): typo again.  patch from Tadashi Saito
25203           <shiba at mail2.accsnet.ne.jp>.  fixed: [ruby-core:08893]
25205 Wed Sep 20 19:32:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25207         * string.c (rb_str_partition): a new method to separate the string
25208           by a separator.  taken from Python 2.5.
25210         * string.c (rb_str_rpartition): ditto.
25212 Wed Sep 20 09:49:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25214         * {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
25215           this macro to install.
25217 Wed Sep 20 09:43:10 2006  Shugo Maeda  <shugo@ruby-lang.org>
25219         * lib/net/imap.rb: allow extra spaces in responses.
25220           Thanks, Tom Soderlund.
25222 Wed Sep 20 09:25:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25224         * ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
25225           Adolphs <futzilogik at users dot sourceforge dot net>.
25226           [ruby-doc:1223]
25228 Tue Sep 19 00:42:15 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25230         * object.c (rb_obj_ivar_defined, rb_mod_cvar_defined): new methods,
25231           Kernel#instance_variable_defined? and Module#class_variable_defined?.
25232           [ruby-dev:29587]
25234         * lib/date/format.rb (Date::Bag#method_missing): use new method,
25235           instance_variable_defined? to check if an instance variable is
25236           defined.  fixed: [ruby-dev:29554]
25237           -- This didn't fix anything.
25239 Tue Sep 19 00:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25241         * string.c (sym_eql): fail early to gain performance.
25243         * string.c (sym_hash): cache hash value in aux.shared if possible.
25245         * gc.c (rb_obj_id): no need to treat symbols specially.
25247         * lib/fileutils.rb (FileUtils::FileUtils): singleton_methods() no
25248           longer return an array of strings, but of symbols.
25250         * lib/delegate.rb (DelegateClass): ditto.
25252 Mon Sep 18 15:29:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25254         * dir.c (dir_s_glob): restore GC protection volatile variable.
25255           [ruby-dev:29588]
25257         * re.c (rb_reg_regcomp): ditto.
25259 Mon Sep 18 12:16:48 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25261         * numeric.c (fix_mul): get rid of shift overflow.
25263 Mon Sep 18 10:47:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25265         * dir.c (dir_s_glob): remove unused variable.
25267         * math.c (math_log): ditto.
25269         * re.c (rb_reg_regcomp): ditto.
25271         * eval.c (break_jump): ditto.
25273         * eval.c (rb_thread_yield_0): remove unused function.
25275 Sun Sep 17 23:44:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25277         * lib/rdoc/rdoc.rb (RDoc::RDoc#document): scan only files modified
25278           after the previous generation.
25280 Sun Sep 17 17:42:13 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25282         * common.mk (install-doc): reverted.
25284         * instruby.rb: stores file name list without destdir prefix.
25286         * lib/rdoc/generators/ri_generator.rb: do not chdir twice.
25288 Sun Sep 17 10:42:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25290         * numeric.c (fix_mul): fixed typo.  fixed: [ruby-core:08885]
25292 Sat Sep 16 19:47:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25294         * README.EXT: should mention new macros: RSTRING_PTR, RSTRING_LEN,
25295           RARRAY_PTR, RARRAY_LEN.
25297         * README.EXT.ja: ditto.
25299 Sat Sep 16 16:39:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25301         * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
25302           use instruby.rb to install extensions instead of ext/extmk.rb.
25304         * instruby.rb: store installed list into the file.
25306         * ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
25308         * ext/io/wait/extconf.rb: suspicious checking_for.
25310         * ext/pty/pty.c (establishShell): parent pid is not used.
25312         * ext/pty/pty.c (freeDevice): not used.
25314         * lib/mkmf.rb (checking_for): improved the messages.
25316 Sat Sep 16 11:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25318         * array.c (ary_shared_first): should create embedded copies
25319           instead of sharing memory region for smaller arrays.
25321 Sat Sep 16 09:37:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25323         * struct.c (inspect_struct): do not display a class name for
25324           anonymous struct.  The member fields are sufficient.
25326 Fri Sep 15 20:22:15 2006  NARUSE, Yui  <naruse@ruby-lang.org>
25328         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 rev.110.
25329           * Fix: check_bom cuts \xfe\xff\xXX\xXX of UTF-32LE.
25330           * Add support --ic=UTF-32.
25331           * Fix: can't guess UTF-16 and UTF-32.
25332           * Fix: can't decode beyond BMP of UTF-16LE.
25334         * ext/nkf/nkf.c (guess): Support UTF-32.
25336         * ext/nkf/lib/kconv.rb (kconv): Support UTF-32.
25338         * ext/nkf/lib/kconv.rb (to_utf32): new method.
25340 Fri Sep 15 05:23:24 2006  NARUSE, Yui  <naruse@ruby-lang.org>
25342         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 2006-09-15.
25343           Add support for U+10000 - U+10FFFF
25344           Add support UTF-32
25346 Fri Sep 15 00:03:07 2006  Tanaka Akira  <akr@fsij.org>
25348         * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
25349           mode.  suggested by Kazuhiro NISHIYAMA.  [ruby-dev:29579]
25351 Thu Sep 14 17:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25353         * numeric.c (fix_mul): avoid bignum multiplication as far as
25354           possible.  a patch from Ondrej Bilka <neleai at seznam.cz>.
25355           [ruby-core:08825]
25357 Thu Sep 14 16:34:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25359         * string.c (rb_str_intern): allow zero length symbols.
25360           [ruby-core:08861]
25362 Thu Sep 14 16:11:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25364         * string.c (rb_str_intern): raise SecurityError only when $SAFE
25365           level is greater than zero.  [ruby-core:08862]
25367         * parse.y (rb_interned_p): new function to check if a string is
25368           already interned.
25370         * string.c (str_to_id): use rb_str_intern().
25372 Thu Sep 14 14:37:45 2006  Tanaka Akira  <akr@fsij.org>
25374         * ext/digest/lib/digest.rb (Digest::Base.file): new method.
25375           [ruby-dev:29572]
25377 Thu Sep 14 08:30:02 2006  Tanaka Akira  <akr@fsij.org>
25379         * ext/digest/digest.c (rb_digest_base_inspect): new method.
25380           [ruby-dev:29573]
25382 Thu Sep 14 01:13:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25384         * gc.c (ruby_init_stack): decrease "stack level too deep" in Windows.
25385           [ruby-dev:29569]
25387 Thu Sep 14 01:02:25 2006  Tanaka Akira  <akr@fsij.org>
25389         * ext/digest/lib/digest.rb: new file.
25390           [ruby-dev:28689]
25392 Wed Sep 13 18:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25394         * README.EXT: English adjustment.  [ruby-core:08851] and
25395           [ruby-core:08852]
25397 Wed Sep 13 18:25:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25399         * misc/ruby-mode.el (ruby-parse-partial): better here-doc support.
25400           a patch from Marshall T. Vandegrift <llasram at gmail.com>.
25401           [ruby-core:08804]
25403 Wed Sep 13 16:43:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25405         * string.c (rb_str_intern): prohibit interning tainted string.
25407 Wed Sep 13 01:14:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25409         * lib/optparse.rb (OptionParser#getopts): works with pre-registered
25410           options.  [ruby-core:08826]
25412 Tue Sep 12 03:58:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25414         * hash.c (rb_hash_compare_by_identity): rename Hash#identical to
25415           Hash#compare_by_identity.
25417 Mon Sep 11 16:52:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25419         * hash.c (rb_hash_identical): a new method to make a hash to
25420           compare keys by their identity.
25422         * hash.c (rb_hash_identical_p): new method to tell if a hash is
25423           identical or not.
25425         * st.c (st_numcmp, st_numhash): export hash type functions.
25427 Mon Sep 11 11:42:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25429         * lib/rexml/source.rb (REXML::Source::encoding): should not
25430           convert the body twice.  [ruby-core:08828]
25432         * lib/rexml/encoding.rb (REXML::Encoding::encoding):
25433           Encoding#encoding= to return boolean value to tell if the body
25434           is really converted or not.
25436         * lib/rexml/encoding.rb (REXML::Encoding::encoding): Specific
25437           conversion library (e.g. rexml/encodings/UTF-16.rb) to have
25438           higher preceding.
25440         * lib/rexml/encodings/UTF-16.rb (REXML::Encoding::decode_utf16):
25441           UTF-16#decode_utf16 should work strings without BOM.
25443 Mon Sep 11 07:39:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25445         * string.c (sym_equal): "sym == str" should compare them as
25446           strings.  [ruby-dev:29554]
25448 Sun Sep 10 22:59:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25450         * instruby.rb (parse_args): remove splat.
25452 Sun Sep 10 20:25:30 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25454         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.1.
25456 Sun Sep 10 09:41:29 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25458         * file.c: ISPRINT() needs ctype.h
25460 Sun Sep 10 09:19:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25462         * lib/optparse.rb: splat parsed arguments.
25464 Tue Jan 10 09:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25466         * eval.c (rb_require_safe): prevent extension from loading twice.
25467           fixed: [ruby-dev:29523]
25469 Sat Sep  9 23:55:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25471         * file.c (rb_f_test): test(0) should not have any special
25472           meaning.  [ruby-dev:29425]
25474         * file.c (rb_f_test): properer error message.
25476 Sat Sep  9 14:08:38 2006  Eric Hodel  <drbrain@segment7.net>
25478         * lib/test/unit/testcase.rb (Test::Unit::TestCase#run): Rescue
25479           Exception in Test::Unit::TestCase#run.  [ruby-core:08783]
25481 Sat Sep  9 04:55:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25483         * lib/pstore.rb: open all in binary mode, and get rid of the quirk of
25484           msvcrt.  fixed: [ruby-dev:29518]
25486 Sat Sep  9 04:47:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25488         * Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
25490         * mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
25491           warnings with $VERBOSE.
25493         * win32/resource.rb: only file which has more than one icon is DLL.
25495 Fri Sep  8 16:53:30 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25497         * string.c (str_alloc): should allocate a String object, even when
25498           asked to allocate a Symbol object.  [ruby-dev:29529]
25500 Fri Sep  8 16:36:27 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25502         * ext/extmk.rb (extmake): follow Array#to_s.
25504         * lib/mkmf.rb (create_makefile): ditto.
25506         * win32/resource.rb: ditto.
25508 Fri Sep  8 10:00:12 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
25510         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookies): new
25511           method to parse multiple cookies per Set-Cookie header.
25512           Thanks to Aaron Patterson <aaron_patterson at speakeasy.net>.
25513           [ruby-core:08802]
25515 Fri Sep  8 08:59:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25517         * win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
25518           name transform.
25520 Fri Sep  8 08:25:39 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25522         * lib/optparse.rb: suppress `assigning void value' warning.
25524 Fri Sep  8 01:16:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25526         * array.c (Init_Array): #to_s to be an alias to #inspect.
25527           [ruby-dev:29520]
25529         * hash.c (Init_Hash): ditto.
25531         * lib/mkmf.rb (create_makefile): replace "print array" by
25532           "print *array".
25534         * mkconfig.rb: ditto.
25536 Thu Sep  7 21:02:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25538         * object.c (nil_to_s): returns the empty string again.
25539           [ruby-dev:29520]
25541 Thu Sep  7 23:27:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25543         * file.c (path_check_0, fpath_check): disable path check on cygwin.
25544           [ruby-talk:213074]
25546 Thu Sep  7 02:03:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25548         * time.c (time_to_s): adopt new date format using digits
25549           e.g. "2006-09-07 02:03:45 +9000".
25551 Thu Sep  7 01:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25553         * string.c (sym_equal): override.  check equivalence.
25555 Wed Sep  6 13:25:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25557         * parse.y (symbols_i): need to initialize early-created symbols.
25558           [ruby-dev:29496]
25560 Wed Sep  6 12:05:19 2006  NARUSE, Yui  <naruse@ruby-lang.org>
25562         * ext/nkf/lib/kconv.rb (Kconv::toeuc): remove -m0 [ruby-dev:29505]
25564 Tue Sep  5 22:06:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25566         * ext/tk/tcltklib.c: use rb_ary_new3() since RARRAY_LEN() is not l-value.
25568         * ext/tk/tkutil/tkutil.c: use RARRAY_PTR() and RARRAY_LEN() and etc.
25569           fixed: [ruby-dev:29473]
25571 Tue Sep  5 06:47:22 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25573         * time.c (time_to_s): variable declaration after an execution
25574           statement.
25576 Tue Sep  5 05:49:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25578         * file.c (path_check_0): check if sticky bit is set on parent
25579           directories for executable path.  fixed: [ruby-dev:29415]
25581 Tue Sep  5 05:03:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25583         * numeric.c (fix_plus): addition in Fixnum will never overflow
25584           long.  a patch from Ondrej Bilka <neleai at seznam.cz>.
25585           [ruby-core:08794]
25587         * numeric.c (fix_minus): ditto.
25589         * bignum.c (rb_big_pow): eagerly truncate resulting bignum.
25590           [ruby-core:08794]
25592 Mon Sep  4 23:15:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25594         * time.c (time_to_s): make it conform to RFC2822 date format.
25595           [ruby-dev:29467]
25597 Mon Sep  4 21:43:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25599         * ext/dbm/extconf.rb: create makefile according to the result of check
25600           for dbm header.  fixed: [ruby-dev:29445]
25602 Mon Sep  4 21:39:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25604         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.
25606 Mon Sep  4 21:14:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25608         * time.c (time_strftime): include nul character.  fixed: [ruby-dev:29422]
25610 Mon Sep  4 16:39:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25612         * lib/cgi.rb (CGI::out): specify -x option for nkf.
25614         * lib/cgi.rb (CGI::out): should not convert utf-8 implicitly using
25615           NKF.  it is too Japanese centric.
25617 Mon Sep  4 14:23:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25619         * ext/dbm/extconf.rb (db_check): remove debug print.
25621 Mon Sep  4 06:46:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25623         * parse.y (rb_id2sym): intern if id is attrset_id.
25624           [ruby-dev:29420] [ruby-dev:29447]
25626 Mon Sep  4 01:25:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25628         * eval.c (rb_f_local_variables): list symbols.
25630         * struct.c (rb_struct_s_members_m): ditto.
25632         * variable.c (ivar_i): ditto.
25634         * variable.c (gvar_i): ditto.
25636         * variable.c (cv_i): ditto.
25638 Sun Sep  3 20:47:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25640         * ruby.h (SYMBOL_P): Qnil and Qfalse are not Symbol.
25642 Sun Sep  3 15:32:44 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25644         * lib/mkmf.rb: get rid of nil.to_s.
25646 Sun Sep  3 06:24:38 2006  Tanaka Akira  <akr@fsij.org>
25648         * ext/socket/socket.c (ruby_connect): sockerrlen should be socklen_t.
25650 Sun Sep  3 04:40:42 2006  Tanaka Akira  <akr@fsij.org>
25652         * ext/socket/extconf.rb: check arpa/inet.h for ntohs.
25654         * ext/socket/socket.c: include arpa/inet.h if available.
25656 Sat Sep  2 23:59:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25658         * string.c (Init_String): undef Symbol#new.
25660         * struct.c (rb_struct_s_def): wrong symbol detection.
25662 Sat Sep  2 23:59:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25664         * string.c (str_to_id): a bug caused by premature optimization.
25666 Sat Sep  2 23:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25668         * object.c (Init_Object): move symbol related code to string.c
25670         * string.c (Init_String): Symbol as subclass of String.
25672         * parse.y (rb_intern2): handle symbol as strings.
25674         * string.c (str_new): substring of symbols are mere strings, not
25675           symbols.
25677 Sat Sep  2 23:37:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25679         * ruby.h (struct RArray): embed small arrays.
25680           (RARRAY_LEN): defined for accessing array members.
25681           (RARRAY_PTR): ditto.
25683         * array.c: use RARRAY_LEN and RARRAY_PTR.
25685 Sat Sep  2 13:23:01 2006  Tanaka Akira  <akr@fsij.org>
25687         * common.mk (ia64.o): use the compiler driver to assemble ia64.s
25688           to use appropriate ABI.
25690 Sat Sep  2 12:06:35 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
25692         * lib/soap/generator.rb (SOAP::SOAPGenerator#encode_tag): do not dump
25693           XML attribute which value is nil.  value "" and nil both were dumped
25694           as 'attr="value"'.  [ruby-dev:29395]
25696 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25698         * eval.c (rb_eval): should handle when in else clause.  a patch
25699           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
25701         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
25703 Sat Sep  2 12:00:32 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
25705         * lib/csv.rb (CSV::IOReader#initialize): use String#[](pos, len)
25706           instead of String#[](idx) to check utf BOM.  follows String#[](idx)
25707           behavior change of 1.9.
25709 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25711         * eval.c (rb_eval): should handle when in else clause.  a patch
25712           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
25714         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
25716 Fri Sep  1 22:07:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25718         * ruby.h (RSTRING_EMBED_LEN_MASK): uses 5 bits to support 64bit
25719           environment.  [ruby-dev:29369]
25721 Fri Sep  1 22:02:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25723         * string.c (rb_str_resize): should copy embedded string to
25724           malloc'ed buffer.  a patch from <nobu at ruby-lang.org> in
25725           [ruby-dev:29369].  fixed: [ruby-dev:29368]
25727         * string.c (rb_str_ord): use %ld specifier since STRING_LEN() is a
25728           long.  [ruby-dev:29369]
25730 Fri Sep  1 21:41:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25732         * ext/socket/socket.c (socks_init): typo fixed.  a patch from Sven
25733           Klemm <sven at c3d2.de>.  [ruby-core:08770]
25735 Fri Sep  1 14:22:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
25737         * array.c (rb_ary_shuffle): RDoc fixed.
25739 Fri Sep  1 13:52:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25741         * ext/tk/lib/tk/font.rb: TkFont#current_configinfo() doesn't work
25742           on Tcl/Tk8.x.
25744 Fri Sep  1 09:32:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25746         * lib/irb/ruby-lex.rb (RubyLex::getc): should not push nil into
25747           reading buffer (@readed).  reported in
25748           <http://jarp.does.notwork.org/diary/200608c.html#200608311>.
25750 Thu Aug 31 23:59:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25752         * lib/mkmf.rb (configuration): follow nil.to_s.
25754 Thu Aug 31 20:50:46 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25756         * lib/mkmf.rb (create_makefile): follow nil.to_s.
25758         * win32/resource.rb: ditto.
25760 Thu Aug 31 20:21:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25762         * eval.c (search_required): use RSTRING_PTR and RSTRING_STR.
25764         * file.c (test_identical, rb_file_s_truncate): ditto.
25766         * io.c (pipe_open, rb_io_reopen): ditto.
25768         * object.c (nil_plus): ditto.
25770         * process.c (proc_spawn_n, rb_spawn): ditto.
25772         * util.c (ruby_add_suffix): ditto.
25774         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
25776         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): ditto.
25778         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): ditto.
25780         * ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.
25782         * ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.
25784 Thu Aug 31 18:23:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25786         * ruby.h (struct RString): embed small strings.
25787           (RSTRING_LEN): defined for accessing string members.
25788           (RSTRING_PTR): ditto.
25790         * string.c: use RSTRING_LEN and RSTRING_PTR.
25792 Thu Aug 31 17:16:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25794         * array.c (rb_ary_shuffle_bang): new method.
25796         * array.c (rb_ary_shuffle): ditto.
25798         * random.c (genrand_real): ditto.
25800         * random.c (genrand_int32): export the function.
25802         * random.c (Init_Random): initialize random seed at the
25803           beginning.
25805 Thu Aug 31 13:12:06 2006  why the lucky stiff  <why@ruby-lang.org>
25807         * eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
25808           along with ruby_cref, for use by the sandbox. [ruby-core:08762]
25810         * node.h: ditto.
25812 Wed Aug 30 12:01:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25814         * numeric.c (flo_hash): improve collision.
25816         * string.c (rb_memhash): new generic function to calculate hash value
25817           for memory chunk.
25819 Tue Aug 29 19:10:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25821         * hash.c (rb_hash_s_create): fixed memory leak, based on the patch
25822           by Kent Sibilev <ksruby at gmail.com>.  fixed: [ruby-talk:211233]
25824 Mon Aug 28 11:29:46 2006  Eric Hodel  <drbrain@segment7.net>
25826         * eval.c, parse.y: Revert.
25827         * ext/.document: Add digest.c.
25828         * ext/digest/digest.c: Make RDoc show up.
25829         * ext/io/wait.c: Fix call-seq in RDoc.
25831 Mon Aug 28 08:03:20 2006  Eric Hodel  <drbrain@segment7.net>
25833         * ext/.document: Add C files with RDoc.
25834         * ext/digest/digest.c: Convert to RDoc.
25835         * ext/io/wait.c: ditto.
25836         * lib/rdoc/parsers/parse_rb.rb: Fix typo.  Submitted by
25837           <calamitas at gmail.com>.  [ruby-core:08724]
25839 Mon Aug 28 07:21:47 2006  Eric Hodel  <drbrain@segment7.net>
25841         * file.c (File#size?): Fix documentation submitted by Rick Ohnemus.
25842           ruby-Bugs-5529.  [ruby-core:08725]
25844 Sun Aug 27 21:41:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25846         * oniguruma.h: Version 4.4.0
25848         * regint.h: ditto.
25850         * regparse.h: ditto.
25852         * regexec.c: ditto.
25854         * regcomp.c ditto.
25856         * regparse.c: ditto.
25858 Sat Aug 26 08:03:03 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25860         * lib/date.rb, lib/date/format.rb: updated based on date2 3.8.2.
25862 Fri Aug 25 21:15:22 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25864         * common.mk: add regint.h and oniguruma.h to dependence.
25866         * ext/strscan/depend: ditto.
25868 Fri Aug 25 20:35:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25870         * test/wsdl/document/echo.rb: removed.
25872         * test/wsdl/document/test_rpc.rb: remove echo.rb after test.
25873           [ruby-dev:29337]
25875 Fri Aug 25 17:02:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25877         * gc.c (gc_sweep): typo fixed.
25879 Fri Aug 25 16:05:50 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25881         * object.c (sym_call): check if the receiver is given.
25883 Fri Aug 25 01:10:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25885         * object.c (rb_Integer): Integer(nil) should raise TypeError.
25886           [ruby-talk:210205]
25888         * object.c (nil_to_s): no longer returns empty string but "nil".
25889           [ruby-talk:210205]
25891         * lib/mkmf.rb: avoid COMMON_HEADERS being nil.
25893 Wed Aug 23 00:25:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25895         * lib/rexml/source.rb (REXML::IOSource#initialize): encoding have to
25896           be set with the accessor.  fixed: [ruby-list:42737]
25898 Tue Aug 22 19:21:00 2006  Minero Aoki  <aamine@loveruby.net>
25900         * lib/net/smtp.rb: parameter `to_addrs' might be an Array,
25901           .flatten is required. [ruby-dev:29316]
25903 Tue Aug 22 18:47:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25905         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_method):
25906           rdoc documents C module methods as instance methods. a patch in
25907           [ruby-core:08536].
25909 Tue Aug 22 12:35:57 2006  NARUSE, Yui  <naruse@ruby-lang.org>
25911         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): fix regexp for
25912           euc-jp [ruby-dev:29344]
25914 Sun Aug 20 11:46:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25916         * numeric.c (num_step): also return an enumerator object if no block
25917           is given.
25919 Sat Aug 19 16:47:51 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
25921         * ext/win32ole/win32ole.c (hash2named_arg): accept hash argument
25922           of symbol key.
25924         * test/win32ole/test_win32ole.rb
25925           ditto.
25927 Sat Aug 19 11:28:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25929         * file.c (rb_file_s_rename): use errno if set properly.
25930           fixed: [ruby-dev:29293]
25932 Fri Aug 18 01:05:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25934         * lib/cgi.rb (CGI::out): specify -m0 to disable MIME decode.  a
25935           patch from Fujioka <fuj at rabbix.jp>.  [ruby-dev:29284]
25937 Thu Aug 17 19:15:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25939         * file.c (rb_stat_[rRwWxX]): check for super user.
25940           fixed: [ruby-core:08616]
25942 Thu Aug 17 14:47:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25944         * lib/mkmf.rb: added rdoc by Daniel Berger.  [ruby-core:08177]
25946 Wed Aug 16 17:46:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25948         * marshal.c (r_byte): IO#getc returns one byte string now.
25949           fixed: [ruby-dev:29255]
25951 Wed Aug 16 17:22:44 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25953         * common.mk (pre-install-local): remove unnecessary code.
25954           [ruby-dev:29249]
25956 Wed Aug 16 11:45:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25958         * process.c (proc_setuid, proc_setgid, proc_seteuid, proc_setegid):
25959           get rid of bogus implementations on Mac OS X.
25961 Wed Aug 16 11:09:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25963         * ruby.c (set_arg0): fill argv other than the first with an empty
25964           string instead of NULL.
25966 Tue Aug 15 11:21:08 2006  Minero Aoki  <aamine@loveruby.net>
25968         * lib/net/smtp.rb: support SMTP/SSL.  Thanks Kazuhiro NISHIYAMA.
25970         * lib/net/smtp.rb: new method SMTP.use_ssl?
25972         * lib/net/smtp.rb: new method SMTP.enable_ssl.
25974         * lib/net/smtp.rb: new method SMTP.disable_ssl.
25976         * lib/net/smtp.rb: new method SMTP.default_ssl_port.
25978         * lib/net/smtp.rb: new method SMTP.default_tls_port.
25980         * lib/net/smtp.rb: now SMTP#enable_tls accepts a SSLContext
25981           object, instead of a verity and cert.  [FEATURE CHANGE]
25983         * lib/net/smtp.rb: new method SMTP.ssl_context.
25985         * lib/net/smtp.rb: new method SMTP.default_ssl_context.
25987         * lib/net/smtp.rb: export SMTP.authenticate.
25989         * lib/net/smtp.rb: export SMTP.auth_plain.
25991         * lib/net/smtp.rb: export SMTP.auth_login.
25993         * lib/net/smtp.rb: export SMTP.auth_cram_md5.
25995         * lib/net/smtp.rb: export SMTP.starttls.
25997         * lib/net/smtp.rb: export SMTP.helo.
25999         * lib/net/smtp.rb: export SMTP.ehlo.
26001         * lib/net/smtp.rb: export SMTP.mailfrom.
26003         * lib/net/smtp.rb: export SMTP.rcptto.
26005         * lib/net/smtp.rb: export SMTP.rcptto_list.
26007         * lib/net/smtp.rb: export SMTP.data.
26009         * lib/net/smtp.rb: export SMTP.quit.
26011 Sat Aug 12 22:33:06 2006  Eric Hodel  <drbrain@segment7.net>
26013         * string.c (String#split): Describe grouping behavior.  Patch by Jan
26014           Svitok <jan.svitok at gmail.com>.  [ruby-core:08603]
26016 Sun Aug 13 12:08:02 2006  Tanaka Akira  <akr@fsij.org>
26018         * ext/socket/socket.c: ANSIfied.  [ruby-core:08601]
26020 Sat Aug 12 15:55:32 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26022         * configure.in, bcc32/Makefile.sub, win32/Makefile.sub, win32/dir.h,
26023           win32/win32.c, win32/win32.h: large file support for win32.
26025 Fri Aug 11 15:39:25 2006  Eric Hodel  <drbrain@segment7.net>
26027         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_body): Make RDoc
26028           ignore C function prototypes.  Patch by Tilman Sauerbeck
26029           <tilman at code-monkey.de>.  [ruby-core:8574]
26030         * lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
26031           documented.
26033 Wed Aug  9 16:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26035         * lib/net/smtp.rb (Net::SMTP::auth_cram_md5): use ord to retrieve
26036           bytes from strings.  a patch from WATANABE Tetsuya
26037           <Tetsuya.WATANABE at nifty.com>.  [ruby-dev:29240]
26039 Tue Aug  8 23:49:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26041         * lib/irb/extend-command.rb (IRB::ExtendCommandBundle): pacify
26042           RDoc.  a patch from Eric Hodel <drbrain at segment7.net>.
26043           [ruby-core:08522]
26045 Tue Aug  8 19:26:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26047         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_string):
26048           affected by str[0] returns 1 char string.  [ruby-dev:29223]
26050         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_labels):
26051           ditto.
26053 Tue Aug  8 12:28:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26055         * parse.y (arg): allow newlines before ternary colon.  [ruby-dev:29189]
26057 Mon Aug  7 17:56:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26059         * ext/bigdecimal/bigdecimal.c, ext/digest/rmd160/rmd160ossl.c,
26060           ext/digest/sha1/sha1ossl.c, ext/readline/readline.c: move
26061           inclusion of config.h to pacify AIX.  a patch from Yutaka
26062           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29197]
26064 Mon Aug  7 15:55:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26066         * ext/syck/syck.c (syck_move_tokens): should avoid negative
26067           memmove.  [ruby-list:42625]
26069 Mon Aug  7 14:37:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26071         * configure.in, common.mk: AIX link issue.  a patch from Yutaka
26072           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29190]
26074         * ext/socket/socket.c: AIX socket support.  [ruby-dev:29190]
26076 Mon Aug  7 12:05:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26078         * dln.c, eval.c, gc.c, ruby.h: shut up AIX alloca warning.
26079           a patch from Yutaka Kanemoto <kinpoco at gmail.com>.
26080           [ruby-dev:29191]
26082 Sun Aug  6 20:34:24 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26084         * lib/date/format.rb (str[fp]time): %[EO]U didn't denote %U.
26086 Sun Aug  6 17:12:12 2006  Tanaka Akira  <akr@fsij.org>
26088         * io.c (io_reopen): STDERR.reopen(open("/dev/tty", "w")) should not
26089           clear FMODE_PREP in STDERR.
26091 Sat Aug  5 22:53:41 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26093         * oniguruma.h: Version 4.2.2
26095         * regint.h: ditto.
26097         * regparse.h: ditto.
26099         * regexec.c: ditto.
26101         * regcomp.c ditto.
26103         * regerror.c: ditto.
26105         * regparse.c: ditto.
26107 Sat Aug  5 17:07:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26109         * parse.y (top_local_setup): local_vars[-1] should point
26110           ruby_scope itself to protect local_tbl from garbage collection.
26111           [ruby-dev:29049]
26113 Sat Aug  5 13:49:43 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26115         * lib/date/format.rb (str[fp]time): "%\n" means "\n".
26117 Fri Aug  4 12:13:22 2006  Eric Hodel  <drbrain@segment7.net>
26119         * lib: Clean up files for RDoc.
26120         * lib/.document: Include most of the standard library in RDoc
26121           generation.
26122         * lib/rdoc/ri/ri_formatter.rb: Don't unescape HTML in HtmlFormatter.
26123           Submitted by <ksruby at gmail.com>.  [ruby-core:08392].
26124         * lib/drb/ssl.rb: Close socket on SSLError [ruby-core:7197]
26126 Fri Aug  4 18:59:49 2006  Keiju Ishitsuka  <keiju@ruby-lang.org>
26128         * lib/irb/{init.rb,ruby-lex.rb,slex.rb}: can't input '\c' for
26129           [ruby-core: 7122]. and support for ruby1.8.X
26131 Fri Aug  4 14:02:14 2006  James Edward Gray II  <james@grayproductions.net>
26133         * lib/date/format.rb (__strptime, strftime): allow multi-line patterns
26134           in Date#strftime the same as Time#strftime accepts.
26135           fixed: [ruby-core:08466]
26137 Fri Aug  4 13:56:51 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26139         * pack.c (pack_pack): check argument overrun for 'P'.  based on a
26140           patch by rucila <rucila at yahoo.cojp>.  fixed: [ruby-dev:29182]
26142 Fri Aug  4 02:42:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26144         * sprintf.c (rb_str_format): a bug in %c type check.
26146 Fri Aug  4 01:28:19 2006  Tanaka Akira  <akr@fsij.org>
26148         * io.c (io_reopen): STDERR.reopen(File.open("/dev/null", "w")) should
26149           not fclose stderr.
26151 Thu Aug  3 15:16:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26153         * range.c (range_include): should always call Enumerable#include?
26154           (not #===) for non numeric end points.  [ruby-core:08477]
26155           [ruby-core:08496]
26157 Mon Jul 31 16:51:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26159         * win32/win32.c (exit_handler): new function; release winsock and
26160           environment work area.
26162         * win32/win32.c (NTInitialize): setup exit_handler.
26164         * win32/win32.c (StartSockets): use exit_handler.
26166         * win32/win32.c (rb_w32_getenv): use GetEnvironmentStrings() instead
26167           of GetEnvironmentVariable(), because the latter cannot distinguish
26168           whether a null environment variable exists or not.
26169           fixed: [ruby-talk:205123]
26171 Mon Jul 31 16:15:13 2006  Tanaka Akira  <akr@fsij.org>
26173         * test/ruby/test_process.rb (TestProcess#test_rlimit_nofile):
26174           setrlimit may fail with EINVAL.
26175           reported by MIYAMUKO Katsuyuki.  [ruby-dev:29174]
26177 Mon Jul 31 09:22:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26179         * ruby.h: use ifdef (or defined) for macro constants that may or
26180           may not be defined to shut up gcc's -Wundef warnings.
26181           [ruby-core:08447]
26183 Mon Jul 31 13:38:13 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26185         * lib/webrick/httprequest.rb (WEBrick::HTTPReuqest#parse_uri): improve
26186           for the value of IPv6 address in the Host: header field.
26188 Sun Jul 30 23:26:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26190         * eval.c (rb_call0): trace call/return of method defined from block.
26191           fixed: [ruby-core:08329]
26193         * eval.c (rb_trap_eval): make the current thread runnable to deal with
26194           exceptions which occurred within the trap.  fixed: [ruby-dev:27729]
26196         * lib/cgi/session.rb, lib/cgi/session/pstore.rb: suppress warnings.
26197           fixed: [ruby-talk:204896]
26199 Sat Jul 29 06:12:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26201         * ext/tk/lib/multi-tk.rb: freeze ip_name for security reason.
26203 Sat Jul 29 01:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26205         * lib/logger.rb: improves the amount of documentation that Rdoc
26206           picks up when processing logger.rb by moving the require
26207           statement back before the comment block.  a patch from Hugh
26208           Sasse <hgs at dmu.ac.uk>.  [ruby-core:08422]
26210 Fri Jul 28 17:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26212         * ext/curses/curses.c (NUM2CH, CH2FIX): use single char strings.
26214 Fri Jul 28 14:09:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26216         * eval.c (rb_call): fixed typo in cache look-up.  [ruby-dev:29167]
26218 Fri Jul 28 10:41:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26220         * eval.c (rb_call): a bug in method cache look-up.
26221           http://www.rubyist.net/~matz/20060720.html#c04
26223 Fri Jul 28 10:19:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26225         * sprintf.c (rb_f_sprintf): documentation update patch from Jacob
26226           Fugal <lukfugl at gmail.com>.  [ruby-core:08418]
26228 Fri Jul 28 09:41:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26230         * time.c (time_to_s): fixed typo.  [ruby-dev:29162]
26232 Fri Jul 28 00:26:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26234         * math.c (domain_check): ANSI style function arguments
26236         * math.c (math_log): too few argument to domain_check().
26238 Thu Jul 27 21:19:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26240         * math.c (domain_check): a new function to check domain error
26241           explicitly for systems that return NaN like FreeBSD.
26242           [ruby-core:07019]
26244         * math.c (math_acos, math_asin, math_acosh, math_atanh, math_log,
26245           math_log10, math_sqrt): use domain_check().
26247         * math.c (math_sqrt): fix documentation flaw.
26249 Thu Jul 27 22:21:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26251         * time.c (time_to_s): fixed format mismatch.
26253 Thu Jul 27 18:12:12 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26255         * time.c: need to declare time_utc_offset.
26257 Thu Jul 27 17:01:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26259         * io.c (io_close): always calls "close" method of the receiver.
26260           [ruby-core:6911] [ruby-core:8112]
26262 Thu Jul 27 16:41:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26264         * ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
26265           Solaris compiler.  [ruby-core:08114]
26267         * time.c (time_to_s): use +0900 style timezone string for local time.
26268           [ruby-dev:29143]
26270 Wed Jul 26 22:20:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26272         * configure.in: add support for as and ASFLAGS.  [ruby-dev:29138]
26274 Wed Jul 26 21:59:33 2006  Minero Aoki  <aamine@loveruby.net>
26276         * lib/net/http.rb (Net::HTTP#post, request_post, request): should
26277           set Content-Type: x-www-form-urlencoded by default.
26279         * lib/net/http.rb (Net::HTTPHeader#content_type): should return
26280           nil when there's no Content-Type.
26282         * lib/net/http.rb (Net::HTTPHeader#sub_type): should return nil
26283           when there's no sub Content-Type (e.g. "Content-Type: text").
26285         * lib/net/http.rb (Net::HTTPHeader#type_params): wrongly failed
26286           when there's no Content-Type.
26288 Wed Jul 26 18:38:13 2006  Minero Aoki  <aamine@loveruby.net>
26290         * ext/strscan/strscan.c (strscan_do_scan): always return nil if
26291           p->curr exceeds string size.
26293 Wed Jul 26 18:33:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26295         * eval.c (Init_eval): rename #invoke_method and
26296           #invoke_functional_method to __send and __send! respectively.
26298         * eval.c (remove_method): prohibit removing __send and __send!.
26300         * eval.c (rb_undef): prohibit undef'ing  __send and __send!.
26302         * eval.c (rb_eval): prohibit redefining  __send and __send!.
26304         * lib/delegate.rb (Delegator): preserve __send.
26306 Wed Jul 26 18:14:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26308         * ext/pty/pty.c (getDevice): retry once after GC on failure.
26309           [ruby-core:08282]
26311 Wed Jul 26 17:43:20 2006  Minero Aoki  <aamine@loveruby.net>
26313         * ext/strscan/strscan.c (strscan_do_scan):
26314           StringScanner.new("").scan(//) should return "". [ruby-Bugs:4361]
26316 Wed Jul 26 17:28:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26318         * sprintf.c (rb_str_format): prepend ".." to %u for negative bignum,
26319           but not "-".  fixed: [ruby-core:08167]
26321 Wed Jul 26 16:39:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26323         * string.c (rb_str_scan): add string modification check.
26324           [ruby-core:7216]
26326 Wed Jul 26 16:06:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26328         * lib/cgi.rb (CGI::QueryExtension::read_multipart): check
26329           multipart boundary end.  a patch from Fujioka <fuj at rabbix.jp>
26330           [ruby-dev:28470]
26332 Wed Jul 26 01:02:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26334         * configure.in: suppress warnings by automake 1.8 or later.
26336 Tue Jul 25 14:46:14 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26338         * lib/mkmf.rb (configuration): typo.
26340 Tue Jul 25 13:14:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26342         * process.c (rb_proc_times): rename hz to hertz to avoid name
26343           crash on AIX.  [ruby-dev:29126]
26345 Mon Jul 24 22:03:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26347         * eval.c (backtrace): skip frames successive on node and method name.
26349 Mon Jul 24 15:51:52 2006  Tanaka Akira  <akr@fsij.org>
26351         * ext/readline/readline.c (readline_readline): rl_deprep_term_function
26352           may be NULL with libedit.  reported by Ryan Davis.  [ruby-dev:29070]
26354 Mon Jul 24 15:19:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26356         * eval.c (rb_call0): revert last change.  [ruby-dev:29112]
26357           [ruby-core:08374]
26359 Sun Jul 23 22:59:49 2006  Tanaka Akira  <akr@fsij.org>
26361         * test/socket/test_unix.rb: disabled on cygwin.
26362           reported by Kouhei Yanagita.  [ruby-dev:29080]
26364 Fri Jul 21 23:57:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26366         * ruby.c (proc_options): script is never used while recursing.
26368 Fri Jul 21 21:21:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26370         * eval.c (rb_call0): include funcalled methods in caller list.
26371           fixed: [ruby-core:08290]
26373 Fri Jul 21 17:52:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26375         * object.c (rb_cstr_to_dbl): "9_e8" should consider "_e8" as
26376           trailing garbage so that it should return 9.0.  [ruby-dev:29088]
26378 Fri Jul 21 12:11:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26380         * ext/extmk.rb, lib/mkmf.rb (with_destdir): remove drive letter before
26381           prepending destdir on DOSISH.
26383 Fri Jul 21 04:17:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26385         * eval.c (rb_call): try local method look-up first for fcall, then
26386           normal method look-up.  [ruby-talk:202564]
26388         * eval.c (rb_get_method_body): save local method cache separately.
26390         * eval.c (search_method): export info whether method is local or
26391           not.
26393 Thu Jul 20 20:27:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26395         * object.c (rb_mod_attr): make Module#attr to be an alias to
26396           attr_reader.  [RCR#331]
26398 Thu Jul 20 15:07:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26400         * ruby.h: export classes/modules to implement sandbox.
26401           [ruby-core:08283]
26403 Wed Jul 19 19:40:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26405         * eval.c (rb_yield_0): should check args_args before lambda
26406           argument check.  [ruby-dev:29029]
26408 Tue Jul 18 23:53:59 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26410         * process.c (rb_f_system): shouldn't block SIGCHLD if it's not
26411           exist.
26413 Tue Jul 18 22:10:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26415         * process.c (rb_f_system): block SIGCHLD during the process
26416           execution, like glibc system(3) does.  [ruby-talk:202361]
26418 Tue Jul 18 23:10:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26420         * win32/win32.c (open_ifs_socket): should not use plain malloc.
26422         * win32/win32.c (rb_w32_opendir): should not use plain realloc.
26424 Tue Jul 18 18:05:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26426         * test/ruby/test_float.rb (TestFloat::test_strtod): update test to
26427           conform strtod change.
26429 Tue Jul 18 16:52:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26431         * eval.c (yield_under_i): argument should be passed in avalue
26432           form.  [ruby-dev:29044]
26434 Tue Jul 18 15:49:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26436         * pack.c (pack_unpack): propagate association array to copied
26437           string.  [ruby-core:08223]
26439         * pack.c (pack_unpack): return referenced string itself if it has
26440           same length as specified.  a patch from <nobu at ruby-lang.org>
26441           in [ruby-core:08225].
26443         * pack.c (pack_pack): taint 'p' packed strings.
26445 Tue Jul 18 15:19:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26447         * intern.h (st_foreach_safe): fix prototype.
26449         * node.h (NODE_LMASK): bigger than long on LLP64.
26451         * missing/vsnprintf.c (BSD__uqtoa): new function to support LLP64.
26452           all changes are derived from [ruby-dev:29045]
26454 Tue Jul 18 14:03:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26456         * lib/webrick/httpserver.rb (WEBrick::HTTPServer::unmount): remove
26457           inpect argument from sprintf.  [ruby-dev:29039]
26459 Tue Jul 18 10:53:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26461         * object.c (rb_cstr_to_dbl): limit out-of-range message.
26463         * util.c (ruby_strtod): return end pointer even if ERANGE occurred.
26464           fixed: [ruby-dev:29041]
26466 Mon Jul 18 00:43:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26468         * util.c (ruby_strtod): stop at dot not followed by digits.
26469           fixed: [ruby-dev:29036]
26471 Tue Jul 18 00:01:27 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26473         * ext/extmk.rb: remove LIBRUBY_SO if static linked extensions exist.
26475 Mon Jul 17 23:30:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26477         * configure.in (rb_cv_msvcrt): defaulted to msvcrt.  Workaround for a
26478           bug of cygwin 1.5.20.
26480 Mon Jul 17 22:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26482         * ext/io/wait/wait.c (io_ready_p): protoize.
26484 Mon Jul 17 13:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26486         * pack.c (define_swapx): should not use plain malloc.
26488         * ext/curses/curses.c (curses_getmouse): ditto.
26490 Mon Jul 17 12:58:41 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26492         * configure.in: should use ac_cv_lib_dl_dlopen=no on MinGW.
26494 Mon Jul 17 11:47:35 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26496         * st.c: still need to include config.h on some platforms.
26498 Sat Jul 15 01:09:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26500         * st.c (malloc): use xmalloc/xcalloc instead of plain
26501           malloc/calloc, to detect memory allocation failure.  see
26502           <http://www.nongnu.org/failmalloc/>.
26504 Fri Jul 14 13:08:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26506         * ext/tk/lib/tk.rb: add methods for new features of latest Tcl/Tk8.5.
26508         * ext/tk/lib/tk/namespace.rb: ditto.
26510 Fri Jul 14 02:30:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26512         * lib/monitor.rb: document patch from Hugh Sasse <hgs at dmu.ac.uk>.
26513           [ruby-core:08205]
26515 Fri Jul 14 00:10:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26517         * array.c (rb_ary_pop): may cause realloc oscillation.  a patch
26518           from MORITA Naoyuki <mlgetter at kidou.sakura.ne.jp>.
26519           [ruby-dev:29028]
26521 Thu Jul 13 22:23:56 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26523         * ext/tk/lib/tk/composite.rb: improve handling of the classname on the
26524           option database for the widget class which includes TkComposite.
26526 Thu Jul 13 00:40:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26528         * ruby.h (FIX2LONG): returns integer of size of VALUE.
26529           [ruby-dev:29024]
26531         * ruby.h (FIX2ULONG): ditto.
26533 Wed Jul 12 20:05:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26535         * parse.y (f_args): allow post mandatory arguments after optional
26536           arguments.  [ruby-dev:29014]
26538         * parse.y (new_args_gen): allow post_args without rest_args.
26540         * eval.c (formal_assign): ditto.
26542         * parse.y (new_args_gen): check post argument duplication.
26544 Tue Jul 11 20:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26546         * ruby.h: export rb_cMethod.  [ruby-talk:201259]
26548 Tue Jul 11 19:13:33 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26550         * ext/tk/lib/multi-tk.rb: remove restriction on the class of
26551           pseudo-toplevel.
26553 Tue Jul 11 18:00:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26555         * ext/tk/lib/multi-tk.rb: security fix.
26557 Tue Jul 11 17:28:08 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26559         * string.c (rb_str_dump): need to extend len for \b.
26561 Tue Jul 11 15:29:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26563         * bignum.c (rb_int2big): use SIGNED_VALUE.  [ruby-dev:29019]
26565         * bignum.c (rb_int2inum, rb_uint2inum): use VALUE sized integer.
26567         * bignum.c (rb_big2long, rb_big2ulong): ditto.
26569         * numeric.c (rb_num2long, rb_num2ulong): ditto.
26571         * numeric.c (check_int, check_uint): ditto.
26573         * bignum.c (rb_quad_pack): typo fixed.
26575 Tue Jul 11 13:40:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26577         * bignum.c (bignorm): sizeof(long) may be smaller than
26578           sizeof(VALUE).  [ruby-dev:29013]
26580         * ruby.h (FIXNUM_MAX): fixnum may be bigger than long.
26582         * ruby.h (SIGNED_VALUE): signed integer of size of VALUE.
26584 Mon Jul 10 23:37:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26586         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_doc): remove
26587           splat star from return statements.
26589         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_obj): retrieve
26590           the first value from the result array if response has only one
26591           value.
26593 Mon Jul 10 22:00:00 2006  Shigeo Kobayashi  <shigek@ruby-lang.org>
26595         * ext/bigdecimal/bigdecimal.c: Allows '_' to appear within
26596           digits.  [ruby-dev:28872]
26598         * ext/bigdecimal/lib/bigdecimal/util.rb: Bug in to_r reported by
26599           [ruby-list:42533] fixed.
26601 Mon Jul 10 19:22:19 2006  Tanaka Akira  <akr@fsij.org>
26603         * gc.c (gc_sweep): expand heap earlier.
26604           reported by MORITA Naoyuki.  [ruby-dev:28960]
26606 Mon Jul 10 18:59:34 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26608         * ext/tk/lib/tk/font.rb: sorry. mistaken to patch.
26610 Mon Jul 10 18:46:52 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26612         * ext/tk/tcltklib.c: make SEGV risk lower at exit.
26614         * ext/tk/lib/tk.rb: ditto.
26616         * ext/tk/lib/multi-tk.rb: fail to call function-style methods on slave
26617           interpreters. The strategy (MultiTkIp_PseudoToplevel_Evaluable) to
26618           fix the problem is a little tricky. You may have to take care of
26619           conflicting with it.
26621         * ext/tk/lib/tk.rb: a little change for the pseudo-toplevel strategy.
26623         * ext/tk/lib/tk/font.rb: ditto.
26625         * ext/tk/lib/tk/msgcat.rb: ditto.
26627         * ext/tk/lib/tkextlib/itk/incr_tk.rb: ditto.
26629         * ext/tk/sample/demos-en/widget: fail to call function-style methods
26630           on sample scripts. To fix it, a strategy which similar to the way
26631           on MultiTiIp is used. Please take care when re-write and re-run a
26632           demo script on the Widget-Demo code viewer.
26634         * ext/tk/sample/demos-jp/widget: ditto.
26636 Mon Jul 10 17:32:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26638         * sample/test.rb: update test suites.
26640         * test/ruby/test_assignment.rb (TestAssignment::test_yield): ditto.
26642         * test/ruby/test_iterator.rb (TestIterator::test_itertest): ditto.
26644 Mon Jul 10 14:43:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26646         * eval.c (rb_call): remove erroneously restored prot_tag->blkid
26647           initialization.  [ruby-dev:28997]  [ruby-dev:29000]
26649 Mon Jul 10 13:58:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26651         * signal.c (install_nativethread_sighandler): commented out.
26653 Mon Jul 10 09:29:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26655         * eval.c (rb_clear_cache_for_remove): clear entries for included
26656           module.  fixed: [ruby-core:08180]
26658 Mon Jul 10 02:22:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26660         * eval.c (proc_invoke): should not overwrite block information in
26661           current frame.  [ruby-dev:28957]
26663         * eval.c (rb_yield_0): retrieve proper block object from the frame
26664           record.
26666         * eval.c (proc_alloc): return preserved block object if it's
26667           available.
26669 Mon Jul 10 01:48:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26671         * st.h (st_data_t): use pointer sized integer for st_data_t.
26672           [ruby-dev:28988]
26674 Sun Jul  9 18:06:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26676         * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling.
26678         * lib/mkmf.rb (create_makefile): prevent substitution of macro
26679           definition.  fixed: http://www.yotabanana.com/lab/20060624.html#p02
26681 Sun Jul  9 07:58:48 2006  Ryan Davis  <ryand@zenspider.com>
26683         * lib/rdoc/parsers/parse_f95.rb: massive overhaul from Yasuhiro
26684           Morikawa including new file suffixes, function support, public
26685           variables and constants, derived-types, defined operators and
26686           assignments, namelists, and subroutine and function
26687           arguments. Truly massive.
26689         * lib/rdoc/diagram.rb: diagrams are now cached.
26691         * lib/irb/completion.rb: fixed a crasher when completing against
26692           an unnamed class/module.
26694         * lib/rdoc/parsers/parse_c.rb: private comment (--/++) support in
26695           C-file rdoc.
26697         * lib/debug.rb: minor clarification in help.
26699         * lib/pp.rb: minor clarification on exception.
26701 Sun Jul  9 00:54:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26703         * eval.c (next_jump): deal with destination of next.
26704           fixed: [ruby-core:08169]
26706 Fri Jul  7 17:49:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26708         * string.c (rb_str_ord): extract lower byte.  fixed: [ruby-dev:28980]
26710         * lib/jcode.rb (String#succ!): fix for 1.9.  fixed: [ruby-dev:28979]
26712 Fri Jul  7 14:05:03 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26714         * win32/Makefile.sub (config.h): define FUNC_STDCALL/FUNC_CDECL.
26715           from [ruby-dev:28970].
26717 Fri Jul  7 00:38:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26719         * hash.c (rb_hash_default): should not call default procedure if
26720           no key is given.  [ruby-list:42541]
26722 Thu Jul  6 23:30:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26724         * process.c (rb_proc_times): use sysconf(_SC_CLK_TCK) value prior to
26725           HZ and CLK_TCK.  fixed: [ruby-talk:200293]
26727 Thu Jul  6 21:50:06 2006  Minero Aoki  <aamine@loveruby.net>
26729         * ext/racc/cparse/cparse.c: sync with original code, rev 1.8.
26731         * ext/racc/cparse/cparse.c: should mark CparseParams objects.
26733         * lib/racc/parser.rb: sync with original code, rev 1.8.
26735         * lib/racc/parser.rb: update coding style.
26737 Wed Jul  5 05:28:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26739         * parse.y (block_param): should allow block argument after splat
26740           and post splat args.
26742 Wed Jul  5 01:12:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26744         * test/ruby/test_lambda.rb (TestLambdaParameters::test_lambda_as_iterator):
26745           -> style block no longer available.  [ruby-dev:28958]
26747 Tue Jul  4 21:48:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26749         * ruby.c (proc_options): suppress warning on DOSISH.
26751 Tue Jul  4 15:12:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26753         * eval.c (rb_call): should not set prot_tag->blkid since it would
26754           never catch breaks at this level.  [ruby-dev:28922]
26756 Tue Jul  4 04:48:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26758         * bignum.c: ruby 1.9 HEAD 64 bit warnings clean up from
26759           <ville.mattila at stonesoft.com>.   [ruby-core:08120]
26761 Mon Jul  3 19:04:38 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26763         * ext/tk/tcltklib.c (ip_make_menu_embeddable): help to make a menu
26764           widget embeddable (pack, grid, and so on) like as a general widget.
26765           However, an embeddable menu may require to be defined some event
26766           bindings for general use.
26768         * ext/tk/lib/tk/event.rb: [bug fix] Tk.callback_break and
26769           Tk.callback_continue don't work on MultiTkIp.
26771         * ext/tk/lib/multi-tk.rb: ditto.
26773         * ext/tk/lib/tk.rb: lack of Tk.callback_return.
26775         * ext/tk/lib/tk/menu.rb: improve creating clone menus.
26777 Mon Jul  3 14:42:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26779         * ext/etc/extconf.rb (PW_UID2VAL, PW_GID2VAL): defaulted to conversion
26780           from int, and sys/types.h needs to be included before grp.h.
26781           fixed: [ruby-dev:28938]
26783 Mon Jul  3 10:44:01 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26785         * io.c (popen_exec): close file descriptors other than standard I/Os.
26786           fixed: [ruby-dev:28924]
26788 Mon Jul  3 05:15:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26790         * test/openssl/test_asn1.c: String#[]= doesn't accept Integer.
26792 Mon Jul  3 01:14:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26794         * string.c (rb_str_inspect): encode \b (\010) for escape.
26795           [ruby-dev:28927]
26797         * string.c (rb_str_dump): ditto.
26799 Sun Jul  2 19:03:30 2006  Minero Aoki  <aamine@loveruby.net>
26801         * ext/racc/cparse/cparse.c: sync with original code, rev 1.7.
26803         * ext/racc/cparse/cparse.c: must require version.h to get
26804           RUBY_VERSION_CODE.
26806 Sun Jul  2 18:42:27 2006  Minero Aoki  <aamine@loveruby.net>
26808         * ext/racc/cparse/cparse.c: sync with original source code, rev
26809           1.6.
26811         * ext/racc/cparse/cparse.c: do not use rb_iterate to give a block
26812           to the method, use rb_block_call instead. [ruby-dev:28445]
26814 Sun Jul  2 11:22:03 2006  Tanaka Akira  <akr@m17n.org>
26816         * io.c (io_reopen): STDOUT.reopen(filename, "w+") didn't work.
26817           (rb_io_reopen): STDOUT.reopen(File.open(filename, "w+")) didn't work.
26819 Sat Jul  1 23:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26821         * eval.c (PUSH_FRAME): initialize frame->self.  [ruby-dev:28911]
26823 Sat Jul  1 17:00:42 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26825         * test/webrick/utils.rb: use Proc#yield instead of Proc#call.
26826           [ruby-dev:28914]
26828 Sat Jul  1 15:15:49 2006  Tanaka Akira  <akr@m17n.org>
26830         * test/socket/test_nonblock.rb: add timeout to send/receive
26831           an empty UDP packet.
26832           [ruby-dev:28820]
26834 Fri Jun 30 23:46:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26836         * configure.in: should test isinf for Solaris with GCC compiler.
26837           a patch from <ville.mattila at stonesoft.com>.  [ruby-core:07791]
26839         * configure.in: -shared patch from Andrew Morrow
26840           <andrew.c.morrow at gmail.com>.  [ruby-core:08100]
26842 Fri Jun 30 19:35:41 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26844         * lib/webrick/httputils.rb (WEBrick::HTTPUtils._escape): should
26845           use String#ord to get ascii code from the one-character string.
26846           [ruby-dev:28901]
26848 Thu Jun 29 23:56:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26850         * gc.c (gc_mark_children): a bug in NODE_BLOCK_PASS marking.
26851           [ruby-dev:28908]
26853 Thu Jun 29 23:04:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26855         * parse.y: use ARGSPUSH instead of ARGSCAT to prevent too much
26856           splat expansion.
26858         * eval.c (when_check): need to handle ARGSPUSH as well.
26860         * eval.c (block_orphan): lambda and proc from method are always
26861           orphan.
26863         * gc.c (gc_mark_children): proper marking for NODE_LAMBDA.
26865 Thu Jun 29 22:47:30 2006  Tanaka Akira  <akr@m17n.org>
26867         * eval.c (SETUP_ARGS0): avoid GC problem.
26868           [ruby-dev:28902]
26870 Thu Jun 29 18:58:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26872         * ext/bigdecimal/bigdecimal.c (BigDecimal_version): fix patch
26873           failure.
26875 Thu Jun 29 18:00:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26877         * ext/bigdecimal/bigdecimal.c: add RDoc document.  a patch from
26878           mathew <meta at pobox.com>.   [ruby-core:07050]
26880 Wed Jun 28 14:53:09 2006  Eric Hodel  <drbrain@segment7.net>
26882         * lib/optparse.rb: RDoc patch from Robin Stocker <robin@nibor.org>
26883           [ruby-core:08087]
26885 Wed Jun 28 23:23:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26887         * object.c (rb_cstr_to_dbl): underscores should appear only
26888           between digits.  [ruby-dev:28891]
26890 Wed Jun 28 19:04:34 2006  Tanaka Akira  <akr@m17n.org>
26892         * test/socket/test_unix.rb: test_seqpacket_pair removed.
26893           [ruby-dev:28846]
26895 Wed Jun 28 13:51:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26897         * eval.c (when_check): arbitrary values are allowed after splats.
26898           fixed: [ruby-dev:28879]
26900 Wed Jun 28 09:16:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26902         * parse.y (primary): remove meaningless else-only case statement
26903           syntax.
26905 Wed Jun 28 08:08:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26907         * eval.c (rb_eval): problem to handle else part.  [ruby-dev:28873]
26909 Wed Jun 28 01:48:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26911         * eval.c (rb_eval): support splat in when expression list.
26912           [ruby-dev:28822]
26914         * eval.c (when_check): a new auxiliary function for case match.
26916         * eval.c (when_cond): ditto.
26918 Wed Jun 28 01:05:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26920         * object.c (rb_cstr_to_dbl): should not skip '_' at the beginning
26921           of a string.  [ruby-dev:28830]
26923         * bignum.c (rb_cstr_to_inum): ditto.
26925 Tue Jun 27 23:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26927         * string.c: RDoc update for =~ method.  a patch from Alex Young
26928           <alex at blackkettle.org>.  [ruby-core:08068]
26930 Tue Jun 27 22:47:18 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26932         * ext/tk/tcltklib.c: forgot to update TCLTKLIB_RELEASE_DATE.
26934         * ext/tk/lib/tk.rb (tk_tcl2ruby): [bug fix] sometimes fail to convert
26935           a tcl string to a ruby object if the tcl string includes "\n".
26937 Tue Jun 27 20:05:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26939         * io.c (pipe_open): backout unnecessary fix on 2006-06-26.
26940           [ruby-dev:28865]
26942         * eval.c (rb_yield_0): exact argument number check now done only
26943           for lambda Proc.
26945         * eval.c (rb_yield_0): add check for number of arguments, if
26946           there's one lambda block parameter.
26948 Tue Jun 27 16:04:05 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26950         * win32/win32.h: define isascii on MinGW for msvcrt compatibility.
26952         * configure.in: set ac_cv_header_sys_time_h=no on MinGW
26953           for msvcrt compatibility.
26955 Tue Jun 27 11:36:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26957         * ext/etc/etc.c (setup_passwd, setup_group): allow bignum uid, gid and
26958           so on.  [ruby-talk:199102]
26960 Tue Jun 27 10:46:53 2006  Tanaka Akira  <akr@m17n.org>
26962         * eval.c (rb_yield_0): avoid core dump.  [ruby-dev:28840]
26964 Mon Jun 26 11:03:00 2006  Eric Hodel  <drbrain@segment7.net>
26966         * lib/rdoc/ri: Add options to limit the ri search path.
26968 Tue Jun 27 01:31:59 2006  Tanaka Akira  <akr@m17n.org>
26970         * ext/socket/socket.c (bsock_recv_nonblock): new method
26971           BasicSocket#recv_nonblock.
26972           (udp_recvfrom_nonblock): renamed from ip_recvfrom_nonblock.
26973           IPSocket#recvfrom_nonblock is moved to UDPSocket#recvfrom_nonblock.
26974           (unix_recvfrom_nonblock): removed.
26975           UNIXSocket#recvfrom_nonblock is removed.
26977 Tue Jun 27 00:52:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26979         * ext/ripper/eventids2.c (token_assoc): added tCHAR, which is not
26980           under 256 now.  fixed: [ruby-dev:28832]
26982 Mon Jun 26 23:42:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26984         * eval.c (call_trace_func): no check for argument number of the
26985           callback.  fixed: [ruby-dev:28812]
26987 Mon Jun 26 18:37:44 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26989         * ext/tk/tcltklib.c (ip_delete): fix SEGV when a slave-ip is
26990           deleted on callback.
26992 Mon Jun 26 15:40:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26994         * ext/socket/socket.c (sock_accept): revert to avoid ambiguity of
26995           argument evaluation order.  [ruby-dev:28861]
26997         * ext/socket/socket.c (sock_accept_nonblock): ditto.
26999 Mon Jun 26 10:47:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27001         * io.c (pipe_open): avoid closing uninitialized file descriptors.
27002           a patch from <tommy at tmtm.org> [ruby-dev:28600]
27004 Sun Jun 25 23:02:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27006         * Makefile.in, mkconfig.rb: catch-up for latest autoconf.
27008 Sun Jun 25 17:44:16 2006  Tanaka Akira  <akr@m17n.org>
27010         * parse.y (paren_args): wrap $2 by escape_Qundef because it may be
27011           Qundef.  [ruby-dev:28843]
27013 Sun Jun 25 17:18:33 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27015         * ext/win32ole/win32ole.c(ole_invoke): support some kind of
27016           method of word. [ruby-Bugs#3237]
27018         * test/win32ole/test_word.rb: ditto.
27020 Sat Jun 24 23:48:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27022         * parse.y: replace terminal token names with more descriptive
27023           name, i.e. kEND to keyword_end.  [ruby-list:42477]
27025 Sat Jun 24 23:37:41 2006  Tanaka Akira  <akr@m17n.org>
27027         * eval.c (rb_eval): use rb_ary_new2 instead of rb_ary_new4 to avoid
27028           GC problem.
27029           (rb_yield_values): use rb_ary_new2 instead of rb_ary_new4.
27031         * array.c (rb_ary_new4): don't set len as n if contents is not
27032           initialized.  make it safe with GC.
27034           [ruby-dev:28826]
27036 Fri Jun 23 23:35:32 2006  Tanaka Akira  <akr@m17n.org>
27038         * ruby.h, lib/drb/drb.rb, lib/drb/invokemethod.rb: remove Values class.
27039           [ruby-dev:28805]
27041 Fri Jun 23 17:27:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27043         * eval.c (rb_block_pass): removed.
27045         * eval.c (rb_thread_start_1): use rb_proc_yield() instead of
27046           rb_block_pass().  fixed: [ruby-dev:28794]
27048 Thu Jun 22 11:52:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27050         * lib/net/http.rb (Net::HTTPResponse): duplicated error 501;
27051           HTTPInternalServerError should be error 500.  [ruby-core:08037]
27053 Thu Jun 22 11:47:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27055         * variable.c (rb_mod_name): returns nil for anonymous modules.
27056           [ruby-talk:198440]
27058 Thu Jun 22 10:31:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27060         * string.c (rb_str_aref): "abc"[3] should not return an empty
27061           string but nil.  [ruby-dev:28786]
27063 Thu Jun 22 05:15:58 2006  Tanaka Akira  <akr@m17n.org>
27065         * ext/socket/socket.c (sock_s_socketpair): try GC only once.
27066           [ruby-dev:28778]
27068 Wed Jun 21 21:20:31 2006  Tadayoshi Funaba  <tadf@dotrb.org>
27070         * lib/date.rb (jd_to_commercial): now works fine even if in
27071           mathn-ized context.
27073 Wed Jun 21 17:29:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27075         * ext/socket/getaddrinfo.c (freeaddrinfo, get_name): fixed typo.
27077         * ext/tk/tcltklib.c (tcl_eval, tcl_global_eval): ditto.
27079         * ext/zlib/zlib.c (rscheck): constified.
27081 Wed Jun 21 17:18:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27083         * lib/pp.rb (PP::PPMethods::seplist): should have preserved
27084           original reference to the array.  [ruby-dev:28747]
27086 Wed Jun 21 14:35:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27088         * parse.y (block_param): do not use multiple assignment for a sole
27089           block parameter.  [ruby-dev:28710]
27091         * eval.c (rb_yield_0): pass a raw yielded value to a sole block
27092           parameter if a value is passed by yield.
27094         * eval.c (proc_invoke): args may not be an array.
27096         * eval.c (rb_proc_yield): pass original value without wrapping
27097           it in an array.
27099 Wed Jun 21 14:06:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27101         * parse.y (method_call): remove (fn)(args) style lambda
27102           invocation, add fn.(args) instead.
27104 Wed Jun 21 08:39:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27106         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): merge Date
27107           and Time processing.  [ruby-core:08033]
27109 Wed Jun 21 03:01:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27111         * eval.c, file.c, etc.: code-cleanup patch from Stefan Huehner
27112           <stefan at huehner.org>.  [ruby-core:08029]
27114 Wed Jun 21 01:40:25 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27116         * parse.y (reswords): modifier token is no longer returned in fname
27117           state.  fixed: [ruby-dev:28775]
27119 Tue Jun 20 23:28:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27121         * ext/extmk.rb (parse_args): provisional catch-up for the recent changes.
27123         * lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto.
27125 Tue Jun 20 11:07:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27127         * eval.c (proc_invoke): intercept break and return from lambda
27128           Proc objects.  [ruby-dev:28742]
27130         * eval.c (proc_invoke): remove unnecessary YIELD_PROC_CALL flag.
27132         * eval.c (YIELD_EXACT_ARGS): renamed from YIELD_LAMBDA_CALL, which
27133           is no longer related to the behavior turned on by this flag.
27135         * eval.c (return_jump): no need to care about PROT_YIELD.
27137         * eval.c (break_jump): no jump to toplevel PROT_THREAD tag.
27139         * eval.c (rb_yield_0): fix confusion between lambda (which is a
27140           property of a proc) and pcall (which depends on whether it's
27141           called via yield or call).
27143         * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL.
27145         * eval.c (rb_block_pass): update blkid in prot_tag.
27147 Mon Jun 19 23:40:59 2006  NARUSE, Yui  <naruse@ruby-lang.org>
27149           * ext/nkf/lib/kconv.rb: remove default -m0 and fix document.
27151           * ext/nkf/nkf-8/{nkf.c, config.h, utf8tbl.c, utf8tbl.h}:
27152             imported nkf 2.0.7.
27154 Mon Jun 19 17:02:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27156         * sample/test.rb (proc_return3): return within non lambda block
27157           should terminate surrounding method.  [ruby-dev:28741]
27159 Mon Jun 19 13:22:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27161         * ext/socket/socket.c (unix_sysaccept): typo fixed.
27163         * ext/socket/socket.c (sock_connect): remove an unused local
27164           variable tmpaddr.
27166 Mon Jun 19 02:10:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27168         * ext/socket/socket.c (tcp_accept_nonblock): forgot to remove
27169           abandoned hacks.  [ruby-dev:28740]
27171 Mon Jun 19 00:00:17 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27173         * ext/tk/lib/multi-tk.rb: fix bug: initialize improper tables.
27175 Sun Jun 18 20:28:43 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27177         * ext/win32ole/win32ole.c (fole_methods): The return value
27178           of WIN32OLE#ole_methods should include PROPERTYPUTREF methods.
27180         * ext/win32ole/win32ole.c (fole_put_methods): The return value
27181           of WIN32OLE#ole_put_methods should include PROPERTYPUTREF methods.
27183         * test/win32ole/test_ole_methods.rb: ditto.
27185         * ext/win32ole/win32ole.c (ole_propertyput): support
27186           PROPERTYPUTREF. [ruby-talk:183042]
27188         * test/win32ole/test_propertyputref.rb: ditto.
27190 Sat Jun 17 23:42:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27192         * eval.c (Init_eval): add aliases invoke_method and
27193           invoke_functional_method corresponding send and funcall
27194           respectively.  [ruby-talk:197512]
27196         * parse.y (parser_yylex): returns the most typical keyword token
27197           on EXPR_FNAME.  [ruby-core:7995]
27199         * ext/socket/socket.c: protoize.
27201 Sat Jun 17 22:17:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27203         * lib/mathn.rb (Integer::prime_division): raise ZeroDivisionError
27204           on zeros.  [ruby-dev:28739]
27206 Sat Jun 17 14:53:32 2006  Tanaka Akira  <akr@m17n.org>
27208         * lib/pathname.rb (Kernel#Pathname): new method.
27210 Sat Jun 17 02:01:00 2006  Tanaka Akira  <akr@m17n.org>
27212         * lib/pp.rb (Kernel#pretty_inspect): defined for pretty printed
27213           string.
27215 Fri Jun 16 01:41:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27217         * eval.c (rb_proc_arity): get rid of segfault for mere splat.
27219         * gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked.
27221 Thu Jun 15 22:06:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27223         * parse.y (then): remove ':' from 'then' and 'do' rules.
27225 Wed Jun 14 18:00:20 2006  Eric Hodel  <drbrain@segment7.net>
27227         * enum.c (enum_any): Documentation typo.
27229 Wed Jun 14 15:01:09 2006  Eric Hodel  <drbrain@segment7.net>
27231         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#warn): Don't print
27232           warnings when -q is set.
27234 Wed Jun 14 16:11:37 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27236         * eval.c (rb_f_method_name, rb_f_callee_name): document typo.
27238 Wed Jun 14 15:19:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27240         * hash.c (env_aset): raise TypeError on nil with more descriptive
27241           message.  [ruby-core:07990]
27243 Tue Jun 13 17:22:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27245         * ext/socket/socket.c (Init_socket): remove obsolete constants:
27246           IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket,
27247           UNIXsocket, UNIXserver.
27249 Tue Jun 13 09:07:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27251         * eval.c (formal_assign): post splat arguments should have had
27252           higher priority than optional arguments, since they are
27253           mandatory.  [ruby-dev:28715]
27255         * eval.c (VIS_MASK): broken. should be 15.  [ruby-dev:28715]
27257         * io.c (argf_getc): should return one-character string.
27258           [ruby-dev:28715]
27260         * io.c (rb_io_readchar): ditto.
27262 Sun Jun 11 23:20:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27264         * object.c (sym_call): disallow to call private methods.
27266         * lib/optparse.rb (OptionParser::Arguable#getopts): pass self to the
27267           parser.
27269 Sun Jun 11 09:56:41 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27271         * win32/win32.h (write): not need to define on bcc.
27273 Sun Jun 11 08:30:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27275         * lib/optparse.rb (OptionParser#getopts): new methods.
27277 Sun Jun 11 07:27:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27279         * lib/rdoc/ri/ri_writer.rb: use String#ord.
27281 Sun Jun 11 04:38:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27283         * object.c (sym_to_proc): imported Symbol#to_proc from ActiveSupport.
27285 Sat Jun 10 18:02:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27287         * ext/bigdecimal/lib/bigdecimal/newton.rb (Newton::nlsolve): typo
27288           fixed: raize -> raise.  [ruby-talk:196608]
27290 Sat Jun 10 17:49:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27292         * string.c (rb_str_ord): new method.
27294         * parse.y (rbracket): allow optional newline before closing
27295           brackets.
27297 Sat Jun 10 15:12:29 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27299         * eval.c (rb_f_method_name, rb_f_callee_name): new functions.
27300           new global method `__method__' and `__callee__'.
27302 Sat Jun 10 10:13:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27304         * lib/getoptlong.rb (GetoptLong#set_options): receive arguments
27305           as Array.
27307         * lib/irb/slex.rb: use Proc#yield.
27309         * lib/rdoc/markup/simple_markup/inline.rb: follow the new behavior
27310           of String#[].
27312         * lib/rdoc/ri/ri_writer.rb: ditto.
27314 Sat Jun 10 08:17:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27316         * math.c (log2): may be a macro.
27318         * parse.y (args, block_param, f_args): pass f_post_arg to #params.
27320         * util.c (powersOf10): constified.
27322         * ext/readline/readline.c: include extconf.h first.
27324         * ext/ripper/eventids2.c: removed tLAMBDA_ARG.
27326         * ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.
27328         * ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
27329           defined as const now.
27331         * ext/win32ole/win32ole.c (fole_missing): ditto.
27333         * lib/mkmf.rb (create_makefile): force to create extconf header.
27335         * lib/optparse.rb (order!): use Proc#yield.
27337 Sat Jun 10 06:53:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27339         * eval.c (CALLARGS): remove last semicolon. C90 compiler doesn't
27340           allow any lines (even if they're empty) within variable
27341           declarations.
27343 Fri Jun  9 09:56:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27345         * sprintf.c (rb_str_format): allow %c to print one character
27346           string (e.g. ?x).
27348 Thu Jun  8 14:00:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27350         * win32/win32.[ch] (rb_w32_read, rb_w32_write): new functions.
27351           use recv() and send() when fd is socket. fixed: [ruby-dev:28694]
27353 Wed Jun  7 16:22:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27355         * lib/tempfile.rb (Tempfile::make_tmpname): put dot between
27356           basename and pid.  [ruby-talk:196272]
27358 Wed Jun  7 16:16:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27360         * parse.y (do_block): remove -> style block.
27362         * parse.y (parser_yylex): remove tLAMBDA_ARG.
27364 Wed Jun  7 14:51:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27366         * win32/win32.c (errmap): add some winsock errors.
27368 Wed Jun  7 09:14:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27370         * eval.c (rb_call0): binding for the return event hook should have
27371           consistent scope.  [ruby-core:07928]
27373 Tue Jun  6 23:25:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27375         * eval.c (proc_invoke): return behavior should depend whether it
27376           is surrounded by a lambda or a mere block.
27378 Mon Jun  5 18:12:12 2006  Tanaka Akira  <akr@m17n.org>
27380         * ext/socket/socket.c (sock_s_unpack_sockaddr_in): reject
27381           non-AF_INET/AF_INET6 sockaddr.
27382           (sock_s_unpack_sockaddr_un): reject non-AF_UNIX sockaddr.
27383           [ruby-dev:28691]
27385 Sun Jun  4 20:40:19 2006  Tanaka Akira  <akr@m17n.org>
27387         * ext/socket/socket.c: fix sockaddr_un handling.
27388           [ruby-dev:28677]
27390 Sat Jun  3 23:53:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27392         * eval.c (formal_assign): handles post splat arguments.
27394         * eval.c (rb_call0): ditto.
27396 Sat Jun  3 13:10:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27398         * st.c (strhash): use FNV-1a hash.
27400 Fri Jun  2 20:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27402         * parse.y (parser_yylex): removed experimental ';;' terminator.
27404 Fri Jun  2 19:00:40 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27406         * ext/openssl/extconf.rb: use create_header.
27408         * ext/openssl/ossl.h, ext/openssl/openssl_missing.h:
27409           include RUBY_EXTCONF_H.
27411 Fri Jun  2 17:16:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27413         * lib/mkmf.rb (CLEANINGS): remove extconf.h by distclean if created.
27415 Fri Jun  2 00:11:19 2006  Tanaka Akira  <akr@m17n.org>
27417         * ext/socket/socket.c (s_recvfrom): alen may be zero with UNIXSocket
27418           too.  (tested on NetBSD 3.0)
27419           (s_recvfrom_nonblock): extracted from sock_recvfrom_nonblock.
27420           (sock_recvfrom_nonblock): use s_recvfrom_nonblock.
27421           (ip_recvfrom_nonblock): new method: IPSocket#recvfrom_nonblock
27422           (unix_recvfrom_nonblock): new method: UNIXSocket#recvfrom_nonblock
27423           (s_accept_nonblock): extracted from sock_accept_nonblock.
27424           (sock_accept_nonblock): use s_accept_nonblock.
27425           (tcp_accept_nonblock): new method: TCPServer#accept_nonblock
27426           (unix_accept_nonblock): new method: UNIXServer#accept_nonblock
27428 Thu Jun  1 19:12:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27430         * win32/win32.c (rb_w32_cmdvector): backslashes inside single-quotes
27431           no longer has special meanings.  fixed: [ruby-list:42311]
27433 Thu Jun  1 17:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27435         * eval.c (rb_node_arity): should be aware of post splat arguments.
27437         * eval.c (rb_proc_arity): ditto.
27439 Thu Jun  1 16:17:26 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27441         * win32/win32.c (rb_w32_getcwd): runtime's getcwd() will not success
27442           if the length of the cwd is longer than MAX_PATH.
27443           fixed [ruby-list:42335]
27445 Thu Jun  1 16:07:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27447         * parse.y (f_args): syntax rule enhanced to support arguments
27448           after the splat.
27450         * parse.y (mlhs_basic): ditto for multiple assignments
27452         * parse.y (block_param): ditto for block parameters.
27454         * parse.y (f_post_arg): mandatory formal arguments after the splat
27455           argument.
27457         * parse.y (new_args_gen): generate nodes for mandatory formal
27458           arguments after the splat argument.
27460         * eval.c (rb_eval): dispatch mandatory formal arguments after the
27461           splat argument.
27463 Thu Jun  1 11:33:32 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27465         * win32/win32.c (rb_w32_getcwd): set errno if not set.
27466           fixed [ruby-list:42346]
27468 Thu Jun  1 00:45:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27470         * parse.y (args): allow more than one splat in the argument list.
27472 Wed May 31 18:38:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27474         * parse.y (method_call): allow aref [] to accept all kind of
27475           method argument, including assocs, splat, and block argument.
27477         * eval.c (SETUP_ARGS0): prepare block argument as well.
27479 Tue May 30 18:13:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27481         * lib/mathn.rb (Integer): remove Integer#gcd2. [ruby-core:07931]
27483 Mon May 29 22:40:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27485         * eval.c (error_line): print receivers true/false/nil specially.
27487         * eval.c (rb_proc_yield): handles parameters in yield semantics.
27489         * eval.c (nil_yield): gives LocalJumpError to denote no block
27490           error.
27492         * io.c (rb_io_getc): now takes one-character string.
27494 Sat May 27 22:46:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27496         * eval.c (proc_invoke): save and restore block in the current frame.
27497           fixed: [ruby-core:07833], [ruby-talk:191639]
27499 Sat May 27 11:29:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27501         * ext/extmk.rb (extmake): remove extinit files if no statically linked
27502           extensions.
27504 Fri May 26 19:56:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27506         * string.c (rb_str_hash): use FNV-1a hash from Fowler/Noll/Vo
27507           hashing algorithm.
27509 Fri May 26 09:05:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27511         * ruby.h, lib/mkmf.rb (create_header): clear command line options for
27512           macros moved to extconf.h.
27514         * ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
27515           EXTSTATIC permanent.
27517         * ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.
27519         * {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
27520           $(INCFLAGS).
27522         * lib/mkmf.rb (configuration): add $defs unless extconf.h was created.
27524 Thu May 25 01:52:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27526         * lib/mkmf.rb (pkg_config): particular config commands support.
27528         * ext/extmk.rb: deal with $static set in extconf.rb.
27530         * mkconfig.rb: merge multiple entries to an entry with multiple lines.
27532         * lib/mkmf.rb: allow a series of commands to link.
27534         * win32/Makefile.sub: embed manifests.
27536         * win32/setup.mak: suffix OS name by runtime version.
27538 Wed May 24 23:52:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27540         * configure.in (ac_install_sh): ignore dummy install-sh.
27541           [ruby-talk:193876]
27543 Wed May 24 17:55:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27545         * string.c (rb_str_aref): str[0] now returns 1 character string,
27546           instead of a fixnum.  [Ruby2]
27548         * parse.y (parser_yylex): ?c now returns 1 character string,
27549           instead of a fixnum.  [Ruby2]
27551         * string.c (rb_str_aset): no longer support fixnum insertion.
27553 Wed May 24 03:10:44 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27555         * ext/openssl/lib/openssl/ssl.rb
27556           (OpenSSL::SSL::SocketForwarder#setsockopt,getsockopt): typo fixed.
27558 Mon May 22 16:32:03 2006  Tanaka Akira  <akr@m17n.org>
27560         * rubyio.h (rb_io_set_nonblock): declared.
27562         * io.c (rb_io_set_nonblock): new function.
27563           (io_getpartial): nonblocking read support.
27564           (io_read_nonblock): new method: IO#read_nonblock.
27565           (io_write_nonblock): new method: IO#write_nonblock.
27567         * ext/socket/socket.c (s_accept): retry for EWOULDBLOCK.
27568           revert [ruby-talk:113807].
27569           (sock_connect_nonblock): new method: Socket#connect_nonblock.
27570           (sock_accept_nonblock): new method: Socket#accept_nonblock.
27571           (sock_recvfrom_nonblock): new method: Socket#recvfrom_nonblock.
27573           [ruby-core:7917]
27575 Mon May 22 15:57:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27577         * eval.c (umethod_bind): should not update original class.
27578           [ruby-dev:28636]
27580 Mon May 22 13:38:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27582         * eval.c (ev_const_get): should support constant access from
27583           within instance_eval().  [ruby-dev:28327]
27585 Sun May 21 09:50:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27587         * regexec.c: add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
27588           [ruby-list:42234]
27590 Thu May 18 22:37:20 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27592         * lib/webrick/config.rb (WEBrick::Config::HTTP): add new parameters,
27593           :InputBufferSize and :OutputBufferSize.
27595         * lib/webrick/utils.rb (WEBrick::Utils.timeout): add new timeout
27596           method. this implementation is expected to be compatible with
27597           timeout.rb and faster than timeout.rb.
27599         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#_read_data):
27600           Timeout.timeout is replaced by WEBrick::Utils.timeout.
27602         * lib/webrick/httprequest.rb: WEBrick::HTTPRequest::BUFSIZE is
27603           replaced by config[:InputBufferSize].
27605         * lib/webrick/httpresposne.rb: WEBrick::HTTPResponse::BUFSIZE is
27606           replaced by config[:OutputBufferSize].
27608         * lib/webrick/server.rb: get rid of unnecessary require.
27610         * test/webrick/test_utils.rb: test for WEBrick::Utils.timeout.
27612 Thu May 18 17:51:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27614         * time.c (time_timeval): should round for usec floating
27615           number.  [ruby-core:07896]
27617         * time.c (time_add): ditto.
27619 Thu May 18 00:42:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27621         * ext/extmk.rb, lib/mkmf.rb: use BUILD_FILE_SEPARATOR in Makefiles.
27623 Wed May 17 17:55:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27625         * dir.c (sys_warning): should not call a vararg function
27626           rb_sys_warning() indirectly.  [ruby-core:07886]
27628 Tue May 16 17:23:19 2006    <sinara@blade.nagaokaut.ac.jp>
27630         * numeric.c (flo_divmod): the first element of Float#divmod should
27631           be an integer. [ruby-dev:28589]
27633         * test/ruby/test_float.rb: add tests for divmod, div, modulo and remainder.
27635 Tue May 16 15:34:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27637         * re.c (rb_reg_initialize): should not allow modifying literal
27638           regexps.  frozen check moved from rb_reg_initialize_m as well.
27640 Tue May 16 09:20:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27642         * re.c (rb_reg_initialize): should not modify untainted objects in
27643           safe levels higher than 3.
27645         * re.c (rb_memcmp): type change from char* to const void*.
27647         * dir.c (dir_close): should not close untainted dir stream.
27649         * dir.c (GetDIR): add tainted/frozen check for each dir operation.
27651 Mon May 15 21:37:12 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27653         * re.c (rb_reg_prepare_re): don't use onig_recompile().
27655 Mon May 15 17:42:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27657         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_symbol_arg):
27658           typo fixed.  a patch from Florian Gross <florg at florg.net>.
27660 Sat May 13 16:14:05 2006  Tanaka Akira  <akr@m17n.org>
27662         * lib/pp.rb (PP.mcall): new method.
27663           (Struct#pretty_print): call Kernel#class and Struct#members even if
27664           overridden.
27665           (Struct#pretty_print_cycle): ditto.
27666           [ruby-core:7865]
27668 Fri May 12 15:54:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27670         * eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
27671           event_hooks.  no guarantee for arbitrary hook deletion.
27672           [ruby-dev:28632]
27674 Thu May 11 19:57:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27676         * util.c (ruby_strtod): differ addition to minimize error.
27677           [ruby-dev:28619]
27679 Thu May 11 18:30:11 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27681         * ext/openssl/ossl_cipher.c (add_cipher_name_to_ary): should return
27682           value. [ruby-dev:28627]
27684 Thu May 11 18:10:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27686         * util.c (ruby_strtod): should not raise ERANGE when the input
27687           string does not have any digits.  [ruby-dev:28629]
27689 Wed May 10 23:40:21 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27691         * oniguruma.h: Version 4.0.3
27693         * regexec.c: ditto.
27695 Mon May  8 09:10:31 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27697         * ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.
27699         * ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method
27700           OpenSSL::Cipher.ciphers. it returns all the cipher names.
27702         * ext/openssl/ossl_cipher.c (ossl_cipher_init): refine warning message.
27704         * ext/openssl/lib/openssl/cipher.rb: reimplement without eval() and
27705           add constants AES128, AES192, AES256. [ruby-dev:28610]
27707         * ext/openssl/lib/openssl/digest.rb: reimplement without eval().
27709         * test/openssl/test_cipher.rb, test_digest: fix about reimplemented
27710           features.
27712         * sample/openssl/cipher.rb: rewrite all.
27714 Sun May  7 03:09:51 2006  Stephan Maka  <stephan@spaceboyz.net>
27716         * lib/resolv.rb (Resolv::DNS::Requester::ConnectedUDP#initialize):
27717           Use AF_INET6 for nameservers containing colons.
27719 Sat May  6 23:40:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27721         * eval.c (proc_invoke): should restore old ruby_frame->block.
27722           thanks to ts <decoux at moulon.inra.fr>.  [ruby-core:07833]
27723           also fix [ruby-dev:28614] as well.
27725 Sat May  6 00:38:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27727         * signal.c (trap): sig should be less then NSIG.  Coverity found
27728           this bug.  a patch from Kevin Tew <tewk at tewk.com>.
27729           [ruby-core:07823]
27731 Thu May  4 22:13:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27733         * math.c (math_log2): add new method inspired by
27734           [ruby-talk:191237].
27736         * math.c (math_log): add optional base argument to Math::log().
27737           [ruby-talk:191308]
27739 Thu May  4 02:24:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27741         * ext/syck/emitter.c (syck_scan_scalar): avoid accessing
27742           uninitialized array element.  a patch from Pat Eyler
27743           <rubypate at gmail.com>.  [ruby-core:07809]
27745         * array.c (rb_ary_fill): initialize local variables first.  a
27746           patch from Pat Eyler <rubypate at gmail.com>.  [ruby-core:07810]
27748         * ext/syck/yaml2byte.c (syck_yaml2byte_handler): need to free
27749           type_tag.  a patch from Pat Eyler <rubypate at gmail.com>.
27750           [ruby-core:07808]
27752 Wed May  3 02:12:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27754         * ext/socket/socket.c (make_hostent_internal): accept ai_family
27755           check from Sam Roberts <sroberts at uniserve.com>.
27756           [ruby-core:07691]
27758 Mon May  1 17:58:16 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27760         * ext/win32ole/win32ole.c (add_event_call_back): should not
27761           delete event handler when the event name is not entried.
27763 Mon May  1 08:32:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27765         * ext/win32ole/win32ole.c (ole_param_ole_type): should return
27766           "unknown type" string when ITypeInfo::GetFuncDesc failed.
27768 Sat Apr 29 22:43:37 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27770         * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): should initialize
27771           flag. [ruby-core:07785]
27773 Fri Apr 28 10:53:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27775         * util.c (ruby_strtod): should not cut off 18 digits for no
27776           reason.  [ruby-core:07796]
27778 Thu Apr 27 01:38:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27780         * array.c (rb_ary_fill): internalize local variable "beg" to
27781           pacify Coverity.  [ruby-core:07770]
27783 Wed Apr 26 16:59:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27785         * pack.c (pack_unpack): now supports CRLF newlines.  a patch from
27786           <tommy at tmtm.org>.  [ruby-dev:28601]
27788 Wed Apr 26 16:55:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27790         * applied code clean-up patch from Stefan Huehner
27791           <stefan at huehner.org>.  [ruby-core:07764]
27793 Tue Apr 25 18:00:05 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27795         * ext/tk/tcltklib.c (delete_slaves): maybe increment the reference
27796           count of a NULL Tcl_Obj [ruby-core:07759].
27798 Tue Apr 25 07:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27800         * lib/jcode.rb (String::tr_s): should have translated non
27801           squeezing character sequence (i.e. a character) as well.  thanks
27802           to Hiroshi Ichikawa <gimite at gimite.ddo.jp> [ruby-list:42090]
27804 Fri Apr 21 15:19:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27806         * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer
27807           [ruby-core:07744] and memory leak.
27809 Fri Apr 21 12:14:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27811         * ext/socket/socket.c: document update patch from Sam Roberts
27812           <sroberts at uniserve.com>.  [ruby-core:07701]
27814 Thu Apr 20 08:43:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27816         * lib/mathn.rb (Integer): need not to remove gcd2.  a patch from
27817           NARUSE, Yui <naruse at airemix.com>.  [ruby-dev:28570]
27819 Wed Apr 19 13:55:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27821         * parse.y (arg): too much NEW_LIST()
27823         * eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.
27825 Wed Apr 19 11:57:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27827         * eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
27828           [ruby-dev:28585]
27830         * parse.y (arg): use NODE_ARGSCAT for placeholder.
27832 Wed Apr 19 11:13:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27834         * lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
27835           mathew <meta at pobox.com>.  [ruby-core:07738]
27837 Wed Apr 19 10:13:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27839         * variable.c (rb_const_set): raise error when no target klass is
27840           supplied.  [ruby-dev:28582]
27842 Tue Apr 18 17:40:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27844         * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
27846         * ext/tk/lib/tk.rb: update RELEASE_DATE.
27848         * ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
27850         * ext/tk/stubs.c: fix potential bugs about handling rb_argv0.
27852 Mon Apr 10 01:03:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27854         * prec.c (prec_prec_f): documentation patch from
27855           <gerardo.santana at gmail.com>.  [ruby-core:07689]
27857 Sat Apr  8 02:34:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27859         * bignum.c (rb_big_pow): second operand may be too big even if
27860           it's a Fixnum.  [ruby-talk:187984]
27862 Sat Apr  8 02:12:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27864         * README.EXT: update symbol description.  [ruby-talk:188104]
27866 Sat Apr  8 18:06:28 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27868         * ext/win32ole/win32ole.c: add WIN32OLE_METHOD#inspect,
27869           WIN32OLE_PARAM#inspect.
27871         * test/win32ole/test_win32ole_method.rb: ditto.
27873         * add test/win32ole/test_win32ole_param.rb.
27875 Fri Apr  7 22:11:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27877         * ext/win32ole/win32ole.c(foletypelib_initialize): WIN32OLE_TYPELIB.new
27878           accepts OLE file.
27880         * test/win32ole/test_win32ole_typelib.rb(test_initialize): ditto.
27882 Thu Apr  6 23:28:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27884         * COPYING: explicitly note GPLv2.  [ruby-talk:187922]
27886 Thu Apr  6 16:43:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27888         * intern.h (rb_obj_instance_exec, rb_mod_module_exec): add declaration.
27890 Thu Apr  6 11:18:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27892         * ext/tk/lib/tk/panedwindow.rb: lack of arguments. [ruby-core:7681]
27894 Thu Apr  6 01:04:47 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27896         * ext/tk/tcltklib.c: fix SEGV when embedding to an application.
27897           [ruby-core:7600]
27899         * ext/tk/tcltklib.c: fix SEGV at exit. [ruby-talk:186489]
27901         * ext/tk/tkutil/tkutil.c: follow to changing specification of
27902           instance_eval on ruby-1.9.x.
27904         * ext/tk/lib/tk.rb: ditto.
27906         * ext/tk/lib/multi-tk.rb: ditto.
27908         * ext/tk/lib/tk.rb: remove warning about redefinition of methods.
27910         * ext/tk/lib/tk/variable.rb: remove warning about unseting Tcl
27911           variables.
27913 Wed Apr  5 00:22:54 2006  Tanaka Akira  <akr@m17n.org>
27915         * lib/pathname.rb: use a subclass for instantiation except
27916           methods take pathname argument.  suggested by Evan Phoenix.
27917           [ruby-core:7618]
27919 Tue Apr  4 22:15:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27921         * parse.y: remove some obsolete syntax rules (unparenthesized
27922           method calls in argument list).
27924 Sat Apr  1 15:11:27 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27926         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#inspect,
27927           WIN32OLE_VARIABLE#inspect
27929         * remove ext/win32ole/tests/testOLEVARIABLE.rb, testOLETYPE.rb
27930           testOLETYPELIB.rb.
27932         * testall.rb: ditto.
27934         * add test/win32ole
27936 Fri Mar 31 14:24:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27938         * enumerator.c (enumerator_with_index): removed suspicious return
27939           statement.
27941 Wed Mar 29 23:06:48 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27943         * ext/win32ole/win32ole.c (ole_invoke): change the behavior of
27944           WIN32OLE#[], WIN32OLE#[]=. These methods invoke DISPID_VALUE.
27946         * ext/win32ole/sample/excel2.rb: ditto.
27948         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
27950 Wed Mar 29 10:11:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27952         * ext/nkf/nkf-utf8/nkf.c (nkf_each_char_to_hex, encode_fallback_subchar,
27953           e2w_conv): support C90 compiler.
27955 Mon Mar 27 22:45:37 2006  NARUSE, Yui  <naruse@ruby-lang.org>
27957         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: imported nkf 2.0.6.
27958           * Add --ic / --oc option and mapping tables.
27959           * Add fallback option.
27960           * Add --no-best-fit-chars option.
27961           * Fix some bugs.
27963         * ext/nkf/nkf.c (nkf_split_options): added for parse option string.
27965         * ext/nkf/lib/kconv.rb (Kconv.to*): add -m0.
27966           Note that Kconv.to* still imply -X.
27968         * ext/nkf/test.rb: Removed.  Obsolete by test/nkf.
27970         * ext/.document: enabled documents in nkf and kconv
27972         * ext/nkf/nkf.c, ext/nkf/lib/kconv.rb: Add rdoc.
27974 Mon Mar 27 03:17:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27976         * eval.c (rb_call0): insecure calling should be checked for non
27977           NODE_SCOPE method invocations too.
27979         * eval.c (rb_alias): should preserve the current safe level as
27980           well as method definition.
27982 Sun Mar 26 22:02:51 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27984         * re.c: refactoring for options.
27986         * parse.y: ditto.
27988 Fri Mar 24 21:11:02 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
27990         * re.c (match_aref): RDoc description updated.
27992         * string.c (rb_str_sub): ditto.
27994         * string.c (rb_str_gsub): ditto.
27996 Fri Mar 24 17:20:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27998         * process.c (rb_f_sleep): remove RDoc description about SIGALRM
27999           which is not valid on the current implementation. [ruby-dev:28464]
28001 Thu Mar 23 21:40:47 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28003         * re.c (rb_reg_regsub): prohibit \1, \2 ...\9 in replaced string
28004           for named regex pattern.
28006 Thu Mar 23 21:06:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28008         * oniguruma.h: Version 4.0.2
28010         * regparse.c: ditto.
28012         * regcomp.c ditto.
28014         * regerror.c: ditto.
28016 Thu Mar 23 10:47:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28018         * eval.c (method_missing): should support argument splat in
28019           super.  a bug in combination of super, splat and
28020           method_missing.  [ruby-talk:185438]
28022 Thu Mar 23 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28024         * re.c (rb_reg_regsub): add back reference by name \k<name> in
28025           replace string.
28027         * re.h: add regexp argument to rb_reg_regsub().
28029         * string.c (rb_str_sub_bang): ditto.
28031         * string.c (str_gsub): ditto.
28033 Tue Mar 21 22:14:01 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28035         * re.c (match_alloc): initialize member regexp.
28037         * re.c (match_aref): add String and Symbol argument. [ruby-dev:28448]
28039         * re.h: add member regexp to RMatch.
28041         * gc.c (gc_mark_children): add gc_mark() to regexp member.
28043 Mon Mar 20 12:05:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28045         * configure.in: Solaris SunPro compiler -rapth patch from
28046           <kuwa at labs.fujitsu.com>.  [ruby-dev:28443]
28048 Mon Mar 20 11:12:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28050         * ext/win32ole/win32ole.c (folevariant_value): could not compile
28051           with C90 compiler.
28053 Mon Mar 20 09:40:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28055         * configure.in: remove enable_rpath=no for Solaris.
28056           [ruby-dev:28440]
28058 Sun Mar 19 09:46:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28060         * ext/win32ole/win32ole.c (ole_val2olevariantdata): change behavior
28061           of converting  OLE Variant object with VT_ARRAY|VT_UI1 and Ruby
28062           String object.
28064         * ext/win32ole/win32ole.c (folevariant_value): ditto.
28066         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
28068 Wed Mar 15 16:51:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28070         * lib/mkmf.rb (create_makefile): support libraries without *.so.
28072 Wed Mar 15 16:39:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28074         * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: should use
28075           "rb_str_new(0, 0)" to make empty string.
28077 Sun Mar 12 17:02:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28079         * ext/win32ole/win32ole.c(ole_val2olevariantdata): support VT_ARRAY in
28080           WIN32OLE_VARIANT.new().
28082         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
28084         * ext/win32ole/tests/testOLEPARAM.rb: test method name should not be
28085           duplicated.
28087 Sat Mar 11 14:24:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28089         * ruby.1: a clarification patch from David Lutterkort
28090           <dlutter at redhat.com>.  [ruby-core:7508]
28092 Sun Mar  5 18:40:58 2006  Minero Aoki  <aamine@loveruby.net>
28094         * lib/fileutils.rb: do not repeat command options.
28096 Sun Mar  5 18:35:03 2006  Minero Aoki  <aamine@loveruby.net>
28098         * lib/net/http.rb (send_request_with_body): #content_type never
28099           return false, use #main_type instead. [ruby-core:07476]
28101 Sat Mar  4 15:26:40 2006  Tanaka Akira  <akr@m17n.org>
28103         * gc.c (id2ref): fix symbol test.
28105 Sat Mar  4 01:08:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28107         * lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
28108           directories.  a patch from Eric Hodel <drbrain at segment7.net>.
28109           [ruby-core:07423]
28111 Fri Mar  3 17:59:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28113         * eval.c (rb_clear_cache_by_class): clearing wrong cache.
28115 Fri Mar  3 21:22:42 2006  Tanaka Akira  <akr@m17n.org>
28117         * lib/fileutils.rb (FileUtils.cp_r): implement :remove_destination
28118           option.
28120         * ext/extmk.rb: use :remove_destination to install extension libraries
28121           to avoid SEGV.  [ruby-dev:28417]
28123 Fri Mar  3 14:41:04 2006  Minero Aoki  <aamine@loveruby.net>
28125         * ext/dl/.cvsignore: ignore callback.h.
28127         * ext/ripper/.cvsignore: ignore eventids2table.c.
28129         * ext/socket/.cvsignore: ignore constants.h.
28131 Thu Mar  2 18:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28133         * eval.c (rb_thread_fd_writable): should not re-schedule output
28134           from KILLED thread (must be error printing).
28136 Thu Mar  2 09:12:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28138         * array.c (rb_ary_flatten_bang): allow specifying recursion
28139           level.  [ruby-talk:182170]
28141         * array.c (rb_ary_flatten): ditto.
28143 Thu Mar  2 08:02:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28145         * gc.c (add_heap): a heap_slots may overflow.  a patch from Stefan
28146           Weil <weil at mail.berlios.de>.
28148 Wed Mar  1 17:13:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28150         * eval.c (rb_call): use separate cache for fcall/vcall
28151           invocation.
28153         * eval.c (rb_eval): NODE_FCALL, NODE_VCALL can call local
28154           functions.
28156         * eval.c (rb_mod_local): a new method to specify newly added
28157           visibility "local".
28159         * eval.c (search_method): search for local methods which are
28160           visible only from the current class.
28162         * class.c (rb_class_local_methods): a method to list local methods.
28164 Thu Mar  2 17:54:45 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28166         * gc.c: commited magic for reducing RVALUE size on windows. (24->20byte)
28167           [ruby-core:7474]
28169 Thu Mar  2 14:12:26 2006  Tanaka Akira  <akr@m17n.org>
28171         * gc.c: align VALUE with sizeof(RVALUE) globally.
28172           (is_pointer_to_heap): check alignment out of loop.
28173           (id2ref): avoid collision between symbols and objects.
28174           (rb_obj_id): ditto.  moved from object.c.
28175           [ruby-talk:178364] [ruby-core:7305]
28177 Thu Mar  2 12:55:16 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28179         * win32/win32.c (filetime_to_unixtime): should set tm_isdst to -1.
28180           stat() didn't treat daylight saving time property on WinNT.
28181           [ruby-talk:182100]
28183 Wed Mar  1 00:15:51 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28185         * lib/rdoc/parsers/parse_rb.rb (read_escape): could not handle /\^/.
28186           merged Mr. Ishizuka's lib/irb/ruby-lex.rb 's patch rev 1.29.
28187           [ruby-talk:181631] [ruby-dev:28404]
28189 Tue Feb 28 19:32:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28191         * object.c (Init_Object): add BasicObject class as a top level
28192           BlankSlate class.
28194 Mon Feb 27 00:19:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28196         * ruby.h (SYM2ID): should not cast to signed long.
28197           [ruby-core:07414]
28199 Fri Feb 24 20:21:38 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28201         * test/drb/drbtest.rb (add_service_command): quote pathnames in the
28202           server's command line for space contained directory names.
28203           Thanks, arton. [ruby-dev:28386]
28205 Fri Feb 24 12:10:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28207         * instruby.rb: install *.exe.manifest and *.dll.manifest if exist.
28208           It's for VC++8.
28210 Fri Feb 24 11:17:45 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28212         * win32/win32.c (NtInitialize): need to set a handler for VC++8.
28214 Thu Feb 23 22:39:59 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28216         * bcc32/Makefile.sub: use borlndmm.dll if possible. bcc32's RTL internal
28217           memory manager cannot handle large memory block properly.
28218           ex: 10000.times { "" << "." * 529671; GC.start } # crash
28219           [ruby-dev:28230]
28221 Thu Feb 23 13:23:03 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28223         * eval.c (SETUP_ARGS0): fixed memory corruption. [ruby-dev:28360]
28225 Wed Feb 22 21:16:55 2006  Tanaka Akira  <akr@m17n.org>
28227         * lib/pathname.rb (Pathname#each_filename): use split_names properly.
28229 Wed Feb 22 16:24:05 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28231         * test/webrick/test_cgi.rb: should support platforms which search
28232           library path from the interpreter's path.
28233           And, support test without install incidentally.
28235 Wed Feb 22 14:21:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28237         * bignum.c (bignorm): x may not be a bignum.  [ruby-dev:28367]
28239 Wed Feb 22 09:22:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28241         * eval.c (proc_alloc): add proper check for creation of a lambda
28242           without a block.
28244 Tue Feb 21 02:07:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28246         * parse.y (f_arglist): should set command_start = Qtrue for
28247           command body.  [ruby-talk:180648]
28249 Mon Feb 20 22:30:17 2006  Tanaka Akira  <akr@m17n.org>
28251         * mkconfig.rb: alias Config to RbConfig for compatibility.
28253 Mon Feb 20 18:21:41 2006  Tanaka Akira  <akr@m17n.org>
28255         * io.c (rb_io_reopen): flush before reopening a file.
28256           reported by Mathieu Bouchard.  [ruby-core:7396]
28258 Mon Feb 20 17:29:50 2006  Tanaka Akira  <akr@m17n.org>
28260         * mkconfig.rb: generate RbConfig instead of Config.
28262         * instruby.rb, rubytest.rb, runruby.rb, bcc32/Makefile.sub,
28263           ext/extmk.rb, ext/dl/extconf.rb, ext/iconv/charset_alias.rb,
28264           lib/mkmf.rb, lib/rdoc/ri/ri_paths.rb,
28265           lib/webrick/httpservlet/cgihandler.rb,
28266           test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb,
28267           test/ruby/envutil.rb, test/soap/calc/test_calc_cgi.rb,
28268           test/soap/header/test_authheader_cgi.rb, test/soap/ssl/test_ssl.rb,
28269           win32/mkexports.rb, win32/resource.rb: Use RbConfig instead of
28270           Config.
28272 Mon Feb 20 13:46:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28274         * lib/find.rb: should raise ENOENT if root entry does not exist,
28275           without opening it. [ruby-dev:28345]
28277 Mon Feb 20 12:27:53 2006  Kent Sibilev  <ksruby@gmail.com>
28279         * lib/rational.rb (Integer::gcd): small typo fix.
28280           [ruby-core:07395]
28282 Mon Feb 20 10:03:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28284         * variable.c (rb_const_get_0): Object should have been the lowest
28285           in const lookup precedence.  [ruby-dev:28343]
28287 Mon Feb 20 09:17:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28289         * lib/delegate.rb (Delegator): should not delegate "funcall".
28291 Mon Feb 20 09:13:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28293         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler):
28294           qualify the access for Config constant.  [ruby-dev:28338]
28296         * lib/resolv.rb (Resolv::DNS::Resource::IN::A): qualify
28297           ClassValue.  [ruby-dev:28338]
28299 Mon Feb 20 01:05:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28301         * lib/rational.rb (Integer::gcd): replaced by gcd4 in
28302           [ruby-core:07390].  [ruby-core:07377]
28304 Mon Feb 20 00:57:02 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28306         * ext/openssl/ossl.h (OSSL_Debug): should not use __func__.
28307           [ruby-dev:28339]
28309 Mon Feb 20 00:13:49 2006  Tanaka Akira  <akr@m17n.org>
28311         * lib/open-uri.rb: add :ssl_verify_mode option.
28312           suggested by Will Glynn.
28314         * lib/open-uri.rb: add :ssl_ca_cert option.
28316 Sun Feb 19 04:46:29 2006  Guy Decoux  <ts@moulon.inra.fr>
28318         * eval.c: initial value for block_unique must be 1.
28319           [ruby-talk:180420]
28321 Sat Feb 18 23:58:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28323         * lib/tracer.rb (Tracer::Tracer.add_filter): turn on tracer mode
28324           only when caller() level size is one.  [ruby-core:07389]
28326         * lib/rdoc/parsers/parse_rb.rb: need not to require "tracer".
28327           [ruby-core:07389]
28329         * sample/rtags.rb: ditto.
28331 Sat Feb 18 21:16:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28333         * eval.c (rb_obj_instance_eval): RDoc description updated.  a
28334           patch from Ozgur Murat Homurlu <ozgurmurath at gmail.com>.
28335           [ruby-core:07381]
28337 Sat Feb 18 01:01:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28339         * variable.c (rb_const_get_0): skip ruby_wrapper in const search
28340           to give it lower priority (just above Object).  need not to
28341           change rb_const_defined_0() since it's only a precedence matter;
28342           they are defined anyway.
28344 Sat Feb 18 00:22:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28346         * lib/tracer.rb: merged a minor clarification patch from Daniel
28347           Berger <Daniel.Berger at qwest.com>.  [ruby-core:07376]
28349 Fri Feb 17 17:30:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28351         * eval.c (ev_const_get): simplified using rb_const_get_fallback().
28353         * eval.c (ev_const_defined): adopt to ev_const_get() using
28354           rb_const_defined_fallback().
28356         * variable.c (rb_const_get_fallback): new function to implement
28357           constant search.
28359         * variable.c (rb_const_defined_fallback): new function to
28360           implement constant definition check.
28362         * variable.c (rb_const_get_0): adopt to new behavior.  constants
28363           are looked up in the order of: current class, super classes (but
28364           Object), lexically external classes/modules, and Object.
28366         * variable.c (rb_const_defined_0): ditto.
28368 Fri Feb 17 11:20:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28370         * util.c (ruby_strtod): Float("1e") should fail. [ruby-core:7330]
28372         * pack.c (EXTEND32): unpack("l") did not work where sizeof(long) != 4.
28373           [ruby-talk:180024]
28375         * pack.c (pack_unpack): fixed integer overflow on template "w".
28376           [ruby-talk:180126]
28378 Fri Feb 17 09:39:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28380         * eval.c (rb_thread_wait_for): sleep should always sleep for
28381           specified amount of time.  [ruby-talk:180067]
28383 Wed Feb 15 16:52:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28385         * eval.c (rb_eval): NODE_OP_ASGN1 should allow splat in its
28386           argument list.  [ruby-core:07366]
28388         * parse.y (arg): avoid unnecessary extra argument.
28389           [ruby-core:07366]
28391         * eval.c (rb_eval): honor visibility on OP_ASGN1 and
28392           OP_ASGN2. [ruby-core:07366]
28394 Wed Feb 15 15:20:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28396         * eval.c (error_line): remove void control path.  [ruby-dev:28335]
28398 Wed Feb 15 10:09:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28400         * eval.c (yield_under_i): should not pass self as an argument to
28401           the block for instance_eval.  [ruby-core:07364]
28403 Wed Feb 15 09:20:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28405         * eval.c (rb_obj_instance_eval): should be no singleton classes for
28406           true, false, and nil.  [ruby-dev:28186]
28408 Tue Feb 14 20:26:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28410         * enumerator.c (enumerator_each): return self if no block is
28411           given.  [yarv-dev:882]
28413 Tue Feb 14 18:48:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28415         * eval.c (DMETHOD_P): accessing wrong frame.  [ruby-dev:28181]
28417         * eval.c (proc_invoke): preserve FRAME_DMETH flag.
28419 Tue Feb 14 15:15:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28421         * ext/zlib/zlib.c: suppress warning on test/zlib. [ruby-dev:28323]
28423 Tue Feb 14 13:47:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28425         * win32/win32.c (rb_w32_utime): drop read-only attribute before
28426           changing file time.
28428 Tue Feb 14 13:38:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28430         * win32/Makefile.sub (config.h): should define HAVE_LONG_LONG with
28431           VC++8.
28433 Tue Feb 14 11:42:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28435         * time.c (search_time_t): support non 32bit time_t environments.
28437         * win32/Makefile.sub (config.h): VC++8 has ``long long'' type.
28439         * win32/Makefile.sub (config.h): VC++8's time_t is 64bit value.
28441 Mon Feb 13 18:01:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28443         * eval.c (copy_node_scope): remove duplicated semicolons at end.
28444           a patch from KIMURA Koichi <kimura.koichi at canon.co.jp>.
28445           [ruby-dev:28332]
28447         * eval.c (VIS_MODE): remove unnecessary argument.
28448           [ruby-dev:28332]
28450 Mon Feb 13 13:49:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28452         * parse.y (parser_parse_string): mention "regexp" in a error
28453           message.  a patch from Mauricio Fernandez <mfp at acm.org>
28454           [ruby-core:07340]
28456 Mon Feb 13 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28458         * oniguruma.h: Version 4.0.1
28460         * regparse.c (onig_free_shared_cclass_table): fix memory leaks.
28462         * regcomp.c (optimize_node_left): change from IS_POSIXLINE() to IS_MULTILINE().
28464         * regint.h: rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
28466         * regparse.h: ditto.
28468         * regexec.c: ditto.
28470 Sat Feb 11 21:57:29 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28472         * ext/win32ole/win32ole.c: add WIN32OLE.create_guid.
28474         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
28476 Sat Feb 11 01:57:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28478         * eval.c (rb_f_autoload): check if ruby_cbase is nil (during
28479           instance_eval for objects cannot have singleton classes,
28480           e.g. fixnums and symbols).  [ruby-dev:28178]
28482 Fri Feb 10 12:31:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28484         * eval.c (rb_eval): should support NODE_ZSUPER in NODE_ITER.
28485           [ruby-dev:28326]
28487         * eval.c (ZSUPER_ARGS): support macro.
28489 Wed Feb  8 10:26:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28491         * gc.c (rb_gc_call_finalizer_at_exit): turn on during_gc while
28492           invoking finalizers.
28494         * gc.c (rb_gc_finalize_deferred): ditto.
28496 Tue Feb  7 23:03:13 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28498         * ext/zlib/zlib.c: should not access ruby objects in finalizer.
28499           [ruby-dev:28286]
28501 Tue Feb  7 18:42:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28503         * io.c (rb_write_error2): use fwrite(3) if rb_stderr is not
28504           updated or is already freed.  [ruby-dev:28313]
28506 Mon Feb  6 16:02:51 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
28508         * file.c (rb_thread_flock): ERROR_NOT_LOCKED is not an error on Cygwin.
28509           In such situation, flock() should return 0.
28511 Mon Feb  6 14:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28513         * eval.c (error_line): include the class name of a surrounding
28514           method in error position description.
28516 Mon Feb  6 00:14:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28518         * enum.c (enum_find_index): a new method Enumerable#find_index.
28519           [ruby-talk:178495]
28521 Sun Feb  5 23:29:31 2006  Tanaka Akira  <akr@m17n.org>
28523         * ruby.h (struct RStruct): embed 3 or less elements structs.
28524           (RSTRUCT_LEN): defined for accessing struct members.
28525           (RSTRUCT_PTR): ditto.
28527         * struct.c: use RSTRUCT_LEN and RSTRUCT_PTR.
28528           (struct_alloc): allocate small structs in embedded format.
28529           (rb_struct_init_copy): ditto.
28531         * gc.c (gc_mark_children): use RSTRUCT_LEN and RSTRUCT_PTR.
28532           (obj_free): ditto.
28534         * marshal.c (w_object): use RSTRUCT_LEN and RSTRUCT_PTR.
28536 Sun Feb  5 21:01:49 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28538         * numeric.c (fix_to_s): removed workaround for radix 2. Historically,
28539           rb_fix2str could only handle radix 8, 10, 16. (Rev1.37) But for now,
28540           it can handle radix 2..36. [ruby-Bugs#3438] [ruby-core:7300]
28542 Sun Feb  5 18:49:00 2006  Minero Aoki  <aamine@loveruby.net>
28544         * lib/net/http.rb (add_field, get_fields): keep 1.8.2
28545           compatibility.  This patch is contributed by Rob Pitt.
28547 Sun Feb  5 16:33:50 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28549         * lib/mkmf.rb (create_makefile): Kernel#sub! was removed on HEAD.
28551 Sun Feb  5 14:26:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28553         * lib/pstore.rb: should return default value if name is not found.
28554           [ruby-core:7304]
28556         * lib/pstore.rb: should raise PStore::Error if not in transaction.
28558 Sat Feb  4 22:51:43 2006  Tanaka Akira  <akr@m17n.org>
28560         * eval.c: apply the FreeBSD getcontext/setcontext workaround
28561           only before FreeBSD 7-CURRENT.
28563 Sat Feb  4 21:10:06 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28565         * win32/win32.c (LK_ERR): ERROR_NOT_LOCKED is not an error.
28566           In such situation, flock() should return 0.
28568 Sat Feb  4 15:52:56 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28570         * numeric.c (fix_to_s): (2**32).to_s(2) fails with exception where
28571           sizeof(int) == 4 < sizeof(long). [ruby-core:7300]
28573 Sat Feb  4 15:02:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28575         * oniguruma.h: merge Oniguruma 4.0.0  [ruby-dev:28290]
28577 Fri Feb  3 19:25:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28579         * ruby.h: fixed prototype.
28581         * ext/syck/rubyext.c: defined symbol ID as global variable as others.
28583 Fri Feb  3 17:57:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28585         * eval.c: unify ruby_class (for method definition) and ruby_cbase
28586           (for constant reference).
28588 Fri Feb  3 15:02:10 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28590         * ext/syck/syck.c (syck_move_tokens): should reset p->cursor or etc
28591           even if skip == 0. This causes buffer overrun.
28592           (ex: YAML.load('--- "..' + '\x82\xA0' * 511 + '"'))
28594 Fri Feb  3 00:01:31 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28596         * ext/syck/emitter.c (syck_emitter_write): should not set '\0' on
28597           emitter's marker. if marker points to the end of buffer, this is
28598           buffer overrun. (ex: YAML.dump("." * 12288))
28600 Thu Feb  2 17:13:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28602         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#get_tk): added
28603           support of :'string' style Symbol.
28605 Thu Feb  2 16:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28607         * eval.c (rb_call0): use TMP_ALLOC() instead of allocating
28608           a temporary array object.
28610         * eval.c (eval): need not to protect $SAFE value.
28611           [ruby-core:07177]
28613         * error.c (Init_Exception): change NameError to direct subclass of
28614           Exception so that default rescue do not handle it silently.
28616 Thu Feb  2 14:45:53 2006  Ville Mattila  <ville.mattila@stonesoft.com>
28618         * configure.in: The isinf is not recognized by autoconf
28619           library guesser on solaris 10. [ruby-core:7138]
28621 Wed Feb  1 22:01:47 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28623         * configure.in, hash.c (ruby_setenv): use setenv(3) and unsetenv(3)
28624           where they are supported. modifying environ variable seems to
28625           segfault solaris 10. [ruby-core:7276] [ruby-dev:28270]
28627         * ruby.c (set_arg0): if use setenv(3), environ space cannot be used
28628           for altering argv[0].
28630 Tue Jan 31 14:46:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28632         * struct.c (rb_struct_select): update RDoc description.
28633           [ruby-core:7254]
28635 Tue Jan 31 11:58:51 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28637         * ext/tk/lib/multi-tk.rb: add MultiTkIp#eval and bg_eval.
28639         * ext/tk/lib/tk/namespace.rb: TkNamespace#eval was enbugged at the
28640           last commit. Now it will return a proper object.
28642 Tue Jan 31 08:07:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28644         * numeric.c (int_upto): return an enumerator if no block is
28645           attached to the method.
28647         * numeric.c (int_downto): ditto.
28649         * numeric.c (int_dotimes): ditto.
28651         * enum.c (enum_first): new method Enumerable#first to take first n
28652           elements from an enumerable.
28654         * enum.c (enum_group_by): new method Enumerable#group_by that
28655           groups enumerable values according to their block values.
28657 Tue Jan 31 00:08:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28659         * ext/syck/rubyext.c (syck_resolver_transfer): workaround for SEGV.
28660           ex: ruby -ryaml -e 'YAML.load("!map:B {}")' [ruby-core:7217]
28662 Sat Jan 28 07:49:30 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28664         * lib/rdoc/usage.rb: support "a:0:33" style caller[-1]. In this case
28665           file name is "a:0". I don't know this really happens though...
28666           [ruby-Bugs:3344]
28668 Thu Jan 26 15:55:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28670         * ext/socket/socket.c: turn on do_not_reverse_lookup by default.
28672 Wed Jan 25 22:29:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28674         * configure.in, dln.c, file.c, intern.h, missing.h (eaccess): use
28675           system routine if provided.  fixed: [ruby-core:07195]
28677 Sun Jan 22 23:27:13 2006  Go Noguchi  <gonoguti@yahoo.co.jp>
28679         * lib/test/unit/autorunner.rb (process_args): ignore arguments after
28680           '--' so that test scripts can handle them.  fixed: [ruby-dev:28258]
28682 Sun Jan 22 22:09:52 2006  Tanaka Akira  <akr@m17n.org>
28684         * eval.c (POST_GETCONTEXT): define separately from PRE_GETCONTEXT on
28685           IA64 to avoid reusing variable address.
28687 Sun Jan 22 20:03:35 2006  Tanaka Akira  <akr@m17n.org>
28689         * eval.c (ruby_setjmp): define PRE_GETCONTEXT and POST_GETCONTEXT
28690           instead of FUNCTION_CALL_MAY_RETURN_TWICE.
28691           define PRE_GETCONTEXT to clear carry flag for workaround of
28692           FreeBSD/i386 getcontext/setcontext bug.
28693           [ruby-dev:28263]
28695 Thu Jan 19 22:19:18 2006  Minero Aoki  <aamine@loveruby.net>
28697         * lib/fileutils.rb (mv): should remove file after copying.
28698           [ruby-dev:28223]
28700 Wed Jan 18 23:37:06 2006  Tanaka Akira  <akr@m17n.org>
28702         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): don't clobber %l7 of SPARC
28703           if enable-shared.
28704           (ruby_setjmp): call FUNCTION_CALL_MAY_RETURN_TWICE after getcontext
28705           too.
28706           reported by Pav Lucistnik and Marius Strobl.
28707           http://lists.freebsd.org/pipermail/freebsd-sparc64/2006-January/003739.html
28709 Tue Jan 17 23:59:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28711         * object.c (rb_mod_const_get, rb_mod_const_defined): added optional
28712           flag to search ancestors, which is defaulted to true.
28713           fixed: [ruby-talk:175899]
28715         * eval.c (rb_mod_method_defined): ditto.
28717 Tue Jan 17 11:31:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28719         * win32/setup.mak (MAKE): workaround for nmake 8.
28721 Tue Jan 17 11:06:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28723         * win32/Makefile.sub: invoke .bat via shell. workaround for nmake 8.
28725 Mon Jan 16 10:13:38 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28727         * ext/syck/emitter.c (syck_emit_seq, syck_emit_map, syck_emit_item):
28728           should output complex key mark even if map's key is empty seq/map.
28729           [ruby-core:7129]
28731 Sat Jan 14 03:38:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28733         * file.c (rb_file_s_chmod): avoid warning where sizeof(int) !=
28734           sizeof(void*).
28736 Fri Jan 13 19:26:15 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28738         * lib/rdoc/diagram.rb:
28739             - properly quote bare element attributes
28740             - terminates dangling elements (e.g. <img>, <br>, <link>, etc)
28741             - converts "CVS" to the more HTML-friendly acronym element
28742             - adds missing type attributes to style elements
28744           based on Paul Duncan's patch <pabs@pablotron.org> [ruby-core:7028]
28746         * lib/rdoc/generators/html_generator.rb: ditto.
28747         * lib/rdoc/generators/template/html/hefss.rb: ditto.
28748         * lib/rdoc/generators/template/html/html.rb: ditto.
28749         * lib/rdoc/generators/template/html/kilmer.rb: ditto.
28751 Thu Jan 12 11:53:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28753         * ext/tk/sample/tkballoonhelp.rb: [bug fix] couldn't add to a widget
28754           which is constructed with TkComposite module.
28755           [new feature] support 'command' option which is called just before
28756           popping up the balloon help.
28758 Wed Jan 11 00:12:29 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28760         * lib/erb.rb (ERB::Compiler): add instance variable @insert_cmd to
28761           change <%='s behavior.
28763 Tue Jan 10 19:42:33 2006  Tanaka Akira  <akr@m17n.org>
28765         * gc.c (garbage_collect): mark ruby_current_node.
28766           if an exception is raised in a finalizer written in C called by
28767           rb_gc_call_finalizer_at_exit, ruby_set_current_source may use
28768           collected ruby_current_node and mark_source_filename may corrupt
28769           memory.
28771 Tue Jan 10 13:30:34 2006  akira yamada  <akira@ruby-lang.org>
28773         * ext/syck/rubyext.c (syck_resolver_transfer): should be able to load
28774           !ruby/object:Bignum syntax 1.8.3 dumped. [ruby-core:6159]
28776 Tue Jan 10 12:47:41 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28778         * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in
28779           ruby 1.8.3/1.8.4. [ruby-core:6115]
28781         * lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not
28782           be dumped properly. [ruby-core:7047]
28784 Tue Jan 10 12:00:48 2006  Aaron Schrab  <aaron @nospam@ schrab.com>
28786         * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted
28787           Symbols broken. [ruby-Bugs:2535]
28789 Tue Jan 10 07:26:52 2006  Tanaka Akira  <akr@m17n.org>
28791         * gc.c (gc_stress): renamed from always_gc and enabled by default.
28792           (gc_stress_get): new function for GC.stress.
28793           (gc_stress_set): new function for GC.stress=.
28795 Mon Jan  9 19:58:56 2006  arton  <artonx@yahoo.co.jp>
28797         * ext/zlib/extconf.rb: zlib compiled DLL version 1.2.3 distributed by
28798           http://www.zlib.net/ has zdll.lib. [ruby-dev:28209]
28800 Mon Jan  9 14:25:00 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28802         * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag,
28803           (VisualC++6) so use -O2b2xg- if  $(MSC_VER) < 1400. [ruby-core:7040]
28805 Mon Jan  9 14:25:00 2006  Kero van Gelder  <rubyforge @nospam@ kero.tmfweb.nl>
28807         * lib/webrick/httpservlet/filehandler.rb: fixed typo. [ruby-core:7075]
28809 Sun Jan  8 14:15:27 2006  Tanaka Akira  <akr@m17n.org>
28811         * eval.c (GCC_VERSION_BEFORE): check __INTEL_COMPILER.
28812           Intel C++ Compiler defines __GNUC__.
28813           http://www.intel.com/software/products/compilers/clin/docs/ug_cpp/lin1077.htm
28815 Sat Jan  7 15:40:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28817         * parse.y (singleton): get rid of segfault on syntax error.
28818           fixed: [ruby-core:07070]
28820 Sat Jan  7 06:24:18 2006  Tanaka Akira  <akr@m17n.org>
28822         * eval.c (rb_fd_isset): compare the result of FD_ISSET with 0 to
28823           avoid FreeBSD bug.  FreeBSD defines FD_ISSET as just a bitmap of
28824           unsigned long.  So returning the value from rb_fd_isset discards
28825           upper 32bits on LP64 environment.
28826           http://www.freebsd.org/cgi/query-pr.cgi?pr=ia64/91421
28828 Fri Jan  6 02:20:18 2006  Tanaka Akira  <akr@m17n.org>
28830         * configure.in: don't force getcontext on IA64.
28832         * eval.c (ruby_setjmp): add an argument for just before getcontext.
28833           (THREAD_SAVE_CONTEXT): call rb_thread_save_context just
28834           before getcontext.
28835           [ruby-dev:28205]
28837 Sun Jan  1 15:28:46 2006  Tanaka Akira  <akr@m17n.org>
28839         * missing.h (isinf): avoid macro expansion
28840           "extern int isinf(double);" to
28841           "extern int ((sizeof(double)==sizeof(float))?_Isinff(double):_Isinf(double));" on
28842           HP-UX.
28844 Sun Jan  1 14:42:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28846         * win32/win32.c (rb_w32_seekdir): should not segfault even if passed
28847           the location which rb_w32_telldir didn't return. (and should change
28848           `bits' position) [ruby-core:7035]
28850         * win32/dir.h: ditto. (stores `loc' instead of `bitpos')
28852         * test/ruby/test_dir.rb: added.
28854 Sat Dec 31 22:57:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28856         * eval.c (rb_thread_save_context): should not recycle scope object used
28857           in a thread.  fixed: [ruby-dev:28177]
28859 Sat Dec 31 19:50:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28861         * ext/syck/rubyext.c: attribute name was truncated with Rev1.64.
28863 Sat Dec 31 11:53:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28865         * lib/generator.rb: (Generator#initialize): should kill @loop_thread
28866           before starting new thread. (occurs when called via Generator#rewind)
28867           [ruby-dev:28184]
28869 Fri Dec 30 18:22:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28871         * gc.c (garbage_collect): mark objects referred from aborting threads.
28872           [ruby-dev:28190]
28874         * win32/Makefile.sub: VC++8 support.
28876 Fri Dec 30 15:17:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28878         * lib/generator.rb (Generator#initialize): ensured to stop @loop_thread.
28879           Mr. Tanaka pointed out one Thread.pass is not enough. [ruby-dev:28185]
28881 Fri Dec 30 12:20:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28883         * lib/generator.rb (Generator#initialize): fixed dead lock. this occurred
28884           when end? was called before @loop_thread was stopped. [ruby-core:7029]
28886 Fri Dec 30 01:04:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28888         * lib/generator.rb: should work with another thread. (more robust code)
28889           [ruby-dev:28177]
28891 Thu Dec 29 23:59:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28893         * eval.c (rb_gc_mark_threads): keep unmarked threads which won't wake
28894           up alone, and mark threads in the loading table.  [ruby-dev:28154]
28896         * eval.c (rb_gc_abort_threads), gc.c (gc_sweep): kill unmarked
28897           threads.  [ruby-dev:28172]
28899 Thu Dec 29 17:02:07 2005  Tanaka Akira  <akr@m17n.org>
28901         * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of
28902           "miniruby".  [ruby-dev:28140]
28904 Thu Dec 29 14:35:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28906         * eval.c (rb_mod_define_method): should save safe_level in the
28907           proc object.  [ruby-dev:28146]
28909 Thu Dec 29 11:22:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28911         * lib/generator.rb: reimplemented Generator class with Thread instead of
28912           callcc, in order to fix memory leak. [ruby-dev:28142]
28914 Wed Dec 28 14:10:05 2005  Tanaka Akira  <akr@m17n.org>
28916         * ia64.s: remove .pred.safe_across_calls directive.
28917           reported by WATANABE Tetsuya.  [ruby-dev:28141]
28919 Wed Dec 28 01:32:39 2005  Tanaka Akira  <akr@m17n.org>
28921         * eval.c (struct thread): add bstr_max.
28922           (rb_thread_save_context): use realloc instead of REALLOC_N
28923           to avoid GC.
28925 Tue Dec 27 23:59:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28927         * lib/optparse.rb (CompletingHash#match): fix for 1.9.
28929 Tue Dec 27 16:59:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28931         * test/drb/drbtest.rb (DRbService::self.ext_service): increase
28932           timeout limit.  a patch from Kazuhiro NISHIYAMA
28933           <zn at mbf.nifty.com>. [ruby-dev:28132]
28935 Tue Dec 27 14:17:55 2005  Tanaka Akira  <akr@m17n.org>
28937         * configure.in: define IA64 for portability.  (HP aC++/ANSI C doesn't
28938           define __ia64__.)
28939           don't check libunwind stuff.
28940           check __libc_ia64_register_backing_store_base.
28942         * defines.h: declare rb_ia64_bsp and rb_ia64_flushrs.
28943           (flush_register_windows): call rb_ia64_flushrs on IA64.
28945         * ia64.s: new file for IA64.
28946           it is separated from C program files because
28947           Intel C++ Compiler for IA64 doesn't support inline assembly.
28949         * common.mk (ia64.$(OBJEXT)): new target.
28951         * ruby.h (RUBY_INIT_STACK): defined.
28952           (ruby_init_stack): declared for RUBY_INIT_STACK.
28954         * main.c (main): precedes RUBY_INIT_STACK before ruby_init.
28956         * gc.c (rb_gc_register_stack_start): new global variable on IA64.
28957           (garbage_collect): simplify register stack marking code.
28958           don't use libunwind.
28959           (Init_stack): initialize rb_gc_register_stack_start.
28960           (ruby_init_stack): new function for RUBY_INIT_STACK.
28962         * eval.c (struct thread): add bstr_pos member for original position of
28963           register stack.
28964           (rb_thread_save_context): simplify register stack saving code.
28965           don't use libunwind.
28966           (rb_thread_restore_context_0): new function.  moved from
28967           rb_thread_restore_context except the stack position checking code.
28968           don't use libunwind for IA64 register stack.
28969           (register_stack_extend): new function.
28970           (stack_extend): make it self-recursive with
28971           the stack position checking code in old rb_thread_restore_context.
28972           (rb_thread_restore_context): just call stack_extend.
28973           (flush_register_windows): removed.
28975           [ruby-dev:28127]
28977 Tue Dec 27 14:09:39 2005  Minero Aoki  <aamine@loveruby.net>
28979         * process.c: new method Process.exec. [ruby-dev:28107]
28981 Tue Dec 27 08:22:15 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28983         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_check):
28984           treat wildcard character in commonName. [ruby-dev:28121]
28986 Mon Dec 26 08:50:36 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28988         * eval.c (ev_const_get): fixed a bug in constant reference during
28989           instance_eval.  [yarv-dev:707]
28991         * eval.c (ev_const_defined): ditto.
28993         * lib/yaml.rb (YAML::add_domain_type): typo fixed.  a patch from
28994           Joel VanderWerf <vjoel at path.berkeley.edu>.
28995           [ruby-talk:165285] [ruby-core:6995]
28997 Fri Dec 23 10:30:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
28999         * ext/digest/sha2/sha2.c (ULL): support AIX C.  a patch from
29000           Kailden <kailden at gmail.com>.  [ruby-core:06984]
29002 Wed Dec 21 16:47:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29004         * file.c (w32_io_info): should return handle because FileIndex is
29005           valid only while file is open. [ruby-dev:28088]
29007 Wed Dec 21 12:12:21 2005  Tanaka Akira  <akr@m17n.org>
29009         * test/pathname/test_pathname.rb (test_kernel_open): use
29010           File.identical?.
29011           [ruby-talk:171804]
29013 Tue Dec 20 22:41:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29015         * eval.c (eval_under_i): evaluate source in caller's frame.
29016           [ruby-dev:28076]
29018 Tue Dec 20 12:53:23 2005  why the lucky stiff  <why@ruby-lang.org>
29020         * ext/syck/rubyext.c (syck_emitter_reset): to ensure compatibility
29021           with previous Ruby versions, documents are no longer headless.
29023 Tue Dec 20 12:33:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29025         * ext/syck/rubyext.c (syck_node_transform): ruby object holding
29026           explicitly freed SyckNode caused SEGV. [ruby-dev:28067]
29028         ... I think syck GC problem was solved now!
29030 Tue Dec 20 01:46:48 2005  Tanaka Akira  <akr@m17n.org>
29032         * io.c (rb_f_backquote): fix a GC problem on
29033           IA64 with gcc 4.0.3 20051216 (prerelease) -O3.
29035 Mon Dec 19 23:32:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29037         * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub.
29039         * main.c (always_gc): dllimport is required for VC to import a DLL
29040           symbol.  fixed: [ruby-dev:28051]
29042         * parse.y (rb_symname_p): fixed wrong validation.  [ruby-dev:28047]
29044 Mon Dec 19 23:09:24 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29046         * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
29047           in gram.c to insert node from rb_syck_bad_anchor_handler into
29048           SyckParser's hash table. if GC occurs in st_insert, it's not under
29049           SyckParser's mark system yet. so RString can be released wrongly.
29051         * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
29052           NULL or not before S_FREE.
29054         * ext/syck/rubyext.c (syck_parser_assign_io): rb_check_string_type can
29055           return new RString. if so, it becomes unreachable from GC after
29056           returns syck_parser_assign_io, and can be freed by GC. (dangling
29057           in syck io system) so extends its life time till syck_parse is called.
29059         * ext/syck/rubyext.c (syck_parser_s_alloc): always allocates bonus,
29060           so no need to check if NULL, and "volatile VALUE hash"
29061           is not needed. (bonus->port was not protected in syck_emitter_reset)
29063         * ext/syck/rubyext.c (syck_mark_parser): ditto.
29065         * ext/syck/rubyext.c (syck_parser_load): ditto.
29067         * ext/syck/rubyext.c (syck_parser_load_documents): ditto.
29069         * ext/syck/rubyext.c (syck_emitter_s_alloc): ditto.
29071         * ext/syck/rubyext.c (syck_mark_emitter): ditto.
29073         * ext/syck/rubyext.c (syck_emitter_reset): ditto.
29075         * ext/syck/rubyext.c (syck_scalar_value_set): "should set newly
29076           allocated memory instead of RString's internal storage" stuff again.
29077           by this, should call syck_free_node instead of rb_syck_free_node.
29079         * ext/syck/rubyext.c (syck_node_type_id_set): ditto.
29081         ... I believe syck GC problem was solved by this.
29083 Mon Dec 19 12:20:59 2005  Tanaka Akira  <akr@m17n.org>
29085         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): activate only
29086           before gcc 4.0.3 on SPARC and IA64.
29088 Mon Dec 19 11:37:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29090         * ext/syck/rubyext.c: sorry, I reverted my "should set newly
29091           allocated memory instead of RString's internal storage" stuff.
29092           node allocated in rubyext.c seems to be freed by rb_syck_free_node
29093           not syck_free_node, and it won't free data.str->ptr and type_id.
29095          (I still think this is unsafe because RString(foo)->ptr becomes
29096           dangling pointer when RString is modified or freed, but anyway
29097           I misunderstood, so go back to original code for now)
29099 Sat Dec 17 21:50:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29101         * ext/syck/rubyext.c (syck_emitter_reset): should initialize
29102           emitter->bonus->oid. otherwise rb_gc_mark crashes.
29104         * ext/syck/rubyext.c (syck_mark_parser): should mark anchor nodes
29105           because they hold ruby objects. (ie: rb_syck_bad_anchor_handler)
29107 Sat Dec 17 11:00:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29109         * ext/syck/rubyext.c (rb_syck_compile): avoid potential memory
29110           leak.
29112         * ext/syck/rubyext.c (syck_set_ivars): avoid potential memory
29113           leak by explicit symbol allocation.
29115 Sat Dec 17 03:57:01 2005  Tanaka Akira  <akr@m17n.org>
29117         * bignum.c (rb_big_rshift): fix a GC problem on
29118           IA64 with gcc 4.0.3 20051216 (prerelease).
29120 Sat Dec 17 03:30:23 2005  Tanaka Akira  <akr@m17n.org>
29122         * eval.c (bmcall): fix a GC problem by tail call on
29123           IA64 with gcc 4.0.3 20051216 (prerelease).
29125 Fri Dec 16 17:53:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29127         * ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.
29129         * ext/syck/rubyext.c: should protect global variable from GC.
29131 Fri Dec 16 11:44:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29133         * ext/syck/rubyext.c (syck_resolver_tagurize): fixed memory leak.
29135         * ext/syck/rubyext.c (syck_node_type_id_set): should set newly
29136           allocated memory instead of RString's internal storage.
29138         * ext/syck/rubyext.c (syck_scalar_value_set): ditto.
29140         ... these fixes won't fix [ruby-dev:27839]. more work is needed.
29142 Fri Dec 16 04:38:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29144         * lib/delegate.rb (Delegator::method_missing): should delegate
29145           block as well.
29147 Thu Dec 15 19:57:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29149         * lib/cgi.rb (CGI::QueryExtension::MorphingBody): fix criteria to
29150           use Tempfile.  A fix from Zev Blut <rubyzbibd at ubit.com>.
29151           [ruby-core:06076]
29153         * string.c: remove global functions work on $_.
29155 Thu Dec 15 12:35:14 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29157         * lib/tmpdir.rb: merged RDoc patch from Eric Hodel <drbrain at
29158           segment7.net>.  [ruby-core:06894]
29160 Thu Dec 15 01:33:31 2005  Tanaka Akira  <akr@m17n.org>
29162         * ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
29163           x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
29165 Wed Dec 14 23:50:20 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29167         * lib/rdoc/parsers/parse_c.rb (find_class_comment): fix for class
29168           document with prototypes.  [ruby-core:06863]
29170 Wed Dec 14 23:39:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29172         * dir.c (has_magic): glob names contain alphabets to enable case fold
29173           search.  [ruby-dev:27735]
29175         * dir.c (Init_Dir): FNM_SYSCASE which is default case fold flag.
29176           [ruby-dev:23296]
29178 Wed Dec 14 12:01:26 2005  Tanaka Akira  <akr@m17n.org>
29180         * marshal.c (r_object0): fix a GC problem for reading a bignum on
29181           IA64 with gcc 3.3.5 (Debian 1:3.3.5-13).
29183 Tue Dec 13 12:23:47 2005  Tanaka Akira  <akr@m17n.org>
29185         * re.c (rb_reg_regcomp): fix a GC problem on x86_64 with
29186           gcc 3.3.5 (Debian 1:3.3.5-13).
29188 Tue Dec 13 01:44:16 2005  Tanaka Akira  <akr@m17n.org>
29190         * array.c (rb_ary_diff): fix a GC problem on IA64 with
29191           gcc 3.3.5 (Debian 1:3.3.5-13).
29192           When rb_ary_push is called, there was no register which contains
29193           `hash' but `&RHASH(hash)->tbl' instead.
29195 Tue Dec 13 00:08:09 2005  Tanaka Akira  <akr@m17n.org>
29197         * sprintf.c (rb_str_format): fix a GC problem.
29198           [ruby-dev:28001]
29200 Mon Dec 12 15:51:22 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29202         * test/openssl/test_ssl.rb (test_parallel): call GC.start to close
29203           unused files. [ruby-dev:27981]
29205 Mon Dec 12 09:58:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29207         * range.c (range_cover): new method Range#cover? added.  the
29208           method name might be changed.  thanks to takano32 at
29209           http://www.rubyist.net/~matz/20051210.html#c08 for name
29210           suggestion.  [ruby-talk:167182]
29212 Mon Dec 12 00:33:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29214         * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
29215           protect temporary context object.  [ruby-dev:27979]
29217         * ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
29218           be called before actual variable initialization.
29219           [ruby-dev:27986]
29221 Sun Dec 11 23:54:07 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29223         * ext/tk/*: update to support libraries in ActiveTcl8.4.12.0
29224           (see ext/tk/ChangeLog.tkextlib).
29226         * ext/tk/sample/scrollframe.rb: add a new sample.
29228 Sun Dec 11 22:07:58 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29230         * test/rinda/test_rinda.rb (test_remote_array_and_hash): pseudo remote
29231           objects are protected against GC. [ruby-dev:27911]
29233 Sat Dec 10 01:06:06 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
29235         * lib/matrix.rb: add Matrix#determinant_e, Matrix#rank_e.
29236           [ruby-dev:27820] and related thread.
29238 Sat Dec 10 00:31:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29240         * eval.c (calling_scope_t): gave names to magic numbers for rb_call().
29241           [ruby-dev:27978]
29243 Fri Dec  9 23:31:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29245         * lib/rexml/encoding.rb (encoding=): give priority to particular
29246           conversion to iconv.  [ruby-core:06520]
29248 Fri Dec  9 23:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29250         * range.c (range_include): return false unless included in numeric
29251           range.  fixed: [ruby-dev:27975]
29253 Thu Dec  8 02:07:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29255         * eval.c (umethod_bind): adjust invoking class for module method.
29256           [ruby-dev:27964]
29258 Thu Dec  8 00:40:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29260         * eval.c (call_trace_func): klass parameter should be a
29261           class/module that defines calling method.  [ruby-talk:169307]
29263 Wed Dec  7 17:10:27 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
29265         * sprintf.c (rb_f_sprintf): [ruby-dev:27967]
29267 Wed Dec  7 16:39:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29269         * range.c (range_include): use discrete membership for non Numeric
29270           values, for example, String.
29272         * numeric.c (num_scalar_p): new method. [ruby-dev:27936]
29274         * lib/complex.rb (Complex#scalar?): ditto.
29276 Wed Dec  7 15:31:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29278         * sprintf.c (rb_str_format): integer overflow check added.
29280         * sprintf.c (GETASTER): ditto.
29282 Wed Dec  7 01:02:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29284         * ext/tk/README.macosx-aqua: [new document] tips to avoid the known
29285           bug on platform specific dialogs of Tcl/Tk Aqua on MacOS X.
29287         * ext/tk/tcltklib.c: fix bug on switching threads and waiting on the
29288           deleted interpreter on vwait and tkwait command.
29290         * ext/tk/lib/multi-tk.rb: kill the meaningless loop for the deleted Tk
29291           interpreter.
29293         * ext/tk/sample/demos-jp/image3.rb: [bug fix] wrong argument.
29295         * ext/tk/sample/demos-en/image3.rb: ditto.
29297         * ext/tk/sample/demos-jp/menu.rb: fix message for MacOS X.
29299         * ext/tk/sample/demos-jp/menu8x.rb: ditto.
29301         * ext/tk/sample/demos-en/menu.rb: ditto.
29303 Tue Dec  6 16:48:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29305         * gc.c (ruby_xmalloc2): change check condition for integer
29306           overflow.  [ruby-dev:27399]
29308         * gc.c (ruby_xrealloc2): ditto.
29310 Tue Dec  6 16:37:57 2005  Yuya Nishida  <yuya@j96.org>
29312         * eval.c (exec_under): avoid accessing ruby_frame->prev.
29313           [ruby-dev:27948]
29315 Fri Dec  2 19:06:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29317         * dir.c (Compare): should not fold double byte alphabet on win9x.
29319 Thu Dec  1 00:50:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29321         * eval.c (rb_funcall2): allow to call protected methods.
29322           fixed: [ruby-dev:27890]
29324 Wed Nov 30 23:52:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29326         * parse.y (struct parser_params): fields common to ripper must be
29327           placed at each same offset.
29329         * parse.y (NEWHEAP, ADD2HEAP): set count after pointer was set.
29330           fixed: [ruby-dev:27896]
29332 Wed Nov 30 13:43:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29334         * misc/ruby-mode.el (ruby-expr-beg): support $! at the end of
29335           expression.   [ruby-dev:27868]
29337 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
29339         * lib/pp.rb (PP::PPMethods#object_address_group): mask an address with
29340           word size.
29342 Tue Nov 29 23:57:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29344         * parse.y (struct parser_params): heap must be placed at same offset
29345           also in ripper.y.  fixed: [ruby-dev:27846]
29347         * parse.y (yycompile): prevent vparser from tail call optimization.
29348           fixed: [ruby-dev:27851]
29350         * parse.y (parser_mark): value needs to be marked.
29351           fixed: [ruby-dev:27845]
29353 Tue Nov 29 22:45:30 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29355         * lib/drb/observer.rb (notify_observers): follow change of observer.rb.
29356           fixed: [ruby-core:6796]
29358 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
29360         * lib/pp.rb (PP::PPMethods#object_address_group): adjust address format.
29362 Mon Nov 28 18:55:22 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29364         * ext/socket/socket.c (init_inetsock_internal): remove setting
29365           SO_REUSEADDR option on server socket on Cygwin.
29366           fixed: [ruby-core:6765] ([ ruby-Bugs-2872 ])
29368 Mon Nov 28 13:11:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29370         * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken
29371           error message on bccwin32 + winsock)
29373 Mon Nov 28 09:15:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29375         * lib/mkmf.rb (create_makefile): should not change sodir with
29376           dir.gsub!. (bccwin32 failed to install third party extensions)
29377           [ruby-dev:27834]
29379 Sun Nov 27 05:37:20 2005  Tanaka Akira  <akr@m17n.org>
29381         * lib/pathname.rb: use File.basename to decompose pathnames.
29382           experimental Windows support.
29384 Sun Nov 27 00:56:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
29386         * lib/wsdl/xmlSchema/complexContent.rb: missing
29387           ComplexContent#elementformdefault method.
29389 Sat Nov 26 19:57:45 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
29391         * dln.c (conv_to_posix_path): should initialize posix.
29393 Fri Nov 25 20:34:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29395         * lib/xmlrpc/datetime.rb (DateTime::to_a): comparison with non
29396           array-convertible object must return false.
29398 Fri Nov 25 14:34:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29400         * range.c (range_max): treat end exclusion without iteration if
29401           the end value is an integer.  [ruby-talk:167433]
29403 Fri Nov 25 12:52:57 2005  Kouhei Sutou  <kou@cozmixng.org>
29405         * lib/rss/rss.rb: added backward compatibility codes.
29406         * lib/rss/parser.rb: ditto.
29407         * test/rss/test_parser.rb: ditto.
29408         * test/rss/test_2.0.rb: ditto.
29410         * test/rss/test_content.rb: use #__send__ instead of #funcall for
29411           no private method.
29413 Fri Nov 25 12:39:56 2005  Kouhei Sutou  <kou@cozmixng.org>
29415         * lib/rss/rss.rb: improved type conversion.
29416         * lib/rss/1.0.rb: ditto.
29417         * lib/rss/0.9.rb: ditto.
29418         * lib/rss/2.0.rb: ditto.
29419         * lib/rss/image.rb: ditto.
29420         * lib/rss/syndication.rb: ditto.
29422         * test/rss/test_2.0.rb: added type conversion tests.
29423         * test/rss/test_accessor.rb: ditto.
29424         * test/rss/test_to_s.rb: ditto.
29425         * test/rss/test_syndication.rb: ditto.
29426         * test/rss/test_setup_maker_2.0.rb: ditto.
29427         * test/rss/test_setup_maker_1.0.rb: ditto.
29428         * test/rss/test_setup_maker_0.9.rb: ditto.
29429         * test/rss/test_maker_sy.rb: ditto.
29430         * test/rss/test_maker_image.rb: ditto.
29431         * test/rss/test_maker_2.0.rb: ditto.
29432         * test/rss/test_maker_0.9.rb: ditto.
29433         * test/rss/test_image.rb: ditto.
29435         * test/rss/test_maker_1.0.rb: use assert instead of assert_equal.
29437         * test/rss/rss-assertions.rb: improved type conversion assertions.
29439 Fri Nov 25 10:38:20 2005  Kouhei Sutou  <kou@cozmixng.org>
29441         * lib/rss/image.rb: added Image prefix.
29443         * lib/rss/maker/image.rb: ditto.
29445 Fri Nov 25 10:33:02 2005  Kouhei Sutou  <kou@cozmixng.org>
29447         * test/rss/test_2.0.rb: added RSS 2.0 tests.
29449         * test/rss/rss-assertions.rb: extended XML stylesheet assertion.
29451         * lib/rss/0.9.rb: added initialize method.
29453         * test/rss/test_1.0.rb: cleanup.
29455 Fri Nov 25 10:29:48 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29457         * range.c (range_min): use <=> comparison rather than iteration.
29458           [ruby-talk:167420]
29460         * range.c (range_max): ditto.
29462 Thu Nov 24 01:31:44 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29464         * file.c (w32_io_info): CreateFile failed on Win9x if file was already
29465           opened. (FILE_SHARE_READ was needed, but actually I don't understand
29466           the flags of CreateFile well...)
29468 Wed Nov 23 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29470         * numeric.c (num_div): use floor rather than rb_Integer().
29471           [ruby-dev:27674]
29473 Wed Nov 23 22:34:15 2005  Kouhei Sutou  <kou@cozmixng.org>
29475         * lib/rss/parser.rb: added entity handling type predicate.
29476         * lib/rss/rexmlparser.rb: ditto.
29477         * lib/rss/xmlparser.rb: ditto.
29478         * lib/rss/xmlscanner.rb: ditto.
29480         * lib/rss/xmlscanner.rb: more robust entity handling.
29482         * test/rss/test_parser.rb: added an entity handling test.
29484 Wed Nov 23 20:59:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29486         * ext/tk/lib/tk.rb: add Tk.pkgconfig_list and Tk.pkgconfig_get
29487           [Tk8.5 feature].
29489         * ext/tk/lib/tk/text.rb: supports new indices modifiers on a Text
29490           widget [Tk8.5 feature].
29492         * ext/tk/lib/tk/virtevent.rb: add TkNamedVirtualEvent.
29494         * ext/tk/lib/tk/autoload.rb: ditto.
29496         * ext/tk/lib/tk/event.rb: add :data key for virtual events [Tk8.5
29497           feature].
29499 Wed Nov 23 18:52:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29501         * file.c (w32_io_info): should not call GetFileInformationByHandle
29502           for pipe.
29504         * file.c (w32_io_info): checks return value from rb_w32_get_osfhandle.
29506         * file.c (w32_io_info): now can identify directory on WinNT.
29508 Wed Nov 23 18:46:53 2005  Kouhei Sutou  <kou@cozmixng.org>
29510         * lib/rss/: use #__send__ instead of #send.
29511         * test/rss/: ditto.
29513 Wed Nov 23 18:32:56 2005  Kouhei Sutou  <kou@cozmixng.org>
29515         * test/rss/test_taxonomy.rb: use #reject directory.
29517 Wed Nov 23 18:26:00 2005  Kouhei Sutou  <kou@cozmixng.org>
29519         * lib/rss/taxonomy.rb: changed class or module prefix to
29520           Taxonomy from Taxo.
29521         * lib/rss/maker/taxonomy.rb: ditto.
29523 Wed Nov 23 18:21:11 2005  Kouhei Sutou  <kou@cozmixng.org>
29525         * lib/rss/maker/taxonomy.rb: implemented taxonomy module for RSS
29526           Maker.
29527         * lib/rss/taxonomy.rb: supported RSS Maker.
29528         * lib/rss/maker.rb: added taxonomy module support.
29530         * lib/rss/rss.rb: adjusted to other element API.
29531         * lib/rss/1.0.rb: adjusted to other element API but backward
29532           compatibility is reserved.
29533         * lib/rss/0.9.rb: ditto.
29535         * test/rss/test_maker_taxo.rb: added test case for taxonomy module
29536           for RSS Maker.
29537         * test/rss/test_setup_maker_1.0.rb: added tests for taxo:topic.
29539         * test/rss/test_setup_maker_1.0.rb: added backward compatibility
29540           test.
29541         * test/rss/test_setup_maker_0.9.rb: ditto.
29542         * test/rss/test_setup_maker_2.0.rb: ditto.
29544         * test/rss/rss-testcase.rb: added convenience method for setting
29545           up taxo:topic.
29546         * test/rss/rss-assertions.rb: added assertion for taxo:topic.
29548         * sample/rss/blend.rb: followed new API.
29550 Wed Nov 23 17:42:24 2005  Kouhei Sutou  <kou@cozmixng.org>
29552         * lib/rss/rss.rb: fixed a indentation bug.
29554         * lib/rss/taxonomy.rb: fixed <taxo:topic> #to_s bug.
29556         * test/rss/test_taxonomy.rb: added a #to_s test.
29558 Wed Nov 23 03:40:49 2005  Guy Decoux  <ts@moulon.inra.fr>
29560         * re.c (KR_REHASH): should cast to unsigned for 64bit CPU.
29561           [ruby-core:06721]
29563 Wed Nov 23 07:26:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29565         * ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.
29567         * ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use
29568           OPENSSL_malloc to allocate X509V3_CTX.
29570         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use
29571           X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which
29572           values are placed in separate section).
29574         * test/openssl/test_x509ext.rb: new file.
29576 Wed Nov 23 01:22:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29578         * file.c (test_identical): test if two files are identical.
29580         * file.c (rb_f_test): support DOSISH systems where st_ino is not
29581           reliable.  fixed: [ruby-core:06672]
29583         * win32.h, win32.c (rb_w32_osid): check the running platform.
29585 Tue Nov 22 23:52:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29587         * lib/optparse.rb: match incomplete (in current enconding) multibyte
29588           string.  http://inamode6.tokuhirom.dnsalias.org/show/1551
29590 Tue Nov 22 18:36:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29592         * win32/win32.c (winnt_stat): set mapped errno instead of ENOENT.
29594 Tue Nov 22 14:36:54 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29596         * file.c (rb_file_s_basename): skip slashes just after UNC top slashes.
29598         * test/ruby/test_path.rb (test_dirname, test_basename): follow new
29599           spec. and add new tests.
29601 Tue Nov 22 13:30:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29603         * win32/win32.c (rb_w32_stat): Dir.chdir('//server/shared');
29604           p Dir.glob('*') should work on WinNT. (implemented our own
29605           stat(2) on WinNT) [ruby-list:41552] [ruby-dev:27711]
29607 Tue Nov 22 02:31:53 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29609         * ext/tk/lib/tkextlib/tile.rb: bug fix (Tk::Tile::USE_TTK_NAMESPACE
29610           is not defined).
29612 Tue Nov 22 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29614         * file.c (rb_file_s_basename): DOSISH_UNC is defined on cygwin but
29615           DOSISH is not.  fixed: [ruby-dev:27797]
29617 Mon Nov 21 22:50:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29619         * file.c (rb_path_skip_prefix, rb_file_s_basename): UNC without path
29620           should not be splitted.  fixed: [ruby-dev:27776] [ruby-dev:27786]
29622         * parse.y (dsym): prohibit empty symbol literal by interpolation.
29623           fixed: [ruby-talk:166529]
29625 Mon Nov 21 16:03:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29627         * win32/setup.mk: findstr doesn't exist on win9x.
29628           fixed: [ruby-dev:27756]
29630 Sun Nov 20 21:39:27 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
29632         * regparse.c (fetch_token_in_cc): tok->escaped should be
29633           initialized.  [ruby-dev:27763]
29635 Sun Nov 20 22:34:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29637         * parse.y (rb_symname_p): [ not followed by ] is not valid symbol.
29638           fixed: [ruby-talk:166520]
29640 Sat Nov 19 19:57:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29642         * lib/fileutils.rb (FileUtils::ln): ln documentation fix.
29643           [ruby-core:06661]
29645 Sat Nov 19 08:19:38 2005  Zach Dennis  <zdennis@mktec.com>
29647         * ext/socket/socket.c: Socket Documentation. [ruby-core:6552]
29649 Sat Nov 19 07:34:32 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29651         * ext/tk/lib/tk/font.rb: remove dependency on Ruby's version (1.8
29652           or 1.9).
29654         * ext/tk/lib/tkextlib/ICONS/icons.rb: ditto.
29656         * ext/tk/sample/tkextlib/treectrl/demo.rb: ditto.
29658 Fri Nov 18 18:07:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29660         * file.c (rb_file_s_dirname): should use skipprefix for UNC path.
29661           pointed out by nobu ([ruby-dev:27744]). fixed: [ruby-core:5076]
29663 Fri Nov 18 17:35:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29665         * ext/tk/lib/multi-tk.rb: add restriction to access the entried
29666           command table and manipulate other IPs (for reason of security).
29667           Now, a IP object can be controlled by only its master IP or the
29668           default IP.
29670         * ext/tk/lib/remote-tk.rb: add restriction to manipulate.
29672         * ext/tk/tcltklib.c (ip_is_slave_of_p): add TclTkIp#slave_of?(ip)
29673           to check manipulability.
29675         * ext/tk/lib/tk.rb: bug fix on handling of Tcl's namespaces.
29677         * ext/tk/lib/tk/namespace.rb: ditto.
29679 Fri Nov 18 16:47:33 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29681         * file.c (rb_file_s_dirname): added checks for some patterns with drive
29682           letter. fixed: [ruby-dev:27738]
29684         * test/ruby/test_path.rb (test_dirname): added tests for above
29685           patterns.
29687 Fri Nov 18 12:19:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29689         * win32/win32.h (S_IFIFO): r,w = IO.pipe; r.stat.pipe? now
29690           returns true on VisualC++6.
29692 Thu Nov 17 17:58:00 2005  Kouhei Sutou  <kou@cozmixng.org>
29694         * lib/rss/1.0.rb: added convenience method 'resources'.
29696         * lib/rss/taxonomy.rb: ditto.
29698         * test/rss/rss-assertions.rb: added test for 'resources'.
29700         * test/rss/test_taxonomy.rb: ditto.
29702 Thu Nov 17 17:53:30 2005  Kouhei Sutou  <kou@cozmixng.org>
29704         * lib/rss/taxonomy.rb: implemented taxonomy module.
29706         * test/rss/test_taxonomy.rb: added tests for taxonomy support.
29708 Thu Nov 17 17:40:19 2005  Kouhei Sutou  <kou@cozmixng.org>
29710         * lib/rss/1.0.rb: added rdf:Bag.
29712 Thu Nov 17 13:52:00 2005  Kouhei Sutou  <kou@cozmixng.org>
29714         * lib/rss/rss.rb: removed needless argument 'prefix'.
29716         * lib/rss/parser.rb: ditto.
29718 Wed Nov 16 23:24:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29720         * common.mk (static-ruby): overridable.
29722         * ext/extmk.rb (parse_args): force to link extensions statically only
29723           if static is given for extstatic.
29725         * ext/extmk.rb (RUBY, RUBYW): overridable.
29727 Wed Nov 16 01:29:31 2005  Kouhei Sutou  <kou@cozmixng.org>
29729         * lib/rss/trackback.rb: added TrackBack prefix.
29731         * lib/rss/maker/trackback.rb: ditto.
29733 Wed Nov 16 01:26:13 2005  Kouhei Sutou  <kou@cozmixng.org>
29735         * lib/rss/rss.rb (RSS::VERSION): 0.1.5 -> 0.1.6.
29737         * test/rss/test_version.rb (RSS::TestVersion#test_version): ditto.
29739 Tue Nov 15 23:54:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29741         * file.c (file_load_ok): eaccess() returns 0 on success.
29742           fixed: [ruby-dev:27713]
29744 Tue Nov 15 16:36:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29746         * array.c (rb_ary_fill): previous commit disabled this usage:
29748             a = [0,1,2,3,4,5,6,7,8,9]
29749             a.fill {|i| a[i] * 10} #=> [nil, nil, ...., nil]
29751           previous commit has the advantage of early garbage collection, but
29752           potentially this would break some script. so I reverted behavior.
29754 Tue Nov 15 16:15:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29756         * file.c (file_load_ok): use eaccess() instead of actually opening
29757           the file.  [ruby-talk:156378]
29759         * lib/jcode.rb (String::reverse): add new methods.
29760           [ruby-list:41245]
29762 Tue Nov 15 15:49:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29764         * array.c (rb_ary_fill): tail elements were vanished when the middle
29765           part of array was filled. (ie: [0,1,2,3,4].fill(-1,2,1) => [0,1,-1])
29767         * test/ruby/test_array.rb (test_fill): added.
29769 Tue Nov 15 14:39:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29771         * array.c (rb_ary_fill): should adjust array length correctly when
29772           an array is expanded in the fill process.  [ruby-core:06625]
29774 Mon Nov 14 23:49:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29776         * file.c (rb_file_s_readlink): ERANGE will occur only on GPFS.
29777           [ruby-dev:27699]
29779 Mon Nov 14 17:36:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29781         * array.c (rb_ary_first): RDoc update from Daniel Berger
29782           <djberg96@yahoo.com>.  [ruby-core:06577].
29784 Sun Nov 13 10:55:24 2005  Minero Aoki  <aamine@loveruby.net>
29786         * lib/uri/common.rb (escape): regard second argument as a
29787           character set. [ruby-dev:27692]
29789 Sat Nov 12 08:36:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29791         * configure.in, eval.c, intern.h: check fd_mask type.
29793         * configure.in (socketpair): need to be checked.
29795 Fri Nov 11 19:53:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29797         * eval.c, intern.h: failed to compile where NFDBITS is defined but
29798           howmany() is not defined. [ruby-dev:27680]
29800         * io.c (is_socket): failed to compile where S_ISSOCK is not defined.
29802         * io.c (pipe_open): failed to compile where socketpair is not supported.
29804 Fri Nov 11 08:20:56 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29806         * Makefile.in (OUTFLAG): keep trailing spaces.  [ruby-dev:27666]
29808         * mkconfig.rb: substitution references added.
29810 Fri Nov 11 07:39:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29812         * configure.in: undef HAVE_LINK on BeOS. (link(2) always returns
29813           EINVAL, and this causes error in test/fileutils.)
29815         * file.c: override chown(2) and fchown(2) on BeOS. (these functions
29816           should not change user/group id if -1 is passed as corresponding
29817           argument, and this causes error in test/fileutils too)
29818           [ruby-dev:27672]
29820 Thu Nov 10 21:05:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29822         * lib/shellwords.rb: fix for blank but not empty string.
29823           fixed: [ruby-dev:27663]
29825 Wed Nov  9 08:39:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29827         * lib/shellwords.rb: refactored.  [ruby-core:06581]
29829 Tue Nov  8 17:35:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29831         * intern.h, eval.c (rb_thread_signal_raise): constified.
29833         * signal.c: cosmetic change.
29835 Tue Nov  8 15:32:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29837         * lib/drb/ssl.rb (DRb::SSLConfig#accept): fixed typo.
29838           [ruby-dev:27560] [ruby-core:4627]
29840 Mon Nov  7 20:54:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29842         * ext/iconv/iconv.c: iconvctl() support.  [EXPERIMENTAL]
29844 Mon Nov  7 16:23:23 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
29846         * ext/openssl/ossl.h: need to include winsock2.h before including
29847           windows.h by some openssl headers.
29849 Mon Nov  7 13:43:51 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29851         * ext/tk/stubs.c (_nativethread_consistency_check): use simpler
29852           (low cost) way to check whether the Tcl interpreter was compiled
29853           with threads enabled of not.
29855         * ext/tk/tcltklib.c: reduce warnings.
29857         * ext/tk/tkutil/tkutil.c: ditto.
29859 Mon Nov  7 00:06:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29861         * lib/yaml.rb: removed :nodoc: to generate Kernel doc. [ruby-core:6324]
29863 Sun Nov  6 23:39:13 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29865         * ext/iconv/iconv.c (Iconv::BrokenLibrary): exception when detected a
29866           bug of underlying library.
29868 Sun Nov  6 21:43:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29870         * ext/tk/stubs.c (ruby_tcl_create_ip_and_stubs_init): should touch
29871           interpreter after initialization is done. [ruby-dev:27638]
29873 Sun Nov  6 20:13:27 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29875         * file.c (rb_file_s_readlink): readlink(2) on AIX fails with ERANGE if
29876           buffer size is less than required.  fixed: [ruby-dev:27634]
29878 Sat Nov  5 13:42:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29880         * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias
29881           symbols.  [ruby-dev:27532]
29883         * bcc32/mkexports.rb, win32/mkexports.rb: make aliases in DLL.
29885         * win32/win32.c, win32/win32.h: replace symbols only when RUBY_EXPORT
29886           is defined.
29888 Thu Nov  3 07:57:39 2005  Minero Aoki  <aamine@loveruby.net>
29890         * lib/open-uri.rb (open_loop): find_proxy should return nil when
29891           proxy does not exist. [ruby-dev:27630]
29893 Wed Nov  2 20:25:28 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29895         * ext/tk/extconf.rb: ext/tk/extconf.rb: change the check parameter
29896           for Win32.
29898 Wed Nov  2 19:03:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29900         * ext/tk/tcltklib.c (ip_rbUpdateObjCmd, ip_rb_threadUpdateObjCmd):
29901           passed improper flags to DoOneEvent().
29903         * ext/tk/tkutil/tkutil.c: use rb_obj_respond_to() instead of
29904           rb_respond_to().
29906 Tue Nov  1 14:20:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29908         * eval.c (rb_call_super): should call method_missing if super is
29909           called from Kernel method.
29911         * eval.c (exec_under): frame during eval should preserve external
29912           information.
29914 Tue Nov  1 10:48:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29916         * ext/openssl/extconf.rb: should check ERR_peek_last_error().
29917           [ruby-dev:27597]
29919         * ext/openssl/ossl.c (ossl_raise): ditto.
29921 Mon Oct 31 17:34:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29923         * configure.in: use proper option for Sun linker. A patch from
29924           Shinya Kuwamura <kuwa at labs.fujitsu.com>.  [ruby-dev:27603]
29926 Mon Oct 31 05:46:08 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29928         * ext/openssl/ossl_cipher.c (ossl_cipher_update): input data must
29929           not be empty. [ruby-talk:161220]
29931         * test/openssl/test_cipher.rb: add test for Cipher#update("").
29933 Mon Oct 31 05:38:26 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29935         * lib/webrick/httpservlet/cgihandler.rb
29936           (WEBrick::HTTPServlet::CGIHandler#do_GET): the value of Set-Cookie:
29937           header field should be splited into each cookie.  [ruby-Bugs:2199]
29939         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookie): new method
29940           to parse the value of Set-Cookie: header field.
29942         * test/webrick/test_cookie.rb, test/webrick/test_cgi.rb,
29943           test/webrick/webrick.cgi: add some test for cookie.
29945 Mon Oct 31 02:33:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29947         * numeric.c (fix_rshift): RDoc fix.  [ruby-core:6351]
29949         * util.h (strtod): add #undef for platforms defines strtod()
29950           macro.   [ruby-dev:27563]
29952 Mon Oct 31 02:31:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29954         * test/ruby/test_float.rb (test_precision): test by assert_in_delta.
29955           [ruby-dev:27575]
29957 Sat Oct 29 01:58:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29959         * ext/etc/etc.c: document update from mathew <meta@pobox.com>.
29960           [ruby-core:06473]
29962         * ext/fcntl/fcntl.c: ditto.
29964 Sat Oct 29 16:56:03 2005  Tadayoshi Funaba  <tadf@dotrb.org>
29966         * lib/date.rb: added seven predicates sunday? to saturday?.
29968         * lib/date.rb: added two methods {prev,next}_month,
29969           that are almost same as << and >>.
29971 Thu Oct 27 20:34:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29973         * enumerator.c (enumerator_allocate): allow subclassing.
29975 Thu Oct 27 16:45:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29977         * string.c (scan_once): wrong condition to use mbclen2().
29978           [ruby-dev:27535]
29980 Thu Oct 27 11:53:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29982         * missing.h, missing/memcmp.c, missing/memmove.c:
29983           ANSI compatible interface.
29985 Wed Oct 26 09:15:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29987         * ext/syck/implicit.c (syck_type_id_to_uri): should return
29988           newly allocated memory. otherwise, type_id will be freed
29989           twice. [ruby-dev:27384] [ruby-core:6385]
29991 Wed Oct 26 01:58:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29993         * configure.in (RUBY_EXTERN): macro to export symbols in shared
29994           library.  [ruby-core:05528]
29996         * defines.h, {bcc32,win32,wince}/Makefile.sub (RUBY_EXTERN): moved to
29997           configuration pass.
29999         * ext/extmk.rb (extmake): RUBY_EXTERN for static linked extensions.
30001 Tue Oct 25 20:06:59 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30003         * ruby.h (Qfalse, Qtrue, Qnil, Qundef): make sure these immediate
30004           values have VALUE type. there is an environment where sizeof(VALUE)
30005           != sizeof(int) like IA64. if 32bit integer (Qtrue) is passed to ANYARGS
30006           and received by 64bit integer (VALUE), upper bits may have garbage value.
30007           [ruby-dev:27513]
30009 Tue Oct 25 15:32:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30011         * lib/rational.rb: applied documentation patch from Gavin Sinclair
30012           <gsinclair@gmail.com>.  [ruby-core:06364]
30014         * lib/irb.rb (IRB::Irb::eval_input): handle prompts with newlines
30015           in irb auto-indentation mode.  [ruby-core:06358]
30017 Tue Oct 25 14:21:46 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30019         * gc.c (garbage_collect): sorry, previous commit was incorrect.
30020           [ruby-core:6386]
30022 Tue Oct 25 13:40:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30024         * gc.c (garbage_collect): return now whether there're rooms for new
30025           objects, rather than whether GC run. fixed: [ruby-core:6376]
30027 Tue Oct 25 02:12:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30029         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::LABEL_LIST_RE):
30030           reduce redundant backtrack.  [ruby-talk:161771]
30032 Tue Oct 25 00:35:33 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30034         * lib/rinda/*: RDoc documentation from Eric Hodel
30035           <drbrain@segment7.net> added.
30037 Mon Oct 24 21:14:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30039         * configure.in, io.c: use sys/syscall.h if syscall.h is not available.
30040           [ruby-core:06247]
30042 Mon Oct 24 20:38:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30044         * ext/Win32API/lib/win32/resolv.rb (get_info): support multiple DNS.
30045           fixed: [ruby-list:40058], [ruby-dev:27479]
30047 Mon Oct 24 11:01:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30049         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
30050           typo fixed.  [ruby-talk:162187]
30052         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
30053           ditto.  [ruby-core:06359]
30055 Mon Oct 24 07:57:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30057         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
30058           typo fixed.  [ruby-talk:162187]
30060         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
30061           ditto.  [ruby-core:06359]
30063         * lib/matrix.rb (Matrix::initialize): use funcall instead of send
30064           to allow private methods to be called.  A report from
30065           Jean-Claude Arbaut <jcarbaut@laposte.net>.  [ruby-core:06359]
30067 Mon Oct 24 00:41:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30069         * time.c (time_sunday): added predicate methods for the days of the
30070           week.  [ruby-list:41340]
30072 Sun Oct 23 07:11:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30074         * ext/tk/extconf.rb: improve messages [ruby-core:06325].
30076         * ext/tk/lib/tk.rb, ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/entry.rb,
30077           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/image.rb,
30078           ext/tk/lib/tk/itemconfig.rb, ext/tk/lib/tk/labelframe.rb,
30079           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/menu.rb,
30080           ext/tk/lib/tk/radiobutton.rb, ext/tk/lib/tk/scale.rb,
30081           ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tk/text.rb,
30082           ext/tk/lib/tk/toplevel.rb: improve conversion of option values.
30084         * ext/tk/lib/tkextlib/*: ditto.
30086         * ext/tk/lib/tkextlib/*: update to support ActiveTcl8.4.11.2.
30088         * ext/tk/lib/tkextlib/trofs/*: support Trofs 0.4.3.
30090         * ext/tk/lib/tkextlib/tile/*: support Tile 0.7.2.
30092         * ext/tk/lib/tkextlib/vu/*: support vu 2.3.0.
30094         * ext/tk/lib/tkextlib/tcllib/*: support Tcllib 1.8 (Tklib 0.3).
30096 Sat Oct 22 23:54:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30098         * ext/extmk.rb, lib/mkmf.rb (with_config): support --with-extension
30099           options.  [ruby-dev:27449]
30101 Sat Oct 22 14:25:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30103         * util.[hc] (ruby_add_suffix): constified.
30105         * util.[hc] (ruby_scan_{oct,hex}): fixed typo. (renamed from
30106           scan_{oct,hex})
30108         * util.c: almostly ANSI styled. (except for functions depending on
30109           macro and K&R technique)
30111 Sat Oct 22 13:26:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30113         * object.c (sym_inspect), parse.y (parser_yylex, rb_symname_p): check
30114           if valid as a symbol name more strictly.  [ruby-dev:27478]
30116         * test/ruby/test_symbol.rb: tests for [ruby-core:03573].
30118         * time.c (rb_strftime): removed meaningless volatile modifiers, and
30119           concatenate successive nul characters at once.  [ruby-dev:27472]
30121         * ext/tk/lib/tk/font.rb, ext/tk/lib/tkextlib/ICONS/icons.rb,
30122           ext/tk/sample/tkextlib/treectrl/demo.rb, lib/net/imap.rb,
30123           lib/rss/parser.rb, test/rss/test_content.rb,
30124           test/rss/test_dublincore.rb, test/rss/test_syndication.rb,
30125           test/rss/test_trackback.rb, test/ruby/test_eval.rb,
30126           test/socket/test_socket.rb, test/socket/test_udp.rb:
30127           Object#fcall was renamed as Object#funcall.
30129 Sat Oct 22 10:08:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30131         * missing.h, missing/*.c: SUSv3 compatible strcasecmp and strncasecmp,
30132           ANSI compatible strtol and strtoul, and ANSI styled other functions.
30134 Fri Oct 21 19:16:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30136         * rubysig.h (CHECK_INTS): fixed typo. (I believe bit-or is improper)
30138 Fri Oct 21 17:49:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30140         * bin/erb (ERB::Main::run): typo fixed.  [ruby-core:06337]
30142 Fri Oct 21 15:42:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30144         * intern.h, struct.c (rb_struct_iv_get): constified.
30146         * marshal.c: avoid one VC++6 warning for implicit conversion
30147           from int to char.
30149         * ruby.h: ANSI styled.
30151         * bcc32/Makefile.sub (HAVE_HYPOT): added.
30153         * ext/socket/extconf.rb: BeOS is only one platform should call
30154           closesocket, so check __BEOS__ macro directly. (I was worried
30155           accidently HAVE_CLOSESOCKET is defined on windows again because
30156           it has it)
30158         * ext/socket/{getaddrinfo.c,socket.c}: ditto.
30160         ... these are all cosmetic changes.
30162 Fri Oct 21 15:23:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30164         * bignum.c (bignew_1): convertion from `int' to `char' discards
30165           upper bits, (ie. (char)0xff00 -> 0) so it's better to test if
30166           nonzero and set 0 or 1 instead of simply casting ... as a flag usage.
30167           (but I believe this won't cause actual bug in current implementation)
30168           [ruby-dev:27055]
30170         * time.c: should use LONG_LONG instead of `long long'.
30172 Thu Oct 20 22:22:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30174         * parser.y (struct parser_params): parser never modify input string.
30176         * ext/ripper/tools/preproc.rb (prelude): do not append surplus
30177           newlines to fix line numbers.
30179 Thu Oct 20 11:41:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30181         * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff
30182           protoize generated to ANYARGS.
30184 Thu Oct 20 11:18:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30186         * eval.c, file.c, ruby.c: removed strchr, strrchr, strstr definition
30187           because they are defined in missing.h.
30189         * missing.h, missing/strchr.c, missing/strstr.c: ANSI styled.
30191 Thu Oct 20 09:36:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30193         * lib/mkmf.rb (create_makefile): Borland make seems not to allow
30194           empty dependency list. If this change is not good, please correct
30195           it.
30197 Thu Oct 20 07:55:09 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30199         * lib/mkmf.rb (create_makefile): get rid of a restriction
30200           of Borland make.  fixed: [ruby-dev:27460]
30202         * ext/ripper/depend: ditto.
30204 Wed Oct 19 23:58:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30206         * lib/mkmf.rb (create_makefile): do not create unnecessary empty
30207           directories.  fixed: [ruby-dev:27451]
30209 Wed Oct 19 08:28:32 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30211         * file.c (rb_file_join): elements may contain null pointer strings.
30212           report and fixed by Lloyd Zusman (hippoman): [ruby-core:06326]
30214 Wed Oct 19 02:34:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30216         * enumerator.c, eval.c, gc.c, parse.y, regparse.c, sjis.c, time.c:
30217           made internal symbols static.  [ruby-dev:27435]
30219 Tue Oct 18 10:58:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30221         * ext/dl/depend, ext/dl/extconf.rb, ext/socket/depend,
30222           ext/socket/extconf.rb: shouldn't define DESTCLEANFILES in depend,
30223           use $distcleanfiles in extconf.rb.
30225         * win32/Makefile.sub (distclean-local): should remove .config.h.time.
30227 Mon Oct 17 09:42:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30229         * mkconfig.rb: fixup configure_args for mswin32 configure.
30231         * win32/configure.bat (srcdir, target): ditto.
30233 Mon Oct 17 05:01:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30235         * env.h: move struct METHOD and struct BLOCK from eval.c to
30236           support NodeWrap and ParseTree.
30238 Sun Oct 16 22:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30240         * ext/extmk.rb: omit non-existing directories.
30242 Sun Oct 16 14:40:54 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30244         * lib/rinda/rinda.rb (Rinda::Tuple#initialize): check remote hash
30245           tuple. fixed: [ruby-list:41227]
30247         * test/rinda/test_rinda.rb: test it.
30249 Sun Oct 16 03:38:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30251         * rubysig.h (CHECK_INTS): prevent signal handler to run during
30252           critical section.  [ruby-core:04039]
30254         * eval.c (load_wait): need not to call rb_thread_schedule()
30255           explicitly.  [ruby-core:04039]
30257         * eval.c (rb_thread_schedule): clear rb_thread_critical.
30258           [ruby-core:04039]
30260 Sun Oct 16 00:13:14 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30262         * win32/configure.bat: remove unnecessary line which prevents
30263           creating Makefile.
30265 Sat Oct 15 23:52:07 2005  Shugo Maeda  <shugo@ruby-lang.org>
30267         * lib/net/ftp.rb: (getbinaryfile): allow nil for localfile, and
30268           returns retrieved data if localfile is nil.
30270         * lib/net/ftp.rb: (gettextfile): ditto.
30272 Sat Oct 15 19:51:29 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30274         * bin/erb: typo fixed, again. thanks, Doug Kearns.
30276 Fri Oct 14 23:09:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30278         * win32/Makefile.sub (MKFILES): update MKFILES if configure files get
30279           changed.
30281         * win32/configure.bat, win32/setup.mak (configure_args): store
30282           arguments to configure files.
30284 Fri Oct 14 22:05:45 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30286         * win32/win32.c (ioctl): should set errno.
30288 Fri Oct 14 16:39:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30290         * lib/webrick/config.rb (Config::FileHandler): :UserDir should be nil.
30291           It is harmful to permit the access to ~/public_html by default.
30292           suggested by Hiroyuki Iwatsuki.
30294 Fri Oct 14 04:58:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30296         * eval.c (rb_obj_instance_exec): create instance_exec and
30297           module_exec which pass arguments to the block.
30299         * eval.c (rb_f_funcall): rename fcall to funcall to follow
30300           tradition.
30302 Thu Oct 13 23:29:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30304         * parse.y (HEAPCNT): bison allocates indivisible size.
30305           fixed: [ruby-core:06261]
30307         * io.c, pack.c, ext/syck/rubyext.c, ext/syck/syck.h, missing/isinf.c:
30308           get rid of warnings.  fixed: [ruby-core:06247]
30310 Wed Oct 12 12:51:56 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30312         * ext/openssl/ossl.c (Init_openssl): should call
30313           OpenSSL_add_ssl_algorithms().
30315 Wed Oct 12 11:08:54 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
30317         * file.c (rb_f_test): typo in RDoc comments.
30319 Tue Oct 11 21:41:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30321         * configure.in (RUBY_FUNC_ATTRIBUTE): check prefixed attribute form
30322           first.  [ruby-dev:27398]
30324         * array.c, enum.c, eval.c, util.c: safer function pointer usage.
30325           fixed: [ruby-core:06143]
30327         * util.h (qsort): removed the definition incompatible to ANSI.
30328           fixed: [ruby-core:06147]
30330         * eval.c (rb_obj_respond_to): check if obj responds to the given
30331           method with the given visibility.  [ruby-dev:27408]
30333         * eval.c (rb_respond_to): conform to Object#respond_to?.  [ruby-dev:27411]
30335 Tue Oct 11 00:01:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30337         * st.c (st_free_table): do not call free() but xfree().
30338           [ruby-core:06205]
30340 Sat Oct  8 19:49:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30342         * eval.c (Init_Binding): add Binding#dup method.  [yarv-dev:666]
30344         * io.c (rb_io_init_copy): clear PREP flag for copied IO.
30345           fixed: [ruby-dev:27371]
30347         * parse.y (rb_parser_malloc, rb_parser_free): manage parser stack on
30348           heap.  [ruby-list:41199]
30350         * parse.y (ripper_initialize): use rb_respond_to().
30352         * ext/ripper/depend (check): get rid of re-generating ripper.y always.
30354         * ext/iconv/charset_alias.rb: parse config.charset_alias file directly.
30356         * ext/nkf/lib/kconv.rb (Kconv.conv): get rid of nil.to_a.
30358         * lib/scanf.rb (Scanf::FormatSpecifier#letter, #width): use matched
30359           substring directly.
30361         * test/ruby/test_assignment.rb, test/ruby/test_iterator.rb: followed
30362           change of sample/test.rb.
30364         * test/net/http/test_http.rb: removed superfluous splatting stars.
30366 Fri Oct  7 16:41:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30368         * eval.c (splat_value): call rb_Array() to convert svalue to
30369           values.  [ruby-dev:27397]
30371 Fri Oct  7 09:54:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30373         * lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
30374           not be parsed correctly.  A patch from August Z. Flatby
30375           (augustzf) in [ruby-Patches-2595].  [ruby-core:06183]
30377 Thu Oct  6 22:51:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30379         * object.c (rb_Array): Array() to raise error for objects without
30380           to_ary, nor to_a.
30382         * object.c (nil_to_a): revert NilClass#to_a.
30384 Thu Oct  6 20:10:38 2005  Minero Aoki  <aamine@loveruby.net>
30386         * ext/strscan/strscan.c (strscan_free): remove useless code.
30387           [ruby-dev:26368] [ruby-dev:27389]
30389 Thu Oct  6 01:02:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30391         * range.c (rb_range_beg_len): should return Qfalse for non-range
30392           object.
30394 Wed Oct  5 04:42:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30396         * lib/xmlrpc/server.rb (XMLRPC::Server#initialize): should mount the
30397           servlet on "/".
30399 Wed Oct  5 04:06:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30401         * lib/xmlrpc/server.rb (XMLRPC::Server#serve): delete wrong call
30402           of "join".
30404 Mon Oct  3 00:04:00 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
30406         * pack.c (EXTEND16): [ruby-dev:27383]
30408 Sat Oct  1 23:55:24 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30410         * win32/win32.c (do_select, rb_w32_select): brush up.
30412 Sat Oct  1 12:57:02 2005  Tanaka Akira  <akr@m17n.org>
30414         * bignum.c (rb_big_rand): removed.  [ruby-dev:25405]
30416 Sat Oct  1 01:46:51 2005  Tanaka Akira  <akr@m17n.org>
30418         * lib/open-uri.rb (OpenURI.open_loop): prohibit multiple proxy
30419           options.
30421 Thu Sep 29 10:26:18 2005  Tanaka Akira  <akr@m17n.org>
30423         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): abolish sizeof(FILE).
30424           [ruby-dev:27317]
30426 Thu Sep 29 10:15:14 2005  Tanaka Akira  <akr@m17n.org>
30428         * lib/open-uri.rb (:proxy_http_basic_authentication): new option.
30430 Thu Sep 29 07:22:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30432         * eval.c (rb_f_send): underscores need to be escaped.
30433           fixed by Doug Kearns.  [ruby-core:06053]
30435 Thu Sep 29 00:57:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30437         * eval.c (ev_const_get), variable.c (rb_const_get_0): retry only when
30438           autoload succeeded.
30440         * variable.c (rb_autoload_load): now return true if autoload
30441           succeeded.  fixed: [ruby-dev:27331]
30443 Wed Sep 28 23:40:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30445         * file.c (rb_stat_inspect): constified.
30447 Wed Sep 28 15:12:28 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30449         * lib/webrick/cgi.rb (WEBrick::CGI#start): req.query_string should
30450           refer the value of QUERY_STRING. [ruby-list:41186]
30452         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#query_string=):
30453           add new method.
30455 Wed Sep 28 10:45:44 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30457         * ext/tk/tcltklib.c: cannot compile with Tcl/Tk8.0.x [ruby-dev:27335].
30459 Wed Sep 28 07:56:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30461         * lib/yaml/basenode.rb (YAML::BaseNode::match_segment): fix typo.
30462           [ruby-dev:27237], [ruby-core:05854]
30464         * lib/yaml/tag.rb (Module#yaml_as): suppress warnings.
30466         * lib/yaml/types.rb (YAML::PrivateType, YAML::DomainType): ditto.
30468 Wed Sep 28 03:16:41 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30470         * rubysig.h: fixed build problem with --enable-pthread on platforms
30471           which don't have setitimer().
30473 Mon Sep 26 22:32:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30475         * eval.c (set_trace_func): add rb_secure(4) to prevent adding
30476           tracing function.
30478 Mon Sep 26 20:59:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30480         * parse.y: changed to ANSI function style.
30482 Sun Sep 25 12:02:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30484         * bin/erb: typo fixed.
30486 Sun Sep 25 11:54:11 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30488         * lib/rinda/tuplespace.rb (Rinda::TemplateEntry::initialize): pull
30489           up method. Tabs converted to spaces.
30491 Sun Sep 25 09:34:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30493         * parse.y: replaced `foo _((boo))' with `foo(boo)'.
30495 Sun Sep 25 08:19:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30497         * test/rss/test_content.rb, test/rss/test_syndication.rb: use fcall
30498           instead of send in order to override visibility.
30500 Sun Sep 25 01:46:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30502         * misc/ruby-mode.el (ruby-calculate-indent): arrange deep-indent
30503           closing parenthesis at same column as the opening.
30505 Sun Sep 25 01:33:41 2005  Tanaka Akira  <akr@m17n.org>
30507         * process.c (proc_setrlimit): make the third argument (rlim_max)
30508           optional.
30510 Sun Sep 25 00:42:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30512         * misc/ruby-mode.el (ruby-expr-beg): deal with heredoc separately.
30513           fixed: [ruby-list:41168]
30515         * misc/ruby-mode.el (ruby-calculate-indent): not to deepen indent
30516           level for continuous line inside parentheses.
30517           http://nabeken.tdiary.net/20050915.html#p02
30519 Sat Sep 24 21:19:39 2005  Minero Aoki  <aamine@loveruby.net>
30521         * ext/strscan/strscan.c: document enhancement.
30523         * ext/strscan/strscan.c: update copyright year.
30525         * ext/strscan/strscan.c: update coding style.
30527 Sat Sep 24 20:20:05 2005  Minero Aoki  <aamine@loveruby.net>
30529         * test/net/http/test_http.rb (teardown): Net::HTTP.version_1_1 breaks
30530           many other tests; ensure that Net::HTTP is version 1.2 after test.
30531           [ruby-dev:27312]
30533 Sat Sep 24 11:44:28 2005  Minero Aoki  <aamine@loveruby.net>
30535         * test/net/http/test_http.rb: new file.
30537 Sat Sep 24 08:54:05 2005  Minero Aoki  <aamine@loveruby.net>
30539         * lib/fileutils.rb (cd): no longer accept :noop option, related
30540           code is useless. [ruby-core:05858] [ruby-Bugs:2494]
30542 Sat Sep 24 08:30:00 2005  Tanaka Akira  <akr@m17n.org>
30544         * lib/pathname.rb (Pathname#sub): new method.
30546 Sat Sep 24 08:29:36 2005  Minero Aoki  <aamine@loveruby.net>
30548         * lib/fileutils.rb: fix visibility of FileUtils::NoWrite, Verbose,
30549           DryRun. [ruby-core:05954]
30551         * test/fileutils/test_nowrite.rb: test it.
30553         * test/fileutils/test_dryrun.rb: new file.
30555         * test/fileutils/test_verbose.rb: new file.
30557 Sat Sep 24 07:59:01 2005  Minero Aoki  <aamine@loveruby.net>
30559         * sample/ripper/colorize.rb: removed (replaced by ruby2html.rb).
30561         * sample/ripper/ruby2html.rb: added.
30563 Sat Sep 24 06:35:15 2005  Minero Aoki  <aamine@loveruby.net>
30565         * ext/ripper: no longer generates .rb files.
30567         * parse.y (Init_ripper): ripper_init_eventids*() takes 1 argument,
30568           self (class Ripper).
30570         * ext/ripper/depend: target removed: `lib/ripper/core.rb'.
30572         * ext/ripper/depend: new target `eventids2table.c'.
30574         * ext/ripper/depend: new target `check'.
30576         * ext/ripper/eventids2.c: include eventids2table.c.
30578         * ext/ripper/eventids2.c: initialize SCANNER_EVENT_TABLE.
30580         * ext/ripper/extconf.rb: update $cleanfiles list.
30582         * ext/ripper/tools/generate.rb: no longer generate ripper/core.rb.
30584         * ext/ripper/tools/generate.rb: new mode `check'.
30586         * ext/ripper/tools/generate.rb: new mode `eventids2table'.
30588         * ext/ripper/lib/ripper/core.rb.in: removed.
30590         * ext/ripper/lib/ripper/core.rb: added.
30592         * ext/ripper/lib/ripper/filter.rb: update copyright year.
30594         * ext/ripper/lib/ripper/lexer.rb: ditto.
30596         * ext/ripper/lib/ripper/sexp.rb: ditto.
30598 Sat Sep 24 02:40:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30600         * lib/delegate.rb: document update from James Edward Gray II
30601           <james@grayproductions.net>.  [ruby-core:05942]
30603 Sat Sep 24 02:05:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30605         * process.c (proc_daemon): should restrict execution on levels
30606           higher than $SAFE=2.  suggested by URABE Shyouhei
30607           <shyouhei@ice.uec.ac.jp>.
30609 Fri Sep 23 20:10:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30611         * ext/ripper/tools/generate.rb, ext/ripper/tools/preproc.rb: StringIO
30612           is not available for miniruby.  fixed: [ruby-dev:27307]
30614 Fri Sep 23 17:36:48 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
30616         * ext/win32ole/win32ole.c: avoid core dump with WIN32OLE_EVENT.
30617           [ruby-dev:27133]
30619 Fri Sep 23 16:27:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30621         * lib/forwardable.rb: replaced by new implementation from
30622           <Daniel.Berger@qwest.com>.  [ruby-core:05899]
30624 Fri Sep 23 07:07:47 2005  Minero Aoki  <aamine@loveruby.net>
30626         * test/ripper/depend: use --output option instead of redirect;
30627           nmake does not remove a target when the target file is created by
30628           redirect. [ruby-dev:26466]
30630         * test/ripper/tools/preproc.rb: new option --output.
30632 Fri Sep 23 06:57:52 2005  Minero Aoki  <aamine@loveruby.net>
30634         * test/ripper/tools/generate.rb: check parser event arity.
30636         * test/ripper/tools/generate.rb: detect crash of parser-event-IDs
30637           and scanner-event-IDs.
30639 Fri Sep 23 06:01:30 2005  Minero Aoki  <aamine@loveruby.net>
30641         * test/ruby/test_file.rb: check File#chown(nil,nil).
30642           [ruby-dev:27140]
30644 Fri Sep 23 05:57:23 2005  Minero Aoki  <aamine@loveruby.net>
30646         * ext/ripper: refactoring code generation tools. [ruby-dev:27247]
30647           [ruby-dev:27273]
30649         * ext/ripper/depend: use generate.rb.
30651         * ext/ripper/lib/ripper/core.rb: removed.
30653         * ext/ripper/tools/generate-eventids1.rb: removed (code moved to
30654           generate.rb).
30656         * ext/ripper/tools/generate-ripper_rb.rb: removed (code moved to
30657           generate.rb).
30659         * ext/ripper/tools/list-parse-event-ids.rb: removed (code moved to
30660           generate.rb).
30662         * ext/ripper/tools/list-scan-event-ids.rb: removed (code moved to
30663           generate.rb).
30665         * ext/ripper/lib/ripper/core.rb: removed.
30667         * ext/ripper: refactoring tests. [ruby-dev:27273]
30669         * ext/ripper/test/check-event-arity.rb: removed (code moved to
30670           tools/generate.rb).
30672         * ext/ripper/test/check-event-coverage.rb: removed (code moved to
30673           test/ripper/test_parser_events.rb).
30675         * ext/ripper/test/check-scanner-event-coverage.rb: removed (code
30676           moved to test/ripper/test_scanner_events.rb).
30678         * ext/ripper/test/list-called-events.rb: removed.
30680         * ext/ripper/test/src_rb: removed.
30682         * ext/ripper/test/validate.rb: removed.
30684         * test/ripper/test_scanner_events.rb: check event coverage.
30686         * ext/ripper/lib/ripper/core.rb.in: update copyright year.
30688 Thu Sep 22 23:40:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30690         * lib/mkmf.rb (find_executable0): default path if environment is not
30691           set.  [ruby-dev:27281]
30693         * ext/ripper/extconf.rb (have_command): replaced with find_executable.
30695 Thu Sep 22 17:31:48 2005  Shugo Maeda  <shugo@ruby-lang.org>
30697         * test/readline/test_readline.rb (TestReadline::replace_stdio):
30698           merged the patch of [ruby-dev:25232] instead of [ruby-dev:25223].
30699           (merged from ruby_1_8 branch)
30701 Wed Sep 21 23:30:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30703         * lib/mkmf.rb (configuration): generalized nmake dependent code.
30705 Wed Sep 21 14:16:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30707         * ext/ripper/depend (SUFFIXES): no longer needed.
30709         * ext/ripper/depend (c): avoid nmake problem. fixed [ruby-dev:27191]
30711 Wed Sep 21 08:52:25 2005  why the lucky stiff  <why@ruby-lang.org>
30713         * ext/syck/token.c: correctly compute indentation of a block
30714           scalar's parent node. [ruby-talk:150620]
30716 Wed Sep 21 08:20:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30718         * README.EXT, README.EXT.ja: add new features.
30720 Wed Sep 21 07:43:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30722         * lib/optparse.rb (default_argv, Arguable#options): defaults strings
30723           to be parsed to Arguable instance.
30725 Wed Sep 21 02:44:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30727         * file.c (path_check_0): disallow sticky world writable directory
30728           in PATH (and $LOAD_PATH).  [ruby-dev:27226]
30730 Wed Sep 21 00:32:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30732         * numeric.c (fix_idiv): 1.div(1.0) should return integer value.
30733           [ruby-dev:27235]
30735 Tue Sep 20 22:25:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30737         * ext/io/wait/lib/nonblock.rb: disable on platforms non-blocking flag
30738           is not available.  fixed: [ruby-dev:27187]
30740         * file.c (rb_stat_inspect): protoized function pointer.
30742 Tue Sep 20 18:23:04 2005  Tanaka Akira  <akr@m17n.org>
30744         * eval.c (thread_mark): mark th->last_status.  [ruby-dev:27179]
30746 Tue Sep 20 18:20:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30748         * lib/yaml.rb: require 'yaml/constants'.  [ruby-core:5776]
30750 Tue Sep 20 17:48:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30752         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): add charset
30753           information to content-type header.[ruby-core:5127]
30755         * lib/xmlrpc/server.rb (CGIServer::serve): ditto.
30757         * lib/xmlrpc/server.rb (ModRubyServer::serve): ditto.
30759         * lib/xmlrpc/server.rb (WEBrickServlet::service): ditto.
30761 Tue Sep 20 17:26:42 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30763         * test/webrick/test_cgi.rb: set ENV["PATH"] to CGIEnvPath on
30764           windows. bcc32's runtime is not installed into system directory,
30765           so it cannot be found without this setting. [ruby-dev:27166]
30767 Tue Sep 20 17:14:10 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30769         * io.c: PIPE_BUF is not defined on BeOS. use _POSIX_PIPE_BUF instead.
30770           [ruby-dev:27185]
30772 Tue Sep 20 17:10:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30774         * test/dbm/test_dbm.rb (TestDBM::test_s_open_error): remove
30775           test_s_open_error test to detect duplicate open.
30776           [ruby-dev:27202]
30778 Tue Sep 20 15:39:40 2005  why the lucky stiff  <why@ruby-lang.org>
30780         * ext/syck/emitter.c (syck_scan_scalar): prevent indicators from
30781           appearing alone or at the end of plain scalars. [ruby-core:5826]
30783         * ext/syck/emitter.c (syck_emit_scalar): treat typed scalar nodes
30784           as complex keys.
30786         * lib/syck.h: version 0.60.
30788         * lib/yaml/basenode.rb (YAML::BaseNode#at): transform keys during
30789           key searches.
30791         * ext/syck/rubyext.c: loading of binary-typed nodes.  prevent
30792           emission of plain strings that look like symbols, but which aren't.
30794 Tue Sep 20 05:48:26 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30796         * test/xmlrpc/test_webrick_server.rb (setup_http_server):
30797           should not include 'webrick/https' unless 'use_ssl' because
30798           it fails where openssl is not installed.
30800 Tue Sep 20 01:24:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30802         * eval.c (splat_value): use to_a to splat non Array object.
30804         * object.c (nil_to_a): remove nil.to_a.  [experimental]
30806 Tue Sep 20 01:01:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30808         * lib/mathn.rb (Fixnum): remove debug print.
30810         * lib/rational.rb (Rational): ditto.
30812 Tue Sep 20 00:34:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30814         * io.c (io_close): call rb_io_close() directly if io is a T_FILE
30815           object.  [ruby-dev:27156]
30817 Mon Sep 19 18:58:10 2005  Minero Aoki  <aamine@loveruby.net>
30819         * file.c (rb_file_chown): should accept nil. [ruby-dev:27171]
30821 Mon Sep 19 18:29:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30823         * file.c (file_expand_path): allow pathnames to expand.
30824           [ruby-dev:27152]
30826 Mon Sep 19 15:12:15 2005  Minero Aoki  <aamine@loveruby.net>
30828         * ext/ripper/depend: do not make ripper/core.rb. [ruby-dev:26462]
30830 Mon Sep 19 14:49:19 2005  Minero Aoki  <aamine@loveruby.net>
30832         * ext/ripper/eventids2.c: add prefix `t' to tLAMBDA-related lexer
30833           events.
30835         * ext/ripper/lib/ripper/core.rb: updated.
30837 Mon Sep 19 14:39:46 2005  Minero Aoki  <aamine@loveruby.net>
30839         * parse.y (do_block): do_block event dispatches 2 args.
30840           [ruby-dev:26964]
30842         * ext/ripper/lib/ripper/core.rb: updated.
30844         * ext/ripper/tools/list-parser-event-ids.rb: check arity mismatch.
30846 Mon Sep 19 07:45:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30848         * ext/openssl/ossl_pkey.h, ossl_pkey_rsa.c, ossl_pkey_dsa.c:
30849           an instance variable "private" is added to OpenSSL::PKey class.
30850           this ivar is a flag that shows whether there is a private key
30851           in the instance.
30853         * ext/openssl/ossl_engine.c: (ossl_engine_load_privkey): set private
30854           key flag.
30856         * test/openssl/test_pkey_rsa.rb: add test about private detection.
30858 Mon Sep 19 06:38:03 2005  Minero Aoki  <aamine@loveruby.net>
30860         * lib/fileutils.rb: method renaming: collect_methods ->
30861           collect_method.
30863 Mon Sep 19 05:58:59 2005  Minero Aoki  <aamine@loveruby.net>
30865         * lib/fileutils.rb: use module_function instead of single extend.
30867         * test/fileutils/test_fileutils.rb: test existence of singleton
30868           methods.
30870 Mon Sep 19 05:32:41 2005  Minero Aoki  <aamine@loveruby.net>
30872         * lib/fileutils.rb (remove_entry_secure): does not use chdir(2).
30874 Mon Sep 19 03:17:48 2005  Tanaka Akira  <akr@m17n.org>
30876         * file.c (rb_thread_flock): wrap the flock system call by
30877           TRAP_BEG/TRAP_END to enable signals.  [ruby-dev:27122]
30879         * ext/socket/socket.c (bsock_send): wrap the sendto and send system
30880           call by TRAP_BEG/TRAP_END to enable signals when writing to a socket
30881           which is full.  [ruby-dev:27132]
30883         * io.c (rb_io_syswrite): wrap the write system call by
30884           TRAP_BEG/TRAP_END to run signal hander in syswrite method.
30885           [ruby-dev:27134]
30887 Mon Sep 19 01:07:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30889         * numeric.c (Init_Numeric): should define Fixnum#div.
30890           [ruby-dev:27129]
30892         * file.c (rb_thread_flock): wrap flock(2) by TRAP_BEG and
30893           TRAP_END.  [ruby-dev:27122]
30895         * file.c (rb_file_join): call FilePathValue() to all Pathnames to
30896           join.  [ruby-dev:27127]
30898         * file.c (rb_get_path): call StringValueCStr() to ensure no nul
30899           bytes in path strings.
30901         * gc.c (garbage_collect): need value for return.  [ruby-dev:27127]
30903 Sun Sep 18 02:10:47 2005  why the lucky stiff  <why@ruby-lang.org>
30905         * lib/yaml/rubytypes.rb: remove comments that are bungling up
30906           the rdoc and ri output.  output symbols as plain scalars.
30908         * ext/syck/rubyext.c (syck_emitter_reset): emit headless
30909           documents always.
30911         * ext/syck/emitter.c (syck_scan_scalar): quote scalars with any
30912           kind of surrounding line space, tabs or spaces alike.
30914         * ext/syck/token.c: accept tabs as whitespace, not for indentation,
30915           but strip from plain scalars.
30917         * test/yaml/test_yaml.rb: remove outdated tests.
30919 Sun Sep 18 01:10:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30921         * gc.c (garbage_collect): return false if no GC run.
30923 Sat Sep 17 23:25:04 2005  sheepman  <sheepman@sheepman.sakura.ne.jp>
30925         * lib/mathn.rb (Rational::inspect): should preserve original
30926           operand.  [ruby-core:05806]
30928 Sat Sep 17 23:20:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30930         * lib/cgi.rb (CGI::Cookie): should handle multiple values for a
30931           cookie name.  [ruby-talk:156140]
30933         * test/socket/test_tcp.rb (TestTCPSocket::test_recvfrom): typo
30934           fixed.  [ruby-dev:27123]
30936 Sat Sep 17 20:58:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30938         * win32/win32.c (rb_w32_select): fixed deadlock bug.
30939           because select(2) modifies its fd_set arguments, it must be
30940           restored sometimes.
30942         * win32/win32.c (rb_w32_select): performance improvement when
30943          'always readable/writable handles' and sockets are passed.
30944           sockets should be polled every time.
30946             require "net/http"
30948             Thread.new {
30949               loop do
30950                 STDOUT.write(".") # busy on console (this is worst case though)
30951               end
30952             }
30954             # socket operation took long time. (sometimes timed out)
30955             Net::HTTP.start("www.ruby-lang.org") do |http|
30956                 http.get("/cgi-bin/cvsweb.cgi/ruby/array.c?rev=1.179")
30957             end
30959 Sat Sep 17 14:54:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30961         * test/ruby/test_readpartial.rb (test_open_pipe, test_with_stdio):
30962           these tests are working now, so turned on. (windows)
30964 Sat Sep 17 14:18:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30966         * win32/win32.c (rb_w32_select): I hope performance problem was
30967           solved.
30969 Sat Sep 17 13:45:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30971         * win32/win32.c (rb_w32_select): console support is back.
30972           but still has performance problem because I loosely took 1 second
30973           for wait time. I'll fix it later. (The reason I drastically changed
30974           the code is that I wanted to implement the fileset management as
30975           single function, and I was worried that if pipe or console
30976           was always available, socket may not be processed any time)
30978 Sat Sep 17 11:24:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30980         * win32/win32.c (rb_w32_select): select for socket didn't work.
30981           this caused deadlock in drb test. this happened because GetFileType
30982           for socket handle returns FILE_TYPE_PIPE. Of course, it's not a
30983           pipe. So socket handle didn't reach winsock's select function.
30985         * win32/win32.c (rb_w32_select): read for pipe was still blocked
30986           even if writer handle was closed.
30988             r,w = IO.pipe
30990             Thread.new {
30991               sleep 3; puts "------- 1"
30992               w.puts("foo")
30993               sleep 3; puts "------- 2"
30994               w.puts("boo")
30995               sleep 3; puts "------- 3"
30996               w.close
30997             }
30999             until r.eof? # should break by w.close but didn't.
31000               puts r.gets
31001             end
31003         * win32/win32.c (rb_w32_select): temporary reverted console support
31004           but it'll be back soon.
31006 Sat Sep 17 10:42:13 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31008         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
31009           should call Kernel.eval on caller's safe-level instead of slave's
31010           safe-level (Of course, the given script should be evaluated on
31011           slave's safe-level).
31013 Sat Sep 17 09:45:26 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31015         * string.c (rb_str_substr): should propagate taintness even for
31016           empty strings.  [ruby-dev:27121]
31018         * string.c (rb_str_aref): should infect result if range argument
31019           is tainted.  [ruby-dev:27121]
31021 Sat Sep 17 08:35:39 2005  Kouhei Sutou  <kou@cozmixng.org>
31023         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#normalize): fixed
31024           strange RSS::Maker::Item#max_size behavior.
31025           Thanks to Kazuhiko <kazuhiko@fdiary.net>.
31027         * test/rss/test_maker_1.0.rb (RSS::TestMaker10#test_items): ditto.
31029 Sat Sep 17 08:02:53 2005  Shugo Maeda  <shugo@ruby-lang.org>
31031         * lib/net/imap.rb: supported DIGEST-MD5.  Thanks, Mathieu Arnold.
31033         * lib/net/imap.rb: use fcall instead of send.  Thanks, Satoru
31034           Takabayashi.
31036 Fri Sep 16 22:45:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31038         * file.c (rb_file_s_extname): empty string for path name ending with a
31039           period.  fixed: [ruby-core:05651]
31041         * file.c (rb_file_join): smarter behavior at edge cases.
31042           fixed: [ruby-core:05706]
31044         * gc.c (rb_memerror, ruby_xmalloc, ruby_xrealloc, rb_newobj): just
31045           abondon if no memory available, when interpreter is not running.
31046           [ruby-dev:27104]
31048         * gc.c (garbage_collect): return whether GC could run.
31050         * dir.c (rb_push_glob): fix delimiter bug.  fixed: [ruby-dev:27105]
31052         * dir.c (dir_s_aref, dir_s_glob): allow multiple patterns.
31053           [ruby-dev:27110]
31055         * win32/win32.c (cmdglob): enable brace expansion.
31057 Fri Sep 16 18:34:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31059         * ext/syck/node.c (syck_replace_str): was using return from the
31060           void function.  a patch from MIYAMUKO Katsuyuki
31061           <miyamuko at mtb.biglobe.ne.jp>.  [ruby-dev:27111]
31063 Fri Sep 16 14:48:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31065         * ext/tk/lib/multi-tk.rb: fix typo on MultiTkIp#bg_eval_string
31067 Fri Sep 16 12:02:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31069         * ext/syck/rubyext.c (syck_resolver_transfer): remove C++ style
31070           comment (//).  [ruby-core:05793]
31072 Fri Sep 16 00:17:03 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31074         * test/logger/test_logger.rb: unintentionally overwritten changes by
31075           Usa.  reverted.
31077 Fri Sep 16 00:03:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31079         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#initialize): should set
31080           $stdout.binmode.
31082 Thu Sep 15 23:25:21 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31084         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.5.
31086           #nnn is a ticket number at http://dev.ctor.org/soap4r
31088           * SOAP
31090             * allow to configure an envelope namespace of SOAP request. (#124)
31091                 TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope'
31092                 @client.options["soap.envelope.requestnamespace"] =
31093                   TemporaryNamespace
31094                 @client.options["soap.envelope.responsenamespace"] =
31095                   TemporaryNamespace
31096                 @client.do_proc(...)
31098             * let SOAP request XML indent space configuable.  see
31099               "soap.envelope.no_indent" option. (#130)
31101             * let external CES configuable.
31102               ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used
31103               by default. (#133)
31104                 external CES ::= CES used in Ruby object of client and server
31105                 internal CES ::= CES used in SOAP/OM
31107             * add iso-8859-1 external CES support. (#106)
31109             * fixed illegal 'qualified' handling of elements.  it caused
31110               ASP.NET inteoperability problem. (#144)
31112             * added 'soap.envelope.use_numeric_character_reference' (boolean)
31113               option to let query XML use numeric character reference in XML,
31114               not plain UTF-8 character.  !GoogleSearch server seems to not
31115               allow plain UTF-8 character since 2005-08-15 update. (#147)
31117             * SOAP::Header::SimpleHeader (de)serialization throws an exception
31118               on !SimpleHeader.on_(in|out)bound when header is a String.  so we
31119               could not use a simple single element headerItem.  fixed.  thanks
31120               to emil. (#129)
31122             * out parameter of rpc operation did not work.  (#132)
31124             * follow HTTP redirect only if using http-access2.  (#125) (#145)
31126             * add a workaround for importing an WSDL whose path begins with
31127               drive letter.  (#115)
31129           * WSDL
31131             * SOAP Data which is defined as a simpletype was not mapped
31132               correctly to Ruby obj when using wsdl2ruby.rb generated classdef
31133               file. (#123)
31135             * rpc/literal support. (#118)
31137             * re-implemented local element qualify/unqualify control.  handles
31138               elementFormDefault and form in WSDL.  (#119)
31140             * Array of an element which has simpleType causes a crash. (#128)
31142             * prarmeterOrder may not contain return part so it can be shorter
31143               than parts size.  Thanks to Hugh.  (#139)
31145           * Samples
31147             * added !BasicAuth client sample. (#117)
31149             * added Base64 client/server sample.
31151             * added Flickr SOAP interface client sample. (#122)
31153             * added !SalesForce client sample. (#135)
31155             * updated Thawte CA certificate for !GoogleAdWords sample.
31157             * updated a client script with the newer version made by Johan.
31158               thanks!
31160             * shortened long file names. (#120)
31162             * fixed typo in authheader sample. (#129)
31164             * updated deprecated method usage.  (#138)
31166 Thu Sep 15 22:40:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31168         * test/ruby/test_signal.rb (test_exit_action): skip the test using
31169           fork on fork-less platforms.
31171 Thu Sep 15 13:54:33 2005  Tanaka Akira  <akr@m17n.org>
31173         * lib/open-uri.rb: add :read_timeout option.
31174           [ruby-core:4848]
31176 Thu Sep 15 11:39:18 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31178         * ext/tk/lib/tk/dialog.rb: If a dialog does not show up yet,
31179           TkDialogObj#name raises an exception. [ruby-talk:156109]
31181 Thu Sep 15 11:01:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31183         * win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().
31185         * win32/win32.c (extract_console_fd, peek_console): new functions.
31187         * win32/win32.c (rb_w32_select): check consoles by polling them.
31189 Thu Sep 15 00:18:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31191         * lib/net/telnet.rb (Net::Telnet::waitfor): replace sysread with
31192           readpartial.  [ruby-talk:127641]
31194 Wed Sep 14 23:28:28 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31196         * win32/win32.c (collect_file_fd): rename from extract_file_fd.
31198         * win32/win32.c (extract_pipe_fd, peek_pipe): new functions.
31200         * win32/win32.c (rb_w32_select): check pipes by polling them.
31202 Wed Sep 14 22:40:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31204         * dir.c (ruby_glob): glob function not using ruby exception system.
31206 Wed Sep 14 17:24:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31208         * dir.c: changed `foo (*bar)_((boo))' to `foo (*bar)(boo)`.
31210         * enumerator.c, eval.c, gc.c, intern.h, io.c, process.c, ruby.c,
31211           ruby.h, signal.c: ditto.
31213 Wed Sep 14 15:06:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31215         * bignum.c: changed `foo _((boo))' to `foo(boo)`. [ruby-dev:27056]
31217         * defines.h, dir.c, dln.h, enumerator.c, env.h, error.c, eval.c, file.c,
31218           gc.c, hash.c, inits.c, intern.h, io.c, lex.c, marshal.c, missing.h,
31219           node.h, numeric.c, pack.c, process.c, re.h, ruby.c, ruby.h, rubyio.h,
31220           rubysig.h, signal.c, sprintf.c, st.h, string.c, struct.c, time.c,
31221           util.c, util.h, variable.c: ditto.
31223 Tue Sep 13 22:09:40 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31225         * lib/logger.rb (Logger): added formatter accessor to logger for
31226           dictating the way in which the logger should format the messages it
31227           displays.  Thanks to Nicholas Seckar (cf. [ruby-talk:153391]) and
31228           Daniel Berger.
31230         * lib/logger.rb (Logger): added VERSION constant.
31232         * lib/logger.rb: removed document for LogDevice. It is an
31233           implementation detail and is not a public interface.
31235         * test/logger/test_logger.rb: added tests.
31237 Tue Sep 13 21:47:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31239         * eval.c (BEGIN_CALLARGS): pop halfly pushed status.
31240           fixed: [ruby-dev:26881]
31242 Tue Sep 13 20:24:37 2005  Tanaka Akira  <akr@m17n.org>
31244         * ruby.h (PRINTF_ARGS): new macro for printf style argument checking.
31246 Tue Sep 13 15:41:29 2005  Minero Aoki  <aamine@loveruby.net>
31248         * lib/net/http.rb: wrote docuemntation of HTTPRequest/HTTPResponse
31249           classes.
31251 Tue Sep 13 14:27:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31253         * string.c, missing.h: failed to build on powerpc-apple-darwin7.9.0
31254           because of crypt argument's constness mismatch. (I hope this works)
31255           (http://mput.dip.jp/autobuild/ruby-trunk/log/20050913T110001.gz)
31257 Tue Sep 13 12:33:05 2005  why the lucky stiff  <why@ruby-lang.org>
31259         * lib/yaml.rb: reworking YAML::Stream to use the new
31260           emitter.
31262         * lib/yaml/stream.rb: ditto.
31264         * lib/yaml/rubytypes.rb: added Object#yaml_new.
31266         * lib/yaml/tag.rb: the tag_subclasses? method now
31267           shows up in the class.  allow taguri to be set using an accessor.
31268           continue support of Object#to_yaml_type.
31270         * ext/syck/rubyext.c: new emitter code.  yaml_new and yaml_initialize
31271           get called, should they be present.  consolidated all the diaspora of           internal node types into the family below YAML::Syck::Node -- Map,
31272           Seq, Scalar -- all of whom are SyckNode structs pointing to
31273           Ruby data.  moved Object#yaml_new into the node_import and made it
31274           the default behavior.  the target_class is always called wih
31275           yaml_new, prepended a parameter, which is the klass.  loaded nodes
31276           through GenericResolver show their style.
31277           new Resolver#tagurize converts type ids to taguris.
31279         * ext/syck/implicit.re: were 'y' and 'n' seriously omitted??
31281         * ext/syck/emitter.c: renovated emitter, walks the tree in advance.
31282           consolidated redundant block_styles struct into
31283           the scalar_style struct.  (this means loaded nodes can now
31284           be sent back to emitter and preserve at least its very basic
31285           formatting.)
31287         * ext/syck/gram.c: headless documents of any kind allowed.
31289         * ext/syck/node.c: new syck_replace_str methods and syck_empty_*
31290           methods for rewriting node contents, while keeping the ID
31291           and other setup info.  added syck_seq_assign.
31293         * ext/syck/syck.h: reflect block_styles and new node functions.
31295 Tue Sep 13 08:09:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31297         * lib/ostruct.rb (new_ostruct_member): Object#send no longer call
31298           private methods.  [ruby-dev:27044]
31300         * test/rss/test_dublincore.rb, test/rss/test_trackback.rb,
31301           test/ruby/test_eval.rb, test/socket/test_socket.rb: ditto.
31303         * test/ruby/test_lambda (test_call_with_block): lambda makes new scope
31304           for formal block parameter.
31306 Tue Sep 13 01:17:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31308         * eval.c (proc_save_safe_level): no need to restrict safe level
31309           memoize in $SAFE>=3.  [ruby-dev:27050]
31311 Tue Sep 13 00:02:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31313         * file.c (apply2files): stricter callback definition.
31315         * file.c (rb_path_check): constified.
31317 Mon Sep 12 20:53:06 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31319         * test/openssl/test_pkcs7.rb (test_enveloped): skip this test
31320           to avoid a bug of PKCS7_enctypt() (only if ext/openssl is
31321           compiled with OpenSSL-0.9.7d or earlier versions).
31322           http://www.mail-archive.com/openssl-dev@openssl.org/msg17376.html
31324 Mon Sep 12 20:32:00 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31326         * win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest change
31327           to avoid incompatible pointer warning. (mingw32)
31329 Mon Sep 12 19:58:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31331         * dln.c: avoid warning of const to non-const convertion.
31332           [ruby-dev:27041]
31334         * eval.c, io.c, ruby.c: ditto.
31336 Mon Sep 12 19:26:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31338         * array.c: moved to ANSI function style from K&R function style.
31339           (used protoize on windows, so still K&R remains on #ifdef part of
31340            other platforms. And  `foo _((boo))' stuff is still there)
31341            [ruby-dev:26975]
31343         * bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
31344           enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
31345           io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
31346           prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
31347           regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
31348           sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
31349           version.c: ditto.
31351 Mon Sep 12 14:03:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31353         * test/dbm/test_dbm.rb: remove locking test, which may not be
31354           supported on some platforms.  [ruby-dev:27030]
31356 Sun Sep 11 23:23:02 2005  Shugo Maeda  <shugo@ruby-lang.org>
31358         * lib/net/imap.rb (starttls): supported the STARTTLS command.
31360 Sun Sep 11 22:18:07 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31362         * bin/erb (ERB::Main#run): set ERB#filename so that it is used
31363           when reporting syntax/runtime errors. Tabs converted to spaces.
31365 Sat Sep 10 22:34:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31367         * array.c, bignum.c: protoize.
31369 Sat Sep 10 00:23:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31371         * eval.c (splat_value): simpler and consistent array conversion
31372           for argument splat.  [yarv-dev:599]
31374 Fri Sep  9 16:45:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31376         * string.c (rb_str_times): make empty strings to keep taintness,
31377           and a little improvement.  [ruby-dev:26900]
31379         * ext/iconv/iconv.c (iconv_try), ext/iconv/extconf.rb: get rid of meta
31380           characters in command line option.  fixed: [ruby-talk:155369]
31382         * ext/iconv/iconv.c: protoized.
31384 Thu Sep  8 14:58:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31386         * merged a patch from Takahiro Kambe <taca at back-street.net> to
31387           support DragonFly BSD.  [ruby-dev:26984]
31389 Thu Sep  8 13:14:57 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
31391         * missing/strchr.c (strrchr): fixed a bug in detecting NUL in a
31392           string.  [ruby-dev:26985]
31394 Wed Sep  7 17:29:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31396         * ext/openssl/ossl_engine.c (ossl_engine_s_by_id):
31397           OpenSSL::Engine.by_id calls given block before calling
31398           ENGINE_init (block parameter is the return value of this method
31399           itself).  this functionality is useful to load dynamic shared
31400           engines.
31402                 require "openssl"
31403                 pkcs11 = OpenSSL::Engine.by_id("dynamic"){|e|
31404                   e.ctrl_cmd("SO_PATH", "/usr/lib/opensc/engine_pkcs11.so")
31405                   e.ctrl_cmd("LIST_ADD", "1")
31406                   e.ctrl_cmd("LOAD")
31407                 }
31408                 pkcs11.ctrl_cmd("PIN", "secret")
31409                 key = pkcs11.load_private_key
31411         * ext/openssl/ossl_engine.c (ossl_engine_ctrl_cmd): new method
31412           OpenSSL::Engine#ctrl_cmd. it wraps ENGINE_ctrl_cmd_string.
31414         * ext/openssl/ossl_engine.c (ossl_engine_get_cmds): new method
31415           OpenSSL::Engine#cmds. it returms engine command definitions.
31417 Wed Sep  7 15:48:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31419         * ext/openssl/ossl_asn1.c (asn1str_to_str): new function.
31421         * ext/openssl/ossl_pkcs7.c: new class OpenSSL::PKCS7::RecipientInfo.
31422           this class wraps PKCS7_RECIP_INFO struct.
31424         * ext/openssl/ossl_pkcs7.c: OpenSSL::PKCS7::Signer is renamed to
31425           OpenSSL::PKCS7::SignerInfo. ("Signer" remains as an alias of
31426           SignerInfo.)
31428         * test/openssl/test_pkcs7.rb: new file.
31430 Wed Sep  7 12:55:08 2005  Tanaka Akira  <akr@m17n.org>
31432         * lib/open-uri.rb: abolish mod === tempfile to avoid a problem
31433           [ruby-dev:26967].
31435 Wed Sep  7 10:45:15 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31437         * eval.c (rb_thread_switch): convert all exceptions to
31438           SystemExit.  fixed: [ruby-core:05724]
31440         * eval.c (rb_thread_terminated): show backtrace before propagate
31441           exceptions to main thread.
31443 Wed Sep  7 09:21:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31445         * win32/win32.[hc] (rb_w32_utime): constified.
31447         * win32/win32.h (rb_w32_stat): added prototype.
31449         * win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn):
31450           changed `char *const *' to `const char *const *'. (constify string)
31452 Wed Sep  7 08:35:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31454         * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
31455           extension libraries.
31457         * bignum.c (bignew_1, bigadd): K&R style argument actually can't be
31458           defined as char.
31460         * missing/vsnprintf.c: ANSI compiler supports const keyword.
31462         * ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
31463           but no 64bit integer.
31465         * lib/mkmf.rb (what_type?): guesstimate type.
31467         * ext/etc/etc.c (setup_passwd), ext/etc/extconf.rb: pw_age might be
31468           char*.  fixed: [ruby-core:05470]
31470 Wed Sep  7 08:32:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31472         * string.c (rb_str_times): should taint empty strings as well.
31474         * object.c (Init_Object): make class_variable_{get,set} public.
31475           [ruby-dev:26965]
31477 Mon Sep  5 22:28:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31479         * parse.y (stmt, mlhs_node, lhs, arg, method_call): aref_args might be
31480           nothing.  fixed: [ruby-dev:26952]
31482         * ext/ripper/eventids2.c: added new tokens.  fixed: [ruby-dev:26952]
31484 Mon Sep  5 17:03:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31486         * lib/find.rb: should raise ENOENT if root entry does not exist.
31487           [ruby-list:41054]
31489         * lib/ostruct.rb: a patch from Florian Gross <florgro at gmail.com>
31490           merged to allow recursive inspect (and to_s) for OpenStruct.
31491           [ruby-core:05532]
31493 Mon Sep  5 08:20:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31495         * lib/observer.rb: a patch from nornagon <nornagon at gmail.com>
31496           merged to allow arbitrary names for update methods.
31497           [ruby-core:05416]
31499 Mon Sep  5 07:01:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31501         * ext/openssl/openssl/lib/openssl/buffering.rb (Buffering#do_write):
31502           should clear data from the buffer which already been output.
31504 Sun Sep  4 15:01:35 2005  Minero Aoki  <aamine@loveruby.net>
31506         * parse.y (f_arg): Ripper should not do semantic check.
31507           [ruby-dev:26948]
31509 Sat Sep  3 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31511         * eval.c (rb_f_fcall): new method to avoid inefficiency of
31512           obj.instance_eval{send(...)} tricks.
31514 Sat Sep  3 13:59:31 2005  Tanaka Akira  <akr@m17n.org>
31516         * lib/pathname.rb (Pathname#descend): Pathname.new("./a/b/c").descend
31517           didn't yield "."
31518           (Pathname#ascend): ditto.
31520 Fri Sep  2 23:51:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31522         * parse.y (f_arg): f_norm_arg is a VALUE in ripper, not an ID.
31523           fixed: [ruby-dev:26942]
31525         * lib: do not use __send__ to access private methods.  [ruby-dev:26935]
31527 Thu Sep  1 17:11:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31529         * eval.c (rb_call0): wrong condition for $SAFE restoration.
31531 Thu Sep  1 14:12:45 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31533         * ext/tk/lib/multi-tk.rb: On Tcl8.5, MultiTkIp#invoke_hidden doesn't
31534           work (gives wrong order of arguments).
31536         * ext/tk/lib/multi-tk.rb: add MultiTkIp#invoke_hidden_on_namespace
31537           to support '-namespace' option of 'interp invokehidden' command
31538           on Tcl8.5.
31540 Wed Aug 31 14:41:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31542         * win32/Makefile.sub (OPTFLAGS): default global optimization to
31543           disabled for all VC++ versions.  fixed: [ruby-dev:26897]
31545 Wed Aug 31 10:36:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31547         * process.c (proc_detach, proc_setmaxgroups): missing argument type
31548           declaration. (I recommend ANSI-style function)
31550 Wed Aug 31 06:59:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31552         * string.c (rb_str_scan): already String#scan behaves differently
31553           regarding if block is given.
31555 Tue Aug 30 23:49:34 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31557         * array.c, dir.c, enum.c, hash.c, io.c, range.c, string.c, struct.c:
31558           let enumerable methods return Enumerator.  [ruby-dev:26924]
31560         * intern.h (RETURN_ENUMERATOR): utility macro for enumerable methods.
31562 Tue Aug 30 23:25:45 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31564         * lib/debug.rb: no need to restart at exit.
31566 Tue Aug 30 23:20:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31568         * eval.c (rb_rescue2): initialization miss.  fixed: [ruby-dev:26917]
31570         * lib/mkmf.rb (xsystem, xpopen): no longer expand by Config.
31572         * lib/mkmf.rb (link_command, cc_command, cpp_command): expand
31573           variables at once, and quote hdrdir.  fixed: [ruby-core:05680]
31575         * lib/mkmf.rb (libpathflag): quote paths.
31577 Tue Aug 30 19:34:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31579         * ext/digest/md5/md5ossl.h, ext/digest/rmd160/rmd160ossl.h,
31580           ext/digest/sha1/sha1ossl.h: include <stddef.h> to avoid
31581           error in compilation with OpenSSL-0.9.8. [ruby-list:41068]
31583 Tue Aug 30 16:19:40 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
31585         * lib/irb/init.rb: bug fix. [ruby-dev: 26920]
31587 Tue Aug 30 16:13:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31589         * enum.c (enum_count): new method.  [ruby-dev:26895]
31591 Tue Aug 30 12:45:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31593         * eval.c (rb_f_send): do not call private methods if the receiver
31594           is specified.  [ruby-talk:153672]
31596 Mon Aug 29 19:47:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31598         * lib/rdoc/usage.rb: improper exceptions. [ruby-dev:26870]
31600         * lib/rdoc/usage.rb: support the case when non-ruby code exists before
31601           shebang. (this is needed when ri.bat is executed on windows)
31603 Mon Aug 29 18:58:05 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
31605         * lib/irb/init.rb: make IRB -I option that is same befavior for ruby.
31606           [ruby-dev:26872]
31608         * lib/irb/locale.rb: support to print help message when OS locale is
31609           ja_JP.utf-8. [ruby-dev:26872]
31611 Mon Aug 29 01:43:05 2005  Tanaka Akira  <akr@m17n.org>
31613         * lib/pathname.rb (Pathname#descend): new method.
31614           (Pathname#ascend): ditto.
31616 Mon Aug 29 00:35:09 2005  Tanaka Akira  <akr@m17n.org>
31618         * lib/time.rb: require 'date/format' instead of 'parsedate'.
31619           (Time.parse): extract fractional seconds using Date._parse.
31620           (Time.strptime): extract fractional seconds using Date._strptime.
31621           [ruby-talk:153859]
31623 Sat Aug 27 20:13:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31625         * ext/curses/curses.c ({curses,window}_clrtoeol): added. suggested
31626           by Reyn Vlietstra.
31628         * ext/curses/curses.c: chtype in curses is not `char', rahter `long'.
31629           [ruby-Bugs:2298]
31631         * ext/curses/view.rb: String =~ String is deprecated.
31633 Thu Aug 25 15:48:58 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31635         * ext/win32ole/win32ole.c: suppress warnings. (win32)
31637 Wed Aug 24 11:01:26 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31639         * test/logger/test_logger.rb (test_shifting_size): should close log
31640           device before unlink, since some platform cannot unlink opened
31641           file.
31643 Tue Aug 23 06:07:02 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31645         * ext/openssl/lib/digest.rb: added SHA224, SHA256, SHA384 and SHA512.
31646           these features are enabled if this library is compiled with
31647           OpenSSL 0.9.8 or later.
31649         * test/openssl/test_digest.rb: add test for new digests.
31651 Tue Aug 23 05:47:04 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31653         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): try to decode
31654           the argument as a string.
31656         * ext/openssl/ossl_ns_pki.c (ossl_spki_to_der): new method.
31658         * ext/openssl/ossl_x509store.c (ossl_x509store_initialize): should
31659           set @time to avoid warning.
31661         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths,
31662           X509_STORE_add_cert, X509_STORE_add_crl): should raise error if
31663           wrapped functions fails.
31665         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): fix error message.
31667         * ext/openssl/ossl_x509req.c (ossl_x509req_set_attributes): get rid
31668           of unused variable.
31670         * test/openssl/test_ns_spki.rb: add new file.
31672         * test/openssl/test_x509store.rb: add test for error.
31674 Tue Aug 23 01:11:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31676         * sprintf.c (ruby__sfvwrite): should move `buf' to the end of
31677           `result'. [ruby-dev:26859]
31679 Mon Aug 22 23:51:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31681         * parse.y: ONIG_OPTION_CAPTURE_GROUP conflicts with
31682           RE_OPTION_ONCE.  [ruby-dev:26852]
31684 Mon Aug 22 20:11:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31686         * missing/vsnprintf.c (BSD__sprint): needs to call vwrite function
31687           pointer.  fixed: [ruby-dev:26854]
31689 Sat Aug 20 23:55:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31691         * parse.y (parser_yylex): update paren_nest for brackets [].
31693 Sun Aug 21 00:10:23 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31695         * lib/wsdl/xmlSchema/importer.rb (WSDL::XMLSchema::Importer#fetch): add
31696           a workaround for importing an WSDL whose path begins with drive
31697           letter.  [ruby-dev:26242]
31699 Sat Aug 20 22:05:25 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
31701         * regexec.c (code_is_in_cclass_node): check code size.
31702           [ruby-dev:26840]
31704 Sat Aug 20 22:37:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31706         * lib/logger.rb (write, shift_log?, shift_log): file shifting race
31707           condition bug fixed.  [ruby-dev:26764]
31709         * test/logger/test_logger.rb: tests.
31711 Fri Aug 19 18:13:39 2005  Tanaka Akira  <akr@m17n.org>
31713         * lib/time.rb (Time.apply_offset): fix a problem with last day of
31714           month.  reported by Lucas Nussbaum.  [ruby-talk:152866]
31716 Thu Aug 18 11:05:36 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31718         * win32/win32.c (socketpair_internal): need to call open_ifs_socket()
31719           to create sockets instead of winsock's socket().
31720           fixed: [yarv-dev:581]
31722 Wed Aug 17 23:58:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31724         * eval.c (terminate_process): take String message.
31726         * eval.c (rb_thread_switch): propagate the exception caused thread
31727           termination directly.  fixed: [ruby-core:05552]
31729 Wed Aug 17 21:20:05 2005  NARUSE, Yui  <naruse@ruby-lang.org>
31731         * ext/nkf/lib/kconv.rb: ensure that symbol_to_option is private_class_method
31732           and all other methods are module_function
31733           fixed: [ruby-dev:26808]
31735 Wed Aug 17 00:05:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31737         * eval.c (rb_add_method): preserve safe level in the environment
31738           where a method is defined .
31740         * eval.c (rb_call0): restore preserved safe level in the method
31741           execution.
31743         * parse.y (lambda): need separate block variable stack
31744           manipulation and lpar_beg maintenance.  based on a patch found
31745           in [ruby-core:05551] from Mauricio Fernandez <mfp at acm.org>.
31747         * parse.y (parser_yylex): adjust lpar_beg after tLAMBEG and
31748           kDO_LAMBDA. [ruby-core:05551]
31750 Mon Aug 15 07:24:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31752         * intern.h (rb_check_to_integer): add declaration.
31754         * object.c (rb_to_integer, rb_check_to_integer): argument constified.
31756 Mon Aug 15 00:38:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31758         * eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.
31759           [ruby-dev:26800]
31761         * range.c (range_check, range_init): reduce uselse exceptions.
31763 Mon Aug 15 00:34:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31765         * parse.y (yycompile): remove unreachable code.  [yarv-dev:570]
31767 Sat Aug 13 22:16:12 2005  Minero Aoki  <aamine@loveruby.net>
31769         * lib/fileutils.rb (remove_entry_secure): forgot final chdir.
31771 Sat Aug 13 22:07:49 2005  Minero Aoki  <aamine@loveruby.net>
31773         * lib/fileutils.rb (remove_entry_secure): uses chdir(2) and check
31774           if current directory is correct. [ruby-dev:26100] [ruby-dev:26226]
31776 Sat Aug 13 21:11:05 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
31778         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT class.
31780         * ext/win32ole/tests/testall.rb: ditto.
31782         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
31784 Sat Aug 13 18:51:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31786         * eval.c (rb_block_pass): distinguish current block from others.
31787           fixed: [ruby-dev:26274]
31789         * ext/stringio/stringio.c (strio_set_string): disallow nil.
31790           http://www.rubyist.net/~nobu/t/20050811.html#c05
31792 Sat Aug 13 08:01:59 2005  NARUSE, Yui  <naruse@ruby-lang.org>
31794         * ext/nkf/lib/kconv.rb: Kconv.kconv is now alias of Kconv.conv
31795         * ext/nkf/lib/kconv.rb: remove nkf dependend symbols fomr SYMBOL_TO_OPTION
31797 Fri Aug 12 17:06:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31799         * parse.y (f_larglist): allow optional arguments even when
31800           parentheses are omitted.  based on Nobu's patch from
31801           http://www.rubyist.net/~nobu/t/20050805.html
31803         * parse.y (parser_yylex): update & maintain lpar_beg for detect
31804           lambda parameters.
31806 Thu Aug 11 23:29:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31808         * ext/stringio/stringio.c: keep holding string after closed.
31810 Thu Aug 11 20:48:40 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
31812         * numeric.c (fix_equal, fix_cmp, fix_gt, fix_ge, fix_lt, fix_le):
31813           reduce coercing when a method knows about a operand type.
31814           [ruby-dev:26789]
31816 Thu Aug 11 13:01:48 2005  Kouhei Sutou  <kou@cozmixng.org>
31818         * lib/rss: fixed sort bug. [ruby-list:41018]
31820         * lib/rss/1.0.rb (RSS::RDF::Channel#setup_maker_attributes):
31821           removed self.
31823         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#<=>): use #date
31824           instead of @date.
31825           (RSS::Maker::Base::self.def_array_element): added #size.
31827         * lib/rss/maker/1.0.rb
31828           (RSS::Maker::RSS10::Channel#to_rss,
31829            RSS::Maker::RSS10::Items::Item#to_rss): cleared dc_dates set
31830           upped by using #date.
31832         * lib/rss/maker/dublincore.rb
31833           (RSS::Maker::ChannelBase, RSS::Maker::ItemsBase::ItemBase):
31834           fixed opposite alias.
31836         * test/rss/test_setup_maker_1.0.rb
31837           (RSS::TestSetupMaker10::test_setup_maker_items_sort): added some
31838           tests for RSS::Maker::ItemsBase#do_sort.
31840 Wed Aug 10 12:01:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31842         * lib/delegate.rb: simplifies Delegator classes; SimpleDelegator
31843           now uses method_missing for all methods.
31845 Wed Aug 10 10:38:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31847         * bignum.c (rb_big_mul0): multiply two numbers (x, y) without
31848           normalizing the result.  x should be a big number.
31849           [ruby-dev:26778]
31851         * bignum.c (rb_big_pow): use rb_big_mul0() instead of
31852           rb_big_mul().
31854         * array.c (rb_ary_or, rb_ary_and, rb_ary_plus, rb_ary_diff):
31855           revert the change on 2005-08-03.  Set operation on other item
31856           should have in separate methods.
31858         * parse.y (shadowing_lvar_gen): warn when arguments shadows
31859           external local variables.
31861         * parse.y (f_opt): optional arguments should not clobber external
31862           local variables.
31864         * parse.y (f_rest_arg): rest arguments should not clobber external
31865           local variables.
31867 Wed Aug 10 10:29:40 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31869         * ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
31871         * ext/tk/lib/tk/itemconfig.rb: fix bug on handling
31872           __item_ruby2val_optkeys().
31874         * ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys().
31876         * ext/tk/lib/tkextlib/blt/component.rb: ditto.
31878 Tue Aug  9 21:53:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31880         * eval.c (formal_assign): let default values override
31881           arguments to zsuper.  fixed: [ruby-dev:26743]
31883 Tue Aug  9 20:30:19 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
31885         * bignum.c (rb_big_coerce): allow bignum x bignum coercing.
31886           [ruby-dev:26778]
31888 Tue Aug  9 15:12:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31890         * ext/tk/tcltklib.c: remove dangerous 'rb_jump_tag's.
31892         * ext/tk/lib/tk.rb: add __val2ruby_optkeys and __ruby2val_optkeys to
31893           help to convert option values between ruby and tcl.
31895         * ext/tk/lib/tk/itemconfig.rb: add __item_val2ruby_optkeys and
31896           __item_ruby2val_optkeys to help to convert option values between
31897             ruby and tcl.
31899         * ext/tk/lib/tk/radiobutton.rb: use __ruby2val_optkeys for 'variable'
31900           option (for the reason of backward compatibility).
31902         * ext/tk/lib/tk/composite.rb: clarify the arguments of super().
31904         * ext/tk/lib/tk/spinbox.rb: ditto.
31906         * ext/tk/lib/tk/text.rb: ditto.
31908         * ext/tk/lib/tk/validation.rb: ditto.
31910         * ext/tk/lib/tkextlib/*: support to treat tkvariable-type
31911           configure options.
31913 Tue Aug  9 08:24:05 2005  Mauricio Fernandez  <mfp@acm.org>
31915         * parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamic
31916           variable lambda arguments.  [ruby-core:05540]
31918 Mon Aug  8 22:13:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31920         * eval.c (assign): deal with new block argument.
31921           fixed: [ruby-core:05536]
31923         * eval.c (rb_node_arity): follow change of NODE_ARGS.
31924           fixed: [ruby-dev:26761]
31926 Mon Aug  8 21:28:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31928         * test/ruby/test_fnmatch.rb: separated from test_file.rb.
31930 Mon Aug  8 20:40:35 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31932         * test/ruby/test_method.rb: added.  [ruby-dev:26761]
31934 Mon Aug  8 01:26:37 2005  Mauricio Fernandez  <mfp@acm.org>
31936         * parse.y (f_larglist): mistake in syntax rule.  [ruby-core:05535]
31938 Mon Aug  8 05:16:55 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31940         * ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_error
31941           to get last error on the current thread. And should report
31942           if errors are on the stack while OpenSSL.debug is true.
31944         * ext/openssl/ossl.c (ossl_get_errors): new method for debugging
31945           this library.
31947 Mon Aug  8 05:15:19 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31949         * lib/webrick/httpproxy.rb (HTTPProxyServer#intialize),
31950           lib/webrick/httpserver.rb (HTTPServer#intialize),
31951           lib/webrick/httpservlet/cgihandler.rb (CGIHandler#initialize),
31952           lib/webrick/httpservlet/erbhandler.rb (ERBHandler#initialize),
31953           lib/webrick/httpservlet/filehandler.rb(DefaultFileHandler#initialize):
31954           super (called with no arguments) takes default value of optional
31955           arguments. [ruby-dev:26743]
31957         * lib/webrick/httputils.rb: add a media-type "text/html" for .xhtml.
31959 Sun Aug  7 23:52:39 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31961         * test/ruby/test_super.rb: added optional arg tests.  [ruby-dev:26743]
31962           the tests expects 1.8 behavior at this time.
31964 Sat Aug  6 12:35:24 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31966         * ext/tk/lib/{tk.rb,tk/itemconfig.rb}: configure creates
31967           TkVariable if key name is 'variable' or 'textvariable'
31968           by default. [ruby-dev:26749]
31970         * ext/tk/lib/tk/{label,radiobutton}.rb: removed its own
31971           {variable,textvariable} function.
31973         * ext/tk/lib/tk/variable.rb: retains backward conpatibility.
31975 Fri Aug  5 12:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31977         * ext/tk/tcltklib.c: fixed memory leak when tk_funcall raised
31978           exception. (copies argv into heap in tk_funcall instead of
31979           caller)
31981 Fri Aug  5 12:36:40 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31983         * lib/mkmf.rb (create_makefile): need to convert path separetor
31984           before invoking install command.
31986 Fri Aug  5 08:08:05 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31988         * eval.c (return_jump): fix "can't across thread" error message
31989           when no thread associated.
31990           http://www.namikilab.tuat.ac.jp/~sasada/diary/200507.html#d31
31992 Fri Aug  5 00:25:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31994         * ext/tk/tcltklib.c: refactoring - extract ruby string <->
31995           tcl object conversion as get_str_from_obj and get_obj_from_str.
31997 Fri Aug  5 00:19:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31999         * enumerator.c (Init_Enumerator): provided features should have
32000           extensions.
32002         * eval.c (rb_feature_p): returns type of the feature instead of
32003           extension.
32005         * eval.c (search_required): ruby library should be prior to statically
32006           linked extentions.  fixed: [ruby-dev:26711]
32008         * eval.c (formal_assign): returns position of rest arguments variable.
32010         * parse.y (f_rest_arg): use anonymous variable for rest arguments.
32011           fixed: [ruby-dev:26647]
32013         * extmk.rb (extmake): needs to be wrapped in an Array.
32015 Thu Aug  4 20:03:18 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32017         * numeric.c (Init_Numeric): do not share implementation among
32018           Fixnum#/ and Fixnum#div.  [ruby-core:05531]
32020 Thu Aug  4 18:38:36 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32022         * ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
32024         * ext/tk/tcltklib.c: add nativethread consistency check.
32026         * ext/tk/stubs.c: ditto.
32028         * ext/tk/lib/tk.rb: forgot to define TclTkIp.encoding and encoding=
32029           when Tcl is 7.6 or 8.0.
32031         * ext/tk/lib/tk/wm.rb: support to make some methods as options of
32032           root or toplevel widget. [ruby-talk:150336]
32034         * ext/tk/lib/tk/root.rb: ditto.
32036         * ext/tk/lib/tk/toplevel.rb: ditto.
32038         * ext/tk/lib/tkextlib/SUPPRT_STATUS: update RELEASE_DATE
32040 Thu Aug  4 13:30:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32042         * numeric.c (fix_div): should not convert the result into
32043           integer.  [ruby-core:05524]
32045 Thu Aug  4 08:03:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32047         * ext/extmk.rb (extmake): should not modify $mflags for each
32048           extentions.
32050 Thu Aug  4 00:25:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32052         * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
32053           macro definitions.
32055         * bcc32/Makefile.sub: LIBRUBY_SO should use DLDOBJS, not EXTOBJS.
32057         * {win32,wince}/Makefile.sub: separate config.h for compiler versions.
32059 Thu Aug  4 00:24:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32061         * sprintf.c: replacing is no longer needed.
32063 Wed Aug  3 21:59:16 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32065         * ext/tk/lib/tk/variable.rb: TkVariable#trace didn't work on
32066           TkVariable retrived from TkVariable.new_hash.ref. [ruby-dev:26721]
32068 Wed Aug  3 12:40:28 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32070         * numeric.c (fix_plus): reduce coercing when a method knows about
32071           a operand type.  [ruby-dev:26723]
32073         * numeric.c (fix_minus, fix_mul, fix_quo, fix_div, fix_mod,
32074           fix_divmod, fix_pow): ditto.
32076         * bignum.c (rb_big_div, rb_big_modulo): export to reduce
32077           coercing.
32079 Wed Aug  3 10:13:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32081         * configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,
32082           HAVE_VSNPRINTF): use win32/win32.c's implementation instead of
32083           missing/vsnprintf.c's.
32085         * win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted.
32087 Wed Aug  3 10:05:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32089         * configure.in: check vsnprintf() and snprintf().
32091         * sprintf.c, missing/vsnprintf.c: made vsnprintf() and snprintf()
32092           private.  fixed: [ruby-dev:26651]
32094 Wed Aug  3 08:22:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32096         * ext/socket/socket.c (ruby_connect): revert [ruby-talk:111654]
32097           changes at 2004-09-07.  [ruby-dev:26656]
32099 Wed Aug  3 06:53:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32101         * array.c (rb_ary_or): wraps the operand in an array if it is not
32102           an array.  [ruby-talk:150495] [EXPERIMENTAL]
32104         * array.c (rb_ary_and, rb_ary_plus, rb_ary_diff): ditto.
32106 Tue Aug  2 10:23:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32108         * ext/tk/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
32109           Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)
32111         * ext/tk/tcltklib.c: use ip_{get,set,unset}_variable2_core from
32112           ip_{get,set,unset}_variable.
32114         * ext/tk/tcltklib.c: replaced Tcl_Panic with rb_bug.
32116 Tue Aug  2 01:40:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32118         * lib/ping.rb (Ping.pingecho): should rescue StandardError.
32119           [ruby-dev:26677]
32121 Mon Aug  1 19:02:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32123         * ext/tk/tcltklib.c: refactoring - replaced rb_ivar_defined &
32124           rb_ivar_get with single rb_attr_get call.
32126 Mon Aug  1 18:44:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32128         * ext/tk/tcltklib.c (Tcl_GetStringResult): refactoring - define
32129           alternative macro on Tcl7.x or earlier.
32131 Mon Aug  1 13:53:55 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32133         * ext/tk/tcltklib.c (deleted_ip): refactoring - interpreter
32134           deletion check. [ruby-dev:26664]
32136 Mon Aug  1 01:08:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
32138         * lib/drb/drb.rb (check_insecure_method): use private_methods and
32139           protected_methods instead of respond_to? to check method visibility.
32140           [ruby-dev:26616]
32142         * test/drb/drbtest.rb: ditto.
32144         * test/drb/ut_drb.rb: ditto.
32146 Sat Jul 30 18:49:44 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32148         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#ole_typelib,
32149           WIN32OLE_TYPE#implemented_ole_types.
32151         * ext/win32ole/tests/testOLETYPE.rb: ditto.
32153 Fri Jul 29 16:12:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32155         * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955]
32157 Fri Jul 29 09:59:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32159         * eval.c (rb_call0): fix calling zsuper from a method with anonymous
32160           rest argument.  [ruby-dev:26639]
32162         * eval.c (rb_yield_0): push yielded node instead of yielding.
32163           fixed: [yarv-dev:549]
32165 Thu Jul 28 21:49:17 2005  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
32167         * parse.y (rb_parser_end_seen_p): exclude from ripper.
32168           <http://moonrock.jp/~don/d/200507.html#d28_t2>
32170         * sprintf.c (clearerr): remove standard macro before re-definition.
32171           <http://moonrock.jp/~don/d/200507.html#d28_t3>
32173 Thu Jul 28 18:09:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32175         * ext/tk/stubs.c: When --enable-tcltk-stubs, the initialize
32176           routine creates a Tcl/Tk interpreter and deletes it. However,
32177           init cost of Tk's MainWindow is not so small. And that makes it
32178           impossible to use libraries written with Tcl functions only on
32179           an environment without a graphical display. This changes support
32180           delaying initalization of Tk_Stubs until the script needs Tk.
32182         * ext/tk/stubs.h: New file. Define prototypes and return codes of
32183           functions on stubs.c.
32185         * ext/tk/tcltklib.c: Support delaying initalization of Tk_Stubs
32186           until the script needs Tk.
32188         * ext/tk/tcltklib.c: Show friendly error messages for errors on
32189           initialization.
32191         * ext/tk/tcltklib.c: Avoid SEGV on ip_finalize() when ruby is
32192           exiting and $DEBUG is true. (Not fix. If you know the reason of
32193           why, please fix it.)
32195         * ext/tk/tkutil/tkutil.c (ary2list, ary2list2): bug fix on handling
32196           of encoding.
32198         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
32199           don't work propery.
32201         * ext/tk/lib/tk.rb: Forget extending Tk::Encoding module to Tk.
32203         * ext/tk/lib/tk/variable.rb: TkVarAccess fails to initialize the
32204           object for an element of a Tcl's array variable.
32206 Thu Jul 28 17:23:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32208         * parse.y (f_larglist): allow block argument in lambda parameter
32209           list without parenthesis.
32211 Thu Jul 28 17:14:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32213         * hash.c (each_i): typo fixed.  [ruby-dev:26622]
32215 Thu Jul 28 15:04:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32217         * parse.y (f_arg): better argument name duplication check
32219         * parse.y (new_args_gen): factored out name duplication check for
32220           optional and rest arguments.
32222         * parse.y (new_bv_gen): allow shadowing outer local variables;
32223           warning remains.
32225 Thu Jul 28 13:46:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32227         * parse.y (ripper_warningS): the argument was omitted.
32228           [ruby-dev:26621]
32230 Thu Jul 28 11:30:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32232         * parse.y (f_larglist): allow bv_decl at the end of lambda
32233           argument list.  [EXPERIMENTAL]
32235         * parse.y (new_bv_gen): allow local variable shadowing, with
32236           warning in verbose mode.
32238 Wed Jul 27 23:23:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32240         * gc.c (obj_free): make message format consistent with one from
32241           gc_mark().  [ruby-talk:149668]
32243         * sprintf.c (quad_t): prepare quad_t as well.  [ruby-talk:149668]
32245 Wed Jul 27 22:11:37 2005  Kouhei Sutou  <kou@cozmixng.org>
32247         * sample/rss/tdiary_plugin: removed. because the plugin
32248           is imported in the tDiary plugin packages.
32250 Wed Jul 27 19:11:53 2005  Minero Aoki  <aamine@loveruby.net>
32252         * lib/fileutils.rb (cd): follow :noop option change. (This patch
32253           is contributed by Doug Kearns)
32255 Wed Jul 27 16:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32257         * parse.y (lambda): Perl6 style -> lambda expression. [NEW]
32258           [VERY EXPERIMENTAL]
32260 Wed Jul 27 10:43:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32262         * gc.c (id2ref): must not assign pointers to long int.  use
32263           LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
32264           [ruby-talk:149645]
32266         * ruby.h: use LONG_LONG to simplify the change.
32267           [ruby-talk:149645]
32269 Wed Jul 27 10:59:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32271         * dir.c (dir_each): rewinddir(3) before iteration.
32272           [ruby-talk:149628]
32274 Wed Jul 27 02:34:58 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32276         * eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
32277           [ruby-talk:149553]
32279         * missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
32280           size pointer.  [ruby-talk:149553]
32282 Tue Jul 26 22:41:28 2005  Minero Aoki  <aamine@loveruby.net>
32284         * ext/ripper/lib/ripper/sexp.rb: new method Ripper.sexp_raw.
32286         * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp): returns more
32287           readable tree.  This is suggested by Kirill A. Shutemov.
32289 Tue Jul 26 22:05:12 2005  Minero Aoki  <aamine@loveruby.net>
32291         * lib/net/http.rb: merge a patch contributed by Daniel Berger,
32292           with some modification. (RubyForge #2128)
32294 Tue Jul 26 18:11:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32296         * ruby.h: support LLP64 model.  [ruby-talk:149524]
32298 Tue Jul 26 12:57:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32300         * ext/openssl/openssl_missin.c: include <openssl/engine.h> before
32301           <openssl/x509_vfy.h> to avoid compilation error of mswin32.
32302           suggested by NAKAMURA Usaku.
32304 Mon Jul 25 23:48:55 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32306         * win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.
32308 Mon Jul 25 21:30:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32310         * common.mk: Borland MAKE doesn't look for file names which have paths
32311           from VPATH.  fixed: [ruby-dev:26604]
32313         * ruby.h (NORETURN, DEPRECATED): moved just after config.h.
32315         * {win32,wince}/Makefile.sub: vsnprintf() is in missing now.
32317         * {bcc32,win32,wince}/Makefile.sub: moved CPPFLAGS only for ruby
32318           source to XCFLAGS.
32320 Mon Jul 25 14:10:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32322         * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
32324 Mon Jul 25 13:45:18 2005  NAJIMA Hiroki  <najima@mickey.ai.kyutech.ac.jp>
32326         * io.c: check HAVE_SYS_IOCTL_H before including the header.
32327           [ruby-dev:26610]
32329 Sat Jul 23 16:48:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32331         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should check
32332           OPENSSL_NO_STATIC_ENGINE.
32334 Sat Jul 23 11:46:30 2005  Tanaka Akira  <akr@m17n.org>
32336         * eval.c (rb_fd_select): the all three fd_sets must be long enough for
32337           select.  fixed: [ruby-talk:149059]
32339 Sat Jul 23 10:01:41 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32341         * sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
32342           using missing/vsnprintf.c.  [ruby-dev:26580]
32344         *  missing/vsnprintf.c: made the output changeable.
32346 Fri Jul 22 21:06:08 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32348         * bignum.c (rb_big_eq): reduce isnan().  [ruby-dev:26600]
32350         * numeric.c (flo_eq, flo_gt, flo_ge, flo_lt, flo_le): ditto.
32352 Fri Jul 22 15:02:39 2005  Kouhei Sutou  <kou@cozmixng.org>
32354         * lib/rss/rss.rb: moved copyright description to lib/rss.rb.
32356         * lib/rss.rb: added for convenience.
32358         * sample/rss/re_read.rb: added #to_s sample.
32360         * sample/rss/blend.rb: use 'require "rss"' instead of
32361           'require "rss/*"'.
32362         * sample/rss/list_description.rb: ditto.
32363         * sample/rss/rss_recent.rb: ditto.
32364         * sample/rss/tdiary-plugin/rss-recent.rb: ditto.
32366         * sample/rss/tdiary-plugin/rss-recent.rb: 0.0.6 -> 0.0.7.
32368 Fri Jul 22 14:37:43 2005  Kouhei Sutou  <kou@cozmixng.org>
32370         * lib/rss/parser.rb (RSS::Parser#initialize): accept HTTP/FTP
32371           URI and local file path too.
32373         * test/rss/test_parser.rb (RSS::TestParser#test_parse): test
32374           for the above.
32376 Fri Jul 22 07:01:42 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32378         * ext/tk/tkutil/tkutil.c (tk_conv_args): forget to revert
32379           thread_critical and gc_disable when raise ArgumentError.
32381         * ext/tk/lib/remote-tk.rb: RemoteTkIp doesn't need to include TkUtil.
32383         * ext/tk/tcltklib.c: add TclTkIp#has_mainwindow? method.
32385         * ext/tk/lib/tk.rb: add Tk.has_mainwindow? method.
32387         * ext/tk/lib/multi-tk.rb: add MultiTkIp#has_mainwindow? method.
32389         * ext/tk/lib/remote-tk.rb: add RemoteTkIp#has_mainwindow? method.
32391         * ext/tk/lib/multi-tk.rb: slave IP fail to exit itself when $SAFE==4.
32393         * ext/tk/lib/multi-tk.rb: remove constants from MultiTkIp module to
32394           avoid access from external.
32396         * ext/tk/lib/multi-tk.rb: check_root flag is ignored on slave IPs'
32397           mainloop.
32399         * ext/tk/lib/multi-tk.rb: hang-up Tk.mainloop called on a slave IP
32400           with $SAFE==4.
32402         * ext/tk/lib/multi-tk.rb: MultiTkIp#bg_eval_proc doesn't work
32403           properly.
32405         * ext/tk/lib/multi-tk.rb: add MultiTkIp#set_cb_error(proc) and
32406           cb_error(exc) to log errors at callbacks on safe slave IPs.
32408         * ext/tk/lib/multi-tk.rb: fail to get an available slave IP object
32409           when call Tk.mainloop in the block which is given to new_* method,
32410             because cannot finish initialize while the root widget is alive.
32412         * ext/tk/lib/multi-tk.rb: fail to control a slave IP when Tk.mainloop
32413           runs on the IP.
32415 Thu Jul 21 01:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32417         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
32418           import 1.76
32419           [ruby-dev:26592] nkf constification
32421 Wed Jul 20 19:18:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32423         * io.c (S_ISREG): need to define S_ISREG before it is used first.
32425 Wed Jul 20 18:33:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32427         * io.c (wsplit_p): patch for the environment where
32428           fcntl(F_GETFL, O_NONBLOCK) is not supported. in that case,
32429           set FMODE_WSPLIT without fcntl check. [ruby-dev:26566]
32431 Wed Jul 20 18:07:11 2005  Tanaka Akira  <akr@m17n.org>
32433         * io.c (rb_io_ctl): update FMODE_WSPLIT_INITIALIZED and FMODE_WSPLIT
32434           by F_SETFL.
32436 Wed Jul 20 10:04:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32438         * variable.c (rb_class_path): need to adjust snprintf() len for
32439           teminating NUL.  [ruby-dev:26581]
32441 Wed Jul 20 03:58:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32443         * ext/socket/socket.c: sorry, BeOS also uses HAVE_CLOSESOCKET,
32444           so reverted.
32446         * ext/socket/extconf.rb: should not define HAVE_CLOSESOCKET
32447           on windows.
32449 Wed Jul 20 03:12:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32451         * ext/socket/socket.c: should not undef close() on win32.
32452           it's defined to rb_w32_close(), otherwise handle leaks.
32453           [ruby-Bugs-2131]
32455 Wed Jul 20 00:48:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32457         * error.c (syserr_initialize): don't use str before StringValue()
32458           check.  [ruby-dev:26579]
32460 Tue Jul 19 22:47:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32462         * error.c (syserr_initialize): add 1 byte for snprintf() size for
32463           NUL at the end.  [ruby-dev:26574]
32465 Tue Jul 19 17:16:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32467         * signal.c (trap): remove sigexit(); handle "EXIT" via sig_exec().
32468           [ruby-dev:26440]
32470         * io.c (rb_io_inspect): replace sprintf() with "%s" format all
32471           over the place by snprintf() to avoid integer overflow.
32473 Tue Jul 19 14:10:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32475         * ext/tk/tcltklib.c: rbtk_eventloop_depth is used as int.
32477         * ext/tk/tcltklib.c: rbtk_pending_exception is tested with
32478           NIL_P, so should assign Qnil instead of 0 (Qfalse).
32480         * ext/tk/tcltklib.c (ip_invoke_real): fixed memory leak when
32481           ip is deleted.
32483 Tue Jul 19 13:19:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32485         * ext/tk/lib/tk/variable.rb: For symmetry, add TkVariable#string. It
32486           returns a string even if the default value type of the TkVariable
32487           object is not "string".
32489 Mon Jul 18 21:39:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32491         * eval.c (rb_call0): make the pointer to NODE volatile
32492           instead of NODE itself.
32494 Mon Jul 18 14:32:21 2005  Tanaka Akira  <akr@m17n.org>
32496         * eval.c (rb_call0): make body volatile to avoid possible optimization
32497           problem.
32498           [ruby-dev:26195]
32500 Mon Jul 18 12:23:27 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32502         * ext/io/wait/wait.c: wrong backport from trunk, and compile error on
32503           platforms fd_set is not a bit set.  fixed: [ruby-dev:26562]
32505 Mon Jul 18 09:36:25 2005  Tanaka Akira  <akr@m17n.org>
32507         * rubyio.h (FMODE_WSPLIT, FMODE_WSPLIT_INITIALIZED): new constant.
32509         * io.c (wsplit_p): new function.
32510           (io_fflush): split writing data by PIPE_BUF if wsplit_p is true in
32511           multi-threaded mode.
32512           (io_fwrite): ditto.
32513           [ruby-dev:26540]
32515 Mon Jul 18 05:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32517         * ext/nkf/nkf-utf8/nkf.c: import nkf.c 1.73
32518           fix: TestKconv 1F
32520 Sun Jul 17 13:46:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32522         * ext/io/wait/extconf.rb, ext/io/wait/wait.c: Win32 platforms support.
32524 Sat Jul 16 23:43:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32526         * enumerator.c (Init_Enumerator): wrong argument specs.
32527           [ruby-core:05481]
32529 Sat Jul 16 15:52:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32531         * win32/win32.[hc]: constified socket functions. [ruby-dev:26553]
32533 Fri Jul 15 23:59:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32535         * lib/rdoc/parsers/parse_c.rb (handle_class_module): handle a
32536           module enclosed in a built-in module.  fixed: [ruby-talk:148239]
32538         * lib/rdoc/parsers/parse_c.rb (find_body): allow macros as methods.
32540         * lib/rdoc/parsers/parse_c.rb (find_call_seq): allow :nodoc: modifier
32541           in C.  [ruby-core:04572]
32543 Fri Jul 15 23:20:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32545         * enumerator.c (Init_Enumerator): use an internal directly.
32547 Fri Jul 15 07:58:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32549         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
32550           sockets should be non-blocking mode. [ruby-dev:26405]
32552         * lib/webrick/utils.rb (WEBrick::Utils.set_non_blocking): new method.
32554 Fri Jul 15 00:11:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32556         * enum.c (enumeratorize): create new enumerator for current method if
32557           no block is given.
32559         * enumerator.c: moved from ext/enumerator.
32561 Thu Jul 14 18:27:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32563         * win32/win32.c (rb_w32_strerror): should return correct message
32564           for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]
32566         * win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
32567           (bcc32) [ruby-dev:26533]
32569 Thu Jul 14 00:45:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32571         * LEGAL (ext/nkf/nkf-utf8): updated from nkf1.7 to nkf-utf8.
32573 Wed Jul 13 22:44:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32575         * parse.y: remove static variables.  [ruby-dev:26530]
32577 Wed Jul 13 19:36:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32579         * win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
32580           if file or directory already exists. (bcc32) [ruby-dev:26508]
32582         * win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
32583           if it is not directory. (bcc32, win32)
32585         * win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
32586           FILE_ATTRIBUTE_READONLY flag on function failure.
32588 Wed Jul 13 12:40:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32590         * ext/tk/tcltklib.c: TclTkLib.do_one_event doesn't work.
32592         * ext/tk/lib/tk.rb: Tk.thread_update is available.
32594 Tue Jul 12 23:32:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32596         * lib/mkmf.rb: keep curdir unexpanded.
32598 Mon Jul 11 23:50:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32600         * eval.c, intern.h (rb_proc_call, rb_obj_method, rb_method_call):
32601           export.
32603         * ext/enumerator/enumerator.c (enumerator_with_index): [EXPERIMENTAL]
32604           added a new method Enumerator#with_index.  [ruby-talk:147728]
32606 Mon Jul 11 08:31:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32608         * regparse.c (fetch_escaped_value): mask values following \c in
32609           regexp.  fixed: [ruby-dev:26500]
32611 Sun Jul 11 05:18:17 2005  Michael Neumann  <mneumann@ruby-lang.org>
32613         * lib/xmlrpc/server.rb (XMLRPC::Server): Switch from GServer over to
32614           WEBrick. This makes file lib/xmlrpc/httpserver.rb obsolete (at least it is
32615           no further used by the XML-RPC library).
32617 Mon Jul 11 02:50:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32619         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
32620           mistook to merge the patch of [ruby-dev:26235] at
32621           revision 1.11.
32623 Sun Jul 10 23:58:04 2005  Tanaka Akira  <akr@m17n.org>
32625         * lib/pathname.rb (Pathname#unlink): try Dir.unlink first to
32626           avoid unlink a directory by root.
32627           cf. [ruby-dev:26237]
32629 Sun Jul 10 12:47:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32631         * lib/debug.rb (debug_command): added a deficient format specifier.
32632           fixed: [ruby-core:05419]
32634 Sat Jul  9 22:02:37 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32636         * ext/win32ole/win32ole.c (ole_method_dispid): convert dispid
32637           in Ruby and C by INT2NUM and NUM2INT.
32639         * ext/win32ole/win32ole.c (ole_invoke2): ditto.
32641         * ext/win32ole/test/testWIN32OLE.rb: ditto.
32643         * ext/win32ole/test/testOLEMETHOD.rb: ditto.
32645 Fri Jul  8 15:45:04 2005  Kouhei Sutou  <kou@cozmixng.org>
32647         * lib/rss/rss.rb (RSS::VERSION): 0.1.4 -> 0.1.5.
32649         * test/rss/test_version.rb (RSS::TestVersion#test_version):
32650           ditto.
32652         * lib/rss/0.9.rb (RSS::Rss::Channel::Item::Category):
32653           domain attribute of <category> is optional. Thanks to
32654           Chris Lee <clee@kde.org>.
32656         * test/rss/test_parser.rb (RSS::TestParser#test_category20):
32657           adjusted test case.
32659 Wed Jul  6 18:45:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32661         * object.c (rb_obj_pattern_match): now returns nil.
32662           [ruby-core:05391]
32664 Mon Jul  4 14:35:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32666         * sample/svr.rb: service can be stopped by ill-behaved client; use
32667           tsvr.rb instead.
32669 Mon Jul  4 13:25:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32671         * missing/erf.c: original erf.c by prof. Okumura is confirmed to
32672           be public domain.  reverted BSD implementation.
32674 Wed Jul  6 11:15:21 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32676         * win32/win32.c (open_ifs_socket): new function.
32678         * win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket()
32679           instead of socket().
32680           all changes are derived from [ruby-core:5388].
32682 Wed Jul  6 00:15:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32684         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
32685           imported nkf.c 1.70 (support UTF-8-MAC)
32687         * ext/nkf/lib/kconv.rb: add :utf8mac and :internalunicode
32689 Tue Jul  5 23:44:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32691         * instruby.rb: expand source library path.
32693 Tue Jul  5 23:27:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32695         * array.c (sort_2): get rid of yet another bcc's bug.
32696           fixed: [ruby-core:05152]
32698         * eval.c (rb_thread_save_context): must not switch contexts during
32699           re-allocating stack.  fixed: [ruby-core:05219]
32701 Tue Jul  5 15:15:10 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32703         * ext/tk/tkutil.c: fix typo.
32705 Tue Jul  5 14:52:56 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32707         * ext/tk/tcltklib.c: bug fix on treating Unicode strings.
32709         * ext/tk/tcltklib.c: add methods to treat encoding mode.
32711         * ext/tk/MANUAL_tcltklib.eng: add description of TclTkLib#encoding,
32712           encoding_system, and so on.
32714         * ext/tk/MANUAL_tcltklib.eucj: ditto.
32716         * ext/tk/tkutil/tkutil.c: fail to create a Tcl's list string from
32717           an array including multiple kind of encoded strings.
32719         * ext/tk/lib/tk.rb: ditto.
32721         * ext/tk/lib/multi-tk.rb: 2nd arg of _{to|from}UTF8 is omissible.
32723         * ext/tk/lib/remote-tk.rb: ditto.
32725         * ext/tk/lib/tk.rb: override TclTkLib#encoding and encoding= to
32726           use TkCore::INTERP.encoding and encoding=.
32728         * ext/tk/lib/tk.rb: when "require 'tk'" and $KCODE=='NONE', check
32729           DEFAULT_TK_ENCODING to decide Ruby/Tk's system encoding mode.
32731         * ext/tk/lib/tk/encodedstr.rb: check both of Tk.encoding and
32732           Tk.encoding_system. Tk.encoding has higher priority.
32734         * ext/tk/lib/tk/optiondb.rb: ditto.
32736         * ext/tk/lib/tk/spinbox.rb: ditto.
32738         * ext/tk/lib/tk/validation.rb: ditto.
32740         * ext/tk/lib/tk/namespace.rb: arguemnts for TclTkIp#_merge_tklist
32741           should be UTF-8 strings.
32743 Mon Jul  4 19:29:32 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32745         * lib/set.rb: test change to follow revision 1.28. (duck typing?)
32747 Mon Jul  4 11:23:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32749         * test/{dbm,gdbm,sdbm}/test_{dbm,gdbm,sdbm}.rb: skip some tests
32750           which using fork on fork-less platforms.
32752 Sun Jul  3 23:26:30 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32754         * test/wsdl/document/test_rpc.rb: compare formatted time string of
32755           Time objects instead of comparing Time objects itself to avoid
32756           unintended conflict of usec part.  [ruby-dev:26220]
32758 Sat Jul  2 22:41:04 2005  Tanaka Akira  <akr@m17n.org>
32760         * ext/socket/socket.c (unix_send_io, unix_recv_io): support x86-64 and
32761           IA64.
32763 Sat Jul  2 17:06:23 2005  Tanaka Akira  <akr@m17n.org>
32765         * defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.
32766           (flush_register_windows): declare flush_register_windows.
32768         * eval.c (flush_register_windows): new function.
32770         * ruby.h (NOINLINE): move up to be effective in defines.h.
32772 Sat Jul  2 15:19:41 2005  Tanaka Akira  <akr@m17n.org>
32774         * configure.in: check select_large_fdset.
32776         * eval.c: use select_large_fdset to support large file descriptors
32777           on Solaris.  [ruby-dev:26404]
32779 Fri Jul  1 17:55:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32781         * bignum.c (rb_big_neg): may be accessing bogus pointer value.
32783 Fri Jul  1 15:50:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32785         * missing/erf.c: need to include some headers for some platforms.
32787         * win32/win32.h (copysign, scalb): define for compatibility with
32788           other platforms. [ruby-dev:26430]
32790 Fri Jul  1 15:37:42 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32792         * missing/crypt.c: modified to make it compilable on platforms
32793           other than BSD.  [ruby-dev:26430]
32795         * missing/erf.c: ditto.  code from <exp.c> merged.
32797 Fri Jul  1 12:44:56 2005  Tanaka Akira  <akr@m17n.org>
32799         * lib/open-uri.rb (OpenURI.open_http): refine post_connection_check
32800           call.
32802 Fri Jul  1 11:34:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32804         * missing/crypt.c: replaced with 4.4BSD version.
32806         * missing/erf.c: ditto.
32808         * missing/vsnprintf.c: removed the third provision from the old
32809           BSD license.  [ruby-core:05177]
32811 Fri Jul  1 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32813         * enum.c (enum_min, enum_max): must not return Qundef.
32814           fixed: [ruby-core:05299]
32816 Fri Jul  1 00:18:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32818         * lib/delegate.rb (Delegator::respond_to): respond_to? must check
32819           destination object.  [ruby-talk:146894]
32821 Thu Jun 30 23:52:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32823         * signal.c (trap): non-string trap hander was ignored.
32824           fixed: [ruby-dev:26417]
32826 Thu Jun 30 19:00:21 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32828         * lib/irb/ruby-lex.rb (RubyLex::identify_number): alternative implements
32829           for [ruby-dev:26410]. And support a numeric form of 0d99999.
32831 Thu Jun 30 17:28:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32833         * lib/irb/ruby-lex.rb (RubyLex::identify_number): should not treat
32834           plain zero as an octal number.  [ruby-dev:26410]
32836 Thu Jun 30 15:13:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32838         * eval.c (rb_eval): pre-evaluate argument for unambiguous
32839           evaluation order.  [ruby-dev:26383]
32841 Thu Jun 30 14:48:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32843         * lib/net/http.rb (Net::HTTP#connect, Net::HTTP#request): should
32844           not send proxy username and password to origin servers.
32845           [ruby-dev:25673]
32847         * lib/net/http.rb (Net::HTTP::ProxyDelta#edit_path): should not
32848           send HTTPS scheme URL to origine servers. [ruby-dev:25689]
32850 Thu Jun 30 09:53:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32852         * lib/delegate.rb (Delegator::method_missing): forward unknown
32853           method to the destination.  suggested by
32854           <christophe.poucet@gmail.com>.  [ruby-talk:146776]
32856 Wed Jun 29 00:03:20 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
32858         * regparse.c (fetch_token): avoid warning of unused goto tag.
32859           [ruby-dev:26389]
32861 Tue Jun 28 21:59:29 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
32863         * dir.c, eval.c, parse.y, process.c, ruby.c: avoid warning "unused
32864           variable" [ruby-dev:26387]
32866         * dir.c (glob_helper): avoid warning "enumeration value `RECURSIVE'
32867           not handled in switch" [ruby-dev:26392]
32869 Tue Jun 28 01:52:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32871         * ext/nkf/lib/kconv.rb: add Kconv::VERSION
32872         * ext/nkf/lib/kconv.rb (conv): can process arrayed options
32873         * ext/nkf/nkf-utf8/nkf.c: imported Revision 1.69
32874         * ext/nkf/nkf-utf8/utf8tbl.c: imported Revision 1.9
32876 Sat Jun 25 23:30:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32878         * process.c (detach_process_watcher): terminate process watcher
32879           thread right after rb_waitpid() succeed.  [ruby-talk:146430]
32881 Sat Jun 25 17:12:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32883         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_query): should
32884           discard if key=val pair is empty. patch from Gary Wright.
32886 Sat Jun 25 15:49:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32888         * enum.c (enum_min, enum_max, enum_min_by, enum_max_by): do not ignore
32889           nil as the first element.
32891 Sat Jun 25 15:13:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32893         * lib/set.rb (Set#==): [ruby-dev:25206] (ported from ruby_1_8 branch)
32895 Sat Jun 25 11:37:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32897         * ext/nkf/lib/kconv.rb: remove constants
32898           Iconv_Shift_JIS, Uconv_EUC_JP, Iconv_UTF8
32899         * ext/nkf/lib/kconv.rb: add module functions to Kconv
32900           conv, {eucjp, shiftjis, utf8}?, guess_as_symbol
32901         * ext/nkf/lib/kconv.rb: add instance methods to String
32902           conv, {eucjp, shiftjis, utf8}?
32903         * ext/nkf/lib/kconv.rb: add aliases Kconv.to_* and String#to_*
32905 Fri Jun 24 17:00:00 2005  Shigeo Kobayashi  <shigeo@tinyforest.jp>
32907         * ext/bigdecimal/bigdecimal.c: patch from "NATORI Shin"
32908           (u-tokyo.ac.jp) applied to fix rounding bug.
32910 Fri Jun 24 13:17:45 2005  akira yamada  <akira@ruby-lang.org>
32912         * lib/uri/common.rb, lib/uri/generic.rb: fixed typo in documents and
32913           replaced some existent domain name with "example.com".
32915 Fri Jun 24 12:23:19 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32917         * ext/tk/lib/tk.rb: fix typo on Tk.grid_propagate.
32919         * ext/tk/lib/tk.rb: Tk.event_generate and TkWindow#event_generate
32920           accept TkEvent::Event object as context argument.
32922         * ext/tk/lib/tk/event.rb: add TkEvent::Event#valid_fields and
32923           valid_for_generate to get field parameters of event_generate.
32925 Thu Jun 23 23:55:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32927         * runruby.rb: should load built rbconfig.rb.
32929 Thu Jun 23 16:53:15 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32931         * ext/tk/lib/tk/canvastag.rb: TkcGroup.new cannot include given items.
32932           TkcGroup#exclude calls wrong method.
32933           Add alias TkcGroup#add [ruby-talk:146049].
32935         * ext/tk/lib/tk/canvas.rb: TkCanvas#dtag and some subcommands of
32936           TkCanvas#addtag fail to treat a TkcTag argument.
32938         * ext/tk/lib/tk/event.rb: add TkEvent::Event#generate to help to send
32939           current event to other widgets.
32941 Mon Jun 20 18:44:04 2005  Tanaka Akira  <akr@m17n.org>
32943         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): DUMMY_SETJMP is replaced
32944           because setjmp is not enough to fix getcontext and SPARC register
32945           window problem.
32947 Mon Jun 20 17:15:51 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32949         * ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?
32951         * ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed?
32953         * ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed?
32955         * test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb
32956           (teardown): close all db objects before deleting data files.
32958         * win32/win32.{ch} (unlink): hook runtime function to change
32959           file attribute before unlinking.
32960           merge from 1.8, see [ruby-dev:26360]
32962 Mon Jun 20 02:15:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32964         * gc.c (define_final): document fix: finalizers never get called
32965           before target object is destroyed.
32967 Mon Jun 20 01:26:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32969         * ext/openssl/openssl_missing.c, ext/openssl/ossl.h,
32970           ext/openssl/ossl_asn1.c, ext/openssl/ossl_bio.c,
32971           ext/openssl/ossl_pkcs12.h, ext/openssl/ossl_x509req.c: avoid
32972           compiler warnings. suggested by Michal Rokos.
32974 Sun Jun 20 00:22:02 2005  Michael Neumann  <mneumann@ruby-lang.org>
32976         * lib/xmlrpc/utils.rb: Patch by Nobuhiro IMAI fixes the following
32977           problem: Default value modification on
32978           Module#public_instance_methods (false -> true) breaks
32979           s.add_handler(XMLRPC::iPIMethods("sample"), MyHandler.new) style
32980           security protection.
32982         * lib/xmlrpc/client.rb: Aliased XMLRPC::Client#new2 as
32983           XMLRPC::Client#new_from_uri, and #new3 as #new_from_hash.
32985 Sun Jun 19 14:09:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32987         * gc.c (run_final): reduce unnecessary object allocation during
32988           finalization.
32990         * gc.c (rb_gc_call_finalizer_at_exit): deferred finalizers list should
32991           be cleared before calling them.  fixed: [ruby-talk:145790]
32993 Sat Jun 18 01:15:36 2005  Shugo Maeda  <shugo@ruby-lang.org>
32995         * ext/readline/readline.c (readline_readline): do not set
32996           rl_{in,out}stream.
32998         * ext/readline/readline.c (readline_s_set_input): new method.
33000         * ext/readline/readline.c (readline_s_set_output): new method.
33002         * lib/irb/input-method.rb: set Readline.input and Readline.output.
33004 Fri Jun 17 13:01:40 2005  Tanaka Akira  <akr@m17n.org>
33006         * lib/time.rb (Time.parse): fix previous leap seconds support.
33007           (Time.rfc2822): ditto.
33008           (Time.xmlschema): ditto.
33010 Thu Jun 16 15:41:32 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33012         * ruby.c (load_file): '!' is already read. reported by gotoyuzo.
33014 Thu Jun 16 15:09:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33016         * ext/tk/tcltklib.c (ip_rb_threadVwaitCommand): Tcl_Release
33017           was missing.
33019 Thu Jun 16 13:34:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33021         * ext/tk/lib/tk.rb: add Tk.getMultiple{Open|Save}File() which return
33022           an Array of selected files.
33024 Thu Jun 16 12:53:24 2005  Tanaka Akira  <akr@m17n.org>
33026         * lib/time.rb (Time.parse): "Fri Jan  1 08:59:60 +0900 1999" was
33027           parsed as "Fri Jan 01 09:00:00 JST 1999" even on an environment
33028           which supports leap seconds.
33029           (Time.rfc2822): ditto.
33030           (Time.xmlschema): ditto.
33032 Thu Jun 16 00:13:41 2005  Tanaka Akira  <akr@m17n.org>
33034         * lib/resolv.rb (Resolv::DNS::Resource#ttl): new attribute.
33035           (Resolv::DNS::Resource#==): ignore @ttl.
33036           (Resolv::DNS::Resource#hash): ditto.
33037           (Resolv::DNS::Message::MessageDecoder#get_rr): save TTL in a
33038           Resource object.
33039           based on [ruby-core:5190] by Eric Hodel.
33041 Wed Jun 15 18:26:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33043         * ext/tk/lib/tk.rb: support "tk inactive" sub-command [for Tcl/Tk8.5a3]
33045         * ext/tk/lib/tk/namespace.rb: support "namespace path" sub-command and
33046           'namespace ensemble' sub-command [for Tcl/Tk8.5a3]
33048 Tue Jun 14 02:02:43 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33050         * ext/tk/tkutil/tkutil.c: add TkUtil::CallbackSubst.subst_arg(m, ...)
33051           & _define_attribute_aliases(hash) to get substitution-argument from
33052           attributes (e.g. subst_arg(:x,:y,:num,:button) --> "%x %y %b %b ").
33054         * ext/tk/lib/tk/event.rb: use _define_attribute_aliases().
33056 Mon Jun 13 13:03:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33058         * hash.c (ruby_setenv): fixed SEGV. [ruby-dev:26186]
33060 Mon Jun 13 01:54:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33062         * signal.c (sigexit): call rb_thread_signal_exit() instead of
33063           rb_exit().  [ruby-dev:26347]
33065         * eval.c (rb_thread_signal_exit): a new function to exit on main
33066           thread.
33068         * eval.c (rb_thread_switch): exit status should be retrieved from
33069           ruby_errinfo.
33071         * eval.c (rb_f_exit): ensure exit(0) should call
33072           exit(EXIT_SUCCESS).
33074 Mon Jun 13 01:20:02 2005  Tanaka Akira  <akr@m17n.org>
33076         * eval.c (rb_gc_mark_threads): curr_thread may not be part of the
33077           thread list.  [ruby-dev:26312]
33079 Sat Jun 11 22:34:44 2005  Minero Aoki  <aamine@loveruby.net>
33081         * parse.y: missing arg_paren event.  This patch is contributed by
33082           Mitchell N Charity.
33084 Fri Jun 10 23:55:17 2005  Tanaka Akira  <akr@m17n.org>
33086         * eval.c (unknown_node): show more information.  [ruby-dev:26196]
33088 Fri Jun 10 23:35:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33090         * missing/mkdir.c: remove. [ruby-core:05177]
33092 Fri Jun 10 22:54:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33094         * missing.h: fd_set stuffs need sys/types.h.  fixed: [ruby-core:05179]
33096 Thu Jun  9 23:58:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33098         * ext/Win32API/Win32API.c (Win32API_Call): disable global
33099           optimization. fixed: [ruby-core:05143]
33101 Thu Jun  9 23:35:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33103         * enum.c (enum_inject): default the result value to Qundef to use
33104           first element as initial value if not given.
33106 Thu Jun  9 19:55:41 2005  Tanaka Akira  <akr@m17n.org>
33108         * eval.c (ruby_longjmp): new macro to call longjmp, setcontext, etc.
33109           (ruby_setjmp): new macro to call setjmp, getcontext, etc.
33110           (ruby_setjmp): call setjmp before getcontext to avoid IA64 register
33111           stack problem.
33112           [ruby-talk:144939]
33114         * gc.c (Init_stack): remove IA64_MAGIC_STACK_LIMIT.
33116 Thu Jun  9 18:24:16 2005  Tanaka Akira  <akr@m17n.org>
33118         * configure.in, eval.c, gc.c: use libunwind only on HP-UX.
33119           [ruby-dev:26297]
33121 Thu Jun  9 14:46:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33123         * hash.c (env_aset): do not treat nil as key-removing value.
33124           [ruby-list:40865]
33126         * parse.y (method_call): allow aref expression ([]) to take a
33127           block.
33129         * parse.y (block_dup_check): a function to check duplication of
33130           a block argument and an actual block.
33132 Thu Jun  9 11:55:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33134         * lib/delegate.rb (SimpleDelegator::__setobj__): need check for
33135           recursive delegation.  [ruby-core:04940]
33137 Thu Jun  9 11:50:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33139         * lib/cgi.rb: add underscore aliases CGI::escape_html,
33140           CGI::unescape_html, CGI::escape_element, CGI::unescape_element.
33141           [ruby-core:05058]
33143 Wed Jun  8 18:47:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33145         * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift.
33147 Wed Jun  8 12:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33149         * array.c (rb_ary_nitems): add the block feature to Array#nitems.
33150           suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
33151           [ruby-talk:134083].
33153 Wed Jun  8 11:11:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33155         * bignum.c (get2comp): revert all prior changes, and calculate
33156           proper 2's complement for negative numbers.
33158 Wed Jun  8 08:33:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33160         * enum.c (enum_min_by, enum_max_by): return nil if no iteration.
33161           fixed: [ruby-dev:26245]
33163         * eval.c (rb_need_block): ensure a block is given.
33165         * eval.c (backtrace): skip successive frames sharing same node.
33167 Wed Jun  8 01:27:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33169         * bignum.c (bignorm): fixed a bug in normalizing negative numbers
33170           reported from Honda Hiroki <hhonda@ipflex.com>.  normalizing
33171           should not trim leading zeros from negative numbers.
33173         * bignum.c (rb_cstr_to_inum): must remove leading zeros for this
33174           case.
33176 Wed Jun  8 00:15:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33178         * ext/socket/socket.c (ruby_getaddrinfo__aix): merged a patch from
33179           KUBO Takehiro <kubo at jiubao.org> to support AIX.  [ruby-list:40832]
33181 Wed Jun  8 00:09:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33183         * lib/yaml/rubytypes.rb (Array::to_yaml): merged a patch from
33184           Tilman Sauerbeck <tilman at code-monkey.de>.  [ruby-core:05055]
33186         * lib/yaml/rubytypes.rb (Hash::to_yaml): ditto.
33188 Wed Jun  8 00:00:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33190         * ext/curses/curses.c (curses_insertln): merged a patch from
33191           TAKAHASHI Tamotsu <ttakah at lapis.plala.or.jp>.  [ruby-ext:02305]
33193 Tue Jun  7 19:34:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33195         * lib/irb/init.rb (IRB::IRB.rc_file_generators): more flexible
33196           IRB.rc_file_generators.  [ruby-core:05163]
33198 Tue Jun  7 18:39:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33200         * lib/thread.rb: RDoc documentation from Eric Hodel
33201           <drbrain@segment7.net> added.  [ruby-core:05148]
33203 Tue Jun  7 18:30:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33205         * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file.
33206           fixed: [ruby-dev:26294]
33208 Tue Jun  7 17:20:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33210         * parse.y (parser_yylex): allow ';;' to be block terminator in
33211           place of 'end'.  [highly experimental]
33213         * misc/ruby-mode.el (ruby-block-end-re): allow ';;' to be a
33214           negative indent trigger.  [highly experimental]
33216         * parse.y (parser_yylex): small error fixed.
33218 Tue Jun  7 16:45:49 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33220         * parse.y (parser_yylex): "respond_to?:foo" should be interpreted
33221           as "respond_to? :foo" at the command level.  [ruby-talk:144303]
33223 Tue Jun  7 16:32:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33225         * sprintf.c (rb_f_sprintf): raise exception on debug mode (-d),
33226           not verbose mode (-v/-w).  [ruby-core:05123]
33228         * sprintf.c (rb_f_sprintf): warn always on verbose mode.
33230 Tue Jun  7 10:30:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33232         * ext/tk/lib/multi-tk.rb: slave-ip fails to call procedures
33233           delegated by master-ip.
33235 Mon Jun  6 16:35:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33237         * ext/ripper/depend: add .y to .SUFFIXES for nmake.
33239 Sun Jun  5 23:00:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33241         * ext/tk/lib/tk/console.rb: create console when required
33243         * ext/tk/sample/tkextlib/tile/demo.rb: fix TypeError & create Console
33245 Sun Jun  5 10:23:52 2005  Tanaka Akira  <akr@m17n.org>
33247         * signal.c (ruby_signal): don't set SA_RESTART.
33248           [ruby-dev:26276]
33250 Sat Jun  4 14:55:18 2005  Tanaka Akira  <akr@m17n.org>
33252         * test/dbm/test_dbm.rb: merged from ext/dbm/testdbm.rb.
33254         * test/gdbm/test_gdbm.rb: merged from ext/gdbm/testgdbm.rb.
33256         * test/sdbm/test_sdbm.rb: renamed from ext/sdbm/testsdbm.rb with
33257           modification to use test/unit.
33259 Fri Jun  3 23:23:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33261         * intern.h (rb_fdset_t): deal with fd bit sets over FD_SETSIZE.
33262           fixed: [ruby-dev:26187]
33264         * eval.c (rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr,
33265           rb_fd_isset, rb_fd_copy): ditto.
33267         * io.c (rb_io_wait_readable, rb_io_wait_writable, rb_f_select): ditto.
33269         * ext/io/wait/wait.c (io_wait): ditto.
33271         * ext/socket/socket.c (wait_connectable, unix_recv_io): ditto.
33273 Fri Jun  3 14:06:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33275         * ext/tk/lib/multi-tk.rb: fix typo.
33277 Thu Jun  2 23:42:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33279         * parse.y: pragma support on ripper.  [ruby-dev:26266]
33281 Thu Jun  2 00:02:16 2005  Minero Aoki  <aamine@loveruby.net>
33283         * struct.c: accessing >10 member caused segmentation fault.
33284           [ruby-dev:26247]
33286         * test/ruby/test_struct.rb: test it.
33288 Wed Jun  1 11:30:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33290         * bcc32/Makefile.sub: can use single quote character in DESTDIR.
33291           [ruby-dev:26205]
33293         * bcc32/Makefile.sub: Dir.glob in 1.9 doesn't treat \ as path separator.
33294           [ruby-dev:26254]
33296 Wed Jun  1 00:11:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33298         * parse.y (method_call): new experiment: "(expr)(args...)" to
33299           invoke "expr.call(args...)".  [EXPERIMENTAL]
33301 Tue May 31 23:43:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33303         * parse.y (command): revert implicit "call" for local variables.
33305 Tue May 31 15:52:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33307         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should
33308           break the loop if the socket reached to EOF. [ruby-talk:142285]
33310         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): send response
33311           without reading the whole request body if keep-alive is diabled.
33312           [experimental]
33314 Mon May 30 23:48:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33316         * ext/tk/lib/tk/macpkg.rb: add PACKAGE_NAME information of Tcl/Tk
33317           Extension.
33319         * ext/tk/lib/tk/msgcat.rb: ditto.
33321         * ext/tk/lib/tk/winpkg.rb: ditto.
33323         * ext/tk/lib/tkextlib/*: ditto.
33325 Sat May 28 16:39:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33327         * test/openssl/test_x509store.rb: add test for expired CRL
33328           and refine some assertions.
33330 Sat May 28 05:15:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33332         * ext/openssl/ossl_x509store.c (ossl_x509stctx_set_time): should
33333           not set internal flag directry.
33335 Sat May 28 02:00:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33337         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
33338           ENV["REQUEST_URI"] is better to get correct Request-URI
33339           than ENV["SCRIPT_NAME"] + ENV["PATH_INFO"].  [ruby-dev:26235]
33341 Fri May 27 16:32:04 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
33343         * lib/mkmf.rb: use the semicolon as the path separator
33344           in the environment of MSYS.  fixed: [ruby-dev:26232]
33346 Thu May 26 20:31:21 2005  Minero Aoki  <aamine@loveruby.net>
33348         * lib/fileutils.rb (remove_entry_secure): add documentation.
33350         * lib/fileutils.rb (remove_entry_secure): should not invoke
33351           unlink(2) against a directory.
33353 Thu May 26 08:29:19 2005  Akiyoshi, Masamichi  <akiyoshi@hp.com>
33355         * vms/vmsruby_private.c, vms/vmsruby_private.h: private routines
33356           for VMS port are added.
33358         * eval.c (ruby_init): change to call VMS private intialization routine.
33360 Thu May 26 07:39:07 2005  Minero Aoki  <aamine@loveruby.net>
33362         * lib/fileutils.rb (rm_r): use lchown(2), not chown(2).
33363           [ruby-dev:26226]
33365         * lib/fileutils.rb (cd): remove :noop option. (feature change)
33367         * lib/fileutils.rb (cp_r): should copy symlink as symlink, for
33368           also tree root. (feature change)
33370         * lib/fileutils.rb (cp_r): new option :dereference_root.
33372         * lib/fileutils.rb: new method remove_entry.
33374         * lib/fileutils.rb: new method remove_entry_secure.
33376         * lib/fileutils.rb: add documentation.
33378 Thu May 26 06:08:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33380         * ext/tk/lib/tk.rb: add shortcut-methods of tk_call + tk_split_list
33382 Wed May 25 20:06:27 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33384         * ext/tk/lib/tk.rb: TkComm#tk_split_*list fail to split a kind of SJIS
33385           strings. To avoid the trouble, add arguments to control converting
33386           encoding, and do split on a UTF8 string.
33388         * ext/tk/lib/multi-tk.rb: modify to attend encoding.
33390         * ext/tk/lib/remote-tk.rb: ditto.
33392         * ext/tk/lib/tk/itemconfig.rb: ditto.
33394         * ext/tk/lib/tk/listbox.rb: ditto.
33396         * ext/tk/lib/tk/namespace.rb: ditto.
33398         * ext/tk/lib/tk/panedwindow.rb: ditto.
33400         * ext/tk/lib/tk/text.rb: ditto.
33402         * ext/tk/lib/tk/textmark.rb: ditto.
33404         * ext/tk/lib/tk/texttag.rb: ditto.
33406         * ext/tk/lib/tk/variable.rb: ditto.
33408         * ext/tk/lib/tk/winfo.rb: ditto.
33410         * ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb: ditto.
33412         * ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: ditto.
33414         * ext/tk/lib/tk.rb: add TkWindow#lower_window/raise_window and
33415           Tk#lower_window/raise_window by reason of method-name conflict
33417         * ext/tk/lib/tk/canvas.rb: bug fix on TkCanvas#delete when given
33418           non-TkcItem arguments.
33420         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.
33422 Wed May 25 19:48:12 2005  Minero Aoki  <aamine@loveruby.net>
33424         * lib/fileutils.rb (rm_r): does chown(2). [ruby-dev:26199]
33426 Wed May 25 12:59:48 2005  Tanaka Akira  <akr@m17n.org>
33428         * lib/open-uri.rb (OpenURI::Meta::RE_QUOTED_STRING): a content of
33429           quoted-string should be zero or more characters.
33431 Tue May 24 23:42:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33433         * numeric.c (fix_pow): support Fixnum ** Float case directly
33434           without coercing.  [ruby-talk:142697] [ruby-talk:143054]
33436 Tue May 24 16:57:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33438         * ruby.c (require_libraries): caused SEGV when continuation jumped
33439           in to the required library code.
33441 Tue May 24 17:45:59 2005  Shugo Maeda  <shugo@ruby-lang.org>
33443         * test/readline/test_readline.rb: do not test libedit.
33444           fixed: [ruby-dev:26217]
33446 Tue May 24 06:45:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33448         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): string
33449           literals to be matched non-greedy.
33451 Tue May 24 00:39:14 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33453         * test/soap/calc: method name 'set' was able to crash with a class Set.
33454           [ruby-dev:26210]
33456         * test/wsdl/document/test_rpc.rb: dateTime comparison failed under
33457           TZ=right/Asia/Tokyo (with leap second.) [ruby-dev:26208]
33459 Mon May 23 16:23:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33461         * ext/tk/extconf.rb: Framework support on MacOS X Tiger.
33463         * ext/tk/README.tcltklib: add description of Framework support options.
33465 Mon May 23 15:07:34 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33467         * win32/Makefile.sub ($(PROGRAM)): add dependency on $(LIBRUBY_SO).
33468           [experimental]
33470 Mon May 23 12:21:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33472         * re.c (make_regexp): should not return junk address during
33473           compile time.  [ruby-dev:26206]
33475 Sun May 22 21:54:06 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33477         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.4.
33479           == SOAP client and server ==
33481           === for both client side and server side ===
33483           * improved document/literal service support.
33484             style(rpc,document)/use(encoding, literal) combination are all
33485             supported.  for the detail about combination, see
33486             test/soap/test_style.rb.
33488           * let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to
33489             WSDL as well as obj2soap.  closes #70.
33491           * let SOAP::Mapping::Object handle XML attribute for doc/lit service.
33492             you can set/get XML attribute via accessor methods which as a name
33493             'xmlattr_' prefixed (<foo name="bar"/> -> Foo#xmlattr_name).
33495           === client side ===
33497           * WSDLDriver capitalized name operation bug fixed.  from
33498             1.5.3-ruby1.8.2, operation which has capitalized name (such as
33499             KeywordSearchRequest in AWS) is defined as a method having
33500             uncapitalized name. (converted with GenSupport.safemethodname
33501             to handle operation name 'foo-bar').  it introduced serious
33502             incompatibility; in the past, it was defined as a capitalized.
33503             define capitalized method as well under that circumstance.
33505           * added new factory interface 'WSDLDriverFactory#create_rpc_driver'
33506             to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver
33507             are merged).  'WSDLDriverFactory#create_driver' still creates
33508             WSDLDriver for compatibility but it warns that the method is
33509             deprecated.  please use create_rpc_driver instead of create_driver.
33511           * allow to use an URI object as an endpoint_url even with net/http,
33512             not http-access2.
33514           === server side ===
33516           * added mod_ruby support to SOAP::CGIStub.  rename a CGI script
33517             server.cgi to server.rb and let mod_ruby's RubyHandler handles the
33518             script.  CGIStub detects if it's running under mod_ruby environment
33519             or not.
33521           * added fcgi support to SOAP::CGIStub.  see the sample at
33522             sample/soap/calc/server.fcgi.  (almost same as server.cgi but has
33523             fcgi handler at the bottom.)
33525           * allow to return a SOAPFault object to respond customized SOAP fault.
33527           * added the interface 'generate_explicit_type' for server side
33528             (CGIStub, HTTPServer).  call 'self.generate_explicit_type = true'
33529             if you want to return simplified XML even if it's rpc/encoded
33530             service.
33532           == WSDL ==
33534           === WSDL definition ===
33536           * improved XML Schema support such as extension, restriction,
33537             simpleType, complexType + simpleContent, ref, length, import,
33538             include.
33540           * reduced "unknown element/attribute" warnings (warn only 1 time for
33541             each QName).
33543           * importing XSD file at schemaLocation with xsd:import.
33545           === code generation from WSDL ===
33547           * generator crashed when there's '-' in defined element/attribute
33548             name.
33550           * added ApacheMap WSDL definition.
33552         * sample/{soap,wsdl}: removed.
33554 Sun May 22 19:11:35 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33556         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#intialize):
33557           should initialize session id context. [ruby-core:4663]
33559         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): add session id support.
33561 Sun May 22 12:30:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33563         * intern.h, parse.y (ruby_pragma): removed.  fixed: [ruby-dev:26198]
33565         * parse.y (parser_pragma): pragma name was ignored.
33567 Sun May 22 02:39:57 2005  Minero Aoki  <aamine@loveruby.net>
33569         * lib/fileutils.rb (rm_r): new option :secure to avoid
33570           time-to-check-to-time-to-use security problem.  [ruby-dev:26100]
33572         * lib/fileutils.rb (remove_file, remove_dir): try chmod(700) only
33573           on Windows.
33575         * lib/fileutils.rb: does not depend on find.rb.
33577         * lib/fileutils.rb: new method chmod_R.
33579         * lib/fileutils.rb (chown_R): did not work.
33581 Sat May 21 10:23:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33583         * bcc32/Makefile.sub: tds files were not deleted when DESTDIR
33584           included '\' path delimiter. [ruby-dev:26193]
33586 Fri May 20 15:52:18 2005  Shugo Maeda  <shugo@ruby-lang.org>
33588         * ext/readline/readline.c (readline_attempted_completion_function):
33589           return 2 items if completion_proc returns only 1 item (for libedit).
33591 Fri May 20 01:24:33 2005  Shugo Maeda  <shugo@ruby-lang.org>
33593         * ext/readline/extconf.rb: check rl_vi_editing_mode() and
33594           rl_emacs_editing_mode().
33596 Thu May 19 23:33:09 2005  Shugo Maeda  <shugo@ruby-lang.org>
33598         * ext/readline/readline.c: supported libedit. fixed: [ruby-core:4858]
33600         * ext/readline/extconf.rb: added new option --enable-libedit.
33602         * test/readline/test_readline.rb: added assertions for
33603           Readline::HISTORY.
33605         * lib/irb/input-method.rb: do not use Readline::HISTORY.pop.
33607 Wed May 18 23:42:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33609         * error.c (exc_exception): reverted to call Exception#initialize
33610           directly.  fixed: [ruby-dev:26177]
33612 Wed May 18 17:38:51 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
33614         * dir.c (glob_helper): check whether path is "" before calling
33615           do_opendir.  [ruby-dev:26183]
33617 Wed May 18 13:40:48 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33619         * win32/win32.c (NtInitialize): fix typo.
33621 Wed May 18 11:07:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33623         * dir.c (glob_helper): get rid of using String.  [ruby-dev:26180]
33625         * eval.c (ruby_options), win32/win32.c (NtInitialize): move argument
33626           intialization back.  [ruby-dev:26180]
33628 Tue May 17 11:49:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33630         * win32/win32.c (unixtime_to_filetime): use localtime() instead of
33631           gmtime() when using FileLocalTimeToFileTime().
33633 Mon May 16 22:42:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33635         * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t
33636           to get rid of redefinition warnings on mingw.
33638         * class.c (rb_class_init_copy): singleton class is disallowed to copy,
33639           from its definition.  fixed: [ruby-talk:142749]
33641         * parse.y (pragma_encoding): add prototype to suppress false warning
33642           by VC.
33644         * process.c (proc_spawn_v): use rb_w32_aspawn on Win32.
33646 Mon May 16 03:29:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33648         * win32/win32.{h,c}: define rb_[pgu]id_t.
33650 Mon May 16 00:21:02 2005  Tanaka Akira  <akr@m17n.org>
33652         * lib/pathname.rb (Pathname#unlink): use SystemCallError instead of
33653           Errno::EISDIR because EISDIR is not portable.
33654           [ruby-core:5001]
33656 Sun May 15 22:28:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
33658         * lib/drb/drb.rb (DRbObject#method_missing): use raise(exception).
33659           [ruby-dev:26164]
33661 Sun May 15 18:56:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33663         * configure.in, ruby.h: define rb_[pgu]id_t macros instead of typedefs
33664           to get rid of types which might not be defined yet.  [ruby-dev:26165]
33666 Sun May 15 14:35:46 2005  Tanaka Akira  <akr@m17n.org>
33668         * lib/pathname.rb (Pathname#unlink): unlink a symlink to a directory
33669           was failed.  [ruby-core:4992]
33671 Sun May 15 09:57:30 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33673         * win32/win32.c (unixtime_to_filetime): deal with DST.
33674           [ruby-talk:141817]
33676 Sat May 14 23:59:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33678         * error.c (exc_exception, {exit,name_err,syserr}_initialize): call
33679           Execption#initialize.  fixed: [ruby-talk:142593]
33681 Sat May 14 23:56:41 2005  Erik Huelsmann  <ehuels@gmail.com>
33683         * configure.in: Check for the availability of pid_t, gid_t and uid_t and
33684           remove AC_TYPE_UID_T.  fixed: [ruby-core:04745]
33686         * defines.h: Remove pid_t typedef.
33688         * ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with
33689          the available system types.
33691         * process.c: Change instances of pid_t and gid_t to their rb_*
33692          counterparts.
33694         * ext/pty/pty.c: Change pid_t to rb_pid_t.
33696         * vms/config.h: Define HAVE_{P,G,U}ID_T to 1.
33698         * win32/Makefile.sub: Remove #define for {g,u}id_t.
33700         * win32/win32.c: Change pid_t to rb_pid_t.
33702         * wince/Makefile.sub: Remove #define for {g,u}id_t.
33704         * wince/sys/types.h: Remove definitions of {p,g,u}id_t.
33706 Sat May 14 11:47:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33708         * intern.h (ruby_pragma): prototype.  [ruby-core:04881]
33710         * parse.y (parser_pragma): parse Emacsen hack.
33712         * parse.y (parser_prepare): deal with specific syntax at the top.
33714         * ruby.c (load_file): read the first line iff it started with shebang.
33716 Fri May 13 23:44:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33718         * ext/extmk.rb: keep srcdir unexpanded.
33720         * lib/mkmf.rb (create_makefile): quote topdir and hdrdir if necessary.
33721           fixed: [ruby-core:04932]
33723         * lib/mkmf.rb (configuration), {bcc32,win32,wince}/Makefile.sub: make
33724           also INSTALL_PROG and INSTALL_DATA system dependent.
33725           fixed: [ruby-core:04931]
33727 Fri May 13 23:32:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33729         * eval.c (unknown_node): add volatile directive to prototype.
33731 Fri May 13 17:50:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33733         * variable.c (generic_ivar_get): rb_attr_get should not warn.
33734           [ruby-dev:26010]
33736 Thu May 12 17:41:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33738         * ext/nkf/nkf-utf8/nkf.c: follow nkf 2.0.5
33740 Thu May 12 16:50:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33742         * lib/rdoc/parsers/parse_c.rb: more readability for mixing
33743           progress "c..." and warning message.
33745 Thu May 12 15:50:56 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
33747         * lib/rdoc/parsers/parse_c.rb: show parsing progress for C files.
33748           [ruby-core:4341]
33750 Thu May 12 09:53:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33752         * version.c (ruby_show_version): flush for non-tty stdout.
33754 Thu May 12 01:23:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33756         * eval.c (unknown_node): ignore broken NODE to get rid of accessing
33757           possibly inaccessible address.  fixed: [ruby-dev:26122]
33758           should emit more useful information like [ruby-dev:26126], though.
33760 Wed May 11 15:58:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33762         * eval.c (break_jump): break should not cross functions.
33763           [ruby-list:40818]
33765 Wed May 11 10:41:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33767         * lib/tempfile.rb (Tempfile#unlink): fixed typo.
33769 Wed May 11 01:03:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33771         * eval.c (TMP_ALLOC): use macro NEW_NODE() to get rid of warnings on
33772           platforms which have no alloca().  fixed: [ruby-talk:141301]
33774 Sun May  8 23:17:47 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33776         * ext/tk/lib/tk/timer.rb: fix typo.
33778 Sun May  8 21:00:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33780         * hash.c (Init_Hash): remove custom "hash" and "eql?".
33781           (ported from 1.8) [ruby-dev:26132]
33783 Sun May  8 16:50:25 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33785         * lib/profiler.rb: fixed "undefined method `[]' for nil:NilClass"
33786           [ruby-core:4775] [ruby-talk:140401] [ruby-dev:26118]
33788 Sat May  7 22:58:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33790         * lib/mkmf.rb (have_var): no libs argument is given.
33792 Fri May  6 08:08:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33794         * hash.c:rb_hash_hash_i() should be static.  [ruby-core:04815]
33796         * re.c should include regint.h for declarations of oniguruma
33797           functions.  [ruby-core:04815]
33799 Sun May  1 09:15:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33801         * ruby.c (process_sflag): replace '-' in variable names with '_'.
33802           [ruby-dev:26107]
33804         * eval.c (rb_eval), parse.y (arg): reduce fixnum range literal at
33805           parser.  fixed: [ruby-dev:26113]
33807 Sat Apr 30 11:59:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33809         * configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.
33810           [ruby-dev:26109]
33812         * eval.c, gc.c: moved noinline to configure.in.
33814         * rubyio.h (DEPRECATED): moved to configure.in.
33816         * ruby.h (DEPRECATED, NOINLINE): default definition.
33818         * win{32,ce}/Makefile.sub (config.h): deprecated and noinline for
33819           __declspec() are available for VC++7 or later.
33821 Sat Apr 30 06:57:39 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33823         * lib/webrick/cgi.rb: new methods WEBrick::CGI#[], WEBrick::CGI#logger
33824           and WEBrick::CGI#config.  these are necessary to use an instance of
33825           WEBrick::CGI as the first argument of HTTPServlet#get_instance.
33826           (suggested by Tatsuki Sugiura)
33828         * lib/webrick/cgi.rb
33829           (WEBrick::CGI#initalize): set a dummy to @config[:ServerSoftware]
33830           if SERVER_SOFTWARE environment variable is not given.
33831           (WEBrick::CGI#start): req.path_info must be a String.
33832           (WEBrick::CGI::Socket#request_line): treat REQUEST_METHOD, PATH_INFO
33833           and SCRIPT_NAME to run in console.
33835         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape_path): should
33836           not use String#split("/"). it removes trailing empty path component.
33838 Thu Apr 28 08:21:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33840         * ruby.c (set_arg0): use also environment variable space for setting
33841           $0.  [ruby-core:04774]
33843 Wed Apr 27 23:42:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33845         * win32/Makefile.sub (OPTFLAGS): default global optimization to
33846           disabled only for VC++6.
33848 Tue Apr 26 22:58:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33850         * ext/tk/tcltklib.c (ip_invoke_core): call Tcl's "::unknown"
33851           command when can't get information of target command.
33853 Mon Apr 25 13:54:55 2005  speakillof  <speakillof@yahoo.co.jp>
33855         * lib/rexml/encodings/SHIFT-JIS.rb: encoding and decoding were
33856           swapped. [ruby-core:4772]
33858 Mon Apr 25 01:18:43 2005  Tanaka Akira  <akr@m17n.org>
33860         * oniguruma.h (OnigWarnFunc): add a variadic argument.
33861           [ruby-core:4751]
33863 Sat Apr 23 19:49:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33865         * ext/tk/tcltklib.c (ip_RubyExitCommand): exit with status code
33866           via TclTkIp#_eval didn't work. [ruby-talk:139390]
33868 Sat Apr 23 11:45:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33870         * eval.c (rb_provided): should check also path name to be loaded.
33871           fixed: [ruby-dev:26093]
33873 Fri Apr 22 16:55:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33875         * ext/tk/tcltklib.c (ip_set_exc_message): fixed memory leak.
33877         * ext/tk/tcltklib.c: eTkCallbackReturn was not initialized.
33879 Thu Apr 21 06:45:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33881         * ruby.c (ruby_incpush_expand, proc_options): expand relative path
33882           given with -I option.  [ruby-dev:26090]
33884         * configure.in, lib/mkmf.rb, {bcc32,win32,wince}/Makefile.sub: improve
33885           C++ support.  [ruby-dev:26089]
33887 Thu Apr 21 01:53:09 2005  Minero Aoki  <aamine@loveruby.net>
33889         * lib/net/http.rb: add rdoc.
33891 Thu Apr 21 00:07:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33893         * lib/mkmf.rb (create_makefile): support platforms have file separator
33894           other than /.
33896         * {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
33897           of building platform.
33899         * {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.
33901 Wed Apr 20 23:22:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33903         * Makefile.in, common.mk: miniruby depends on MINIOBJS.
33905         * dmydln.c (dln_load): dummy function to raise LoadError.
33907         * cygwin/GNUmakefile.in, {bcc32,win32,wince}/Makefile.sub: miniruby
33908           can't load extensions on Windows.
33910 Wed Apr 20 23:01:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33912         * win32/ifchange.bat: delete testing files.
33914 Wed Apr 20 22:54:54 2005  Minero Aoki  <aamine@loveruby.net>
33916         * lib/net/http.rb: new method Net::HTTP.post_form.
33918         * lib/net/http.rb: new method Net::HTTPHeader#set_form_data and
33919           its alias #form_data=.
33921         * lib/net/http.rb: Net::HTTPHeader#add_header -> add_field
33922           (adjustted to Ruby 1.8).
33924 Wed Apr 20 10:53:30 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
33926         * lib/rdoc/parsers/parse_rb.rb (lex_init): use IRB module.
33927           [ruby-core:04737]
33929 Wed Apr 20 07:27:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33931         * {bcc32,win32,wince}/configure.bat, {bcc32,win32,wince}/setup.mak:
33932           add extout option.
33934         * bcc32/setup.mak: make configuration variables overridable.
33936 Tue Apr 19 23:37:09 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
33938         * lib/ftools.rb (File.safe_unlink): do not modify a symlinked file.
33940 Tue Apr 19 23:02:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33942         * eval.c (search_required): deal with features with path too.
33944         * intern.h (rb_file_expand_path): prototype.  fixed: [ruby-dev:26082]
33946 Tue Apr 19 08:38:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33948         * eval.c (search_required, rb_require_safe): expand path in
33949           rb_features.  [ruby-dev:26079]
33951         * file.c (rb_find_file_ext): return absolute path.
33953         * ext/extmk.rb: expand path for ext/**/extconf.rb.
33955         * eval.c (search_required): handle static linked extensions.
33957 Mon Apr 18 15:37:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33959         * eval.c (rb_attr): attribute name check added.
33961         * numeric.c (flo_plus): small typo fix.
33963 Mon Apr 18 11:25:14 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33965         * ext/zlib/zlib.c (zstream_run): fixed SEGV. [ruby-core:4712]
33967 Sun Apr 17 23:57:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33969         * ext/extmk.rb (extmake, parse_args): do not expand destdir.
33971         * ext/extmk.rb (relative_from): treat mere drive letter as an absolute
33972           path.
33974 Sat Apr 16 17:01:16 2005  Kouhei Sutou  <kou@cozmixng.org>
33976         * sample/rss/tdiary_plugin/rss-recent.rb (rss_recent_cache_rss):
33977           use the first date information of items as site date information
33978           if channel doesn't have date information.
33980 Sat Apr 16 15:27:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33982         * configure.in (RUBY_PROG_INSTALL): not add -p option to INSTALL.
33983           files need timestamps to be kept are only ar-archive on a few
33984           platforms, and be installed by instruby.rb but not INSTALL.
33985           fixed: [ruby-core:04721]
33987         * mkconfig.rb: purge autoconf value variables.
33989 Sat Apr 16 10:33:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33991         * bcc32/Makefile.sub: quick hack... prepend DESTDIR.
33992           still have restriction on DESTDIR ("", "/", "e:")
33994 Sat Apr 16 03:59:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33996         * ext/openssl/extconf.rb: check for OPENSSL_cleanse.
33998         * ext/openssl/openssl_missing.h: ditto.
34000 Fri Apr 15 22:40:19 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34002         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE.codepage=
34004         * ext/win32ole/tests/testOLETYPELIB.rb: correct expected message.
34006 Fri Apr 15 22:04:07 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34008         * ext/win32ole/win32ole.c(ole_invoke): retry after converting Qnil
34009           to VT_EMPTY.
34011 Thu Apr 14 19:05:06 2005  Minero Aoki  <aamine@loveruby.net>
34013         * parse.y [ripper] (regexp): dispatch regexp option.
34014           [ruby-Bugs:1688]
34016         * ext/ripper/lib/core.rb: regenerated (interface changed).
34018 Thu Apr 14 18:59:43 2005  Minero Aoki  <aamine@loveruby.net>
34020         * lib/fileutils.rb (remove_file): ignore exceptions caused by
34021           chmod.
34023         * lib/fileutils.rb (remove_dir): try to get rights to rmdir.
34024           [ruby-Bugs:1502]
34026 Thu Apr 14 18:51:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34028         * lib/irb/ruby-lex.rb, lib/irb/slex.rb: bug fix of [ruby-Bugs-1745]
34030         * lib/irb/ext/loader.rb, lib/irb/ext/save-history.rb:
34031           fix location of @RCS_ID
34033         * lib/irb/cmd/help.rb: a lost of release IRB 0.9.5.
34035 Thu Apr 14 15:10:30 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34037         * lib/irb/notifier.rb, lib/irb/output-method.rb, lib/irb/ext/history.rb
34038           fixed warning of 'ruby -w'
34040 Thu Apr 14 05:35:45 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34042         * doc/irb/irb.rd.ja: a lost  of release IRB 0.9.5.
34044         * lib/irb/slex.rb: bug fix by [ruby-core:04707].
34046 Thu Apr 14 00:20:31 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34048         * bin/irb lib/irb.rb lib/irb/...: IRB 0.9.5.
34050 Wed Apr 13 23:40:21 2005  Kouhei Sutou  <kou@cozmixng.org>
34052         * lib/rss/rss.rb (RSS::VERSION): 0.1.3 -> 0.1.4.
34054         * lib/rss/rss.rb (RSS::Element#converter): fixed converter
34055           transmission bug.
34057 Wed Apr 13 22:12:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34059         * lib/optparse.rb (OptionParser#order!): call handlers iff matches
34060           non-switch.
34062 Wed Apr 13 21:20:35 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34064         * configure.in (mingw32): extract msvcr*.dll from objdump result.
34066 Wed Apr 13 19:25:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34068         * configure.in (mingw32): use actual runtime DLL name as ruby DLL
34069           name and default load path.
34071         * win32/Makefile.sub, win32/setup.mak: ditto.
34073 Tue Apr 12 19:30:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34075         * lib/optparse.rb (OptionParser#make_switch, OptionParser#order!):
34076           added non-option and end-of-args handler.  [ruby-talk:136878]
34077           [EXPERIMENTAL]
34079 Tue Apr 12 15:33:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34081         * ext/tk/tcltklib.c (ip_finalize): better modification than the
34082           previous commit [ruby-dev:26029].
34084 Tue Apr 12 12:38:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34086         * ext/tk/tcltklib.c (ip_finalize): fix SEGV when Tcl_GlobalEval()
34087           modifies the argument string to eval.
34089 Tue Apr 12 02:21:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34091         * ext/tk/tcltklib.c (ip_finalize): add existence check of
34092           Tcl commands before calling Tcl_GlobalEval().
34094 Mon Apr 11 23:36:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34096         * lib/drb/drb.rb: [druby-ja:123] fix: When reference of my object is
34097           loaded, the object is tainted.
34099         * test/drb/test_drb.rb: ditto.
34101 Mon Apr 11 22:18:23 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34103         * dir.c, file.c (lstat): avoid warnings for mingw.
34105 Mon Apr 11 20:11:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34107         * ext/tk/tcltklib.c (ip_finalize): adhoc patch to avoid SEGV when exit
34108           on Tcl/Tk8.3.x.
34110 Mon Apr 11 15:24:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34112         * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
34114 Sat Apr  9 18:20:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34116         * ext/tk/lib/tk/image.rb: support to create TkImage object without
34117           creating a new image object on Tk.
34119         * ext/tk/lib/tk/menu.rb: use TkCommandNames on create_self()
34121         * ext/tk/lib/tk/root.rb: TkRoot.to_eval() returns '.'.
34123         * ext/tk/lib/tk/text.rb: add methods to create a TkText::IndexString
34124           from (x, y) coords.
34126         * ext/tk/lib/tkextlib/tile/: add demo and update support status.
34128 Sat Apr  9 14:42:29 2005  Kouhei Sutou  <kou@cozmixng.org>
34130         * sample/rss/tdiary_plugin/rss-recent.rb: supported configuration
34131           via Web browser.
34133 Fri Apr  8 20:17:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34135         * ext/extmk.rb (extmake): hdrdir needs to be defined also in
34136           Config::CONFIG.
34138         * lib/mkmf.rb (configuration, create_makefile): get rid of recursive
34139           macro reference.
34141 Fri Apr  8 01:55:20 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34143         * ext/tk/sample/demos-{en,jp}/goldberg.rb: reduced window size.
34144           [ruby-dev:25992]
34146 Thu Apr  7 23:58:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34148         * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
34150         * lib/mkmf.rb (configuration, create_makefile): ditto.
34152         * lib/mkmf.rb (CXX_EXT): separate C++ extensions.
34154 Thu Apr  7 17:24:17 2005  Shugo Maeda  <shugo@ruby-lang.org>
34156         * eval.c (rb_call0): "return" event hook should be always executed
34157           if event_hooks is set.
34159 Thu Apr  7 14:33:09 2005  Kouhei Sutou  <kou@cozmixng.org>
34161         * test/rss/test_maker_dc.rb (test_date): added a test for #date=
34162           and #dc_date=.
34164 Thu Apr  7 11:49:53 2005  Kouhei Sutou  <kou@cozmixng.org>
34166         * lib/rss/maker/dublincore.rb: _really_ supported multiple Dublin
34167           Core items.
34169         * test/rss/rss-assertions.rb (assert_multiple_dublin_core): added
34170           an assertion for testing multiple Dublin Core items.
34172         * test/rss/test_maker_dc.rb (test_rss10_multiple): added a test
34173           for making multiple Dublin Core items.
34175 Wed Apr  6 16:06:30 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34177         * test/ruby/test_env.rb (test_key): should test ENV.key instead of
34178           ENV.index. [ruby-dev:25994]
34180 Tue Apr  5 16:01:12 2005  Kouhei Sutou  <kou@cozmixng.org>
34182         * lib/rss/*: refactored.
34183           - gave a name to 'x'.
34184           - undef_method -> remove_method for avoiding a warning in ruby 1.6.
34186 Tue Apr  5 15:45:33 2005  Kouhei Sutou  <kou@cozmixng.org>
34188         * sample/rss/tdiary_plugin/rss-recent.rb:
34189           new option: @options['rss-recent.use-image-link']:
34190           use image as link instread of text if available.
34192         * sample/rss/tdiary_plugin/rss-recent.rb (RSS_RECENT_VERSION):
34193           0.0.5 -> 0.0.6.
34195 Tue Apr  5 15:15:26 2005  Kouhei Sutou  <kou@cozmixng.org>
34197         * lib/rss/dublincore.rb: supported multiple Dublin Core items.
34199         * lib/rss/parser.rb: added class name registry for complex model
34200           elements. (ex. have childlen elements, have some attributes and
34201           a child element and so on.)
34203         * lib/rss/maker/base.rb: added default current_element implementation.
34205         * lib/rss/maker/dublincore.rb: supported multiple Dublin Core
34206           items.
34208         * lib/rss/maker/image.rb: supproted new Dublin Core API.
34211         * lib/rss/trackback.rb (RSS::TrackBackUtils.new_with_value_if_need):
34212           moved to RSS::Utils.
34214         * lib/rss/utils.rb (RSS::Utils.new_with_value_if_need):
34215           moved from RSS::TrackBackUtils.
34218         * lib/rss/maker/image.rb: fixed invalid argument of
34219           add_need_initialize_variable bug.
34221         * lib/rss/maker/trackback.rb: ditto.
34224         * lib/rss/rss.rb (Hash#merge): added for ruby 1.6.
34226         * lib/rss/rss.rb (RSS::BaseModel.date_writer): changed to accept nil
34227           for date value.
34230         * test/test_dublincore.rb: added tests for plural accessor and
34231           multiple Dublin Core items.
34233         * test/test_setup_maker_1.0.rb: fixed swapped actual and expected
34234           values.
34236 Mon Apr  4 23:17:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34238         * ext/tk/lib/tk.rb (TkComm#array2tk_list): accept enc-mode argument to
34239           decide whether convert encoding of each element or not.
34241         * ext/tk/lib/tk/variable.rb (TkVariable#value=): fail to convert the
34242           encoding of array elements when assign an array to an TkVariable
34243           object.
34245 Mon Apr  4 10:26:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34247         * ext/tk/lib/tk/dialog.rb: fixed typo.
34249 Sat Apr  2 23:38:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34251         * configure.in (CP, INSTALL): get rid of less portable options.
34253         * lib/mkmf.rb (configuration, create_makefile): correct configuration
34254           variable.
34256         * wince/configure.bat, wince/setup.mak: add prefix, extstatic and
34257           rdoc options.
34259         * lib/mkmf.rb (create_makefile): ensure library directories get made
34260           before copying libraries there.
34262 Sat Apr  2 16:59:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34264         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
34266         * ext/tk/lib/tk/variable.rb: fix namespace trouble when autoloading
34268         * ext/tk/lib/tk/palette.rb: define Tcl variable 'tkPalette' as global
34270         * ext/tk/lib/tk/dialog.rb: use array2tk_list method when calling
34271           Tk.ip_eval.
34273         * ext/tk/lib/tk/autoload.rb: add autoload entry 'TkDialogObj' and
34274           'TkWarningObj'
34276 Sat Apr  2 13:23:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34278         * hash.c (env_key): ENV.index is deprecated as well as Hash#index.
34279           use ENV.key instead. [ruby-dev:25974]
34281 Sat Apr  2 02:19:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34283         * ext/tk/lib/tk.rb (TkWindow.initialize): accept 'without_creating'
34284           option without 'widgetname' option to allow creating a widget object
34285           which is used as an argument of Tcl/Tk's widget allocation commands.
34287         * ext/tk/lib/tk/image.rb (TkImage.initialize): accept 'imagename'
34288           option to create a image object by the given name.
34290 Thu Mar 31 22:23:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34292         * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
34293           insensitive file system platforms.
34295         * README.EXT, README.EXT.ja (Appendix C): utility functions.
34297 Thu Mar 31 14:08:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34299         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should return
34300           value. [ruby-dev:25971]
34302 Thu Mar 31 11:07:50 2005  Kouhei Sutou  <kou@cozmixng.org>
34304         * lib/rss/parser.rb: @@setter -> @@setters.
34306         * lib/rss/parser.rb
34307           (RSS::BaseListener.register_uri)
34308           (RSS::BaseListener.uri_registered?)
34309           (RSS::BaseListener.install_get_text_element):
34310           swapped the first argument and the second argument.
34312         * lib/rss/taxonomy.rb: swapped the first argument and the second
34313           argument for RSS::BaseListener.install_get_text_element.
34314         * lib/rss/image.rb: ditto.
34315         * lib/rss/syndication.rb: ditto.
34316         * lib/rss/dublincore.rb: ditto.
34317         * lib/rss/parser.rb: ditto.
34318         * lib/rss/1.0.rb: ditto.
34319         * lib/rss/2.0.rb: ditto.
34320         * lib/rss/0.9.rb: ditto.
34321         * lib/rss/content.rb: ditto.
34323 Thu Mar 31 11:00:36 2005  Kouhei Sutou  <kou@cozmixng.org>
34325         * lib/rss/parser.rb
34326           (RSS::BaseListener.install_setter)
34327           (RSS::BaseListener.register_uri): changed fallback way.
34329 Thu Mar 31 08:25:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34331         * common.mk (RUBYOPT): clear for the environment RubyGems installed.
34333         * common.mk (clean-local): keep $(PREP) files till distclean.
34335         * common.mk (check): do all tests.
34337 Thu Mar 31 06:00:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34339         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should not raise
34340           error even if the specified engine could not be loaded. (Dynamic
34341           engines don't have fixed name to load.)
34343 Wed Mar 30 17:41:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34345         * ext/tk/tcltklib.c: add TclTkIp#_create_console() method to create
34346           a Tcl/Tk's console window.
34348         * ext/tk/lib/multi-tk.rb: support TclTkIp#_create_console() method.
34350         * ext/tk/lib/remote-tk.rb: ditto.
34352         * ext/tk/lib/tk/console.rb: ditto.
34354         * ext/tk/lib/tk.rb: update RELEASE_DATE
34356         * ext/tk/sample/demo-*/check2.rb: use 'return' in the Proc object.
34358         * ext/tk/sample/tkextlib/**: ditto.
34360 Tue Mar 29 22:20:49 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34362         * test/rinda/test_rinda.rb: use DRbObject.new_with instead of reinit.
34363           [ruby-dev:25961]
34365 Tue Mar 29 00:04:57 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34367         * lib/drb/drb.rb: move method DRbObject#reinit to DRbObject.new_with.
34368           extract method DRbObject.prepare_backtrace. add DRb.regist_server,
34369           remove_server, fetch_server. change server in thread variable if
34370           in-proc server. [druby-ja:113]
34372         * lib/drb/gw.rb: ditto.
34374 Mon Mar 28 20:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34376         * ext/extmk.rb (extract_makefile): nothing to be removed when no file
34377           was deleted.
34379         * ext/extmk.rb (extmake): restore srcdir.
34381 Mon Mar 28 08:39:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34383         * ext/iconv/iconv.c (iconv_create): Iconv::Failure requires 3
34384           arguments.  (pointed out by NaHi)
34386 Sun Mar 27 00:56:58 2005  Minero Aoki  <aamine@loveruby.net>
34388         * lib/fileutils.rb (remove_file): ignore Errno::E* if force option
34389           is set. [ruby-dev:25944]
34391 Sat Mar 26 22:51:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34393         * ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
34394           a class is available for a callback entry.
34396         * ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
34398         * ext/tk/lib/tk.rb (array2tk_list): change from private module method
34399           of TkComm to public module method.
34401         * ext/tk/lib/tk.rb (cget): add check that slot argument is not
34402           empty string.
34404         * ext/tk/lib/tk.rb (configinfo): ditto.
34406         * ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
34407           is not empty string.
34409         * ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
34411         * ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
34412           cursor and cursor= method).
34414         * ext/tk/lib/tk/font.rb: improve font treatment when the font name is
34415           empty string.
34417         * ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure
34418           type.
34420         * ext/tk/lib/tk/variable.rb: improve treatment of array-type
34421           tkvariable.
34423         * ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
34425         * ext/tk/lib/tkextlib/blt/*: bug fix.
34427         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
34428           to call TreeCtrl commands for bindings.
34430         * ext/tk/sample/tkextlib/blt/*: new sample scripts.
34432         * ext/tk/sample/tkextlib/treectrl/*: ditto.
34434 Fri Mar 25 10:53:16 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34436         * configure.in (WIN32_LEAN_AND_MEAN): removed because a lot of
34437           troubles.  [ruby-list:40721]
34439 Thu Mar 24 23:10:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34441         * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
34442           which doesn't bail out at #error directive.  [ruby-dev:25818]
34444         * lib/mkmf.rb (check_sizeof): refine logging messages.
34446 Wed Mar 23 19:08:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34448         * lib/webrick/utils.rb (WEBrick::Utils.create_listeners):
34449           - should raise ArgumentError if no port is specified.
34450           - even if the specified port is 0, all TCPServers should be
34451             initialized with the port given to the first one.
34453         * lib/webrick/server.rb (WEBrick::GenericServer#initialize): if :Port
34454           parameter is 0, it should be updated with the port number which
34455           ectually listened.
34457 Wed Mar 23 16:12:40 2005  Shugo Maeda  <shugo@ruby-lang.org>
34459         * parse.y (primary): fix lineno of rescue and ensure.
34461 Wed Mar 23 00:39:05 2005  Shugo Maeda  <shugo@ruby-lang.org>
34463         * test/ruby/test_settracefunc.rb (test_event): added tests for
34464           "class" and "end" and "raise".
34466 Sun Mar 20 22:51:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34468         * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
34469           create_makefile.
34471 Sat Mar 19 23:48:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34473         * misc/ruby-mode.el (ruby-expr-beg): returned true always.
34474           fixed: [ruby-list:40683]
34476 Sat Mar 19 00:41:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34478         * ext/tk/lib/tk/font.rb: add some TkFont class methods to get font
34479           information without creating a TkFont object.
34481         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and define some
34482           classes for components of Tk::TreeCtrl
34484 Thu Mar 17 17:42:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34486         * struct.c (make_struct): allow non local-id field
34487           names. [ruby-core:04575]
34489         * struct.c (inspect_struct): ditto.
34491 Wed Mar 16 23:39:13 2005  Shugo Maeda  <shugo@ruby-lang.org>
34493         * test/ruby/test_settracefunc.rb: added test for c-return.
34495 Wed Mar 16 22:57:43 2005  Shugo Maeda  <shugo@ruby-lang.org>
34497         * eval.c (rb_call0): call_cfunc() should be protected.
34499         * eval.c (rb_add_event_hook): use K&R style.
34501         * eval.c (rb_remove_event_hook): ditto.
34503 Wed Mar 16 22:03:15 2005  Shugo Maeda  <shugo@ruby-lang.org>
34505         * eval.c (rb_add_event_hook): new function to add a hook function for
34506           interpreter events.
34508 Wed Mar 16 18:08:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34510         * eval.c (rb_call0): reorganize "return" event post.
34512         * eval.c (return_jump): no need to post "return" event here.
34514 Tue Mar 15 23:49:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34516         * ext/iconv/iconv.c (Init_iconv): InvalidEncoding also should include
34517           Iconv::Failure.
34519 Tue Mar 15 23:12:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34521         * eval.c (recursive_check, recursive_push): more restrictive check.
34522           fixed: [ruby-dev:25916]
34524 Tue Mar 15 16:38:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34526         * ext/tk/tkutil/tkutil.c (ary2list): give wrong arguments to hash2kv()
34528 Mon Mar 14 19:39:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34530         * ext/tk/lib/tk/timer.rb (TkTimer): forgot to clear @return_value
34531           when restarting
34533         * ext/tk/lib/tk/sample/cd_timer.rb: new sample of TkRTTimer
34535 Mon Mar 14 12:21:03 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34537         * ext/tk/lib/tk/timer.rb (TkRTTimer): forgot to reset the callback
34538           time. So, 'continue' do all callbacks between 'stop' and 'continue'.
34540 Mon Mar 14 08:14:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34542         * object.c (str_to_id): raise ArgumentError for NUL containing
34543           strings.
34545 Mon Mar 14 00:13:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34547         * ext/tk/lib/tk/timer.rb (TkRTTimer): correct calculation of offset
34548           value. get a little better accuracy.
34550         * ext/tk/sample/demos-en/widget: use a binding with no local variables
34551           when eval a sample script.
34553         * ext/tk/sample/demos-en/bind.rb: ditto.
34555         * ext/tk/sample/demos-en/tcolor: ditto.
34557         * ext/tk/sample/demos-jp/widget: ditto.
34559         * ext/tk/sample/demos-jp/bind.rb: ditto.
34561         * ext/tk/sample/demos-jp/tcolor: ditto.
34563 Sun Mar 13 22:19:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34565         * eval.c (recursive_pop): raise TypeError instead of fatal error.
34566           fixed: [ruby-dev:25843]
34568 Sun Mar 13 10:09:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34570         * test/rinda/test_rinda.rb: remove test_gc. [ruby-dev:25871]
34572 Sun Mar 13 02:32:54 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34574         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): should get DH
34575           parameter from the current SSL object.
34577 Sun Mar 13 02:09:03 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34579         * ext/openssl/ossl_pkey_dh.c (ossl_create_dh): fix typo.
34580           patch from IWATSUKI Hiroyuki. [ruby-dev:25867]
34582         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): ditto.
34583           (ossl_call_tmp_dh_callback): ditto
34585 Fri Mar 11 03:24:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34587         * parse.y (primary): wrong var node was set for NODE_LAMBDA.
34588           [ruby-core:04555]
34590 Thu Mar 10 19:10:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34592         * ext/tk/tcltklib.c (lib_eventloop_ensure): mis-delete a timer handler
34593           when exit from a recursive called eventloop
34595         * ext/tk/lib/tk/timer.rb: new TkRTTimer class, which can works for a
34596           realtime operation
34598         * ext/tk/sample/tkrttimer.rb: sample of TkRTTimer class
34600         * ext/tk/lib/tk/textmark.rb: move  TkTextMark#+ and TkTextMark#- to
34601           TkText::IndexModMethods
34603         * ext/tk/lib/tk/text.rb: improve TkTextMark#+ and TkTextMark#-, and
34604           add them to TkText::IndexModMethods module
34606         * ext/tk/sample/tktextio.rb: add test part of "seek by text index
34607           modifiers"
34609 Thu Mar 10 08:10:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34611         * re.c (make_regexp): need to free internal regexp structure when
34612           compilation fails.  [ruby-talk:133228]
34614 Thu Mar 10 01:08:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34616         * parse.y (bv_decl): remove initialize rule from block local
34617           variable declaration.
34619 Wed Mar  9 23:55:34 2005  Tanaka Akira  <akr@m17n.org>
34621         * lib/pp.rb (PP::PPMethods#guard_inspect_key): support
34622           __recursive_key__.  [ruby-dev:25821]
34624 Wed Mar  9 19:42:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34626         * ext/openssl/ossl_ssl.c: OpenSSL::SSL::SSLContexts suports callbacks:
34627           - SSLContext#client_cert_cb is a Proc. it is called when a client
34628             certificate is requested by a server and no certificate was yet
34629             set for the SSLContext. it must return an Array which includes
34630             OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects.
34631           - SSLContext#tmp_dh_callback is called in key exchange with DH
34632             algorithm. it must return an OpenSSL::PKey::DH object.
34634         * ext/openssl/ossl_ssl.c:
34635           (ossl_sslctx_set_ciphers): ignore the argument if it's nil.
34636           (ossl_start_ssl, ossl_ssl_write): call rb_sys_fail if errno isn't 0.
34637           [ruby-dev:25831]
34639         * ext/openssl/ossl_pkey.c
34640           (GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first.
34641           (DupPrivPKeyPtr): new function.
34643         * ext/openssl/ossl_pkey_dh.c: add default DH parameters.
34645         * ext/openssl/ossl_pkey.h: ditto.
34647         * ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285]
34649 Wed Mar  9 18:09:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34651         * parse.y (gettable_gen): warns if VCALL name is used as
34652           out-of-scope block local variable.  [EXPERIMENTAL]
34654         * parse.y (opt_bv_decl): add explicit block local variable
34655           declaration.  raises error for name conflicts.  [EXPERIMENTAL]
34657 Wed Mar  9 13:37:57 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34659         * ext/tk/sample/tktextio.rb: fix bug of handling 'end' position.
34660           support initial text, overwrite setting and pos_gravity control.
34662 Tue Mar  8 18:16:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34664         * ext/tk/sample/tktextio.rb: New sample script. TkTextIO class in this
34665           sample supports to use a text widget as if it is a I/O stream (such
34666           like as StringIO class).
34668 Tue Mar  8 13:39:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34670         * ext/socket/mkconstants.rb: workaround for some of 4.4BSD-Lite
34671           derived OSs.
34673 Tue Mar  8 12:36:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34675         * ext/socket/socket.c: document from Sam Roberts
34676           <sroberts@uniserve.com> for getsockopt and setsockopt is merged.
34677           [ruby-doc:824]
34679 Tue Mar  8 10:48:53 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34681         * eval.c (rb_exec_recursive): declaration should precede statements
34682           before C99.
34684 Tue Mar  8 10:05:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34686         * error.c (errno_missing): Errno.const_missing to allow references
34687           to SyscallError exceptions not defined on the platform.
34688           [ruby-core:04522]
34690         * error.c (Init_syserr): Errno::NOERROR(0) for fallback exception.
34692 Tue Mar  8 01:19:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34694         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.66
34695           fixed: [ruby-dev:25828]
34697 Mon Mar  7 21:29:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34699         * lib/webrick/server.rb (WEBrick::GenericServer#start): should
34700           restore @token if accept failure. suggested by Dominique Brezinski.
34701           [ruby-core:04518]
34703         * sample/webrick/httpsd.rb: fix typo in comment. suggested by
34704           Kazuhiko Shiozaki.
34706 Mon Mar  7 21:01:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34708         * eval.c (rb_require_safe): get actual path string under safe level
34709           when requested.  fixed: [ruby-dev:25815]
34711 Mon Mar  7 16:46:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34713         * ext/openssl/ossl_ssl.c (ossl_start_ssl, ossl_ssl_read,
34714           ossl_ssl_write): need to set errno on Win32 platform.
34716 Mon Mar  7 14:55:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34718         * eval.c (block_pass): should not push unique number if a block is
34719           not an orphan.  [ruby-dev:25808]
34721 Mon Mar  7 14:13:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34723         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
34724           should set @eof and @rbuffer.
34726 Mon Mar  7 10:28:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34728         * object.c (inspect_obj): unintended space removal.
34729           [ruby-dev:25810]
34731         * eval.c (rb_exec_recursive): should not use NODE in disclosed
34732           context.  [ruby-dev:25812]
34734         * io.c (rb_f_open): need not to check if to_open value is a
34735           T_FILE.  [ruby-dev:25812]
34737 Mon Mar  7 01:21:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34739         * ext/tk/tkutil/tkutil.c: follow the change of st.c (committed
34740           at Fri, 4 Mar 2005 15:47:47 +0900 by matz)
34742 Mon Mar  7 00:01:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34744         * ext/tk/tcltklib.c: fail to call TclTkLib.mainloop when $SAFE==4
34746 Sun Mar  6 13:04:10 2005  Dee Zsombor  <zsombor@ruby-lang.org>
34748         * misc/ruby-electric.el: added.
34749         * misc/Readme: updated.
34751 Sun Mar  6 11:47:10 2005  Sam Roberts  <sroberts@uniserve.com>
34753         * lib/pp.rb: rdoced.  [ruby-core:4490]
34755 Sun Mar  6 11:36:37 2005  Tanaka Akira  <akr@m17n.org>
34757         * lib/pp.rb (File::Stat#pretty_print): Etc.getpwuid and Etc.getgrgid
34758           may return nil.  [ruby-talk:129826]
34759           reported by Daniel Berger.
34761 Sun Mar  6 06:34:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34763         * ext/openssl/ossl_ssl.c (ossl_start_ssl): should wait for that
34764           the underlying IO become readable or writable if the error was
34765           SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. [ruby-dev:25795]
34767         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): ditto.
34769         * ext/openssl/lib/openssl/buffering.rb
34770           (Buffering#consume_rbuf): pointless eof flag resetting is deleted.
34771           (Buffering#read): should return an empty string if the specified
34772           size is zero.
34773           (Buffering#readpartial): new method.
34774           (Buffering#readline): fix typo.
34775           (Buffering#getc): return the first character of string correctly.
34776           (Buffering#readchar): fix typo.
34777           (Buffering#eof?): should read again it the input buffer is empty.
34778           (Buffering#do_write): should rescue Errno::EAGAIN.
34779           (Buffering#puts): use "\n" as the output field separator.
34781         * ext/openssl/extconf.rb: get rid of GNUmakefile generation.
34783         * text/openssl/test_pair.rb: test for IO like methods.
34785         * test/ruby/ut_eof.rb: test about empty file.
34787 Sat Mar  5 17:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34789         * dir.c (rb_glob): fixed mismatch of argument.
34791         * dir.c (fnmatch): removed unnecessary code. (by string.c 1.219)
34793         * win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117)
34795 Sat Mar  5 16:50:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34797         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.65
34799 Sat Mar  5 16:29:26 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34801         * ext/tk/lib/multi-tk.rb: freeze callback-entry objects
34803         * ext/tk/lib/tkextlib/tile.rb: support tile-0.6
34805 Sat Mar  5 12:52:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34807         * lib/mkmf.rb (create_makefile): allow putting spaces between target
34808           and colon in depend file.
34810 Sat Mar  5 02:41:00 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34812         * file.c (eaccess): workaround for VC++8 runtime.
34814         * win32/win32.c (ioinfo): VC++8 support.
34816 Fri Mar  4 19:39:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34818         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#do_includes): replace
34819           also locally defined modules.
34821         * ext/iconv/iconv.c: rdocified.
34823         * ext/strscan/strscan.c: moved misplaced rdoc.
34825 Fri Mar  4 16:11:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34827         * eval.c (rb_exec_recursive): matched the declaration to prototype.
34829         * ext/curses/curses.c: don't need to check HAVE_WCOLOR_SET excluding
34830           window_color_set().
34832         * ext/tk/tcltklib.c: fixed commit mistakes.
34834 Fri Mar  4 12:45:17 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
34836         * lib/rdoc/parsers/parse_c.rb: allow whitespace after function names.
34837           [ruby-core:4296]
34839         * lib/rdoc/parsers/parse_simple.rb: adds support for private comments
34840           in the "simple" parser. [ruby-core:4301]
34842 Fri Mar  4 12:45:17 2005  Charles Mills  <cmills@freeshell.org>
34844         * lib/rdoc/parsers/parse_c.rb: adds support for constants
34845           (rb_define_const), accessors (rb_define_attr), and makes a
34846           couple fixes. [ruby-core:4307]
34848 Fri Mar  4 12:45:17 2005  Florian Gross  <florgro@gmail.com>
34850         * lib/rdoc/parsers/parse_rb.rb: Logic for def Builtin.method() end
34851           [ruby-core:4302]
34853 Fri Mar  4 12:45:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34855         * array.c: replace rb_protect_inspect() and rb_inspecting_p() by
34856           rb_exec_recursive() in eval.c.
34858         * eval.c (rb_exec_recursive): new function.
34860         * array.c (rb_ary_join): use rb_exec_recursive().
34862         * array.c (rb_ary_inspect, rb_ary_hash): ditto.
34864         * file.c (rb_file_join): ditto.
34866         * hash.c (rb_hash_inspect, rb_hash_to_s, rb_hash_hash): ditto.
34868         * io.c (rb_io_puts): ditto.
34870         * object.c (rb_obj_inspect): ditto
34872         * struct.c (rb_struct_inspect): ditto.
34874 Fri Mar  4 10:15:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34876         * lib/set.rb (SortedSet::setup): a hack to shut up warning.
34877           [ruby-talk:132866]
34879 Fri Mar  4 09:37:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34881         * common.mk (install-nodoc, pre-install-doc, post-install-doc):
34882           fix some omissions.
34884 Fri Mar  4 08:09:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34886         * lib/time.rb (Time::strptime): add new function.  inspired by
34887           [ruby-talk:132815].
34889         * lib/parsedate.rb (ParseDate::strptime): ditto.
34891 Fri Mar  4 07:07:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34893         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.63
34895 Thu Mar  3 23:24:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34897         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.62
34899 Thu Mar  3 18:47:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34901         * {bcc32,win32,wince}/Makefile.sub (config.h): check if affected
34902           when makefiles are modified.
34904         * {bcc32,win32,wince}/Makefile.sub (config.status): add variables
34905           for tests.
34907         * win32/ifchange.bat: try to update a file only if modified.
34909         * win32/resource.rb: more descriptions.
34911         * common.mk: add {pre,post}-install targets.
34913         * instruby.rb (install?): install particular part.
34915         * bcc32/Makefile.sub (post-install-ext): remove debug information
34916           files after installation.
34918         * ext/tk/tcltklib.c (ip_rbUpdateCommand, ip_rb_threadUpdateCommand):
34919           get rid of warnings with Tcl/Tk 8.3 or former.
34921 Thu Mar  3 11:49:51 2005  Kouhei Sutou  <kou@cozmixng.org>
34923         * sample/rss/tdiary_plugin/rss-recent.rb: added site information.
34925 Wed Mar  2 19:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34927         * ext/extmk.rb (parse_args): return false if nothing matched.
34929 Wed Mar  2 17:15:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34931         * ext/tk/tcltklib.c (lib_eventloop_core): fix typo
34933 Wed Mar  2 16:59:50 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34935         * eval.c (ruby_native_thread_kill): call pthread_kill() to send a
34936           signal to ruby's native thread
34938         * ruby.h: add definition of ruby_native_thread_kill()
34940         * signal.c (sigsend_to_ruby_thread): send the signal to ruby's
34941           native thread ([ruby-dev:25744], [ruby-dev:25754]), and set
34942           signal mask to the current native thread
34944 Wed Mar  2 16:03:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34946         * ext/tk/tcltklib.c: enforce thread-check and exception-handling to
34947           avoid SEGV trouble.
34949         * ext/tk/tkutil/tkutil.c; fix a bug on converting a SJIS string array
34950           to a Tcl's list string.
34952         * ext/tk/tcltklib.c: wrap Tcl's original "namespace" command to
34953           protect from namespace crash.
34955         * ext/tk/lib/multi-tk.rb: enforce exception-handling.
34957         * ext/tk/lib/multi-tk.rb: catch IRB_EXIT to work on irb.
34959         * ext/tk/lib/tk.rb: ditto.
34961         * ext/tk/tcltklib.c: add TclTkLib.mainloop_thread?
34963         * ext/tk/lib/multi-tk.rb: (bug fix) callback returns a value.
34965         * ext/tk/lib/tk/canvas.rb (delete): bug fix when multiple arguments.
34967         * ext/tk/lib/clock.rb: fix 'no method error'.
34969         * ext/tk/lib/clock.rb (self.clicks): accept a Symbol argument.
34971         * ext/tk/lib/variable.rb: be able to set default_value_type; :numeric,
34972           :bool, :string, :symbol, :list, :numlist or nil (default; same to
34973           :string). If set a type, TkVariable#value returns a value of the
34974           type.
34976         * ext/tk/lib/tkextlib/tclx/tclx.rb: add Tk::TclX.signal to warn the
34977           risk of using TclX extension's 'signal' command.
34979         * ext/tk/sample/irbtk.rb: irb with Ruby/Tk.
34981         * ext/tk/sample/demos-*/anilabel.rb: bug fix on 'show code'
34983         * ext/tk/sample/demos-*/aniwave.rb: new Ruby/Tk animation demo.
34985         * ext/tk/sample/demos-*/pendulum.rb: ditto.
34987         * ext/tk/sample/demos-*/goldberg.rb: ditto.
34989         * ext/tk/sample/demos-*/widget: add entries of animation demos.
34991 Wed Mar  2 12:21:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34993         * eval.c (rb_eval): [EXPERIMENTAL] NODE_LAMBDA implemented.
34994           [ruby-dev:25780]
34996         * node.h (NODE_LAMBDA): for literal Proc object.
34998         * parse.y (expr): interpret mere do...end block as proc object.
35000         * parse.y (primary): ditto, for brace block.
35002 Tue Mar  1 21:16:54 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35004         * regcomp.c (optimize_node_left): uninitialized member
35005           (OptEnv.backrefed_status) was used. [ruby-dev:25778]
35007 Tue Mar  1 16:50:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35009         * regparse.c: move st_*_strend() functions from st.c.  fixed some
35010           potential memory leaks.
35012 Tue Mar  1 00:40:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35014         * lib/rinda/tuplespace.rb (Rinda::TupleSpace): improved keeper thread.
35016         * test/rinda/test_rinda.rb: ditto.
35018 Mon Feb 28 23:10:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35020         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
35021           AF_INET6 is defined on bcc32. (rev1.108 again)
35023         * ext/socket/mkconstants.rb: ditto.
35025 Mon Feb 28 21:55:49 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35027         * ext/strscan/strscan.c (strscan_s_allocate):
35028           use onig_region_init().
35030         * ext/strscan/strscan.c (adjust_registers_to_matched):
35031           use onig_region_set().
35033 Mon Feb 28 15:12:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35035         * ext/socket/socket.c (Init_socket): ported more Socket::Constants
35036           from ruby_1_8, and made it easy to add new constants.
35037           [ruby-dev:25771]
35039         * ext/socket/depend: ditto.
35041         * ext/socket/mkconstants.rb: ditto. (added)
35043 Mon Feb 28 11:42:23 2005  Ian Macdonald  <ian@caliban.org>
35045         * exception error messages updated.  [ruby-core:04497]
35047 Mon Feb 28 09:03:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35049         * ext/socket/socket.c (Init_socket): add bunch of Socket
35050           constants.  Patch from Sam Roberts <sroberts@uniserve.com>.
35051           [ruby-core:04409]
35053 Sun Feb 27 05:55:38 2005  Minero Aoki  <aamine@loveruby.net>
35055         * parse.y [ripper]: fix typo. [ruby-core:04494]
35057 Sat Feb 26 16:58:20 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35059         * parse.y, re.c, regex.h, LEGAL, ext/strscan/strscan.c:
35060           remove oniggnu.h (GNU regex API).
35062 Wed Feb 23 22:08:16 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35064         * st.c, st.h: imported additional file changes on
35065           Oniguruma 3.7.0.
35067 Wed Feb 23 21:45:29 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35069         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
35070           regenc.c, regenc.h, regerror.c, regexec.c, regint.h,
35071           regparse.c, regparse.h, sjis.c, utf8.c: imported Oni Guruma
35072           3.7.0.
35074 Wed Feb 23 15:04:32 2005  akira yamada  <akira@ruby-lang.org>
35076         * lib/uri/generic.rb (split_userinfo): should split ":pass" into ""
35077           and "pass".  [ruby-dev:25667]
35079 Wed Feb 23 08:00:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35081         * array.c (rb_ary_s_create): no need for negative argc check.
35082           [ruby-core:04463]
35084         * array.c (rb_ary_unshift_m): ditto.
35086 Wed Feb 23 01:53:29 2005  Shugo Maeda  <shugo@ruby-lang.org>
35088         * lib/net/imap.rb (initialize): handle certs correctly. Thanks,
35089           NABEYA Kenichi.
35091 Wed Feb 23 00:37:34 2005  Kouhei Sutou  <kou@cozmixng.org>
35093         * lib/mkmf.rb (mkmf_failed): fixed typo.
35095 Tue Feb 22 23:52:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35097         * configure.in, lib/mkmf.rb: use simple commands if available.
35099         * mkconfig.rb: remove autoconf internal variables from rbconfig.rb.
35101         * lib/mkmf.rb (create_makefile): substitute implicit rules in depend
35102           file.
35104         * {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
35105           include $(topdir) and $(hdrdir) to search path.
35107 Tue Feb 22 23:51:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35109         * ext/syck/rubyext.c: get rid of warnings caused by a bug of VC.
35111 Tue Feb 22 23:50:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35113         * signal.c (ruby_signal, ruby_nativethread_signal): must be valid as
35114           expressions, not only statements.
35116 Tue Feb 22 12:54:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35118         * eval.c (rb_thread_start_0): update curr_thread before raising
35119           TAG_THREAD.  [ruby-dev:25712]
35121 Tue Feb 22 07:24:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35123         * parse.y (parser_yylex): identifier after dot must not be a variable.
35125 Mon Feb 21 18:31:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35127         * signal.c: Standard signal handlers ignore signals on non-Ruby native
35128           threads. When a handler is entried with ruby_signal() (like as the
35129           standard signal handlers), the handler for the signal is marked as
35130           it cannot accept non-Ruby native threads. If a handler can treat all
35131           signals on all native threads, please use ruby_nativethread_signal()
35132           to entry it.
35134 Sun Feb 20 00:48:48 2005  Tanaka Akira  <akr@m17n.org>
35136         * lib/open-uri.rb (URI::FTP#buffer_open): access mechanism
35137           re-implemented according to RFC 1738.
35138           reported by Guillaume Marcais.  [ruby-talk:131650]
35140 Sat Feb 19 18:46:56 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35142         * lib/drb/drb.rb (DRbObject#respond_to?): take two arguments.
35143           [ruby-dev:25722]
35145         * test/drb/drbtest.rb: ditto.
35147 Sat Feb 19 13:52:02 2005  Tanaka Akira  <akr@m17n.org>
35149         * lib/open-uri.rb: call OpenSSL::SSL::SSLSocket#post_connection_check
35150           after connection is made.
35152 Sat Feb 19 13:31:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35154         * ext/extmk.rb (extract_makefile): remove no longer existing installed
35155           files.
35157         * lib/mkmf.rb (install_dirs): return installation directory list.
35159         * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
35161 Sat Feb 19 01:28:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35163         * ext/bigdecimal/lib/bigdecimal/newton.rb: resolved LoadError.
35164           [ruby-dev:25685]
35166         * ext/bigdecimal/sample/linear.rb: ditto.
35168         * ext/bigdecimal/sample/nlsolve.rb: ditto.
35170         * ext/bigdecimal/lib/bigdecimal/nlsolve.rb: removed because this file
35171           is sample script and same file exists in ext/bigdecimal/sample.
35173 Fri Feb 18 17:14:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35175         * lib/xmlrpc/parser.rb (XMLRPC::FaultException): make it subclass
35176           of StandardError class, not Exception class.  [ruby-core:04429]
35178 Fri Feb 18 04:06:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35180         * parse.y (fcall_gen): lvar(arg) will be evaluated as
35181           lvar.call(arg) when lvar is a defined local variable. [new]
35183 Thu Feb 17 22:15:34 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35185         * ext/strscan/strscan.c: calls Oniguruma API directly.
35187 Thu Feb 17 21:53:12 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35189         * common.mk, LEGAL: remove reggnu.c.
35191 Thu Feb 17 21:53:12 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35193         * gc.c, re.c: now ruby calls Oniguruma API directly, bypassing
35194           GNU compatible APIs.
35196 Thu Feb 17 20:09:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35198         * lib/drb/drb.rb (DRbServer.default_safe_level): fix typo.
35200 Thu Feb 17 20:09:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35202         * test/digest/test_digest.rb: separate test case for each algorithms.
35203           [ruby-dev:25412]
35205 Thu Feb 17 14:31:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35207         * object.c (rb_class_initialize): call inherited method before
35208           calling initializing block.
35210         * eval.c (rb_thread_start_1): initialize newly pushed frame.
35211           fixed: [ruby-dev:25707]
35213 Thu Feb 17 13:46:00 2005  Nathaniel Talbott  <ntalbott@ruby-lang.org>
35215         * lib/test/unit/collector.rb (collect_file): now deletes paths added
35216           to $LOAD_PATH instead of restoring it verbatim.
35218         * lib/test/unit/autorunner.rb (AutoRunner.run): fixed so that
35219           'ruby -rtest/unit -rtest1 -rtest2 -e0' will use the objectspace
35220           collector again. Also tried to simplify the calling convention.
35222         * test/runner.rb: adjusted for new AutoRunner semantics.
35224         * lib/test/unit.rb: ditto.
35226 Thu Feb 17 04:21:47 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35228         * lib/open3.rb (Open3::popen3): $? should not be EXIT_FAILURE.
35229           fixed: [ruby-core:04444]
35231 Thu Feb 17 00:31:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35233         * test/drb/test_drb.rb, ut_safe1.rb: port from 1.8
35235 Thu Feb 17 00:02:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35237         * eval.c (is_defined): NODE_IASGN is an assignment.
35239 Wed Feb 16 23:54:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35241         * eval.c (rb_thread_start_1): outer block variables wasn't linked to
35242           threads.  fixed: [ruby-dev:25700]
35244 Wed Feb 16 15:11:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35246         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::Nonblock#initialize):
35247           native win32 platform doesn't have F_GETFL.
35249 Wed Feb 16 02:47:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35251         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): should
35252           call rb_sys_fail instead of raising SSLError if SSL_ERROR_SYSCALL
35253           occurred.
35255         * ext/openssl/lib/openssl/buffering.rb (Buffering#fill_rbuff):
35256           should rescue Errno::EAGAIN.
35258         * ext/openssl/lib/openssl/buffering.rb (Buffering#each): fix typo.
35259           suggested by Brian Ollenberger.
35261         * ext/openssl/lib/openssl/ssl.rb: set non-blocking flag to the
35262           underlying IO.
35264 Tue Feb 15 22:14:34 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
35266         * ext/readline/readline.c (Readline.readline): use rl_outstream
35267           and rl_instream.  [ruby-dev:25699]
35269 Mon Feb 14 23:58:17 2005  Kouhei Sutou  <kou@cozmixng.org>
35271         * lib/rss/parser.rb (RSS::ListenerMixin::tag_end):
35272           fixed invalid namespace handling bug.
35274 Mon Feb 14 13:12:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35276         * ext/openssl/lib/openssl/ssl.rb
35277           (OpenSSL::SSL::SSLSocket#post_connection_check): new method.
35279 Mon Feb 14 00:10:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35281         * lib/drb/drb.rb (DRbServer): add default_safe_level, safe_level,
35282           config[:safe_level] ([druby-ja:120])
35284         * test/drb/test_drb.rb, ut_eval.rb, ut_safe1.rb: ditto.
35286 Sun Feb 13 23:13:46 2005  Kouhei Sutou  <kou@cozmixng.org>
35288         * lib/rss/dublincore.rb (RSS::DublicCoreModel#date{,=}): added
35289           convenient methods.
35291         * lib/rss/0.9.rb (RSS::Rss::Channel#date{,=}): ditto.
35293         * lib/rss/2.0.rb (RSS::Rss::Channel::Item#date{,=}): ditto.
35295         * test/rss/: added tests for the convenient methods.
35297 Sun Feb 13 23:12:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35299         * eval.c (rb_thread_start_0): restore prot_tag before rewinding.
35301 Sun Feb 13 16:56:52 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35303         * lib/webrick/cgi.rb (WEBrick::CGI.start): should set reason-phrase
35304           to the value of status header field. ([ruby-dev:40617])
35306 Sun Feb 13 11:38:40 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35308         * regparse.c (type_cclass_hash): (Thanks Nobu) fixed
35309           overrun. ([ruby-dev:25676]).
35311 Sun Feb 13 10:53:08 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35313         * oniggnu.h, oniguruma.h, regcomp.c, st.c: imported
35314           Oni Guruma 3.6.0.
35316 Sun Feb 13 01:33:19 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35318         * lib/erb.rb (ERB::Util.h, u): make it module_function.
35320 Sat Feb 12 22:17:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35322         * eval.c (TAG_THREAD): to start a new thread.
35324         * eval.c (ruby_init, ruby_options, ruby_cleanup, rb_protect,
35325           rb_load_protect, rb_thread_start_0): make thread anchor.
35327         * eval.c (proc_alloc): clone proc object if klass is not Proc or
35328           created in different thread.
35330         * eval.c (rb_block_pass): call a function with a block.  [new]
35332         * eval.c (rb_f_throw): raise NameError in main thread.
35334 Sat Feb 12 17:29:19 2005  Tanaka Akira  <akr@m17n.org>
35336         * lib/open-uri.rb (OpenURI.open_loop): send authentication only for
35337           the URI directly specified.
35339 Sat Feb 12 15:07:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35341         * random.c (rand_init): suppress warning.
35343 Sat Feb 12 14:10:24 2005  Tanaka Akira  <akr@m17n.org>
35345         * lib/open-uri.rb (OpenURI.open_http): reject userinfo explicitly.
35347 Sat Feb 12 13:54:03 2005  Tanaka Akira  <akr@m17n.org>
35349         * lib/open-uri.rb: support https if the platform provides CA
35350           certificates.
35352 Sat Feb 12 06:18:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
35354         * ext/etc/etc.c (Init_etc): sGroup needs HAVE_ST_GR_PASSWD check
35355           [ruby-dev:25675]
35357 Fri Feb 11 17:37:50 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35359         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
35360           new method OpenSSL::X509::Store#set_default_paths.
35362 Fri Feb 11 11:33:53 2005  Tanaka Akira  <akr@m17n.org>
35364         * lib/open-uri.rb (URI::HTTP#proxy_open): new option supported:
35365           :http_basic_authentication.
35366           suggested by Kent Sibilev.  [ruby-core:4392]
35368 Fri Feb 11 06:30:07 2005  George Ogata  <g_ogata@optushome.com.au>
35370         * misc/ruby-mode.el: ignore parenthesis inside heredoc.
35371           [ruby-core:04415]
35373 Fri Feb 11 04:54:13 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
35375         * lib/rdoc/generators/html_generator.rb: [ruby-core:04412]
35377         * lib/rdoc/generators/ri_generator.rb: ditto.
35379 Thu Feb 10 13:52:42 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35381         * configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): use
35382           winsock2 on mswin32/mingw.
35384         * ext/socket/extconf.rb: ditto.
35386         * win32/win32.c (StartSockets): ditto.
35388         * win32/win32.h: ditto.
35390 Thu Feb 10 12:09:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35392         * ext/extmk.rb (extract_makefile): default to true if not compiled
35393           previously.
35395         * ext/extmk.rb (extmake): create dummy makefile if extconf failed.
35397 Thu Feb 10 12:07:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35399         * win32/win32.c (init_stdhandle): assign standard file handles.
35401         * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
35402           import32.lib.
35404         * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
35405           rule lines, add search path to implicit rules, and set Borland make
35406           special macros for search path.
35408         * win32/win32.c, win32/win32.h (read): avoid a BCC runtime bug.
35410 Thu Feb 10 00:47:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35412         * struct.c (make_struct): fixed: [ruby-core:04402]
35414 Wed Feb  9 16:33:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35416         * ext/socket/socket.c (wait_connectable): fixed wrong condition.
35418 Wed Feb  9 14:42:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
35420         * eval.c (scope_dup): add volatile not to optimize tbl.
35422 Wed Feb  9 10:02:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35424         * ext/tk/make-tkutil, ext/tk/tkutil/subconf.rb: no longer used.
35426         * ext/tk/tkutil/extconf.rb: need to compile tkutil. [ruby-dev:25607]
35428 Wed Feb  9 08:07:08 2005  Paul Duncan  <pabs@pablotron.org>
35430         * ext/curses/curses.c (window_color_set): [ruby-core:04393]
35432 Tue Feb  8 23:48:36 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35434         * lib/drb/drb.rb: reject :instance_eval, :class_eval, :module_eval
35435           [druby-ja:117]
35437 Tue Feb  8 22:38:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35439         * keywords, parse.y: separate EXPR_VALUE from EXPR_BEG.
35440           fixed: [ruby-core:04310], [ruby-core:04368]
35442 Tue Feb  8 13:06:12 2005  Sam Roberts  <sroberts@uniserve.com>
35444         * ext/socket/socket.c (Init_socket): SO_REUSEPORT added.
35445           [ruby-talk:130092]
35447 Tue Feb  8 00:19:02 2005  Tanaka Akira  <akr@m17n.org>
35449         * lib/resolv.rb (Resolv::DNS::Name#subdomain_of?): new method.
35450           (Resolv::DNS::Name#inspect): ditto.
35451           Suggested by Sam Roberts.  [ruby-talk:129086]
35453 Mon Feb  7 23:14:11 2005  Tanaka Akira  <akr@m17n.org>
35455         * io.c (io_getc): flush rb_stdout before read from stdin, which is
35456           connected to a tty.  [ruby-core:4378]
35458         * rubyio.h (FMODE_TTY): renamed from FMODE_LINEBUF.
35460 Mon Feb  7 10:06:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35462         * object.c: [ruby-doc:818]
35464 Mon Feb  7 02:13:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35466         * ext/socket/extconf.rb (sockaddr_storage): winsock2.h have the
35467           definition of struct sockaddr_storage, but socket.c doesn't
35468           include it because this version of ruby still has binary level
35469           compatibility with winsock1.
35471 Mon Feb  7 01:22:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35473         * ext/extmk.rb (extract_makefile): extract previously collected
35474           informations from existing Makefile.
35476         * ext/socket/extconf.rb: check if getaddrinfo() works fine only when
35477           wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]
35479         * ext/tk/extconf.rb: separate tkutil configuration.
35481         * lib/mkmf.rb ($extmk): check if under ext directory.
35483         * lib/mkmf.rb (Logging.postpone): allow recursive operation.
35485         * lib/mkmf.rb (try_constant): make sure if really a constant, reduce
35486           the number of times of compile.
35488         * lib/mkmf.rb (have_macro, have_var, byte_order): new functions.
35490         * lib/mkmf.rb (find_library): allow directory list with separators.
35492         * lib/mkmf.rb (arg_config): manage provided configuration options.
35494         * lib/mkmf.rb (dir_config): accept arrays of directory names as
35495           default values.
35497         * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
35498           modified if the block returned true.
35500 Sun Feb  6 19:20:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35502         * eval.c (stack_extend): add prototype because VC++8 doesn't
35503           accept __declspec(noinline) with K&R style function definitions.
35505 Sun Feb  6 13:56:19 2005  Tadayoshi Funaba  <tadf@dotrb.org>
35507         * lib/date.rb (new_with_hash): changed messages of exception.
35509         * lib/date/format.rb (str[fp]time): undocumented conversion
35510           specifications %[1-3] are now deprecated.
35512 Sun Feb  6 11:27:37 2005  Tanaka Akira  <akr@m17n.org>
35514         * ext/dl/dl.c (Init_dl): function declaration should precede
35515           statements before C99.
35517 Sun Feb  6 03:24:20 2005  Tanaka Akira  <akr@m17n.org>
35519         * lib/resolv.rb (Resolv::DNS::Resource::TXT): multiple strings was not
35520           handled.
35521           (Resolv::DNS::Resource::TXT#strings): new method to return all
35522           strings.
35523           (Resolv::DNS::Message::MessageEncoder#put_string_list): new method.
35524           (Resolv::DNS::Message::MessageDecoder#get_string_list): ditto.
35525           based on [ruby-talk:129732] by Sam Roberts.
35527 Sat Feb  5 02:24:06 2005  Minero Aoki  <aamine@loveruby.net>
35529         * test/ripper/test_scanner_events.rb: fix test.
35531 Fri Feb  4 18:44:35 2005  Minero Aoki  <aamine@loveruby.net>
35533         * ext/ripper/lib/ripper/lexer.rb: last Lexer fix was incomplete;
35534           test all green.
35536 Fri Feb  4 15:57:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35538         * parse.y (open_args): fix too verbose warnings for the space
35539           before argument parentheses.  [ruby-dev:25492]
35541         * parse.y (parser_yylex): ditto.
35543 Fri Feb  4 14:33:25 2005  Minero Aoki  <aamine@loveruby.net>
35545         * ext/ripper/lib/ripper/filter.rb: ripper/tokenizer ->
35546           ripper/lexer. [ruby-dev:25632]
35548 Fri Feb  4 00:24:15 2005  Kouhei Sutou  <kou@cozmixng.org>
35550         * lib/rss: supported Image module.
35551           http://web.resource.org/rss/1.0/modules/image/
35553 Thu Feb  3 23:42:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35555         * ext/stringio/stringio.c (strio_close, strio_close_read, strio_close_write):
35556           should return nil instead of self as well as IO.  [ruby-dev:25623]
35558         * ext/stringio/stringio.c (strio_extend, strio_putc): fill with zero
35559           extended portion.  [ruby-dev:25626]
35561 Thu Feb  3 16:12:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35563         * parse.y (parser_yylex): the first expression in the parentheses
35564           should not be a command.  [ruby-dev:25492]
35566 Thu Feb  3 03:31:20 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35568         * ext/nkf/nkf-utf8/nkf.c: follow original v 1.57
35570         * ext/nkf/nkf-utf8/utf8tbl.c: follow original v 1.8
35572         * ext/nkf/nkf-utf8/config.h: follow original v 1.7
35574 Wed Feb  2 23:52:53 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
35576         * ext/stringio/stringio.c (strio_truncate): should MEMZERO an extended
35577           part.  [ruby-dev:25618]
35579 Wed Feb  2 21:56:01 2005  Kouhei Sutou  <kou@cozmixng.org>
35581         * lib/rss/rss.rb (RSS::Element#convert): added.
35583         * lib/rss/rss.rb: convert -> need_convert.
35585         * lib/rss/1.0.rb: ditto.
35587         * lib/rss/0.9.rb: ditto.
35589         * lib/rss/2.0.rb: ditto.
35591         * lib/rss/trackback.rb: ditto.
35593 Wed Feb  2 03:30:58 2005  Minero Aoki  <aamine@loveruby.net>
35595         * ext/ripper/lib/ripper/tokenizer.rb -> lexer.rb.
35597         * ext/ripper/lib/ripper/lexer.rb: new method Ripper.slice.
35598           [experimental]
35600         * ext/ripper/lib/ripper/sexp.rb: new file. [experimental]
35602         * ext/ripper/lib/ripper.rb: require ripper/lexer and ripper/sexp.
35604 Tue Feb  1 21:49:24 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35606         * lib/drb/drb.rb (DRb::DRbObject#respond_to?): check marshal_dump and
35607           _dump.
35609 Tue Feb  1 00:20:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35611         * Makefile.in, configure.in: made EXTOUT configurable.
35613         * ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.
35615         * lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]
35617         * configure.in (aix): fix linker flags on AIX.  [ruby-talk:125460]
35619 Mon Jan 31 13:16:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35621         * ext/tk/extconf.rb: add tkutil configuration step (remove old schema)
35623         * ext/tk/depend: remove the information of tkutil
35625         * ext/tk/make-tkutil: sub-part of Makefile to compile tkutil
35627         * ext/tk/tkutil/tkutil.c: move tkutil.c to subdirectory
35629         * ext/tk/tkutil/subconf.rb: configuration file for tkutil.c
35631         * ext/tk/tkutil/depend: ditto
35633 Mon Jan 31 13:13:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35635         * ext/tk/tcltklib.c: add invalid namespace check
35637         * ext/tk/lib/multi-tk.rb: add invalid_namespace? method
35639         * ext/tk/lib/remote-tk.rb: ditto
35641 Mon Jan 31 10:29:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35643         * lib/irb/context.rb (IRB::Context::initialize): [ruby-core:04330]
35645 Mon Jan 31 09:44:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35647         * object.c (Init_Object): remove Object#type.  [ruby-core:04335]
35649 Sat Jan 29 09:42:12 2005  Sam Roberts  <sroberts@uniserve.com>
35651         * lib/resolv.rb (Resolv::DNS::Resource::IN::SRV): Added RFC2782 SRV
35652           resource record for specifying location of services.
35654 Sat Jan 29 00:10:33 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35656         * ascii.c, euc_jp.c, hash.c, oniggnu.h, oniguruma.h, regcomp.c,
35657           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c, regint.h,
35658           regparse.c, regparse.h, sjis.c, st.c, st.h, utf8.c: imported
35659           Oni Guruma 3.5.4.
35661 Fri Jan 28 17:16:55 2005  Tanaka Akira  <akr@m17n.org>
35663         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf):
35664           parse options line for ndots option.
35665           (Resolv::Hosts#lazy_initialize): return self.
35666           (Resolv::DNS#lazy_initialize): ditto.
35667           (Resolv::DNS::Config#lazy_initialize): ditto.
35668           Suggested by Sam Roberts.
35670 Thu Jan 27 17:15:03 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35672         * ext/tk/extconf.rb: support new tk scheme on bccwin32.
35673           fixed: [ruby-dev:25546]
35675 Thu Jan 27 13:18:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35677         * st.c (st_foreach): report success/failure by return value.
35678           [ruby-Bugs-1396]
35680 Thu Jan 27 00:12:19 2005  Minero Aoki  <aamine@loveruby.net>
35682         * test/fileutils/test_fileutils.rb (setup): support BSD style
35683           directory group inheritance (again).
35685 Thu Jan 27 00:02:40 2005  Minero Aoki  <aamine@loveruby.net>
35687         * test/fileutils/test_fileutils.rb (setup): support BSD style
35688           directory group inheritance. [ruby-dev:25440]
35690         * test/fileutils/fileasserts.rb (assert_same_entry): show entry
35691           difference.
35693 Wed Jan 26 17:12:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35695         * parse.y: forgot to initialize parser struct.  [ruby-dev:25492]
35697         * parse.y (parser_yylex): no tLABEL on EXPR_BEG.
35698           [ruby-talk:127711]
35700 Wed Jan 26 14:12:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35702         * ext/Setup*: remove tcltklib.
35704 Wed Jan 26 12:45:16 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35706         * ext/tk/extconf.rb: support new tk scheme on mswin32.
35707          fixed: [ruby-dev:25535]
35709 Wed Jan 26 10:45:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35711         * win32/win32.c (flock_winnt, flock_win95): unlock file even if
35712           LOCK_NB is specified.
35714 Tue Jan 25 23:10:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35716         * ext/tk: merge tcltklib for Ruby/Tk installation control
35718         * ext/tcltklib: remove
35720 Tue Jan 25 17:05:15 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35722         * ruby.c (proc_options): correct -T option in RUBYOPT.
35723           fixed: [ruby-dev:25512]
35725 Tue Jan 25 14:05:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35727         * ext/tcltklib/tcltklib.c: fix SEGV bug; trouble on canceling remained
35728           after scripts [ruby-dev:25479]: NULL current namespace when deleting
35729             Tk interpreter [ruby-talk:126225]
35731         * ext/tcltklib/extconf.rb: bug fix; TCL_ENABLE_THREAD flag is inverted
35732           [ruby-talk:126360]
35734         * ext/tcltklib/extconf.rb: add yet another native-thread check
35736         * ext/tk/tkutil.c: fix SEGV bug; NULL string pointer when finalize
35737           Ruby interpreter
35739         * ext/tk/lib/multi-tk.rb: avoid warning for deleted safeTk ip frame
35741         * ext/tk/lib/tk/bindtag.rb: bug fix; new method of named bindtag
35742           doesn't return the created object [ruby-dev:25479]
35744         * ext/tk/lib/tk/menu.rb: bug on treating arguments [ruby-dev:25479]
35746         * ext/tk/lib/tk.rb: bug fix; cannot accept a callback ID string for
35747           a command argument [ruby-dev:25479]
35749         * ext/tk/lib/multi-tk.rb: ditto
35751         * ext/tk/lib/tk/*.rb: ditto
35753         * ext/tk/lib/tkextlib/*.rb: ditto
35755         * ext/tk/sample/demos-jp/anilabel.rb: new demo script
35757         * ext/tk/sample/demos-en/anilabel.rb: ditto
35759         * ext/tk/sample/tkHTML/ss.rb: local variable scope bug fix
35760           [ruby-dev:25479]
35762 Mon Jan 24 16:00:53 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35764         * ext/nkf/lib/kconv.rb (guess_old): not use NKF.guess_old
35765           but NKF.guess1. fixed: [ruby-dev:25491]
35767 Mon Jan 24 15:44:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35769         * document updates - [ruby-core:04296], [ruby-core:04301],
35770           [ruby-core:04302], [ruby-core:04307]
35772 Sun Jan 23 12:38:01 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
35774         * lib/soap/wsdlDriver.rb: from 1.5.3-ruby1.8.2, operation which has
35775           capitalized name (such as KeywordSearchRequest in AWS) is defined as
35776           a method having uncapitalized name. (converted with
35777           GenSupport.safemethodname to handle operation name 'foo-bar').  it
35778           introduced serious incompatibility; in the past, it was defined as a
35779           capitalized.
35781           define capitalized method as well under that circumstance.
35783 Sun Jan 23 05:24:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35785         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_to_der): should call
35786           GetOCSPReq at first.
35788 Sat Jan 22 22:59:08 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35790         * lib/drb/ssl.rb (accept): rescue SSLError. [druby-ja:110]
35792 Sat Jan 22 22:27:28 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35794         * lib/drb/unix.rb: fail if UNIXFileOwner is set. [druby-ja:111]
35796 Fri Jan 21 20:07:02 2005  Tanaka Akira  <akr@m17n.org>
35798         * lib/resolv.rb (Resolv::DNS::Config.resolv): don't raise ResolvError.
35799           reported by Sam Roberts.  [ruby-talk:127133]
35801 Fri Jan 21 17:09:44 2005  Shugo Maeda  <shugo@ruby-lang.org>
35803         * lib/net/imap.rb (decode_utf7): use pack("U*") to encode UTF-8.
35805         * lib/net/imap.rb (encode_utf7): use unpack("U*") to decode UTF-8.
35807         * test/net/imap/test_imap.rb: added tests for Net::IMAP.
35809 Fri Jan 21 16:58:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35811         * dir.c (rb_push_glob): should work for NUL delimited patterns.
35813         * dir.c (rb_glob2): should aware of offset in the pattern.
35815 Fri Jan 21 13:58:37 2005  Shugo Maeda  <shugo@ruby-lang.org>
35817         * lib/net/imap.rb (u8tou16): fixed typo. fixed: [ruby-list:40546]
35819 Fri Jan 21 00:37:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35821         * ext/syck/rubyext.c (syck_parser_bufsize_set): avoid VC++ warning
35822           "local variable 'size' used without having been initialized".
35824 Thu Jan 20 11:42:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35826         * string.c (rb_str_new4): should propagate taintedness.
35828         * env.h: rename member names in struct FRAME; last_func -> callee,
35829           orig_func -> this_func, last_class -> this_class.
35831         * struct.c (rb_struct_set): use original method name, not callee
35832           name, to retrieve member slot.  [ruby-core:04268]
35834         * time.c (time_strftime): protect from format modification from GC
35835           finalizers.
35837 Thu Jan 20 02:01:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35839         * object.c (Init_Object): remove rb_obj_id_obsolete()
35841 Wed Jan 19 18:02:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35843         * lib/ipaddr.rb (to_s, test_to_s): too many colons with some cases.
35845 Wed Jan 19 01:16:30 2005  Tanaka Akira  <akr@m17n.org>
35847         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf): ignore
35848           domain and search directive without an argument.
35849           reported by Sam Roberts.  [ruby-talk:126781]
35851 Mon Jan 17 23:33:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35853         * configure.in (aix): fix typo.  [ruby-talk:126401]
35855 Mon Jan 17 07:08:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35857         * ext/readline/readline.c: suppress warnings.
35859         * lib/irb/extend-command.rb (IRB::ContextExtender.def_extend_command):
35860           ditto.
35862         * lib/irb/ext/history.rb (IRB::Context::set_last_value): ditto.
35864         * lib/irb/ext/history.rb (IRB::Context::eval_history): ditto.
35866         * lib/irb/locale.rb (IRB::Locale::real_load): ditto.
35868         * lib/irb/slex.rb (SLex::Node::create_subnode): remove garbage.
35870 Mon Jan 17 00:09:42 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35872         * lib/uri/common.rb (PORT): typo fix. fixed: [ruby-core:04256]
35874 Sat Jan 15 14:57:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35876         * ruby.c (proc_options): ignore trailing CRs at the end of short
35877           options as well as long options.  fixed: [ruby-core:04232]
35879 Sat Jan 15 13:44:22 2005  Kouhei Sutou  <kou@cozmixng.org>
35881         * lib/rss/rss.rb (RSS::VERSION): 0.1.2 -> 0.1.3.
35883         * lib/rss/rss.rb: accept inheritance. [ruby-talk:126104]
35885 Wed Jan 12 12:29:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35887         * eval.c (rb_mod_define_method): incomplete subclass check.
35888           [ruby-dev:25464]
35890         * class.c (rb_make_metaclass): class of metaclasses should be
35891           plain Class.  [ruby-list:40524]
35893 Tue Jan 11 20:58:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35895         * io.c (remain_size): use buffered data instead of unreading to avoid
35896           inconsistency of text mode.  fixed: [ruby-dev:25446]
35898 Tue Jan 11 09:37:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35900         * numeric.c (Init_Numeric): turn off floating point exceptions
35901           on bcc32. "1e300".to_f had crashed by overflow.
35903 Mon Jan 10 15:28:51 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35905         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line): should
35906           escape SCRIPT_NAME and PATH_INFO before being parsed as a URI.
35908         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#escape_path): add
35909           new method to escape URI path component.
35911         * lib/webrick/ssl.rb (WEBrick::Config::SSL): the default value
35912           of :SSLEnable is false.
35914         * test/webrick/{test_cgi.rb,webrick.cgi}: new file.
35916         * test/webrick/utils.rb: require "webrick/https.h".
35918 Mon Jan 10 01:22:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35920         * gc.c (rb_data_object_alloc): klass may be NULL.
35921           [ruby-list:40498]
35923 Sun Jan  9 14:12:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35925         * io.c (rb_f_select): IO list could be altered.  [ruby-dev:25312]
35927 Sun Jan  9 04:08:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35929         * test/webrick/test_server.rb (test_daemon): delete an assertion
35930           which has possibility to fail by race condition.
35932 Sun Jan  9 03:22:46 2005  Minero Aoki  <aamine@loveruby.net>
35934         * test/fileutils/test_fileutils.rb (test_copy_entry): copy_entry
35935           copies only file type, not mtime. [ruby-dev:25383]
35937 Sat Jan  8 04:38:47 2005  why the lucky stiff  <why@ruby-lang.org>
35939         * lib/yaml.rb: Kernel#y requires an argument.
35941 Fri Jan  7 21:12:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
35943         * random.c (rand_init): use ALLOC_N instead of ALLOCA_N
35944           [ruby-dev:25426]
35946 Fri Jan  7 20:01:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35948         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
35949           should delete trailing LF from the result of pack("m*").
35951         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
35952           - should delete trailing LF from the result of pack("m*").
35953           - clear Request-Line not to send the response by HTTPServer#run.
35955         * lib/webrick/httputils (WEBrick::HTTPUtils.parse_qvalues):
35956           refine regexp (and change the name of a local variable).
35958         * lib/webrick/server.rb (WEBrick::Daemon.start): prepared stdio
35959           don't allow changing its mode.
35961         * test/webrick/*, sample/webrick/httpproxy.rb: add new files.
35963 Fri Jan  7 18:03:35 2005  Tanaka Akira  <akr@m17n.org>
35965         * gc.c (mark_locations_array): avoid core dump with -O3.
35966           [ruby-dev:25424]
35968 Thu Jan  6 20:29:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35970         * ext/zlib/zlib.c (zstream_end): should return value.
35972 Thu Jan  6 19:59:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35974         * win32/win32.c (rb_w32_close): didn't close socket handle.
35975           [ruby-dev:25414]
35977         * win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle
35978           never set EMFILE.
35980 Thu Jan  6 17:22:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35982         * random.c (random_seed): O_NONBLOCK isn't defined on some
35983           platforms. [ruby-dev:25417]
35985 Thu Jan  6 13:45:35 2005  Tanaka Akira  <akr@m17n.org>
35987         * lib/time.rb: recognize +00:00 and GMT as a localtime.
35989 Thu Jan  6 07:58:28 2005  Dave Thomas  <dave@pragprog.com>
35991         * lib/rdoc/usage.rb (RDoc::RDoc.usage_no_exit): Allow for colons
35992           in path names on DOS machines. (thanks to Johan Nilsson)
35994 Thu Jan  6 00:02:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35996         * test/rinda/test_rinda.rb: use MockClock.sleep instead of Kernel.sleep
35997           [ruby-dev:25387]
35999 Wed Jan  5 20:16:32 2005  Tanaka Akira  <akr@m17n.org>
36001         * random.c (limited_big_rand): didn't work if SIZEOF_BDIGITS == 2.
36002           [ruby-dev:25408]
36004         * random.c (random_seed): refined.
36006 Wed Jan  5 16:39:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36008         * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.
36009           shift assignment operator '>>=' for __int64 in struct may
36010           generate collapsed code. [ruby-dev:25342]
36012         * win32/win32.[ch]: failed to compile on bcc32 (and probably wince)
36013           [ruby-dev:25306]
36015 Wed Jan  5 12:49:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36017         * eval.c (rb_thread_initialize): Thread objects cannot be initialized
36018           again.  fixed: [ruby-core:04067]
36020 Wed Jan  5 02:30:11 2005  Tanaka Akira  <akr@m17n.org>
36022         * random.c (init_by_array): imported from mt19937ar-cok.tgz.
36023           (genrand_int32): ditto.
36024           (genrand_real): replaced with genrand_res53 in mt19937ar-cok.
36025           (rand_init): support bignum for longer seed.
36026           (random_seed): generate longer seed.
36027           (make_mask): new function.
36028           (limited_rand): ditto.
36029           (limited_big_rand): ditto.
36030           (rb_f_rand): call limited_rand and limited_big_rand.
36031           [ruby-dev:25403]
36033 Tue Jan  4 23:25:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36035         * bignum.c (rb_big_rand): should return positive random number.
36036           [ruby-dev:25401]
36038 Tue Jan  4 21:25:43 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36040         * test/drb/{test_drbssl.rb,test_drbunix.rb,ut_drb.rb}: use
36041           DRbService.ext_service. reduce sleep.
36043 Mon Jan  3 14:01:54 2005  Tanaka Akira  <akr@m17n.org>
36045         * random.c (random_seed): don't use /dev/urandom if it is not
36046           character device.
36048 Mon Jan  3 11:37:42 2005  Tanaka Akira  <akr@m17n.org>
36050         * random.c (random_seed): use /dev/urandom if available.
36051           [ruby-dev:25392]
36053 Tue Jan  4 11:15:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
36055         * bignum.c (rb_big_rand): do not use rb_big_modulo to generate
36056           random bignums.  [ruby-dev:25396]
36058 Mon Jan  3 11:03:37 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36060         * test/drb/test_drb.rb: move TestDRbReusePort to new file.
36061           [ruby-dev:25238]
36063         * test/drb/drbtest.rb: change timeout.
36065         * test/drb/ignore_test_drb.rb: new file.
36067 Mon Jan  3 07:27:46 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36069         * lib/webrick/httpauth/htpasswd.rb (WEBrick::Htpasswd#reload):
36070           raise NotImplementedError if password is encrypted by digest
36071           algorithms. This patch is contributed by sheepman. [ruby-list:40467]
36073         * lib/webrick/httpauth/digestauth.rb
36074           (WEBrick::HTTPAuth::DigestAuth#_authenticate): fix digest calculation.
36075           This patch is contributed by sheepman. [ruby-list:40482]
36077         * lib/webrick/{httpauth.rb,httpauth/basicauth.rb,httpproxy.rb}: use
36078           pack/unpack-template char "m" instead of lib/base64.rb to do base64
36079           encoding/decoding. fixed: [ruby-dev:25336]
36081         * test/webrick/test_httpauth.rb: new file.
36083 Sun Jan  2 15:42:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36085         * lib/drb/drb.rb: add lazy stop_service.
36087         * lib/drb/extserv.rb: ditto.
36089 Sun Jan  2 01:17:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36091         * test/drb/drbtest.rb: add method DRbService.ext_service.
36093         * test/drb/test_drb.rb: ditto.
36095         * test/drb/test_drbssl.rb: ditto.
36097 Sat Jan  1 20:23:02 2005  Tanaka Akira  <akr@m17n.org>
36099         * io.c (argf_readpartial): new method ARGF.readpartial.
36100           (io_getpartial): extracted from io_readpartial.
36101           (io_readpartial): call io_getpartial.
36103 Sat Jan  1 17:44:54 2005  Minero Aoki  <aamine@loveruby.net>
36105         * lib/net/http.rb (each_capitalized): should join header field
36106           value.  This patch is contributed sheepman [ruby-list:40478]
36108         * test/net/http/test_httpheader.rb: test it.
36110 Sat Jan  1 16:21:29 2005  Minero Aoki  <aamine@loveruby.net>
36112         * lib/fileutils.rb (copy_stream): use read/write instead of
36113           sysread/syswrite, which allows duck typing. [ruby-dev:25369]
36115         * lib/fileutils.rb (copy_stream): does NOT support nonblocking IO.
36116           [ruby-dev:25370]
36118         * lib/fileutils.rb (copy_entry): could not copy symlink.
36120         * test/fileutils/test_fileutils.rb: test copy_entry, copy_file,
36121           copy_stream.
36123 Sat Jan  1 04:20:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36125         * ext/openssl/ossl_ns_spki.c (ossl_spki_set_challenge): should call
36126           StringValue before GetSPKI. fixed: [ruby-dev:25359].
36128 Sat Jan  1 01:13:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36130         * variable.c (rb_autoload): [ruby-dev:25373]
36132 Fri Dec 31 14:10:43 2004  Dave Thomas  <dave@pragprog.com>
36134         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
36135           Fix problem if heading contains formatting.
36137 Fri Dec 31 00:08:02 2004  Tanaka Akira  <akr@m17n.org>
36139         * configure.in (HAVE_RLIM_T): removed because not used.
36141 Thu Dec 30 22:45:39 2004  Tanaka Akira  <akr@m17n.org>
36143         * rubyio.h: don't deprecate rb_read_check.
36145         * io.c (STDIO_READ_DATA_PENDING): reverted from old READ_DATA_PENDING
36146           to check stdio read buffer.
36147           (rb_read_check): use STDIO_READ_DATA_PENDING.
36148           (rb_read_pending): ditto.
36149           (rb_getc): ditto.
36151 Thu Dec 30 05:39:35 2004  Minero Aoki  <aamine@loveruby.net>
36153         * parse.y: eliminate unused members in struct parser_params.
36154           [ruby-dev:25258] (again)
36156         * parse.y: make parser_new() static.
36158 Thu Dec 30 00:41:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36160         * eval.c (svalue_to_avalue): [ruby-dev:25366]
36162         * string.c (rb_str_justify): [ruby-dev:25367]
36164 Wed Dec 29 11:07:07 2004  Dave Thomas  <dave@pragprog.com>
36166         * lib/rdoc/generators/template/html/kilmer.rb: Update to use new
36167           sections.
36169 Tue Dec 28 22:31:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36171         * string.c (rb_str_justify): create buffer string after argument type
36172           conversion.  fixed: [ruby-dev:25341]
36174 Tue Dec 28 17:18:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36176         * lib/net/telnet.rb (preprocess): remove NULL unless binmode.
36177           fixed: [ruby-list:40320]
36179 Tue Dec 28 15:41:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36181         * ext/nkf/nkf-utf8/nkf.c (reinit): should initialize all static
36182           variables.  fixed: [ruby-list:40445]
36184 Tue Dec 28 15:25:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36186         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): second byte is up to
36187           0xfe.
36189         * ext/nkf/lib/kconv.rb (Kconv#kconv): should handle UTF8 and UTF16
36190           properly.
36192 Tue Dec 28 13:35:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36194         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): ensure
36195           freeing internal zstreams.  fixed: [ruby-dev:25309]
36197         * ext/zlib/zlib.c (rb_deflate_init_copy): replace rb_deflate_clone.
36199 Mon Dec 27 20:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36201         * ext/tcltklib/tcltklib.c: fix SEGV bug when deleting Tk interp
36203         * ext/tk/lib/multi-tk.rb: ditto
36205 Mon Dec 27 16:54:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36207         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): should use
36208           rb_hash_new to get exactly a Hash. fix [ruby-dev:25325].
36210 Mon Dec 27 15:29:12 2004  Minero Aoki  <aamine@loveruby.net>
36212         * test/fileutils/test_fileutils.rb (cp_r): tested wrong file name.
36213           [ruby-dev:25339]
36215 Mon Dec 27 15:15:18 2004  Minero Aoki  <aamine@loveruby.net>
36217         * lib/fileutils.rb (mv): should raise error when moving a
36218           directory to the (empty) directory. [ruby-talk:124368]
36220         * lib/fileutils.rb (mv): wrongly did not overwrite file on Win32
36221           platforms.
36223 Mon Dec 27 14:36:20 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36225         * process.c (NUM2RLIM, RLIM2NUM): Without SIZEOF_RLIM_T is not error.
36226           fixed: [ruby-dev:25346]
36228 Sun Dec 26 16:21:39 2004  Shugo Maeda  <shugo@ruby-lang.org>
36230         * lib/net/imap.rb (Net::IMAP::PlainAuthenticator): added a new class
36231           to support the PLAIN authentication mechanism. Thanks, Benjamin
36232           Stiglitz.
36234 Sat Dec 25 01:28:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36236         * io.c (rb_f_select): [ruby-dev:25312]
36238 Fri Dec 24 23:27:18 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36240         * ext/tk/lib/tk/image.rb: TkPhotoImage#cget bug fix
36242 Fri Dec 24 03:06:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36244         * io.c (io_reopen, rb_io_reopen): prohibit to change access mode for
36245           special IO ports.  [ruby-dev:25225]
36247         * io.c (next_argv): reduce use of stdio.
36249 Fri Dec 24 02:22:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36251         * ext/syck/rubyext.c (syck_loader_transfer): check type conversion.
36253         * ext/syck/rubyext.c (syck_parser_assign_io, rb_new_syck_node): duck
36254           typing.
36256         * ext/syck/rubyext.c (syck_parser_s_alloc, syck_parser_initialize):
36257           allocation framework.
36259         * ext/syck/rubyext.c (syck_emitter_s_alloc, syck_emitter_initialize):
36260           ditto.
36262 Fri Dec 24 01:21:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36264         * ext/tk/lib/tkextlib/blt.rb: add BLT extension support
36266         * ext/tk/lib/tkextlib/blt/*.rb: ditto
36268         * ext/tk/lib/tkextlib/blt/tile/*.rb: ditto
36270 Thu Dec 23 23:43:24 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36272         * process.c (proc_setgroups): check if the argument length is
36273           modified.  fixed: [ruby-dev:25285]
36275         * process.c (SIZEOF_RLIM_T): err if size of rlim_t is not set.
36277 Thu Dec 23 19:08:41 2004  Tanaka Akira  <akr@m17n.org>
36279         * rubyio.h: rename FMODE_UNSEEKABLE to FMODE_DUPLEX.
36281         * io.c (io_check_tty): extracted function to set FMODE_LINEBUF and
36282           FMODE_DUPLEX.
36284 Thu Dec 23 13:13:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36286         * ext/tcltklib/tcltklib.c: define TclTkLib::COMPILE_INFO and
36287           RELEASE_DATE
36289         * ext/tcltklib/extconf.rb: ditto
36291         * ext/tk/tkutil.c: define TkUtil::RELEASE_DATE
36293         * ext/tk/lib/tk.rb: define Tk::RELEASE_DATE
36295 Thu Dec 23 00:16:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36297         * configure.in (bsdi): use $(CC) for LDSHARED.  fixed [ruby-dev:25270]
36299 Wed Dec 22 11:14:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36301         * io.c (rb_io_mode_modenum): replace O_ACCMODE with O_RDWR.
36302           fixed: [ruby-dev:25273]
36304 Wed Dec 22 08:34:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36306         * ext/dl/sym.c (rb_dlsym_initialize): extract internal pointers after
36307           all argument conversion.  fixed: [ruby-dev:25271]
36309 Tue Dec 21 16:15:21 2004  Michael Neumann  <mneumann@ruby-lang.org>
36311         * lib/xmlrpc/client.rb: use "" instead of "." if prefix argument is
36312           nil in proxy methods. nil is default value.
36314         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
36315           use threads instead of forking. this should fix issue #1208
36316           (http://rubyforge.org/tracker/?func=detail&atid=1698&aid=1208&group_id=426).
36317           removed testing of SSL enabled servlet as this hangs.
36319 Wed Dec 22 00:05:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36321         * lib/soap/*, test/soap/*, sample/soap/authheader/*: eval cleanup.
36323 Tue Dec 21 22:07:41 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36325         * ext/openssl/ossl_asn1.c (ossl_asn1_decode_all): use rb_str_new4
36326           to avoid SEGV.
36328         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode,
36329           ossl_asn1_decode_all): temporary value should be marked volatile.
36331 Tue Dec 21 12:42:34 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36333         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode):
36334           use rb_str_new4 to avoid SEGV. fix [ruby-dev:25261]
36336         * test/openssl/test_asn1.rb: add tests for OpenSSL::ASN1.
36338 Tue Dec 21 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36340         * ext/tk/lib/tk/grid.rb: rescue bug of 'grid configure' on Tcl/Tk8.3-
36342 Mon Dec 20 22:52:29 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36344         * added samples for the previous soap4r's commit.
36346 Mon Dec 20 22:56:39 2004  Tanaka Akira  <akr@m17n.org>
36348         * gc.c (set_stack_end): gcc noinline attribute is available since
36349           gcc-3.1.
36351 Mon Dec 20 22:40:31 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36353         * added files:
36354           * lib/soap/mapping/wsdl*.rb
36355           * lib/wsdl/soap/element.rb
36356           * lib/wsdl/xmlSchema/simpleContent.rb
36358         * modified files:
36359           * lib/soap/*
36360           * lib/wsdl/*
36361           * lib/xsd/*
36362           * test/soap/*
36363           * test/wsdl/*
36364           * test/xsd/*
36366         * summary
36367           * imported from the soap4r repository.  Version: 1.5.3-ruby1.8.2
36369           * added several XSD basetype support: nonPositiveInteger,
36370             negativeInteger, nonNegativeInteger, unsignedLong, unsignedInt,
36371             unsignedShort, unsignedByte, positiveInteger
36373           * HTTP client connection/send/receive timeout support.
36375           * HTTP client/server gzipped content encoding support.
36377           * improved WSDL schema definition support; still is far from
36378             complete, but is making step by step improvement.
36380 Mon Dec 20 14:45:19 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36382         * lib/net/https.rb: delete descriptions about key_file and cert_file.
36383           fixed: [ruby-dev:25243]
36385         * ext/openssl/lib/net/telnets.rb: ditto.
36387 Mon Dec 20 14:07:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36389         * ext/tk/lib/multi-tk.rb: supports new features of Tcl/Tk8.5a2
36391         * ext/tk/lib/tk/clock.rb: ditto
36393         * ext/tk/lib/tk/text.rb: ditto
36395         * ext/tk/lib/tk/panedwindow.rb: ditto
36397 Mon Dec 20 13:51:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36399         * ext/socket/socket.c (sock_s_getservbyport): [ruby-talk:124072]
36401 Mon Dec 20 10:51:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36403         * parse.y (special_local_set): prevent the parser object from GC.
36404           fixed: [ruby-dev:25252]
36406 Mon Dec 20 03:30:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36408         * lib/cgi/session.rb (CGI::Session#initialize): empty session id was
36409           used if request had no session key.  fixed: [ruby-core:03981]
36411 Mon Dec 20 01:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36413         * struct.c (make_struct): [ruby-dev:25249]
36415 Mon Dec 20 00:16:54 2004  Kouhei Sutou  <kou@cozmixng.org>
36417         * lib/rexml/encodings/SHIFT_JIS.rb: fixed LoadError bug.
36418           [ruby-core:3958]
36420 Sun Dec 19 17:24:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36422         * configure.in (enable_rpath): use rpath flag to embed the library
36423           path into extensions on ELF environment.  [ruby-dev:25035]
36425 Sun Dec 19 11:01:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36427         * lib/test/unit.rb: use standalone runner for -e.
36429         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept
36430           multiple -p and -x options.
36432         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect):
36433           ditto.
36435 Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36437         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate):
36438           disallow interrupt by type conversion.  fixed: [ruby-dev:25226]
36440 Sat Dec 18 15:09:02 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36442         * lib/webrick/httpauth.rb,
36443           lib/webrick/httpauth/{basicauth.rb,digestauth.rb}: use
36444           pack/unpack-template char "m" instead of lib/base64.rb to do base64
36445           encoding/decoding.
36447 Sat Dec 18 10:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36449         * dir.c (dir_open_dir): new function.  [ruby-dev:25242]
36451         * io.c (rb_f_open): add type check for return value from to_open.
36453 Fri Dec 17 16:44:26 2004  Tanaka Akira  <akr@m17n.org>
36455         * configure.in (ac_cv_sizeof_rlim_t): set 8 for BSD/OS.
36456           Reported by OHARA Shigeki.  [ruby-dev:25236]
36458 Fri Dec 17 16:28:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36460         * ext/tk/lib/tk.rb: fix bug on setting up system encoding
36462         * ext/tk/lib/tk/event.rb: fix error on require process
36464         * ext/tk/lib/tk/font.rb: fix abnormal termination error on Windows
36466         * ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new()
36467           accepts event-sequence arguments
36469         * ext/tk/lib/tk/text.rb: fail to dump embedded images
36471         * ext/tk/lib/tk/text.rb: tag_nextrange and tag_prevrange returns wrong
36472           types of values
36474         * ext/tk/lib/tk/texttag.rb: nextrange and prevrange returns wrong
36475           types of values
36477         * ext/tk/lib/tk/text.rb: add TkText::IndexModMethods module and
36478           TkText::IndexString class to treat text index modifiers
36480         * ext/tk/lib/tk/texttag.rb: use TkText::IndexModMethods module
36482         * ext/tk/lib/tk/textmark.rb: ditto
36484         * ext/tk/lib/tk/textimage.rb: ditto
36486         * ext/tk/lib/tk/textwindow.rb: ditto
36488         * ext/tk/lib/tk/textimage.rb: wrong gravity of text mark for embedded
36489           image
36491         * ext/tk/lib/tk/textwindow.rb: wrong gravity of text mark for
36492           embedded window
36494 Fri Dec 17 13:33:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36496         * lib/cgi/session.rb (CGI::Session#initialize): control adding
36497           session_id hidden fields.  fixed: [ruby-talk:123850]
36499 Fri Dec 17 00:01:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36501         * eval.c (rb_proc_arity, rb_node_arity, rb_mod_method_arity,
36502           rb_obj_method_arity): new functions to obtain method arity.
36503           [ruby-dev:25143]
36505 Thu Dec 16 23:31:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36507         * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
36508           is installed.  fixed: [ruby-dev:25215]
36510 Thu Dec 16 22:36:57 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36512         * test/drb/test_drb.rb: adjust and reduce sleep.
36514 Thu Dec 16 18:37:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36516         * ext/openssl/ossl.c (ossl_raise): refine message format.
36518 Thu Dec 16 16:29:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36520         * ext/tk/sample/demos-en/widget: modify version check for
36521           supporting features
36523 Thu Dec 16 16:03:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36525         * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]
36527         * ext/tk/lib/tk/timer.rb: accept :idle for the interval argument
36529         * ext/tk/lib/tk.rb: add TkComm._callback_entry?()
36531         * ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class
36533         * ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?()
36535         * ext/tk/lib/tk/canvastag.rb: ditto
36537         * ext/tk/lib/tk/dialog.rb: ditto
36539         * ext/tk/lib/tk/optiondb.rb: ditto
36541         * ext/tk/lib/tk/text.rb: ditto
36543         * ext/tk/lib/tk/texttag.rb: ditto
36545         * ext/tk/lib/tk/textwindow.rb: ditto
36547         * ext/tk/lib/tk/timer.rb: ditto
36549         * ext/tk/lib/tk/validation.rb: ditto
36551         * ext/tk/lib/tkextlib/*: ditto
36553 Thu Dec 16 04:02:28 2004  Minero Aoki  <aamine@loveruby.net>
36555         * ext/ripper/extconf.rb: bison is not needed if ripper.c exists.
36556           [ruby-dev:25191]
36558 Thu Dec 16 03:27:10 2004  Minero Aoki  <aamine@loveruby.net>
36560         * lib/net/http.rb: remove junk.
36562 Thu Dec 16 00:57:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36564         * ext/syck/rubyext.c (rb_syck_io_str_read): [ruby-core:03973]
36566 Thu Dec 16 00:43:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36568         * lib/drb/drb.rb: changed default binded address family to use an
36569           available address family of host name. [druby-ja:101]
36571         * lib/drb/ssl.rb: ditto
36573 Wed Dec 15 17:47:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36575         * lib/webrick/server.rb (WEBrick::GenericServer#start_thread):
36576           should log about all accepted socket. [ruby-core:03962]
36578         * lib/webrick/accesslog.rb (WEBrick::AccessLog#setup_params):
36579           "%%" and "%u" are supported. [webricken:135]
36581         * lib/webrick/httpservlet/filehandler.rb
36582           (WEBrick::HTTPServlet::FileHandler#check_filename):
36583           :NondisclosureName is acceptable if it is Enumerable.
36585         * lib/webrick/config.rb (WEBrick::Config::FileHandler):
36586           default value of :NondisclosureName is [".ht*", "*~"].
36588 Wed Dec 15 16:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36590         * object.c (rb_obj_id_obsolete): warn always.
36592 Wed Dec 15 15:31:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36594         * lib/set.rb (Set#==): [ruby-dev:25206]
36596 Wed Dec 15 14:32:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36598         * win32/win32.c (rb_w32_fdisset): check whether the handle is valid.
36600 Wed Dec 15 10:30:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36602         * ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]
36604 Tue Dec 14 19:17:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36606         * utf8.c (utf8_is_mbc_ambiguous): [ruby-talk:123561]
36608         * utf8.c (utf8_mbc_to_normalize): ditto.
36610 Tue Dec 14 17:08:15 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36612         * win32/win32.c (rb_w32_close): need to reset osfhnd().
36614 Tue Dec 14 14:03:57 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36616         * ext/openssl/ossl.c (ossl_raise): avoid buffer overrun.
36617           [ruby-dev:25187]
36619 Tue Dec 14 12:36:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36621         * lib/cgi/session.rb (CGI::Session::initialize): generate new
36622           session if given session_id does not exist.  [ruby-list:40368]
36624 Tue Dec 14 08:47:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36626         * eval.c (Init_eval): should mark ruby_eval_tree.  [ruby-dev:25189]
36628 Mon Dec 13 18:13:52 2004  Tanaka Akira  <akr@m17n.org>
36630         * gc.c (set_stack_end): new function to obtain stack end address.
36631           set_stack_end obtains a stack end address by an address of local
36632           variable in the function.
36633           (SET_STACK_END, STACK_END): use set_stack_end.  don't use alloca.
36634           This makes the conservative garbage collector to scan a stack frame
36635           of the garbage_collect function itself.  This is required because
36636           callee-save registers may be stored in the frame.
36637           [ruby-dev:25158]
36639 Mon Dec 13 02:45:51 2004  Shugo Maeda  <shugo@ruby-lang.org>
36641         * ext/curses/curses.c (window_subwin): call NUM2INT() before
36642           GetWINDOW(). fixed: [ruby-dev:25161]
36644 Mon Dec 13 00:58:02 2004  Tanaka Akira  <akr@m17n.org>
36646         * lib/pathname.rb (cleanpath_aggressive): make it private.
36647           (cleanpath_conservative): ditto.
36648           Suggested by Daniel Berger.  [ruby-core:3914]
36650 Sun Dec 12 21:32:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36652         * test/ruby/test_super.rb (TestSuper#test_define_method): now methods
36653           from procs can call super.
36655 Sun Dec 12 10:35:10 2004  Dave Thomas  <dave@pragprog.com>
36657         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Don't
36658           show an accessor's r/w flag if none was specified
36660 Sun Dec 12 10:14:03 2004  Dave Thomas  <dave@pragprog.com>
36662         * lib/rdoc/rdoc.rb (RDoc::RDoc::parse_files): Never exclude files
36663           explicitly given on the command line.
36665 Sat Dec 11 21:10:16 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36667         * lib/drb/drb.rb: add DRbRemoteError. [ruby-list:40348],
36668           [ruby-list:40390]
36670         * test/drb/drbtest.rb: ditto.
36672         * test/drb/ut_drb.rb: ditto.
36674 Sat Dec 11 13:08:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36676         * sample/optparse/subcommand.rb: a sample for sub commands like
36677           cvs.  contributed by Minero Aoki.
36679 Fri Dec 10 08:39:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36681         * ext/socket/socket.c (sock_listen): get OpenFile just before calling
36682           listen(2).
36684 Thu Dec  9 16:28:35 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36686         * ext/sdbm/init.c (GetDBM): typo.
36688 Thu Dec  9 16:21:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36690         * lib/webrick/cgi.rb (WEBrick::CGI#setup_header): avoid
36691           SecurityError. [ruby-dev:24970]
36693         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should wait
36694           for reading request till data arrive. [ruby-talk:121068]
36696 Thu Dec  9 14:38:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36698         * string.c (rb_str_inspect): escape # which starts an expression
36699           substitution.  fixed: [ruby-core:03922]
36701         * string.c (rb_str_dump): not escape # which isn't a substitution.
36703 Thu Dec  9 12:31:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36705         * io.c (pipe_open): should set prog if argc != 0.
36707 Thu Dec  9 10:54:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36709         * ext/dbm/dbm.c (fdbm_select): [ruby-dev:25132]
36711         * ext/sdbm/init.c: ditto.
36713         * ext/gdbm/gdbm.c: ditto.
36715 Thu Dec  9 10:19:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36717         * test/socket/test_socket.rb (test_setsockopt): use SO_LINGER instead
36718           of SO_BINDTODEVICE.  fixed: [ruby-dev:25133]
36720 Thu Dec  9 03:08:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36722         * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" when
36723           the running script is '-e one-liner' or '-' (stdin).
36725         * ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for
36726           stub libs
36728         * ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor
36729           have a wrong parent class.
36731         * ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and
36732           TkWarning2 --> TkWarningObj (old names are changed to alias names)
36734         * ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command'
36735           option and hashes for configuration
36737         * ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the
36738           button name
36740         * ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==>
36741           get_value() and value=(val) ==> set_value(val).
36743         * ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec
36745         * ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton,
36746           TkOptionMenuButton = TkOptionMenubutton)
36748         * ext/tk/lib/tk/event.rb: new method aliases (same as option keys of
36749           event_generate) for Event object
36751         * ext/tk/lib/tk/font.rb: configinfo returns proper types of values
36753         * ext/tk/lib/tk.rb: bind methods accept subst_args + block
36755         * ext/tk/lib/tk/canvas.rb: ditto
36757         * ext/tk/lib/tk/canvastag.rb: ditto
36759         * ext/tk/lib/tk/frame.rb: ditto
36761         * ext/tk/lib/tk/text.rb: ditto
36763         * ext/tk/lib/tk/texttag.rb: ditto
36765         * ext/tk/lib/tk/toplevel.rb: ditto
36767         * ext/tk/lib/tkextlib/*: ditto and bug fix
36769 Wed Dec  8 23:54:29 2004  Dave Thomas  <dave@pragprog.com>
36771         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Typo
36772           meant that h2 tag was invisible.
36774 Wed Dec  8 22:10:02 2004  Tanaka Akira  <akr@m17n.org>
36776         * rubyio.h, io.c, ext/dl/dl.c, ext/pty/pty.c, ext/socket/socket.c:
36777           create FILE object only when required: popen(3) and DL's IO#to_ptr.
36778           [ruby-dev:25122]
36780         * io.c (rb_io_binmode): use setmode for Human68k.  [ruby-dev:25121]
36782 Wed Dec  8 20:13:06 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36784         * process.c (rb_spawn): support for DJGPP.
36786         * lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.
36788 Wed Dec  8 17:48:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36790         * eval.c (proc_invoke): merge Guy Decoux's argument preserve
36791           patch in [ruby-core:03874].
36793 Wed Dec  8 17:37:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36795         * win32/win32.c (rb_w32_pipe_exec): need to close original socket
36796           handle.
36798 Wed Dec  8 14:31:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36800         * sprintf.c (rb_f_sprintf): [ruby-dev:25104]
36802 Wed Dec  8 13:49:46 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36804         * win32/win32.c (rb_w32_pipe_exec): must close original handle
36805           before exec. fixed: [ruby-dev:25112]
36807 Wed Dec  8 11:46:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36809         * parse.y (string_content): get rid of segfault at empty evstr.
36810           fixed: [ruby-dev:25113]
36812 Wed Dec  8 03:26:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36814         * ext/openssl/ossl_bio.c (ossl_obj2bio): should not use fptr->f.
36815           [ruby-dev:25101]
36817 Wed Dec  8 03:26:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36819         * runruby.rb: prepend LIBRUBY_SO to LD_PRELOAD as well as rubytest.rb.
36821 Wed Dec  8 01:35:44 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36823         * win32/win32.c (is_socket): reorder of function definitions.
36825 Wed Dec  8 00:44:31 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36827         * io.c (pipe_open): win32 bidirectional pipe support.
36829         * win32/win32.[ch] (rb_w32_pipe_exec): ditto.
36831         * win32/win32.[ch] (socketpair): new function. POSIX socketpair
36832           emulation.
36834         * win32/win32.c (socketpair_internal): ditto.
36836 Wed Dec  8 00:25:07 2004  Kouhei Sutou  <kou@cozmixng.org>
36838         * test/rss/test_version.rb: added version check test.
36839           [ruby-dev:25053]
36841 Tue Dec  7 15:40:38 2004  Tanaka Akira  <akr@m17n.org>
36843         * io.c (io_fwrite): avoid context switch before writing to stderr.
36844           [ruby-dev:25080]
36846         * rubyio.h: refine deprecated declaration.
36848         * configure.in, file.c, io.c: remove useless check: fseeko, etc.
36850 Tue Dec  7 13:42:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36852         * dir.c (dir_s_mkdir): win32 special processing doesn't need any
36853           longer.
36855         * win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible
36856           interface.
36858         * win32/win32.[ch] (rb_w32_rmdir): new function.
36860 Tue Dec  7 00:27:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36862         * process.c (proc_setgroups): [ruby-dev:25081]
36864 Mon Dec  6 23:07:57 2004  Tanaka Akira  <akr@m17n.org>
36866         * configure.in: check -lsocket for socketpair and shutdown.
36867           reported by Ville Mattila.  [ruby-core:03903]
36869 Mon Dec  6 23:00:45 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36871         * configure.in (ac_cv_sizeof_rlim_t): setup for DJGPP.
36873         * io.c (is_socket, shutdown): define dummy macros for DJGPP.
36875         * process.c: use SIZEOF_RLIM_T instead of HAVE_RLIM_T for DJGPP.
36877 Mon Dec  6 21:19:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36879         * io.c (is_socket): fix typos. [ruby-core:03900]
36881 Mon Dec  6 20:13:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36883         * io.c (is_socket): new function.
36885         * io.c (rb_io_close_read, rb_io_close_write): use is_socket().
36887         * io.c (rb_io_fptr_finalize): need to check fptr->f before calling
36888           rb_io_fptr_cleanup().
36890         * io.c (pipe_open): win32 pipe support (experimental).
36892         * win32/win32.[ch] (rb_w32_pipe_exec): return file descriptors
36893           instead of FILE structure objects.
36895         * win32/win32.[ch] (rb_w32_is_socket): new function.
36897 Mon Dec  6 19:40:40 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36899         * Makefile.in (.y.c): simplify the rule.
36901 Mon Dec  6 18:08:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36903         * re.c (rb_reg_eqq): document fix.  [ruby-talk:122541]
36905 Mon Dec  6 17:49:30 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36907         * eval.c (run_trap_eval): add prototype for Microsoft compiler.
36909 Mon Dec  6 17:32:38 2004  Tanaka Akira  <akr@m17n.org>
36911         * rubyio.h, intern.h, io.c, file.c, process.c, ext/socket/socket.c,
36912           ext/pty/pty.c, ext/io/wait/wait.c, ext/openssl/ossl_ssl.c:
36913           Use own buffering mechanism instead of stdio.  [ruby-dev:25056]
36915         * io.c, ext/stringio/stringio.c, test/ruby/ut_eof.rb:
36916           EOF flag removed.
36918 Mon Dec  6 17:15:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36920         * test/socket/test_socket.rb (TestBasicSocket#test_setsockopt):
36921           BasicSocket#setsockopt dumps core.  [ruby-dev:25039]
36923         * test/socket/test_tcp.rb (TestTCPSocket#test_recvfrom):
36924           TCPSocket#recvfrom dumps core.  [ruby-dev:24705]
36926         * test/socket/test_udp.rb (TestUDPSocket#test_connect):
36927           UDPSocket#connect dumps core.  [ruby-dev:25045]
36929         * test/socket/test_udp.rb (TestUDPSocket#test_bind):
36930           UDPSocket#bind dumps core.  [ruby-dev:25057]
36932 Mon Dec  6 09:59:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36934         * io.c (io_fread): take VALUE argument.
36936         * ext/socket/socket.c (sock_connect): use rb_str_new4().
36937           [ruby-dev:25052]
36939         * eval.c (rb_yield_0): [ruby-dev:25051]
36941 Mon Dec  6 01:32:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36943         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,
36944           ossl_rsa_public_decrypt, ossl_rsa_private_encrypt,
36945           ossl_rsa_private_decrypt): should take an optional argument
36946           to specify padding mode. [ruby-talk:122539]
36948         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): add new constants
36949           PKCS1_PADDING, SSLV23_PADDING, NO_PADDING and PKCS1_OAEP_PADDING
36950           under OpenSSL::PKey::RSA.
36952         * test/openssl/test_pkey_rsa.rb: new file.
36954 Sun Dec  5 19:39:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36956         * lib/optparse.rb (OptionParser::Completion#complete): new parameter
36957           to direct case insensitiveness.
36959         * lib/optparse.rb (OptionParser#order!): ignore case only for long
36960           option.  [ruby-dev:25048]
36962 Sun Dec  5 00:54:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
36964         * mkconfig.rb: setup library paths before requiring library.
36965           [ruby-core:03892]
36967 Sat Dec  4 22:54:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36969         * io.c (io_write): remove rb_str_locktmp().  [ruby-dev:25050]
36971         * io.c (io_fwrite): takes VALUE string as an argument.
36972           [ruby-dev:25050]
36974         * ext/socket/socket.c (sock_connect): remove rb_str_locktmp().
36975           [ruby-dev:25050]
36977         * ext/socket/socket.c (udp_connect): [ruby-dev:25045]
36979         * ext/socket/socket.c (udp_bind): ditto.
36981         * ext/socket/socket.c (udp_send): ditto.
36983         * ext/socket/socket.c (bsock_send): ditto.
36985         * ext/socket/socket.c (s_recvfrom): ditto.
36987         * hash.c (rb_hash_hash): should provide "hash" method where "eql?"
36988           is redefined.  [ruby-talk:122482]
36990 Sat Dec  4 21:29:05 2004  Minero Aoki  <aamine@loveruby.net>
36992         * lib/fileutils.rb: (In previous commit) new method chown.
36994         * lib/fileutils.rb: (In previous commit) new method chown_R.
36996         * lib/fileutils.rb: (In previous commit) new method chmod_R
36997           wrongly added.  Removed now.
36999 Sat Dec  4 20:45:52 2004  Minero Aoki  <aamine@loveruby.net>
37001         * lib/fileutils.rb (mkdir, mkdir_p): should chmod explicitly.
37002           [ruby-core:03881]
37004 Sat Dec  4 18:54:09 2004  Kouhei Sutou  <kou@cozmixng.org>
37006         * lib/rss/rss.rb: removed empty lines from output.
37008 Sat Dec  4 18:49:09 2004  Kouhei Sutou  <kou@cozmixng.org>
37010         * lib/rss/rss.rb (RSS::VERSION): 0.1.1 -> 0.1.2
37012         * lib/rss/rss.rb: #item=/#set_item and so on are obsolete.
37014 Sat Dec  4 14:28:56 2004  Dave Thomas  <dave@pragprog.com>
37016         * lib/rdoc/code_objects.rb (RDoc::Context::Section::set_comment):
37017           Section comments may now be bracketed by lines which are
37018           ignored. You can now write
37019               # -----------
37020               # :section: Dave's Section
37021               # comment material
37022               # -----------
37023            The lines before :section: are removed, and identical lines at the end are
37024            also removed if present.
37026 Sat Dec  4 00:35:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37028         * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039]
37030 Fri Dec  3 12:25:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37032         * st.h: fix prototype for C++.
37034 Fri Dec  3 01:55:24 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37036         * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing
37037           returns proper object. "widget.option = val" returns val, and
37038           "widget.option(val)" returns self.
37040         * ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument.
37042         * ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and
37043           TkRadiobutton#value=(val).
37045         * ext/tk/lib/tk/spinbox.rb: callback substitution support on
37046           command option.
37048         * ext/tk/sample/demos-en/widget: bug fix (wrong image height)
37050         * ext/tk/sample/demos-jp/widget: ditto.
37052 Fri Dec  3 00:21:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37054         * eval.c (proc_invoke): prepare to pass a block from "call" method
37055           to a Proc generated by Method#to_proc.  [ruby-dev:25031]
37057         * eval.c (rb_yield_0): actually passes a block given to "call".
37059         * object.c (convert_type): use rb_respond_to() again.  this fix is
37060           based on [ruby-dev:25021]
37062         * eval.c (rb_respond_to): funcall respond_to? if it's redefined.
37063           [ruby-dev:25021]
37065 Thu Dec  2 15:13:53 2004  Michael Neumann  <mneumann@ruby-lang.org>
37067         * test/xmlrpc/test_parser.rb, test/xmlrpc/data/*.expected: Expected
37068           values are now stored in YAML instead of using #inspect. This fixes
37069           false hash order.
37071 Fri Dec  3 00:11:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37073         * io.c (rb_file_initialize): [ruby-dev:25032]
37075 Thu Dec  2 16:41:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37077         * eval.c (rb_protect): prevent continuations created inside from being
37078           called from the outside.  [ruby-dev:25003]
37080         * eval.c (rb_callcc, rb_cont_call): prohibit calling from different
37081           signal contexts.  [ruby-dev:25022]
37083 Thu Dec  2 10:45:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
37085         * test/readline/test_readline.rb: fix for NetBSD.
37087 Thu Dec  2 09:57:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37089         * lib/ostruct.rb (OpenStruct::Marshaler): OpenStruct can be
37090           marshaled again.  [ruby-core:03862]
37092 Thu Dec  2 09:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37094         * eval.c (thread_mark): mark thread group.  [ruby-dev:25020]
37096         * eval.c (thgroup_add): check whether the argument is really a Thread.
37098 Thu Dec  2 07:57:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37100         * io.c (rb_io_ctl): [ruby-dev:25019]
37102 Wed Dec  1 06:13:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
37104         * ext/nkf/nkf.c: add constant NKF::VERSION
37106         * ext/nkf/nkf.c(guess): this becomes an alias of guess2
37108         * ext/nkf/test.rb: add --no-cp932
37110         * ext/nkf/nkf-utf8/nkf.c: original nkf2 revision 1.47
37112 Wed Dec  1 02:21:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37114         * signal.c (sighandler): call handler immediately only for default
37115           handlers.  [ruby-dev:25003]
37117 Tue Nov 30 23:49:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37119         * io.c (pipe_open): errno should be preserved for rb_sys_fail() when
37120           fork failed.
37122 Tue Nov 30 16:18:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37124         * io.c (io_fread): need not to null terminate.  [ruby-dev:24998]
37126         * eval.c (rb_eval): should check previous frame for ZSUPER.
37128         * io.c (read_all): remove unnecessary rb_str_resize().
37129           [ruby-dev:24996]
37131         * io.c (io_readpartial): ditto.
37133         * io.c (io_read): ditto.
37135 Tue Nov 30 14:58:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37137         * instruby.rb (install): add arguments explicitly to "super".
37139 Tue Nov 30 00:49:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37141         * eval.c (PUSH_FRAME): flags should have been initialized.
37143         * eval.c (rb_eval): [ruby-core:03856]
37145         * io.c (rb_io_sysread): use temporary lock.  [ruby-dev:24992]
37147 Tue Nov 30 00:12:57 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37149         * regparse.c: now handles many alternatives (over 500000)
37150           in regexp. [ruby-dev:24773]
37152 Mon Nov 29 16:06:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37154         * ext/stringio/stringio.c (strio_write): insufficiently filled string
37155           being extended when overwriting.  [ruby-core:03836]
37157 Mon Nov 29 15:59:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37159         * lib/ostruct.rb (OpenStruct::method_missing): check method
37160           duplication for -d.
37162         * lib/ostruct.rb (OpenStruct::initialize): ditto.
37164 Mon Nov 29 15:22:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37166         * test/io/nonblock/test_flush.rb: abandon tests when io/nonblock is
37167           not supported.
37169 Mon Nov 29 13:37:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37171         * io.c (fptr_finalize): must not use FILE after fclose().
37172           [ruby-dev:24985]
37174 Mon Nov 29 13:13:13 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37176         * win32/win32.c (CreateChild): push back the last space before next
37177           loop because CharNext() eats it.
37179 Mon Nov 29 03:08:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37181         * object.c (convert_type): [ruby-core:03845]
37183         * eval.c (rb_funcall_rescue): new function.
37185         * object.c (rb_Array): avoid using rb_respond_to().
37187         * object.c (rb_Integer): ditto.
37189         * eval.c (get_backtrace): no conversion for nil.
37191         * parse.y (reduce_nodes): empty body should return nil.
37193 Mon Nov 29 01:18:18 2004  Tanaka Akira  <akr@m17n.org>
37195         * io.c (rb_io_check_writable): call io_seek regardless of
37196           NEED_IO_SEEK_BETWEEN_RW.  [ruby-dev:24986]
37198 Sun Nov 28 15:57:58 2004  Kouhei Sutou  <kou@cozmixng.org>
37200         * lib/rss/rss.rb (RSS::Element#tag): not use block_given? for
37201           working with ruby 1.6 again.
37203         * lib/rss/{0.9,2.0,trackback}.rb, lib/rss/maker/base.rb:
37204           undef -> remove_method for working with ruby 1.6 again.
37206 Sun Nov 28 15:51:40 2004  Kouhei Sutou  <kou@cozmixng.org>
37208         * lib/rss/rss.rb (RSS::NotSetError): added.
37210         * lib/rss/maker/{1.0,0.9,2.0}.rb: changed RSS Maker to raise
37211           RSS::NotSetError if required values of maker.channel are not
37212           set. [ruby-talk:120061]
37214         * test/rss/test_maker_{1.0,0.9,2.0}.rb: changed tests to check RSS
37215           Maker raises or not.
37217 Sun Nov 28 12:14:47 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37219         * regparse.c (fetch_token): fixed test failure on HP-UX ia64
37220           ([ruby-dev:24859]).
37222 Sun Nov 28 12:08:15 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37224         * regparse.c, test/ruby/test_regexp.rb: fixed problem with UTF-8
37225           characters that have U+00FE or invalid characters.
37227 Sun Nov 28 12:07:04 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37229         * regexec.c, test/ruby/test_regexp.rb: fixed segmentation fault
37230           ([ruby-dev:24887]).
37232 Sun Nov 28 12:05:48 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37234         * regcomp.c, regint.h: fixed PLATFORM_UNALIGNED_WORD_ACCESS
37235           problem ([ruby-dev:24802] and [ruby-core:3733])
37237 Sat Nov 27 23:43:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37239         * io.c (rb_io_initialize): [ruby-dev:24972]
37241 Sat Nov 27 21:43:39 2004  Tanaka Akira  <akr@m17n.org>
37243         * io.c: avoid data lost with nonblocking fd and
37244           stdio buffering in sync mode.  [ruby-dev:24966]
37245           based on matz's patch [ruby-dev:24967]
37246           (io_fwrite): new primitive writing function which writes
37247           directly if sync mode.
37248           (rb_io_fwrite): wrapper for io_fwrite now.
37249           (io_write): call io_fwrite instead of rb_io_fwrite.
37251 Sat Nov 27 17:43:21 2004  Kouhei Sutou  <kou@cozmixng.org>
37253         * lib/rss/{0.9,1.0,2.0,trackback,xml-stylesheet}.rb: added
37254           #setup_maker.
37256         * test/rss/test_setup_maker_*.rb: added tests for #setup_maker.
37258         * lib/rss/maker/base.rb(RSS::Maker::Items#max_size=): supported
37259           output item size limitation.
37261         * sample/rss/blend.rb: added sample for RSS Maker.
37263 Sat Nov 27 17:41:35 2004  Kouhei Sutou  <kou@cozmixng.org>
37265         * lib/rss/maker/0.9.rb: supported RSS::Maker.make("0.91"). Now,
37266           "0.9" is just alias of "0.91."
37268         * test/rss/test_maker_0.9.rb: make("0.9") -> maker("0.91").
37270         * test/rss/test_to_s.rb: ditto.
37272 Sat Nov 27 17:21:30 2004  Kouhei Sutou  <kou@cozmixng.org>
37274         * sample/rss/list_description.rb: untabified.
37276         * sample/rss/rss_recent.rb: ditto.
37278 Sat Nov 27 14:44:15 2004  Kent Sibilev  <ksibilev@bellsouth.net>
37280         * lib/cgi/session.rb (CGI::Session::initialize): [ruby-core:03832]
37282 Sat Nov 27 09:41:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37284         * io.c (io_fread): old rb_io_fread with file closing checking.
37285           (rb_io_fread): wrapper for io_fread now.
37286           [ruby-dev:24964]
37288 Fri Nov 26 18:02:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37290         * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epath
37292         * ext/tk/lib/tk/image.rb: bug fix
37294         * ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only)
37296         * ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath
37298 Fri Nov 26 14:29:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37300         * io.c (rb_io_initialize): uninitialized fd was checked to see open
37301           mode.  [ruby-dev:24963]
37303         * io.c (rb_io_initialize): uninitialized fd was used.  [ruby-dev:24962]
37305 Fri Nov 26 13:49:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37307         * io.c (rb_io_initialize): should retrieve flags from copying file
37308           descriptor. [ruby-dev:24961]
37310         * eval.c (method_missing): raise TypeError for classes do not
37311           have allocators.  [ruby-core:03752]
37313         * lib/erb.rb: add RDoc by James Edward Gray II.  [ruby-core:03786]
37315 Fri Nov 26 13:29:02 2004  Dave Thomas  <dave@pragprog.com>
37317         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::look_for_directives_in): Break
37318           out of preprocessing when we find a :section: directive (previously cleared out the
37319           comment, but this apparently now generates an error in gsub!)
37321 Fri Nov 26 00:17:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37323         * io.c (io_read): move StringValue() check before GetOpenFile().
37324           [ruby-dev:24959]
37326 Thu Nov 25 20:14:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37328         * lib/thwait.rb (ThreadsWait#join_nowait): abnormally terminated
37329           threads should be also processed.  [ruby-talk:121320]
37331 Thu Nov 25 18:06:37 2004  Tanaka Akira  <akr@m17n.org>
37333         * configure.in: AC_CHECK_SIZEOF(rlim_t) to include stdio.h to fix
37334           problem with autoconf 2.52 or earlier.
37335           revert AC_PREREQ to 2.50.
37336           [ruby-core:3809]
37338 Thu Nov 25 07:59:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37340         * configure.in: AC_PREREQ(2.53) [ruby-core:03800]
37342         * io.c (read_all): stringify non-nil buffer argument, and always
37343           taint the result.  [ruby-dev:24955]
37345 Wed Nov 24 01:01:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37347         * io.c (io_read): integer conversion should be prior to
37348           GetOpenFile().  [ruby-dev:24952]
37350         * configure.in, io.c: cancel [ ruby-Patches-1074 ].
37352 Tue Nov 23 08:09:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37354         * ext/tk/lib/tk/menu.rb: improve usability of TkOptionMenubutton
37356 Tue Nov 23 02:00:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37358         * file.c (rb_file_chown): integer conversion should be prior to
37359           GetOpenFile().  [ruby-dev:24949]
37361 Tue Nov 23 00:10:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37363         * file.c (rb_file_chown): integer conversion should be prior to
37364           GetOpenFile().  [ruby-dev:24947]
37366         * file.c (rb_file_truncate): ditto.
37368         * file.c (rb_file_s_truncate): ditto.
37370         * dir.c (dir_seek): use NUM2OFFT().
37372         * misc/ruby-mode.el (ruby-non-block-do-re): [ruby-core:03719]
37374 Mon Nov 22 22:33:02 2004  Dave Thomas  <dave@pragprog.com>
37376         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Don't use names
37377           of variables or constants when parsing 'require'
37379 Mon Nov 22 00:13:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37381         * dir.c (dir_seek): should retrieve dir_data after NUM2INT().
37382           [ruby-dev:24941]
37384 Sat Nov 20 23:57:33 2004  Dave Thomas  <dave@pragprog.com>
37386         * lib/rdoc/README (et al): Add a new directive, :section:, and
37387           change the output format to accommodate. :section: allows to to
37388           group together methods, attributes, constants, etc under
37389           headings in the output. If used, a table of contents is
37390           generated.
37392 Sat Nov 20 23:56:54 2004  Dave Thomas  <dave@pragprog.com>
37394         * lib/rdoc/options.rb (Options::parse): Force --inline-source if
37395           --one-file option given
37397 Sat Nov 20 23:55:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37399         * string.c (rb_str_splice): should place index wrapping after
37400           possible modification.  [ruby-dev:24940]
37402 Sat Nov 20 23:25:12 2004  Minero Aoki  <aamine@loveruby.net>
37404         * io.c (rb_io_getline): f.gets("") did not work. [ruby-core:03771]
37406         * test/ruby/test_io.rb (test_gets_rs): test it.
37408 Sat Nov 20 22:55:09 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37410         * test/runner.rb (CROSS_COMPILING): need to require rbconfig.rb before
37411           using CROSS_COMPILNG.
37413 Sat Nov 20 20:42:42 2004  Minero Aoki  <aamine@loveruby.net>
37415         * ext/ripper/depend: fix ripper.o dependency.
37417 Sat Nov 20 17:48:29 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37419         * io.c (io_reopen): work around problem with Cygwin fseeko
37420           returning ESPIPE.
37422 Sat Nov 20 05:34:24 2004  NARUSE, Yui  <naruse@ruby-lang.org>
37424         * ext/nkf/nkf-utf8/nkf.c: original nkf.c rev:1.40
37426         * ext/nkf/test.rb: add test for mime encode/decode
37428 Sat Nov 20 01:45:04 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37430         * test/xmlrpc/test_webrick_server.rb: move `requrie "webrick/https"'
37431           into #setup_http_server method to avoid soap test errors.
37433 Sat Nov 20 01:37:34 2004  Johan Holmberg  <holmberg@iar.se>
37435         * eval.c (error_print): nicer traceback at interrupt.
37436           [ruby-core:03774]
37438 Sat Nov 20 00:07:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37440         * string.c (str_gsub): internal buffer should not be listed by
37441           ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]
37443 Fri Nov 19 22:44:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37445         * lib/test/unit/collector/dir.rb: better support for -p/-x option.
37447 Fri Nov 19 17:46:56 2004  Kouhei Sutou  <kou@cozmixng.org>
37449         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Image#have_required_values):
37450           changed /rss/channel/image to be optional. [ruby-Bugs:1047]
37452         * test/rss/test_maker_0.9.rb: added tests for the above.
37454 Fri Nov 19 17:18:17 2004  Kouhei Sutou  <kou@cozmixng.org>
37456         * lib/rss/rss.rb (RSS::VERSION): 0.1.0 -> 0.1.1.
37458         * lib/rss: #to_s used #tag.
37460         * test/rss/test_to_s.rb: added.
37462         * lib/rss/maker.rb (RSS::Maker.make): changed API. It's not
37463           received modules which is used as the second argument.
37465         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#alternate):
37466           changed return value type which is not String but Boolean.
37468         * lib/rss/2.0.rb (RSS::Rss::Channel#ttl): changed return value
37469           type which is not String but Integer.
37471         * lib/rss/0.9.rb (RSS::Rss::Channel): <skipDays> has <day>s and
37472           <skipHours> has <hour>s.
37474         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Channel): ditto.
37476         * lib/rss/0.9.rb (RSS::Rss::Channel::Item): <item> has <category>s.
37478         * lib/rss/maker/2.0.rb (RSS::Maker::Rss20::Channel::Item): ditto.
37480         * lib/rss/2.0.rb (RSS::Rss::Channel): <channel> has <category>s.
37482         * lib/rss/maker/2.0.rb (RSS::Maker::RSS20::Channel): ditto.
37484         * lib/rss/trackback.rb: parent element has <trackback:about>s.
37486         * lib/rss/maker/trackback.rb: ditto.
37488 Fri Nov 19 11:10:16 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37490         * lib/test/unit/collector/dir.rb: add support for directory name
37491           with -p/-x options.
37493         * test/testunit/collector/test_dir.rb: ditto.
37495         * lib/xmlrpc/datetime.rb (XMLRPC::DateTime#==): should use Array()
37496           instead of to_a.
37498 Fri Nov 19 10:32:36 2004  Shugo Maeda  <shugo@ruby-lang.org>
37500         * ext/readline/readline.c (readline_s_set_completion_append_character):
37501           accept nil.  [ruby-core:03765]
37503 Fri Nov 19 01:20:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37505         * lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
37506           exception if data corresponding to session specified from the
37507           client does not exist.
37509 Fri Nov 19 00:59:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37511         * string.c (str_gsub): internal buffer should not be listed by
37512           ObjectSpace.each_object().  [ruby-dev:24919]
37514 Thu Nov 18 23:42:36 2004  Minero Aoki  <aamine@loveruby.net>
37516         * ext/ripper/depend: Never regenerate lib/ripper/core.rb
37517           automatically. [ruby-dev:24911]
37519 Thu Nov 18 20:47:24 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37521         * win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT's
37522           isatty because it never sets errno.
37524 Thu Nov 18 18:41:08 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
37526         * test/ruby/test_stringchar.rb (test_bang): added.
37528         * string.c (rb_str_upcase_bang, rb_str_capitalize_bang)
37529           (rb_str_swapcase_bang): missing rb_str_modify().
37531 Thu Nov 18 17:05:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37533         * parse.y (f_rest_arg): store rest args into invisible local variable
37534           in order to get rid of SEGV at ZSUPER.  [ruby-dev:24913]
37536 Thu Nov 18 15:39:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37538         * hash.c (rb_f_getenv): prohibit for $SAFE=4. [ruby-dev:24908]
37540 Thu Nov 18 14:58:42 2004  Shugo Maeda  <shugo@ruby-lang.org>
37542         * ext/readline/readline.c: check $SAFE.
37544         * test/readline/test_readline.rb: added tests for readline.
37546 Thu Nov 18 00:21:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37548         * process.c (proc_getpgrp): prohibit for $SAFE=2.
37549           [ruby-dev:24899]
37551         * process.c (get_pid): ditto.  [ruby-dev:24904]
37553         * process.c (get_ppid): ditto.
37555         * array.c (rb_ary_delete): defer rb_ary_modify() until actual
37556           modification.  [ruby-dev:24901]
37558 Thu Nov 18 10:10:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37560         * io.c, rubyio.h (rb_io_modenum_flags): exported.
37562         * ext/stringio/stringio.c (strio_initialize): allow Fixnum as mode as
37563           well as IO.new does.  [ruby-dev:24896]
37565 Wed Nov 17 23:47:30 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37567         * test/ruby/test_settracefunc.rb: added.  [ruby-dev:24884]
37569 Wed Nov 17 18:59:16 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
37571         * process.c (proc_getrlimit, proc_setrlimit): add rb_secure(2) to
37572           methods of Process.{getrlimit,setrlimit}
37574 Wed Nov 17 13:56:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37576         * parse.y (newline_node): should not use FL_SET. [ruby-dev:24874]
37578         * parse.y (string_content): should not use FL_UNSET.
37580         * node.h (NODE_NEWLINE): remove unused bit to utilize flag field
37581           in nodes.
37583 Wed Nov 17 13:05:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37585         * dir.c (rb_push_glob): fix overrun.  [ruby-dev:24886]
37587 Wed Nov 17 11:48:17 2004  Michael Neumann  <mneumann@ruby-lang.org>
37589         * lib/xmlrpc/parser.rb, test/xmlrpc/test_features.rb: fixed "assigning
37590           to constants" warnings
37592 Wed Nov 17 09:38:18 2004  Johan Holmberg  <holmberg@iar.se>
37594         * re.c (rb_reg_initialize_m): should raise exception instead of
37595           compile error.  [ruby-core:03755]
37597 Wed Nov 17 03:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37599         * string.c (rb_str_splice): move rb_str_modify() after
37600           StringValue(), which may alter the receiver.  [ruby-dev:24878]
37602         * error.c (rb_error_frozen): now raise RuntimeError instead of
37603           TypeError.
37605 Tue Nov 16 21:22:47 2004  Michael Neumann  <mneumann@ruby-lang.org>
37607         * lib/xmlrpc/server.rb (CGIServer): fixed bug when client sends
37608           "Content-typ: text/xml; ..."
37610 Tue Nov 16 23:45:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37612         * numeric.c (flo_divmod): protect float values from GC by
37613           assignment to local variables.  [ruby-dev:24873]
37615 Tue Nov 16 14:31:54 2004  Michael Neumann  <mneumann@ruby-lang.org>
37617         * test/xmlrpc/*: imported and refactored original test cases.
37619         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
37620           added test case that starts up a WEBrick XML-RPC server and performs
37621           some tests on it (both http and https servers are started).
37623         * lib/xmlrpc/create.rb (XMLWriter::each_installed_writer),
37624           lib/xmlrpc/parser.rb (XMLParser::each_installed_parser):
37625           added methods to simply original test cases
37627         * lib/xmlrpc/parser.rb, lib/xmlrpc/datetime.rb: applied patch by
37628           MoonWolf <moonwolf@moonwolf.com> to allow parsing datetime.iso8601
37629           (e.g. 20041105T01:15:23Z).
37631         * lib/xmlrpc/server.rb: fixed issue #998
37632           (http://rubyforge.org/tracker/?func=detail&atid=1700&aid=998&group_id=426)
37634         * lib/xmlrpc/create.rb, lib/xmlrpc/utils.rb: when marshalling/loading
37635           user-defined data structures, use Class#allocate instead of defining
37636           an empty #initialize method. module XMLRPC::Marshallable is now only
37637           used for tagging.
37639         * lib/xmlrpc/.document, lib/xmlrpc/README.rdoc: added howto
37641 Tue Nov 16 16:26:12 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37643         * {bcc32,win32,wince}/setup.mak (-epilogue-): remove config.h and
37644           config.status to force updating them.
37646 Tue Nov 16 16:20:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37648         * ext/stringio/stringio.c (strio_read): position was ignored when a
37649           buffer was passed.  http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03
37651 Tue Nov 16 13:35:54 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37653         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): add
37654           new option --exclude (-x) to skip some tests. [ruby-core:3363],
37655           [ruby-dev:24865]
37657         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir.exclude):
37658           ditto.
37660 Tue Nov 16 11:19:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37662         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): use
37663           Regexp conversion.
37665 Tue Nov 16 01:41:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37667         * string.c (str_mod_check): frozen check should be separated.
37668           [ruby-core:3742]
37670         * array.c (rb_ary_update): pedantic check to detect
37671           rb_ary_to_ary() to modify the receiver.  [ruby-dev:24861]
37673 Mon Nov 15 18:58:05 2004  Tanaka Akira  <akr@m17n.org>
37675         * configure.in: check rlim_t more portably. [ruby-core:3735]
37677 Mon Nov 15 11:50:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37679         * misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle
37680           operator symbols.  [ruby-talk:120177]
37682 Mon Nov 15 08:58:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37684         * eval.c (Init_Proc): make proc as an alias to Proc.new.
37685           [ruby-dev:24848]
37687 Mon Nov 15 00:46:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37689         * eval.c (rb_yield_0): lambda{}.call(1) should raise exception.
37690           [ruby-talk:120253]
37692 Mon Nov 15 00:33:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37694         * string.c (rb_str_clear): avoid revealing NULL pointer.
37695           [ruby-dev:24766]
37697         * string.c (str_gsub): add paranoid check. [ruby-dev:24827]
37699         * string.c (str_mod_check): check frozen status as well.
37700           [ruby-dev:24801]
37702 Sun Nov 14 18:59:03 2004  Tanaka Akira  <akr@m17n.org>
37704         * process.c (proc_getrlimit): new function for Process.getrlimit.
37705           (proc_setrlimit): new function for Process.setrlimit.
37706           [ruby-dev:24834]
37708         * configure.in: check rlim_t and its size.  check setrlimit.
37710         * ruby.h (NUM2ULL): new macro.
37712 Sun Nov 14 13:27:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37714         * lib/pp.rb (PP#object_address_group): remove odd number of 'f'
37715           prefixed to negative address.
37717 Sun Nov 14 10:48:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37719         * lib/mathn.rb (Integer::gcd2): faster implementation by
37720           <erlercw@siu.edu>. [ruby-talk:120232]
37722 Sun Nov 14 08:46:33 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37724         * test/logger/test_logger.rb: Logger just expects
37725           Logger#datetime_format to be used for Time#strftime independently of
37726           locale. [ruby-dev:24828]
37728 Fri Nov 12 17:32:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37730         * bcc32/README.bcc32, win32/README.win32: need bison instead of
37731           byacc.
37733 Fri Nov 12 15:15:06 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37735         * eval.c (ruby_options): now we cannot call rb_glob() before
37736           ruby_init(), so call rb_w32_cmdvector() at ruby_options().
37738         * win32/win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
37739           export it.
37741 Fri Nov 12 14:08:01 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37743         * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES trick
37745         * ext/tk/lib/tk.rb: ditto
37747 Fri Nov 12 00:31:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37749         * ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter string
37750           pointer.  [ruby-dev:24783]
37752 Thu Nov 11 17:58:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37754         * dir.c (rb_glob): should have called rb_glob_caller().
37755           [ruby-dev:24773]
37757 Thu Nov 11 16:56:10 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37759         * test/ruby/test_file.rb (test_truncate_wbuf): we want to test
37760           only File#truncate, not behavior of seek(2).
37762 Thu Nov 11 01:52:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37764         * error.c (syserr_initialize): use stringified object.
37765           [ruby-dev:24768]
37767 Wed Nov 10 22:49:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37769         * lib/delegate.rb (SimpleDelegator::dup): wrong number of
37770           arguments.
37772         * lib/delegate.rb (DelegateClass::dup): ditto.
37774 Wed Nov 10 19:47:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37776         * dir.c (glob_helper): path is a string object now.
37778 Wed Nov 10 12:31:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37780         * README.EXT (Example): extconf.rb is indispensable now.
37782 Wed Nov 10 03:33:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37784         * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x
37785           or older
37787         * ext/tk/lib/tkextlib/tile/style.rb: bug fix
37789 Tue Nov  9 22:24:07 2004  NARUSE, Yui  <naruse@ruby-lang.org>
37791         * ext/nkf: original nkf.c rev:1.38
37793         * ext/nkf/nkf.c: fix bug: can't parse long-name options
37795         * ext/nkf/test.rb: fix bug: mime tests fail
37797 Tue Nov  9 14:27:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37799         * lib/optparse.rb (OptionParser::Officious): moved from DefaultList.
37801 Tue Nov  9 00:50:06 2004  Dave Thomas  <dave@pragprog.com>
37803         * lib/rdoc/rdoc.rb: Change version numbering of RDoc and ri
37805 Tue Nov  9 01:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37807         * dir.c (rb_glob2): do not allocate buffer from heap to avoid
37808           memory leaks.  use string object for buffering instead.
37809           [ruby-dev:24738]
37811         * dir.c (join_path): ditto.
37813         * io.c (io_read): external input buffer may be modified even after
37814           rb_str_locktmp().  [ruby-dev:24735]
37816         * dir.c (fnmatch): p or s may be NULL.  [ruby-dev:24749]
37818 Tue Nov  9 00:36:26 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37820         * lib/drb/extservm.rb: add DRb::ExtServManager#uri=.
37821           [ruby-dev:24743]
37823 Mon Nov  8 22:20:19 2004  Dave Thomas  <dave@pragprog.com>
37825         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
37826           Fix bug where parent class wasn't being detected if the
37827           child class was defined using the A::B notation.
37829 Mon Nov  8 00:14:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37831         * configure.in: add setup for mignw32 cross compiling.
37832           [ruby-talk:119413]
37834 Sun Nov  7 23:49:26 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37836         * ext/tk/lib/tk.rb: bind-event methods accept multi substitution
37837           arguments.
37839         * ext/tk/lib/tk/canvas.rb: ditto.
37841         * ext/tk/lib/tk/canvastag.rb: ditto.
37843         * ext/tk/lib/tk/text.rb: ditto.
37845         * ext/tk/lib/tk/texttag.rb: ditto.
37847         * ext/tk/lib/tkextlib: ditto.
37849 Sat Nov  6 20:40:16 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
37851         * ext/win32ole/win32ole.c: rename WIN32OLE#ole_obj_help to
37852           WIN32OLE#ole_type. alias ole_obj_help to ole_type.
37854         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
37856 Sat Nov  6 11:18:59 2004  Tadayoshi Funaba  <tadf@dotrb.org>
37858         * lib/date.rb (_parse): checks whether zone was given.
37860 Sat Nov  6 00:46:27 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37862         * string.c (rb_str_locktmp): check STR_TMPLOCK flag before
37863           locking.  [ruby-dev:24727]
37865 Fri Nov  5 19:07:16 2004  NARUSE, Yui  <naruse@ruby-lang.org>
37867         * ext/nkf: follow CVS Head of original nkf.
37869 Fri Nov  5 18:12:42 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37871         * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into
37872           X_Scrollable and Y_Scrollable
37874         * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable
37876         * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and
37877           Y_Scrollable
37879 Fri Nov  5 16:05:32 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37881         * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
37883 Fri Nov  5 13:22:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37885         * ext/tk/lib/tk/text.rb: sorry. bug fix again.
37887 Fri Nov  5 13:17:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37889         * ext/tk/lib/tk/text.rb: bug fix
37891 Fri Nov  5 08:52:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37893         * gc.c (gc_mark): stricter GC stack check.
37895 Fri Nov  5 08:34:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37897         * string.c (str_gsub): should have removed rb_str_unlocktmp(str).
37898           [ruby-dev:24708]
37900         * ext/socket/socket.c (s_recvfrom): buffer modification check.
37901           [ruby-dev:24708]
37903 Thu Nov  4 23:54:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37905         * regexec.c, regparse.c, regint.h: fixed conflicts between
37906           vendor branch.
37908 Thu Nov  4 23:41:55 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37910         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
37911           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c,
37912           regint.h, regparse.c, regparse.h, sjis.c, utf8.c:
37913           imported Oni Guruma 3.4.0.
37915         * parse.y, re.c: Now mbclen() takes unsigned char as
37916           its argument.
37918 Thu Nov  4 21:25:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37920         * string.c (str_gsub): string modify check no longer based on
37921           tmplock.  [ruby-dev:24706]
37923 Thu Nov  4 21:13:48 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
37925         * ext/win32ole/win32ole.c(typelib_file_from_typelib): search "win16"
37926           entry to get library path.
37928         * ext/win32ole/win32ole.c(oletypelib_path): ditto.
37930         * ext/win32ole/win32ole.c(ole_typedesc2val): add VT_LPWSTR, VT_LPSTR,
37931           VT_ERROR case.
37933 Thu Nov  4 15:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37935         * ext/tk/lib/tk/variable.rb: forget to initialize instance_variables
37936           of TkVarAccess objects
37938 Thu Nov  4 09:11:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37940         * gc.c (gc_mark): enable GC stack checking.
37942 Thu Nov  4 03:11:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37944         * string.c (str_gsub): lock strings temporarily.  [ruby-dev:24687]
37946         * ext/socket/socket.c (s_recvfrom): tmplock input buffer.
37947           [ruby-dev:24705]
37949 Wed Nov  3 22:24:17 2004  Daigo Moriwaki  <techml@sgtpepper.net>
37951         * lib/webrick/httpauth/digestauth.rb: use Base64.encode64 to
37952           avoid warnings.
37954 Wed Nov  3 17:19:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37956         * array.c (rb_ary_uniq_bang): do not push frozen string from hash
37957           table.  [ruby-dev:24695]
37959         * array.c (rb_ary_and): ditto.
37961         * array.c (rb_ary_or): ditto.
37963 Wed Nov  3 17:02:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37965         * ext/tk/lib/tk.rb: support to use different Tcl commands between
37966           configure and configinfo
37968         * ext/tk/lib/font.rb: ditto.
37970         * ext/tk/lib/itemconfig.rb: support to use different Tcl commands
37971           between item_configure and item_configinfo
37973         * ext/tk/lib/itemfont.rb: ditto.
37975         * ext/tk/extconf.rb: install SUPPORT_STATUS
37977         * ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib)
37979 Wed Nov  3 15:38:28 2004  Kouhei Sutou  <kou@cozmixng.org>
37981         * test/rss/*.rb: removed tab width configuration headers.
37983         * test/rss/test_maker_{0.9,1.0}.rb: sort -> do_sort.
37985         * lib/rss/maker/*.rb: changed API to RSS version independence.
37987         * lib/rss/maker/base.rb
37988           (RSS::Maker::XMLStyleSheets::XMLStyleSheet): checked required
37989           (pseudo) attributes.
37991         * lib/rss/maker/base.rb (RSS::Maker::Items): sort -> do_sort.
37993         * lib/rss/rss.rb (RSS::BaseModel.install_date_element): avoided
37994           warning.
37996         * lib/rss/0.9.rb (RSS::Rss#textinput): added convenience method.
37998 Tue Nov  2 16:35:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38000         * ext/enumerator/enumerator.c (each_cons_i): pass copy of an
38001           internal consequent array.  [ruby-talk:118691]
38003 Tue Nov  2 14:54:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38005         * io.c (pipe_open): need to set cmd if argc == 0 (win32).
38007 Tue Nov  2 01:20:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38009         * io.c (pipe_open): IO.popen should take array as 1st argument for
38010           a command line.  [ruby-dev:24678]
38012         * eval.c (proc_invoke): nail down dyna_var node when Proc object
38013           or continuation is created.  [ruby-dev:24671]
38015         * io.c (rb_io_s_popen): do not expand argv array.  [ruby-dev:24670]
38017 Mon Nov  1 22:25:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38019         * lib/rss/maker/base.rb: changed xml-stylesheet's API of RSS Maker
38020           like to item's one.
38022         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#guess_type): fixed
38023           regular expression bug.
38025         * test/rss/test_maker_xml-stylesheet.rb: updated tests for
38026           xml-stylesheet.
38028 Mon Nov  1 13:59:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38030         * ext/extmk.rb (MANIFEST): do not use anymore, use extconf.rb instead.
38032         * ext/enumerator/extconf.rb, ext/fcntl/extconf.rb,
38033           ext/stringio/extconf.rb: added.
38035         * MANIFEST, ext/**/MANIFEST: removed.
38037         * README.EXT, README.EXT.ja: remove MANIFEST stuff.
38039 Mon Nov  1 11:52:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38041         * io.c (pipe_open): avoid conflict of variable name. [ruby-dev:24662]
38043 Mon Nov  1 11:46:19 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38045         * process.c (rb_f_exec): should check whether prog is NULL.
38047 Mon Nov  1 09:37:19 2004  Kouhei Sutou  <kou@cozmixng.org>
38049         * lib/rss/maker.rb: added entry point of RSS Maker.
38051 Mon Nov  1 03:14:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38053         * eval.c (rb_get_method_body): store ICLASS in the cache.
38054           [ruby-core:03672]
38056         * eval.c (rb_provided): should return true for loading library
38057           too for autoloading.  [ruby-core:03655]
38059 Mon Nov  1 01:14:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38061         * io.c (rb_f_open): create copy of popen specifier.  [ruby-dev:24656]
38063         * string.c (rb_str_locktmp): lock string temporarily.
38065         * string.c (str_independent): add tmplock check.
38067         * io.c (io_write): lock output string temporarily.
38068           [ruby-dev:24649]
38070         * io.c (io_write): use rb_str_locktmp().
38072         * io.c (read_all): ditto.
38074 Sun Oct 31 23:37:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38076         * process.c: on NetBSD don't use setruid() and setrgid().
38078 Sun Oct 31 23:12:10 2004  Kouhei Sutou  <kou@cozmixng.org>
38080         * lib/rss/maker/*.rb: added RSS Maker.
38082         * test/rss/test_maker_*.rb: added tests for RSS Maker.
38084 Sun Oct 31 16:58:12 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38086         * ext/win32ole/win32ole.c: add WIN32OLE.codepage, WIN32OLE.codepage=.
38088         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
38090 Sun Oct 31 14:35:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38092         * ext/nkf/nkf-utf8/nkf.c: add "\075?UTF-8?Q?" for Gmail.
38094 Sun Oct 31 14:18:56 2004  Minero Aoki  <aamine@loveruby.net>
38096         * parse.y [ripper]: emit lexer-event values to the parser
38097           (still incomplete).
38099 Sat Oct 30 15:24:41 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38101         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB class. add
38102           WIN32OLE#ole_typelib method.
38104         * ext/win32ole/tests/testOLETYPELIB.rb: add WIN32OLE_TYPELIB class.
38106 Sat Oct 30 06:53:24 2004  Peter Vanbroekhoven  <peter.vanbroekhoven@cs.kuleuven.ac.be>
38108         * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
38110 Sat Oct 30 00:19:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38112         * array.c (rb_ary_update): a[n,m]=nil no longer works as element
38113           deletion.
38115         * enum.c (enum_sort_by): protect continuation jump in.
38116           [ruby-dev:24642]
38118         * eval.c (rb_eval), gc.c (gc_mark_children), node.h (NEW_ALIAS,
38119           NEW_VALIAS), parse.y (fitem): allow dynamic symbols to
38120           NODE_UNDEF and NODE_ALIAS.
38122 Fri Oct 29 21:27:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38124         * io.c (rb_io_check_initialized): new function to check uninitialized
38125           object.  [ruby-talk:118234]
38127         * file.c (rb_file_path), io.c (rb_io_closed): check if initialized.
38129 Fri Oct 29 19:05:33 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38131         * ext/nkf: follow nkf2.0.
38133 Fri Oct 29 17:18:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38135         * parse.y (ripper_s_allocate): add prototype for Microsoft compiler.
38137         * range.c (range_step, range_each): need cast.
38139 Fri Oct 29 16:34:19 2004  Daiki Ueno  <ueno@unixuser.org>
38141         * misc/ruby-mode.el (ruby-parse-partial): Parse the rest of the
38142           line after opening heredoc identifier.  [ruby-dev:24635]
38144 Fri Oct 29 11:35:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38146         * parse.y (rb_parser_append_print, rb_parser_while_loop): body node
38147           can be empty.  [ruby-dev:24628]
38149 Fri Oct 29 10:00:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38151         * eval.c (rb_thread_start_0): forget to free some memory chunks.
38152           [ruby-core:03611]
38154         * eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
38155           should be wrapped by PUSH_TAG/POP_TAG().  [ruby-dev:24627]
38157 Thu Oct 28 08:42:02 2004  Tanaka Akira  <akr@m17n.org>
38159         * io.c (argf_forward): use ANSI style.
38160           (argf_read): call argf_forward with argv argument.
38161           [ruby-dev:24624]
38163 Wed Oct 27 09:17:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38165         * string.c (str_gsub): use a string object for exception safeness.
38166           [ruby-dev:24601]
38168 Wed Oct 27 07:38:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38170         * node.h (NODE_TYPESHIFT): allow 4 more bits for line numbers.
38171           [ruby-talk:117841]
38173         * ruby.h (FL_ABLE): nodes are not subject for flag operations.
38175         * io.c (ARGF_FORWARD): should have specified argv explicitly,
38176           since we no longer have frame->argv saved.  [ruby-dev:24602]
38178 Tue Oct 26 23:30:39 2004  Dave Thomas  <dave@pragprog.com>
38180         * lib/rdoc/code_objects.rb (RDoc::Context::add_class_or_module):
38181           Restore correct :nopdoc: behavior with nested classes and modules.
38183 Tue Oct 26 18:21:29 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38185         * string.c (RESIZE_CAPA): check string attribute before modifying
38186           capacity member of string structure.  [ruby-dev:24594]
38188 Tue Oct 26 11:33:26 2004  David G. Andersen  <dga@lcs.mit.edu>
38190         * ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
38191           performance.  [ruby-talk:117701]
38193 Tue Oct 26 10:56:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38195         * sprintf.c (rb_f_sprintf): raise ArgumentError for extra
38196           arguments, unless (digit)$ style used.
38198 Mon Oct 25 18:35:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38200         * win32/win32.c (isUNCRoot): should check NUL after '.'.
38201           [ruby-dev:24590]
38203         * win32/win32.c (isUNCRoot): fixed buffer overrun.
38205 Mon Oct 25 08:03:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38207         * eval.c (get_backtrace): ignore illegal backtrace.  [ruby-dev:24587]
38209 Sun Oct 24 00:40:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38211         * eval.c (rb_load, search_required, rb_require_safe, rb_require): use
38212           frozen shared string to avoid outside modification.  [ruby-dev:24580]
38214 Sat Oct 23 23:40:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38216         * io.c (rb_io_fptr_finalize): leave stdin/stdout/stderr open in
38217           interpreter termination.  [ruby-dev:24579]
38219 Sat Oct 23 22:18:32 2004  Guy Decoux  <ts@moulon.inra.fr>
38221         * eval.c (frame_free): Guy Decoux solved the leak problem.
38222           Thanks.  [ruby-core:03549]
38224 Sat Oct 23 00:20:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38226         * ext/zlib/zlib.c (zstream_append_input): clear klass for z->input
38227           to avoid potential vulnerability.
38229         * ext/zlib/zlib.c (zstream_run): always use zstream_append_input()
38230           to avoid SEGV.  [ruby-dev:24568]
38232 Fri Oct 22 12:02:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38234         * eval.c (rb_alias): was warning for wrong condition.
38235           [ruby-dev:24565]
38237 Fri Oct 22 10:36:37 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38239         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#meta_vars):
38240           should check if path_info is not nil.
38242 Fri Oct 22 00:22:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38244         * ext/zlib/zlib.c (zstream_shift_buffer): should restore class
38245           field of a buffer.  [ruby-dev:24562]
38247 Fri Oct 22 00:20:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38249         * string.c (rb_str_include): should not treat char as negative value.
38250           [ruby-dev:24558]
38252 Thu Oct 21 21:32:30 2004  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
38254         * lib/pstore.rb (PStore#transaction): Use the empty content when a
38255           file is not found.  [ruby-dev:24561]
38257 Thu Oct 21 19:06:15 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38259         * lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
38260           ensure to close @body. (http://bugs.debian.org/277520)
38262 Thu Oct 21 13:11:31 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38264         * io.c (pipe_open): variable name "fpw" is conflicted.
38266 Thu Oct 21 00:36:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38268         * eval.c (rb_alias): should warn on method discarding.
38269           [ruby-dev:24546]
38271         * ext/zlib/zlib.c (zstream_expand_buffer_into): hide internal
38272           string buffer by clearing klass.  [ruby-dev:24548]
38274         * parse.y (lex_getline): should not touch ruby_debug_lines if
38275           RIPPER is defined.  [ruby-dev:24547]
38277 Wed Oct 20 19:45:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38279         * string.c (str_gsub):  reentrant check.  [ruby-dev:24432]
38281 Wed Oct 20 12:42:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38283         * io.c (rb_io_getline): rs modification check should not interfere
38284           in the loop.
38286 Wed Oct 20 10:31:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38288         * parse.y (lex_getline): should update ruby_debug_lines.
38290 Wed Oct 20 04:17:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38292         * ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element
38293           is a string.  [ruby-dev:24490]
38295         * ext/sdbm/init.c (fsdbm_delete_if): ditto.
38297 Wed Oct 20 01:37:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38299         * array.c (rb_ary_times): Array#* should return an instance of
38300           the class of right operand.  [ruby-dev:24526]
38302         * ext/zlib/zlib.c (zstream_detach_buffer): should not expose
38303           class-less object to Ruby world. [ruby-dev:24530]
38305         * eval.c (proc_dup): provide Proc#dup as well.  [ruby-talk:116915]
38307         * eval.c (ruby_exec): stack marking position may be higher than
38308           expected.  thanks to Guy Decoux.  [ruby-core:03527]
38310 Wed Oct 20 00:25:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38312         * eval.c (search_required): required name must not be changed before
38313           loading.  [ruby-dev:24492]
38315 Tue Oct 19 23:59:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38317         * eval.c (rb_require_safe): provide the feature after loaded.
38318           [ruby-list:40085]
38320 Tue Oct 19 22:43:12 2004  Dave Thomas  <dave@pragprog.com>
38322         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_attr): If
38323           we come across 'attr' in a context where it isn't
38324           followed by a symbol, just issue a warning.
38326 Tue Oct 19 20:32:50 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38328         * ext/win32ole.c(ole_invoke): retrieve the result value when
38329           retrying the IDispatch::invoke.
38331 Tue Oct 19 17:24:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38333         * io.c (read_all): block string buffer modification during
38334           rb_io_fread() by freezing it temporarily. [ruby-dev:24479]
38336         * dir.c (rb_push_glob): block call at once the end of method.
38337           [ruby-dev:24487]
38339         * ext/enumerator/enumerator.c (enum_each_slice): remove
38340           rb_gc_force_recycle() to prevent potential SEGV.
38341           [ruby-dev:24499]
38343         * ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
38344           buffer by clearing klass.  [ruby-dev:24510]
38346 Tue Oct 19 08:47:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38348         * string.c (rb_str_upto): method result must be checked.  [ruby-dev:24504]
38350         * eval.c (error_print): ditto.  [ruby-dev:24519]
38352 Mon Oct 18 23:37:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38354         * marshal.c (r_object0): check inheritance by the internal function.
38355           [ruby-dev:24515]
38357 Mon Oct 18 11:29:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38359         * io.c (rb_io_flags_mode, rb_io_mode_flags): distinguish whether file
38360           not existing is created.  [ruby-dev:24505]
38362 Mon Oct 18 07:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38364         * file.c (rb_file_truncate): discard read buffer before truncation.
38365           [ruby-dev:24197]
38367 Mon Oct 18 01:56:03 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38369         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#initialize):
38370           initial value of accpet-* should be array.
38372 Mon Oct 18 00:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38374         * ext/socket/socket.c (sock_s_getservbyaname): protocol string
38375           might be altered.  [ruby-dev:24503]
38377         * string.c (rb_str_upto): check if return value from succ is a
38378           string.  [ruby-dev:24504]
38380 Sun Oct 17 23:03:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38382         * ext/tk/lib/tk/timer.rb: TkTimer#start and restart accept a block
38384 Sun Oct 17 12:53:46 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38386         * ext/win32ole/win32ole.c (fole_func_methods): correct argument mismatch.
38387         * ext/win32ole/win32ole.c (fole_get_methods): ditto.
38388         * ext/win32ole/win32ole.c (fole_put_methods): ditto.
38389         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE#ole_func_methods
38390           WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods
38392 Sat Oct 16 14:45:28 2004  Kouhei Sutou  <kou@cozmixng.org>
38394         * lib/rss/0.9.rb (RSS::Rss#to_s): removed garbage.
38396 Sat Oct 16 13:42:49 2004  Kouhei Sutou  <kou@cozmixng.org>
38398         * lib/rss/: untabified.
38399         * test/rss/: untabified.
38400         * lib/rss/0.9.rb (RSS::Rss#to_s): inent -> indent.
38402 Sat Oct 16 13:34:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38404         * lib/rss: supported prety print.
38405         * test/rss/test_1.0.rb: added test for calculating default indent size.
38407 Sat Oct 16 10:56:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38409         * lib/mkmf.rb (create_makefile): install-rb is needed for statically
38410           linked extensions.  [ruby-dev:24491]
38412 Fri Oct 15 18:07:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38414         * ext/openssl/ossl_x509store.c
38415           (ossl_x509stctx_initialize): setup OpenSSL::X509::StoreContext with
38416           ossl_x509stctx_* functions instead of X509_STORE_CTX_*.
38417           (ossl_x509store_set_time): add OpenSSL::X509::Store#time=.
38418           (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=.
38420         * test/openssl/ossl_x509store.rb: test certificate validity times.
38422 Fri Oct 15 18:04:35 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38424         * ext/tk/lib/tk/timer.rb: TkTimer.new(interval, loop){ ... } is
38425           acceptable. Add TkTimer.start ( == new + start ).
38427 Fri Oct 15 12:43:09 2004  Tanaka Akira  <akr@m17n.org>
38429         * eval.c (Init_stack): make prototype declaration consistent with
38430           the definition in gc.c.
38432 Thu Oct 14 13:33:59 2004  Kouhei Sutou  <kou@cozmixng.org>
38434         * lib/rss/rss.rb: added link to Tutorial.
38436 Tue Oct 12 21:22:50 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38438         * lib/webrick/config.rb:
38439           add WEBrick::Config::FileHandler[:AcceptableLanguages].
38441         * lib/webrick/httpservlet/filehandler.rb
38442           (WEBrick::HTTPServlet::FileHandler#set_filename): search files
38443           having suffix of language-name which Accept-Language header field
38444           includes if :AcceptableLanguages options is present.
38446         * lib/webrick/httpservlet/filehandler.rb
38447           (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to
38448           search servlet correspond to the suffix of filename.
38450         * lib/webrick/httprequest.rb: add attributes access methods: accept,
38451           accept_charset, accept_encoding, accept_language, content_length
38452           and content_type.
38454         * lib/webrick/httpresponse.rb: add attribute access methods:
38455           content_length, content_length=, content_type and content_type=.
38457         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types):
38458           use the second suffix to detect media type. (the first suffix
38459           may be a language name.)
38461         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues):
38462           add method to parse Accept header field. it returns an Array of
38463           values sorted by the qvalues.
38465 Tue Oct 12 15:05:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38467         * io.c (MODE_BINMODE, MODE_BINARY): fixed reversed condition.
38469 Mon Oct 11 17:51:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38471         * io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
38472           avoid mode string modification.  [ruby-dev:24454]
38474         * io.c (rb_io_getline_fast): should take delim as unsigned char to
38475           distinguish EOF and '\377'.  [ruby-dev:24460]
38477         * io.c (rb_io_getline): add check for RS modification.
38478           [ruby-dev:24461]
38480         * enum.c (enum_sort_by): use qsort() directly instead using
38481           rb_iterate().  [ruby-dev:24462]
38483         * enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
38484           prevent access to recycled object (via continuation for
38485           example).  [ruby-dev:24463]
38487 Mon Oct 11 13:48:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38489         * ext/tk/lib/tk/*: untabify
38491 Sun Oct 10 12:32:08 2004  Dave Thomas  <dave@pragprog.com>
38493         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Allow 'require'
38494           to be used as a variable name
38496 Sun Oct 10 02:49:14 2004  Minero Aoki  <aamine@loveruby.net>
38498         * ext/ripper/lib/ripper/filter.rb: require ripper/tokenizer.
38500         * ext/ripper/lib/ripper/filter.rb (parse): argument is optional.
38502 Sun Oct 10 02:43:13 2004  Minero Aoki  <aamine@loveruby.net>
38504         * parse.y [ripper]: \n between two comments disappeared.
38506 Sat Oct  9 21:23:37 2004  Kouhei Sutou  <kou@cozmixng.org>
38508         * lib/rss/converter.rb: changed to try to use Iconv for default
38509           conversion.
38511         * lib/rss/rss.rb: 0.0.9 -> 0.1.0.
38513 Sat Oct  9 19:50:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38515         * io.c (rb_io_getline): should not treat char as negative value.
38516           [ruby-dev:24460]
38518 Sat Oct  9 00:25:39 2004  Tanaka Akira  <akr@m17n.org>
38520         * io.c (rb_io_fread): rb_thread_wait_fd() was lost.
38521           [ruby-dev:24457]
38523 Fri Oct  8 21:36:56 2004  Minero Aoki  <aamine@loveruby.net>
38525         * lib/fileutils.rb (fu_traverse): return value of Dir.entries is
38526           reliable. (pass $SAFE=1)
38528         * lib/fileutils.rb (remove_dir): return value of Dir.foreach is
38529           reliable. (pass $SAFE=1)
38531 Fri Oct  8 09:49:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38533         * pack.c (pack_pack): pointer modification check before each
38534           iteration.  [ruby-dev:24445]
38536 Fri Oct  8 01:13:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38538         * ext/tk/lib/tk/optiondb.rb: make it more secure
38540 Thu Oct  7 23:47:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38542         * ext/tk/lib/tk/scrollbar.rb: When 'set' operation, a scrollbar
38543           cannot propagate view port information from the source widget
38544           (that calls 'set') to other assigned widgets.
38546 Thu Oct  7 17:36:25 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38548         * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns
38549           a Fixnum for 2nd element (it's pid) of the return value.
38551 Thu Oct  7 12:55:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38553         * io.c (io_read): should freeze buffer before thread context
38554           switch. [ruby-dev:24442]
38556         * pack.c (pack_unpack): string conversion should at the top of the
38557           method.  [ruby-dev:24439]
38559         * io.c (io_read): buffer should be frozen only after the length
38560           check.  [ruby-dev:24440]
38562 Thu Oct  7 02:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38564         * ext/stringio/stringio.c: use FMODE_APPEND.
38566 Thu Oct  7 01:05:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38568         * ext/tk/lib/tk.rb: add Tk.errorInfo and Tk.errorCode
38570 Thu Oct  7 00:08:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38572         * io.c (rb_io_s_sysopen): preserve path in the buffer allocated by
38573           ALLOCA_N() to prevent modification.  [ruby-dev:24438]
38575 Wed Oct  6 09:21:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38577         * io.c (rb_io_mode_flags): preserve append mode flag.
38578           [ruby-dev:24436]
38580         * io.c (rb_io_modenum_mode): do not use external output buffer.
38582         * string.c (rb_str_justify): differ pointer retrieval to prevent
38583           padding string modification.  [ruby-dev:24434]
38585         * range.c (range_each_func): allow func to terminate loop by
38586           returning RANGE_EACH_BREAK.
38588         * range.c (member_i): use RANGE_EACH_BREAK. [ruby-talk:114959]
38590 Tue Oct  5 09:53:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38592         * io.c (rb_fopen): mode string copy at the lowest level.
38594         * io.c (rb_io_flags_mode): requires output buffer no more.  no
38595           allocation needed.
38597         * array.c (rb_ary_index): takes a block to compare items in an
38598           array.  [ruby-talk:113069] [Ruby2]
38600         * array.c (rb_ary_rindex): ditto.
38602 Mon Oct  4 14:03:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38604         * io.c (rb_file_open_internal, rb_io_reopen): fname might be altered
38605           while GC.  [ruby-dev:24408]
38607 Mon Oct  4 12:53:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38609         * ext/tk/lib/tk/optiondb.rb: support definition of command
38610           resources on widgets
38612         * ext/tk/lib/tk/image.rb: bug fix
38614 Sun Oct  3 21:16:05 2004  Shugo Maeda  <shugo@ruby-lang.org>
38616         * lib/net/imap.rb (TEXT_REGEXP): allow 8-bit characters for the german
38617           version of Microsoft Exchange Server.
38619         * lib/net/imap.rb (RTEXT_REGEXP): ditto.
38621         * lib/net/imap.rb (CTEXT_REGEXP): ditto.
38623 Sat Oct  2 20:34:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38625         * parse.y (local_vars): moved to struct parser_params.
38626           [ruby-dev:24391]
38628         * parser.y (stmts): remove suspicious NODE_BEGIN.  [ruby-dev:24390]
38630         * node.h (NEW_DVAR): extra semicolon.
38632 Sat Oct  2 00:42:20 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38634         * marshal.c (r_byte): retrieve pointer from string value for each
38635           time.  [ruby-dev:24404]
38637         * marshal.c (r_bytes0): ditto.
38639         * enum.c (sort_by_i): re-entrance check added.  [ruby-dev:24399]
38641         * io.c (io_read): should freeze all reading buffer.
38642           [ruby-dev:24400]
38644         * string.c (rb_str_sum): should use bignums when bits is greater
38645           than or equals to sizeof(long)*CHAR_BITS. [ruby-dev:24395]
38647         * eval.c (specific_eval): defer pointer retrieval to prevent
38648           unsafe sourcefile string modification.  [ruby-dev:24382]
38650         * string.c (rb_str_sum): wrong cast caused wrong result.
38651           [ruby-dev:24385]
38653         * enum.c (enum_sort_by): hide temporary array from
38654           ObjectSpace.each_object.  [ruby-dev:24386]
38656         * string.c (rb_str_sum): check was done with false pointer.
38657           [ruby-dev:24383]
38659         * string.c (rb_str_sum): string may be altered.  [ruby-dev:24381]
38661 Fri Oct  1 11:40:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38663         * eval.c (rb_f_eval): defer pointer retrieval to prevent unsafe
38664           sourcefile string modification.  [ruby-dev:24373]
38666         * io.c (io_read): block string buffer modification during
38667           rb_io_fread() by freezing it temporarily. [ruby-dev:24366]
38669         * io.c (rb_io_s_popen): mode argument may be altered.
38670           [ruby-dev:24375]
38672         * file.c (rb_file_s_basename): ext argument may be altered.
38673           [ruby-dev:24377]
38675         * enum.c (enum_sort_by): use NODE instead of 2 element arrays.
38676           [ruby-dev:24378]
38678         * string.c (rb_str_chomp_bang): StringValue() may change the
38679           receiver.  [ruby-dev:24371]
38681 Fri Oct  1 11:25:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38683         * ext/tk/lib/tk/grid.rb: revive TkGrid.grid
38685         * ext/tk/lib/tk/pack.rb: revive TkPack.pack
38687         * ext/tk/lib/tk/place.rb: revive TkPlace.place
38689 Thu Sep 30 00:50:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38691         * ext/tcltklib/tcltklib.c (ip_init): bug fix
38693         * ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
38695         * ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
38697         * ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
38698           matting pattern argument
38700 Wed Sep 29 10:58:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38702         * enum.c (sort_by_i): internally used object must not be changed
38703           outside.  [ruby-dev:24368]
38705 Mon Sep 27 21:25:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38707         * eval.c (rb_call0): invoke finalizers periodically.
38709         * gc.c (gc_sweep): defer running finalizers.  [ruby-dev:24354]
38711         * gc.c (rb_gc_finalize_deferred): run deferred finalizers.
38713 Mon Sep 27 15:01:59 2004  Minero Aoki  <aamine@loveruby.net>
38715         * parse.y [ripper]: missing ';'.
38717 Mon Sep 27 13:46:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38719         * intern.h, struct.c (rb_struct_s_members, rb_struct_members): public
38720           accessors.  [ruby-dev:24342]
38722         * marshal.c (w_object, r_object0): use accessors.
38724 Mon Sep 27 09:14:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38726         * array.c (rb_ary_delete): comparison may change the capacity.
38727           [ruby-dev:24348]
38729         * array.c (rb_ary_fill): fill should honor length argument.
38730           [ruby-dev:24346]
38732         * array.c (rb_ary_replace): should not use ptr from shared array.
38733           [ruby-dev:24345]
38735         * ext/socket/socket.c (s_accept): don't retry for EWOULDBLOCK.
38736           [ruby-talk:113807]
38738 Sun Sep 26 08:05:10 2004  Tadayoshi Funaba  <tadf@dotrb.org>
38740         * lib/date.rb: provides {Time,Date,DateTime}#to_{time,date,datetime}.
38742         * sample/cal.rb: uses getoptlong instead of getopts.
38744 Sat Sep 25 18:39:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38746         * array.c (flatten): element size might change during comparison.
38747           [ruby-dev:24343]
38749 Sat Sep 25 01:52:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38751         * struct.c (rb_struct_s_members): wrong call of struct_members.
38752           [ruby-dev:24333]
38754 Fri Sep 24 16:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38756         * eval.c (proc_invoke): propagate DVAR_DONT_RECYCLE on termination
38757           to avoid double call to rb_gc_force_recycle(). [ruby-dev:24311]
38759 Fri Sep 24 08:29:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38761         * parse.y (rb_parser_append_print): should handle prelude.
38762           [llama@u01.gate0]
38764         * parse.y (rb_parser_while_loop): ditto.
38766         * array.c (rb_ary_subseq): original object might be modified after
38767           sharing data creation.  [ruby-dev:24327]
38769         * array.c (rb_ary_replace): ditto.
38771         * array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]
38773         * struct.c (struct_members): always check struct size and size of
38774           members list in the class.  [ruby-dev:24320]
38776 Thu Sep 23 19:48:14 2004  Minero Aoki  <aamine@loveruby.net>
38778         * ext/ripper/Makefile.dev: removed.
38780         * ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
38782         * ext/ripper/lib/ripper/core.rb: new file.
38784         * ext/ripper/lib/ripper/core.rb.in: new file.
38786         * ext/ripper/tools/generate-ripper_rb.rb: change comment.
38788         * test/ripper/*.rb: on__scan event removed.
38790         * test/ripper/*.rb: event name is changed: on__XXX -> on_XXX.
38792 Thu Sep 23 09:29:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38794         * string.c (rb_str_sub_bang): check if string is not modified
38795           during iteration.  [ruby-dev:24315]
38797         * hash.c (rb_hash_rehash): replace st_foreach() by its deep
38798           checking counterpart.  [ruby-dev:24310]
38800 Wed Sep 22 14:21:54 2004  Minero Aoki  <aamine@loveruby.net>
38802         * parse.y [ripper]: on__scan event removed.
38804         * parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
38806         * ext/ripper/eventids2.c: ditto.
38808         * ext/ripper/ripper.rb.in: ditto.
38810         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
38812         * ext/ripper/lib/ripper/tokenizer: ditto.
38814         * ext/ripper/lib/ripper/filter: new file.
38816         * sample/ripper/colorize.rb: new file.
38818         * sample/ripper/strip-comment.rb: new file.
38820 Wed Sep 22 13:50:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38822         * hash.c (hash_alloc): was using tbl pointer without
38823           initialization.
38825 Wed Sep 22 13:38:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38827         * hash.c (rb_hash_rehash): add iteration check.  [ruby-dev:24301]
38829         * st.c (st_foreach): add deep check.
38831         * hash.c (rb_hash_fetch): returns KeyError instead of IndexError.
38833         * hash.c (env_fetch): ditto.
38835 Wed Sep 22 13:02:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38837         * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
38839 Wed Sep 22 09:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38841         * parse.y: remove global variables ruby_eval_tree and
38842           ruby_eval_tree_begin.
38844         * array.c (rb_ary_collect_bang): element size might change during
38845           comparison.  [ruby-dev:24300]
38847         * array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]
38849         * array.c (rb_ary_eql): ditto. [ruby-dev:24300]
38851 Wed Sep 22 00:11:12 2004  Dave Thomas  <dave@pragprog.com>
38853         * process.c: Add documentation for fork()
38855 Tue Sep 21 18:29:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38857         * array.c (rb_ary_uniq_bang): element size might change during
38858           comparison.  [ruby-dev:24298]
38860 Mon Sep 20 17:46:51 2004  Minero Aoki  <aamine@loveruby.net>
38862         * ext/ripper/lib/ripper/tokenizer.rb: fix typo.
38864 Mon Sep 20 17:38:43 2004  Minero Aoki  <aamine@loveruby.net>
38866         * test/ripper/test_scanner_events.rb: tokens must be reordered.
38868         * ext/ripper/lib/ripper/tokenizer.rb: ditto.
38870 Mon Sep 20 16:58:16 2004  Minero Aoki  <aamine@loveruby.net>
38872         * parse.y [ripper]: do not delay dispatching.
38874         * ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.
38876 Mon Sep 20 15:17:47 2004  Minero Aoki  <aamine@loveruby.net>
38878         * ext/ripper/lib/ripper/tokenizer.rb: new file.
38880 Mon Sep 20 15:13:52 2004  Minero Aoki  <aamine@loveruby.net>
38882         * test/ripper/test_scanner_events.rb: test #lineno and #column.
38884 Mon Sep 20 14:50:17 2004  Minero Aoki  <aamine@loveruby.net>
38886         * parse.y [ripper]: delayed heredocument events should be
38887           dispatched after EOF.
38889 Mon Sep 20 14:39:42 2004  Minero Aoki  <aamine@loveruby.net>
38891         * parse.y [ripper]: adjust lineno and columns for multi-line
38892           strings.
38894         * parse.y [ripper]: delay heredocument events until seeing
38895           end-of-line.
38897         * parse.y [ripper]: event on__heredoc_contentn ->
38898           on__tstring_content.
38900         * ext/ripper/eventids2.c: ditto.
38902         * ext/ripper/lib/ripper.rb: sync with eventids2.c.
38904         * test/ripper/test_scanner_events.rb: test it.
38906         * ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
38908         * ext/ripper/Makefile.dev: support objdir build.
38910 Mon Sep 20 13:22:55 2004  Minero Aoki  <aamine@loveruby.net>
38912         * parse.y [ripper]: remove Ripper#pos.
38914         * parse.y [ripper]: Ripper#column should return the column of the
38915           current token.
38917 Mon Sep 20 12:02:41 2004  Minero Aoki  <aamine@loveruby.net>
38919         * parse.y [ripper]: unify old_lex_p and token_head.
38921         * test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
38923         * parse.y: new macro lex_goto_eol() for next change.
38925 Mon Sep 20 11:01:55 2004  Minero Aoki  <aamine@loveruby.net>
38927         * parse.y [ripper]: adjust line number for heredoc.  [ruby-dev:24272]
38929 Mon Sep 20 04:49:22 2004  Minero Aoki  <aamine@loveruby.net>
38931         * ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
38933         * ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
38935         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
38937 Mon Sep 20 04:13:00 2004  Minero Aoki  <aamine@loveruby.net>
38939         * test/ripper/test_scanner_events.rb: test spaces before heredoc
38940           mark.
38942 Mon Sep 20 03:46:54 2004  Minero Aoki  <aamine@loveruby.net>
38944         * parse.y [ripper]: spaces before heredoc marker was lost.
38945           [ruby-dev:24272]
38947         * keywords: rb_reserved_word() should be defined only in ruby
38948           core.  [ruby-dev:24272]
38950         * lex.c: sync with keywords.
38952         * ext/ripper/ripper.rb.in (parse): fix typo.
38954         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
38956 Mon Sep 20 03:37:59 2004  Tanaka Akira  <akr@m17n.org>
38958         * ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
38959           (Zlib::GzipReader#readpartial): new method.
38961 Mon Sep 20 00:24:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38963         * enum.c (enum_sort_by): do not use qsort directly.  use
38964           rb_ary_sort_bang() instead.  [ruby-dev:24291]
38966         * enum.c (enum_sort_by): pedantic type check added.
38967           [ruby-dev:24291]
38969         * hash.c (rb_hash_foreach_iter): check iter_lev after each
38970           iteration.  [ruby-dev:24289]
38972         * array.c (rb_ary_and): element size might change during
38973           comparison.  [ruby-dev:24290]
38975         * array.c (rb_ary_or): ditto. [ruby-dev:24292]
38977         * array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]
38979 Sat Sep 18 15:02:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38981         * array.c (rb_ary_equal): element size might change during
38982           comparison.  [ruby-dev:24254]
38984         * array.c (rb_ary_diff): ditto. [ruby-dev:24274]
38986         * array.c (rb_ary_select): ditto. [ruby-dev:24278]
38988         * array.c (rb_ary_delete): ditto. [ruby-dev:24283]
38990         * array.c (rb_ary_rindex): ditto. [ruby-dev:24275]
38992         * array.c (rb_ary_initialize): element size might change during
38993           initializing block.  [ruby-dev:24284]
38995 Sat Sep 18 14:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38997         * dir.c (dir_s_chdir): avoid memory leak and unnecessary chdir to
38998           the original directory when exception has caused in changing
38999           direcotry or within block.  thanks to Johan Holmberg
39000           <holmberg@iar.se> [ruby-core:03446]
39002 Fri Sep 17 20:29:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39004         * parse.y: add prototypes for Microsoft compiler.
39006         * ext/ripper/depend (parse.obj): lex.c exists at hdrdir.
39008         * {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
39009           use bison.
39011 Fri Sep 17 17:11:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39013         * array.c (rb_ary_delete): element comparison might change array
39014           size. [ruby-dev:24273]
39016         * parse.y: make ruby parser reentrant. merge ripper parser to the
39017           real one.  this change makes ruby require bison.
39019         * file.c (rb_file_truncate): clear stdio buffer before truncating
39020           the file.  [ruby-dev:24191]
39022         * ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
39023           which might return singleton class.  [ruby-dev:24202]
39025 Fri Sep 17 16:07:09 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39027         * ext/tk/lib/multi-tk.rb: improve exit operation
39029 Fri Sep 17 15:01:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39031         * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or
39032           (thread_)tkwait
39034         * ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
39036         * ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave
39037           interpreters (however, the 'real' eventloop must be run on the
39038           Default Master IP)
39040         * ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
39042         * ext/tk/sample/remote-ip_sample2.rb: ditto
39044         * ext/tk/sample/tkoptdb-safeTk.rb: ditto
39046 Thu Sep 16 18:12:13 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39048         * lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
39049           to request.user attribute.
39051         * lib/webrick/httpservlet/filehandler.rb
39052           (WEBrick::HTTPServlet::FileHandler#initialize): should expand
39053           the pathname of document root directory.
39055 Thu Sep 16 15:49:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39057         * string.c (rb_str_intern): protect string argument from GC.
39058           [ruby-core:03411]
39060 Wed Sep 15 20:22:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39062         * ext/tk/sample/tkoptdb-safeTk.rb: fix a bug depend on the changes
39063           of MultiTkIp
39065 Tue Sep 14 23:54:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39067         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by
39068           the previous changes.
39070 Tue Sep 14 23:45:44 2004  Dave Thomas  <dave@pragprog.com>
39072         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::TextFormatter.for):
39073           Add Eric Hodel's simpleformatter.
39075 Tue Sep 14 22:11:08 2004  Minero Aoki  <aamine@loveruby.net>
39077         * parse.y [ripper]: Add rdoc.
39079 Tue Sep 14 20:24:49 2004  Minero Aoki  <aamine@loveruby.net>
39081         * parse.y [ripper]: space event is on__sp, not on__lwsp.
39082           [ruby-dev:24257]
39084         * ext/ripper/eventids2.c: ditto.
39086         * ext/ripper/lib/ripper.rb: ditto.
39088         * ext/ripper/depend (ripper.o): No action is needed.
39089           [ruby-dev:24260]
39091         * ext/ripper/depend: Borland make does not accept pipes in
39092           Makefile rules. [ruby-dev:24589]
39094         * ext/ripper/depend: separate rules for developpers.
39096         * ext/ripper/Makefile.dev: new file.
39098         * ext/ripper/MANIFEST: add Makefile.dev.
39100         * ext/ripper/tools/generate-eventids1.rb: read from file, not
39101           stdin.
39103         * ext/ripper/extconf.rb: clean ripper.E.
39105         * ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2
39106           function was lost.
39108         * ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly
39109           contained parser events.
39111         * ext/ripper/lib/ripper.rb: ditto.
39113 Tue Sep 14 16:59:37 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39115         * ext/tcltklib/tcltklib.c: fix SEGV
39117         * ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
39119         * ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
39121         * ext/tk/sample/safe-tk.rb: new sample script
39124 Mon Sep 13 21:33:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39126         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
39127           second argument to specify the output format (see also
39128            X509_NAME_print_ex).
39130         * ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
39131           OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
39132           OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.
39134         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
39135           new module to provide the parse for RFC2253 DN format.
39137         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
39138           new method to parse RFC2253 DN format.
39140 Mon Sep 13 19:16:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39142         * eval.c (blk_copy_prev): need frame_dup().  [ruby-dev:24103]
39144 Mon Sep 13 16:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39146         * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
39147           safe-level value argument
39149 Mon Sep 13 10:48:37 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39151         * win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
39152           mswin32 and mingw32.
39154 Mon Sep 13 10:22:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39156         * object.c (nil_inspect): fix typo.
39158 Mon Sep 13 09:29:58 2004  Minero Aoki  <aamine@loveruby.net>
39160         * ext/ripper/depend: (nmake hack) prepend "./" to ripper.c to
39161           avoid {$(srcdir)}.
39163 Mon Sep 13 06:43:42 2004  Minero Aoki  <aamine@loveruby.net>
39165         * ext/ripper/tools/list-parse-event-ids.rb: does not use getopts.
39167         * ext/ripper/tools/list-scan-event-ids.rb: ditto.
39169 Mon Sep 13 02:42:28 2004  Minero Aoki  <aamine@loveruby.net>
39171         * ext/Setup: add ripper.
39173         * ext/Setup.atheos: ditto.
39175         * ext/Setup.dj: ditto.
39177         * ext/Setup.emx: ditto.
39179         * ext/Setup.nt: ditto.
39181         * ext/Setup.x68: ditto.
39183 Mon Sep 13 02:26:31 2004  Minero Aoki  <aamine@loveruby.net>
39185         * ext/ripper: ripper extention added.
39187         * ext/ripper/MANIFEST: new file.
39189         * ext/ripper/README: new file.
39191         * ext/ripper/depend: new file.
39193         * ext/ripper/extconf.rb: new file.
39195         * ext/ripper/eventids2.c: new file.
39197         * ext/ripper/ripper.rb.in: new file.
39199         * ext/ripper/lib/ripper.rb: new file.
39201         * ext/ripper/test/check-event-arity.rb: new file.
39203         * ext/ripper/test/check-event-coverage.sh: new file.
39205         * ext/ripper/test/check-scanner-event-coverage.rb: new file.
39207         * ext/ripper/test/list-called-events.rb: new file.
39209         * ext/ripper/test/src_rb: new file.
39211         * ext/ripper/test/validate.rb: new file.
39213         * ext/ripper/tools/generate-eventids1.rb: new file.
39215         * ext/ripper/tools/generate-param-macros.rb: new file.
39217         * ext/ripper/tools/generate-ripper_rb.rb: new file.
39219         * ext/ripper/tools/list-parse-event-ids.rb: new file.
39221         * ext/ripper/tools/list-scan-event-ids.rb: new file.
39223         * ext/ripper/tools/preproc.rb: new file.
39225         * ext/ripper/tools/strip.rb: new file.
39227         * test/ripper: ripper tests added.
39229         * test/ripper/dummyparser.rb: new file.
39231         * test/ripper/test_parser_events.rb: new file.
39233         * test/ripper/test_scanner_events.rb: new file.
39235 Mon Sep 13 01:03:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39237         * ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
39239         * ext/tcltklib/tcltklib.c: store original 'exit' command
39241         * ext/tk/tkutil.c: fix(?) SEGV
39243 Mon Sep 13 00:22:53 2004  Minero Aoki  <aamine@loveruby.net>
39245         * parse.y: fix file header.
39247 Mon Sep 13 00:20:39 2004  Minero Aoki  <aamine@loveruby.net>
39249         * parse.y: ripper merged.
39251         * lex.c: ditto.
39253         * keywords: ditto.
39255 Sun Sep 12 23:53:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39257         * util.c (ruby_strdup): remove unnecessary code. (xmalloc never
39258           returns NULL.)
39260         * util.c (ruby_getcwd): fix memory leak on failure.
39262 Sun Sep 12 02:41:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39264         * ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and
39265           allow_ruby_exit=
39267         * ext/tk/lib/multi-tk.rb: ditto.
39269         * ext/tk/lib/remote-tk.rb: ditto.
39271         * ext/tcltklib/MANUAL.euc: ditto.
39273         * ext/tcltklib/MANUAL.eng: ditto.
39275         * ext/tcltklib/tcltklib.c: fix some reasons of SEGV
39277         * ext/tk/tkutil.c: ditto.
39279         * ext/tk/lib/multi-tk.rb: ditto.
39281         * ext/tk/lib/tk/timer.rb: ditto.
39283 Sat Sep 11 16:09:46 2004  Dave Thomas  <dave@pragprog.com>
39285         * lib/rdoc/parsers/parse_rb.rb: Fix up cross-file class merging.
39287 Fri Sep 10 20:18:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39289         * ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
39290           pointer conversion.
39292 Fri Sep 10 19:16:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39294         * bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
39295           (need to rebuild all) [ruby-dev:24138]
39297         * win32/win32.{h,c}: ditto.
39299 Fri Sep 10 15:55:59 2004  Minero Aoki  <aamine@loveruby.net>
39301         * lib/fileutils.rb (mkdir_p): should pass mode argument to
39302           Dir.mkdir. [ruby-dev:24242]
39304         * test/fileutils/test_fileutils.rb: test it.
39306 Fri Sep 10 02:43:54 2004  Dave Thomas  <dave@pragprog.com>
39308         * lib/rdoc/generators/template/kilmer.rb: James Buck's
39309           patch for call-seq.
39311 Thu Sep  9 13:58:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39313         * ext/tcltklib/tcltklib.c (ip_init): change flag value for setting
39314           'argv' and 'argv0' variable
39316         * ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
39318 Thu Sep  9 11:46:18 2004  Dave Thomas  <dave@pragprog.com>
39320         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_classes): Allow
39321           spaces aroun parameter to define_method_under (James Buck)
39323 Wed Sep  8 18:44:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39325         * ext/stringio/stringio.c (strio_write): zero fill a gap if exsts.
39326           [ruby-dev:24190]
39328 Wed Sep  8 15:19:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39330         * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
39332         * ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check,
39333           and error treatment
39335         * ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs
39337         * ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and
39338           erase
39340         * ext/tk/lib/tk/text.rb: add TkText#clear and erase
39342 Tue Sep  7 15:17:49 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39344         * ext/socket/socket.c (ruby_connect): break immediately if a
39345           socket is non-blocking.  [ruby-talk:111654]
39347 Tue Sep  7 12:48:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39349         * {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
39351         * win32/win32.[ch] (fcntl): ditto.
39353         * win32/win32.c (rb_w32_connect): support nonblocking mode.
39355         * ext/socket/socket.c (wait_connectable, ruby_connect): support
39356           nonblocking connect on various platforms.
39358 Mon Sep  6 11:00:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39360         * dir.c (dir_s_chdir): the patch to shut up false warning when
39361           exception occurred within a block.  a patch was given from Johan
39362           Holmberg <holmberg at iar.se>.  [ruby-core:03292]
39364 Mon Sep  6 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39366         * ext/tk/lib/tk/menu.rb(TkOptionMenubutton#insert): call correct method
39368 Mon Sep  6 07:51:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39370         * eval.c (cvar_cbase): singletons should refer outer cvar scope.
39371           [ruby-dev:24223]
39373         * eval.c (rb_load): should preserve previous ruby_wrapper value.
39374           [ruby-dev:24226]
39376 Sat Sep  4 01:14:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39378         * eval.c (cvar_cbase): class variables cause SEGV in
39379           instance_eval() for fixnums and symbols. [ruby-dev:24213]
39381 Fri Sep  3 17:47:58 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39383         * struct.c (make_struct): remove redefining constant when
39384           conflict.  [ruby-dev:24210]
39386 Fri Sep  3 11:31:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39388         * ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow
39389           [ruby-dev:24207]
39391 Fri Sep  3 02:12:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39393         * ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
39395         * ext/tk/lib/tk/text.rb: fix typo
39397         * ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs
39399 Fri Sep  3 01:54:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39401         * ext/extmk.rb (extmake): extact target prefix from Makefiles.
39403         * ext/extmk.rb: already built-in libraries satisfy dependencies.
39404           [ruby-dev:24028]
39406 Wed Sep  1 21:16:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39408         * ext/tk/lib/tk/spinbox.rb: fix typo
39410 Wed Sep  1 19:28:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39412         * process.c (rb_proc_exec): label cannot precede variable declarations.
39414 Tue Aug 31 18:20:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39416         * ext/tk/tkutil.c (cbsubst_init): fix memory leak
39418         * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV
39420 Tue Aug 31 16:04:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39422         * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted,
39423           destroy its root widget
39425 Tue Aug 31 12:30:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39427         * ext/tcltklib/tcltklib.c (del_root): fix SEGV
39429 Mon Aug 30 21:50:14 2004  Dave Thomas  <dave@pragprog.com>
39431         * object.c: Add RDoc for Module.included.
39433 Mon Aug 30 23:11:06 2004  Dave Thomas  <dave@pragprog.com>
39435         * lib/rdoc/ri/ri_driver.rb (and others): ri now merges documentation
39436           if it finds the same class in multiple places.
39438 Mon Aug 30 22:40:30 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39440         * ext/tk/lib/multi-tk.rb: 'restart' method accepts arguments
39442 Mon Aug 30 15:10:46 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39444         * configure.in (GNU/k*BSD): fixed FTBFS on GNU/k*BSD. [ruby-dev:24051]
39446 Sun Aug 29 14:08:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39448         * ext/tcltklib/tcltklib.c: compile error on bcc32 [ruby-dev:24081]
39450         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string does not work
39452 Sat Aug 28 23:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39454         * bignum.c (rb_big_and): protect parameters from GC.
39455           [ruby-talk:110664]
39457 Fri Aug 27 12:13:50 2004  Tanaka Akira  <akr@m17n.org>
39459         * ext/stringio/stringio.c (Init_stringio): add StringIO#readpartial as
39460           an alias for StringIO#sysread.
39462 Fri Aug 27 10:14:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39464         * process.c (rb_proc_exec): strip trailing spaces.  [ruby-dev:24143]
39466         * win32/win32.c (CreateChild): ditto.
39468 Thu Aug 26 04:38:29 2004  Dave Thomas  <dave@pragprog.com>
39470         * eval.c (return_jump): Minor typo in error message. Now reads
39471           "return can't jump across threads".
39473 Wed Aug 25 15:18:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39475         * eval.c (rb_longjmp): Exception#to_str is no longer defined.
39477 Wed Aug 25 11:39:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39479         * error.c (exc_equal): exceptions are equal if they share same
39480           class, message and backtrace. [ruby-talk:110354]
39482         * error.c (name_err_mesg_equal): ditto.
39484 Tue Aug 24 16:41:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
39486         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): do not
39487           use a session id as a filename.
39489         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): ditto.
39491         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): use
39492           Dir::tmpdir.
39494 Tue Aug 24 14:32:17 2004  Shugo Maeda  <shugo@ruby-lang.org>
39496         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): untaint
39497           session id after check.
39499 Tue Aug 24 08:57:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39501         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): d2i
39502           functions may replace the pointer indicated by the first argument.
39504         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
39506         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
39508 Mon Aug 23 12:43:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39510         * lib/resolv.rb (Config.default_config_hash): when multiple domains
39511           are set, Win32::Resolv.get_resolv_info returns Array.
39513 Sun Aug 22 16:27:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39515         * ext/openssl/ossl_ssl.c (ossl_ssl_read):
39516           - should return an empty string if specified length to read is 0.
39517           - should check for pending data and wait for fd before reading.
39518           - call underlying IO's sysread if SSL session is not started.
39519           [ruby-dev:24072], [ruby-dev:24075]
39521         * ext/openssl/ossl_ssl.c (ossl_ssl_write):
39522           - call underlying IO's syswrite if SSL session is not started.
39524         * ext/openssl/ossl_ssl.c (ossl_ssl_pending): new method
39525           OpenSSL::SSL#pending.
39527         * ext/openssl/lib/openssl/buffering.rb: should not use select.
39529 Sun Aug 22 01:10:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39531         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
39532           should call :ProxyContentHandler before finishing CONNECT.
39534 Sat Aug 21 06:41:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39536         * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
39538         * lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
39539           uniformly.  [ruby-dev:24118]
39541 Fri Aug 20 14:49:42 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39543         * io.c (rb_io_check_writable): no need to check read buffer if
39544           already changed to write mode.
39546 Fri Aug 20 11:46:43 2004  UENO Katsuhiro  <katsu@blue.sky.or.jp>
39548         * ext/zlib/zlib.c: GzipReader#ungetc caused crc error.
39550 Thu Aug 19 16:29:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39552         * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
39554         * ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
39556         * ext/tk/lib/menu.rb: typo bug.
39558 Thu Aug 19 15:15:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39560         * dir.c (free_dir): fix memory leak.  reported by yamamoto
39561           madoka.
39563 Thu Aug 19 09:19:27 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39565         * configure.in, win32/Makefile.sub (LIBS): need to link shell32
39566           library for SH* functions on mswin32 and mingw32.
39568         * wince/Makefile.sub (LIBS): need to link ceshell library for SH*
39569           functions on mswince.
39571 Thu Aug 19 03:07:00 2004  why the lucky stiff  <why@ruby-lang.org>
39573         * lib/yaml/baseemitter.rb: folding now handles double-quoted strings,
39574           fixed problem with extra line feeds at end of folding, whitespace
39575           opening scalar blocks.
39577         * lib/yaml/rubytypes.rb: subtelties in handling strings with
39578           non-printable characters and odd whitespace patterns.
39580 Wed Aug 18 23:44:20 2004  Minero Aoki  <aamine@loveruby.net>
39582         * lib/net/protocol.rb (rbuf_fill): OpenSSL::SSLSocket has its own
39583           buffer, select(2) might not work. [ruby-dev:24072]
39585 Wed Aug 18 17:10:12 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39587         * ext/tcltklib/stubs.c (ruby_tcltk_stubs): need to call
39588           Tcl_FindExecutable() for Tcl/Tk 8.4.
39590 Wed Aug 18 12:52:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39592         * eval.c (rb_obj_instance_eval): evaluates under special singleton
39593           classes as for special constants.
39595 Wed Aug 18 11:22:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39597         * win32/win32.c (init_env): initialize HOME and USER environment
39598           variables unless set.
39600 Wed Aug 18 10:17:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39602         * eval.c (bind_eval): new method. [RCR 251]
39604         * string.c (rb_str_clear): new method. [ruby-dev:24104]
39606 Tue Aug 17 17:20:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39608         * io.c (rb_io_reopen): should clear allocated OpenFile.  pointed
39609           out by Guy Decoux. [ruby-core:03288]
39611 Tue Aug 17 01:36:32 2004  Dave Thomas  <dave@pragprog.com>
39613         * lib/rdoc/usage.rb: Remove extra indent. Tidy 'ri' option
39614           parsing so RDoc::usage plays better with OptionParser.
39616 Sat Aug 14 02:48:16 2004  Dave Thomas  <dave@pragprog.com>
39618         * lib/rdoc/usage.rb: Added. Allows command line programs
39619           to report usage using their initial RDoc comment.
39621 Sat Aug 14 01:25:48 2004  why the lucky stiff  <why@ruby-lang.org>
39623         * ext/syck/token.c: re2c no longer compiled with bit vectors.  caused
39624           problems for non-ascii characters. [ruby-core:03280]
39625         * ext/syck/implicit.c: ditto.
39626         * ext/syck/bytecode.c: ditto.
39628 Fri Aug 13 12:55:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39630         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_range_header):
39631           fix regex for range-spec.
39633         * lib/webrick/httpservlet/filehandler.rb
39634           (WEBrick::HTTPServlet::DefaultFileHandler#make_partial_content):
39635           multipart/byteranges response was broken.
39637         * lib/xmlrpc/server.rb: refine example code.
39639 Thu Aug 12 10:54:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39641         * rubyio.h (rb_eof_error): should mark as NORETURN.
39643         * win32/win32.c (make_cmdvector): adjust escaped successive
39644           double-quote handling.
39646 Thu Aug 12 01:53:10 2004  Tanaka Akira  <akr@m17n.org>
39648         * io.c (read_buffered_data): extracted from rb_io_fread.
39649           (io_readpartial): new method IO#readpartial.
39650           [ruby-dev:24055]
39652 Wed Aug 11 17:17:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39654         * configure.in (RPATHFLAG): stop setting RPATHFLAG on Interix.
39656 Mon Aug  9 15:03:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39658         * lib/webrick/httpservlet/erbhandler.rb
39659           (WEBrick::HTTPServlet::ERBHandler#do_GET): should select media type
39660           by suffix of script filename.
39662 Mon Aug  9 12:51:43 2004  Dave Thomas  <dave@pragprog.com>
39664         * dir.c (dir_s_glob): Roll in Austin Ziegler's Dir.glob and
39665           fnmatch updates.
39667 Mon Aug  9 06:33:06 2004  Minero Aoki  <aamine@loveruby.net>
39669         * lib/fileutils.rb (cp_r): copies symlink to symlink, except
39670           root entries of cp_r.
39672         * lib/fileutils.rb: new method FileUtils.copy_entry.
39674         * test/fileutils/test_fileutils.rb: more cp_r tests.
39676 Sun Aug  8 00:43:31 2004  why the lucky stiff  <why@ruby-lang.org>
39678         * lib/implicit.c: added sexagecimal float#base60.
39680         * ext/syck/rubyext.c (yaml_org_handler): ditto.
39682         * lib/token.c: indentation absolutely ignored when processing flow
39683           collections.  plain scalars are trimmed if indentation follows in
39684           an ambiguous flow collection.
39686 Sat Aug  7 03:08:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39688         * process.c (proc_daemon): new method.  should be modified for
39689           platforms without /dev/null.
39691 Sat Aug  7 00:50:01 2004  Tanaka Akira  <akr@m17n.org>
39693         * ext/zlib/zlib.c: Zlib::GzipReader#read(0) returns "" instead of nil.
39695 Wed Aug  4 13:26:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39697         * marshal.c (r_bytes0): optimize out read(0). [ruby-talk:108276]
39699 Tue Aug  3 13:49:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39701         * ext/tk/lib/tk/namespace.rb: bug fix
39703         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: add Tk::TreeCtrl.loupe
39705 Mon Aug  2 23:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39707         * test/ruby/test_file.rb (test_fnmatch): added more tests.
39709 Mon Aug  2 18:04:21 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39711         * ext/tk/lib/tk/msgcat.rb (set_translation): bug fix (fail to set
39712           trans_str to the same as src_str when trans_str is not given.)
39714 Mon Aug  2 17:40:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39716         * eval.c (blk_free): fixed serious memory leak. [ruby-dev:24013]
39718 Mon Aug  2 11:53:06 2004  Dave Thomas  <dave@pragprog.com>
39720         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): Fix infinite recursion
39721           looking up some top level symbols (batsman)
39723 Mon Aug  2 11:48:29 2004  Dave Thomas  <dave@pragprog.com>
39725         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Allow '.'s in
39726           variable names to support SWIG generated files (Hans Fugal)
39728 Sat Jul 31 23:08:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39730         * eval.c (is_defined): stupid mistakes fixed. [ruby-dev:24006]
39732 Sat Jul 31 17:39:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39734         * misc/ruby-mode.el (ruby-expr-beg, ruby-parse-partial,
39735           ruby-calculate-indent, ruby-move-to-block, ruby-forward-sexp,
39736           ruby-backward-sexp): keywords must match word-wise.
39738 Sat Jul 31 13:37:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39740         * eval.c (is_defined): avoid unnecessary method invocations.
39742 Sat Jul 31 05:35:37 2004  why the lucky stiff  <why@ruby-lang.org>
39744         * lib/yaml/rubytypes.rb: exceptions were using an older
39745           YAML.object_maker. [ruby-core:03080]
39747         * ext/syck/token.c (sycklex_yaml_utf8): using newline_len to
39748           handline CR-LFs.  "\000" was showing up on folded blocks which
39749           stopped at EOF.
39751 Sat Jul 31 01:25:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39753         * eval.c (is_defined): call is_defined() before invoking
39754           rb_eval().  [ruby-talk:107867]
39756 Fri Jul 30 16:10:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39758         * ext/tcltklib/tcltklib.c (lib_fromUTF8_core): raise ArgumentError when
39759           the unknown encoding name is given.
39761         * ext/tcltklib/tcltklib.c (lib_toUTF8_core): ditto.
39763         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertfrom): bug fix.
39765         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertto): ditto.
39767 Wed Jul 28 18:59:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39769         * lib/cgi.rb (CGI::initialize): remove at_exit code for CGI_PARAMS
39770           and CGI_COOKIES.  they will no longer be used.
39772 Wed Jul 28 15:44:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39774         * eval.c (rb_call0): should call rb_call_super() directly for
39775           visibility overriding.  [ruby-dev:23989]
39777 Wed Jul 28 01:04:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39779         * env.h: remove argv from ruby_frame.
39781         * eval.c (rb_eval): no more copy on write.
39783         * eval.c (assign): ditto.
39785         * eval.c (rb_call0): can receive *rest by specifying negative
39786           argc.  (-1 means 0 arg and *rest, -2 means 1 arg and *rest...)
39788         * eval.c (rb_call0): properly set frame's argc counter.
39790         * gc.c (rb_gc_mark_frame): need not to mark frame's argv
39792         * gc.c (run_final): wrong order of data. [ruby-dev:23984]
39794 Tue Jul 27 07:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39796         * eval.c (rb_eval): copy on write for argument local variable
39797           assignment.
39799         * eval.c (assign): ditto.
39801         * eval.c (rb_call0): update ruby_frame->argv with the default
39802           value used for the optional arguments.
39804         * object.c (Init_Object): "===" calls rb_obj_equal() directly.
39805           [ruby-list:39937]
39807 Mon Jul 26 11:22:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39809         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape): should
39810           escape space.
39812 Sun Jul 25 10:56:28 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39814         * win32/win32.{h,c} (rb_w32_{f,fd,fs}open): workaround for bcc32's
39815           {f,fd,fs}open bug. set errno EMFILE and EBADF. [ruby-dev:23963]
39817         * test/drb/drbtest.rb: fix method duplication.
39819 Sat Jul 24 13:32:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39821         * range.c (rb_range_beg_len): returns Qnil only when "beg" points
39822           outside of a range.  No boundary check for "end".
39824 Fri Jul 23 16:40:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39826         * gc.c (define_final): should not disclose NODE* to Ruby world.
39827           [ruby-dev:23957]
39829 Fri Jul 23 08:52:22 2004  Shugo Maeda  <shugo@ruby-lang.org>
39831         * lib/net/imap.rb (disconnected?): new method.
39833 Thu Jul 22 16:41:54 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39835         * lib/cgi/session.rb (CGI::Session::FileStore#update): sets the
39836           permission of the session data file to 0600.
39838         * lib/cgi/session/pstore.rb (CGI::Session::Pstore#initialize):
39839           ditto.
39841 Mon Jul 19 00:53:46 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39843         * lib/webrick/httpservlet/cgihandler.rb
39844           (WEBrick::HTTPServlet::CGIhandler#do_GET): set SystemRoot environment
39845           variable to CGI process on Windows native platforms. [ruby-dev:23936]
39847 Sun Jul 18 16:14:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39849         * ext/tk/lib/tk/msgcat.rb (TkMsgCatalog.callback): bug fix
39850           ( wrong number of argument )
39852 Sun Jul 18 08:13:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39854         * sprintf.c (rb_f_sprintf): remove extra sign digit.
39856 Sun Jul 18 03:19:14 2004  Akinori MUSHA  <knu@iDaemons.org>
39858         * dir.c (bracket): use NULL instead of 0.
39860 Sun Jul 18 02:35:30 2004  Shugo Maeda  <shugo@ruby-lang.org>
39862         * lib/net/imap.rb (receive_responses): return if a LOGOUT response
39863           received.
39865 Sat Jul 17 23:59:01 2004  Shugo Maeda  <shugo@ruby-lang.org>
39867         * lib/net/imap.rb (send_string_data): wait command continuation
39868           requests before sending octet data of literals.
39870 Sat Jul 17 23:54:59 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39872         * ext/tk/lib/tk/variable.rb: TkVariable#ref returns a TkVariable object
39874 Sat Jul 17 22:04:44 2004  akira yamada  <akira@ruby-lang.org>
39876         * lib/uri/ldap.rb: method hierarchical? should be in URI::LDAP.
39878 Sat Jul 17 18:29:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39880         * parse.y (stmt): not to show same error messages twice.
39882 Sat Jul 17 14:18:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39884         * string.c (rb_str_match_m): String#match should also take
39885           optional argument.  [ruby-core:03205]
39887         * re.c (rb_reg_match_m): add optional second argugment "pos" to
39888           specify match start point.  [ruby-core:03203]
39890 Sat Jul 17 13:13:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39892         * lib/irb/ruby-lex.rb (RubyLex::identify_string): %s string do not
39893           process expression interpolation.  [ruby-talk:106691]
39895 Sat Jul 17 05:26:27 2004  Dave Thomas  <dave@pragprog.com>
39897         * lib/rdoc/diagram.rb: Incorporate Micheal Neumann's
39898           client-side imagemao patch
39900 Sat Jul 17 01:57:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39902         * eval.c (THREAD_ALLOC): th->thread should be initialized to NULL.
39903           [ruby-talk:106657]  The solution was found by Guy Decoux.
39905 Fri Jul 16 22:30:28 2004  Michael Neumann  <mneumann@ntecs.de>
39907         * file.c (rb_stat_dev_major): new methods File::Stat#dev_major and
39908           #dev_minor. [ruby-core:03195]
39910 Fri Jul 16 11:17:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39912         * error.c (exit_initialize): use EXIT_SUCCESS instead of 0.
39913           [ruby-dev:23913]
39915         * error.c (exit_success_p): new method SystemExit#success?.
39916           [ruby-dev:23912]
39918         * error.c (syserr_initialize): initialization for subclasses.
39919           [ruby-dev:23912]
39921 Thu Jul 15 23:53:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39923         * lib/optparse.rb (OptionParser#warn, OptionParser#abort): Exception
39924           no longer has to_str method.
39926 Thu Jul 15 22:59:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
39928         * ext/readline/extconf.rb: added dir_config for curses, ncurses,
39929           termcap.
39931 Thu Jul 15 20:44:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39933         * class.c: rdoc patch
39935 Thu Jul 15 14:12:34 2004  why the lucky stiff  <why@ruby-lang.org>
39937         * lib/yaml.rb (YAML::load_file, YAML::parse_file): added.
39939         * ext/syck/token.c: re2c compiled with bit vectors now.
39940         * ext/syck/implicit.c: ditto.
39941         * ext/syck/bytecode.c: ditto.
39943 Thu Jul 15 10:15:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39945         * ext/tk/, ext/tcltklib/: bug fix
39947         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
39948           callbacks.
39949         * ext/tk/lib/tk/msgcat.rb: ditto.
39950         * ext/tk/lib/tk/variable.rb: ditto.
39951         * ext/tk/lib/tk/timer.rb: ditto.
39953         * ext/tk/lib/tk/validation.rb: add Tk::ValidateConfigure.__def_validcmd
39954           to define validatecommand methods easier
39956         * ext/tk/lib/tk.rb (_genobj_for_tkwidget): support autoload Tk ext
39957           classes
39959         * ext/tk/lib/tk/canvas.rb and so on: remove the parent widget type
39960           check for items (e.g. canvas items; depends on the class) to
39961           avoid some troubles on Tk extension widget class definition.
39963         * ext/tk/lib/tkextlib/: add Iwidget and TkTable extension support
39965         * ext/tk/sample/tkextlib/: add samples of Iwidget and TkTable
39968 Wed Jul 14 23:49:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39970         * enum.c (enum_min_by): new method Enum#min_by.  added Enum#max_by
39971           as well.
39973 Wed Jul 14 18:05:21 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39975         * ext/openssl/ossl_asn1.c (ossl_asn1cons_to_der): fix type of
39976           argument. [ruby-dev:23891]
39978         * test/openssl/test_x509store.rb: prune tests for CRL checking
39979           unless X509::V_FLAG_CRL_CHECK is defined.
39981 Wed Jul 14 12:20:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39983         * util.c (ruby_strtod): should not convert string in the form of
39984           "-I.FE-X" which both "I" and "F" are ommitted. [ruby-dev:23883]
39986         * test/ruby/test_float.rb (test_strtod): add test for bug fix.
39988 Wed Jul 14 00:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39990         * array.c: rdoc patch. merged patch from Johan Holmberg
39991           <holmberg@iar.se> [ruby-core:3170]
39993 Tue Jul 13 19:39:12 2004  akira yamada  <akira@ruby-lang.org>
39995         * lib/uri/generic.rb (URI::Generic#merge_path):
39996           "URI('http://www.example.com/foo/..') + './'" should return
39997           "URI('http://www.example.com/')".  [ruby-list:39838]
39998           "URI('http://www.example.com/') + './foo/bar/..'" should return
39999           "URI('http://www.example.com/foo/')".  [ruby-list:39844]
40001         * test/uri/test_generic.rb (TestGeneric#test_merge): added tests.
40003 Tue Jul 13 15:48:56 2004  Akinori MUSHA  <knu@iDaemons.org>
40005         * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
40006            extmk mode.
40008         * lib/mkmf.rb (dir_config): Prepend a new library path instead of
40009           appending so it is tried first.
40011 Tue Jul 13 00:50:48 2004  Dave Thomas  <dave@pragprog.com>
40013         * lib/rdoc/parsers/parse_rb.rb: Support call-seq: for Ruby files.
40015 Mon Jul 12 21:20:51 2004  Dave Thomas  <dave@pragprog.com>
40017         * html_generator.rb: Support hyperlinks of the form {any text}[xxx]
40018           as well as stuff[xxx]
40020 Sat Jul 10 09:30:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40022         * test/soap/marshal/test_struct.rb: use qualified built-in class name
40023           (::Struct) to avoid name crash.
40025 Sat Jul 10 04:21:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40027         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
40028           callbacks.
40029         * ext/tk/lib/tk/msgcat.rb: ditto.
40030         * ext/tk/lib/tk/variable.rb: ditto.
40031         * ext/tk/lib/tk/timer.rb: ditto.
40033         * ext/tk/lib/tk/validation.rb (__def_validcmd):  add a module
40034           function of Tk::ValidateConfigure to define validatecommand
40035           methods easier
40037 Fri Jul  9 22:18:59 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40039         * array.c, enum.c, pack.c: rdoc patch from Johan Holmberg
40040           <holmberg@iar.se> [ruby-core:3132] [ruby-core:3136]
40042         * numeric.c: rdoc patch.
40044 Fri Jul  9 19:26:39 2004  Tanaka Akira  <akr@m17n.org>
40046         * lib/open-uri.rb (URI::HTTPS#proxy_open): raise ArgumentError to
40047           notice https is not supported.
40049 Fri Jul  9 14:28:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40051         * eval.c (rb_thread_raise): accept third argument as well as
40052           Kernel#raise, and evaluate the arguments to create an exception in
40053           the caller's context.  [ruby-talk:105507]
40055 Fri Jul  9 01:47:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40057         * ext/tk/lib: bug fix
40058         * ext/tk/lib/tkextlib/itcl: add [incr Tcl] support
40059         * ext/tk/lib/tkextlib/itk: add [incr Tk] support
40060         * ext/tk/lib/tkextlib/iwidgets: midway point of [incr Widgets] support
40061         * ext/tk/sample/tkextlib/iwidgets: very simple examples of
40062           [incr Widgets]
40064 Thu Jul  8 19:27:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40066         * configure.in (rb_cv_stack_end_address): detect stack end address
40067           variable supplied by system.  [ruby-core:03115]
40069         * gc.c (Init_stack): use system provided address if possible.
40071 Thu Jul  8 00:05:23 2004  akira yamada  <akira@ruby-lang.org>
40073         * lib/tempfile.rb (Tempfile::initialize): got out code of
40074           generating tmpname.  [ruby-dev:23832][ruby-dev:23837]
40076 Wed Jul  7 02:31:41 2004  Kouhei Sutou  <kou@cozmixng.org>
40078         * lib/rss/{rss,parser,0.9,1.0,2.0}.rb: supported RSS 0.9x/2.0
40079           validation and validation which disregard order of elements.
40080         * test/rss/test_parser.rb: added tests for RSS 0.9x/2.0
40081           validation.
40082         * test/rss/{test_trackback,rss-testcase}.rb: fixed no good method
40083           name.
40085 Wed Jul  7 00:48:34 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40087         * ext/tk/lib/tkextlib/tktrans.rb,
40088           ext/tk/lib/tkextlib/treectrl.rb: fix syntax errors.
40090 Tue Jul  6 18:38:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40092         * ext/tk/lib: improve framework of developping Tcl/Tk extension
40093           wrappers
40095 Mon Jul  5 23:56:42 2004  Kouhei Sutou  <kou@cozmixng.org>
40097         * lib/rss/{trackback,syndication,dublincore,content}.rb: worked
40098           with ruby 1.6 again.
40100         * test/rss/rss-assertions.rb: ditto.
40102 Mon Jul  5 22:54:39 2004  Tanaka Akira  <akr@m17n.org>
40104         * lib/uri/common.rb (Kernel#URI): new global method for parsing URIs.
40106 Mon Jul  5 09:02:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40108         * eval.c (rb_thread_yield, rb_f_catch): 4th argument to rb_yield_0()
40109           is a set of bit flags.  [ruby-dev:23859]
40111 Mon Jul  5 01:20:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40113         * lib/drb/drb.rb(DRbConn self.open): If socket pool is full, close
40114           the socket whose last-access-time is oldest. (and add new one)
40115           [ruby-dev:23860]
40117 Sun Jul  4 12:24:50 2004  Kouhei Sutou  <kou@cozmixng.org>
40119         * lib/rss/rss.rb: added copyright header.
40121 Sat Jul  3 22:25:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40123         * added files:
40124           * lib/soap/header/*
40125           * lib/soap/rpc/httpserver.rb
40126           * lib/wsdl/soap/cgiStubCreator.rb
40127           * lib/wsdl/soap/classDefCreator.rb
40128           * lib/wsdl/soap/classDefCreatorSupport.rb
40129           * lib/wsdl/soap/clientSkeltonCreator.rb
40130           * lib/wsdl/soap/driverCreator.rb
40131           * lib/wsdl/soap/mappingRegistryCreator.rb
40132           * lib/wsdl/soap/methodDefCreator.rb
40133           * lib/wsdl/soap/servantSkeltonCreator.rb
40134           * lib/wsdl/soap/standaloneServerStubCreator.rb
40135           * lib/wsdl/xmlSchema/enumeration.rb
40136           * lib/wsdl/xmlSchema/simpleRestriction.rb
40137           * lib/wsdl/xmlSchema/simpleType.rb
40138           * lib/xsd/codegen/*
40139           * lib/xsd/codegen.rb
40140           * sample/soap/authheader/*
40141           * sample/soap/raa2.4/*
40142           * sample/soap/ssl/*
40143           * sample/soap/swa/*
40144           * sample/soap/whois.rb
40145           * sample/wsdl/raa2.4/*
40146           * test/soap/header/*
40147           * test/soap/ssl/*
40148           * test/soap/struct/*
40149           * test/soap/swa/*
40150           * test/soap/wsdlDriver/*
40151           * test/wsdl/multiplefault.wsdl
40152           * test/wsdl/simpletype/*
40153           * test/wsdl/test_multiplefault.rb
40155         * modified files:
40156           * lib/soap/baseData.rb
40157           * lib/soap/element.rb
40158           * lib/soap/generator.rb
40159           * lib/soap/netHttpClient.rb
40160           * lib/soap/parser.rb
40161           * lib/soap/property.rb
40162           * lib/soap/soap.rb
40163           * lib/soap/streamHandler.rb
40164           * lib/soap/wsdlDriver.rb
40165           * lib/soap/encodingstyle/handler.rb
40166           * lib/soap/encodingstyle/literalHandler.rb
40167           * lib/soap/encodingstyle/soapHandler.rb
40168           * lib/soap/mapping/factory.rb
40169           * lib/soap/mapping/mapping.rb
40170           * lib/soap/mapping/registry.rb
40171           * lib/soap/mapping/rubytypeFactory.rb
40172           * lib/soap/mapping/wsdlRegistry.rb
40173           * lib/soap/rpc/cgistub.rb
40174           * lib/soap/rpc/driver.rb
40175           * lib/soap/rpc/proxy.rb
40176           * lib/soap/rpc/router.rb
40177           * lib/soap/rpc/soaplet.rb
40178           * lib/soap/rpc/standaloneServer.rb
40179           * lib/wsdl/data.rb
40180           * lib/wsdl/definitions.rb
40181           * lib/wsdl/operation.rb
40182           * lib/wsdl/parser.rb
40183           * lib/wsdl/soap/definitions.rb
40184           * lib/wsdl/xmlSchema/complexContent.rb
40185           * lib/wsdl/xmlSchema/complexType.rb
40186           * lib/wsdl/xmlSchema/data.rb
40187           * lib/wsdl/xmlSchema/parser.rb
40188           * lib/wsdl/xmlSchema/schema.rb
40189           * lib/xsd/datatypes.rb
40190           * lib/xsd/qname.rb
40191           * sample/soap/sampleStruct/server.rb
40192           * sample/wsdl/amazon/AmazonSearch.rb
40193           * sample/wsdl/amazon/AmazonSearchDriver.rb
40194           * test/soap/test_property.rb
40195           * test/soap/calc/test_calc_cgi.rb
40196           * test/wsdl/test_emptycomplextype.rb
40198         * summary
40199           * add SOAP Header mustUnderstand support.
40201           * add HTTP client SSL configuration and Cookies support (works
40202             completely with http-access2).
40204           * add header handler for handling sending/receiving SOAP Header.
40206           * map Ruby's anonymous Struct to common SOAP Struct in SOAP Object
40207             Model.  it caused error.
40209           * add WSDL simpleType support to restrict lexical value space.
40211 Sat Jul  3 17:19:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40213         * ext/tk/lib/tkextlib/tkDND.rb: fix syntax error.
40215 Thu Jul  1 18:36:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40217         * ext/tk/lib/tcltklib: bug fix
40219         * ext/tk/lib/tk: bug fix and add Tcl/Tk extension support libraries
40221 Thu Jul  1 18:31:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40223         * lib/pstore.rb (PStore#transaction): get rid of opening in write mode
40224           when read only transaction.  [ruby-dev:23842]
40226 Thu Jul  1 00:44:42 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40228         * ext/openssl/ossl_cipher.c (ossl_cipher_encrypt, ossl_cipher_decrypt):
40229           re-implemnt (the arguments for this method is ).
40231         * ext/openssl/ossl_cipher.c (ossl_cipher_pkcs5_keyivgen): new method
40232           OpenSSL::Cipher::Cipher#pkcs5_keyivgen. it calls EVP_BytesToKey().
40234         * ext/openssl/ossl_cipher.c (ossl_cipher_set_key_length): new method
40235           OpenSSL::Cipher::Cipher#key_len=.
40237 Wed Jun 30 19:48:09 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40239         * ext/openssl/extconf.rb: check for EVP_CIPHER_CTX_copy, ENGINE_add,
40240           EVP_CIPHER_CTX_set_padding, EVP_CipherFinal_ex, EVP_CipherInit_ex,
40241           EVP_DigestFinal_ex and EVP_DigestInit_ex.
40243         * ext/openssl/openssl_missing.c (EVP_CIPHER_CTX_copy): new function.
40245         * ext/openssl/openssl_missing.h (EVP_DigestInit_ex, EVP_DigestFinal_ex,
40246           EVP_CipherInit_ex, EVP_CipherFinal_ex, HMAC_Init_ex): new macro for
40247           OpenSSL 0.9.6.
40249         * ext/openssl/ossl_cipher.c (ossl_cipher_alloc, ossl_cipher_initialize,
40250           ossl_cipher_copy, ossl_cipher_reset, ossl_cipher_encrypt,
40251           ossl_cipher_decrypt, ossl_cipher_final, ossl_cipher_set_key,
40252           ossl_cipher_set_iv): replace all EVP_CipherInit and
40253           EVP_CipherFinal into EVP_CipherInit_ex and EVP_CipherFinal_ex.
40254           and EVP_CIPHER_CTX_init should only be called once.
40256         * ext/openssl/ossl_cipher.c (ossl_cipher_set_padding): check for
40257           EVP_CIPHER_CTX_set_padding.
40259         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Cipher#<< is deprecated.
40261         * ext/openssl/ossl_digest.c: replace all EVP_DigestInit and
40262           EVP_DigestFinal into EVP_DigestInit_ex and EVP_DigestFinal_ex.
40263           and EVP_MD_CTX_init should only be called once.
40265         * ext/openssl/ossl_digest.c (digest_final): should call
40266           EVP_MD_CTX_cleanup to avoid memory leak.
40268         * ext/openssl/ossl_hmac.c (ossl_hmac_initialize): repalce HMAC_init
40269           into HMAC_init_ex. and HMAC_CTX_init is moved to ossl_hmac_alloc.
40271         * ext/openssl/ossl_hmac.c (hmac_final): should call
40272           HMAC_CTX_cleanup to avoid memory leak.
40274         * test/openssl/test_cipher.rb, test/openssl/test_digest.rb,
40275           test/openssl/test_hmac.rb: new file.
40277 Wed Jun 30 16:59:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40279         * test/ruby/test_file.rb (test_fnmatch): some tests for File.fnmatch
40280           are added.
40282 Wed Jun 30 11:38:51 2004  Mikael Brockman  <phubuh@phubuh.org>
40284         * parse.y (primary): should not be NULL.  [ruby-core:03098]
40286 Wed Jun 30 02:41:10 2004  why the lucky stiff  <why@ruby-lang.org>
40288         * ext/syck/rubyext.c (syck_emitter_new): set buffer after
40289           Data_Wrap_Struct to avoid possible GC. [ruby-talk:104835]
40291 Tue Jun 29 10:31:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40293         * eval.c (rb_eval_cmd, rb_thread_trap_eval): restore safe level.
40295         * gc.c (define_final, run_final): preserve and restore safe level for
40296           finalizers.  [ruby-core:03058]
40298         * signal.c (signal_exec, rb_trap_exit, trap): preserve and restore
40299           safe level for signal handlers.  [ruby-dev:23829]
40301 Mon Jun 28 14:57:56 2004  Jeff Mitchell  <quixoticsycophant@yahoo.com>
40303         * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
40304           DOSISH compilers.  [ruby-core:03107]
40306 Mon Jun 28 00:35:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
40308         * sample/drb/*.rb: using 'DRb.thread.join' instead of 'gets'
40310 Sun Jun 27 22:36:47 2004  Kouhei Sutou  <kou@cozmixng.org>
40312         * sample/rss/tdiary_plugin/rss-recent.rb: supported Hiki.
40314 Sat Jun 26 15:17:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40316         * variable.c (rb_mod_class_variables): class variables are no longer
40317           inherited.  [ruby-dev:23808]
40319 Sat Jun 26 11:07:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40321         * configure.in (aix): -b must come at the start of the command line,
40322           and -e must not appear while testing libraries.  [ruby-talk:104501]
40324         * lib/mkmf.rb (find_header, dir_config): quote directory names if
40325           necessary.  [ruby-talk:104505]
40327 Sat Jun 26 00:13:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40329         * io.c (rb_fopen, rb_fdopen, rb_io_reopen): setvbuf() may return
40330           positive value on failure.  [ruby-dev:23792]
40332 Fri Jun 25 18:07:15 2004  Michal Rokos  <michal@ruby-lang.org>
40334         * gc.c: bring back _stklen for DJGPP [ruby-core:3084]
40336 Fri Jun 25 15:33:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40338         * ext/iconv/extconf.rb: check stricter.  [ruby-talk:104501]
40340 Fri Jun 25 01:58:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40342         * {bcc32,win32,wince}/setup.mak: remove RUBY_EXTERN lines when
40343           including version.h. [ruby-talk:104456]
40345 Thu Jun 24 14:23:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40347         * io.c (rb_io_fread): return already read data when system call is
40348           interrupted.  [ruby-talk:97206]
40350 Thu Jun 24 01:25:21 2004  Shugo Maeda  <shugo@ruby-lang.org>
40352         * version.h: added declarations of ruby_version,
40353           ruby_release_date, ruby_platform.
40355 Thu Jun 24 01:07:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40357         * ext/socket/socket.c (sock_sockaddr): Socket#gethostbyname()
40358           should give us packed address, not struct sockaddr.
40359           [ruby-core:03053]
40361 Wed Jun 23 22:19:10 2004  Dave Thomas  <dave@pragprog.com>
40363         * ext/socket/socket.c (sock_s_gethostbyaddr): Work around problem
40364           with OS X not returning 'from' parameter to recvfrom for
40365           connection-oriented sockets.
40367 Wed Jun 23 22:16:16 2004  Michal Rokos  <michal@ruby-lang.org>
40369         * io.c: io_seek()'s retval should be checked [ruby-core:03045]
40371 Wed Jun 23 21:48:27 2004  Michal Rokos  <michal@ruby-lang.org>
40373         * time.c: Fix indentation.
40375         * main.c: Remove _stklen, and _CRT_glob. Move _stacksize for
40376           __human68k__ to gc.c where the others are.
40378         * gc.c: put _stacksize in place and clean the #ifdefs macros.
40380 Wed Jun 23 17:37:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
40382         * lib/net/imap.rb: added new option --ssl.
40384 Wed Jun 23 01:45:27 2004  Dave Thomas  <dave@pragprog.com>
40386         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
40387           Fix problem with the 'r' being dropped from %r{xxx}
40389 Wed Jun 23 00:10:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40391         * ext/win32ole/win32ole.c (ole_hresult2msg): remove trailing
40392           CRs and LFs. (doesn't depend on CR+LF) [ruby-dev:23749]
40394 Wed Jun 23 00:00:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40396         * eval.c (return_jump, break_jump): raise unexpected local jump
40397           exception directly.  [ruby-dev:23740]
40399         * io.c (rb_io_initialize): should check fcntl result.  [ruby-dev:23742]
40401 Tue Jun 22 23:35:43 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40403         * sprintf.c (rb_f_sprintf): support FZERO and FSPACE with NaN/Inf.
40405         * test/ruby/test_sprintf.rb (test_nan, test_inf): add tests.
40407 Tue Jun 22 21:11:36 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
40409         * ext/win32ole/win32ole.c (OLE_FREE): should not call CoFreeUnuse-
40410           dLibraries().
40412         * ext/win32ole/win32ole.c (ole_event_free): ditto.
40414         * ext/win32ole/win32ole.c (ole_hresult2msg): truncate error message
40415           before CR.
40417 Tue Jun 22 19:24:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40419         * sprintf.c (rb_f_sprintf): unify output of NaN, Inf and -Inf with
40420           "%f" or etc on all platform. [ruby-dev:23704], [ruby-dev:23747]
40422 Tue Jun 22 15:28:12 2004  Michal Rokos  <michal@ruby-lang.org>
40424         * compar.c: Remove explicit NIL_P() checks since rb_cmpint() does it
40425           again in the exactly same manner.
40427 Tue Jun 22 01:32:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40429         * ext/openssl/ossl_pkey_dh.c (ossl_dh_initialize): should create
40430           empty pkey object if no argument is passed. [ruby-talk:103328]
40432         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto.
40434         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_initialize): ditto.
40436         * ext/openssl/ossl_pkey_dh.c: add new methods: OpenSSL::PKey::DH#p,
40437           OpenSSL::PKey::DH#p=, OpenSSL::PKey::DH#g, OpenSSL::PKey::DH#g=,
40438           OpenSSL::PKey::DH#pub_key, OpenSSL::PKey::DH#pub_key=,
40439           OpenSSL::PKey::DH#priv_key and OpenSSL::PKey::DH#priv_key=.
40441         * ext/openssl/ossl_pkey_dsa.c: add new methods: OpenSSL::PKey::DSA#p,
40442           OpenSSL::PKey::DSA#p=, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#q=,
40443           OpenSSL::PKey::DSA#g, OpenSSL::PKey::DSA#g=,
40444           OpenSSL::PKey::DSA#pub_key, OpenSSL::PKey::DSA#pub_key=,
40445           OpenSSL::PKey::DSA#priv_key and OpenSSL::PKey::DSA#priv_key=.
40447 Mon Jun 21 09:24:51 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40449         * win32/win32.c (rb_w32_opendir): should set errno if error occurs
40450           when calling OS API.
40452 Sun Jun 20 21:12:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
40454         * lib/net/ftp.rb (binary=): send TYPE commands only once.
40456 Sat Jun 19 13:27:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40458         * eval.c (method_call): allow changing $SAFE.  [ruby-dev:23713]
40460         * eval.c (proc_set_safe_level, proc_invoke, rb_mod_define_method): not
40461           set $SAFE for methods defined from Proc.  [ruby-dev:23697]
40463 Sat Jun 19 01:10:12 2004  Kouhei Sutou  <kou@cozmixng.org>
40465         * sample/rss/tdiary_plugin/rss-recent.rb: added more information.
40467 Fri Jun 18 23:12:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40469         * eval.c (proc_save_safe_level, rb_set_safe_level, safe_setter): limit
40470           safe level.
40472 Wed Jun 16 23:05:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40474         * object.c (rb_mod_freeze): prepare string representation before
40475           freezing. [ruby-talk:103646]
40477 Wed Jun 16 19:57:24 2004  Michal Rokos  <michal@ruby-lang.org>
40479         * test/ruby/test_array.rb: extend testcase to check #first, #last,
40480           #shift, #unshift, #pop, #push
40482 Wed Jun 16 16:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40484         * array.c (ary_new): move alloc behind checks.  [ruby-core:02982]
40486         * array.c (rb_ary_pop_m, rb_ary_shift_m): take arg to behave as push
40487           and unshift.
40489         * array.c (rb_ary_first, rb_ary_last): make shared array for result
40490           array, and correct doc for Array#first(n) and Array#last(n)
40492         * array.c (rb_ary_select): not accept any arg.
40494 Wed Jun 16 16:03:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40496         * object.c (rb_class_inherited_p): singleton class inherits Class
40497           rather than its object's class.  [ruby-dev:23690]
40499 Wed Jun 16 16:01:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40501         * gc.c (stack_grow_direction): memoize the direction.
40503         * gc.c (Init_stack): should always move to end of VALUE.
40505 Tue Jun 15 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40507         * ext/tk/lib/tk.rb: bug fix (TkWindow#grab)
40509 Mon Jun 14 18:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40511         * ext/tk/lib/remote-tk.rb: bug fix
40513 Sun Jun 13 00:23:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40515         * ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) support
40517         * ext/tcltklib/tcltklib.c: fix thread trouble on callback proc, and
40518           eliminate warning about instance variable access
40520         * ext/tk/lib/tk/menubar.rb: improve supported menu_spec
40522         * ext/tk/lib/tk/menuspec.rb: [add] menu_spec support library
40524         * ext/tk/lib/tk/root.rb: add menu_spec support
40526         * ext/tk/lib/tk/text.rb: bug fix
40528         * ext/tk/lib/tk/toplevel.rb: add menu_spec support
40530         * ext/tk/sample/menubar?.rb: [add] sample of menu_spec usage
40532 Sat Jun 12 14:15:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40534         * dir.c: RDOC for File::FNM_CASEFOLD was missed.
40536 Sat Jun 12 11:15:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40538         * configure.in (target_os): strip -gnu suffix on Linux.
40540 Fri Jun 11 22:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40542         * array.c: remove #indexes, #indices.
40544         * hash.c: ditto.
40546         * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning
40547           from #select.
40549         * ext/gdbm/gdbm.c: ditto.
40551         * ext/sdbm/init.c: ditto.
40553         * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when
40554           DB_VERSION_STRING is not available.
40556 Thu Jun 10 19:19:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40558         * ext/sdbm/init.c (fsdbm_store): sdbm should use StringValue().
40559           [ruby-talk:103062]
40561 Wed Jun  9 16:09:01 2004  akira yamada  <akira@ruby-lang.org>
40563         * lib/uri/generic.rb (URI::Generic::merge,
40564           URI::Generic::route_from): accepts non-hierarchical URI.
40565           [ruby-dev:23631]
40567         * test/uri/test_generic.rb (TestGeneric::test_route,
40568           TestGeneric::test_merge): added tests for above changes.
40570 Wed Jun  9 15:39:55 2004  Akinori MUSHA  <knu@iDaemons.org>
40572         * configure.in: Add support for DragonFly BSD.
40574 Wed Jun  9 15:07:06 2004  Akinori MUSHA  <knu@iDaemons.org>
40576         * config.guess, config.sub: Update to a more recent version as of
40577           2004-01-20.
40579 Wed Jun  9 11:20:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40581         * win32/win32.c: remove unused functions and variables.
40583 Wed Jun  2 20:16:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40585         * string.c (str_new4): should share shared instance if it already
40586           exists.  [ruby-dev:23665]
40588 Wed Jun  2 12:41:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40590         * io.c (rb_io_gets_m): set lastline ($_) even when read line is
40591           nil.  [ruby-dev:23663]
40593 Fri May 28 11:20:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40595         * eval.c (rb_eval): bad influence on frame node.
40597         * eval.c (eval): reverted wrongly removed condition.  [ruby-dev:23638]
40599 Thu May 27 21:37:50 2004  Tanaka Akira  <akr@m17n.org>
40601         * lib/pathname.rb (Pathname#initialize): fix pathname initialization
40602           by pathname.
40604 Thu May 27 20:02:09 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40606         * io.c (rb_io_fwrite): check all case errno != 0 [ruby-dev:23648]
40608 Thu May 27 15:54:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
40610         * lib/net/ftp.rb (MDTM_REGEXP): fix for demon's ftp server.
40611           Thanks, Rutger Nijlunsing.
40613 Thu May 27 14:53:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40615         * io.c (rb_io_fwrite): workaround for bcc32's fwrite bug.
40616           add errno checking.  [ruby-dev:23627]
40618         * io.c (rb_io_fwrite): should check if errno == ENOENT, too.
40620 Thu May 27 11:25:03 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40622         * test/csv/test_csv.rb: illegal require module name (../lib/csv.rb).
40624 Wed May 26 23:12:13 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40626         * lib/csv.rb (CSV.read, CSV.readlines): added.  works as IO.read and
40627           IO.readlines in CSV format.
40629         * lib/csv.rb (CSV.parse): [CAUTION] behavior changed.  in the past,
40630           CSV.parse accepts a filename to be read-opened (it was just a
40631           shortcut of CSV.open(filename, 'r')).  now CSV.parse accepts a
40632           string or a stream to be parsed e.g.
40633           CSV.parse("1,2\n3,r") #=> [['1', '2'], ['3', '4']]
40635         * test/csv/test_csv.rb: follow above changes.
40637 Wed May 26 14:19:42 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40639         * eval.c (rb_eval, eval): make line number consistent on eval with
40640           Proc.  [ruby-talk:101253]
40642 Wed May 26 13:59:17 2004  Dave Thomas  <dave@pragprog.com>
40644         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::skip_for_variable): Allow for
40645           'do' after for statement
40647 Wed May 26 13:56:03 2004  Dave Thomas  <dave@pragprog.com>
40649         * lib/rdoc/generators/html_generator.rb (Generators::MarkUp::style_url): Fix
40650           relative path to code CSS file
40652 Wed May 26 13:14:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40654         * io.c (rb_io_init_copy): copy also positions.  [ruby-talk:100910]
40656 Wed May 26 00:00:00 2004  why the lucky stiff  <why@ruby-lang.org>
40658         * ext/syck/syck.c (syck_new_parser): clear parser on init.
40659           thanks, ts. [ruby-core:02931]
40661         * ext/syck/token.c (sycklex_yaml_utf8): buffer underflow.
40662           thanks, ts. [ruby-core:02929]
40664         * lib/yaml/baseemitter.rb (indent_text): simpler flow block code.
40666 Tue May 25 11:54:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40668         * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block
40669           to a Proc.  [ruby-dev:23533]
40671         * parse.y (block_par, block_var): ditto.
40673 Tue May 25 01:50:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40675         * ext/openssl/ossl_asn1.c (ossl_i2d_ASN1_TYPE, ossl_ASN1_TYPE_free):
40676           workaround for the versions earlier than OpenSSL-0.9.7.
40678 Mon May 24 10:46:26 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
40680         * lib/rdoc/generators/template/html/html.rb: SYSTEM identifiers
40681           must be absolute URIs
40683 Sun May 23 04:53:50 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
40685         * lib/pstore.rb (transaction): allow overriding dump and load.
40686           [ruby-dev:23567]
40688         * lib/yaml/store.rb: follow lib/pstore.rb's change.
40690 Sat May 22 11:54:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40692         * MANIFEST: add test/openssl/test_x509store.rb.
40694         * ext/tk/MANIFEST: add recent files.
40696 Sat May 22 05:37:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40698         * ext/tk/lib/remote-tk.rb: (NEW library) controll Tk interpreters
40699           on the other processes by Tcl/Tk's 'send' command
40701 Fri May 21 09:22:05 2004  Dave Thomas  <dave@pragprog.com>
40703         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_parameters):
40704           Add ()'s around parameters that don't have them
40706 Fri May 21 02:21:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40708         * lib/csv.rb: fixed a few bugs around multi char record/field separator.
40710         * test/csv/test_csv.rb: added boundary test for above feature.
40712 Thu May 20 17:02:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40714         * lib/mkmf.rb (check_sizeof): define result size.  [ruby-core:02911]
40716         * lib/mkmf.rb (create_header): macro name should not include equal
40717           sign.
40719 Thu May 20 14:35:52 2004  Tanaka Akira  <akr@m17n.org>
40721         * ext/socket/socket.c: check SCM_RIGHTS macro addition to
40722           the msg_control field to test existence of file descriptor passing
40723           by msg_control.
40725 Thu May 20 12:38:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40727         * numeric.c (flo_eq): always check if operands are NaN.
40728           [ruby-list:39685]
40730 Thu May 20 12:34:39 2004  Dave Thomas  <dave@pragprog.com>
40732         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_visibility):
40733           At Ryan Davis' suggestion, honor visibility modifers if guarded by a
40734           statement modifier
40736 Thu May 20 12:22:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40738         * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
40739           which always get compiled.
40740           [ruby-list:39683]
40742 Wed May 19 23:45:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40744         * test/inlinetest.rb (InlineTest::loadtest): requiring library with
40745           replaced $0 can make $0 == __FILE__ block be evaluated twice.
40747         * test/ruby/envutil.rb (EnvUtil::rubybin): give priority to
40748           environment variable.  [ruby-dev:23538]
40750 Wed May 19 11:08:10 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40752         * ext/tk/lib/tk.rb: change permition of TkObject#tk_send from
40753           private to public
40755 Wed May 19 02:29:36 2004  Minero Aoki  <aamine@loveruby.net>
40757         * lib/net/http.rb: support TRACE.
40759 Wed May 19 02:21:53 2004  Minero Aoki  <aamine@loveruby.net>
40761         * lib/net/http.rb: do not use class variables.
40763 Tue May 18 21:21:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40765         * lib/csv.rb: writes lines with "\n" when row separator is not given.
40766           formerly it was "\r\n".
40768         * lib/csv.rb: [CAUTION] API change
40770           * CSV::Row removed.  a row is represented as just an Array.  since
40771             CSV::Row was a subclass of Array, it won't hurt almost all programs
40772             except one which depended CSV::Row#match.
40774           * CSV::Cell removed.  a cell is represented as just a String or
40775             nil(NULL).  this change will cause widespread destruction.
40777               CSV.open("foo.csv", "r") do |row|
40778                 row.each do |cell|
40779                   if cell.is_null       # Cell#is_null
40780                     p "(NULL)"
40781                   else
40782                     p cell.data         # Cell#data
40783                   end
40784                 end
40785               end
40787             must be just;
40789               CSV.open("foo.csv", "r") do |row|
40790                 row.each do |cell|
40791                   if cell.nil?
40792                     p "(NULL)"
40793                   else
40794                     p cell
40795                   end
40796                 end
40797               end
40799         * lib/csv.rb: [CAUTION] record separator(CR, LF, CR+LF) behavior
40800           change.  CSV.open, CSV.parse, and CSV,generate now do not force
40801           opened file binmode.  formerly it set binmode explicitly.
40803           with CSV.open, binmode of opened file depends the given mode
40804           parameter "r", "w", "rb", and "wb".  CSV.parse and CSV.generate open
40805           file with "r" and "w".
40807           setting mode properly is user's responsibility now.
40809         * lib/csv.rb: accepts String as a fs (field separator/column separator)
40810           and rs (record separator/row separator)
40812         * lib/csv.rb: added CSV.foreach(path, rs = nil, &block).  CSV.foreach
40813           now does not handle "| cmd" as a path different from IO.foreach.
40814           needed?
40816         * test/csv/test_csv.rb: updated.
40818 Tue May 18 14:24:20 2004  why the lucky stiff  <why@ruby-lang.org>
40820         * lib/yaml.rb: added rdoc to beginning of lib.
40822 Tue May 18 14:00:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40824         * node.h (NEW_DSTR): adjust list length.
40826         * parse.y (literal_concat): ditto.
40828 Tue May 18 09:30:25 2004  SASADA Koichi  <ko1@atdot.net>
40830         * eval.c (rb_method_node): search cache entry first.
40832 Mon May 17 16:04:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40834         * numeric.c (flo_to_s): it's preferable that "p 0.0" outputs "0.0"
40835           instead of "0.0e+00". [ruby-dev:23480]
40837         * numeric.c (flo_to_s): it's preferable that "p 0.00000000000000000001"
40838           outputs "1.0e-20" instead of "9.999999999999999e-21". (the precision
40839           is considered, but there is assumption DBL_DIG == 15 in current
40840           implementation)
40842 Mon May 17 10:13:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40844         * ext/socket/socket.c (setup_domain_and_type): honor duck typing.
40845           [ruby-dev:23522]
40847         * ext/socket/socket.c (sock_s_getnameinfo): ditto.
40849 Mon May 17 00:36:21 2004  why the lucky stiff  <why@ruby-lang.org>
40851         * lib/yaml/baseemitter.rb (indent_text): was forcing a mod value
40852           of zero at times, which kept some blocks from getting indentation.
40854 Mon May 17 00:07:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
40856         * lib/drb/drb.rb: Cosmetic documentation changes.
40858 Sun May 16 20:55:49 2004  Tanaka Akira  <akr@m17n.org>
40860         * ext/dbm/dbm.c (fdbm_initialize): accept optional 3rd argument to
40861           specify an open flag.
40862           (Init_dbm): define open flags: DBM::READER, DBM::WRITER, DBM::WRCREAT
40863           and DBM::NEWDB.
40865 Sat May 15 17:52:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40867         * test/ruby/test_float.rb(test_strtod): Add test for signed 0.000...1
40869 Sat May 15 14:20:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40871         * ext/syck/depend: add ruby's headers.
40873 Sat May 15 13:38:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40875         * ext/syck/MANIFEST, ext/syck/depend: new file.
40877         * lib/yaml/rubytypes.rb: range of exponential floats.  [ruby-core:02824]
40879         * test/yaml/test_yaml.rb: tests for strings start with colon and some
40880           round trip.
40882 Sat May 15 12:04:58 2004  why the lucky stiff  <why@ruby-lang.org>
40884         * lib/yaml.rb: removed fallback to pure Ruby parser.
40886         * lib/yaml/baseemitter.rb (node_text): rewriting folded scalars.
40888         * ext/syck/syck.h: reports style of scalars now, be they plain, block
40889           single-, or double-quoted.
40891         * ext/syck/syck.c: ditto.
40893         * ext/syck/gram.c: ditto.
40895         * ext/syck/node.c: ditto.
40897         * ext/syck/token.c: ditto.
40899         * ext/syck/rubyext.c (yaml_org_handler): symbols loaded only
40900           if scalar style is plain.
40902         * test/yaml/test_yaml.rb (test_perl_regexp): updated test to
40903           match new regexp serialization.
40905 Sat May 15 01:41:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40907         * eval.c (eval): forgot to restore $SAFE value before evaluating
40908           compiled node.  [ruby-core:02872]
40910 Sat May 15 01:33:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40912         * range.c (range_each_func): terminates loop if generating value
40913           is same to @end.  [ruby-talk:100269]
40915 Fri May 14 22:08:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40917         * string.c (rb_str_new4): should not reuse frozen shared string if
40918           the original is not an instance of String. [ruby-talk:100193]
40920 Fri May 14 21:29:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40922         * time.c (time_mdump): preserve GMT bit in the marshal data.
40923           [ruby-talk:100213]
40925 Fri May 14 18:37:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40927         * ext/tk/lib/tk/canvas.rb: improve coords support for canvas
40928           items. Now, supports all of the followings.
40929                TkcLine.new(c, 0, 0, 100, 100, :fill=>'red')
40930                TkcLine.new(c, [0, 0, 100, 100], :fill=>'red')
40931                TkcLine.new(c, [0, 0], [100, 100], :fill=>'red')
40932                TkcLine.new(c, [[0, 0], [100, 100]], :fill=>'red')
40933                TkcLine.new(c, :coords=>[0, 0, 100, 100], :fill=>'red')
40934                TkcLine.new(c, :coords=>[[0, 0], [100, 100]], :fill=>'red')
40936 Fri May 14 13:30:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40938         * test/ruby/test_float.rb: Add test for util.c revision 1.42.
40940 Fri May 14 12:13:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40942         * util.c (ruby_strtod): strtod("0", &end); => end should point '\0'.
40943          [ruby-dev:23498]
40945 Thu May 13 15:47:30 2004  akira yamada  <akira@ruby-lang.org>
40947         * lib/net/telnet.rb (Net::Telnet::login): "options" can specify
40948           regexps for login prompt and/or password prompt.
40950 Thu May 13 14:17:57 2004  why the lucky stiff  <why@ruby-lang.org>
40952         * ext/syck/rubyext.c (yaml_org_handler): some empty strings were
40953           loaded as symbols.
40955 Thu May 13 11:04:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40957         * pack.c (pack_pack): always add with null for 'Z'.
40959         * pack.c (pack_unpack): terminated by null for 'Z'.  [ruby-talk:98281]
40961 Wed May 12 19:59:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40963         * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
40964           [ruby-talk:99788]
40966 Wed May 12 17:41:42 2004  Tanaka Akira  <akr@m17n.org>
40968         * lib/resolv.rb (Resolv::DNS::Config): make it configurable without
40969           external file such as /etc/resolv.conf.
40971 Wed May 12 14:37:27 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40973         * ext/openssl/ossl_x509name.c: attribute value of DC (short name of
40974           domainComponent) should be IA5String.
40976 Wed May 12 13:20:19 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40978         * ext/tk/lib/tk/composite.rb: improve configure methods (based on
40979           the proposal of [ruby-talk:99671]).
40981 Wed May 12 11:51:08 2004  Dave Thomas  <dave@pragprog.com>
40983         * class.c (rb_obj_singleton_methods): fix rdoc
40985 Tue May 11 07:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40987         * eval.c (is_defined): do not protect exception during receiver
40988           evaluation.
40990 Mon May 10 22:28:14 2004  Minero Aoki  <aamine@loveruby.net>
40992         * lib/net/protocol.rb (each_crlf_line): remove junk line.
40994 Mon May 10 21:44:42 2004  Dave Thomas  <dave@pragprog.com>
40996         * lib/rdoc/generators/html_generator.rb: Change scheme for
40997           looking up symbols in  HTML generator.
40999 Mon May 10 16:45:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41001         * eval.c (eval): warning during eval should not cause deadlock.
41002           [ruby-talk:98651]
41004         * eval.c (rb_eval): raise TypeError exception for superclass
41005           mismatch.  [ruby-list:39567]
41007 Mon May 10 12:11:37 2004  Dave Thomas  <dave@pragprog.com>
41009         * lib/rdoc/generators/html_generator.rb: Hack to search parents
41010           for unqualified constant names.
41012 Mon May 10 01:18:15 2004  Minero Aoki  <aamine@loveruby.net>
41014         * lib/net/pop.rb (logging): append "\n".
41016 Sun May  9 23:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41018         * lib/net/ftp.rb: ported documentation improvement from 1.8 branch
41020         * lib/net/imap.rb:   ditto
41022         * lib/net/pop.rb:    ditto
41024         * lib/net/smtp.rb:   ditto
41026         * lib/net/telnet.rb: ditto
41028 Sun May  9 23:34:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41030         * test/ruby/test_float.rb: added test_strtod to test Float("0").
41032 Sun May  9 13:24:24 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41034         * lib/yaml/store.rb: use FileUtils::copy.
41036 Sun May  9 12:34:26 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41038         * regex.c: removed unused file.
41040 Sat May  8 10:53:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41042         * io.c (rb_f_open): open should not ignore block when "to_open"
41043           method is used.  [ruby-dev:23478]
41045 Fri May  7 22:07:39 2004  Minero Aoki  <aamine@loveruby.net>
41047         * lib/fileutils.rb (mv): new option `force'. [ruby-talk:99457]
41049         * lib/fileutils.rb: new method for command option reflection:
41050           FileUtils.commands, .options, .have_option?, .options_of,
41051           .collect_methods.
41053         * lib/fileutils.rb: module Verbose, NoWrite, DryRun do not have
41054           option flags @fileutils_verbose and @fileutils_noop, they make no
41055           sense.
41057 Fri May  7 21:50:21 2004  Dave Thomas  <dave@pragprog.com>
41059         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_include): Allow
41060           multiple arguments to 'include'
41062 Fri May  7 21:03:51 2004  Minero Aoki  <aamine@loveruby.net>
41064         * lib/fileutils.rb (fu_list): Array() breaks pathes including "\n".
41065           [ruby-core:02843]
41067         * test/fileutils/test_fileutils.rb (mkdir): test "\n" in path.
41069 Fri May  7 20:53:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41071         * ext/dbm/dbm.c (fdbm_modify): typo fixed. [ruby-dev:23473]
41073 Fri May  7 11:17:27 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41075         * util.c (ruby_strtod): "0.0000000000000000001" should be converted
41076           to 1.0e-19 instead of 0.0. (leading zeros aren't significant digits)
41077           [ruby-talk:99318] [ruby-dev:23465]
41079 Thu May  6 22:27:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41081         * ext/socket/socket.c (ippaddr): use NUMERICHOST if can not resolve
41082           hostname.
41084 Thu May  6 22:09:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41086         * ext/tk/tkutil.c (get_eval_string_core): bug fix. [ruby-dev:23466]
41088 Thu May  6 14:22:29 2004  why the lucky stiff  <why@ruby-lang.org>
41090         * lib/yaml/rubytypes.rb (to_yaml): added instance variable handling
41091           for Ranges, Strings, Structs, Regexps.
41093         * lib/yaml/rubytypes.rb (to_yaml_fold): new method for setting a
41094           String's flow style.
41096         * lib/yaml.rb (YAML::object_maker): now uses Object.allocate.
41098         * ext/syck/gram.c: fixed transfer methods on structs, broke it
41099           last commit.
41101 Thu May  6 14:38:02 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41103         * dir.c (rb_push_glob): simplified code (not change behavior)
41105 Thu May  6 13:32:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41107         * ext/extmk.rb: get rid of side effect of Config.expand, patched by
41108           <tttt01@infoseek.jp>  (ruby-bugs:PR#597)
41110 Thu May  6 11:40:28 2004  Shugo Maeda  <shugo@ruby-lang.org>
41112         * lib/net/imap.rb (string): accept NIL.
41114         * lib/net/imap.rb (body_type_basic): allow body-fields omissions.
41116 Thu May  6 01:59:04 2004  Dave Thomas  <dave@pragprog.com>
41118         * lib/rdoc/generators/html_generator.rb (Generators::HtmlMethod::params):
41119           Don't include the &block parameter if we have explicit
41120           yield parameters.
41122 Wed May  5 03:52:31 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41124         * lib/rinda/ring.rb: use recv instead of recvfrom.
41126 Wed May  5 00:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41128         * lib/gserver.rb: documented
41129         * lib/xmlrpc/README.txt: introduced for documentation purposes
41131 Mon May  3 09:47:24 2004  Dave Thomas  <dave@pragprog.com>
41133         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
41134           Fix parsing bug if yield called within 1 line block
41136 Sun May  2 21:56:48 2004  Minero Aoki  <aamine@loveruby.net>
41138         * test/fileutils/test_fileutils.rb (rm_f, rm_r): test :force flag.
41140 Sun May  2 01:04:38 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41142         * ext/tcltklib, ext/tk: renewal Ruby/Tk
41144 Fri Apr 30 20:08:41 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41146         * time.c (SIZEOF_TIME_T): support SIZEOF_TIME_T == SIZEOF_INT.
41148 Wed Apr 28 01:26:11 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41150         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8.
41152 Wed Apr 28 01:16:23 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41154         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.7.
41156 Tue Apr 27 14:43:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41158         * common.mk: LIBURUBY_A is needed for extconf.rb even when
41159           cross-compiling.
41161 Tue Apr 27 13:33:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41163         * parse.y (string_content): turn off NODE_NEWLINE flag to avoid
41164           unnecessary line trace for inlined expression.
41165           (ruby-bugs PR#1320)
41167 Tue Apr 27 08:15:13 2004  why the lucky stiff  <why@ruby-lang.org>
41169         * lib/yaml/rubytypes.rb: passing Range tests.
41171         * ext/syck/syck.h: version 0.44.
41173         * ext/syck/gram.c: transfers no longer open an indentation.
41174           fixed transfers which precede blocks.
41176         * ext/syck/token.c: ditto.
41178         * ext/syck/syck.c: fixed segfault if an anchor has been released already.
41180         * ext/syck/node.c (syck_free_members): organized order of free'd nodes.
41182         * ext/syck/rubyext.c (syck_emitter_write_m): test for proper string with
41183           StringValue.
41185 Mon Apr 26 23:56:54 2004  Daniel Kelley  <news-1082945587@dkelley.gmp.san-jose.ca.us>
41187         * README.EXT, README.EXT.ja: fixed wrong function signature.
41188           [ruby-talk:98349]
41190 Mon Apr 26 21:40:09 2004  Dave Thomas  <dave@pragprog.com>
41192         * lib/rdoc/code_objects.rb (RDoc::Context::add_alias): Only alias
41193           to instance methods.
41195 Sun Apr 25 18:26:23 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41197         * configure.in (ac_cv_func_fork): set to no on DJGPP.
41199 Sat Apr 24 14:32:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41201         * re.c: applied stack error handling patch. [ruby-dev:23431]
41203 Sat Apr 24 10:38:31 2004  Dave Thomas  <dave@pragprog.com>
41205         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::group_lines):
41206           Fix bug where consecutive headings are merged.
41208 Fri Apr 23 23:24:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41210         * lib/mkmf.rb: $hdrdir should not contain macros, for backward
41211           compatibility.  [bruby-dev:28]
41213         * lib/mkmf.rb (create_makefile): in the case of extout, just copy
41214           script files, without comparison.
41216 Fri Apr 23 16:38:46 2004  Tanaka Akira  <akr@m17n.org>
41218         * lib/pathname.rb: sync taint/freeze flag between
41219           a pathname object and its internal string object.
41221 Fri Apr 23 14:52:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41223         * parse.y (stmt, arg, aref_args): should not make sole splat into
41224           array, in aref_args other than aref with op_asgn.
41226 Fri Apr 23 14:14:38 2004  Tanaka Akira  <akr@m17n.org>
41228         * lib/resolv.rb: don't use Regexp#source to embed regexps.
41229           [ruby-dev:23432]
41231 Thu Apr 22 18:25:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41233         * common.mk, ext/extmk.rb: make ext and .ext get removed by distclean.
41235 Thu Apr 22 10:07:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41237         * */Makefile.sub (distclean-local): should remove $(RBCONFIG).
41239 Thu Apr 22 04:17:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41241         * eval.c (rb_mod_define_method): allow binding methods to modules.
41242           [ruby-dev:23410]
41244         * parse.y (aref_args): should pass expanded list.  [ruby-core:02793]
41246 Thu Apr 22 01:12:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41248         * numeric.c (flo_to_s): tweak output string based to preserve
41249           decimal point and to remove trailing zeros.  [ruby-talk:97891]
41251         * string.c (rb_str_index_m): use unsigned comparison for T_FIXNUM
41252           search.  [ruby-talk:97342]
41254 Wed Apr 21 23:04:42 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41256         * lib/rinda/rinda.rb, test/rinda/test_rinda.rb: check Hash tuple size.
41258 Wed Apr 21 20:05:00 2004  Tanaka Akira  <akr@m17n.org>
41260         * lib/open-uri.rb (URI::HTTP#proxy_open): set Host: field explicitly.
41261           [ruby-list:39542]
41263 Wed Apr 21 18:39:46 2004  Minero Aoki  <aamine@loveruby.net>
41265         * lib/net/smtp.rb: merge SMTP-TLS patch.  This patch is
41266           contributed by Daniel Hob. [ruby-core:02789]
41268 Wed Apr 21 18:23:45 2004  Minero Aoki  <aamine@loveruby.net>
41270         * lib/net/smtp.rb: change coding style: def m( a ) -> def m(a).
41272 Wed Apr 21 18:01:47 2004  Minero Aoki  <aamine@loveruby.net>
41274         * lib/net/pop.rb: do not use class variables.
41276         * lib/net/pop.rb (do_start): ensure to clean up connection when
41277           authentication failed.
41279 Wed Apr 21 17:23:59 2004  Minero Aoki  <aamine@loveruby.net>
41281         * lib/net/http.rb (HTTP#connect): CONNECT must precede SSL connect.
41282           [ruby-dev:23379]
41284         * lib/net/http.rb (HTTP.new): class variables are not inherited
41285           now.
41287 Wed Apr 21 15:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41289         * lib/test/unit/ui/console/testrunner.rb (test_started): restore $0
41290           after changing process title.  [ruby-talk:97426]
41292 Wed Apr 21 10:18:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41294         * process.c(rb_spawn): fix SEGV at "p system('command line here')"
41295          (may happen only in bccwin32) [ruby-dev:23380]
41297 Mon Apr 19 20:58:44 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41299         * dir.c: Updated RDocs.
41301 Mon Apr 19 18:11:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41303         * hash.c (rb_hash_equal): returns true if two hashes have same set
41304           of key-value set.  [ruby-talk:97559]
41306         * hash.c (rb_hash_eql): returns true if two hashes are equal and
41307           have same default values.
41309 Mon Apr 19 08:19:11 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
41311         * dln.c, io.c, pack.c, lib/benchmark.rb, lib/cgi.rb, lib/csv.rb,
41312           lib/date.rb, lib/ftools.rb, lib/getoptlong.rb, lib/logger.rb,
41313           lib/matrix.rb, lib/monitor.rb, lib/set.rb, lib/thwait.rb,
41314           lib/timeout.rb, lib/yaml.rb, lib/drb/drb.rb, lib/irb/workspace.rb,
41315           lib/net/ftp.rb, lib/net/http.rb, lib/net/imap.rb, lib/net/pop.rb,
41316           lib/net/telnet.rb, lib/racc/parser.rb, lib/rinda/rinda.rb,
41317           lib/rinda/tuplespace.rb, lib/shell/command-processor.rb,
41318           lib/soap/rpc/soaplet.rb, lib/test/unit/testcase.rb,
41319           lib/test/unit/testsuite.rb: typo fix.
41321 Mon Apr 19 08:14:18 2004  Dave Thomas  <dave@pragprog.com>
41323         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Allow for
41324           #ifdef HAVE_PROTOTYPES
41326 Fri Apr 16 17:04:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41328         * string.c (rb_str_equal): always returns true or false, never
41329           returns nil. [ruby-dev:23404]
41331 Fri Apr 16 12:38:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41333         * lib/drb/drb.rb (DRb::DRbUnknown::initialize): Exception#to_str is
41334           deprecated.
41336         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform): multiple
41337           value class changed.
41339         * lib/drb/invokemethod.rb (DRb::DRbServer::InvokeMethod18Mixin::block_yield):
41340           ditto.
41342 Fri Apr 16 08:27:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41344         * ext/extmk.rb: skip linking when libraries to be preloaded not
41345           compiled.  [ruby-list:39561]
41347 Thu Apr 15 19:57:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41349         * process.c (pst_success_p): new method Process::Status#success?.
41350           [ruby-dev:23385]
41352         * rubytest.rb: do nothing while cross-compiling, return status in
41353           system independent style.
41355 Thu Apr 15 19:26:54 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41357         * dir.c (rb_push_glob): Dir.glob() should return nil if block is given.
41358           (http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Dir)
41360         * dir.c (push_braces): Dir.glob() should handle '{ }' nested more than
41361           3 times.
41363         * dir.c (push_braces, rb_push_glob): Dir.glob() should handle escaped
41364           '{' and '}' and ','.
41366           [ruby-dev:23376]
41368 Thu Apr 15 17:12:13 2004  Tanaka Akira  <akr@m17n.org>
41370         * ext/gdbm/gdbm.c (Init_gdbm): define GDBM::READER, GDBM::WRITER,
41371           GDBM::WRCREAT and GDBM::NEWDB.
41372           (fgdbm_initialize): use specified read/write flag.
41374 Wed Apr 14 13:06:09 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
41376         * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c,
41377           process.c, re.c, string.c: typos in RDoc comments.  [ruby-core:02783]
41379 Wed Apr 14 11:29:56 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41381         * numeric.c (flo_eq): workaround for bcc32's bug.
41382           (ruby-bugs-ja:PR#594)
41384 Wed Apr 14 11:06:38 2004  Dave Thomas  <dave@pragprog.com>
41386         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::scan): Changed
41387           behavior of :enddoc: -- it now unconditionally terminates
41388           processing of the current file.
41390 Wed Apr 14 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41392         * defines.h: include <net/socket.h> to get fd_set definition in BeOS.
41394 Tue Apr 13 23:00:55 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41396         * lib/rinda/rinda.rb: change pattern matching.
41397           a === b -> a == b || a === b. [druby-ja:98]
41399         * test/rinda/test_rinda.rb: ditto.
41401 Tue Apr 13 21:50:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41403         * bcc32/Makefile.sub (PHONY): Borland make disallows empty command
41404           rules.
41406 Tue Apr 13 17:55:16 2004  Minero Aoki  <aamine@loveruby.net>
41408         * lib/net/http.rb (begin_transport): should not overwrite HTTP
41409           request header. [ruby-list:39543]
41411 Tue Apr 13 16:48:00 2004  Minero Aoki  <aamine@loveruby.net>
41413         * lib/net/pop.rb: merge POP3S patch.  This patch is contributed by
41414           Daniel Hobe.
41416 Tue Apr 13 02:56:29 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41418         * common.mk: changed the order of ascii.c alphabetically.
41420 Mon Apr 12 19:11:21 2004  Eric Hodel  <drbrain@segment7.net>
41422         * gc.c (rb_gc_copy_finalizer): typo.  [ruby-core:02774]
41424 Mon Apr 12 18:45:58 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41426         * ext/openssl/ossl_x509name.c (ossl_x509name_init_i): should return
41427           a value.
41429 Mon Apr 12 10:39:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41431         * dir.c (rb_glob2, rb_glob, push_globs, push_braces, rb_push_glob):
41432           fix memory leak. (leaked when block was interrupted)
41434 Sun Apr 11 19:10:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41436         * ruby.c (require_libraries): restore source file/line after
41437           statically linked extensions initialized.  [ruby-dev:23357]
41439 Sun Apr 11 10:47:04 2004  Dave Thomas  <dave@pragprog.com>
41441         * lib/rdoc/code_objects.rb (RDoc::TopLevel::add_class_or_module): Toplevel
41442           classes and modules are a special case too... (handle extending existing
41443           classes with or without :enddoc:)
41445 Sat Apr 10 23:51:13 2004  Dave Thomas  <dave@pragprog.com>
41447         * lib/rdoc/code_objects.rb (RDoc::Context::add_to): Implementation of :enddoc:
41448           made one too many assumptions...
41450 Sat Apr 10 00:00:19 2004  Dave Thomas  <dave@pragprog.com>
41452         * lib/rdoc/markup/simple_markup/inline.rb: Fix problem
41453           with \_cat_<b>dog</b>
41455 Fri Apr  9 17:05:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41457         * dir.c (has_magic, find_dirsep): incomplete '[' matches no character
41458           in Dir.glob. (follows File.fnmatch's behavior)
41460         * dir.c (fnmatch_helper): incomplete escape is ignored in File.fnmatch.
41461           (follows Dir.glob's behavior)
41463         * dir.c (find_dirsep): '/' between '[' and ']' is ignored in Dir.glob.
41464           (follows File.fnmatch with File::FNM_PATHNAME 's behavior)
41466         * dir.c (find_dirsep): escaped slash '\/' loses its meaning as
41467           directory separator in Dir.glob.
41469           [ruby-dev:23291]
41471 Thu Apr  8 20:25:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41473         * ext/extmk.rb (extmake): skip uncompiled extensions.
41475         * lib/mkmf.rb (create_makefile): emit no rules for static library if
41476           $static is nil, e.g., outside of ext/.
41478         * lib/test/unit/ui/console/testrunner.rb (test_started): show test
41479           name via $0.
41481         * runruby.rb: set environments to use the compiled binary.
41483         * test/runner.rb: do nothing while cross-compiling.
41485         * test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
41486           know ruby binary, and restore $: after require.
41488         * test/ruby/envutil.rb: give priority to RUBY environment variable to
41489           use just compiled binary and libraries.
41491 Thu Apr  8 19:03:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41493         * io.c (rb_io_binmode): inverted condition.  [ruby-dev:23349]
41495 Thu Apr  8 18:22:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41497         * ext/iconv/iconv.c (iconv_s_list): return encoding list if no block
41498           is given.  [ruby-dev:23063]
41500 Wed Apr  7 15:29:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41502         * pack.c (pack_pack): use NUM2INT() instead of num2i32().
41504 Wed Apr  7 12:32:02 2004  Kouhei Sutou  <kou@cozmixng.org>
41506         * lib/rss/parser.rb, lib/rss/1.0.rb: accepted rdf:resource or
41507           resource attribute in rdf:li.
41508         * test/rss/test_parser.rb: added test for above change.
41510         * lib/rss/dublincore.rb: reverted style.
41512         * lib/rss/xmlparser.rb: normalized XMLParser class hierarchy.
41514 Wed Apr  7 10:43:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41516         * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
41517           doesn't work for object files on VC.
41519         * */Makefile.sub (config.h): need SIZEOF_TIME_T now.
41521 Wed Apr  7 00:24:34 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41523         * lib/rinda/rinda.rb: fix hash tuple bug.
41525         * lib/rinda/tuplespace.rb: ditto.
41527         * test/rinda/test_rinda.rb
41529 Tue Apr  6 18:24:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41531         * file.c (rb_get_path): get path string via "to_path" method if
41532           path object is not a string. [Ruby2]
41534         * gc.c (rb_gc_call_finalizer_at_exit): do not free threads in the
41535           exit finalizers.
41537         * io.c (rb_io_reopen): should use rb_io_check_io().
41539 Tue Apr  6 16:46:09 2004  Tanaka Akira  <akr@m17n.org>
41541         * configure.in: check the size of time_t.
41543         * time.c (time_add): new function.
41544           (time_plus): use time_add.
41545           (time_minus): use time_add.
41547 Tue Apr  6 13:11:48 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41549         * ext/socket/socket.c (raise_socket_error): never return.
41551         * ext/socket/socket.c (make_hostent): must return value.
41553 Tue Apr  6 00:14:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41555         * error.c (Init_Exception): remove Exception#to_str. [Ruby2]
41557         * eval.c (error_print): should no call "to_str" anymore use
41558           "message" method instead.
41560         * io.c (rb_f_open): Kernel#open() calls "to_open" if the first
41561           argument responds to it. [Ruby2]
41563 Tue Apr  6 00:13:43 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41565         * lib/rinda/rinda.rb: add require 'drb/drb'
41567 Mon Apr  5 22:25:32 2004  Tanaka Akira  <akr@m17n.org>
41569         * test/zlib/test_zlib.rb: new file.
41570           (TestZlibGzipWriter#test_new_nil): test for [ruby-dev:23228].
41572 Mon Apr  5 22:16:23 2004  Minero Aoki  <aamine@loveruby.net>
41574         * parse.y (assoc_list): {a: 1, b: 2} should be allowed.
41575           [ruby-dev:23328]
41577 Mon Apr  5 19:43:40 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41579         * regexec.c: imported Oni Guruma 2.2.6.
41581 Mon Apr  5 19:39:10 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41583         * regparse.c, oniguruma.h: imported Oni Guruma 2.2.6.
41585 Mon Apr  5 12:12:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41587         * ext/socket/socket.c (raise_socket_error): some platforms don't have
41588           EAI_SYSTEM.
41590 Mon Apr  5 08:18:23 2004  Dave Thomas  <dave@pragprog.com>
41592         * lib/rdoc/rdoc.rb: Remove leading ./ from file names so that cross
41593           references work properly.
41595 Sun Apr  4 14:01:20 2004  Dave Thomas  <dave@pragprog.com>
41597         * lib/rdoc/options.rb (Options::parse): Allow multiple -x options to
41598           RDoc. Fix bug where files weren't being excluded properly
41600 Sat Apr  3 09:36:38 2004  why the lucky stiff  <why@ruby-lang.org>
41602         * ext/syck/syck.h: version 0.43.
41604 Sat Apr  3 08:28:47 2004  why the lucky stiff  <why@ruby-lang.org>
41606         * ext/syck/lib/gram.c: allow root-level inline collections.
41607           [ruby-talk:94922]
41609         * lib/yaml/rubytypes.rb (Symbol#to_yaml): emit symbols as implicits.
41610           [ruby-talk:94930]
41612 Fri Apr  2 19:28:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41614         * bcc32/Makefile.sub (OUTFLAG): needed for static-linked-ext.
41616 Fri Apr  2 18:00:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41618         * ext/extmk.rb (extmake): extract necessary variables for static link
41619           from Makefile.
41621         * lib/mkmf.rb (create_makefile): save preload and libpath for next
41622           compile.
41624 Fri Apr  2 17:27:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41626         * eval.c (top_include): include in the wrapped load is done for
41627           the wrapper, not for a singleton class for wrapped main.
41628           [ruby-dev:23305]
41630 Fri Apr  2 15:13:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41632         * bignum.c (rb_big_eq): use temporary double variable to save the
41633           result (internal float register may be bigger than 64 bits, for
41634           example, 80 bits on x86).  [ruby-dev:23311]
41636 Fri Apr  2 14:35:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41638         * eval.c (block_pass): should generate unique identifier of the
41639           pushing block.  [ruby-talk:96363]
41641 Fri Apr  2 11:36:20 2004  Minero Aoki  <aamine@loveruby.net>
41643         * eval.c (Init_load): make $LOADED_FEATURES built-in.
41644           [ruby-dev:23299]
41646         * ruby.c (ruby_prog_init): make $PROGRAM_NAME built-in.
41648         * lib/English.rb: remove $LOADED_FEATURES and $PROGRAM_NAME.
41650 Fri Apr  2 07:31:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41652         * ext/socket/socket.c: mistakingly removed do_not_reverse_lookup.
41653           [ruby-list:39475]
41655         * ext/socket/socket.c (make_hostent): fix memory leak, based on
41656           the patch from HORIKAWA Hisashi <vzw00011@nifty.ne.jp>.
41658 Thu Apr  1 22:55:33 2004  Dave Thomas  <dave@pragprog.com>
41660         * lib/rdoc/parsers/parse_rb.rb: Allow rdoc comments in
41661           =begin rdoc/=end
41663         * lib/rdoc/parsers/parse_rb.rb: Fix problem with comment in
41664           top-level method being taken as file comment.
41666 Thu Apr  1 22:55:04 2004  Dave Thomas  <dave@pragprog.com>
41668         * lib/rdoc/ri/ri_options.rb: Fix undefined variable warning.
41670 Thu Apr  1 19:58:37 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41672         * lib/soap/mapping/{factory.rb,registry.rb}: fixed illegal mapped URI
41673           object with soap/marshal.
41674           added URIFactory class for URI mapping.  BasetypeFactory checks
41675           instance_variables when original mapping is not allowed (ivar must
41676           be empty).  Instance of URI have instance_variables but it must be
41677           llowed whenever original mapping is allowed or not.
41679 Wed Mar 31 19:06:23 2004  Tanaka Akira  <akr@m17n.org>
41681         * time.c (year_leap_p): new function.
41682           (timegm_noleapsecond): ditto.
41683           (search_time_t): use timegm_noleapsecond instead of
41684           mktime for first guess.
41686 Wed Mar 31 12:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41688         * lib/delegate.rb (DelegateClass): define internal methods of the
41689           result class, but not metaclass of the caller.  [ruby-talk:96156]
41691         * intern.h: provide proper prototypes.  [ruby-core:02724]
41693         * ruby.h: missing.h is now prerequisite to intern.h.
41695 Wed Mar 31 11:17:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41697         * pack.c (pack_pack): raises RangeError if uv is out of UTF8 value
41698           range.  [ruby-dev:23281]
41700         * io.c (rb_io_binmode): stdio buffer should be empty when calling
41701           IO#binmode.  [ruby-talk:96155]
41703 Tue Mar 30 20:25:34 2004  Tanaka Akira  <akr@m17n.org>
41705         * time.c (search_time_t): limit guess range by mktime if it is
41706           available.  [ruby-dev:23274]
41708 Tue Mar 30 18:19:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41710         * eval.c (rb_eval): fix SEGV at retry in iterator's receiver.
41711           [ruby-dev:23227]
41713 Mon Mar 29 20:17:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41715         * process.c (rb_exec): follow older behavior if close-on-exec is not
41716           available.
41718         * process.c (rb_fork): protect from exceptions while waiting failed
41719           process, if status is given.
41721 Sun Mar 28 16:25:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41723         * cygwin/GNUmakefile.in (clean-local, distclean-local): remove
41724           work files.
41726         * win32/Makefile.sub (clean-local): ditto.
41728 Sun Mar 28 14:23:02 2004  Minero Aoki  <aamine@loveruby.net>
41730         * lib/net/pop.rb: def m( arg ) -> def m(arg).
41732 Sun Mar 28 14:09:13 2004  Minero Aoki  <aamine@loveruby.net>
41734         * lib/net/pop.rb (auth): failed when account/password include "%".
41735           [ruby-talk:95933]
41737 Sat Mar 27 21:40:41 2004  Tanaka Akira  <akr@m17n.org>
41739         * lib/open-uri.rb: permit extra semicolon in content-type field.
41741 Sat Mar 27 10:40:48 2004  Tanaka Akira  <akr@m17n.org>
41743         * (lib/pp.rb, lib/prettyprint.rb): define seplist in PP::PPMethods
41744           instead of PrettyPrint.
41746 Sat Mar 27 01:47:09 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41748         * lib/logger.rb: trim tail space of each line.  no user visible change.
41750         * lib/rss/dublincore.rb: fixed class definition mismatch.
41752         * sample/openssl/gen_csr.rb: fixed wrong usage text.
41754 Thu Mar 25 23:15:24 2004  Dave Thomas  <dave@pragprog.com>
41756         * lib/rdoc/ri/ri_options.rb (RI::Options::show_version):
41757           Add --version option
41759 Thu Mar 25 21:45:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
41761         * ext/bigdecimal/bigdecimal.c: Bug in + and - reported by Bret Jolly
41762           fixed.
41764 Thu Mar 25 21:01:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41766         * version.c (ruby_show_copyright): obtain copyright year from
41767           RUBY_RELEASE_YEAR.
41769         * win32/resource.rb: ditto.
41771 Thu Mar 25 19:37:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41773         * win32/resource.rb: default rubyw icon to ruby.ico, and let DLL also
41774           include them.
41776         * win32/resource.rb: include winver.h for older WindowsCE.
41778 Thu Mar 25 14:01:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41780         * common.mk, */Makefile.sub (lib, dll): phony targets.
41782         * configure.in (ruby, miniruby): ditto.
41784         * cygwin/GNUmakefile.in (rubyw): ditto.
41786 Thu Mar 25 04:16:18 2004  Dave Thomas  <dave@pragprog.com>
41788         * lib/rdoc/ri/ri_options.rb (RI::Options): Add the --list-names option,
41789           which dumps our all known names
41791 Thu Mar 25 03:57:47 2004  Dave Thomas  <dave@pragprog.com>
41793         * lib/rdoc/ri/ri_util.rb (NameDescriptor::initialize): No longer
41794           allow nested classes to be designated using "."--you must
41795           now use "::"
41797 Thu Mar 25 02:00:18 2004  Dave Thomas  <dave@pragprog.com>
41799         * lib/rdoc/generators/template/html/one_page_html.rb (Page):
41800           Fix to work with C modules.
41802 Wed Mar 24 20:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41804         * lib/uri.rb: Documented (thanks Dmitry V. Sabanin).
41805         * lib/uri/common.rb: Ditto.
41806         * lib/uri/ftp.rb: Ditto.
41807         * lib/uri/generic.rb: Ditto.
41808         * lib/uri/http.rb: Ditto.
41809         * lib/uri/https.rb: Ditto.
41810         * lib/uri/ldap.rb: Ditto.
41811         * lib/uri/mailto.rb: Ditto.
41813 Wed Mar 24 18:48:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41815         * lib/mkmf.rb ($ruby, $topdir, $hdrdir): should not be affected by
41816           DESTDIR after installed.
41818         * lib/mkmf.rb (dummy_makefile): default file lists to be cleaned.
41820 Wed Mar 24 12:32:56 2004  Dave Thomas  <dave@pragprog.com>
41822         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_class_module):
41823           Don't document methods if we don't know for sure the
41824           class or module.
41826         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
41827           Don't store documentation for singleton classes if we
41828           don't know the real class.
41830 Wed Mar 24 11:11:26 2004  Dave Thomas  <dave@pragprog.com>
41832         * lib/rdoc/generators/html_generator.rb (Generators::HTMLGenerator::load_html_template):
41833           Allow non-RDoc templates by putting a slash in the template name
41835 Wed Mar 24 10:05:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41837         * lib/tempfile.rb (Tempfile::_close): should not clear @tmpname
41838           until the file is really removed. [ruby-core:02684]
41840 Wed Mar 24 04:12:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41842         * object.c (rb_mod_cvar_get): new method Module#class_variable_get.
41844         * object.c (rb_mod_cvar_set): ditto (Module#class_variable_set).
41846 Tue Mar 23 17:45:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41848         * eval.c (rb_thread_atfork): 1.9 warns no more for thread
41849           termination.  [ruby-dev:23212]
41851 Tue Mar 23 14:46:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41853         * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
41854           separate files under directories due to directory separator.
41856         * */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
41857           removed.
41859         * win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
41860           rules.
41862         * cygwin/GNUmakefile.in: some mingw stuffs were missed.
41864         * lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
41865           from command lines.
41867         * bcc32/Makefile.sub: needs bcc32/mkexports.rb.
41869 Mon Mar 22 08:21:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41871         * Makefile.in, */Makefile.sub, common.mk: extract common portions.
41873         * Makefile.in, cygwin/GNUmakefile.in, */Makefile.sub (RBCONFIG):
41874           separated time stamp file for rbconfig.rb.
41876         * configure.in: append common.mk to Makefile.
41878         * mkconfig.rb: keep mtime of rbconfig.rb if unchanged.
41880         * win32/rm.bat: remove multiple files.
41882         * wince/mkconfig_wce.rb: use fake.rb instead.
41884 Sun Mar 21 22:17:35 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41886         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host):
41887           sort @virtual_hosts in address, port, host order.
41889         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
41890           hostname should not be match if :ServerAlias is not given.
41892 Sun Mar 21 21:11:16 2004  Keiju Ishitsuka  <keiju@ishitsuka.com>
41894         * lib/shell/*: bug fix for Shell#system(command_line_string).
41896 Sun Mar 21 21:04:42 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41898         * ruby.1: add -width option to .Bl for old groff.
41900 Sun Mar 21 18:57:37 2004  Kouhei Sutou  <kou@cozmixng.org>
41902         * test/rss/*: Test::Unit::TestCase -> RSS::TestCase and
41903           Test::Unit::Assertions -> RSS::Assertions.
41905 Sun Mar 21 18:48:20 2004  Kouhei Sutou  <kou@cozmixng.org>
41907         * lib/rss/{rss,dublincore,syndication}.rb: handled W3CDTF correctly.
41909 Sun Mar 21 18:15:29 2004  Kouhei Sutou  <kou@cozmixng.org>
41911         * test/rss/test_xml-stylesheet.rb: added tests for xml-stylesheet.
41913         * lib/rss/xml-stylesheet.rb: added xml-stylesheet parsing
41914           function.
41916 Sat Mar 20 23:51:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41918         * eval.c (rb_require_safe): preserve old ruby_errinfo.
41919           [ruby-talk:95409]
41921         * eval.c (rb_f_raise): should not clear backtrace information if
41922           exception object already have one.
41924 Sat Mar 20 21:21:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41926         * ext/extmk.rb: rm -rf $extout, not extout.
41928 Sat Mar 20 15:25:36 2004  Dave Thomas  <dave@pragprog.com>
41930         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Force
41931           page background to white.
41933 Sat Mar 20 09:33:36 2004  Tadayoshi Funaba  <tadf@dotrb.org>
41935         * lib/date.rb, lib/date/format.rb: _parse() now accepts fractional
41936           part of second minute that follows a comma or a full stop.
41938 Fri Mar 19 21:06:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41940         * parse.y (assoc_list): allow {sym: val} style Hash. [Ruby2]
41941           this change is done by Nobuyoshi Nakada <nobu@ruby-lang.org>.
41943 Fri Mar 19 15:15:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41945         * variable.c (rb_cvar_set): class variables become private to the
41946           particular class/module. [Ruby2]
41948         * variable.c (rb_cvar_get): ditto.
41950         * variable.c (rb_cvar_defined): ditto.
41952 Fri Mar 19 11:31:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41954         * lib/mkmf.rb ($beos, $solaris): add OS flags.
41956         * lib/mkmf.rb (RUBY): / is not recognized as path separator on
41957            nmake/bmake. [ruby-list:39388]
41959         * lib/mkmf.rb (CLEANLIBS, CLEANOBJS): should remove *.exp with *.so.
41961 Fri Mar 19 01:55:57 2004  Mauricio Fernandez  <batsman.geo@yahoo.com>
41963         * io.c (rb_io_sync): need not to check writable. [ruby-core:02674]
41965 Thu Mar 18 19:47:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41967         * instruby.rb, rubytest.rb: do not depend on srcdir.
41969 Thu Mar 18 18:50:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41971         * mkconfig.rb: no longer embed srcdir and compile_dir into
41972           rbconfig.rb.
41974         * ext/extmk.rb, lib/mkmf.rb: obtain top_srcdir and topdir from library
41975           paths.
41977 Thu Mar 18 17:46:35 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41979         * lib/drb/drb.rb: do not undef :to_a.
41981 Thu Mar 18 16:22:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41983         * eval.c (proc_eq): avoid false positive by using scope and
41984           dyna_vars.  no longer use frame.uniq.
41986         * eval.c (proc_arity): arity is now defined as number of
41987           parameters that would not be ignored. i.e. Proc.new{}.arity
41988           returns zero.  update test suites too.
41990 Thu Mar 18 15:27:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41992         * eval.c: remove specialized version of rb_Array().  use simple
41993           one defined in object.c.
41995         * object.c (Init_Object): remove Kernel#to_a.
41997         * enum.c (enum_zip): use "to_a" instead of "to_ary".
41999 Wed Mar 17 00:22:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42001         * oniguruma.h: imported Oniguruma 2.2.5.
42002         * regparse.c: ditto.
42004 Tue Mar 16 11:14:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42006         * dir.c (fnmatch_helper): File.fnmatch('\.', '.') should return true.
42007           (Rev1.112 lost compatiblity)
42009         * dir.c (fnmatch_helper): File.fnmatch('\/', '/', File::FNM_PATHNAME)
42010           should return true. (Rev1.112 lost compatiblity)
42012         * dir.c (fnmatch): File.fnmatch('**/.boo', '.foo/.boo',
42013           File::FNM_PATHNAME) should return false because of leading period.
42015 Mon Mar 15 17:01:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42017         * error.c (exc_initialize): calling 'to_str' each time just for
42018           type checking is too heavy.  [ruby-core:02661]
42020 Mon Mar 15 10:14:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42022         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SocketForwarder):
42023           add do_not_reverse_lookup.
42025 Mon Mar 15 07:39:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42027         * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this
42028           yield is not break destination. [ruby-dev:23197]
42030 Sun Mar 14 22:07:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42032         * eval.c (rb_thread_raise): err at unstarted thread.  (PR#1302)
42034 Sat Mar 13 14:56:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42036         * test/drb/ut_drb.rb: use 'druby://localhost:0'. [ruby-dev:23078]
42038         * test/drb/ut_eval.rb: ditto.
42040         * test/drb/ut_large.rb: ditto.
42042         * test/drb/ut_safe1.rb: ditto.
42044         * test/drb/ut_drb_drbssl.rb: use 'drbssl://localhost:0'.
42046 Fri Mar 12 23:52:56 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42048         * dir.c (fnmatch): directory recursion '**/' can be used with
42049           File::FNM_PATHNAME. [ruby-dev:22901]
42051         * dir.c (fnmatch, fnmatch_helper): only '/' is accepted as path
42052           separator even in DOSISH environment. [ruby-dev:22974]
42053           [ruby-list:39337]
42055         * dir.c (fnmatch_helper): faster '*' matching.
42057 Fri Mar 12 20:19:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42059         * configure.in (rb_cv_noreturn): default for platforms not support
42060           prototypes.
42062         * ruby.c (ruby_init_loadpath): buffer for path name should have
42063           MAXPATHLEN.
42065         * lib/mkmf.rb (configuration): include topdir and hdrdir in VPATH.
42067         * lib/mkmf.rb (create_makefile): default dependency rule.
42069 Fri Mar 12 07:35:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42071         * lib/webrick/config.rb (WEBrick::Config::General): add
42072           :DoNotReverseLookup.
42074         * lib/webrick/server.rb (WEBrick::GenericServer#accept): call
42075           do_not_reverse_lookup for each socket if :DoNotReverseLookup
42076           is set.  [ruby-code:02357]
42078 Wed Mar 10 22:26:25 2004  Minero Aoki  <aamine@loveruby.net>
42080         * lib/fileutils.rb (remove_dir): should handle symlink correctly.
42081           This patch is contributed by Christian Loew.  [ruby-talk:94635]
42083 Wed Mar 10 16:28:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42085         * eval.c (return_jump): set return value to the return
42086           destination.  separated from localjump_destination().
42088         * eval.c (break_jump): break innermost loop (or thread or proc).
42090         * eval.c (rb_yield_0): set exit_value for block break.
42092 Wed Mar 10 16:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42094         * struct.c (rb_struct_s_def): Struct::new executes block with
42095           generated struct class. [ruby-talk:02606]
42097 Wed Mar 10 15:58:43 2004  Ryan Davis  <ryand@zenspider.com>
42099         * eval.c (eval): Only print backtrace if generating the backtrace
42100           doesn't generate an exception.  [ruby-core:02621]
42102 Wed Mar 10 10:15:16 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42104         * ruby.c (opt_W_getter): get rid of warning.
42106         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
42107           fixed dependency.
42109 Tue Mar  9 13:04:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42111         * io.c (rb_io_ungetc): raise IOError instead of calling
42112           rb_sys_fail().  [ruby-talk:23181]
42114 Tue Mar  9 10:03:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42116         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
42117           replaced regex.c entry with Oniguruma files.
42119 Tue Mar  9 01:09:46 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42121         * Makefile.in: replaced regex.c entry with Oniguruma files.
42123 Mon Mar  8 23:16:07 2004  Minero Aoki  <aamine@loveruby.net>
42125         * lib/net/http.rb: HTTPHeader did not initialized correctly.
42127         * lib/net/http.rb (connect): does same debug output.
42129 Mon Mar  8 21:38:18 2004  Minero Aoki  <aamine@loveruby.net>
42131         * lib/net/http.rb (add_header): remove warning. [ruby-dev:23170]
42133 Mon Mar  8 21:09:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42135         * dir.c (range): Cancel change for incomplete '['. More discussion
42136           is needed.
42138 Mon Mar  8 19:35:13 2004  akira yamada  <akira@arika.org>
42140         * lib/uri/common.rb (URI::REGEXP::PATTERN::HOSTPORT): (?:#{PORT})
42141           -> (?::#{PORT}).  [ruby-dev:23170]
42143 Mon Mar  8 15:03:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42145         * dir.c (range): treat incomplete '[' as ordinary character (like
42146           has_magic does). fix buffer overrun at incomplete escape like '[\'.
42148 Mon Mar  8 13:35:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42150         * regparse.c (parse_exp): need to separate initialization for bcc32.
42151           [ruby-dev:23169]
42153         * oniguruma.h (ONIG_EXTERN): check __GNUC__ instead of __CYGWIN__.
42155 Mon Mar  8 01:05:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42157         * lib/webrick/config.rb (WEBrick::Config::HTTP): rename :RequestHander
42158           to :RequestCallback and add new option :ServerAlias.
42160         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): use
42161           :RequestCallback and warn if :RequestHandler is in server's option.
42163         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should print
42164           error message for WEBrick::HTTPSataus::Error.
42166         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
42167           lookup for hostname from :ServerAlias if the req.host is not match
42168           to :ServerName.
42170         * lib/webrick/httpservlet.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
42171           use $?.exitstatus and refine log message.
42173 Sun Mar  7 16:22:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42175         * Makefile.in (lex.c): use $? instead of $<.
42177         * lib/pstore.rb (commit_new): use FileUtils.copy_stream for Cygwin.
42178           [ruby-dev:23157]
42180 Sun Mar  7 05:34:42 2004  Minero Aoki  <aamine@loveruby.net>
42182         * lib/net/http.rb: HTTPHeader keeps its header fields as an array.
42184         * lib/net/http.rb: new method HTTPHeader#add_header, get_fields.
42186         * lib/net/http.rb: new method HTTPHeader#content_length=.
42188         * lib/net/http.rb: new method HTTPHeader#content_type, main_type,
42189           sub_type, type_params, content_type=, set_content_type.
42191         * lib/net/http.rb (HTTPHeader#basic_encode): result of pack(m) may
42192           contain multiple LFs.
42194 Sun Mar  7 03:11:00 2004  Minero Aoki  <aamine@loveruby.net>
42196         * lib/net/http.rb: new method Net::HTTPRequest#body(=).
42198         * lib/net/http.rb: new method Net::HTTPRequest#body_stream(=).
42200 Sun Mar  7 02:06:07 2004  Minero Aoki  <aamine@loveruby.net>
42202         * lib/net/http.rb: spin off https code again.
42204         * lib/net/https.rb: new file.
42206         * ext/openssl/lib/net/https.rb: removed.  moved to net/https with
42207           slight modifications.
42209         * ext/openssl/lib/net/protocols.rb: removed.  merged with net/http.
42211         * lib/net/protocol.rb: new class BufferedIO.
42213         * lib/net/protocol.rb: InternetMessageIO < BufferedIO.
42215         * lib/net/protocol.rb: BufferedIO.new takes an IO.
42217         * lib/net/smtp.rb: follow InternetMessageIO's change.
42219         * lib/net/pop.rb: ditto.
42221 Sun Mar  7 00:55:03 2004  Minero Aoki  <aamine@loveruby.net>
42223         * lib/net/protocol.rb: remove method: InternetMessageIO#address,
42224           port, ip_address, read_timeout(=), socket.
42226         * lib/net/protocol.rb: simplify code.
42228         * lib/net/protocol.rb: apply latest coding style.
42230 Sat Mar  6 15:15:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42232         * ext/strscan/depend: depends on re.h and regex.h.
42234         * ext/strscan/strscan.c: no version check needed.
42236         * ext/strscan/strscan.c (strscan_init_copy): struct re_registers must
42237           not be bitwise copied.
42239 Sat Mar  6 11:14:33 2004  David Black  <dblack@wobblini.net>
42241         * lib/scanf.rb: refixed the previous fix in IO#block_scanf
42243 Sat Mar  6 10:49:40 2004  David Black  <dblack@wobblini.net>
42245         * lib/scanf.rb: fixed a logic glitch in IO#block_scanf
42247 Sat Mar  6 02:00:19 2004  Minero Aoki  <aamine@loveruby.net>
42249         * lib/net/http.rb: net/https is merged.
42251         * ext/openssl/lib/net/https.rb: ditto.
42253 Sat Mar  6 00:39:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42255         * oniggnu.h: imported from Oniguruma library.
42256         * oniguruma.h: ditto.
42257         * regcomp.c: ditto.
42258         * regenc.c: ditto.
42259         * regenc.h: ditto.
42260         * regerror.c: ditto.
42261         * regex.c: ditto.
42262         * regexec.c: ditto.
42263         * reggnu.c: ditto.
42264         * regint.h: ditto.
42265         * regparse.c: ditto.
42266         * regparse.h: ditto.
42267         * ascii.c: ditto.
42268         * euc_jp.c: ditto.
42269         * sjis.c: ditto.
42270         * utf8.c: ditto.
42272         * MANIFEST: added Oniguruma files listed above.
42274         * LEGAL: added Oniguruma license.
42276         * regex.h: now includes oniggnu.h.
42278         * re.c: applied Oniguruma patch.
42280 Fri Mar  5 23:13:08 2004  Minero Aoki  <aamine@loveruby.net>
42282         * lib/net/http.rb: support WebDAV methods, PROPPATCH, LOCK,
42283           UNLOCK, OPTIONS, PROPFIND, DELETE, MOVE, COPY, MKCOL.
42284           This patch is contributed by Tatsuki Sugiura.
42286 Fri Mar  5 20:58:37 2004  Minero Aoki  <aamine@loveruby.net>
42288         * lib/net/http.rb: Net::HTTPResponse#response is obsolete.
42289           [ruby-core:02592]
42291         * lib/net/http.rb: Net::HTTPResponse#header is obsolete.
42293         * lib/net/http.rb: Net::HTTPResponse#read_header is obsolete.
42295 Fri Mar  5 20:10:57 2004  Minero Aoki  <aamine@loveruby.net>
42297         * ext/strscan/strscan.c: new method StringScanner#initialize_copy
42298           to allow #dup and #clone.
42300         * test/strscan/test_strscan.rb: test StringScanner#dup.
42302 Fri Mar  5 19:42:09 2004  Minero Aoki  <aamine@loveruby.net>
42304         * lib/net/http.rb (HTTPResponse#to_ary): should return an object
42305           which does not respond to #to_ary.  It causes infinite loop in
42306           puts. [ruby-core:02578]
42308 Fri Mar  5 00:51:35 2004  Dave Thomas  <dave@pragprog.com>
42310         * lib/test/unit.rb: Move RDoc documentation so that you can
42311           now say 'ri Test::Unit'
42313 Thu Mar  4 22:31:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42315         * Makefile.in: miniruby is not needed for cross compile.
42317         * configure.in (PREP): miniruby for native compile.
42319 Thu Mar  4 11:46:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42321         * lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
42322           detach server processes to get rid of zombies.
42324 Thu Mar  4 10:41:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42326         * ruby.h (T_MASK): save 1 bit in flags bits by shifting T_xxx
42327           values.
42329 Thu Mar  4 08:08:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42331         * ext/syck/rubyext.c: get rid of warnings.
42333         * lib/rss/taxonomy.rb: ditto.
42335         * lib/rdoc/ri/ri_formatter.rb: ditto.
42337         * test/ruby/test_assignment.rb: ditto.
42339 Thu Mar  4 01:17:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42341         * lib/rdoc/ri/ri_display.rb (DefaultDisplay::page): wait until the
42342           pager terminates.
42344 Wed Mar  3 13:10:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42346         * eval.c (method_hash): new method. [ruby-talk:93968]
42348         * eval.c (proc_eq): do not compare dyna_vars.
42350         * eval.c (proc_hash): new method.
42352         * eval.c (rb_yield_0): protect break/return from within orphan (or
42353           lambda) Proc object.
42355 Wed Mar  3 09:52:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42357         * lib/mkmf.rb ($topdir): use compile_dir only when not installed yet.
42358           [ruby-talk:94098]
42360 Wed Mar  3 01:18:52 2004  Kouhei Sutou  <kou@cozmixng.org>
42362         * lib/rss/converter.rb: handled Uconv::Error.
42364         * lib/rss/dublincore.rb: DublincoreModel -> DublinCoreModel
42366 Wed Mar  3 00:59:30 2004  David Black  <dblack@wobblini.net>
42368         * lib/scanf.rb: soak_up_spaces only ungetc's non-space last
42369           character
42371         * lib/scanf.rb: IO#block_scanf now returns partial last iteration
42372           array if format string matches partly
42374 Tue Mar  2 16:30:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42376         * io.c (pipe_open): erred program name should be reported by
42377           exceptions, instead of the first argument.
42379         * process.c (rb_spawn): ditto.
42381         * process.c (proc_spawn_v): use first argument as program name.
42383         * win32/win32.c (rb_w32_aspawn): ditto.
42385         * win32/win32.c (CreateChild): search executable file if no program
42386           name given.
42388         * lib/drb/extservm.rb (invoke_service_command): use Process.spawn.
42389           [ruby-dev:23103]
42391         * lib/rdoc/ri/ri_display.rb (setup_pager): use IO.popen.
42392           [ruby-dev:23086], [ruby-dev:23103]
42394         * lib/rdoc/diagram.rb (convert_to_png): ditto.
42396         * lib/rdoc/generators/chm_generator.rb (compile_project): ditto.
42398 Tue Mar  2 12:24:03 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42400         * win32/Makefile.sub, wince/Makefile.sub (config.h): shouldn't check
42401           defined? NORETURN. [ruby-dev:23100]
42403 Tue Mar  2 11:28:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42405         * test/ruby/test_iterator.rb (test_ljump): cannot use
42406           assert_nothing_raised due to passing block.
42408 Tue Mar  2 06:23:14 2004  David Black  <dblack@wobblini.net>
42410         * lib/scanf.rb: fixed Kernel#scanf to propagate code block
42412 Mon Mar  1 23:25:40 2004  David Black  <dblack@wobblini.net>
42414         * lib/scanf.rb: Partial fix so STDIN#scanf works with new
42415          STDIN#pos behavior
42417 Mon Mar  1 19:42:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42419         * bcc32/setup.mak: configure's default is "--enable-install-doc"
42421         * win32/setup.mak: ditto.
42423 Mon Mar  1 12:24:10 2004  Dave Thomas  <dave@pragprog.com>
42425         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_alias):
42426           Allow aliases to have parentheses
42428 Sun Feb 29 23:14:53 2004  Dave Thomas  <dave@pragprog.com>
42430         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
42431           Handle :nodoc: on singleton classes.
42433 Sat Feb 28 21:50:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42435         * bcc32/Makefile.sub, bcc32/README.bcc32, bcc32/configure.bat,
42436           bcc32/setup.mak: new configure scheme. use ``configure --prefix=dir''
42437           instead of ``make DESTDIR=dir install''.
42438           --with-static-linked-ext support on bccwin32. [ruby-dev:23034]
42440 Sat Feb 28 21:50:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42442         * bcc32/setup.mak: "configure --disable-install-doc" is now working.
42444         * win32/setup.mak: ditto.
42446 Sat Feb 28 15:09:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42448         * bcc32/configure.bat: append missing label ":exit".
42450         * bcc32/configure.bat: fix typo.
42452 Sat Feb 28 10:31:03 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42454         * MANIFEST: add test_erb.rb
42456         * lib/erb.rb, test/erb/test_erb.rb: don't forget filename,
42457           if both filename and safe_level given. [ruby-dev:23050]
42459 Sat Feb 28 01:08:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42461         * parse.y (yylex): should not allow symbol for invalid global
42462           variable (e.g. `:$-)`). [ruby-core:02518]
42464 Fri Feb 27 20:37:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42466         * eval.c (proc_invoke): no orphan block check is needed when pcall
42467           is true.
42469         * eval.c (localjump_destination): update localjump condition.
42471 Fri Feb 27 02:10:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42473         * eval.c (localjump_destination): lambda should not interfere
42474           return from the yielded block.
42476 Fri Feb 27 00:53:49 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42478         * lib/drb/drb.rb, test/drb/drbtest.rb: require drb/eq.rb by default
42480 Thu Feb 26 12:15:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42482         * win32/win32.c (make_cmdvector): adjust successive double-quote
42483           handling.
42485 Thu Feb 26 09:42:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42487         * hash.c (delete_if_i): use st_delete_safe() (via
42488           rb_hash_delete()) instead of returning ST_DELETE.
42490 Thu Feb 26 02:35:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42492         * process.c (rb_f_exec): get rid of SEGV when exec failed for command
42493           in single string.
42495 Wed Feb 25 21:17:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42497         * gc.c (obj_free), io.c (rb_io_fptr_finalize), rubyio.h (OpenFile):
42498           sharing OpenFile.
42500         * io.c (rb_io_initialize): accept IO instance.  [ruby-dev:22195]
42502 Wed Feb 25 21:16:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42504         * instruby.rb (with_destdir): should return the given argument if no
42505           DESTDIR is given.
42507         * instruby.rb: use path name expansion of cmd.exe.
42509 Wed Feb 25 20:44:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42511         * lib/cgi-lib.rb, lib/getopts.rb, lib/importenv.rb, lib/parsearg.rb:
42512           warn with caller position.
42514         * test/rss/test_content.rb, test/rss/test_dublincore.rb,
42515           test/rss/test_syndication.rb, test/rss/test_trackback.rb: use cgi
42516           instead of cgi-lib.
42518 Tue Feb 24 18:42:03 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42520         * dir.c (glob_helper): '**/' should not match leading period
42521           unless File::FNM_DOTMATCH is set. (like '*/') [ruby-dev:23014]
42523 Tue Feb 24 18:03:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42525         * test/ruby/test_file.rb (test_fnmatch): test for dir.c:1.108.
42527 Tue Feb 24 17:07:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42529         * dir.c (fnmatch): File.fnmatch with File::FNM_PATHNAME was broken
42530           for the pattern including '*' followed by '/'.
42532 Tue Feb 24 13:22:21 2004  Dave Thomas  <dave@pragprog.com>
42534         * lib/rdoc/rdoc.rb (RDoc::RDoc::normalized_file_list): Attempt to get better
42535           heuristics on which files to include and exclude. Now only include
42536           non-standard files if they are explicitly named in ARGV.
42538 Tue Feb 24 07:23:30 2004  Dave Thomas  <dave@pragprog.com>
42540         * lib/rdoc/generators/html_generator.rb: Deal with :stopdoc: when
42541           choosing a default main page to display (ie. don't select a page
42542           if we don't have documentation for it).
42544 Tue Feb 24 06:40:14 2004  Dave Thomas  <dave@pragprog.com>
42546         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_identifier): Handle
42547           class variables in code listings
42549 Tue Feb 24 06:32:27 2004  Dave Thomas  <dave@pragprog.com>
42551         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_aliases): Handle
42552           aliases in C files.
42554 Tue Feb 24 06:16:22 2004  Dave Thomas  <dave@pragprog.com>
42556         * lib/rdoc/rdoc.rb (RDoc::RDoc::document): Now create op dir _before_
42557           parsing files.
42559 Tue Feb 24 06:08:47 2004  Dave Thomas  <dave@pragprog.com>
42561         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_constant):
42562           Start collecting text of constant values earlier: was missing
42563           values in output if there was no space after '='
42565 Tue Feb 24 06:08:25 2004  Dave Thomas  <dave@pragprog.com>
42567         * lib/rdoc/generators/html_generator.rb: Escape contant values.
42569 Tue Feb 24 03:45:06 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42571         * ext/openssl/ossl_config.c (ossl_config_each): add new method
42572           OpenSSL::Config#each. it iterates with section name, field name
42573           and value.
42575         * ext/openssl/ossl_config.c (Init_ossl_config): include Enumerable.
42577 Mon Feb 23 09:09:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42579         * instruby.rb (parse_args): use optparse instead of getopts.
42581         * instruby.rb (DOSISH): embedded path in batch files should not be
42582           prefixed by DESTDIR.  [ruby-core:02186]
42584 Sun Feb 22 14:58:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42586         * ext/extmk.rb: $extstatic is Array or nil now.  [ruby-talk:93383]
42588         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: terminate options.
42590         * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.
42592 Sun Feb 22 13:05:37 2004  akira yamada  <akira@ruby-lang.org>
42594         * lib/uri/mailto.rb (URI::MailTo::to_s): should include fragment.
42596 Sun Feb 22 12:58:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42598         * ext/extmk.rb: use optparse instead of getopts.
42600         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: ditto.
42602 Sun Feb 22 09:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42604         * re.c: corrected documentation format (rb_reg_initialize_m)
42606 Sat Feb 21 22:41:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42608         * ext/zlib/zlib.c: documented, but needs more effort.
42610 Sat Feb 21 14:33:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42612         * ext/extmk.rb: prefer relative path.  [ruby-talk:93037]
42614 Sat Feb 21 11:12:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42616         * missing/os2.c, missing/x68.c: typo fix.  pointed out by greentea.
42618 Fri Feb 20 19:11:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42620         * lib/ostruct.rb (OpenStruct#initialize_copy): should not share
42621           members.  [ruby-dev:22966]
42623 Fri Feb 20 18:59:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42625         * lib/irb/init.rb (IRB::IRB.parse_opts): add -I option to
42626           irb. [ruby-dev:39243]
42628 Fri Feb 20 12:55:27 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42630         * io.c (pipe_open): fix typo.
42632         * win32/win32.c (CreateChild): first argument to CreateProcess() must
42633           have path, not just basename.
42635 Thu Feb 19 23:24:16 2004  Dave Thomas  <dave@pragprog.com>
42637         * lib/rdoc/generators/html_generator.rb (Generators::HtmlClass::build_attribute_list):
42638           Support visibility modifiers for attributes
42640 Thu Feb 19 22:39:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42642         * lib/ostruct.rb: documented
42644 Thu Feb 19 22:39:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42646         * test/rinda/test_rinda.rb: DRb.start_service only once in testsuites.
42647           DRb.start_service could handle this.
42649 Thu Feb 19 22:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42651         * lib/soap/mapping/rubytypeFactory.rb: should not dump singleton class.
42652           [ruby-dev:22588]
42653           c = class << Object.new; class C; self; end; end; SOAPMarshal.dump(c)
42655 Thu Feb 19 18:08:18 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42657         * ext/strscan/strscan.c: improved documentation
42659 Thu Feb 19 18:08:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42661         * win32/win32.c, win32/win32.h: fixed prototypes.
42663         * win32/win32.c (wait): same as waitpid() with -1.
42665 Thu Feb 19 02:34:28 2004  Dave Thomas  <dave@pragprog.com>
42667         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::include_file):
42668           Only strip comment markers if all lines start with comments.
42670 Thu Feb 19 03:05:49 2004  Minero Aoki  <aamine@loveruby.net>
42672         * ext/strscan/strscan.c: StringScanner#restsize is obsolete;
42673           use #rest_size instead.
42675         * ext/strscan/strscan.c: StringScanner#matchedsize is obsolete;
42676           use #matched_size instead.
42678 Thu Feb 19 02:42:19 2004  Minero Aoki  <aamine@loveruby.net>
42680         * ext/strscan/strscan.c: don't use rb_eval_string, it defines
42681           classes under the module when required in module clauses.
42682           [ruby-dev:22951]
42684 Thu Feb 19 02:37:28 2004  Minero Aoki  <aamine@loveruby.net>
42686         * ext/strscan/strscan.c: merge documentation from 1.8 branch.
42687           Thanks Gavin Sinclair.
42689 Thu Feb 19 00:20:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42691         * lib/cgi-lib.rb:   deprecated after 1.8.1
42693         * lib/getopts.rb:   ditto
42695         * lib/importenv.rb: ditto
42697         * lib/parsearg.rb:  ditto
42699 Thu Feb 19 00:11:05 2004  Dave Thomas  <dave@pragprog.com>
42701         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::handle):
42702           Strip extraneous space from filenames in :include:
42704 Wed Feb 18 22:53:41 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42706         * lib/drb/unix.rb: remove O_NONBLOCk, thanks \ay
42708 Wed Feb 18 22:42:19 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42710         * test/rinda/test_rinda.rb: improt test_rinda.rb
42712 Wed Feb 18 22:03:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42714         * test/*: should not depend on $KCODE.
42716 Wed Feb 18 18:07:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42718         * test/ruby/test_sprintf.rb: added tests.
42720 Wed Feb 18 17:18:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42722         * ext/win32ole/win32ole.c: need to include <olectl.h> on Cygwin.
42724 Wed Feb 18 10:40:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42726         * sprintf.c (rb_f_sprintf): sign bit extension should not be done
42727           if FPLUS flag is specified.  [ruby-list:39224]
42729         * sprintf.c (rb_f_sprintf): do not prepend dots for negative
42730           numbers if FZERO is specified.  [ruby-dev:39218]
42732 Wed Feb 18 10:23:34 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42734         * sprintf.c (rb_f_sprintf): clean up.
42736 Tue Feb 17 23:40:34 2004  Guy Decoux  <ts@moulon.inra.fr>
42738         * sprintf.c (rb_f_sprintf): preserve original val for
42739           format_integer. [ruby-talk:92975]
42741 Tue Feb 17 23:28:45 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42743         * test/soap/marshal/test_marshal.rb, test/ruby/test_marshal.rb: do $:
42744           trick to share the testcase test/ruby/marshaltestlib.rb.
42746 Tue Feb 17 23:13:23 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42748         * test/ruby/marshaltestlib.rb: common marshal testcase added.
42750         * test/ruby/test_marshal.rb: use above testsuite.
42752         * test/soap/marshal/test_marshal.rb: ditto.
42754         * test/soap/marshal/cmarshal.rb: removed (not used).
42756 Tue Feb 17 19:34:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42758         * ext/extmk.rb (extmake): $extout_prefix doesn't vary for libraries.
42760         * ext/extmk.rb (extmake): remove compile directory if empty.
42762         * ext/extmk.rb (parse_args) lib/mkmf.rb (create_makefile): move
42763           initialization of $extout_prefix from lib/mkmf.rb.  [ruby-dev:22928]
42765         * ext/extmk.rb: clear ext and extout directory when cleaning.
42767         * lib/mkmf.rb (CLEANLIBS): should be under $(arch) directory.
42769 Tue Feb 17 18:02:10 2004  Minero Aoki  <aamine@loveruby.net>
42771         * ext/strscan/strscan.c: ScanError may be (wrongly) garbage
42772           collected. (thanks Gavin Sinclair)
42774         * ext/strscan/strscan.c: move ::ScanError to StringScanner::Error.
42775           ::ScanError is also defined for backward compatibility.
42777         * ext/strscan/strscan.c: #peep is obsolete, use #peek.
42779         * ext/strscan/strscan.c: #empty? is obsolete, use #eos?.
42781         * ext/strscan/strscan.c: #clear is obsolete, use #terminate.
42783         * ext/strscan/strscan.c: #getbyte is obsolete, use #get_byte.
42785 Tue Feb 17 12:12:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42787         * ext/extmk.rb (parse_args): delay expanding $(extout) until invoking
42788           make.
42790         * lib/mkmf.rb (CLEANLIBS): should remove files have specific
42791           extensions.
42793 Tue Feb 17 11:33:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42795         * lib/rss/rexmlparser.rb: REXML version may be 4 digits.
42797 Tue Feb 17 10:45:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42799         * ext/syck/rubyext.c (syck_emitter_end_object): takes only one arg.
42801 Tue Feb 17 07:48:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42803         * lib/rexml/encodings/SHIFT_JIS: wrong library name.
42805 Tue Feb 17 01:35:28 2004  Tanaka Akira  <akr@m17n.org>
42807         * eval.c (rb_eval): care that another thread replace NODE_DREGX_ONCE
42808           to NODE_LIT.  [ruby-dev:22920]
42810 Tue Feb 17 01:20:57 2004  Minero Aoki  <aamine@loveruby.net>
42812         * lib/fileutils.rb: new module FileUtils::DryRun.
42814 Mon Feb 16 23:28:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42816         * lib/csv.rb: document reduction.  [ruby-core:02429]
42818         * test/yaml/test_yaml.rb: added 0..1 test with "0".."1" on display.
42819           it should be defined that the specification about what kind of Range
42820           is supported in ruby's custom type in YAML.
42822 Mon Feb 16 22:22:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42824         * lib/generator.rb: corrected doc format
42826         * lib/rinda/rinda.rb: added documentation (from Hugh Sasse)
42828         * lib/rinda/tuplespace.rb: ditto
42830           [Note: rinda files actually committed Wed Feb 18 07:27:00 2004]
42832 Mon Feb 16 20:28:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42834         * bcc32/Makefile.sub: show more warnings. (refering to mingw)
42836         * bcc32/setup.mak: ditto.
42838 Mon Feb 16 18:35:58 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42840         * win32/Makefile.sub (config.status): should create *.pdb on ext/,
42841           not .ext/.
42843         * win32/Makefile.sub (config.status): convert the name of import
42844           library.
42846         * lib/mkmf.rb (create_makefile): now don't need to remove
42847           $(TARGET).lib.
42849 Mon Feb 16 15:45:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42851         * configure.in: check functions, fork spawnv.
42853         * io.c (rb_io_s_popen): accept argv not only single command line.
42855         * process.c (rb_proc_exec_n): export.
42857         * process.c (rb_check_argv): check if arguments are safe to invoke.
42859         * process.c (rb_fork): retry to fork.
42861         * process.c (rb_spawn): spawn child process asynchronously.
42863         * process.c (rb_f_system): raise an exception if the command could not
42864           execute.
42866         * win32/win32.c (rb_w32_argv_size): count necessary size for joined
42867           arguments.
42869         * win32/win32.c (rb_w32_join_argv): join arguments with quoting.
42871         * win32/win32.c (rb_w32_pipe_exec, rb_w32_spawn, rb_w32_aspawn):
42872           accept program name adding to command line.
42874 Mon Feb 16 15:18:33 2004  Minero Aoki  <aamine@loveruby.net>
42876         * lib/racc/parser.rb: add note for Racc full package.
42878 Mon Feb 16 15:13:01 2004  Minero Aoki  <aamine@loveruby.net>
42880         * ext/racc/cparse/README: new file.
42882         * ext/racc/cparse/MANIFEST: add README.
42884 Mon Feb 16 12:29:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42886         * ext/iconv/iconv.c (iconv_s_list): new method Iconv.list
42887           (libiconv only).
42889 Mon Feb 16 10:29:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42891         * dir.c (CompareImpl): File.fnmatch and Dir.glob get better performance
42892           in Win32. This is achived by calling downcase() for single-byte
42893           characters. (CharLower() is slower than downcase())
42895 Mon Feb 16 02:14:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42897         * bcc32/Makefile.sub: should warn suspicious pointer conversion.
42899         * bcc32/setup.mak: ditto.
42901 Sun Feb 15 20:56:22 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42903         * dir.c (push_braces): remove wrong const. [ruby-dev:22891]
42905 Sun Feb 15 20:41:15 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42907         * sample/soap/calc/httpd.rb, sample/soap/exchange/httpd.rb,
42908           sample/soap/sampleStruct/httpd.rb, sample/wsdl/googleSearch/httpd.rb:
42909           use soap/property instead of getopts for configuring DocumentRoot
42910           and port# of httpd.  see samplehttpd.conf below.
42912         * sample/soap/calc/samplehttpd.conf,
42913           sample/soap/exchange/samplehttpd.conf,
42914           sample/soap/sampleStruct/samplehttpd.conf,
42915           sample/wsdl/googleSearch/samplehttpd.conf: added.
42917 Sun Feb 15 19:13:33 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42919         * lib/rinda/tuplespace.rb: read(tpl,0), raise RequestExpiredError
42920           if not found.
42922 Sun Feb 15 15:48:57 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
42924         * ext/win32ole/win32ole.c: add IDispatch wrapper in val2variant.
42925           Thanks, arton.
42927 Sun Feb 15 15:23:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42929         * ruby.h, dir.c (rb_glob): add const.
42931 Sun Feb 15 01:46:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42933         * lib/mkmf.rb: absolute path of ruby is assigned to $(RUBY).
42934           [ruby-dev:22870]
42936 Sat Feb 14 23:59:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42938         * mkconfig.rb: use fileutils.rb instead of ftools.rb.
42940         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): define
42941           STACK_GROW_DIRECTION.
42943         * bcc32/Makefile.sub (config.h): add newer checks.
42945         * wince/Makefile.sub (config.h): define NEED_IO_SEEK_BETWEEN_RW.
42947 Sat Feb 14 23:26:27 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42949         * lib/un.rb: use OptionParser instead of getopts.
42951 Sat Feb 14 11:28:14 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42953         * sample/drb/*: import lib/drb/sample
42955 Sat Feb 14 11:14:12 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42957         * lib/drb/drb.rb: add pretty_print, thanks gotoken.
42959 Fri Feb 13 21:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42961         * lib/fileutils.rb: slighly improved documentation (sync with 1.8)
42963 Fri Feb 13 19:57:01 2004  Kouhei Sutou  <kou@cozmixng.org>
42965         * test/rss/test_trackback.rb: added tests for TrackBack with RSS
42966           2.0.
42968         * test/rss/common.rb: added methods make RSS 2.0.
42970         * lib/rss/trackback.rb: TrackBack API is decided.
42972         * lib/rss/rss.rb: RSS::VERSION 0.0.7 -> 0.0.8.
42974         * lib/rss/parser.rb, lib/rss/rss.rb: replaced $DEBUG by RSS::DEBUG.
42976         * lib/rss/2.0.rb: removed RSS 2.0 URI. Because RSS 2.0 doesn't
42977           have URI.
42979 Fri Feb 13 14:41:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
42981         * ext/tk/lib/tk.rb: en-bugged at last commit (Feb 11 23:24:22 2004)
42983 Fri Feb 13 12:26:37 2004  Minero Aoki  <aamine@loveruby.net>
42985         * test/fileutils/test_fileutils.rb: rescue SystemCallError instead
42986           of EINVAL.  File.link may raise EACCES on network file systems.
42988 Fri Feb 13 05:18:58 2004  Minero Aoki  <aamine@loveruby.net>
42990         * test/fileutils/test_fileutils.rb: File.link raises EINVAL on
42991           Win9x. [ruby-dev:22713]
42993 Thu Feb 12 21:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42995         * lib/ftools.rb: documented
42997 Thu Feb 12 21:19:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42999         * lib/base64.rb: added and tidied documentation
43001 Thu Feb 12 20:45:01 2004  Minero Aoki  <aamine@loveruby.net>
43003         * lib/net/protocol.rb (WriteAdapater#puts): must append "\n" to
43004           the string, don't prepend. (ruby-bugs:PR#1280)
43006 Thu Feb 12 20:31:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43008         * lib/mkmf.rb (create_tmpsrc): cpp32 of Borland C++ ignores #error
43009           directives in DOS line-ending files at all.
43011 Thu Feb 12 15:23:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43013         * parse.y (rparen): ignore preceding newlines to right parentheses.
43014           (ruby-bugs:PR#1221) [ruby-dev:22858]
43016 Thu Feb 12 14:17:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43018         * configure.in: set ac_cv_func_link to yes to enable link() on MinGW.
43019           [ruby-dev:22241]
43021 Thu Feb 12 13:32:49 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43023         * win32/win32.c (link): raise NotImplementedError on Win9X.
43024           contributed by Tietew. [ruby-dev:22713]
43026         * win32/win32.c, win32/win32.h (link): add const.
43028 Thu Feb 12 09:56:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43030         * ext/tk/lib/tk.rb (TkComm::tk_split_list): suppress a warning.
43032 Thu Feb 12 02:23:56 2004  Tanaka Akira  <akr@m17n.org>
43034         * lib/pathname.rb: use assert_raise instead of assert_raises.
43036         * lib/pp.rb: ditto.
43038         * lib/time.rb: ditto.
43040         * lib/tsort.rb: ditto.
43041           use TSortHash and TSortArray instead of Hash and Array in test.
43043 Wed Feb 11 23:24:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43045         * ext/tk/lib/tk.rb: properly treat a Tcl/Tk's string with escaping
43046           special characters.
43048 Tue Feb 10 20:49:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43050         * eval.c (method_proc): return bound Proc object.  [ruby-dev:22854]
43052         * eval.c (rb_mod_define_method): bind method body itself for Method
43053           object.
43055         * node.h (NODE_DMETHOD): deprecated.
43057         * object.c (rb_class_inherited_p): export.
43059 Tue Feb 10 16:43:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43061         * eval.c (umethod_bind): purge unused check.  [ruby-dev:22850]
43063 Tue Feb 10 14:33:08 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43065         * string.c (rb_str_match): raise TypeError when both arguments are
43066           strings. [ruby-dev:22851]
43068         * string.c (rb_str_match2): removed.
43070         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
43071           wince/Makefile.sub (string.c): now not depend on version.h.
43073 Mon Feb  9 17:46:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43075         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
43076           runruby.rb: run rdoc, test and so on with compiled extension
43077           libraries.  [ruby-dev:22688]
43079         * ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
43080           directory, similar to the actual directory structure.
43082         * lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
43083           file to create new file.
43085         * lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
43086           influence by envirionment variable.
43088         * bcc32/configure.bat, win32/configure.bat: add install-doc options.
43090         * win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
43091           bug which returns wrong mode.  [ruby-dev:22846]
43093 Mon Feb  9 16:30:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43095         * process.c (detach_process_watcher): return the last status.
43096           [ruby-dev:22841]
43098 Sun Feb  8 16:46:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43100         * lib/pp.rb (PP::PPMethods::object_address_group): suppress negative
43101           sign for higher heap areas.
43103 Sun Feb  8 16:18:27 2004  akira yamada  <akira@ruby-lang.org>
43105         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
43106           added tests.
43108 Sun Feb  8 15:51:57 2004  akira yamada  <akira@ruby-lang.org>
43110         * test/ruby/test_file.rb (TestFile::test_fnmatch): added tests for
43111           File.fnmatch. [ruby-dev:22815][ruby-dev:22819]
43113 Sun Feb  8 15:41:45 2004  akira yamada  <akira@ruby-lang.org>
43115         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
43116           added tests. [ruby-core:02306] [ruby-core:02311]
43118 Sun Feb  8 14:24:35 2004  Minero Aoki  <aamine@loveruby.net>
43120         * lib/net/http.rb (HTTP#request): should not overwrite Connection
43121           header. (ruby-bugs:PR#1274)
43123 Sun Feb  8 10:11:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43125         * dir.c (glob_helper): Dir.glob('**/') did not work. [ruby-dev:22832]
43127 Sun Feb  8 00:29:26 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43129         * dir.c (fnmatch): File.fnmatch('*?', 'a') should return true.
43130           [ruby-dev:22815]
43132         * dir.c (fnmatch): File.fnmatch('\[1\]' , '[1]') should return true.
43133           [ruby-dev:22819]
43135         * dir.c: Did some styles (no change to behavior)
43137 Sat Feb  7 19:56:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43139         * lib/irb/init.rb (IRB.rc_files): yield possible rc file names.
43141         * lib/irb/input-method.rb (IRB::ReadlineInputMethod::initialize):
43142           load and save history automatically.  [ruby-core:02352]
43144 Fri Feb  6 22:48:16 2004  Dave Thomas  <dave@pragprog.com>
43146         * lib/rdoc/generators/html_generator.rb (gen_url): Support
43147           https in RDoc hyperlinks
43149 Fri Feb  6 22:41:22 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43151         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): rollback the previous
43152           commit.  [ruby-dev:22813]
43154 Fri Feb  6 22:22:50 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43156         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): remove instance
43157           variable which is defined in the test.
43159 Fri Feb  6 18:54:18 2004  akira yamada  <akira@ruby-lang.org>
43161         * test/ruby/test_proc.rb (TestProc::test_eq): added a
43162           test.  [ruby-dev:22599]
43164 Fri Feb  6 18:26:00 2004  akira yamada  <akira@ruby-lang.org>
43166         * test/ruby/test_proc.rb (TestProc::test_eq): added tests for
43167           Proc#==.  [ruby-dev:22592], [ruby-dev:22601]
43169 Fri Feb  6 10:12:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43171         * ext/socket/socket.c (bsock_do_not_reverse_lookup): control reverse
43172           lookup for every instance.  [ruby-core:02346]
43174 Fri Feb  6 09:15:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43176         * lib/irb/extend-command.rb: add irb_help command.  [ruby-talk:91610]
43178         * lib/irb/cmd/help.rb (IRB::ExtendCommand::Help): show RDoc.
43180 Fri Feb  6 00:48:37 2004  Tanaka Akira  <akr@m17n.org>
43182         * lib/prettyprint.rb (PrettyPrint#first?): obsoleted.
43184 Thu Feb  5 23:56:55 2004  Tanaka Akira  <akr@m17n.org>
43186         * lib/prettyprint.rb (PrettyPrint#seplist): added.
43188         * lib/pp.rb (PPMethods#pp_object): use seplist.
43189           (PPMethods#pp_hash): ditto.
43190           (Array#pretty_print): ditto.
43191           (Struct#pretty_print): ditto.
43192           (MatchData#pretty_print): ditto.
43194         * lib/set.rb (Set#pretty_print): use seplist.
43196 Wed Feb  4 22:39:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43198         * file.c (rb_stat_mode): should not sign-expand, so backout.
43200 Wed Feb  4 02:12:06 2004  Tanaka Akira  <akr@m17n.org>
43202         * file.c (test_l): fix wrong method name in document.
43203           (test_S): ditto.
43204           (test_b): ditto.
43205           (test_c): ditto.
43206           (test_suid): ditto.
43207           (test_sgid): ditto.
43208           (test_sticky): ditto.
43210 Tue Feb  3 22:36:25 2004  Kouhei Sutou  <kou@cozmixng.org>
43212         * lib/rss/2.0.rb, lib/rss/content.rb, lib/rss/dublincore.rb,
43213           lib/rss/rss.rb, lib/rss/syndication.rb: removed warnings.
43215         * lib/rss/converter.rb: removed handling load error of nkf.
43217         * test/rss/test_syndication.rb, test/rss/test_trackback.rb,
43218           test/rss/test_dublincore.rb, test/rss/test_content.rb: replaced
43219           'require "rss/parser"' by 'require "rss/1.0"'.
43221         * test/rss/test_parser.rb, test/rss/test_accessor.rb: removed
43222           'require "rss/parser"'.
43224 Tue Feb  3 11:23:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43226         * parse.y (reduce_nodes): remove tail returns.  [ruby-talk:90934]
43228 Tue Feb  3 08:04:57 2004  Tanaka Akira  <akr@m17n.org>
43230         * lib/pp.rb (Struct#pretty_print_cycle): follow 1.8 style.
43232 Mon Feb  2 22:06:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43234         * parse.y (block_append, new_evstr, void_expr0): remove no longer used
43235           labels.
43237 Mon Feb  2 18:45:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43239         * dln.c (dln_load): don't specify RTLD_GLOBAL on Interix,
43240           because it caused SEGV when running runner.rb.
43242 Mon Feb  2 01:54:00 2004  Tanaka Akira  <akr@m17n.org>
43244         * lib/pp.rb (Struct#pretty_print): make it 1.8 style.
43245           (Numeric#pretty_print, FalseClass#pretty_print)
43246           (TrueClass#pretty_print, Module#pretty_print): fix pp for objects
43247           with instance variables.  [ruby-talk:91157]
43249         * lib/open-uri.rb (URI::Generic#find_proxy): return nil on loopback
43250           address.
43252         * lib/resolv-replace.rb (BasicSocket#send): don't replace because
43253           it has no hostname argument.
43254           (IPSocket.getaddress): raise SocketError instead of
43255           Resolv::ResolvError for errors.
43256           (TCPSocket#initialize, UDPSocket#bind, UDPSocket#connect)
43257           (SOCKSSocket#initialize): use IPSocket.getaddress instead of
43258           Resolv.getaddress.
43259           (UDPSocket#send): recognize 3 arguments form.  try all addresses on
43260           4 arguments form.
43262 Sun Feb  1 23:00:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
43264         * ext/bigdecimal.c: Bug in BigDecimal("1e#{n}").add BigDecimal('.5'),n)
43265           reported and fixed by Javier Goizueta.
43267 Sun Feb  1 18:21:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43269           From ruby_1_8 branch:
43270         * lib/test/unit.rb: rearranged documentation for RDoc's sake.
43271         * lib/matrix.rb: improved documentation.
43272         * lib/net/http.rb: slight documentation formatting improvement.
43274 Sun Feb  1 05:30:06 2004  Tanaka Akira  <akr@m17n.org>
43276         * lib/open-uri.rb (URI::Generic#find_proxy): warn HTTP_PROXY.
43277          raise an errror on non-http proxy URI.
43278          (OpenURI::Buffer#<<): make a tempfile binmode.  [ruby-talk:90793]
43280 Sun Feb  1 00:57:41 2004  Kouhei Sutou  <kou@cozmixng.org>
43282         * lib/rss/parser.rb (RSS::Parser): added @@default_parser. Used
43283           XML parser became selectable.
43284         * test/rss/test_parser.rb: added tests for
43285           RSS::Parser.default_parser.
43287 Sat Jan 31 02:28:15 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43289         * configure.in (RPATHFLAG): set to -Wl,-R like NetBSD on Interix.
43291 Sat Jan 31 01:09:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43293         * lib/logger.rb: leading 0 padding of timestamp usec part.
43295 Fri Jan 30 18:53:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43297         * re.c (KR_REHASH): wrong hash value on sizeof(long) > sizeof(int).
43299 Thu Jan 29 23:11:57 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43301         * configure.in (DLEXT2): removed.  Ruby does not treat
43302           ".dll" as a extention library anymore.
43304         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub (DLEXT2):
43305           ditto.
43307         * util.c (mblen): fix overrun.  [ruby-dev:22672]
43309 Thu Jan 29 22:41:53 2004  Dave Thomas  <dave@pragprog.com>
43311         * lib/rdoc/generators/html_generator.rb: Allow 'link:' in Tidylinks.
43312           THis means you can write "see f1[link:files/f1_rb.html]".
43314 Thu Jan 29 22:24:47 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43316         * sample/openssl/gen_csr.rb: follow OpenSSL::X509::Name change.
43317           ASN.1 type of subject DN elements were wrong.
43319 Thu Jan 29 22:19:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43321         * test/*: remove $: trick.  [ruby-dev:22763]  use test/runner.rb to
43322           run test.
43324 Thu Jan 29 19:28:16 2004  Minero Aoki  <aamine@loveruby.net>
43326         * lib/net/http.rb (Request#initialize): reject only when a path is
43327           empty. [ruby-dev:22771]
43329 Thu Jan 29 18:54:08 2004  H.Yamamoto  <ocean@m2.ccsnet.ne.jp>
43331         * dir.c (glob_helper): infinite loop bug in win32 code.
43332           [ruby-dev:22770]
43334 Thu Jan 29 17:03:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43336         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
43337           [ruby-dev:22761]
43339 Thu Jan 29 11:32:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43341         * test/rss/test_*: do $: trick while searching a module in the current
43342           directory.
43344         * test/xsd/test_xmlschemaparser.rb, test/wsdl/test_emptycomplextype.rb,
43345           test/soap/helloworld/test_helloworld.rb,
43346           test/soap/calc/{test_calc.rb,test_calc2.rb}: do File.expand_path
43347           before using __FILE__.
43349         * test/yaml/test_yaml.rb: assert_equals -> assert_equal.
43351 Thu Jan 29 01:56:02 2004  why the lucky stiff  <why@ruby-lang.org>
43353         * ext/syck/rubyext.c: usec round-tripping skew. [ruby-core:2305]
43355         * lib/yaml/rubytypes.rb: character Range now round-trips. [ruby-core:2306]
43357         * test/yaml/test_yaml.rb: add Time and Range tests.
43359 Thu Jan 29 00:00:46 2004  Kouhei Sutou  <kou@cozmixng.org>
43361         * lib/rss: rss/parser.rb is always required.
43363 Wed Jan 28 15:09:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43365         * test/rss/*.rb: remove "test/" prefix.
43367 Wed Jan 28 13:07:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43369         * ext/iconv/extconf.rb: include iconv.h for libiconv.  [ruby-dev:22715]
43371 Wed Jan 28 12:43:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43373         * lib/rss: rss library imported. [ruby-dev:22726]
43375 Wed Jan 28 04:29:41 2004  Eric Schwartz  <emschwar@fc.hp.com>
43377         * lib/cgi/session.rb: use LOCK_SH to read, and a few other
43378           improvements.  [ruby-core:02328]
43380 Tue Jan 27 15:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43382         * misc/ruby-mode.el: better support for general delimited
43383           strings.  [ruby-dev:22695]
43385 Tue Jan 27 11:04:40 2004  FUKUMOTO Atsushi  <fukumoto@nospam.imasy.or.jp>
43387         * ext/socket/socket.c (s_recvfrom): sending length should be an
43388           invariant while retrying on EAGAIN.  [ruby-talk:89962]
43390 Tue Jan 27 10:31:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43392         * ext/win32ole/win32ole.c (set_argv): fix condition.
43394 Tue Jan 27 02:26:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43396         * lib/webrick/httputils.rb (WEBrick:HTTPUtils::parse_header):
43397           refine regex for header-name.
43399 Mon Jan 26 22:53:04 2004  Dave Thomas  <dave@pragprog.com>
43401         * io.c: Remove documentation references to $defout.
43403 Mon Jan 26 14:41:46 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43405         * lib/weakref.rb (WeakRef::initialize): set up @__id before
43406           calling "super".
43408         * lib/delegate.rb (Delegator::initialize): preserve
43409           singleton_method_added method [ruby-dev:22685]
43411         * lib/delegate.rb (Delegator::initialize): use Kernel::raise
43412           instead of mere raise.  [ruby-dev:22681]
43414 Mon Jan 26 12:45:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43416         * ext/tcltklib/tcltklib.c: define CONST84 when TCL_MAJOR_VERSION == 7
43418 Mon Jan 26 11:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43420         * ext/extmk.rb: Makefiles should depend on also rbconfig.rb.
43421           (ruby-bugs:PR#1256)
43423         * ext/win32ole/win32ole.c (set_argv): set real arguments to
43424           WIN32OLE::ARGV.  [ruby-list:39073]
43426 Sun Jan 25 18:25:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43428         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): third
43429           argument become optional.
43431         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
43433         * ext/openssl/ossl_x509name.c (Init_x509name): emailAddress and
43434           domainComponent should be IA5String.
43436 Sun Jan 25 01:45:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43438         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): support
43439           virtual host.
43441         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host): add
43442           new method to register virtual hosting server.
43444         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server): add
43445           new method to lookup virtual hosting server.
43447 Sat Jan 24 13:06:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43449         * ext/openssl/ossl_x509hame.c (ossl_x509name_initialize): change
43450           second argument. it expected to be a Hash not an Integer.
43452         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): add new
43453           function for OpenSSL::X509::Name#add_entry.
43455         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): add constants
43456           OpenSSL::X509::Name::DEFAULT_OBJECT_TYPE and OBJECT_TYPE_TEMPLATE.
43458         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#initialize):
43459           second argument takes OBJECT_TYPE_TEMPLATE by default.
43461 Fri Jan 23 02:26:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43463         * pack.c (num2i32): pack should not raise RangeError.
43464           [ruby-dev:22654]
43466         * pack.c (pack_pack): do not auto convert nil to zero.
43468 Thu Jan 22 22:54:53 2004  Shugo Maeda  <shugo@ruby-lang.org>
43470         * lib/net/imap.rb (BEG_REGEXP): allow 8-bit characters in quoted
43471           strings for Novell GroupWise Internet Agent.
43473         * lib/net/imap.rb (DATA_REGEXP): ditto.
43475 Thu Jan 22 18:35:49 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43477         * lib/e2mmap.rb (VERSION): remove unnecessary version checking.
43479 Thu Jan 22 16:21:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43481         * parse.y (string_content): reset lexical states at the beginning of
43482           string contents.  [ruby-list:39061]
43484 Thu Jan 22 08:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43486         * parse.y (opt_rescue): use NODE_ERRINFO() instead of
43487           NODE_GVAR("$!"), to avoid confusion from variable aliasing.
43488           [ruby-talk:90074]
43490         * version.c (Init_version): remove obsolete constants VERSION
43491           etc.  [ruby-dev:22643]
43493 Thu Jan 22 01:46:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43495         * parse.y (newline_node): do not use NODE_NEWLINE node anymore,
43496           use NEWLINE flag instead.
43498 Thu Jan 22 01:12:12 2004  Siena.  <siena@faculty.chiba-u.jp>
43500         * missing/os2.c (chdir, getcwd):
43501           use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX.
43503 Thu Jan 22 00:33:52 2004  Siena.  <siena@faculty.chiba-u.jp>
43505         * configure.in: check availability of link(). [ruby-dev:22237]
43506         * file.c (rb_file_s_link): raise an exception when link() is unavailable.
43507         * missing/os2.c (link): removed. File#link isn't supported.
43508         * bcc32/Makefile.sub: define HAVE_LINK to enable link(). [ruby-dev:22241]
43509         * win32/Makefile.sub: ditto.
43511 Thu Jan 22 00:26:25 2004  Siena.  <siena@faculty.chiba-u.jp>
43513         * ChangeLog: typo: RUBY_MBCHAR_MAX was RUBY_MBCHAR_MAXSIZE.
43515 Thu Jan 22 00:12:51 2004  Siena.  <siena@faculty.chiba-u.jp>
43517         * defines.h: define RUBY_MBCHAR_MAX instead of MB_CUR_MAX.
43518         * dir.c (Next, emx_mblen): use RUBY_MBCHAR_MAX for mblen().
43519         * file.c (CharNext): ditto.
43520         * ruby.c (translate_char): ditto.
43521         * util.c (__crt0_glob_function): ditto.
43523 Thu Jan 22 00:10:01 2004  Dave Thomas  <dave@pragprog.com>
43525         * lib/base64.rb: :nodoc: the Deprecated module
43527 Wed Jan 21 23:52:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43529         * configure.in: Interix(SFU) support.
43531 Wed Jan 21 23:03:45 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43533         * lib/drb/drb.rb: remove O_NONBLOCK, thanks \ay
43534         * lib/drb/extserv.rb: typo
43536 Wed Jan 21 17:57:56 2004  Shugo Maeda  <shugo@ruby-lang.org>
43538         * lib/net/imap.rb (envelope): allow NIL.
43539         * lib/net/imap.rb (body): ditto.
43540         * lib/net/imap.rb (number): ditto.
43541         * lib/net/imap.rb (ensure_nz_number): show a detailed error
43542           message.
43544 Wed Jan 21 16:44:15 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43546         * lib/mkmf.rb (merge_libs): squeeze successive same libraries.
43547           [ruby-dev:22652]
43549 Wed Jan 21 16:10:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43551         * lib/base64.rb: enclosed in a module.  [ruby-core:02285]
43553 Wed Jan 21 16:01:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43555         * ext/digest/rmd160/extconf.rb: have_library appends found library.
43557 Wed Jan 21 11:36:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43559         * ext/socket/socket.c (sock_gethostbyname): returns host if
43560           ai_canonname is NULL. (ruby-bugs PR#1243)
43562         * parse.y (block_append): update nd_end for "real" head node.
43563           [ruby-list:39058]
43565 Tue Jan 20 14:48:28 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43567         * ext/openssl/extconf.rb: should check <openssl/conf_api.h> instead
43568           of OPENSSL_VERSION_NUMBER. [ruby-list:39056]
43570 Tue Jan 20 14:43:17 2004  Dave Thomas  <dave@pragprog.com>
43572         * lib/base64.rb: Add RDoc
43574 Tue Jan 20 14:25:51 2004  Dave Thomas  <dave@pragprog.com>
43576         * lib/abbrev.rb: Add RDoc
43578 Tue Jan 20 13:22:39 2004  Dave Thomas  <dave@pragprog.com>
43580         * lib/rdoc/generators/html_generator.rb: Document aliases at
43581           top-most level.
43583         * lib/English.rb: Document English.rb.
43585 Tue Jan 20 04:41:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43587         * test/ruby/test_marshal.rb (MarshalTestLib::test_exception): test
43588           for [ruby-dev:22604].
43590         * test/ruby/test_marshal.rb (MarshalTestLibtest_singleton): test
43591           for [ruby-dev:22588].
43593 Tue Jan 20 02:38:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43595         * marshal.c (w_class): should not dump singleton class.
43596           [ruby-dev:22631]
43598 Tue Jan 20 02:49:22 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43600         * ext/openssl/extconf.rb: add check for OpenSSL version.
43601           [ruby-list:39054]
43603 Mon Jan 19 23:56:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43605         * error.c (name_err_mesg_to_str): inverted condition for result of
43606           inspection.  [ruby-dev:22628]
43608 Mon Jan 19 22:24:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43610         * sample/exyacc.rb: escape '}' to avoid warning.
43612         * lib/rdoc/parsers/parse_c.rb: escape '{' and '}' to avoid warnings.
43614 Mon Jan 19 21:28:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43616         * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: remove
43617           useless casts for Borland C.
43619 Mon Jan 19 17:39:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43621         * error.c (NameError::message): internal use only.
43623         * eval.c (rb_method_missing): use hidden constant.
43625 Mon Jan 19 16:30:53 2004  akira yamada  <akira@ruby-lang.org>
43627         * test/ruby/test_time.rb: added tests for [ruby-dev:22614] and
43628           [ruby-dev:22617].
43630 Mon Jan 19 13:09:21 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43632         * ext/extmk.rb, win32/Makefile.sub, win32/configure.bat,
43633           win32/setup.mak: --with-static-linked-ext support on mswin32.
43635 Mon Jan 19 06:49:07 2004  Tadayoshi Funaba  <tadf@dotrb.org>
43637         * lib/date.rb: zone was wrong when it was behind UTC.
43638           Thanks Mark J. Reed.
43640         * lib/date/format.rb: %z is now always replaced by four digits
43641           with a leading plus or minus sign.
43643         * sample/cal.rb: added a class, anyway.
43645 Mon Jan 19 01:08:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43647         * class.c, error.c, eval.c, intern.h, object.c, variable.c:
43648           do not set path if it is a singleton class.  [ruby-dev:22588]
43650         * lib/cgi.rb (CGI::QueryExtension): give extended string, not a
43651           delegater object.
43653 Sun Jan 18 23:59:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43655         * ext/iconv/charset_alias.rb: prefer us_EN locale encodings or
43656           former.  [ruby-dev:22609]
43658         * ext/iconv/iconv.c (iconv_create): raise InvalidEncoding
43659           exception when EINVAL.
43661 Sun Jan 18 23:16:34 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43663         * class.c, error.c, file.c, io.c, numeric.c, object.c, re.c, struct.c,
43664           time.c: marked init_copy functions nodoc.
43666 Sun Jan 18 20:47:35 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43668         * ruby.c: use translate_char() on Cygwin.
43670 Sun Jan 18 20:00:16 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43672         * lib/soap/wsdlDriver.rb, lib/wsdl/soap/operation.rb: add support of
43673           "parts" attribute of soap:body element in WSDL.
43675         * lib/wsdl/xmlSchema/schema.rb: friendly warning message for
43676           simpleType element which is not supported for now.
43678         * test/wsdl/soap/{soapbodyparts.wsdl,test_soapbodyparts.wsdl}: new
43679           files.
43681 Sun Jan 18 16:46:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43683         * time.c (time_overflow_p): should return results.  [ruby-dev:22614]
43685 Sun Jan 18 12:07:24 2004  Siena.  <siena@faculty.chiba-u.jp>
43687         * test/ruby/test_time.rb: new test case to test Time#[+-].
43689         * time.c (time_plus, time_minus): fix RangeError for a negative
43690           argument in environments whose time_t is unsigned. [ruby-dev:22608]
43692 Sun Jan 18 02:33:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43694         * defines.h (_WIN32): undef _WIN32 on Cygwin before defining DOSISH.
43696 Sun Jan 18 00:23:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43698         * marshal.c (class2path): check anonymous class/module before
43699           checking referable, and allow singleton classes.
43701 Sat Jan 17 23:58:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43703         * error.c (NameError::Message): new class for lazy evaluation of
43704           message to ensure replaced before marshalling.  [ruby-dev:22604]
43706         * eval.c (rb_method_missing): use NameError::Message.
43708 Sat Jan 17 21:49:50 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43710         * lib/time.rb (test_rfc2822, test_rfc3339, test_encode_xmlschema):
43711           should not expect that all platforms handle negative time_t value.
43713 Fri Jan 16 23:53:09 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43715         * eval.c (proc_eq): compare also arguments and environment
43716           (including local variables).  [ruby-dev:22590]
43718 Fri Jan 16 14:33:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43720         * marshal.c (class2path): get class path and check referable.
43721           [ruby-dev:22588]
43723 Thu Jan 15 12:58:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43725         * io.c (argf_read): do not append EOF.  (ruby-bugs-ja:PR#585)
43727         * io.c (rb_io_fwrite): ad-hockery hack to get rid of HP-UX stdio
43728           weird behavior.  [ruby-dev:22424]
43730 Wed Jan 14 21:13:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43732         * test/inlinetest.rb (InlineTest::eval_part): eval under the top
43733           level environment.
43735 Wed Jan 14 17:54:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43737         * test/inlinetest.rb (InlineTest::loadtest): require instead of
43738           load, to get rid of multiple loading.
43740 Wed Jan 14 13:30:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43742         * ext/iconv/extconf.rb: wrapper iconv.rb is dependent on platform.
43744 Wed Jan 14 09:32:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43746         * MANIFEST: add test/net/test_httpheader.rb. (commit miss?)
43748 Wed Jan 14 00:58:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43750         * eval.c (Init_Proc): move SystemStackError from under
43751           StandardError to Exception.  [ruby-talk:89782]
43753 Tue Jan 13 18:03:02 2004  Ian Macdonald  <ian@caliban.org>
43755         * file.c (rb_stat_wr, rb_stat_ww): New functions
43756           implementing new methods (File::Stat#world_readable?,
43757           File::Stat#world_writable?).
43759 Tue Jan 13 16:53:25 2004  why the lucky stiff  <why@ruby-lang.org>
43761         * ext/syck/rubyext.c: omission of Date library code caused
43762           test suite failure. [ruby-core:2251]
43764 Tue Jan 13 16:50:03 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43766         * ext/tk/lib/tk.rb: use $0 as the default application class name.
43768 Tue Jan 13 14:48:00 2004  Ian Macdonald  <ian@caliban.org>
43770         * lib/pathname.rb: New methods (Pathname#world_readable?,
43771           Pathname#world_writable?).
43773 Tue Jan 13 14:48:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43775         * parse.y (primary): allow no "when" case. [ruby-dev:22578]
43777         * ruby.h (rb_class_of): reduce branch. [ruby-dev:22577]
43779         * ruby.h (rb_type): ditto.
43781 Tue Jan 13 14:26:59 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
43783         * lib/test/unit/ui/testrunnerutilities.rb (TestRunnerUtilities):
43784           moved run method which allows output level.  [ruby-dev:22554]
43786 Tue Jan 13 13:04:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43788         * test/test_*.rb: Pathname#parent -> Pathname#dirname.
43790 Tue Jan 13 11:38:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43792         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_spec_type_{int,float}):
43793           fix syntax error.
43795 Tue Jan 13 07:52:40 2004  why the lucky stiff  <why@ruby-lang.org>
43797         * ext/syck/bytecode.c: turn off default implicit typing.
43799         * ext/syck/implicit.c: detect base60 integers.
43801         * ext/syck/rubyext.c: handle base60, as well as hex and octal
43802           with commas.  implicit typing of ruby symbols.
43804         * test/yaml/test_yaml.rb: add test.
43806 Tue Jan 13 04:29:52 2004  Dave Thomas  <dave@pragprog.com>
43808         * lib/rdoc/ri/ri_driver.rb (RiDriver::report_method_stuff):
43809           Show fully-qualified class names in class list.
43811 Tue Jan 13 01:24:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43813         * file.c (test_wr): Rdoc fix.  [ruby-core:02225]
43815 Tue Jan 13 01:04:37 2004  Dave Thomas  <dave@pragprog.com>
43817         * lib/rdoc/ri/ri_paths.rb (RI::Paths): First attempt at
43818           incorporating DESTDIR in the rdoc installation.
43820 Mon Jan 12 23:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43822         * parse.y (primary): fix position after FCALL.  [ruby-dev:22574]
43824 Mon Jan 12 18:00:11 2004  Ian Macdonald  <ian@caliban.org>
43826         * file.c (test_wr, test_ww): New functions implementing new
43827           methods (File::world_readable?, File::world_writable?).
43829         * file.c (S_IRUGO, S_IGUGO): New macros.
43831 Mon Jan 12 12:07:22 2004  Dave Thomas  <dave@pragprog.com>
43833         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods):
43834           Someone changed the "// in eval.c" comments to "/*...*/" style,
43835           so the parsing of the source file name broke.
43837         * object.c: Remove spurious space in TrueClass documentation.
43839         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Fix
43840           bad regexp: if the code before a documented method contained
43841           a comment that wasn't terminated by whitespace, that comment
43842           and all intervening code was included in the following
43843           method's documentation.
43845         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter::break_to_newline):
43846           HTML formats need explicit line breaks.
43848 Mon Jan 12 02:24:07 2004  Dave Thomas  <dave@pragprog.com>
43850         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter): Add HTML
43851           generation support to ri (Elliot Hughes)
43853 Sun Jan 11 23:54:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43855         * env.h (ruby_frame, ruby_scope, ruby_in_eval, ruby_class,
43856           ruby_dyna_vars): export.  [ruby-dev:22566]
43858 Sun Jan 11 02:35:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43860         * ext/socket/socket.c (make_hostent): a bug in brace position.
43862         * configure.in: install rdoc by default. if you do not want to
43863           install rdoc, specify --disable-install-doc.
43865 Sun Jan 11 02:07:47 2004  Dave Thomas  <dave@pragprog.com>
43867         * lib/rdoc/ri/ri_options.rb (RI::Options::OptionList::OptionList):
43868           Also accept command line options via the 'RI' environment variable.
43870 Sat Jan 10 21:27:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43872         * eval.c (eval): need to add message delimiter. [ruby-dev:22561]
43874 Sat Jan 10 01:54:50 2004  Eric Sunshine  <sunshine@sunshineco.com>
43876         * defines.h (__NeXT__): Ensure that all standard S_IRUSR, S_IWGRP,
43877           S_IRWXO, etc. macros are defined since future code might require
43878           them (even though present code only requires a subset).
43880         * defines.h (__NeXT__): Bug fix: WORDS_BIGENDIAN was not being set
43881           correctly on Rhapsody when -arch compiler flag was used (via
43882           configure's --enable-fat-binary option).
43884 Sat Jan 10 23:01:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43886         * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
43887           quotes.  [ruby-dev:22564]
43889         * lib/mkmf.rb (libpathflag): do not enclose with quotes always.
43891         * {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.
43893 Sat Jan 10 22:46:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43895         * dir.c (dir_inspect): new method, Dir#inspect.  [ruby-dev:22562]
43897 Fri Jan  9 17:36:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43899         * ext/socket/socket.c (make_hostent): getaddrinfo(3) on BSD do not
43900           fill ai_canonname if serv is not supplied.  (ruby-bugs PR#1243)
43902 Fri Jan  9 13:14:59 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43904         * lib/test/unit/collector/dir.rb: do not ignore exceptions(LoadError
43905           and SystemExitError) while loading a testcase.  smell of bug.
43907         * test/testunit/collector/test_dir.rb: add new test of the LoadError.
43909         * test/drb/{test_drbssl.rb,test_drbunix.rb}: do not define testcase if
43910           openssl is not installed.
43912         * test/testunit/collector/test_dir.rb: assert_raises -> assert_raise.
43914 Fri Jan  9 11:52:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43916         * rubysig.h: <errno.h> is needed to use errno which may be a macro.
43918 Fri Jan  9 11:20:24 2004  Siena.  <siena@faculty.chiba-u.jp>
43920         * ext/extmk.rb (extmake): should not reduce necessary libraries.
43921           [ruby-dev:22440]
43923         * lib/mkmf.rb (merge_libs): merge libraries according to
43924           dependency.
43926 Fri Jan  9 10:05:23 2004  Siena.  <siena@faculty.chiba-u.jp>
43928         * lib/mkmf.rb (libpathflag): use single quotes.  [ruby-dev:22440]
43930 Thu Jan  8 23:49:21 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43932         * configure.in (RDOCTARGET): new macro.  if you want to install
43933           rdoc documentation, you need to run configure with
43934           --enable-install-doc.
43936 Thu Jan  8 21:17:43 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43938         * ext/openssl/ossl_pkey.c (ossl_pkey_to_der): removed; it returns
43939           public key only.
43941         * ext/openssl/ossl_pkey_dh.c (ossl_dh_to_der): new function for
43942           OpenSSL::PKey::DH#to_der.
43944         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_to_der): new function for
43945           OpenSSL::PKey::DSA#to_der.
43947         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_to_der): new function for
43948           OpenSSL::PKey::RSA#to_der.
43950 Thu Jan  8 18:25:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43952         * dir.c (glob_helper): should not recurse in exceptional status.
43954 Thu Jan  8 16:51:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43956         * test/wsdl/datetime/test_datetime.rb: fixed a stupid testcase which
43957           dumps "E" at month-end.
43959 Thu Jan  8 11:20:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43961         * eval.c, object.c, process.c, re.c: don't use C++ style comments.
43963 Thu Jan  8 08:46:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43965         * ext/syck/rubyext.c (yaml_org_handler): lazy-load Date for
43966           static-ext.
43968 Thu Jan  8 07:06:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43970         * ext/extmk.rb: preserve order in Setup.  [ruby-dev:22503]
43972         * ext/extmk.rb: move dependent libraries just after depended
43973           libraries.
43975         * ext/digest/*/extconf.rb: depend on digest.
43977 Thu Jan  8 04:36:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43979         * lib/webrick/cgi.rb (WEBrick::CGI#initialize): should create
43980           @config[:Logger] if it was not given.
43982 Wed Jan  7 22:28:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43984         * dir.c (glob_helper): fix memory leak.
43986 Wed Jan  7 21:15:07 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43988         * sample/webrick/*: new files.
43990         * MANIFEST: add sample/webrick/*
43992 Wed Jan  7 20:51:51 2004  Minero Aoki  <aamine@loveruby.net>
43994         * test/net/test_httpheader.rb: new file.
43996         * MANIFEST: add test/net/test_httpheader.rb.
43998 Wed Jan  7 20:42:06 2004  Minero Aoki  <aamine@loveruby.net>
44000         * lib/net/http.rb (HTTPHeader#content_length): should return nil
44001           unless header exists. [ruby-dev:22519]
44003 Wed Jan  7 14:26:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44005         * ext/tk/lib/tk.rb (TkPanedWindow): use epath for embedded windows.
44007         * ext/tk/lib/tktext.rb: use epath for embedded windows.
44009         * ext/tk/lib/tkcanvas.rb: use epath for window items.
44011 Wed Jan  7 14:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44013         * lib/soap/{attachment.rb,mimemessage.rb}: added from soap4r/1.5.2.
44015 Wed Jan  7 13:00:18 2004  Dave Thomas  <dave@pragprog.com>
44017         * lib/rdoc/ri/ri_driver.rb: Fix problem where ri was
44018           being too eager to find matches of ambiguous method
44019           names (such as "ri Thread.join" would return both
44020           Thread.join and ThreadsWait.join)
44022 Wed Jan  7 12:35:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44024         * lib/debug.rb: revert command parse regexps.  [ruby-list:39014] by
44025           Shirai,Kaoru.
44027 Wed Jan  7 08:21:04 2004  Dave Thomas  <dave@pragprog.com>
44029         * lib/rdoc/parsers/parserfactory.rb: Check for shebang
44030           line in files that would otherwise be treated as
44031           plain text.
44033 Tue Jan  6 22:13:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44035         * eval.c (rb_mod_modfunc): should break if m has no super class.
44036           [ruby-dev:22498]
44038 Tue Jan  6 21:51:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44040         * io.c (fptr_finalize): should save errno just after failure.
44041           [ruby-dev:22492]
44043 Tue Jan  6 20:51:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44045         * lib/logger.rb(Logger#msg2str): no special treatment for the object
44046           which responds to :to_str.
44048         * lib/logger.rb(LogDevice#initialize): remove type checking if the
44049           given object is a String.  Kernel.open handles it correctly.
44051         * test/logger/test_logger.rb: follow above change (ArgumentError ->
44052           TypeError.)
44054 Tue Jan  6 14:53:14 2004  Dave Thomas  <dave@pragprog.com>
44056         * bin/ri: split out the display side, making it pluggable. Added
44057           new ri_driver and ri_display files in lib/rdoc/ri.
44059 Tue Jan  6 11:29:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44061         * test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,
44062           test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
44063           test_time.rb,test_tsort.rb: added.
44065 Tue Jan  6 09:38:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44067         * import soap4r/1.5.2;
44069         * lib/soap/{attachment.rb,baseData.rb,encodingstyle/soapHandler.rb}:
44070           introduce SOAPExternalReference class as a referenct to SOAPEnvelope
44071           external content.
44073         * lib/soap/{attachment.rb,mimemessage.rb}: great SwA (SOAP messages
44074           with Attachments) support code by Jamie Herre.
44076         * lib/soap/{element.rb,marshal.rb,parser.rb,processor.rb,
44077           streamHandler.rb,wsdlDriver.rb}: SwA support.
44079         * lib/soap/rpc/{cgistub.rb,driver.rb,element.rb,proxy.rb,router.rb,
44080           soaplet.rb}: SwA support and refactoring.
44082         * lib/soap/generator.rb, lib/soap/mapping/mapping.rb: follow
44083           SOAPReference#initialize signature change.
44085         * lib/soap/mapping/factory.rb: deleted unused methods.
44087         * lib/soap/mapping/rubytypeFactory.rb: do no ignore case while xsi:type
44088           string <-> Ruby class name matching.
44090         * lib/xsd/datatypes.rb: check the smallest positive non-zero
44091           single-precision float exactly instead of packing with "f".
44092           [ruby-talk:88822]
44094         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: use 1.402e-45, not
44095           1.4e-45.  1.4e-45 is smaller than 2 ** -149...
44097         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb,
44098           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0".
44100         * test/soap/test_streamhandler.rb: revert to the previous test that
44101           warns "basic_auth unsupported under net/http".
44103 Tue Jan  6 06:37:53 2004  Dave Thomas  <dave@pragprog.com>
44105         * bin/rdoc: Add --ri-system switch
44107         * lib/.document: Update with list of files that seem to have
44108           documentation
44110         * lib/test/unit.rb: Reorder comment to make it RDoc friendly.
44112         * Makefile.in: add install-nodoc target, and make it
44113           generate RDoc on default install.
44115         * lib/rdoc/ri/ri_options.rb (RI::Options::parse): Add
44116           --doc-dir option to ri.
44118 Tue Jan  6 00:04:40 2004  Dave Thomas  <dave@pragprog.com>
44120         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
44121           fix parsing if there are braces in a method parameter list
44123 Tue Jan  6 01:01:04 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44125         * win32/dir.h, win32/win32.c: fix patch miss.
44127         * win32/Makefile.sub: fix file dependency.
44129 Mon Jan  5 20:32:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44131         * lib/logger.rb: enhanced documentation.
44133 Mon Jan  5 18:58:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44135         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44136           [ruby-dev:22486]
44138         * pack.c (pack_unpack): unpack requires big endian offet (OFF16B
44139           and OFF32B).  The patch is from Minero Aoki in [ruby-dev:22489]
44141         * pack.c (OFF16B): add big-endian offset again.
44143 Mon Jan  5 03:00:53 2004  Minero Aoki  <aamine@loveruby.net>
44145         * test/ruby/test_pack.rb: new test test_unpack_N.
44147 Mon Jan  5 01:47:53 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44149         * lib/mkmf.rb (create_makefile): remove duplicated object files
44150           from $objs on DOSISH platforms.
44152 Sat Jan  3 02:44:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44154         * rubysig.h (TRAP_END): preserve errno before switching context.
44155           [ruby-core:02137]
44157 Sat Jan  3 01:18:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44159         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44160           [ruby-dev:22476]
44162 Fri Jan  2 14:54:11 2004  Dave Thomas  <dave@pragprog.com>
44164         * bin/ri: Add new --classes option, and arrange for
44165           help messages to be paged too.
44167         * bin/rdoc: Add statistics.
44169         * process.c: (MG) Added Process documentation
44171         * lib/rdoc/ri/ri_formatter.rb (RI::AttributeFormatter::wrap):
44172           Fix problem with labels not displaying in RI labeled
44173           lists using BS and ANSI modes.
44175 Fri Jan  2 01:50:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44177         * io.c (argf_eof): ARGF.eof? should not have any side effect.
44178           [ruby-dev:22469]
44180 Thu Jan  1 09:03:20 2004  Dave Thomas  <dave@pragprog.com>
44182         * bin/ri (report_class_stuff): Fix problem with ambiguous nested
44183           classes not matching.
44185 Wed Dec 31 17:25:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44187         * io.c (argf_each_byte): should return self.  [ruby-dev:22465]
44189 Wed Dec 31 15:05:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44191         * lib/pathname.rb: Corrected small coding error.
44193 Wed Dec 31 15:00:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44195         * lib/pathname.rb: Completed documentation.
44197 Wed Dec 31 11:20:34 2003  Dave Thomas  <dave@pragprog.com>
44199         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Make
44200           file referenced in "// in sss.c" relative to current file.
44202 Wed Dec 31 11:17:37 2003  Dave Thomas  <dave@pragprog.com>
44204         * lib/rdoc/generators/html_generator.rb: Fix problem when
44205           a public method was aliased, but the alias is then
44206           made private, and hence doesn't appear in RDoc output.
44208 Wed Dec 31 01:33:05 2003  Dave Thomas  <dave@pragprog.com>
44210         * array.c, error.c, eval.c, io.c, prec.c, range.c, re.c,
44211           string.c, time.c: Add RDoc for Kernel functions, and tidy.
44213 Tue Dec 30 19:39:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44215         * io.c (rb_f_readline): should raise EOFError at the end of
44216           files.  [ruby-dev:22458]
44218         * io.c (argf_read): should concatenate input files when length
44219           argument is nil. [ruby-dev:22450]
44221         * io.c (argf_read): should update supplied string buffer (2nd
44222           argument) even when IO#read is called multiple times.
44224         * io.c: should initialize lineno by zero. [ruby-dev:22460]
44226 Tue Dec 30 12:30:30 2003  Dave Thomas  <dave@pragprog.com>
44228         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): If a
44229           class and a method have the same name, finding Xxx.abc was trying
44230           to find 'abc' in method 'Xxx', not class 'Xxx'.
44232 Tue Dec 30 08:32:32 2003  Dave Thomas  <dave@pragprog.com>
44234         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method):
44235           Handle undoing nsting of yield parameters correctly for:
44237             def each_entry(&b) Dir.foreach(@path) {|f| yield P.new(f) } end
44239 Tue Dec 30 07:30:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44241         * lib/pathname.rb: Added documentation.
44243 Mon Dec 29 20:08:17 2003  Minero Aoki  <aamine@loveruby.net>
44245         * lib/net/http.rb (GenericRequest#initialize): check if path
44246           begins with '/'.
44248         * lib/net/http.rb: def m( arg ) -> def m(arg)
44250 Mon Dec 29 12:51:02 2003  Dave Thomas  <dave@pragprog.com>
44252         * eval.c: Add RDoc for Kernel global functions.
44254 Mon Dec 29 11:00:16 2003  Dave Thomas  <dave@pragprog.com>
44256         * array.c: Tidy up RDoc loose ends.
44258 Mon Dec 29 05:05:51 2003  Dave Thomas  <dave@pragprog.com>
44260         * struct.c, random: Add RDoc comments
44262 Mon Dec 29 02:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44264         * lib/optparse.rb: Improved documentation.
44266 Mon Dec 29 02:20:54 2003  Dave Thomas  <dave@pragprog.com>
44268         * eval.c: Add RDoc for class Proc, Method, UnboundMethod
44270 Mon Dec 29 02:20:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44272         * instruby.rb: fix install directory if destdir and compile_dir are
44273           not in the same drive.
44275         * ext/extmk.rb: ditto. [ruby-list:39009]
44277         * win32/Makefile.sub, win32/README.win32, win32/configure.bat,
44278           win32/setup.mak: new configure scheme. use ``configure --prefix=dir''
44279           instead of ``nmake DESTDIR=dir install''.
44281 Mon Dec 29 00:41:44 2003  Dave Thomas  <dave@pragprog.com>
44283         * math.c: Add RDoc comments
44285 Sun Dec 28 20:19:11 2003  Tanaka Akira  <akr@m17n.org>
44287         * ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't
44288           raise EOFError.
44290         * ext/zlib/zlib.c (gzreader_gets): don't increment lineno when
44291           gzfile_read_all returns "".
44293 Sun Dec 28 15:25:08 2003  Dave Thomas  <dave@pragprog.com>
44295         * class.c,object.c,parse.y,sprintf.c,variable.c: Document classes
44296           Object, Module, etc...
44298 Sun Dec 28 11:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44300         * test/csv/test_csv.rb: generate bom.csv and mac.csv files on the fly.
44301           [ruby-talk:88852]
44303         * test/csv/{bom.csv,mac.csv}: removed.
44305 Sun Dec 28 08:56:51 2003  Dave Thomas  <dave@pragprog.com>
44307         * eval.c: Thead[Group] RDoc (thanks to MG)
44309 Sun Dec 28 03:50:05 2003  Dave Thomas  <dave@pragprog.com>
44311         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_override_comment):
44312           Escape method names used in regexp
44314 Sun Dec 28 01:46:02 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
44316         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
44317           Add support for rules in 'ri' output.
44319 Sun Dec 28 01:35:35 2003  Dave Thomas  <dave@pragprog.com>
44321         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body):
44322           Sometimes the Ruby source aliases two otherwise
44323           unrelated methods (for example Kernel#object_id and
44324           Kernel#hash are both the same C function). Provide a
44325           facility to allow the methods to be documented
44326           separately.
44328 Sun Dec 28 01:05:31 2003  Dave Thomas  <dave@pragprog.com>
44330         * marshal.c, signal.c: RDoc collemts added by Elliott Hughes
44332 Sun Dec 28 00:46:25 2003  Dave Thomas  <dave@pragprog.com>
44334         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_class_comment):
44335           Some Ruby source uses lower-case class names for the
44336           Init_Xxx C function name.
44338 Sat Dec 27 23:41:46 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
44340         * configure.in: fix "test: too many arguments" error.
44342 Sat Dec 27 15:32:40 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
44344         * time.c: Add RDoc comments for Time class.
44346 Sat Dec 27 15:07:26 2003  Dave Thomas  <dave@pragprog.com>
44348         * object.c: Add RDoc comments for Symbol class.
44350 Sat Dec 27 14:39:53 2003  Dave Thomas  <dave@pragprog.com>
44352         * numeric.c (Init_Numeric): Add RDoc comments.
44354 Sat Dec 27 00:44:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44356         * io.c (next_argv): warn always for stdin on inplace edit mode.
44358         * io.c (read_all): need to check string value.
44360         * io.c (argf_read): allow ARGF.read(nil).  [ruby-dev:22433]
44362 Fri Dec 26 23:02:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44364         * io.c (rb_f_backquote): need not to check nil result.
44365           [ruby-core:02078]
44367         * io.c (rb_io_getline): should return nil when read_all gives
44368           empty string, even when nil rs is specified. [ruby-core:02077]
44370 Fri Dec 26 18:33:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44372         * configure.in: check if getcontext and setcontext are available.
44374         * eval.c: use presence of getcontext/setcontext.
44376 Fri Dec 26 16:40:53 2003  Tanaka Akira  <akr@m17n.org>
44378         * lib/pathname.rb (PathnameTest#test_plus): add 2 assertions.
44380 Fri Dec 26 14:05:13 2003  Minero Aoki  <aamine@loveruby.net>
44382         * test/ruby/test_pack.rb: new test test_pack_N.
44384 Fri Dec 26 12:53:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44386         * pack.c (pack_pack): add sign check for 'i', and 'l'.
44387           [ruby-dev:22427]
44389         * bignum.c (rb_quad_pack): add range check for 'quad int'.
44391 Fri Dec 26 10:58:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44393         * MANIFEST: add vms/config.h and remove vms/config.h_in.
44395 Fri Dec 26 10:42:00 2003  AKIYOSHI, Masamichi  <masamichi.akiyoshi@hp.com>
44397         * io.c: [VMS] "rfm=stmlf" is specified for open() and fopen().
44399 Thu Dec 25 22:29:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44401         * string.c (rb_str_update): don't return any value.
44403 Thu Dec 25 15:30:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44405         * string.c (rb_str_update): call rb_str_modify().
44407 Thu Dec 25 05:08:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44409         * eval.c (search_required): search actual file name once when no
44410           extension specified.
44412 Thu Dec 25 04:00:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44414         * stable version 1.8.1 released.
44416 Thu Dec 25 00:17:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44418         * configure.in: check for nanosleep, -lrt if required.
44419           [ruby-core:02059]
44421         * eval.c (thread_timer): use select(2) if nanosleep(2) is not
44422           available.
44424         * eval.c: check __stub_getcontext for glibc on some platforms.
44425           [ruby-list:38984]
44427 Wed Dec 24 23:48:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44429         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb
44430           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0"
44431           to express -0.0.  [ruby-talk:88786]
44433 Wed Dec 24 23:29:30 2003  Tanaka Akira  <akr@m17n.org>
44435         * lib/tsort.rb (test_orphaned_break): removed.
44437 Wed Dec 24 20:53:06 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44439         * ext/tk/sample/tkmulticolumnlist.rb: new sample
44441         * ext/tk/sample/tkmultilistframe.rb: bug fix
44443 Wed Dec 24 20:37:37 2003  Eric Sunshine  <sunshine@sunshineco.com>
44445         * configure.in (LDSHARED): Fixed typographical error in assignment of
44446           LDSHARED for Rhapsody which caused linking of extension modules to
44447           fail.
44449 Wed Dec 24 17:51:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44451         * file.c (rb_thread_flock): enable thread support again.
44453 Wed Dec 24 16:46:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44455         * eval.c (catch_timer): do not call rb_thread_schedule() inside to
44456           avoid pthread_mutex_lock() deadlock.  interrupts to system calls
44457           are detected by TRAP_END via EINTR error.
44459         * eval.c (thread_timer): do not post signal unless it is
44460           absolutely necessary.
44462         * rubysig.h (TRAP_END): add CHECK_INTS to switch thread.
44464         * regex.c (re_compile_pattern): check if nextp is smaller than
44465           pend.  [ruby-dev:22372]
44467         * eval.c (umethod_bind): remove method overridden check.
44468           [ruby-dev:22366]
44470 Wed Dec 24 16:13:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44472         * ext/openssl/ossl_ssl.c (ossl_ssl_read): should check for error
44473           status by SSL_get_error().
44475         * ext/openssl/ossl_ssl.c (ossl_ssl_write): ditto.
44477 Wed Dec 24 14:23:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44479         * ext/stringio/stringio.c (strio_read): clear the buffer argument
44480           when returning nil.  [ruby-dev:22363]
44482         * test/ruby/ut_eof.rb (TestEOF::test_eof_0, TestEOF::test_eof_1):
44483           add buffer argument tests.
44485 Wed Dec 24 14:07:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44487         * lib/test/unit/assertions.rb: Modules are allowed to rescue.
44489         * lib/test/unit/autorunner.rb: show output_level in order.
44491         * lib/test/unit/collector/dir.rb: get rid of successive same
44492           directories in load path.
44494         * test/testunit/test_assertions.rb (test_assert_nothing_raised,
44495           test_assert_raise): test for modules.
44497 Wed Dec 24 13:43:34 2003  Shugo Maeda  <shugo@ruby-lang.org>
44499         * lib/net/imap.rb (authenticate): remove "\n" from base64 encoded
44500           strings.
44502 Wed Dec 24 11:26:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44504         * test/fileutils/test_fileutils.rb: should not create any
44505           files or directories in current directory.  [ruby-talk:88724]
44507 Wed Dec 24 10:29:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44509         * ext/stringio/stringio.c (strio_read): never return nil at
44510           unlimited read.  [ruby-dev:22334]
44512         * ext/stringio/stringio.c (strio_read): support second
44513           argument.  [ruby-dev:22350]
44515 Wed Dec 24 09:38:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44517         * parse.y (arg): should return 0 after error.  [ruby-dev:22360]
44519 Wed Dec 24 00:56:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44521         * io.c (read_all): do not return nil at the end of file.
44522           [ruby-dev:22334]
44524         * io.c (argf_read): do not depend on nil at eof behavior of
44525           IO#read().
44527         * eval.c (rb_thread_join): dup exception before re-raising it.
44529         * io.c (rb_io_eof): call clearerr() to prevent side effect.  this
44530           patch is supplied by Masahiro Sakai <sakai@tom.sfc.keio.ac.jp>.
44531           [ruby-dev:22234]
44533         * pack.c (OFF16): get offset for big endian machines.
44535         * pack.c (pack_pack): use OFF16 instead of OFF16B.
44536           [ruby-dev:22344]
44538         * pack.c (pack_unpack): ditto.
44540 Tue Dec 23 22:47:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44542         * io.c (rb_io_check_readable): set FMODE_RBUF always, even if
44543           NEED_IO_SEEK_BETWEEN_RW is not defined. [ruby-dev:22340]
44545         * io.c (rb_io_check_writable): clear FMODE_RBUF before writing
44546           something.
44548 Tue Dec 23 22:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44550         * lib/optparse.rb: incomplete RDoc documentation added in place of
44551           existing RD comments.  Tabs converted to spaces.
44553 Tue Dec 23 19:44:47 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44555         * test/soap/test_streamhandler.rb (test_basic_auth): removed.
44556           soap4r + basic_auth is not officially supported in ruby/1.8.1 even
44557           though soap4r + basic_auth + http-access2 should run fine.
44559 Tue Dec 23 19:42:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44561         * io.c (rb_io_ungetc): raise an exception at unread stream to
44562           avoid unspecified behavior.  [ruby-dev:22330]
44564         * test/ruby/test_system.rb (test_syntax): glob relatively from
44565           __FILE__.
44567 Tue Dec 23 18:09:40 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44569         * pack.c (pack_pack): remove unnecessary negative value check.
44570           [ruby-dev:22329]
44572 Tue Dec 23 17:26:55 2003  KONISHI Hiromasa  <konishih@fd6.so-net.ne.jp>
44574         * bcc32/Makefile.sub (config.h): bcc has finite(). [ruby-list:38940]
44576 Tue Dec 23 16:08:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44578         * lib/rexml/encodings/US-ASCII.rb: typo.  [ruby-talk:88650]
44580         * test/ruby/test_system.rb: num of asserts depended on running dir.
44582         * test/xsd/test_noencoding.rb: rexml + without iconv/uconv cannot
44583           handle euc-jp.  install iconv, uconv or xmlscan.
44585 Tue Dec 23 14:13:51 2003  akira yamada  <akira@ruby-lang.org>
44587         * lib/uri/generic.rb (URI::Generic::check_userinfo,
44588           URI::Generic::check_user, URI::Generic::check_password): tests
44589           conflicts/depends with other components closely.
44591         * test/uri/test_generic.rb (TestGeneric::test_set_component):
44592           added tets.
44594 Tue Dec 23 11:08:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44596         * test/xsd/test_noencoding.rb: rescue Errno::EINVAL and do not test.
44597           "euc-jp" might not be in supported encoding name list.
44598           [ruby-talk:88650]
44600 Tue Dec 23 06:10:31 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44602         * lib/webrick/cgi.rb (CGI): add support for mod_ruby.
44604         * lib/webrick/cgi.rb (CGI::Socket): add check for existence of
44605           OpenSSL module in all HTTPS related methods.
44607         * lib/webrick/cgi.rb (CGI::Socket#cipher): should create similar
44608           value to OpenSSL::SSLSocket#cipher.
44610         * lib/webrick/httpresponse.rb (HTTPResponse#setup_header): should
44611           set "connection: close" if @keep_alive is false.
44613         * lib/webrick/https.rb (HTTPrequest#meta_vars): add supprt for
44614           SSL_PROTOCOL, SSL_CIPHER_USEKEYSIZE and SSL_CIPHER_ALGKEYSIZE.
44616 Mon Dec 22 23:00:05 2003  akira yamada  <akira@ruby-lang.org>
44618         * lib/uri/generic.rb (URI::Generic::check_opaque): fixed typo.
44620 Mon Dec 22 21:59:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44622         * ext/iconv/iconv.c (map_charset): always ensure code is a String.
44624 Mon Dec 22 21:15:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44626         * class.c (rb_mod_init_copy): always copy singleton class.
44627           [ruby-dev:22325]
44629 Mon Dec 22 20:44:36 2003  akira yamada  <akira@ruby-lang.org>
44631         * lib/uri/generic.rb (URI::Generic#route_from): accepts urls which
44632           has no host-part.
44634         * test/uri/test_generic.rb (TestGeneric::test_route): added a test.
44636 Mon Dec 22 20:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44638         * lib/cgi.rb: reduce eval.
44640         * lib/cgi.rb (CGI::QueryExtension::read_multipart): alias path to
44641           local_path.  [ruby-list:38883]
44643 Mon Dec 22 20:09:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44645         * test/soap/test_property.rb: remove duplicated test method.
44647 Mon Dec 22 18:22:04 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44649         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): remove
44650           HAVE_ISINF definition to follow previous commits of missing.h
44651           and win32/win32.h.
44653 Mon Dec 22 17:23:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44655         * configure.in (ac_cv_func_setitimer): moved from defines.h
44657         * defines.h, rubysig.h, signal.c: removed macro handling which
44658           should be done in configure.
44660         * configure.in (intrinsics.h): check if present.
44662         * ruby.h: include intrinsics.h if available.
44664         * bignum.c, marshal.c: include ieeefp.h if available.
44666         * missing.h (isinf): define as a macro if finite() and isnan()
44667           are available.  [ruby-core:02032]
44669 Mon Dec 22 17:07:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
44671         * configure.in (mingw): set isnan, finite and isinf to yes.
44673 Mon Dec 22 13:40:19 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44675         * lib/soap/property.rb: passing block by reference.
44677 Mon Dec 22 00:32:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44679         * eval.c (rb_with_disable_interrupt): use ENABLE_INTS instead of
44680           ALLOW_INTS which may switch context.  [ruby-dev:22319]
44682         * ext/syck/emitter.c (syck_emitter_write): str bigger than
44683           e->bufsize causes buffer overflow.  [ruby-dev:22307]
44685 Sun Dec 21 17:29:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44687         * class.c (rb_check_inheritable): new function.  [ruby-dev:22316]
44689         * intern.h: add prototype.
44691         * eval.c (superclass): use rb_check_inheritable().
44693         * object.c (rb_class_initialize): check argument validity.
44695 Sun Dec 21 16:25:10 2003  Tanaka Akira  <akr@m17n.org>
44697         * lib/pathname.rb (Pathname#+): re-implemented to resolve ".." in
44698           beginning of the argument.
44699           (Pathname#join): concatenate from the last argument.
44700           (Pathname#parent): just use Pathname#+.
44702 Sun Dec 21 00:12:37 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44704         * ext/tk/lib/tk.rb: add new methods (TkScrollbar#assign, assign_list)
44706         * ext/tk/sample/tkmultilistframe.rb: use TkScrollbar#assign method
44708 Sat Dec 20 21:59:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44710         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): refine regexp.
44712         * lib/webrick/cgi.rb (CGI#start): NPH scripts return status line
44713           instead of Status: header field.
44715         * lib/webrick/cgi.rb (CGI::Socket): refine some coditions.
44717 Sat Dec 20 16:07:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44719         * lib/optparse.rb (OptionParser::Completion::complete): wrong
44720           Regexp for word boundary.  pointed out by Gavin Sinclair.
44722         * lib/optparse.rb (OptionParser::make_switch): [no-] prefix was
44723           missing.
44725 Sat Dec 20 11:40:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44727         * lib/yaml.rb (YAML::YAML): adjust Marshal version.
44729 Sat Dec 20 03:56:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44731         * eval.c (rb_with_disable_interrupt): prohibit thread context
44732           switch during proc execution.  [ruby-dev:21899]
44734 Sat Dec 20 02:41:02 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44736         * lib/webrick/cgi.rb: add file. (yet another CGI library)
44738         * MANIFEST: add lib/webrick/cgi.rb.
44740 Sat Dec 20 02:18:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44742         * misc/ruby-mode.el (ruby-calculate-indent): proper indentation
44743           inside of parentheses.  [ruby-dev:22308]
44745 Fri Dec 19 21:24:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44747         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): should not set
44748           HTTP_CONTENT_TYPE and HTTP_CONTENT_LENGTH.
44750         * lib/webrick/https.rb (HTTPRequest#parse): should check presence
44751           of cert() method to detect SSLSocket.
44753 Fri Dec 19 22:56:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44755         * lib/soap/property.rb (SOAP::Property#load): new method for loading
44756           property value into existing property tree.
44758         * test/soap/test_property.rb: add test.
44760 Fri Dec 19 19:21:49 2003  akira yamada  <akira@ruby-lang.org>
44762         * lib/runit/cui/testrunner.rb (RUNIT::CUI::TestRunner::run):
44763           should use Test::Unit::UI::{PROGRESS_ONLY,VERBOSE}.
44765 Fri Dec 19 17:36:49 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44767         * ext/tk/sample/tkmultilistbox.rb: bug fix
44769         * ext/tk/sample/tkmultilistframe.rb: new sample script
44771 Fri Dec 19 03:44:27 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44773         * lib/webrick/httputils.rb (parse_form_data): should return an
44774           empty Hash if the body is empty.
44776 Thu Dec 18 21:47:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44778         * lib/mkmf.rb (create_makefile): should remove deffile if it's
44779           made by miniruby. based on nobu's patch.
44781 Thu Dec 18 21:44:21 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44783         * eval.c (stack_extend): ignore inline optimization on VC7.
44785         * win32/Makefile.sub (OS, RT): can override.
44787         * win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
44788           option. based on Tietew's patch [ruby-dev:22289]
44790 Thu Dec 18 16:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44792         * dir.c (fnmatch): unlike find_dirsep(), rb_path_next() never
44793           return NULL.
44795 Thu Dec 18 15:27:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
44797         * lib/ipaddr.rb (IPSocket::getaddress): merge usa's patch.
44798           [ruby-dev:21678]
44800 Wed Dec 17 15:15:30 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44802         * lib/cgi.rb (CGI::QueryExtension::Value::[]): should work like
44803           String#[] if more than one arguments are specified.
44805         * lib/delegate.rb: avoid using common instance name as "@obj".
44807         * lib/cgi.rb (CGI::QueryExtension::Value): Value is no longer
44808           subclass of String, but DelegateClass(String).
44810         * ext/curses/extconf.rb: restore function check for init_color.
44811           [ruby-list:38905]
44813         * Makefile.in: need to specify $(MAINLIBS) for the miniruby
44814           generation rule.
44816         * configure.in: better FreeBSD -lc_r support.
44818 Wed Dec 17 00:16:14 2003  Minero Aoki  <aamine@loveruby.net>
44820         * ext/strscan/strscan.c: new method
44821           StringScanner#beginning_of_line? (alias #bol?)
44823         * ext/strscan/strscan.c: new method StringScanner#concat and #<<.
44825         * ext/strscan/strscan.c: StringScanner#new(str) does not duplicate
44826           nor freeze STR (allow destructive modification).
44828         * test/strscan/test_stringscanner.rb: test new methods above.
44830         * test/strscan/test_stringscanner.rb: test destructive string
44831           modification.
44833 Tue Dec 16 21:20:47 2003  Tanaka Akira  <akr@m17n.org>
44835         * lib/pp.rb: don't use local variable `pp'.
44837         * lib/prettyprint.rb: ditto.
44839 Tue Dec 16 13:20:43 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44841         * ext/tk/lib/tk.rb: condition bug of if statement on
44842           {pack,grid}_propagate methods
44844 Tue Dec 16 03:17:29 2003  why the lucky stiff  <why@ruby-lang.org>
44846         * lib/yaml/rubytypes.rb: comments in strings. [ruby-talk:88012]
44848         * test/yaml/test_yaml.rb: add test.
44850 Tue Dec 16 01:14:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44852         * eval.c (catch_timer): check rb_thread_crtical in main native
44853           thread.
44855         * eval.c (thread_timer): just sends signals periodically, to
44856           prevent main native thread from receiving them in critical
44857           section.  [ruby-core:01959]
44859 Mon Dec 15 13:32:22 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44861         * dir.c (check_dirname): check string safety and remove extraneous
44862           trailing directory separators.  [ruby-dev:22279]
44864         * file.c: renamed and externalized rb_path_next,
44865           rb_path_skip_prefix, rb_path_last_separator, rb_path_end.
44867         * intern.h: prototypes for rb_path_next, rb_path_skip_prefix,
44868           rb_path_last_separator, rb_path_end.
44870 Mon Dec 15 09:27:46 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
44872         * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): first argument
44873           of rb_protect should take an argument of VALUE.
44875 Sun Dec 14 18:46:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
44877         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
44878           AF_INET6 is defined on MinGW.
44880         * lib/ipaddr.rb (AF_INET6): workaround in the environment which does
44881           not support IPv6.
44883 Sat Dec 13 18:55:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44885         * ext/iconv/charset_alias.rb: preserve original order.
44887         * ext/iconv/extconf.rb: remove wrapper file at clean.
44889 Sat Dec 13 18:09:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44891         * eval.c (thread_timer): use timer by sub-thread and nanosleep.
44892           [ruby-talk:87519]
44894         * gc.c (Init_stack): no stack adjustment for THREAD_SAFE.
44896 Sat Dec 13 17:17:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44898         * eval.c (proc_alloc): cache the created object at first time.
44899           [ruby-talk:61288], [ruby-dev:22240]
44901 Sat Dec 13 09:01:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44903         * configure.in: check ucontext.h.
44905         * eval.c: use getcontext/setcontext() instead of setjmp/longjmp()
44906           on ia64 or with native thread enabled.  [ruby-core:01932]
44908 Sat Dec 13 03:09:14 2003  why the lucky stiff  <why@ruby-lang.org>
44910         * lib/yaml/rubytypes.rb: anonymous struct fix. [ruby-core:01946]
44912         * test/yaml/test_yaml.rb: add test.
44914 Fri Dec 12 22:36:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44916         * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell,
44917           "#{aCell}" and so on.
44919         * test/csv/test_csv.rb: add tests.
44921 Fri Dec 12 19:33:06 2003  Minero Aoki  <aamine@loveruby.net>
44923         * lib/fileutils.rb (mkdir): remove trailing `/' from pathes.
44925         * lib/fileutils.rb (rmdir): ditto. [ruby-dev:22238]
44927         * lib/fileutils.rb (rmdir_r): ditto.
44929         * lib/fileutils.rb (fu_copy_dir): check if it is a directory after
44930           mkdir(2).
44932 Fri Dec 12 06:06:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44934         * eval.c (proc_invoke): fix class name in warning message for
44935           define_method.  [ruby-dev:22235]
44937 Thu Dec 11 21:24:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44939         * ext/openssl/ossl_pkcs12.[ch]: new files. add OpenSSL::PKCS12.
44941         * ext/openssl/ossl.[ch]: ditto.
44943         * ext/openssl/MANIFEST: add ossl_pkcs12.[ch].
44945 Thu Dec 11 20:54:28 2003  Minero Aoki  <aamine@loveruby.net>
44947         * lib/fileutils.rb (mkdir_p): remove trailing `/' befere mkdir(2).
44948           mkdir("nonexistdir/") does not work on NetBSD/Alpha 1.6.1.
44950         * lib/fileutils.rb (fu_list): call to_str for all arguments.
44952 Thu Dec 11 20:07:01 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
44954         * lib/ftools.rb (makedirs): sync with fileutils.
44956 Thu Dec 11 19:53:03 2003  Minero Aoki  <aamine@loveruby.net>
44958         * lib/fileutils.rb (mkdir_p): catch all SystemCallErrors.
44959           (mkdir("C:\") causes EACCESS on Windows 2000/NTFS)
44961 Thu Dec 11 19:08:02 2003  Minero Aoki  <aamine@loveruby.net>
44963         * lib/fileutils.rb (mkdir_p): check if it is a directory after
44964           mkdir(2) instead of before mkdir(2), to avoid race condition.
44965           [ruby-talk:87730]
44966           Refer: mkinstalldirs sh script, GNU mkdir(1) (coreutils 5.0)
44968 Thu Dec 11 18:49:30 2003  Minero Aoki  <aamine@loveruby.net>
44970         * lib/fileutils.rb: def m( arg ) -> def m(arg).
44972 Thu Dec 11 11:39:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44974         * configure.in (ieeefp.h), numeric.c: needed for finite() on
44975           Solaris.  [ruby-core:01921]
44977         * file.c (rb_stat_inspect): adjust format specifier.
44979         * parse.c (arg_prepend): nodetype() is for debug use.
44981         * ruby.h (ISASCII, etc): cast to int to get rid of warning.
44983         * ruby.h (alloca.h): include even in GCC.  [ruby-core:01925]
44985         * ext/bigdecimal/bigdecimal.c (GetVpValue): adjust format
44986           specifier.
44988         * ext/bigdecimal/bigdecimal.c (BigDecimal_prec, BigDecimal_coerce,
44989           BigDecimal_divmod): use rb_assoc_new() to suppress memory usage.
44991         * ext/bigdecimal/bigdecimal.c (BigDecimal_split): ditto.
44993         * ext/dl/sym.c (rb_dlsym_guardcall): guard itself should be
44994           volatile.
44996         * ext/iconv/iconv.c (iconv_convert): ensure actual parameter with
44997           format specifier.
44999         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): do not
45000           define unless used.
45002         * ext/pty/pty.c (getDevice): get rid of warning.
45004         * ext/socket/socket.c (port_str, sock_s_getaddrinfo,
45005           sock_s_getnameinfo): FIX2INT() now returns long.
45007         * ext/socket/socket.c (init_inetsock_internal): uninitialized
45008           variable.
45010         * ext/syck/rubyext.c (syck_parser_assign_io): add prototype.
45012         * ext/syck/rubyext.c (rb_syck_mktime, yaml_org_handler): use
45013           ISDIGIT() instead of isdigit() to avoid warnings and for
45014           platforms which don't support non-ascii charater.
45016 Wed Dec 10 19:28:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45018         * ext/stringio/stringio.c (strio_read): set EOF flag at short read.
45019           [ruby-dev:22223], [ruby-dev:22224]
45021 Wed Dec 10 18:07:25 2003  Minero Aoki  <aamine@loveruby.net>
45023         * lib/erb.rb: new method ERB#filename(=). [ruby-dev:22208]
45025 Wed Dec 10 17:54:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45027         * ext/stringio/stringio.c (strio_read): do not set EOF flag when
45028           requested length is zero.  [ruby-dev:22214]
45030 Wed Dec 10 17:17:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45032         * io.c (read_all): should return given string even if data read is
45033           empty.  [ruby-dev:22207]
45035 Wed Dec 10 17:16:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45037         * ext/stringio/stringio.c (strio_read): adjust behavior at reading
45038           beyond EOF to IO.  [ruby-dev:22205]
45040         * test/ruby/ut_eof.rb (TestEOF::Seek): test behaviors at reading
45041           beyond EOF.
45043         * test/ruby/test_file.rb, test/stringio/test_stringio.rb: include
45044           TestEOF::Seek test case.
45046 Wed Dec 10 15:01:19 2003  Shugo Maeda  <shugo@ruby-lang.org>
45048         * test/monitor/test_monitor.rb (test_cond): use Queue#deq
45049           instead of sleep.
45051 Wed Dec 10 14:45:39 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45053         * ext/pty/pty.c (HAVE_SYS_IOCTL_H): need to include <sys/ioctl.h>
45054           for TIOCSCTTY on *BSD.  based on gotoyuzo's patch.
45055           (ruby-bugs:PR#1211)
45057         * ext/pty/pty.c (establishShell): should close descriptors if fork
45058           failed.
45060 Wed Dec 10 12:53:05 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45062         * win32/win32.h: define execv() using do_aspawn().
45064         * process.c (proc_exec_v): remove #ifdef's which stopped needing.
45066 Tue Dec  9 23:32:23 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45068         * ext/tk/lib/tk.rb, ext/tk/lib/tkcanvas.rb, ext/tk/lib/tkdialog.rb,
45069           ext/tk/lib/tkentry.rb, ext/tk/lib/tkscrollbox.rb, ext/tk/lib/tktext.rb,
45070           ext/tk/sample/tkalignbox.rb, ext/tk/sample/tkcombobox.rb,
45071           ext/tk/sample/tkmultilistbox.rb, ext/tk/sample/tkoptdb.rb, ext/tk/sample/tktextframe.rb,
45072           ext/tk/sample/demos-en/dialog1.rb, ext/tk/sample/demos-en/dialog2.rb,
45073           ext/tk/sample/demos-jp/dialog1.rb, ext/tk/sample/demos-jp/dialog2.rb:
45074           overrided instance methods, which are private methods on the super
45075           class, are changed to 'private'
45077 Tue Dec  9 19:53:02 2003  akira yamada  <akira@ruby-lang.org>
45079         * lib/uri/generic.rb (URI::Generic#route_from0): make case insensitive
45080           for host-part.
45082         * test/uri/test_generic.rb (test_route): added tests for the above
45083           change.
45085 Tue Dec  9 14:10:48 2003  Tanaka Akira  <akr@m17n.org>
45087         * io.c (rb_io_check_readable): don't call io_seek if EOF flag is set,
45088           to avoid clearing EOF flag.
45089           (rb_io_check_writable): ditto.
45091 Tue Dec  9 02:53:55 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45093         * ext/tk/sample/tkalignbox.rb: new sample script
45095 Tue Dec  9 00:45:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
45097         * lib/test/unit/assertions.rb: renamed #assert_raises to #assert_raise
45098           and made the former call the latter. [ruby-core:01890]
45100         * test/testunit/test_assertions.rb: ditto.
45102 Tue Dec  9 00:07:35 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45104         * lib/soap/rpc/standaloneServer.rb: add 'shutdown' and 'status'
45105           methods as delegates to WEBrick.
45107         * test/soap/calc/{test_calc.rb,test_calc2.rb},
45108           test/soap/helloworld/test_helloworld.rb,
45109           test/wsdl/datetime/test_datetime.rb, test/wsdl/raa/test_raa.rb:
45110           follow the change.
45112 Mon Dec  8 22:48:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45114         * lib/test/unit/autorunner.rb: remove dependency to a particular
45115           runner.  [ruby-core:01901], [ruby-list:38869]
45117         * lib/test/unit/ui/testrunnerutilities.rb: moved output level
45118           constants from Console.
45120         * lib/test/unit/ui/console/testrunner.rb: ditto.
45122         * lib/test/unit/ui/{fox,gtk,gtk2,tk}/testrunner.rb (initialize):
45123           accept output_level.
45125 Mon Dec  8 15:03:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45127         * ext/syck/syck.c (syck_io_str_read): get rid of buffer overflow.
45129 Mon Dec  8 13:02:11 2003  Minero Aoki  <aamine@loveruby.net>
45131         * lib/uri/common.rb: new method URI.regexp. [ruby-dev:22121]
45133         * test/uri/test_common.rb: add test for URI.regexp.
45135 Mon Dec  8 12:44:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45137         * pack.c: define swap16 and swap32 only if they are not
45138           defined. OpenBSD defines these macros. [ruby-dev:22181]
45140 Sun Dec  7 20:54:17 2003  Tanaka Akira  <akr@m17n.org>
45142         * ext/iconv/iconv.c (map_charset): make case sensitive.
45143           ext/iconv/charset_alias.rb (charset_alias): don't ignore
45144           config.charset's information.  sort aliases.
45146 Sat Dec  6 22:58:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45148         * ext/openssl/ossl_ssl.c (ossl_start_ssl): new function to wrap
45149           SSL_connect and SSL_accept; if SSL_connect (or SSL_accept) returned
45150           but not finished the handshake process, we should retry it.
45152         * ext/openssl/ossl_ssl.c (ossl_ssl_connect): call ossl_start_ssl.
45154         * ext/openssl/ossl_ssl.c (ossl_ssl_accept): ditto.
45156         * ext/openssl/ossl_ssl.c (ossl_ssl_read): allow signal traps.
45158 Sat Dec  6 21:45:10 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45160         * io.c (flush_before_seek): flush before seek on any platform.
45162         * configure.in: ditto.
45164 Sat Dec  6 17:23:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45166         * lib/soap/soap.rb(SOAP::Env.getenv): allow upcase environment variable
45167           as well as downcase one.
45169         * lib/soap/netHttpClient.rb(SOAP::NetHttpClient#proxy=): check URI.
45171 Fri Dec  5 23:22:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45173         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises,
45174           Test::Unit::Assertions::assert_nothing_raised): use the last
45175           argument as message unless class object.
45177         * test/testunit/test_assertions.rb (test_assert_raises): test for
45178           multiple exception list.  [ruby-core:01891]
45180         * test/testunit/test_assertions.rb (test_assert_nothing_raised): test
45181           for non-exception classes.
45183 Fri Dec  5 22:23:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45185         * lib/soap/netHttpClient.rb: proxy support did not work.  fixed.
45187         * lib/soap/property.rb: add class methods for loading property from
45188           stream/file/propertyfile.  propertyfile is a file which is located at
45189           somedir in $:.
45191         * lib/soap/soap.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb,
45192           lib/wsdl/importer.rb: load property from propertyfile 'soap/property'
45193           e.g. /usr/local/lib/ruby/site_ruby/1.8/soap/property.
45195         * test/soap/test_property.rb, test/soap/test_streamhandler.rb: new file.
45197 Fri Dec  5 17:26:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45199         * eval.c (rb_exec_end_proc): maintain tmp_end_procs.
45200           [ruby-dev:22154]
45202 Fri Dec  5 13:36:59 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45204         * eval.c (rb_exec_end_proc): should not clear end_procs and
45205           ephemeral_end_procs before execution. [ruby-dev:22144]
45207         * eval.c (rb_obj_extend): call Module#extended hook after
45208           extended_object.  [ruby-list:38866]
45210         * object.c (Init_Object): Module#extended defined.
45212 Fri Dec  5 13:17:30 2003  Tanaka Akira  <akr@m17n.org>
45214         * test/ruby/test_pipe.rb: use IO.pipe instead of IO.popen.
45216 Fri Dec  5 11:54:45 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45218         * ext/stringio/stringio.c (strio_read): follow IO#read.
45220         * test/ruby/ut_eof.rb, test/ruby/test_file.rb, test/ruby/test_pipe.rb,
45221           test/stringio/test_stringio.rb: add EOF test.
45223 Fri Dec  5 02:49:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45225         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
45226           allow multiple exception list.  [ruby-core:01884]
45228         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised):
45229           check whether arguments are subclass of Exception.
45231 Thu Dec  4 23:54:00 2003  Rick Ohnemus  <rick.ohnemus@systemware.com>
45233         * dln.c (aix_loaderror): should not use member named 'errno' which
45234           might be a macro (e.g. on AIX).
45236 Thu Dec  4 23:32:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45238         * io.c (read_all): do not depend on lseek position.
45239           [ruby-dev:22026]
45241 Thu Dec  4 22:37:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45243         * eval.c (rb_eval): preserve $! value when retry happens in the
45244           rescue clause.  [ruby-talk:86697]
45246 Thu Dec  4 21:50:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45248         * lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
45249           should rescue errors and re-raise DRbConnError on write too.
45250           [ruby-dev:22132]
45252 Thu Dec  4 16:41:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45254         * parse.y (exc_list): allow expanding list.  [ruby-dev:22134]
45256 Thu Dec  4 14:09:24 2003  Minero Aoki  <aamine@loveruby.net>
45258         * test/fileutils/test_fileutils.rb (test_cp): test if the error is
45259           kind of SystemCallError.  It is needless details that which errno
45260           is set on each systems.
45262 Thu Dec  4 13:24:13 2003  Shugo Maeda  <shugo@ruby-lang.org>
45264         * lib/monitor.rb: use Object#__send__ instead of Object#send.
45266 Thu Dec  4 13:17:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45268         * lib/soap/streamHandler.rb: support latest released version of
45269           http-access2.
45271 Thu Dec  4 13:04:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45273         * lib/soap/soap.rb: add SOAP::Env module for environment repository
45274           such as HTTP_PROXY.
45276         * lib/soap/property.rb: property implementation.
45278         * lib/soap/streamHandler.rb, lib/soap/wsdlDriver.rb,
45279           lib/soap/rpc/driver.rb: use soap/property.rb.
45281         * lib/wsdl/importer.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb:
45282           use SOAP::Env.
45284         * lib/soap/netHttpClient.rb: add basic_auth, ssl_config, and cookie
45285           management interface, but ignored for now.
45287         * lib/xsd/charset.rb: add XSD::Charset.encoding= interface to set
45288           wiredump charset explicitly.  it was fixed to 'utf-8' when iconv or
45289           uconv module was found.
45291 Thu Dec  4 10:43:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45293         * ext/dl/sym.c (rb_dlsym_guardcall): __declspec(noinline) is VC7
45294           feature.
45296 Thu Dec  4 10:27:12 2003  Minero Aoki  <aamine@loveruby.net>
45298         * lib/net/http.rb: update hyperlink to the Japanese document.
45300 Thu Dec  4 09:12:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45302         * ext/openssl/ossl_asn1.c (asn1time_to_time): should check that
45303           the underlying value of ASN1_TIME isn't NULL. [ruby-core:01881]
45305 Thu Dec  4 08:29:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45307         * lib/webrick/server.rb (GenericServer#start): should rescue
45308           Exception to avoid unexpected aborting. [ruby-core:01853]
45310         * lib/webrick/server.rb (GenericServer#start_thread): should check
45311           that peeraddr isn't nil before printing.
45313         * lib/webrick/httpresponse.rb (HTTPResponse#start_thread): should
45314           rescue Exception to avoid unexpected aborting of thread.
45316 Thu Dec  4 03:48:59 2003  Tanaka Akira  <akr@m17n.org>
45318         * lib/pathname.rb (Pathname#link, Pathname#symlink): obsoleted.
45319           (Pathname#make_link, Pathname#make_symlink): new method.
45321 Thu Dec  4 01:45:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45323         * io.c (argf_read): should not terminate on empty string; wait
45324           until real EOF.  [ruby-dev:21969]
45326         * io.c (argf_read): should adjust length to read, when length is
45327           specified and read spans command line argument files.
45329 Wed Dec  3 19:38:36 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
45331         * lib/drb/drb.rb: correct fcntl parameter. [ruby-dev:22120]
45333 Wed Dec  3 13:49:07 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45335         * ext/tk/lib/tk.rb: 'format'==>'Kernel.format' (avoid override trouble)
45337         * ext/tk/lib/tkafter.rb: ditto.
45339         * ext/tk/lib/tkcanvas.rb: ditto.
45341         * ext/tk/lib/tkdialog.rb: ditto.
45343         * ext/tk/lib/tktext.rb: ditto.
45345 Wed Dec  3 13:28:13 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45347         * Makefile.in (lex.c): try gperf first, and copy from the source
45348           directory if failed.  [ruby-dev:22123]
45350         * ext/extmk.rb (MTIMES): let makefiles depend to mkmf.rb.
45352         * lib/mkmf.rb (configuration): DLDFLAGS was duplicated.
45354 Tue Dec  2 23:18:12 2003  Minero Aoki  <aamine@loveruby.net>
45356         * lib/net/http.rb: wrote the warning about HTTP_PROXY environment
45357           variable.
45359 Tue Dec  2 21:31:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45361         * bin/testrb: new test runner.  [ruby-core:01845]
45363         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner.run,
45364           Test::Unit::AutoRunner#process_args): take test list to run and
45365           options.
45367         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::RUNNERS,
45368           Test::Unit::AutoRunner#run): should not exit inside a library,
45369           just return the result instead.
45371         * lib/test/unit.rb: ditto.
45373         * test/runner.rb: exit with the test result.
45375 Tue Dec  2 20:18:48 2003  Eric Sunshine  <sunshine@sunshineco.com>
45377         * configure.in (AC_PROG_YACC): AC_DEFINE(OLD_YACC) if Yacc is found
45378           instead of Bison or byacc.
45380         * parse.y: If OLD_YACC is defined, ensure that YYMAXDEPTH is at least
45381           10000 (Bison's default) since some old versions of Yacc define it as
45382           low as 150 by default, which is too low for Ruby to parse some files,
45383           such as date/format.rb.  Among other issues, the parse problem causes
45384           "make test" to fail.
45386 Tue Dec  2 20:03:20 2003  Minero Aoki  <aamine@loveruby.net>
45388         * test/fileutils/test_fileutils.rb: check if Pathnames are usable
45389           for arguments.
45391 Tue Dec  2 04:22:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
45393         * lib/test/unit/assertions.rb: fixed #assert_no_match message.
45395         * test/testunit/test_assertions.rb: ditto.
45397 Tue Dec  2 00:43:00 2003  why the lucky stiff  <why@ruby-lang.org>
45399         * ext/syck/syck.c: string buffering bug.  decrementing by full
45400           max_size now. [ruby-core:01834]
45402 Mon Dec  1 21:33:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45404         * numeric.c (num_sadded): prohibit singleton method definition for
45405           Numerics.  fill yet another gap between Fixnum and Bignum.
45407 Mon Dec  1 17:33:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45409         * pack.c (htov16): converts endian using swap16. htov32(), hton16,
45410           hton32 as well. [ruby-talk:85377]
45412         * pack.c (swap16): swap 2 bytes no matter how big short is on the
45413           platform.  swap32() is also prepared.
45415         * numeric.c (rb_num2int): returns long to preserve information.
45416           rb_fix2int(), rb_num2uint(), rb_fix2uint() as well.
45417           [ruby-talk:85377]
45419         * numeric.c (rb_num2uint): should not check for value range if the
45420           source value is negative.
45422 Mon Dec  1 17:14:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45424         * sample/optparse/opttest.rb: added.
45426 Mon Dec  1 16:10:52 2003  Dave Thomas  <dave@pragprog.com>
45428         * lib/rdoc/rdoc.rb: (etc) initial merge into main tree.
45430 Mon Dec  1 14:17:49 2003  Minero Aoki  <aamine@loveruby.net>
45432         * lib/fileutils.rb (fu_each_src_dest0): call #to_str to allow
45433           Pathname for arguments. [ruby-core:01795]
45435         * test/fileutils/test_fileutils.rb: does much strict test on
45436           "same" files detecting.
45438 Mon Dec  1 09:28:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45440         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
45441           (XCFLAGS): re-export $(XCFLAGS).
45443         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
45444           (ARCH_FLAG): export $(ARCH_FLAG) (perhaps empty value).
45446 Mon Dec  1 01:03:27 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45448         * lib/mkmf.rb (TRY_LINK, link_command): added support for DLDFLAGS
45449           and ARCH_FLAG.  [ruby-dev:22085]
45451 Sun Nov 30 20:18:07 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45453         * configure.in: keep ARCH_FLAG separate. export ARCH_FLAG.
45454           [ruby-core:01819]
45456         * Makefile.in: add ARCH_FLAG to CFLAGS.
45458         * Makefile.in: add @CPPFLAGS@ to CPPFLAGS.
45460         * lib/mkmf.rb (link_command, cc_command): use ARCH_FLAG.
45462         * lib/mkmf.rb (configuration): add ARCH_FLAG to DLDFLAGS.
45464         * Makefile.in: add ARCH_FLAG to DLDFLAGS.
45466         * configure.in: should put getcwd in AC_CHECK_FUNCS, not
45467           AC_REPLACE_FUNCS.  [ruby-core:01826]
45469 Sun Nov 30 18:22:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45471         * configure.in: do not override CCDLDFLAGS, LDFLAGS, XLDFLAGS,
45472           DLDFLAGS and LDSHARED.
45474         * configure.in: XCFLAGS for compiling ruby itself.  ARCH_FLAG is
45475           reflected in CFLAGS.
45477         * lib/mkmf.rb: ditto.  do not import XCFLAGS from config.status.
45479 Sun Nov 30 17:37:36 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45481         * ext/tk/lib/tk.rb: bug fix [ruby-talk:86746]
45483 Sun Nov 30 13:02:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45485         * lib/soap/encodingstyle/soapHandler.rb: refactoring - Simplifying
45486           Conditional Expressions.
45488         * lib/wsdl/soap/definitions.rb: refactoring - Move Method.
45490         * test/xsd/{test_noencoding.rb,noencoding.xml}: new files.  test for
45491           encoding unspecified XML file parsing.
45493         * test/wsdl/{test_fault.rb,map,datetime}: new files.  test of
45494           SOAPFault, dateTime and Apache's Map.
45496 Sun Nov 30 09:35:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45498         * string.c (rb_str_update): get rid of SEGV at just allocated String.
45499           [ruby-core:01812]
45501 Fri Nov 28 23:19:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45503         * gc.c (gc_mark): explicitly check mark recursion levels, instead
45504           of unreliable stack length.
45506 Fri Nov 28 22:49:56 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
45508         * lib/rinda/rinda.rb: fix TupleSpaceProxy#read, read_all.
45510 Fri Nov 28 21:44:40 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45512         * test/fileutils/test_fileutils.rb (test_ln_s): should be a file, not
45513           a directory for FreeBSD.
45515 Fri Nov 28 19:37:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45517         * hash.c (env_has_value, env_index): must match exactly.
45519         * test/ruby/test_env.rb (test_has_value, test_index): condition for
45520           aboves.
45522 Fri Nov 28 17:59:20 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45524         * test/ruby/test_env.rb: add tests for ENV.
45526 Fri Nov 28 17:47:46 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
45528         * lib/drb/drb.rb (DRbMessage#load): rescue Errno::* and raise
45529           DRbConnError.
45531 Fri Nov 28 15:41:15 2003  Tanaka Akira  <akr@m17n.org>
45533         * lib/pathname.rb (Pathname#realpath): obsolete the force_absolute
45534           argument.
45536 Fri Nov 28 14:41:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45538         * lib/soap/streamHandler.rb: drop unused http parameters.
45540         * lib/soap/encodingstyle/soapHandler.rb, lib/soap/mapping/factory.rb,
45541           lib/soap/mapping/mapping.rb, lib/soap/mapping/registry.rb,
45542           lib/wsdl/soap/complexType.rb: ApacheSOAP's map support was broken
45543           under WSDL dynanic client environment.  fixed.
45545         * test/wsdl/raa/*: add tests.
45547         * lib/xsd/datatypes.rb: dateTime precision bug fix (at least, I hope.)
45548           bug of soap4r.  XSDDateTimeImple.to_time passed a Float to
45549           Time.local/Time.gm as an usec, and NUM2LONG(rb_num2long for Float)
45550           causes rounding error.
45552         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: add tests.
45554 Fri Nov 28 04:15:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45556         * eval.c (method_arity): used wrong Proc object.  [ruby-talk:86504]
45558 Fri Nov 28 00:47:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45560         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): treat true as
45561           success, false as failure.  [ruby-dev:22067]
45563         * eval.c (rb_f_abort, rb_thread_switch), process.c (rb_f_system): use
45564           ANSI macro instead of hard coded value.
45566         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): use VALUEs not but
45567           TYPEs.
45569 Thu Nov 27 22:05:48 2003  Akinori MUSHA  <knu@iDaemons.org>
45571         * eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
45572           process to get the base address for the RSE backing store, so
45573           hardcode it for the moment.
45574           [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>]
45576 Thu Nov 27 17:36:42 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45578         * ext/tk/lib/tkafter.rb: bug fix on TkTimer#cancel_on_exception=(mode).
45579           TkTimer#wait recieves the exception of the callback.
45580           The exception is kept on @return_value.
45582 Thu Nov 27 16:58:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45584         * win32/win32.c (rb_w32_stat): remove _fullpath() for NUL: device.
45586 Wed Nov 26 15:38:47 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45588         * test/fileutils/test_fileutils.rb (test_ln_s): should take the
45589           existing symbolic link for OpenBSD.
45591 Wed Nov 26 04:48:42 2003  why the lucky stiff  <why@ruby-lang.org>
45593         * ext/syck/token.c: removed YYTOKTMP references which
45594           were causing buffer overflows on large block scalars,
45595           comments, quoted scalars and plain scalars.
45597         * ext/syck/rubyext.c: dynamic changing of buffer size.
45599         * ext/syck/syck.h: default buffer size of 4k.
45601 Wed Nov 26 00:55:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45603         * lib/webrick/httpresponse.rb: add HTTPResponse#keep_alive=.
45605         * lib/webrick/httpserver.rb (HTTPServer#run): should pass the
45606           request's keep_alive flag to the response.
45608 Tue Nov 25 21:41:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45610         * defines.h (ENV_IGNORECASE): should define when DOSISH without
45611           human68k. [ruby-dev:22047]
45613         * hash.c (env_has_value, env_index): don't ignore case of value.
45614           [ruby-dev:22048]
45616 Tue Nov 25 21:39:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45618         * file.c (path_check_1): honor sticky bits always.
45619           [ruby-talk:86273]
45621 Tue Nov 25 20:02:14 2003  Minero Aoki  <aamine@loveruby.net>
45623         * test/fileutils/test_fileutils.rb: do test in more deep
45624           directory.
45626         * test/fileutils/test_nowrite.rb: ditto.
45628 Tue Nov 25 19:04:23 2003  Tanaka Akira  <akr@m17n.org>
45630         * lib/open-uri.rb (URI::Generic#find_proxy): ENV case sensitivity test
45631           refined.
45633 Tue Nov 25 18:13:30 2003  Minero Aoki  <aamine@loveruby.net>
45635         * test/fileutils/test_fileutils.rb: chdir Dir.tmpdir before each
45636           test. [ruby-dev:22045]
45638         * test/fileutils/test_nowrite.rb: ditto.
45640 Tue Nov 25 17:52:11 2003  Tanaka Akira  <akr@m17n.org>
45642         * lib/open-uri.rb (URI::Generic#find_proxy): use http_proxy under CGI
45643           if the environment variable is case sensitive.
45645 Tue Nov 25 16:41:33 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45647         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb:
45648           removed.  this test requires extra libraries in soap4r/1.5.*.
45650 Tue Nov 25 16:24:42 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45652         * lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license;
45653           GPL2 -> Ruby's.
45655         * lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb,
45656           lib/soap/streamHandler.rb: add interface to streamhandler.
45658         * lib/soap/marshal.rb: raise error if parse fails.
45660         * lib/soap/netHttpClient.rb: add https support.  Patched by
45661           Oliver M. Bolzer.
45663         * lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
45665         * lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb,
45666           lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce
45667           using charset for parsing response from buggy server.
45669         * lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half
45670           typed multi-ref array.
45672         * lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map
45673           SOAPStruct which has multi-accessors which name are the same, to an
45674           array.
45676         * lib/soap/rpc/element.rb: fixed illegal parameter order.
45678         * lib/soap/rpc/element.rb: element name of response message could have
45679           the name other than 'return'.
45681         * lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb,
45682           lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb,
45683           lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural
45684           fault definition in a operation. [ruby-talk:84948]
45686         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add
45687           test for above fix.
45689         * lib/wsdl/soap/complexType.rb: support WSDL array definition with
45690           maxOccures="unbound".
45692         * lib/xsd/charset.rb: use cp932 under emx.  Patched by
45693           Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
45695         * lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means
45696           'follow encoding declaration in XML'.
45698         * sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb,
45699           sample/wsdl/googleSearch/sampleClient.rb,
45700           sample/wsdl/googleSearch/wsdlDriver.rb,
45701           test/wsdl/test_emptycomplextype.rb,
45702           test/wsdl/marshal/test_wsdlmarshal.rb,
45703           test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read }
45704           instead of File.open(...).read. [ruby-dev:21964]
45706         * test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb:
45707           simplify the test case.
45709         * test/wsdl/axisArray/*: add tests for axis's array encoding.
45711 Tue Nov 25 16:15:29 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45713         * ruby.h: don't treat Cygwin as Windows.
45715 Tue Nov 25 15:18:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45717         * configure.in: change default value of --enable-pthread (default: no)
45719 Tue Nov 25 07:31:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45721         * parse.y (primary): allow newlines just before right argument
45722           parenthesis.  (ruby-bugs:PR#1221)
45724 Mon Nov 24 23:32:06 2003  Tanaka Akira  <akr@m17n.org>
45726         * lib/open-uri.rb (OpenURI.open_loop, URI::HTTP#proxy_open): use
45727           catch/throw for redirection instead of exception.
45728           (OpenURI.open_loop, OpenURI.redirectable?): restrict redirection.
45730 Mon Nov 24 19:59:48 2003  Tanaka Akira  <akr@m17n.org>
45732         * lib/open-uri.rb (URI::Generic#find_proxy): use CGI_HTTP_PROXY
45733           instead of HTTP_PROXY in the CGI environment.
45735 Mon Nov 24 19:32:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45737         * ext/etc/extconf.rb: check for pw_passwd in struct passwd and
45738           gr_passwd in struct group for DJGPP.
45740         * ext/etc/etc.c: ditto.
45742         * ext/Setup.dj: support for curses, etc, zlib.
45744 Mon Nov 24 17:00:00 2003  Tanaka Akira  <akr@m17n.org>
45746         * lib/open-uri.rb: validate option names.
45747           :content_length_proc and :progress_proc option implemented.
45749 Mon Nov 24 14:53:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45751         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
45752           (XCFLAGS): output empty value instead of `-DRUBY_EXPORT'.
45754 Sat Nov 22 23:09:45 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45756         * configure.in: set enable_pthread to no on MinGW.
45758 Sat Nov 22 22:56:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45760         * configure.in: add --enable-pthread option (default: yes)
45762 Sat Nov 22 22:48:46 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45764         * ext/tk/lib/tk.rb: add Tk.grab_release and fix bug of TkComposite
45766         * ext/tk/lib/tkafter.rb: bug fix of TkAfter#start
45768         * ext/tk/sample/tkcombobox.rb: new sample script
45770         * ext/tcltklib/tcltklib.c: add native thread check
45772 Sat Nov 22 18:49:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45774         * ext/curses/curses.c (window_nodelay): nodelay() of NetBSD's
45775           libcruses returns no value, just like keypad().
45777 Sat Nov 22 17:36:36 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45779         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
45780           (HAVE_GETCWD): output to config.h.
45782         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
45783           (XCFLAGS): output to config.status.
45785 Sat Nov 22 13:10:10 2003  Minero Aoki  <aamine@loveruby.net>
45787         * lib/fileutils.rb (have_st_ino?): djgpp has valid st_ino.
45789 Sat Nov 22 11:28:48 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45791         * gc.c (Init_stack): stack region is far smaller than usual if
45792           pthread is used.
45794 Sat Nov 22 07:30:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
45796         * lib/test/unit/util/backtracefilter.rb: fixed a bug that occurred
45797           when an exception had no backtrace.
45799         * test/testunit/util/test_backtracefilter.rb: ditto.
45801 Fri Nov 21 16:44:18 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45803         * ext/tk/lib/tkentry.rb: fix the encoding trouble of percent
45804           substitutions on validatecommand option of TkEntry widget
45806         * ext/tk/lib/tk.rb: fix bug on {pack|grid}_propagate() method
45808 Fri Nov 21 16:12:11 2003  Akinori MUSHA  <knu@iDaemons.org>
45810         * ruby.1: Fix markups and grammar.
45812 Fri Nov 21 14:49:42 2003  Minero Aoki  <aamine@loveruby.net>
45814         * ruby.1: wrote about ruby related environment variables.
45816 Fri Nov 21 12:28:03 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45818         * marshal.c (w_extended): singleton methods should not be checked
45819           when dumping via marshal_dump() or _dump(). [ruby-talk:85909]
45821 Fri Nov 21 01:40:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45823         * configure.in: check <pthread.h>
45825         * ruby.h: include pthread.h if existence.
45826           define is_ruby_native() macro when not HAVE_NATIVETHREAD
45828         * eval.c: undef is_ruby_native() function when not HAVE_NATIVETHREAD
45830 Fri Nov 21 00:43:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
45832         * lib/test/unit/assertions.rb: use #__send__ instead of #send.
45834         * lib/test/unit/testcase.rb: ditto.
45836 Thu Nov 20 19:19:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45838         * configure.in: don't find the Cygwin's pthread library on MinGW.
45840 Thu Nov 20 19:15:50 2003  Minero Aoki  <aamine@loveruby.net>
45842         * lib/fileutils.rb (have_st_ino?): emx (OS/2 with EMX) does not
45843           have st_ino (always 0). [ruby-dev:21972]
45845         * lib/fileutils.rb (rename_cannot_overwrite_file?): emx does not
45846           allow overwriting files by rename(2).
45848         * test/fileutils/test_fileutils.rb: windows? ->
45849           have_drive_letter?, have_file_perm?
45851 Thu Nov 20 17:50:58 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45853         * ext/tk/sample/tkballoonhelp.rb: new sample script
45855         * ext/tk/sample/tkmultilistbox.rb: ditto
45857         * ext/tk/sample/tktextframe.rb: ditto
45859 Thu Nov 20 13:37:34 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45861         * ruby.h: define is_ruby_native_thread() for no native thread
45862           environment
45864         * eval.c: ditto
45866 Thu Nov 20 12:42:47 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45868         * configure.in: always check existence of the pthread library
45870         * ruby.h: define macros for ruby's native thread check
45872         * eval.c: add ruby's native thread check
45874         * gc.c: ditto
45876 Wed Nov 19 14:45:18 2003  Minero Aoki  <aamine@loveruby.net>
45878         * lib/net/http.rb (to_ary): print more friendly warning message.
45880 Wed Nov 19 14:32:08 2003  Minero Aoki  <aamine@loveruby.net>
45882         * lib/fileutils.rb (fu_same?): add djgpp and wince.
45884         * lib/fileutils.rb (cannot_overwrite_file?): add wince.
45886 Wed Nov 19 11:04:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45888         * lib/fileutils.rb (cannot_overwrite_file?, have_st_ino?): bccwin32
45889           is same as mswin32.
45891 Wed Nov 19 07:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
45893         * lib/test/unit.rb: do not run tests if $! is set.
45895         * lib/test/unit/assertionfailederror.rb: extend StandardError instead
45896           Exception (irb catches the former but not the latter).
45898 Tue Nov 18 23:31:36 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45900         * missing/memmove.c (memmove): take void *, not char *.
45902         * missing.h (memmove): ditto.
45904         * missing.h (strchr, strrchr): return char *, not int.
45906 Tue Nov 18 22:20:10 2003  Minero Aoki  <aamine@loveruby.net>
45908         * lib/fileutils.rb (fu_same?): temporal fix for windows.
45910 Tue Nov 18 19:05:04 2003  Minero Aoki  <aamine@loveruby.net>
45912         * lib/fileutils.rb (fu_same?): check by inode instead of path
45913           name, to detect two hard links pointing to the same content.
45915         * test/fileutils.rb: did not create correctly looped symlinks.
45917 Tue Nov 18 18:23:05 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45919         * ext/stringio/stringio.c (strio_read): behave as IO at empty string.
45920           [ruby-dev:21939], [ruby-dev:21941]
45922         * ext/stringio/stringio.c (strio_getc, strio_getline): set EOF flag.
45924         * ext/stringio/stringio.c (strio_rewind, strio_seek, strio_ungetc):
45925           clear EOF flag.
45927         * test/stringio/test_stringio.rb: imported from [ruby-dev:21941].
45929 Tue Nov 18 14:06:35 2003  Minero Aoki  <aamine@loveruby.net>
45931         * lib/fileutils.rb (fu_each_src_dest): raise if src==dest.
45932           [ruby-talk:85344] [ruby-core:01699]
45934         * lib/fileutils.rb: use Object#is_a? instead of Class#=== to allow
45935           e.g. remote objects for receivers.
45937         * lib/fileutils.rb: FileTest -> File.
45939         * lib/fileutils.rb: put parentheses for arguments of File.xxxx?
45941         * test/fileutils/test_fileutils.rb (test_cp): test "cp a a".
45943         * test/fileutils/test_fileutils.rb (test_mv): test "mv a a".
45945         * test/fileutils/test_fileutils.rb (test_ln): test "ln a a".
45947         * test/fileutils/test_fileutils.rb (test_ln_s): test "ln_s a a".
45949         * test/fileutils/test_fileutils.rb (test_install): test "install a a".
45951         * test/fileutils/fileasserts.rb: new method assert_symlink.
45953         * test/fileutils/fileasserts.rb: assert_is_directory -> assert_directory.
45955 Mon Nov 17 19:38:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45957         * file.c (getcwdofdrv): avoid using getcwd() directly, use
45958           my_getcwd() instead.
45960         * merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
45961           <sunshine@sunshineco.com>.  [ruby-core:01596]
45963 Mon Nov 17 10:50:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45965         * lib/optparse.rb (OptionParser::Completion::complete): allow least
45966           common completion for three or more candidates.
45968 Mon Nov 17 09:41:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45970         * lib/test/unit/ui/tk/testrunner.rb,
45971           lib/test/unit/ui/gtk/testrunner.rb:
45972           run GUI main loop in sub thread.
45974         * lib/test/unit/ui/gtk2/testrunner.rb: imported from rough.
45976         * lib/test/unit/autorunner.rb (keyword_display): sort keywords.
45978 Sun Nov 16 18:10:57 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45980         * eval.c (rb_eval): iterator should return value from next inside
45981           begin/rescue/end.  (ruby-bugs:PR#1218)
45983 Sun Nov 16 13:26:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45985         * marshal.c (w_object): LINK check earlier than anything else,
45986           i.e. do not dump TYPE_IVAR for already dumped objects.
45987           (ruby-bugs:PR#1220)
45989         * eval.c (rb_eval): call "inherited" only when a new class is
45990           generated; not on reopening.
45992         * eval.c (eval): prepend error position in evaluating string to
45993           "mesg" attribute string only when it's available and is a
45994           string.
45996 Sun Nov 16 12:16:10 2003  Minero Aoki  <aamine@loveruby.net>
45998         * lib/net/protocol.rb: logging response body. [experimental]
45999           [ruby-list:38800]
46001 Sun Nov 16 10:49:38 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
46003         * lib/thread.rb (Thread.exclusive): wrap method definition in
46004           class Thread to enable rdoc to process.
46006 Sun Nov 16 09:45:23 2003  Minero Aoki  <aamine@loveruby.net>
46008         * lib/net/http.rb (set_debug_output): warn if method is called
46009           after #start.  [ruby-dev:38798]
46011 Sun Nov 16 04:41:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46013         * eval.c (eval): do not re-raise exception to avoid unnecessary
46014           exception copying, instead modify exception and internal
46015           information to adjust eval().
46017         * eval.c (backtrace): can return the current frame information
46018           only if lev < -1.
46020 Sat Nov 15 22:16:42 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46022         * /ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext):
46023           refine error message.
46025 Sat Nov 15 10:05:40 2003  Tanaka Akira  <akr@m17n.org>
46027         * lib/open-uri.rb (OpenURI.open_loop, OpenURI::HTTP#proxy_open):
46028           refactored to support options.
46029           (Buffer): maintain size by this class.
46031 Sat Nov 15 07:40:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46033         * eval.c (rb_method_node): new API to retrieve method body.
46035 Fri Nov 14 13:21:30 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46037         * ext/tcltklib/tcltklib.c: fix (en-bugged at 2003/11/07)
46039         * ext/tk/lib/tkdialog.rb: TkDialog.new accepts a parent widget
46040           argument [ruby-talk:85066]
46042 Thu Nov 13 20:53:35 2003  Tanaka Akira  <akr@m17n.org>
46044         * lib/open-uri.rb (Kernel[#.]open): hard coded URI schemes removed.
46045           [ruby-ext:02251]
46047 Thu Nov 13 19:17:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46049         * lib/test/unit/ui/tk/testrunner.rb: use grid and panedwindow
46050           (if available)
46052 Thu Nov 13 17:56:41 2003  Tanaka Akira  <akr@m17n.org>
46054         * lib/open-uri.rb (OpenURI.open_uri): use File::RDONLY.
46055           reported by Take_tk <ggb03124@nifty.ne.jp>.
46056           [ruby-ext:02245]
46058 Thu Nov 13 16:45:53 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46060         * ext/openssl/ossl_x509req.c (ossl_x509req_to_der): add function for
46061           X509::Request#to_der.
46063 Thu Nov 13 11:31:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46065         * lib/optparse.rb (OptionParser::Completion#complete): prior shorter
46066           name to containing longer name.
46068 Thu Nov 13 06:08:54 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46070         * ext/tk/lib/tk.rb: stop freezing some classes
46072         * ext/tk/lib/multi-tk.rb: ditto.
46074 Wed Nov 12 17:32:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46076         * lib/test/unit/assertions.rb (assert_throws, assert_nothing_thrown):
46077           uncaught throw in sub thread raises ThreadError.
46079         * lib/test/unit/ui/tk/testrunner.rb (setup_ui): "expand" is not
46080           necessary.
46082 Wed Nov 12 14:09:43 2003  Shugo Maeda  <shugo@ruby-lang.org>
46084         * test/monitor/test_monitor.rb: fix the timing problem by Queue.
46086 Wed Nov 12 12:59:44 2003  Shugo Maeda  <shugo@ruby-lang.org>
46088         * test/monitor/test_monitor.rb: added.
46090 Wed Nov 12 10:14:28 2003  Shugo Maeda  <shugo@ruby-lang.org>
46092         * lib/monitor.rb: refactored. Thanks, Gennady Bystritsky.
46094 Wed Nov 12 06:11:39 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46096         * ext/openssl/ossl.c (ossl_x509_sk2ary, ossl_x509crl_sk2ary):
46097           add functions to convert STACK into Array.
46099         * ext/openssl/ossl.h: add prototypes.
46101         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_set_certificates,
46102           ossl_pkcs7_get_certificates, ossl_pkcs7_get_crls,
46103           ossl_pkcs7_set_crls): add functions for PKCS7#certificates=
46104           PKCS7#certificates, PKCS7#crls= and PKCS7#crls.
46106 Wed Nov 12 00:47:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46108         * lib/test/unit/ui/testrunnermediator.rb: should require 'test/unit'.
46110 Tue Nov 11 23:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46112         * lib/test/unit/ui/gtk/testrunner.rb: added a rescue clause to handle
46113           the case when the requested font is not available.
46115 Tue Nov 11 22:44:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46117         * io.c (appendline): file may not end with newline.  a bug if
46118           READ_DATA_PENDING_PTR is defined. [ruby-talk:84925]
46120 Tue Nov 11 10:42:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46122         * ext/tk/lib/tk.rb: raise an exception when creating TkWindow
46123           object, because TkWindow class is an abstract class.
46125 Tue Nov 11 03:30:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46127         * lib/ext/openssl/ossl_conf.c (ossl_config_get_value): return nil
46128           if the specified value doesn't exist.
46130         * lib/ext/openssl/ossl_conf.c (ossl_config_get_section): return
46131           a empty hash if the specified section doesn't exist.
46133 Mon Nov 10 11:40:29 2003  Shugo Maeda  <shugo@ruby-lang.org>
46135         * lib/monitor.rb (wait): return true on signal/broadcastfalse and
46136           false on timeout. Thanks Gennady Bystritsky.
46138 Mon Nov 10 00:07:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46140         * parse.y (primary): primary_value may be 0 when syntax error.
46141           [ruby-talk:84893]
46143 Sun Nov  9 02:05:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46145         * lib/test/unit/assertions.rb: un-deprecated #assert_not_nil to
46146           maintain symmetry with #assert_nil. Also added better output for
46147           #assert_kind_of.
46149         * test/testunit/tc_assertions.rb: ditto.
46151 Sat Nov  8 18:50:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46153         * test/wsdl/raa/*: add new testcase for WSDL loading, parsing and
46154           reading.
46156         * test/soap/marshal/*: backport from soap4r/1.5.1.  all differences are
46157           for ruby/1.6.
46159         * lib/soap/*: backport from soap4r/1.5.1.  all differences are for
46160           ruby/1.6.
46162         * lib/wsdl/data.rb, lib/wsdl/xmlSchema/data.rb: move definition of
46163           ArrayTypeAttrName from ::WSDL::XMLSchema::* to ::WSDL::*.
46164           [ruby-talk:84813]
46166         * lib/wsdl/soap/definitions.rb: element name typo in custom exception
46167           struct definition which is needed for wsdlDriver; camelCase ->
46168           underscore_name.
46170 Sat Nov  8 13:49:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46172         * configure.in: improvement of pthread check
46174 Sat Nov  8 13:28:46 2003  Takaaki Tateishi  <ttate@ttsky.net>
46176         * ext/dl/sym.c: Add DL.win32_last_error and DL.last_error.
46177           Thanks, Kaoru Shirai.
46179 Sat Nov  8 06:19:38 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46181         * ext/tcltklib/tcltklib.c: To fix 'pthread-enabled Tcl/Tk' problem,
46182           TclTkIp#_eval calls Tcl_Eval() on the mainloop thread only
46183           (queueing a handler to the EventQueue).
46185         * ext/tcltklib/README.1st: edit the description of '--with-pthread-ext'
46187 Fri Nov  7 23:23:04 2003  Tanaka Akira  <akr@m17n.org>
46189         * lib/pathname.rb (Pathname#+): if self or the argument is `.', return
46190           another.
46191           (Pathname#parent): if self is `.', return `..'.
46192           (Pathname#children): if self is `.', don't prepend self for a
46193           pathname in a result.
46194           (Pathname#join): re-implemented using Pathname#+.
46195           (Pathname#find): if self is `.', remove `./' prefix of yielding
46196           pathname.
46198 Fri Nov  7 10:23:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46200         * ext/socket/socket.c (make_hostent): get rid of SEGV on aliases
46201           lookup failure.  (ruby-bugs:PR#1215)
46203 Fri Nov  7 04:08:05 2003  UENO Katsuhiro  <katsu@blue.sky.or.jp>
46205         * ext/zlib/zlib.c (Init_zlib): define Zlib::GzipReader#each_line as
46206           an alias of Zlib::GzipReader#each.
46208 Fri Nov  7 01:03:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46210         * eval.c (rb_load): save and restore rb_prohibit_interrupt.
46211           [ruby-dev:21857]
46213 Thu Nov  6 18:05:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46215         * io.c (rb_io_inspect): show the path also at a closed file.
46216           [ruby-dev:21851]
46218 Thu Nov  6 11:42:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46220         * ext/stringio/stringio.c (strio_set_string, strio_reopen): check
46221           tainted.
46223         * ext/stringio/stringio.c (strio_copy, strio_ungetc, strio_write,
46224           strio_putc): add infection.
46226         * ext/stringio/stringio.c (strio_path): just nil.  [ruby-dev:21846]
46228         * ruby.c (proc_options): reserve searched script path in the
46229           source file name table.  [ruby-list:38765]
46231         * lib/optparse.rb (OptionParser::Completion#complete): default not to
46232           ignore case on completion.  [ruby-talk:84726]
46234         * win32/win32.c (make_cmdvector): process backslashes even if a quote
46235           is not enclosed.
46237 Wed Nov  5 23:49:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46239         * sample/openssl/gen_csr.rb: there (at least) is a CA which does not
46240           accept DN in UTF8STRING format.  it's a sample.
46242 Wed Nov  5 22:55:16 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46244         * configure.in, eval.c, signal.c: : add '--with-pthread-ext'
46245           option to fix the pthread trouble on 'tcltklib'
46247         * ext/tcltklib/README.1st: add the description of '--with-pthread-ext'
46249         * ext/tk/lib/tktext.rb: add TkText#text_copy, text_cut, text_paste
46250           to support Tcl/Tk8.4's tk_textCopy, tk_textCut, tk_textPaste
46252         * ext/tk/lib/tk.rb: add TkMenu#set_focus support Tcl/Tk's
46253           tk_menuSetFocus
46255 Wed Nov  5 17:33:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46257         * eval.c (rb_load): allow interrupt during loaded program
46258           evaluation.  [ruby-dev:21834]
46260         * hash.c (rb_hash_fetch): always warn if default argument and a
46261           block are supplied at the same time. [ruby-dev:21842]
46263         * hash.c (env_fetch): ditto.
46265         * array.c (rb_ary_fetch): ditto.
46267 Wed Nov  5 19:08:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46269         * lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
46270           do not remove next argument if empty value is placed.
46272         * test/optparse: added.
46274 Wed Nov  5 17:05:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46276         * lib/test/unit/ui/gtk/testrunner.rb: typo.
46278 Wed Nov  5 11:13:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46280         * string.c: add #include "version.h". this file still depends on it.
46282         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
46283           wince/Makefile.sub: add version.h dependency to string.c.
46285 Wed Nov  5 09:14:23 2003  Shugo Maeda  <shugo@ruby-lang.org>
46287         * lib/monitor.rb: revert to the previous revision.
46289 Wed Nov  5 08:39:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46291         * lib/webrick/https.rb (HTTPRequest#parse): set @client_cert_chain.
46293         * lib/webrick/https.rb (HTTPRequest#meta_vars): create
46294           SSL_CLIENT_CERT_CHAIN_n from @client_cert_chain.
46296         * ext/openssl/ossl_ssl.c (ossl_ssl_get_peer_cert_chain): return nil
46297           if no cert-chain was given.
46299 Tue Nov  4 23:44:48 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46301         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
46302           remove needless version.h dependency.
46304 Tue Nov  4 23:38:43 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46306         * class.c, hash.c, string.c: remove #include "version.h".
46308         * Makefile.in: remove needless version.h dependency.
46310 Tue Nov  4 06:54:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46312         * io.c (read_all): fptr->f may be NULL, if IO is closed in the
46313           signal handler.
46315         * io.c (io_read): ditto.
46317         * string.c (get_pat): remove 1.8.0 warning code.
46319         * string.c (rb_str_match): extend warning until 1.8.2.
46321         * string.c (rb_str_match2): ditto.
46323         * class.c (class_instance_method_list): remove 1.8.0 warnings.
46324           method_list now recurs.  [ruby-dev:21816]
46326         * class.c (rb_obj_singleton_methods): ditto.
46328         * array.c (rb_ary_select): remove select with block.
46329           [ruby-dev:21824]
46331         * hash.c (rb_hash_select): ditto.
46333         * hash.c (env_select): ditto.
46335         * re.c (match_select): ditto.
46337         * struct.c (rb_struct_select): ditto.
46339 Mon Nov  3 22:53:21 2003  Minero Aoki  <aamine@loveruby.net>
46341         * lib/racc/parser.rb: synchronize with Racc 1.4.4.
46343         * ext/racc/cparse/cparse.c: ditto.
46345         * ext/racc/cparse/cparse.c (parse_main): should abort when
46346           the length of LR state stack <=1, not ==0.
46348 Mon Nov  3 08:50:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46350         * process.c (check_uid_switch): remove duplicated error messages.
46352         * process.c (check_gid_switch): ditto.
46354 Sun Nov  2 02:28:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46356         * lib/webrick/ssl.rb: new option :SSLExtraChainCert.
46358 Sun Nov  2 01:02:04 2003  Akinori MUSHA  <knu@iDaemons.org>
46360         * string.c (rb_str_hash): Update the HASH_PERL alternative hash
46361           algorithm in sync with Perl 5.8.
46363         * st.c (strhash): Ditto.
46365 Sat Nov  1 18:21:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46367         * ext/openssl/ossl_ssl.c (ossl_ssl_peer_cert_chain): add new method
46368           SSLSocket#peer_cert_chain.
46370         * ext/openssl/ossl_x509req.c (GetX509ReqPtr): new function
46371           which returns underlying X509_REQ.
46373         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_issuer_cert,
46374           ossl_x509extfactory_set_subject_cert, ossl_x509extfactory_set_crl,
46375           ossl_x509extfactory_set_subject_req, ossl_x509extfactory_set_config):
46376           use underlying C struct without duplication not to leak momory.
46378 Sat Nov  1 01:49:03 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46380         * lib/soap/mapping/factory.rb: mark marshalled basetype objects when
46381           @allow_original_mapping is true.  multi-referencing basetype node is
46382           prohibited in SOAP/1.1 encoding but soap4r's original ruby object
46383           mapping requires basetype to be marked to detect self referencing
46384           loop.  e.g. o = 1; o.instance_eval { @iv = o }  soap4r's original
46385           mapping is only used through soap/marshal API.
46387         * test/soap/marshal/test_marshal.rb: add tests for self referencing
46388           immutable objects.
46390         * test/soap/calc/test_calc_cgi.rb: fix test name.
46392 Fri Oct 31 22:26:29 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
46394         * wince/string_wce.c (strrchr): should decrement pointer.
46396         * wince/Makefile.sub: correct a range of isdigit().
46398 Fri Oct 31 12:55:24 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46400         * configure.in, lib/mkmf.rb: add RPATHFLAG for NetBSD.
46401           [ruby-dev:21791]
46403         * bcc32/Makefile.sub, win32/Makefile.sub, win32/Makefile.sub: ditto.
46405 Fri Oct 31 01:38:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46407         * wince/Makefile.sub, win32/Makefile.sub (.y.c): allow white spaces
46408           at the beginning of line to remove by sed. (ruby-bugs-ja:PR#580)
46410 Fri Oct 31 01:02:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46412         * compar.c (cmp_equal): protect exceptions from <=> comparison
46413           again.  returns nil if any exception or error happened during
46414           comparison.
46416         * eval.c (search_required): should update *featurep when DLEXT2 is
46417           defined. (ruby-bugs-ja:PR#581)
46419 Thu Oct 30 23:41:04 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46421         * lib/drb/drb.rb: add DRbArray
46423         * lib/drb/invokemethod.rb: fix Hash#each problem. [ruby-dev:21773]
46425         * lib/drb/unix.rb: add LoadError. [ruby-dev:21743]
46427 Thu Oct 30 23:19:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46429         * lib/soap/generator.rb: better XML pretty printing.
46431         * lib/soap/encodingstyle/soapHandler.rb: remove unnecessary namespace
46432           assignment in the element which has "encodingStyle" attribute, and
46433           add necessary namespace assignment for "arrayType" attribute.
46435         * test/soap/calc/test_calc_cgi.rb: take over $DEBUG to ruby process
46436           through CGI.
46438 Thu Oct 30 22:59:39 2003  why the lucky stiff  <why@ruby-lang.org>
46440         * ext/syck/yaml2byte.c: HASH const too long.  Thanks, matz.
46442 Thu Oct 30 19:13:53 2003  Akinori MUSHA  <knu@iDaemons.org>
46444         * ext/syck/MANIFEST: Add yamlbyte.h.
46446 Thu Oct 30 14:25:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46448         * io.c (READ_DATA_BUFFERED): new macro to detect whether stdio
46449           buffer filled.
46451         * io.c (rb_io_fptr_cleanup): move path deallocation to
46452           rb_io_fptr_finalize (finalizer called by GC).
46454 Thu Oct 30 13:23:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46456         * parse.y (logop): left may be NULL. [ruby-talk:84539]
46458         * eval.c (rb_eval): NODE_CASE nd_head may be NULL.
46460 Thu Oct 30 10:14:51 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46462         * lib/test/unit/autorunner.rb: make fox runner work.
46464 Thu Oct 30 09:32:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46466         * process.c (rb_f_system): fixed lack of security check before
46467           calling do_spawn() on win32. [ruby-talk:84555]
46469 Thu Oct 30 02:46:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46471         * eval.c (proc_invoke): single array value to normal Proc#call
46472           (i.e. not via lambda call), should be treated just like yield.
46473           [ruby-dev:21726]
46475 Thu Oct 30 02:25:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46477         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
46478           add new method to inherit @sync from @io.sync.
46480         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): no need to
46481           set sync flag explicitly.
46483         * ext/openssl/ossl_ssl.c (ossl_sslctx_initialize): call super.
46485         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): set extra chain
46486           certificates in @extra_chain_cert.
46488 Wed Oct 29 22:02:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46490         * test/drb/drbtest.rb: use rbconfig.rb to make the path of ruby
46491           interpreter to exec, instead of test/ruby/envutil.rb,
46493 Wed Oct 29 19:58:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46495         * ext/tcltklib/tcltklib.c (CONST84): define CONST84 when it is not
46496           defined and TCL_MAJOR_VERSION >= 8.
46498         * ext/tcltklib/tcltklib.c (VwaitVarProc, WaitVariableProc,
46499           rb_threadVwaitProc): use CONST84 instead of CONST.
46501         * ext/tcltklib/tcltklib.c (ip_rbTkWaitCommand,
46502           ip_rb_threadTkWaitCommand): use CONST84 always.
46504 Wed Oct 29 17:27:05 2003  Tanaka Akira  <akr@m17n.org>
46506         * re.c (rb_reg_s_union, Init_Regexp): new method `Regexp.union'.
46508         * lib/pathname.rb (realpath): examine Dir.pwd because it may have
46509           symlinks.
46511 Wed Oct 29 17:16:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46513         * eval.c (rb_longjmp): must not disturb original jump.
46514           [ruby-dev:21733]
46516 Wed Oct 29 15:28:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46518         * eval.c (Init_Proc): taint preallocated exception object
46519           sysstack_error. [ruby-talk:84534]
46521 Wed Oct 29 11:27:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46523         * parse.y (ret_args): node may be NULL. [ruby-talk:84530]
46525 Tue Oct 28 15:20:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46527         * ext/tcltklib/tcltklib.c (VwaitVarProc, ip_rbVwaitObjCmd,
46528           WaitVariableProc, WaitVisibilityProc, WaitWindowProc,
46529           ip_rbTkWaitObjCmd, ip_rbTkWaitCommand, rb_threadVwaitProc,
46530           rb_threadWaitVisibilityProc, rb_threadWaitWindowProc,
46531           ip_rb_threadVwaitObjCmd, ip_rb_threadTkWaitObjCmd): prototype;
46532           avoid VC++ warnings.
46534 Mon Oct 27 19:19:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46536         * eval.c (rb_longjmp): ignore reentering error while warning.
46537           [ruby-dev:21730]
46539 Mon Oct 27 00:23:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46541         * ext/tcltklib/tcltklib.c (ip_ruby): bug fix on Win : hang-up when
46542           calling 'exit' in the Tk callback procedure. [ruby-list:38656]
46544 Sat Oct 25 09:18:04 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46546         * eval.c (rb_method_missing): protect exception from within
46547           "inspect".  (ruby-bugs:PR#1204)
46549 Fri Oct 24 23:26:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46551         * hash.c (rb_hash_each): Hash#each should yield single value.
46552           [ruby-talk:84420]
46554         * hash.c (env_each): ditto for ENV.each.
46556 Thu Oct 23 20:25:32 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46558         * lib/webrick/server.rb (GenericServer#start): should rescue
46559           IOError from IO::accept. [ruby-dev:21692]
46561 Thu Oct 23 17:59:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46563         * eval.c (ruby_cleanup): initialize stack bottom for embedding.
46564           [ruby-dev:21686]
46566         * ext/dl/extconf.rb: move list of files to clean from DEPEND file,
46567           to get rid of macro redefinitions.
46569 Thu Oct 23 13:44:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46571         * parse.y: integrate operations for stack_type.  [ruby-dev:21681]
46573 Thu Oct 23 00:41:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46575         * test/soap/calc/*, test/soap/helloworld/*: set logging threshold
46576           to ERROR.
46578 Wed Oct 22 12:53:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46580         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
46581           ignore tests which raised LoadError.
46583         * test/drb/drbtest.rb, test/ruby/test_beginendblock.rb,
46584           test/ruby/test_system.rb: avoid requiring same file twice.
46586         * test/drb/test_drbssl.rb, test/drb/test_drbunix.rb: should not use
46587           ARGV unless invoked directly.  do not create test cases unless
46588           required libraries are available.
46590 Wed Oct 22 02:31:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46592         * eval.c (ruby_cleanup): should not ignore exit_value in END
46593           execution. [ruby-dev:21670]
46595 Tue Oct 21 23:16:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46597         * eval.c (ruby_cleanup): call finalizers and exit procs before
46598           terminating threads.
46600         * eval.c (ruby_cleanup): preserve ruby_errinfo before ruby_finalize_0().
46602 Tue Oct 21 15:57:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46604         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
46605           prepend the directory of target file to the load path.
46607 Tue Oct 21 15:08:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46609         * win32/win32.c (do_spawn, do_aspawn): should wait child process even
46610           if callded with P_OVERLAY.
46612         * win32/win32.c (do_spawn, do_aspawn): should return child's exit
46613           status to parent.
46615 Tue Oct 21 00:35:02 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46617         * test/soap/calc/*, test/soap/helloworld/*: catch the exception from
46618           test server thread and recover.
46620 Tue Oct 21 00:22:57 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46622         * test/drb/*: import drb/runit.
46624 Mon Oct 20 23:55:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46626         * eval.c (rb_eval): set current node after arguments evaluation.
46627           [ruby-dev:21632]
46629         * eval.c (rb_yield_0): set current node and keep it at local jump.
46631 Mon Oct 20 22:01:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46633         * eval.c (rb_thread_cleanup): keep thread group for main thread.
46634           [ruby-dev:21644]
46636 Mon Oct 20 18:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46638         * eval.c (rb_catch): backout.
46640 Mon Oct 20 17:31:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46642         * eval.c (PUSH_FRAME): generate unique number to be TAG_JUMP()
46643           destination.
46645         * eval.c (localjump_destination): use unique number in ruby_frame
46646           for localjump destination.
46648 Mon Oct 20 11:31:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46650         * test/ruby/test_signal.rb (test_signal): restore old trap.
46652 Mon Oct 20 11:00:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46654         * gc.c (gc_sweep): loosen page free condition to avoid add_heap()
46655           race condition. [ruby-dev:21633]
46657         * gc.c (gc_sweep): do not update malloc_limit when malloc_increase
46658           is smaller than malloc_limit.
46660 Mon Oct 20 09:45:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46662         * lib/debug.rb (debug_command): remove debug print.
46664 Sun Oct 19 13:12:30 2003  Tanaka Akira  <akr@m17n.org>
46666         * lib/pathname.rb (foreachline, dir_foreach): add obsolete warning.
46668 Sun Oct 19 00:14:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46670         * test/soap/calc/*, test/soap/helloworkd/*: changed port# of test
46671           server. (17171)
46673 Sat Oct 18 23:01:32 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46675         * missing/acosh.c (DBL_MANT_DIG): typo fix(ifdef -> ifndef).
46677 Sat Oct 18 05:48:59 2003  why the lucky stiff  <why@ruby-lang.org>
46679         * ext/syck/rubyext.c: YAML::Syck::compile method.
46681         * ext/syck/syck.c: Buffer edge bug.
46683         * ext/syck/yaml2byte.c: YAML to bytecode converter.
46685         * ext/syck/yamlbyte.h: Ditto.
46687         * ext/syck/bytecode.c: Bytecode parser fixes to empty collections
46688           and empty strings.
46690         * ext/syck/token.c: Ditto.
46692 Fri Oct 17 23:07:38 2003  Akinori MUSHA  <knu@iDaemons.org>
46694         * ext/enumerator/enumerator.c, ext/enumerator/enumerator.txt:
46695           Provide Kernel#to_enum as an alias for Kernel#enum_for.  Maybe
46696           this is a better name.
46698 Fri Oct 17 23:00:30 2003  Akinori MUSHA  <knu@iDaemons.org>
46700         * lib/generator.rb: Add rdoc documentation.
46702 Fri Oct 17 22:16:42 2003  Akinori MUSHA  <knu@iDaemons.org>
46704         * lib/set.rb: Reword and fix Overview.
46706         * lib/set.rb: It is not necessary to require
46707           'test/unit/ui/console/testrunner'.
46709 Fri Oct 17 11:15:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46711         * test/ruby/test_range.rb: added.
46713         * MANIFEST: add test/ruby/test_range.rb.
46715 Fri Oct 17 03:21:23 2003  William Sobel  <will.sobel@barra.com>
46717         * ext/socket/socket.c (make_hostent): h_aliases may be NULL.
46718           (ruby-bugs:PR#1195)
46720         * ext/socket/socket.c (sock_s_gethostbyaddr): ditto.
46722 Fri Oct 17 00:12:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46724         * ext/tk/lib/tk.rb: (bug fix) instance variable @frame was used
46725           without initializing on TkComposite module.
46727 Thu Oct 16 23:51:04 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46729         * ext/tk/lib/tk.rb: If $DEBUG == true and some exception is caused
46730           in a callback operation, Ruby/Tk shows a (verbose) backtrace
46731           information on the callback process.
46733 Thu Oct 16 17:09:19 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46735         * lib/debug.rb (DEBUGGER__::Context::debug_command): do not call
46736           debug_silent_eval() when $1 is not set. (ruby-bugs:PR#1194)
46738 Thu Oct 16 16:54:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46740         * string.c (rb_str_upto): ("a"..."a").to_a should return [].
46741           [ruby-core:01634]
46743 Thu Oct 16 16:40:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46745         * ext/tk/lib/tk.rb:
46746           Add Tk::EncodedString and Tk::UTF8_String class to support
46747           characters using the \uXXXX escape to the UNICODE string.
46749         * ext/tk/sample/{demos-en,demos-jp}/unicodeout.rb
46750           new demo-scripts (samples of Tk::UTF8_String)
46752         * ext/tk/sample/{demos-en,demos-jp}/widget
46753           add entries for 'unicodeout.rb'
46755 Thu Oct 16 08:38:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46757         * test/digest/test_digest.rb (test_eq): show failed class.
46759         * test/ruby/test_iterator.rb (test_break, test_return_trace_func):
46760           test localjump destination.
46762 Wed Oct 15 20:22:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46764         * lib/soap/netHttpClient.rb: use URI::HTTP#request_uri instead of
46765           instance_eval('path_query').  [ruby-list:38575]
46767 Wed Oct 15 17:24:45 2003  URABE Shyouhei  <root@mput.dip.jp>
46769         * lib/cgi.rb (CGI::Cookie): tiny typo fix.
46771 Wed Oct 15 15:00:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46773         * eval.c (ruby_run): just return FAILURE instead of parse error
46774           count.  [ruby-list:38569]
46776 Wed Oct 15 13:17:02 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46778         * ext/digest/digest.c (rb_digest_base_alloc): need to initialize
46779           buffer. [ruby-dev:21622]
46781 Wed Oct 15 11:23:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46783         * marshal.c (w_object): dump extended modules as well.
46785         * marshal.c (r_object0): TYPE_USRMARSHAL should restore extended
46786           modules before invoking marshal_load.  these two fixes are done
46787           by Masatoshi Seki <m_seki@mva.biglobe.ne.jp>.
46789 Wed Oct 15 09:30:34 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46791         * ext/enumerator/enumerator.c (enumerator_each): avoid VC++ warning.
46793         * ext/syck/syck.h: include stdio.h for definition of FILE.
46795 Wed Oct 15 08:09:07 2003  why the lucky stiff  <why@ruby-lang.org>
46797         * ext/syck/bytecode.c: Checkin of YAML bytecode support.
46799         * ext/syck/gram.c: Ditto.
46801         * ext/syck/syck.c: Ditto.
46803         * ext/syck/token.c: Ditto.
46805         * ext/syck/handler.c: Ditto.
46807         * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
46809         * ext/syck/rubyext.c: Ditto (on both counts).
46811 Wed Oct 15 05:05:53 2003  Akinori MUSHA  <knu@iDaemons.org>
46813         * lib/generator.rb: A new library which converts an internal
46814           iterator to an external iterator.
46816         * lib/abbrev.rb: A new library which creates an abbreviation table
46817           from a list.
46819 Wed Oct 15 04:31:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46821         * ext/tk/sample/demos-en/entry3.rb, ext/tk/sample/demos-jp/entry3.rb:
46822           new demo-scripts
46824         * ext/tk/sample/demos-en/widget, ext/tk/sample/demos-jp/widget:
46825           add entries for 'entry3.rb'
46827 Wed Oct 15 04:31:47 2003  Akinori MUSHA  <knu@iDaemons.org>
46829         * test/digest/test_digest.rb: Moved from ext/digest/test.rb.
46831 Wed Oct 15 03:53:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46833         * ext/tk/lib/tk.rb: fixed trouble on auto-load Tcl commands (enbug
46834           on the last commit).
46836 Wed Oct 15 00:25:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46838         * parse.y (yylex): argument parentheses preceded by spaces should
46839           be warned; not error.  [ruby-talk:84103]
46841 Wed Oct 15 00:20:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46843         * ext/tcltklib/tcltklib.c: replace Tcl/Tk's vwait and tkwait to
46844           switch on threads smoothly and avoid seg-fault.
46846         * ext/tcltklib/tcltklib.c: add TclTkIp._thread_vwait and
46847           _thread_tkwait for waiting on a thread. (Because Tcl/Tk's vwait
46848           and tkwait command wait on an eventloop.)
46850         * ext/tk/lib/multi-tk.rb: support TclTkIp._thread_vwait and
46851           _thread_tkwait.
46853         * ext/tk/lib/tk.rb: now, TkVariable#wait has 2 arguments.
46854           If 1st argument is true, waits on a thread. If false, waits on
46855           an eventloop. If 2nd argument is true, checks existence of
46856           rootwidgets. If false, doesn't. Default is wait(true, false).
46858         * ext/tk/lib/tk.rb: add TkVariable#tkwait(arg) which is equal to
46859           TkVariable#wait(arg, true). wait_visibility and wait_destroy
46860           have an argument for waiting on a thread or an eventloop.
46862         * ext/tk/lib/tk.rb: improve of accessing Tcl/Tk's special variables.
46864         * ext/tk/lib/tkafter.rb: support 'wait on a thread' and 'wait on
46865           an eventloop'.
46867 Wed Oct 15 00:10:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46869         * lib/soap/baseData.rb: Introduce SOAPType as the common ancestor of
46870           SOAPBasetype and SOAPCompoundtype.
46872         * lib/soap/generator.rb, lib/soap/element.rb, lib/soap/encodingstyle/*:
46873           Encoding methods signature change.  Pass SOAPGenerator as a parameter.
46875         * lib/soap/mapping/*, test/soap/marshal/test_marshal.rb: Refactoring
46876           for better marshalling/unmarshalling support.  Now I think SOAP
46877           marshaller supports all kind of object graph which is supported by
46878           Ruby's original marshaller.  Of course there could be bugs as always.
46879           Find it.  :-)
46881         * lib/soap/rpc/standaloneServer.rb: Set severity threshould to INFO.
46882           DEBUG is too noisy.
46884         * lib/xsd/datatypes.rb: DateTime#of is obsoleted.  Use DateTime#offset.
46886         * test/wsdl/emptycomplextype.wsdl, test/xsd/xmlschema.xml: Avoid
46887           useless warning.
46889 Tue Oct 14 19:09:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46891         * eval.c (ruby_finalize_0): return the given exit status unless
46892           SystemExit got raised.
46894 Tue Oct 14 11:53:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46896         * intern.h (ruby_stop): never return.
46898         * ruby.h (ruby_run): ditto.
46900 Tue Oct 14 04:43:55 2003  Tanaka Akira  <akr@m17n.org>
46902         * lib/pathname.rb (realpath): make ELOOP check bit more robust.
46903           (children): prepend self by default.
46904           (chroot): obsoleted.
46906 Tue Oct 14 02:29:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46908         * eval.c (rb_require_safe): segfault after loading .so.
46910 Tue Oct 14 02:05:23 2003  Akinori MUSHA  <knu@iDaemons.org>
46912         * ext/Setup*, ext/enumerator/*: Add ext/enumerator, a helper
46913           module for the Enumerable interface.
46915 Mon Oct 13 23:55:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46917         * test/ruby/envutil.rb: use Config::CONFIG["ruby_install_name"],
46918           not "ruby".
46920 Mon Oct 13 23:57:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46922         * eval.c (rb_feature_p): match by classified suffix.
46924         * eval.c (rb_require_safe): require library in the specified safe
46925           level.
46927         * variable.c (rb_autoload, rb_autoload_load): restore safe level
46928           when autoload was called.  [ruby-dev:21338]
46930         * intern.h: prototypes; rb_require_safe.
46932         * test/runner.rb: accept non-option arguments.
46934 Mon Oct 13 20:49:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46936         * string.c (str_new4): should not preserve FL_TAINT status in the
46937           internal shared string. [ruby-dev:21601]
46939         * string.c (rb_str_new4): ditto.
46941         * eval.c: use EXIT_SUCCESS and EXIT_FAILURE for exit values.
46943         * process.c: ditto. [ruby-list:38521]
46945 Mon Oct 13 19:51:02 2003  Koji Arai  <jca02266@nifty.ne.jp>
46947         * lib/debug.rb (debug_command): should enter emacs mode when
46948           assigned any value to the environment variable "EMACS".
46949           On Meadow, (getenv "EMACS") is "meadow".
46951 Sun Oct 12 14:45:03 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46953         * ext/win32ole/extconf.rb: check "windows.h", not "windows".
46954           [ruby-talk:84051]
46956 Sat Oct 11 20:41:03 2003  Corinna Vinschen  <corinna@vinschen.de>
46958         * file.c (eaccess): Use access(2) on Cygwin.
46960 Sat Oct 11 17:09:21 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46962         * lib/rexml/quickpath.rb (REXML::QuickPath::match):
46963           escape '[' to avoid warning.
46965 Sat Oct 11 16:08:41 2003  Tanaka Akira  <akr@m17n.org>
46967         * lib/pathname.rb (realpath): check existence of the file.
46969         * lib/pathname.rb (realpath): re-implemented.
46970           (realpath_root?, realpath_rec): removed
46972 Sat Oct 11 10:19:39 2003  Shugo Maeda  <shugo@ruby-lang.org>
46974         * lib/monitor.rb: handle exceptions correctly. Thanks, Gennady
46975           Bystritsky.
46977 Fri Oct 10 07:50:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46979         * eval.c (is_defined): inheritance line adjustment as like as
46980           rb_call_super().
46982 Fri Oct 10 01:19:00 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46984         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): add
46985           optional argument to specify the DirectoryString type
46986           (ASN1::UTF8STRING by default). RFC3280 deprecates PrintableString
46987           for DirectoryString, and strongly requires to use UTF8String for
46988           all certificates issued after December, 31 2003.
46990         * ext/openssl/lib/openssl/x509.rb (X509::Name::parse): ditto.
46992 Thu Oct  9 23:50:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46994         * eval.c (rb_thread_start_0): prevent thread from GC.
46995           [ruby-dev:21572]
46997 Thu Oct  9 19:11:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46999         * eval.c (rb_thread_start_0): non-volatile should be restored from
47000           volatile.
47002 Thu Oct  9 17:43:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47004         * eval.c (proc_save_safe_level, proc_get_safe_level,
47005           proc_set_safe_level): save/restore safe level 1..4.
47007 Thu Oct  9 16:33:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47009         * marshal.c (r_object0): remove unnecessary iv restoration for
47010           USRMARSHAL. [ruby-dev:21582]
47012         * marshal.c (w_object): dump generic instance variables from
47013           a string from '_dump'.
47015         * variable.c (rb_generic_ivar_table): return 0 if obj's FL_EXIVAR
47016           is not set.
47018         * time.c (time_dump): copy instance variables to dumped string, to
47019           be included in the marshaled data.
47021         * bignum.c (rb_big2ulong): add range check to ensure round trip.
47023 Thu Oct  9 15:45:27 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47025         * pack.c (uv_to_utf8): change message to "out of range", since
47026           negative values are not "too big". [ruby-dev:21567]
47028 Thu Oct  9 14:05:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47030         * eval.c (rb_set_end_proc, rb_exec_end_proc): restore safe level.
47031           [ruby-dev:21557]
47033 Thu Oct  9 10:51:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47035         * eval.c (rb_yield_0): no error if block is empty.
47037 Thu Oct  9 06:43:33 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47039         * eval.c (localjump_error): id should be ID.
47041         * eval.c (rb_eval): nd_rval is set in copy_node_scope().
47043         * eval.c (rb_yield_0): unused variable.
47045         * eval.c (rb_yield_0): nothing to do for empty node.
47047         * eval.c (call_end_proc, proc_invoke): adjust backtrace in END.
47048           [ruby-dev:21551]
47050         * eval.c (rb_thread_start_0): set the value by break as the result.
47051           [ruby-dev:21552]
47053         * eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save
47054           variables across THREAD_SAVE_CONTEXT.
47056 Thu Oct  9 12:05:46 2003  Eric Sunshine  <sunshine@sunshineco.com>
47058         * configure.in: revived NextStep, OpenStep, and Rhapsody ports which
47059           had become unbuildable; enhanced --enable-fat-binary option so that
47060           it accepts a list of desired architectures (rather than assuming a
47061           fixed list), or defaults to a platform-appropriate list if user does
47062           not provide an explicit list; made the default list of architectures
47063           for MAB (fat binary) more comprehensive; now uses -fno-common even
47064           when building the interpreter (in addition to using it for
47065           extensions), thus allowing the interpreter to be embedded into a
47066           plugin module of an external project (in addition to allowing
47067           embedding directly into an application); added checks for
47068           <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
47069           ensures that -I/usr/local/include is employed when extensions'
47070           extconf.rb scripts invoke have_header() since extension checks on
47071           NextStep and OpenStep will fail without it if the desired resource
47072           resides in the /usr/local tree; fixed formatting of --help message.
47074         * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
47075           invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
47076           (see configure's --enable-fat-binary option); added rule for new
47077           missing/getcwd.c.
47079         * defines.h: fixed endian handling during MAB build (see configure's
47080           --enable-fat-binary option) to ensure that all portions of the
47081           project see the correct WORDS_BIGENDIAN value (some extension modules
47082           were getting the wrong endian setting); added missing constants
47083           GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
47084           and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
47085           define in NeXT section.
47087         * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
47088           NextStep since, on some installations, this value always resolves
47089           uselessly to zero.
47091         * dln.c: added error reporting to NextStep extension loader since the
47092           previous behavior of failing silently was not useful; now ensures
47093           that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
47094           for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
47095           on Rhapsody since this header lacks multiple-include protection,
47096           which resulted in "redefinition" compilation errors.
47098         * main.c: also create hard reference to objc_msgSend() on NeXT
47099           platforms (in addition to Apple platforms).
47101         * lib/mkmf.rb: now exports XCFLAGS from configure script to extension
47102           makefiles so that extensions can be built MAB (see configure's
47103           --enable-fat-binary option); also utilize XCFLAGS in cc_command()
47104           (but not cpp_command() because MAB flags are incompatible with
47105           direct invocation of `cpp').
47107         * ext/curses/extconf.rb: now additionally checks for presence of these
47108           curses functions which are not present on NextStep or Openstep:
47109           bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
47110           setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
47111           wscrl(), wsetscrreg()
47113         * ext/curses/curses.c: added appropriate #ifdef's for additional set of
47114           curses functions now checked by extconf.rb; fixed curses_bkgd() and
47115           window_bkgd() to correctly return boolean result rather than numeric
47116           result; fixed window_getbkgd() to correctly signal an error by
47117           returning nil rather than -1.
47119         * ext/etc/etc.c: setup_passwd() and setup_group() now check for null
47120           pointers before invoking rb_tainted_str_new2() upon fields extracted
47121           from `struct passwd' and `struct group' since null pointers in some
47122           fields are common on NextStep/OpenStep (especially so for the
47123           `pw_comment' field) and rb_tainted_str_new2() throws an exception
47124           when it receives a null pointer.
47126         * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
47127           platforms such as NextStep and OpenStep which lack strdup().
47129         * ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
47130           gethostbyaddr(), and gethostbyname() from (const char*) to non-const
47131           (char*) for older platforms such as NextStep and OpenStep.
47133         * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
47134           platforms such as NextStep and OpenStep which lack strdup(); include
47135           <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
47136           argument of gethostbyaddr() and getservbyname() from (const char*) to
47137           non-const (char*) for older platforms.
47139         * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
47140           platforms such as NextStep and OpenStep which lack strdup().
47142 Wed Oct  8 22:19:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47144         * lib/test/unit.rb: removed installation instructions.
47146         * lib/test/unit/ui/testrunnermediator.rb: moved the run flag to a more
47147           central location.
47149         * lib/test/unit.rb: ditto.
47151         * lib/test/unit.rb: extracted the running code in to AutoRunner.
47153         * lib/test/unit/autorunner.rb: added.
47155         * lib/test/unit/collector/objectspace.rb: extracted common test
47156           collection functionality in to a module.
47158         * lib/test/unit/collector.rb: ditto; added.
47160         * test/testunit/collector/test_objectspace.rb: ditto.
47162         * lib/test/unit/collector/dir.rb: added. Supports collecting tests out
47163           of a directory structure.
47165         * test/testunit/collector/test_dir.rb: added.
47167         * test/runner.rb: simplified to use the new capabilities.
47169 Tue Oct  7 15:23:09 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47171         * test/ruby/test_beginendblock.rb: add tests for nested BEGIN/END.
47173         * test/ruby/beginmainend.rb: add tests for nested BEGIN/END.
47175         * test/ruby/endblockwarn.rb: new file added to test of END-in-method
47176           warning.
47178 Tue Oct  7 12:23:47 2003  Tanaka Akira  <akr@m17n.org>
47180         * ext/fcntl/fcntl.c (Init_fcntl): define Fcntl::O_ACCMODE.
47182         * ext/socket/extconf.rb: useless assignment removed.
47184 Tue Oct  7 09:13:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47186         * test/ruby/test_beginendblock.rb (test_endinmethod): END{} is now
47187           allowed in eval.
47189 Tue Oct  7 04:15:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47191         * parse.y (stmt): should not expand mrhs if lhs is solely starred.
47193 Tue Oct  7 02:57:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47195         * parse.y (stmt): rhs of multiple assignment should not be
47196           expanded using "to_a". [ruby-dev:21527]
47198 Tue Oct  7 01:42:34 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47200         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): use appropriate
47201           free function for ASN1_OBJECT.
47203         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
47204           ASN1::ObjectId#sn; it returns short name text representation of OID.
47206         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
47207           ASN1::ObjectId#ln; it returns long name text representation of OID.
47209         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
47210           ASN1::ObjectId#oid; it returns numerical representation of OID.
47212 Mon Oct  6 22:59:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47214         * lib/csv.rb (IOReader, BasicWriter): call binmode when a given IO
47215           respond_to?(:binmode).  record separator was wrong when you gave
47216           text mode IO to Reader.parse and Writer.generate.
47218         * test/csv/test_csv.rb: add tests for above change.
47220 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
47222         * ext/socket/extconf.rb: check recvmsg even if sendmsg is exists.
47224         * ext/socket/socket.c (thread_read_select): restored.
47226 Mon Oct  6 16:23:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47228         * marshal.c (w_object): wrong method name in the message.
47230 Mon Oct  6 16:02:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47232         * parse.y (stmt): END in method should cause warning.
47233           [ruby-dev:21519]
47235 Mon Oct  6 15:17:23 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47237         * test/ruby/test_iterator.rb (test_block_argument_without_paren):
47238           added. (follows sample/test.rb)
47240 Mon Oct  6 11:57:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47242         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: added
47243           test for eval-ed BEGIN END order.
47245 Mon Oct  6 09:19:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47247         * marshal.c (w_object): should pass "weak" value to next level.
47248           [ruby-dev:21496]
47250         * eval.c (proc_alloc): should not use cached object if klass is
47251           different. [ruby-talk:83685]
47253 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
47255         * lib/pathname.rb: version information is added in document.
47257 Sun Oct  5 23:07:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47259         * eval.c (rb_f_END): block should be given.  [ruby-dev:21497]
47261 Sun Oct  5 22:51:23 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47263         * lib/ext/openssl/extconf.rb: add check for some engine functions
47264           unavailable in OpenSSL-0.9.6.
47266         * lib/ext/openssl/ossl_engine.c: ditto.
47268 Sun Oct  5 17:56:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47270         * eval.c (rb_eval): fix evaluation order.  [ruby-list:38431]
47272 Sun Oct  5 15:05:06 2003  akira yamada  <akira@ruby-lang.org>
47274         * test/uri/*: translated RUNIT to Test::Unit.
47276 Sun Oct  5 14:37:39 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47278         * lib/xsd/datatypes.rb: Rational -> Decimal string bug fix.
47280         * test/soap/marshal/test_marshal.rb: ditto.
47282         * test/soap/calc/test_calc_cgi.rb: add Config::CONFIG["EXEEXT"] to
47283           RUBYBIN.
47285 Sun Oct  5 13:47:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47287         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: add tests
47288           about scope, order and allowed syntax.
47290 Sun Oct  5 11:54:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47292         * test/ruby/envutil.rb: added.  split "rubybin" from test_system.rb.
47294         * test/ruby/test_system.rb: use envutil.rb
47296         * test/ruby/test_beginendblock.rb: added.
47298         * test/ruby/beginmainend.rb: added.  used in test_beginendblock.rb.
47300 Sun Oct  5 11:23:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47302         * test/testunit/runit/test_testresult.rb: removed some unnecessary
47303           cruft.
47305 Sun Oct  5 11:14:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47307         * lib/rubyunit.rb: aliasing TestCase into the top level is
47308           problematic.
47310         * lib/runit/assert.rb: fixed a couple of bugs caused by recent
47311           refactoring in Test::Unit.
47313         * test/testunit/runit/*: added.
47315 Sun Oct  5 10:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47317         * lib/open-uri.rb (URI::Generic#find_proxy): no_proxy support did not
47318           work.  [ruby-dev:21484]
47320 Sun Oct  5 09:52:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47322         * lib/test/unit/assertions.rb: will use pp for output if available.
47323           Can be disabled by setting Assertions.use_pp = false.
47325         * test/testunit/test_assertions.rb: made a small change to exception
47326           formatting.
47328 Sun Oct  5 07:42:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47330         * lib/test/unit/assertions.rb: made small improvements to assertion
47331           messages. Deprecated Assertions#assert_not_nil; use #assert instead.
47333         * test/testunit/test_assertions.rb: ditto.
47335         * test/testunit/util/test_procwrapper.rb: use #assert instead of
47336           #assert_not_nil.
47338 Sun Oct  5 04:10:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47340         * lib/test/unit/assertions.rb: refactored message building.
47342 Sun Oct  5 03:40:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47344         * ext/openssl/ossl_asn1.h: global symbols should be declared
47345           as external.
47347 Sun Oct  5 03:03:20 2003  akira yamada  <akira@ruby-lang.org>
47349         * test/ruby/test_exception.rb (test_else): added.
47351 Sun Oct  5 02:12:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47353         * lib/test/unit/assertions.rb: changed assertion messages to rely more
47354           heavily on #inspect. Added backtrace filtering for exceptions in
47355           assertion messages.
47357         * test/testunit/test_assertions.rb: ditto.
47359 Sun Oct  5 02:12:00 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47361         * lib/drb/acl.rb, lib/drb/ssl.rb: added.
47363         * lib/drb/drb.rb: exit from a thread using 'break'.
47365 Sat Oct  4 21:49:14 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47367         * gc.c (Init_stack): the type of space is changed to unsigned int
47368           from double.  [ruby-dev:21483]
47370 Sat Oct  4 17:52:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47372         * lib/soap/netHttpClient.rb: follow http-access2.  hosts which matches
47373           ENV['no_proxy'] or ENV['NO_PROXY'] are not proxyed.
47374           - [,:] separated. ("ruby-lang.org:rubyist.net")
47375           - no regexp. (give "ruby-lang.org", not "*.ruby-lang.org")
47376           - if you want specify host by IP address, give full address.
47377             ("192.168.1.1, 192.168.1.2")
47379         * lib/soap/rpc/cgistub.rb: return "Status: XXX MMM" line.
47381         * test/runner.rb: give testsuite name.
47383 Sat Oct  4 15:16:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47385         * marshal.c (w_object): instance variable dump do not cause error
47386           for objects that cannot be dumped, if they traversed from
47387           marshal_dump.  they are just ignored.
47389         * gc.c (Init_stack): cast "space" (doble value) into unsigned
47390           int.  should run on PowerPC.
47392         * eval.c (rb_eval): should not execute else part if any exception
47393           is caught. [ruby-dev:21482]
47395         * parse.y (f_args): should allow unparenthesized block argument.
47397         * parse.y (f_rest_arg): should allow unparenthesized rest
47398           argument.
47400 Sat Oct  4 14:59:51 2003  Tanaka Akira  <akr@m17n.org>
47402         * lib/pathname.rb (initialize): raise ArgumentError if argument has
47403           '\0' character.
47404           (relative_path_from): new method.
47405           (each_entry): new method for replacement of dir_foreach.
47406           (foreach, foreachline, dir_foreach, chdir): obsoleted.
47408 Sat Oct  4 12:58:48 2003  akira yamada  <akira@ruby-lang.org>
47410         * test/uri/* (6 files): added.
47412 Sat Oct  4 12:44:45 2003  akira yamada  <akira@ruby-lang.org>
47414         * lib/uri/ftp.rb, lib/uri/mailto.rb: renamed to #to_s from #to_str.
47416 Sat Oct  4 07:33:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47418         * lib/test/unit/testsuite.rb: changed #<< to return self, and added
47419           #delete.
47421         * test/testunit/test_testsuite.rb: ditto. Also slightly refactored
47422           #test_size.
47424         * lib/test/unit/collector/objectspace.rb: collector now preserves the
47425           hierarchy of suites.
47427         * test/testunit/collector/test_objectspace.rb: ditto.
47429 Sat Oct  4 04:48:49 2003  why the lucky stiff  <why@ruby-lang.org>
47431         * ext/syck/rubyext.c: default keys handled.
47433         * ext/syck/syck.h: lowered default buffer size to 16k for increased
47434           performance.
47436         * test/yaml: checkin of basic unit tests.
47438 Sat Oct  4 04:24:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47440         * ext/openssl/extconf.rb: add check for X509V3_set_nconf.
47442         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
47443           cannot implement if X509V3_set_nconf doesn't exist.
47445 Sat Oct  4 02:12:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47447         * lib/xsd/datatypes.rb: dump sign by itself.  under the problematic
47448           platform, sprintf("%+.10g", -0.0) => +0.  sigh.
47450         * sample/wsdl/amazon/*: update schema ver2 to ver3.
47452 Sat Oct  4 01:33:46 2003  Tanaka Akira  <akr@m17n.org>
47454         * lib/pathname.rb (initialize): duplicate and freeze argument.
47455           (to_s): return duplicated string.
47456           (children): new method.
47457           (each_line): new alias to foreachline.
47459 Fri Oct  3 16:13:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47461         * ext/openssl/ossl_asn1.c: add DER encoder and decoder.
47463         * ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.
47465         * ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.
47467         * ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".
47469         * ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
47470           DER encoded data argument.
47472         * ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
47473           DER encoded data in OpenSSL::ASN1 types.
47475 Fri Oct  3 13:02:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47477         * lib/test/unit.rb: refactored to use optparse.
47479         * lib/test/unit.rb: added support for selecting the output
47480           level from the command-line.
47482         * lib/test/unit.rb: added a command-line switch to stop processing
47483           the command-line, allowing arguments to be passed to tests.
47485         * lib/test/unit.rb: changed the method for specifying a runner or a
47486           filter from the command-line.
47488         * lib/test/unit/collector/objectspace.rb: fixed a bug causing all
47489           tests to be excluded when the filter was set to an empty array.
47491         * test/testunit/collector/test_objectspace.rb: ditto.
47493 Fri Oct  3 08:14:32 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47495         * lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
47496           'class ::Foo' syntax. [ruby-talk:83514]
47498 Fri Oct  3 08:01:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47500         * lib/test/unit/assertions.rb: added a default message for #assert,
47501           #assert_block, and #flunk.
47503         * test/testunit/test_assertions.rb: ditto.
47505         * lib/test/unit/failure.rb: failures now show a better trace of where
47506           they occurred.
47508         * test/testunit/test_failure.rb: ditto (added).
47510         * lib/test/unit/testcase.rb: ditto.
47512         * test/testunit/test_testcase.rb: ditto.
47514         * lib/test/unit/util/backtracefilter.rb: added.
47516         * test/testunit/util/test_backtracefilter.rb: added.
47518         * lib/test/unit/error.rb: changed to use BacktraceFilter and improved
47519           output.
47521         * test/testunit/test_error.rb: ditto.
47523 Thu Oct  2 20:33:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47525         * ext/iconv/iconv.c (iconv_failure_initialize): conform with
47526           orthodox initialization method.
47528         * ext/iconv/iconv.c (iconv_fail): initialize exception instance
47529           from the class, and do not share instance variables with the
47530           others.  [ruby-dev:21470]
47532 Thu Oct  2 18:20:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47534         * time.c (Init_Time): define initialize.  [ruby-dev:21469]
47536 Thu Oct  2 17:39:38 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47538         * ext/openssl/ossl_engine.c: add a new module OpenSSL::Engine.
47539           it supports OpenSSL hardware cryptographic engine interface.
47541         * ext/openssl/ossl_engine.h: ditto.
47543         * ext/openssl/MANIFEST: add ossl_engine.c and ossl_engine.h.
47545         * ext/openssl/extconf.rb: add check for openssl/engine.h.
47547         * ext/openssl/ossl.c: call Init_ossl_engine().
47549         * ext/openssl/ossl.h: include openssl/engine.h.
47551         * ext/openssl/ossl_pkey_{rsa,dsa,dh}.c: check if underlying
47552           EVP_PKEY referes engine.
47554 Thu Oct  2 17:22:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47556         * time.c (time_load): restore instance variables (if any) before
47557           loading from marshaled data.
47559 Thu Oct  2 14:19:15 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47561         * ext/iconv/iconv.c (iconv_fail): now yield erred substring, and
47562           set error object to $!.
47564         * ext/iconv/iconv.c (iconv_convert): error handler block should
47565           return appended part and the rest.  if rest is nil, the
47566           conversion stops.
47568 Thu Oct  2 12:00:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47570         * variable.c (rb_const_defined_0): look up constants in Object as
47571           well.  [ruby-dev:21458]
47573         * test/ruby/test_defined.rb (TestDefined::test_defined): test for
47574           constants.
47576 Thu Oct  2 11:17:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47578         * lib/test/unit/assertions.rb: should not capture an
47579           AssertionFailedError unless explicitly requested.
47581         * test/testunit/test_assertions.rb: ditto.
47583         * test/testunit/collector/test_objectspace.rb: fixed a test failure
47584           caused by methods being returned in different orders on different
47585           platforms by moving test sorting from TestSuite into the locations
47586           where suites are constructed. [ruby-talk:83156]
47588         * lib/test/unit/testcase.rb: ditto.
47590         * lib/test/unit/testsuite.rb: ditto.
47592         * lib/test/unit/collector/objectspace.rb: ditto.
47594 Thu Oct  2 03:25:01 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47596         * eval.c (rb_thread_raise): prototype; avoid VC++ warning.
47598 Thu Oct  2 01:37:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47600         * time.c (time_mdump): new marshal dumper. _dump is still
47601           available for compatibility.
47603         * time.c (time_mload): new marshal loader.
47605         * marshal.c (w_object): preserve instance variables for objects
47606           with marshal_dump.
47608         * marshal.c (r_object0): restore instance variables before calling
47609           marshal_load.
47611         * error.c (rb_warn_m): always return nil.
47613 Thu Oct  2 01:32:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47615         * eval.c (rb_f_block_given_p): real required condition is
47616           ruby_frame->prev->iter == ITER_CUR.
47618         * eval.c (rb_block_given_p): ditto.
47620         * eval.c (block_pass): update ruby_frame->iter only when previous
47621           value is ITER_NOT.
47623 Thu Oct  2 01:02:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47625         * variable.c (rb_const_defined_at): should exclude constants from
47626           Object when TYPE(klass) == T_MODULE *and* exclude is on.
47627           [ruby-dev:21458]
47629         * variable.c (rb_const_get_0): do not lookup constants from Object
47630           when TYPE(klass) == T_MODULE *and* exclude is on.
47632 Thu Oct  2 00:21:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47634         * test/logger/test_logger.rb: unlinking file before close causes
47635           problem under win32 box.
47637         * lib/xsd/datatypes.rb(XSDFloat, XSDDouble): add +/- sign explicitly
47638           when stringified and embedded into XML instance.  Ruby's sprintf may
47639           format -0.0 as "0.0" (no minus sign) depending on underlying C
47640           sprintf implementation.
47642         * test/xsd/test_xsd.rb, test/soap/test_basetype.rb: follow above change.
47644         * test/soap/calc/*: give httpd config param "CGIInterpreter".
47645           "/usr/bin/env ruby" thing does not work under non-Unix boxes.
47647 Thu Oct  2 00:25:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47649         * signal.c (ruby_signal_name): adjust to the prototype.
47651         * process.c (pst_inspect): ditto.
47653         * ext/etc/etc.c (etc_getgrent, Init_etc): typo.
47655 Wed Oct  1 20:49:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47657         * gc.c (heaps): manage slots and limits together.  [ruby-dev:21453]
47659         * gc.c (add_heap): should not clear heaps slot even if realloc()
47660           failed.
47662 Wed Oct  1 20:36:49 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47664         * MANIFEST: add wince/mkconfig_wce.rb.
47666 Wed Oct  1 17:22:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47668         * ext/etc/etc.c: add new functions: setpwent, getpwent, endpwent,
47669           setgrent, getgrent, endgrent.
47671         * ext/socket/socket.c (sock_s_gethostbyname): do not reverse lookup.
47673 Wed Oct  1 17:01:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47675         * eval.c (rb_load): Object scope had priority over required file
47676           scope.  [ruby-dev:21415]
47678 Wed Oct  1 14:09:53 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
47680         * wince/mkconfig_wce.rb: sorry, forget to commit.
47682 Wed Oct  1 10:08:42 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
47684         * wince/setup.mak: add sigmarionIII SDK support.
47686         * wince/Makefile.sub: ditto.
47688         * wince/mkexports.rb: fix linker error in SH4.
47690         * wince/mkconfig_wce.rb: camouflage RUBY_PLATFORM for compiling ext.
47692 Wed Oct  1 08:02:52 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
47694         * wince/time_wce.c (time): add zero check.
47696 Tue Sep 30 16:11:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47698         * Makefile.in: copy lex.c from $(srcdir) if it's not the current
47699           directory.  [ruby-dev:21437]
47701 Tue Sep 30 11:29:23 2003  Tanaka Akira  <akr@m17n.org>
47703         * process.c (pst_inspect): describe stopped process "stopped".
47705 Tue Sep 30 09:31:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47707         * test/runner.rb: glob for directories.
47709 Tue Sep 30 09:11:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47711         * eval.c (rb_eval): while/until should not capture break unless
47712           they are destination of the break.
47714 Tue Sep 30 03:12:02 2003  Minero Aoki  <aamine@loveruby.net>
47716         * lib/net/http.rb (finish): revert to 1.93.
47718         * lib/net/pop.rb (finish): revert to 1.60.
47720         * lib/net/smtp.rb (finish): revert to 1.67.
47722         * lib/net/http.rb (do_start): ensure to close socket if failed to
47723           start session.
47725         * lib/net/pop.rb (do_start): ditto.
47727         * lib/net/smtp.rb (do_start): ditto.
47729         * lib/net/smtp.rb: SMTP#started? wrongly returned false always.
47731 Tue Sep 30 02:54:49 2003  Minero Aoki  <aamine@loveruby.net>
47733         * test/ruby/test_iterator.rb: new test
47734           test_break__nested_loop[123].
47736 Mon Sep 29 23:39:13 2003  Minero Aoki  <aamine@loveruby.net>
47738         * lib/net/http.rb (finish): does not raise IOError even if
47739           !started?, to allow closing socket which was opened before
47740           session started.
47742         * lib/net/pop.rb (finish): ditto.
47744         * lib/net/smtp.rb (finish): ditto.
47746 Mon Sep 29 19:06:51 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47748         * ext/win32ole/extconf.rb: add windows.h checking.
47749           (ruby-bugs:PR#1185)
47751 Mon Sep 29 16:18:30 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47753         * lib/logger.rb: check if the given logdevice object respond_to :write
47754           and :close, not is_a? IO.  duck duck.
47756         * test/logger/test_logger.rb: self IO.pipe reading/writing may be
47757           locked by the flood.  use tempfile.
47759         * lib/wsdl/xmlSchema/data.rb: wrong constant reference.
47761 Mon Sep 29 16:11:23 2003  Minero Aoki  <aamine@loveruby.net>
47763         * test/fileutils/test_fileutils.rb: clean up temporary symlink.
47764           Patched by NaHi.  [ruby-dev:21420]
47766 Mon Sep 29 11:16:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47768         * eval.c (rb_thread_atfork): wrong format specifier.
47769           [ruby-dev:21428]
47771         * process.c (pst_inspect): better description.
47773 Mon Sep 29 02:31:44 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47775         * lib/webrick/utils.rb (Utils::su): use setgid and setuid to
47776           set real and effective IDs. and setup group access list by
47777           initgroups.
47779 Sun Sep 28 11:14:19 2003  Koji Arai  <jca02266@nifty.ne.jp>
47781         * ext/digest/digest.c (Init_digest): `copy_object' was deprecated.
47782           `initialize_copy' should be defined.
47784         * ext/stringio/stringio.c (Init_stringio): ditto.
47786 Sat Sep 27 18:25:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47788         * lib/xsd/charset.rb: XSD::Charset.is_ces did return always true under
47789           $KCODE = "NONE" environment.  check added.
47791         * test/xsd/test_xsd.rb: add tests for above fix.
47793 Sat Sep 27 15:58:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47795         * lib/soap/rpc/cgistub.rb: make logging severity threshold higher.
47797         * lib/soap/rpc/standaloneServer.rb: defer WEBrick server start to give
47798           a chance to reset logging severity threshold.
47800         * test/soap/calc/test_*, test/soap/helloworld/test_helloworld.rb: run
47801           silent.
47803 Sat Sep 27 09:44:18 2003  Minero Aoki  <aamine@loveruby.net>
47805         * test/fileutils/test_fileutils.rb: clear all errors on Windows.
47806           [ruby-dev:21417]
47808         * test/fileutils/test_nowrite.rb: ditto.
47810 Sat Sep 27 04:57:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47812         * test/ruby/test_file.rb: new file.  only asserts unlink-before-close
47813           behaviour now.
47815         * test/soap/marshal/test_digraph.rb: should close before unlink.
47816           unlink-before-close pattern is not needed here.
47818 Sat Sep 27 03:32:37 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47820         * test/soap/*, test/wsdl/*, test/xsd/*: move TestCase classes into
47821           each module namespace.  TestMarshal in
47822           test/soap/marshal/test_marshal.rb crashed with
47823           test/ruby/test_marshal.rb.
47825 Sat Sep 27 01:30:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47827         * ext/socket/socket.c (ruby_connect): on win32, type of the 4th
47828           argument of getsockopt is char *.
47830 Fri Sep 26 18:35:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47832         * lib/resolv-replace.rb: 1.8 compliance.  [ruby-talk:82946]
47834 Fri Sep 26 17:39:27 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47836         * test/ruby/test_marshal.rb: add test for ruby's objects.
47838 Fri Sep 26 09:52:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47840         * defines.h (flush_register_windows): use volatile only for gcc on
47841           Solaris.  [ruby-dev:21403]
47843         * lib/mkmf.rb (xsystem): use system directly to honor shell meta
47844           charaters.
47846 Fri Sep 26 00:10:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47848         * lib/README: updated.
47850 Thu Sep 25 17:48:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47852         * ext/openssl/ossl.c (ossl_buf2str): fix type of 1st argument for
47853           rb_protect.
47855         * ext/openssl/ossl_hmac.c (ossl_hmac_digest): should return meaningful
47856           value.
47858 Thu Sep 25 09:00:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47860         * lib/ostruct.rb: Added OpenStruct#==.
47862         * test/ostruct/test_ostruct.rb: Added.
47864 Thu Sep 25 07:55:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47866         * ext/win32ole/win32ole.c, ext/openssl/ossl_pkey_dsa.c,
47867           ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
47868           not use C++ or C99 style comment yet.  (ruby-bugs:PR#1184)
47870 Thu Sep 25 00:23:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47872         * MANIFEST: add SOAP4R.
47874 Thu Sep 25 00:13:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47876         * lib/soap/* (29 files): SOAP4R added.
47878         * lib/wsdl/* (42 files): WSDL4R added.
47880         * lib/xsd/* (12 files): XSD4R added.
47882         * test/soap/* (16 files): added.
47884         * test/wsdl/* (2 files): added.
47886         * test/xsd/* (3 files): added.
47888         * sample/soap/* (27 files): added.
47890         * sample/wsdl/* (13 files): added.
47892 Wed Sep 24 02:08:11 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47894         * lib/webrick/httpservlet/cgihandler.rb: conform to mswin32.
47895           [ruby-talk:82735], [ruby-talk:82748], [ruby-talk:82818]
47897 Tue Sep 23 23:10:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47899         * lib/logger.rb: add Logger#<<(msg) for writing msg without any
47900           formatting.
47902         * test/logger/test_logger.rb: ditto.
47904 Tue Sep 23 20:47:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47906         * error.c (rb_warn_m): should not warn if -W0 is specified.
47907           [ruby-talk:82675]
47909 Mon Sep 22 21:28:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47911         * MANIFEST: updated.
47913 Mon Sep 22 19:22:26 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47915         * configure.in (AC_CHECK_FUNCS): add setuid and setgid.
47917 Mon Sep 22 12:34:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47919         * util.c (ruby_strtod): skip preceding zeros before counting
47920           digits in the mantissa. (ruby-bugs:PR#1181)
47922 Sun Sep 21 04:12:36 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47924         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): the argument
47925           should be a String.
47927         * ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): ditt.
47929         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): ditto.
47931         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
47933         * ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.
47935 Sat Sep 20 11:49:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47937         * lib/logger.rb: typo fixed.
47939         * test/logger/test_logger.rb: new file.
47941 Fri Sep 19 11:39:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47943         * test/testunit/*: Added.
47945         * lib/test/unit.rb: Documentation update.
47947         * lib/test/unit/ui/console/testrunner.rb (TestRunner#initialize):
47948           Ditto.
47950         * lib/test/unit.rb: Factored out an ObjectSpace collector.
47952         * lib/test/unit/collector/objectspace.rb: Ditto.
47954         * sample/testunit/*: Added.
47956 Fri Sep 19 01:00:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47958         * lib/webrick/log.rb (BasicLog#log): get rid of as ineffectual
47959           condition.
47961         * lib/webrick/log.rb (BasicLog#format): add "\n" to message.
47963 Thu Sep 18 22:43:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47965         * eval.c (proc_invoke): should push PROT_PCALL tag for orphans.
47967         * eval.c (proc_invoke): should update "result" for orphans.
47969 Thu Sep 18 20:33:03 2003  Tietew  <tietew-ml-ruby-list@tietew.net>
47971         * parse.y (str_xquote): do not prepend escapes in
47972           backqoute literals.  [ruby-list:38409]
47974 Thu Sep 18 20:30:17 2003  Tanaka Akira  <akr@m17n.org>
47976         * lib/pathname.rb: update document.
47978 Thu Sep 18 15:27:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47980         * lib/logger.rb: new file.  Logger, formerly called devel-logger or
47981           Devel::Logger.
47983         * sample/logger/*: new file.  samples of logger.rb.
47985 Wed Sep 17 23:41:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47987         * eval.c (localjump_destination): should not raise ThreadError
47988           exception for "break". [ruby-dev:21348]
47990         * eval.c (proc_invoke): use result instead of prot_tag->retval.
47991           retval is no longer propagated to the ancestors.
47993 Wed Sep 17 20:34:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47995         * parse.y (tokadd_string, parse_string, yylex): escaped terminator
47996           is now interpreted as is.  [ruby-talk:82206]
47998 Wed Sep 17 18:52:36 2003  Minero Aoki  <aamine@loveruby.net>
48000         * test/fileutils/fileassertions.rb: new file.
48002         * test/fileutils/test_fileutils.rb: new file.
48004         * test/fileutils/test_nowrite.rb: new file.
48006 Wed Sep 17 18:51:02 2003  Minero Aoki  <aamine@loveruby.net>
48008         * test/strscan/test_stringscanner.rb: require test/unit.
48010 Wed Sep 17 18:35:34 2003  Minero Aoki  <aamine@loveruby.net>
48012         * test/strscan/test_stringscanner.rb: new file.
48014 Wed Sep 17 18:03:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48016         * ext/openssl: all files are reviewed to simplify and avoid memory leak.
48018         * ext/openssl/extconf.rb: add check for assert.h.
48020         * ext/openssl/ossl.c (ossl_buf2str): new function to convert
48021           C buffer to String and free buffer.
48023         * ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
48024           Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.
48026         * ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
48027           functions to convert object to DER string.
48029         * ext/openssl/ossl.h: ditto.
48031         * ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
48032           BIO to String object and free BIO.
48034         * ext/openssl/ossl_bio.h: ditto.
48036         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".
48038         * ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.
48040         * ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.
48042         * ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
48043           and reimplement in openssl/x509.rb.
48045         * ext/openssl/ossl_x509attr.c: reimplemented and disable some
48046           method temporarily. this class doesn't work fine without ASN.1
48047           data support;-) I'll rewrite in near future.
48049         * ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
48050           unused code.
48052         * ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.
48054 Tue Sep 16 22:25:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48056         * test/csv/test_csv.rb: add negative tests of row_sep.
48058 Tue Sep 16 18:02:36 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48060         * regex.c (re_compile_pattern): should not translate character
48061           class range edge. [ruby-list:38393]
48063 Tue Sep 16 16:47:56 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48065         * MANIFEST: add test/csv/mac.csv.
48067         * win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target.
48069 Mon Sep 15 19:02:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48071         * lib/csv.rb: add extra pamameter to specify row(record) separater
48072           character.  To parse Mac's CR separated CSV, do like this.
48073             CSV.open("mac.csv", "r", ?,, ?\r) { |row| p row.to_a }
48074           The 3rd parameter in this example ?, is for column separater and the
48075           4th ?\r is for row separater.  Row separater is nil by default.  Nil
48076           separater means "\r\n" or "\n".
48078         * test/csv/test_csv.rb: add tests for above feature.
48080         * test/csv/mac.csv: added.  Sample CR separated CSV file.
48082 Fri Sep 12 22:41:48 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
48084         * ext/openssl/ossl.c: move ASN.1 stuff to ossl_asn1.[ch]
48086         * ext/openssl/ossl.c: move BIO stuff to ossl_bio.[ch]
48088         * ext/openssl/ossl_asn1.[ch]: new files
48090         * ext/openssl/ossl_bio.[ch]: new files
48092 Fri Sep 12 12:30:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48094         * intern.h (rb_disable_super, rb_enable_super): replace with dummy
48095           expressions instead of prototypes.  the functions remain yet for
48096           binary compatibility.  [ruby-talk:81758]
48098 Fri Sep 12 12:09:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48100         * bignum.c (rb_big_and): convert argument using 'to_int'.
48102         * bignum.c (rb_big_or): ditto.
48104         * bignum.c (rb_big_xor): ditto.
48106 Fri Sep 12 07:06:14 2003  David Black  <dblack@superlink.net>
48108         * lib/scanf.rb: Took out useless @matched_item variable; some small
48109           refactoring.
48111 Thu Sep 11 08:43:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48113         * eval.c (rb_f_require): allow "require" on $SAFE>0, if feature
48114           name is not tainted.
48116         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream):
48117           Supports StringIO.
48119 Wed Sep 10 22:47:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48121         * ext/openssl/ossl.h: add a workaround for win32 platform.
48122           libeay32.dll doesn't export functions defined in conf_api.h.
48124         * ext/openssl/ossl_config.c (ossl_config_initialize): ditto.
48126         * ext/openssl/ossl_config.c (ossl_config_add_value): ditto.
48128         * ext/openssl/ossl_config.c (set_conf_section_i): should check
48129           if the argument is Array.
48131 Wed Sep 10 22:41:54 2003  Tietew  <tietew@tietew.net>
48133         * eval.c (win32_get_exception_list): avoid VC7 warning.
48134           [ruby-win32:577]
48136 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48138         * eval.c (struct tag): dst should be VALUE.
48140 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48142         * eval.c (localjump_destination): stop at the scope where the current
48143           block was created.  [ruby-dev:21353]
48145 Tue Sep  9 05:17:04 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48147         * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
48149 Tue Sep  9 02:41:35 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
48151         * ext/openssl/ossl_config.c: Refine compatibility.
48153 Tue Sep  9 01:50:45 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48155         * lib/webrick/httpserver.rb (HTTPServer#access_log): add "\n" to
48156           the message.
48158         * lib/webrick/log.rb (BasicLog#log): add "\n" only if needed.
48160 Mon Sep  8 22:15:33 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
48162         * ext/tk/lib/multi-tk.rb: modify security check at creating
48163           a new interpreter
48165 Mon Sep  8 20:00:12 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48167         * lib/optparse.rb, lib/optparse/version.rb: search also all
48168           capital versions.
48170 Mon Sep  8 19:26:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48172         * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
48174         * ext/openssl/ossl_config.c: refine all with backward compatibility.
48176         * ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().
48178         * ext/openssl/ossl_x509.c: added new constants under X509 module.
48179           DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
48180           DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.
48182         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
48183           the members of the struct. it's left to GC.
48185         * ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.
48187         * ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
48188           add attr readers: issuer_certificate, subject_certificate,
48189           subject_request, crl and config.
48191 Mon Sep  8 18:26:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48193         * lib/webrick/accesslog.rb (AccessLog::setup_params): use req.port
48194           instead of config[:Port] or req.request_uri.port.
48196         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): ditto.
48198         * lib/webrick/httpservlet/filehandler.rb (FileHandler#dir_list): ditto.
48200         * lib/webrick/config.rb: :Listen option never be used.
48202         * lib/webrick/server.rb (GenericServer#initialize): don't use :Listen
48203           option and add warning message.
48205         * lib/webrick/log.rb (BasicLog#<<): shortcut of log(INFO, ...).
48207         * lib/webrick/httpserver.rb (HTTPServer#accesslog): use << for logging.
48209 Sun Sep  7 16:08:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
48211         * ext/tcltklib/tcltklib.c (lib_mainloop_core): fixed signal-trap bug
48213         * ext/tk/lib/*.rb: Ruby/Tk works at $SAFE == 4
48215 Sat Sep  6 02:26:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48217         * test/ruby/test_*.rb: assert_same, assert_match, and so on.
48219 Sat Sep  6 18:45:46 2003  Mauricio Fernandez  <batsman.geo@yahoo.com>
48221         * parse.y (assignable): call rb_compile_error(), not rb_bug().
48222           [ruby-core:01523]
48224 Sat Sep  6 17:40:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48226         * ext/openssl/ruby_missing.c: rid of unnecessary backward
48227           compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
48228           all sources.
48230         * ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.
48232         * ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.
48234         * ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.
48236         * ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.
48238 Sat Sep  6 01:23:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48240         * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set.
48242         * win32/win32.c (CreateChild): fix condition about whether to call
48243           shell or not.
48245 Sat Sep  6 00:36:20 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
48247         * Makefile.in (test): phony target.
48249         * lib/mkmf.rb (have_library, find_library): configure by library
48250           name.
48252         * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
48253           array as argument.
48255         * test/ruby/test_*.rb: moved invariants to left side in
48256           assert_equal, and use assert_nil, assert_raises and so on.
48258         * win32/win32.c (isInternalCmd): distinguish command.com and
48259           cmd.exe.
48261         * win32/win32.c (make_cmdvector): a character just after wildcard
48262           was ignored.  [ruby-core:01518]
48264 Fri Sep  5 20:27:08 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48266         * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)'
48268 Fri Sep  5 18:00:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48270         * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
48272         * ext/openssl/ossl_digest.c: add ossl_digest_new().
48274         * ext/openssl/ossl_digest.h: ditto.
48276         * ext/openssl/ossl_cipher.c: add ossl_cipher_new().
48278         * ext/openssl/ossl_cipher.h: ditto.
48280 Fri Sep  5 15:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48282         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): should not
48283           search delimiter forward if found in backward.
48285 Fri Sep  5 13:32:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48287         * test/runner.rb: arguments should be keys.
48289 Fri Sep  5 12:09:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48291         * test/ruby/test_system.rb (test_system): check existence of ruby
48292           interpreter.
48294 Fri Sep  5 11:32:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48296         * lib/optparse.rb (--version): fix assignment/reference order.
48298         * lib/optparse.rb (OptionParser#help): new; OptionParser#to_s may
48299           be deprecated in future.
48301         * lib/optparse/version.rb (OptionParser#show_version): hide Object.
48303         * test/runner.rb: fix optparse usage.
48305         * test/runner.rb: glob all testsuits if no tests given.
48307 Fri Sep  5 10:42:58 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48309         * test/runner.rb: added.  gets testcases from command line and runs it.
48311         * test/ruby/test_gc.rb: remove useless part which was for dumping test
48312           result.
48314 Fri Sep  5 09:28:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48316         * test/ruby/test_gc.rb: added.  splitter.rb which I made to split
48317           sample/test.rb into test/ruby/test_* kindly removed GC test (the
48318           last section in the original test) to reduce things to be worried.
48320 Fri Sep  5 03:00:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48322         * test/ruby/test_iterator.rb (test_block_in_arg): add no block
48323           given tests.
48325         * test/ruby/test_iterator.rb (test_ljump): uncomment LocalJumpError
48326           test.
48328 Fri Sep  5 01:10:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48330         * test/ruby: tests for ruby itself.
48332         * test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases.
48333           some tests could not be translates...  search '!!' mark to see it.
48335         * test/csv/test_csv.rb: should require 'csv', not '../lib/csv'.  test
48336           runner should set load path correctly.
48338 Fri Sep  5 01:03:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48340         * test/csv/test_csv.rb: close opened files for CSV::IOBuf explicitly.
48341           opened file cannot be removed under win32 box.
48343 Thu Sep  4 23:59:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48345         * parse.y (tokadd_string): newlines have no special meanings in
48346           %w/%W, otherwise they are ignored only when interpolation is
48347           enabled.  [ruby-dev:21325]
48349 Thu Sep  4 19:38:25 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48351         * ext/io/wait/.cvsignore: added.
48353         * ext/openssl/.cvsignore: added.
48355 Thu Sep  4 19:28:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48357         * sample/openssl: added.  Sample of standard distribution library
48358           should be locate in sample/{module_name}/*.
48360         * ext/openssl/sample/*: removed.  move to sample/openssl/*.
48362 Thu Sep  4 18:02:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48364         * test/csv/test_csv.rb: use remove_const to reduce warnings.  use
48365           Dir.tmpdir to locate working files.
48367 Thu Sep  4 17:41:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48369         * misc/ruby-mode.el (ruby-here-doc-beg-re): underscore also is
48370           valid delimiter.
48372         * misc/ruby-mode.el (ruby-here-doc-end-match): must quote
48373           arbitrary string to use as regexp.
48375         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): must not
48376           call `ruby-here-doc-end-match' unless `ruby-here-doc-beg-re'
48377           matched.
48379 Thu Sep  4 15:40:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48381         * test/csv/test_csv.rb: run on test/unit original layer.
48383 Thu Sep  4 12:54:50 2003  why the lucky stiff  <why@ruby-lang.org>
48385         * ext/syck/token.c: headerless documents with root-level spacing now
48386           honored.
48388 Thu Sep  4 00:06:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48390         * eval.c (mark_frame_adj): need to adjust argv pointer if using
48391           system's alloca. [ruby-core:01503]
48393 Wed Sep  3 21:33:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48395         * test: add test directory.  Test::Unit aware testcases and needed
48396           files should be located in this directory.  dir/file name convention;
48397             test/{module_name}/test_{testcase_name}.rb
48398             test/{module_name}/{needed_files}
48399           someday, someone will write testrunner which searches test_*.rb and
48400           run testcases automatically.
48402         * test/csv/*: add testcase for lib/csv.rb.
48404 Wed Sep  3 01:37:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48406         * io.c (rb_f_gets): should call next_argv() before type check
48407           current_file. [ruby-list:38336]
48409 Tue Sep  2 20:37:15 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48411         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
48412           for skipping server verification.
48414 Tue Sep  2 23:36:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48416         * eval.c (proc_invoke): should retrieve retval when pcall is true.
48418 Tue Sep  2 14:09:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48420         * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX).
48421           the patch is submitted by nmu <nmu@users.sourceforge.jp>.
48423         * ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on
48424           some platforms.
48426         * ext/socket/getnameinfo.c (getnameinfo): ditto.
48428 Tue Sep  2 14:02:19 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
48430         * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
48432         * ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb}:
48433           bug fix and improvement of font control
48435 Tue Sep  2 09:51:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48437         * eval.c (rb_eval): should not handle exceptions within rescue
48438           argument.  [ruby-talk:80804]
48440 Tue Sep  2 00:44:37 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48442         * re.c (rb_memsearch): fix overrun.  [ruby-talk:80759]
48444 Tue Sep  2 00:41:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48446         * ext/iconv/iconv.c (map_charset): use lower case keys.
48448         * ext/iconv/iconv.c (iconv_fail): just yield error and return the
48449           result if a block is given.
48451         * ext/iconv/iconv.c (iconv_convert): yield error and append the
48452           result if a block is given.
48454         * ext/iconv/charset_alias.rb (charset_alias): optional third
48455           argument.
48457         * ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of
48458           SHIFT_JIS on cygwin.
48460 Mon Sep  1 18:34:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48462         * eval.c (rb_eval): make tail recursion in ELSE clause of
48463           RESCUE a jump.
48465 Mon Sep  1 18:00:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48467         * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
48468           Dave Butcher.
48470         * eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
48471           Decoux in [ruby-talk:80623]
48473 Mon Sep  1 16:59:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48475         * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another
48476           thread termination.
48478         * eval.c (rb_thread_start_0): should not error_print() within
48479           terminated thread, because $stderr used by it might be
48480           overriden now.  [ruby-dev:21280]
48482 Sun Aug 31 22:46:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48484         * eval.c (TAG_DST()): take no argument.
48486         * process.c (p_gid_sw_ensure): return VALUE.
48488 Sun Aug 31 22:27:10 2003  Hidetoshi NAGAI  <nagai@dumbo.ai.kyutech.ac.jp>
48490         * process.c (p_gid_sw_ensure): lack of function type
48492 Sun Aug 31 12:25:06 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
48494         * lib/optparse.rb: --version takes an optional argument; "all" or
48495           a list of package names.
48497 Sun Aug 31 10:17:02 2003  Tadayoshi Funaba  <tadf@dotrb.org>
48499         * lib/date/format.rb: yyyy/mm is not an acceptable format.
48501         * lib/time.rb: follow above.
48503 Sat Aug 30 14:25:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48505         * eval.c (rb_iter_break): should not call TAG_JUMP directly.
48507 Sat Aug 30 03:58:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48509         * eval.c (struct BLOCK): remove BLOCKTAG, use scope instead.
48511         * eval.c (POP_TAG): no longer propagate retval.  retval is now set
48512           directly by localjump_destination().
48514         * eval.c (localjump_destination): new function to cast
48515           return/break local jump.
48517         * eval.c (rb_yield_0): stop TAG_RETURN/TAG_BREAK escaping.
48519 Fri Aug 29 22:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48521         * bigdecimal.c *.html: The 2nd arg. for add,sub,mult, and div is 0,
48522           then result will be the same as +,-,*,/ respectively.
48524 Fri Aug 29 17:30:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
48526         * process.c: bug fix
48528         * process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
48530         * process.c: deny handling IDs during evaluating the block given to
48531           the Process::{UID,GID}.switch method
48533         * ext/tcltklib/tcltklib.c: some methods have no effect if on slave-IP
48535         * ext/tcltklib/tcltklib.c: can create a interpreter without Tk
48537         * ext/tcltklib/tcltklib.c: bug fix on handling exceptions
48539         * ext/tcltklib/MANUAL.euc: modify
48541         * ext/tk/lib/tk.rb: freeze some core modules
48543         * ext/tk/lib/multi-tk.rb: more secure
48545         * ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
48546           Tk's list
48548         * ext/tk/lib/tk.rb: improve accessibility of TkVariable object
48550         * ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
48551           ext/tk/lib/tktext.rb: fix bug of font handling
48553         * ext/tk/lib/tkfont.rb: TkFont.new() accepts compound fonts
48555 Thu Aug 28 22:07:12 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48557         * variable.c (rb_autoload_load): call const_missing if autoloading
48558           constant is not defined to allow hook.
48560         * eval.c (rb_eval): use rb_const_get_from() instead of
48561           rb_const_get_at().
48563         * eval.c (is_defined): forgot to check NODE_COLON3.
48565 Thu Aug 28 17:30:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48567         * variable.c (rb_const_get_0): should check constants defined in
48568           included modules, if klass is Object. [ruby-talk:79302]
48570         * numeric.c (check_uint): check should be done using UINT_MAX, not
48571           INT_MAX. this fix is submitted by Lyle Johnson
48572           <lyle@knology.net> in [ruby-core:01486]
48574 Thu Aug 28 05:02:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48576         * parse.y (singleton): typo fixed (ruby-bugs-ja:PR#562)
48578 Thu Aug 28 02:37:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48580         * eval.c (rb_eval): *a = [1,2] now assigns [[1,2]] to a.
48581           consistent with *a = [1], which set [[1]] to a.
48583         * node.h: merge NODE_RESTARY to NODE_SPLAT.
48585         * parse.y: rules simplified a bit by removing NODE_RESTARY.
48587         * sample/test.rb: updated for new assignment behavior.
48589 Wed Aug 27 22:33:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48591         * error.c (rb_bug): should not use other methods; this function is
48592           not for ordinary use.  [ruby-dev:21259]
48594 Wed Aug 27 15:07:57 2003  Minero Aoki  <aamine@loveruby.net>
48596         * lib/net/smtp.rb (check_response): AUTH CRAM-MD5 returns 334
48597           response. [ruby-list:38279]
48599 Wed Aug 27 05:10:15 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48601         * win32/win32.c (map_errno): support winsock error.
48603         * win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
48604           kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime):
48605           pass errno to map_errno().
48607         * win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
48608           rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
48609           rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
48610           rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
48611           rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
48612           rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
48613           rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
48614           rb_w32_fclose, rb_w32_close): use map_errno().
48616         * win32/win32.h: add winsock errors.
48618 Tue Aug 26 23:53:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48620         * lib/ostruct.rb (OpenStruct::method_missing): prohibit modifying
48621           frozen OpenStruct. [ruby-talk:80214]
48623 Tue Aug 26 20:03:50 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48625         * lib/mkmf.rb (create_tmpsrc): add the hook for source.
48626           [ruby-list:38122]
48628 Tue Aug 26 15:59:53 2003  why the lucky stiff  <why@ruby-lang.org>
48630         * implicit.c (syck_type_id_to_taguri): corrected detection of
48631           x-private types.
48633 Sun Aug 24 01:02:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48635         * file.c (file_expand_path): performance improvement.
48636           [ruby-talk:79748]
48638 Sat Aug 23 23:41:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48640         * file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for
48641           apparent cases. [ruby-talk:79748]
48643 Sat Aug 23 18:56:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48645         * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just
48646           resize a string, rb_str_cat() disallows NULL.  [ruby-dev:21237]
48648 Sat Aug 23 16:48:41 2003  Keiju Ishitsuka  <keiju@ishitsuka.com>
48650         * lib/irb/ruby-lex.rb: bug fix for "foo" !~ /bar/. [ruby-talk:79942]
48652 Sat Aug 23 15:59:58 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48654         * eval.c (rb_eval, rb_iterate, block_pass): reduce PUSH/POP_TAG and
48655           EXEC_TAG() for retry.  [ruby-dev:21216]
48657 Sat Aug 23 02:32:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48659         * eval.c (rb_yield_splat): should check if "values" is array.
48661         * enum.c (each_with_index_i): typo.
48663 Fri Aug 22 17:07:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48665         * enum.c (inject_i): use rb_yield_values.
48667         * enum.c (each_with_index_i): ditto.
48669         * eval.c (rb_yield_splat): new function to call "yield *values".
48671         * string.c (rb_str_scan): use rb_yield_splat().
48673 Fri Aug 22 06:13:22 2003  why the lucky stiff  <why@ruby-lang.org>
48675         * ext/syck/rubyext.c: refactoring of the transfer method
48676           dispatch.  added yaml_org_handler for faster dispatch of
48677           transfers to base types.
48679         * lib/yaml/rubytypes.rb: removed handling of builtins from
48680           Ruby library.
48682         * ext/syck/token.c: quoted and block scalars are now implicit !str
48684         * ext/syck/implicit.c: empty string detected as !null.
48686 Fri Aug 22 01:00:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48688         * eval.c (block_pass): improve passing current block.
48690 Fri Aug 22 00:13:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48692         * ext/bigdecimal/bigdecimal.c: Int. overflow bug in multiplication
48693           fixed, and VpNmlz() speed up.
48695 Wed Aug 20 16:44:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48697         * ext/socket/socket.c (ruby_connect): many systems seem to have
48698           a problem in select() after EINPROGRESS.  [ruby-list:38080]
48700 Wed Aug 20 01:31:17 2003  why the lucky stiff  <why@ruby-lang.org>
48702         * ext/syck/syck.h: Parser definition problems on HP-UX.
48703           [ruby-talk:79389]
48705         * ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.
48707         * ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.
48709         * ext/syck/rubyext.c: Tainting issues.
48711 Tue Aug 19 23:20:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48713         * ext/bigdecimal/bigdecimal.c .h .html: to_s("+") implemented.
48715         * ext/bigdecimal/lib/bigdecimal/math.rb: E implemented.
48717 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48719         * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
48721         * lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.
48723         * lib/webrick/compat.rb (File::fnmatch): remove old migration code.
48725         * lib/webrick/httpserver.rb (HTTPServer#run): ditto.
48727         * lib/webrick/server.rb (GenericServer#listen): the body of this
48728           method is pull out as Utils::create_lisnteners.
48730         * lib/webrick/utils.rb (Utils::create_lisnteners): new method.
48732         * lib/webrick/server.rb (GenericServer#start): should rescue
48733           unknown errors. and refine comments.
48735         * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
48736           socket if SSLSocket raises error.
48738 Tue Aug 19 11:19:33 2003  Shugo Maeda  <shugo@ruby-lang.org>
48740         * io.c (next_argv): should not call GetOpenFile() if rb_stdout is
48741           not a IO (T_FILE).
48743 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48745         * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
48746           a builtin.
48748         * ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.
48750         * ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
48751           add a return to the tails of each line.
48753         * ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.
48755         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.
48757         * ext/openssl/sample/echo_svr.rb: use SSLServer.
48759         * ext/openssl/sample/echo_cli.rb: add example of SSLSocket#sync_close.
48761 Tue Aug 19 01:24:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48763         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard
48764           headers are inconsistent at this macro.  [ruby-core:01432]
48766         * ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks.
48768         * ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers
48769           winspool.h
48771         * instruby.rb: make list at first instead of iterator.
48772           [ruby-talk:79347]
48774 Mon Aug 18 11:23:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48776         * dir.c (glob_helper): preserve raw order for **.
48778 Sun Aug 17 23:39:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48780         * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
48782 Sun Aug 17 17:10:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48784         * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
48785           method to specify if the underlying IO will be closed in
48786           SSLSocket#close.
48788         * ext/openssl/lib/openssl/buffering.rb: add forwarders to
48789           setsockopt, getsockopt and fcntl.
48791         * ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.
48793 Sun Aug 17 11:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48795         * ext/extmk.rb (extmake): should not force to remake Makefile when
48796           installation and so on.
48798 Sat Aug 16 23:58:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48800         * marshal.c (w_symbol, w_object): get rid of warnings.
48802         * re.c (rb_memsearch): ditto.
48804         * time.c (time_dump): ditto.
48806         * ext/extmk.rb (extmake): not continue making when extconf.rb
48807           failed.
48809         * ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.
48811         * ext/openssl/ossl.h: remove version.h dependency.
48813         * ext/openssl/ruby_missing.h: ditto.
48815         * lib/mkmf.rb (pkg_config): use --libs output except with
48816           only-L for other options.  [ruby-list:38099]
48818         * lib/mkmf.rb (create_makefile): separate rule for static
48819           library from shared object.
48821         * win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
48822           define exec_prefix and libdir.
48824 Fri Aug 15 23:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48826         * ext/bigdecimal/bigdecimal.c .h: Bug in combination of limit & div
48827           method fixed.
48829         * ext/bigdecimal/lib/bigdecimal/math.rb: atan() & sqrt() added.
48831 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48833         * configure.in (HUGE_ST_INO): check whether struct stat.st_ino
48834           is larger than long.  [ruby-dev:21194]
48835           http://www.geocities.co.jp/SiliconValley-PaloAlto/1409/ruby/beos.html
48837         * error.c (syserr_eqq): errno might exceed Fixnum limit.
48839         * error.c (Init_Exception): moved base initialization from
48840           init_syserr().
48842         * inits.c (rb_call_inits): postpone initializing errnos until
48843           Bignum is available.
48845 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48847         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): needed to let
48848           keyname() and so on be declared.
48850         * ext/curses/curses.c (curses_resizeterm, window_resize):
48851           arguments conflicted with macros in term.h.
48853         * ext/curses/curses.c (Curses module methods): ensure
48854           initialized.  [ruby-dev:21191]
48856 Fri Aug 15 02:08:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48858         * gc.c (id2ref): recycle check should be done by klass == 0.
48859           [ruby-core:01408]
48861 Fri Aug 15 01:34:23 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
48863         * ext/openssl/ossl_pkey.c: move generate_cb here
48865         * ext/openssl/ossl_pkey_{dh|dsa|rsa}.c: adapt to this cb
48867         * ext/openssl/openssl_missing.[ch]: add (0.9.6x, x<j) missing BN funcs
48869         * ext/openssl/ossl_bn.c: use supplied funcs from openssl_missing.c
48871 Fri Aug 15 00:38:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48873         * ext/bigdecimal/bigdecimal.c: Bug in div method fixed.
48875         * ext/bigdecimal/lib/bigdecimal/math.rb: Newly added.
48877         * ext/bigdecimal/sample/pi.rb: Changed so as to use math.rb.
48879 Thu Aug 14 21:19:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48881         * eval.c (Init_Thread): Continuation#[] added.  [ruby-talk:79028]
48883 Thu Aug 14 20:03:34 2003  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
48885         * ext/win32ole/win32ole.c (OLE_FREE): should not call
48886           ole_message_loop.
48888         * ext/win32ole/win32ole.c (ole_event_free): ditto.
48890         * ext/win32ole/win32ole.c (ole_initialize): stop calling
48891           OleUninitialize at exit.
48893 Thu Aug 14 11:27:37 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48895         * gc.c (rb_data_object_alloc): check type of 1st argument.
48896           [ruby-dev:21192]
48898 Thu Aug 14 00:21:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48900         * parse.y (mlhs_node): should allow "::Foo" (colon3) as lhs.
48902         * parse.y (lhs): ditto.
48904         * parse.y (yylex): should return tCOLON3 right after kCLASS.
48905           [ruby-talk:78918]
48907         * error.c (exc_initialize): was converting argument to string too
48908           eagerly.  Only check was needed. [ruby-talk:78958]
48910 Wed Aug 13 23:31:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48912         * ext/bigdecimal/bigdecimal.c .h .html: Ambiguity of
48913           BigDecimal::limit removed.
48915 Wed Aug 13 19:21:34 2003  Christian Neukirchen  <chneukirchen@yahoo.de>
48917         * lib/webrick/https.rb (HTTPServer#run): should set syncing-mode
48918           to SSLSocket. [ruby-talk:78919]
48920 Wed Aug 13 18:13:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48922         * eval.c (POP_BLOCK): turn on BLOCK_LEFT flag when leaving block.
48924         * eval.c (proc_invoke): unpack return/break destination when block
48925           is already left.
48927 Wed Aug 13 15:58:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48929         * object.c (rb_class_s_alloc): add function prototype to avoid VC++
48930           warning.
48932 Wed Aug 13 13:50:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48934         * ext/Win32API/Win32API.c (Win32API_initialize): should pass some
48935           class to first argument of Data_Wrap_Struct(). (ruby-bugs:PR#1109)
48937 Tue Aug 12 16:55:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48939         * Makefile.in: static link libraries to LIBRUBY_SO with static linked
48940           ext.  [ruby-dev:21157]
48942         * ext/extmk.rb (extmake): sort extension library initialization order.
48944         * ext/extmk.rb (extmake): compact $extlibs.
48946 Tue Aug 12 02:48:56 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48948         * eval.c (THREAD_SAVE_CONTEXT): should explicitly turn off the
48949           flag before calling getcontext(2).
48951         * eval.c (struct thread): add member to save backing store on
48952           IA64. (ruby-bugs PR1086)
48954         * eval.c (thread_mark): mark IA64 backing store region.
48956         * eval.c (thread_free): free saved IA64 backing store.
48958         * eval.c (rb_thread_save_context): save IA64 backing store as well.
48960         * eval.c (rb_thread_restore_context): restore IA64 backing store.
48962         * eval.c (THREAD_ALLOC): initialize IA64 members.
48964 Mon Aug 11 22:31:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48966         * lib/debug.rb(debug_command): inspection command should inspect
48967           resulting value even if it's nil.  [ruby-dev:21180] by OMAE, jun
48968           <jun66j5@ybb.ne.jp>.
48970         * lib/debug.rb(debug_command): incomplete regexp.
48972 Mon Aug 11 17:33:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48974         * eval.c (rb_call_super): do not use rb_block_given_p() for
48975           check. [ruby-talk:78656]
48977         * eval.c (BEGIN_CALLARGS): push ITER_NOT only when ITER_PRE.
48979 Sun Aug 10 10:43:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48981         * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE
48982           from 1k to 16k bytes. [ruby-talk:78603]
48984         * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable
48985           partial write to allow interruption in SSLSocket#write.
48987 Sun Aug 10 00:34:16 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48989         * cygwin/GNUmakefile: remove unnecessary '--drive-name=$(CC)'
48990           for ccache.
48992 Sat Aug  9 10:36:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48994         * marshal.c (w_object): do not dump generic instance variable when
48995           marshal_dump is defined.
48997 Sat Aug  9 00:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
48999         * ext/bigdecimal.c: F style output(like 1234.56789) implemented
49000           to to_s method.
49001         * ext/bigdecimal_??.html: F style output(like 1234.56789)
49002           implemented to to_s method.
49004 Fri Aug  8 12:33:17 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49006         * bcc32/Makefile.sub: rubyw.exe should be a Windows GUI program.
49007           add the -aa option to WLDFLAGS.
49009 Fri Aug  8 11:29:26 2003  Koji Arai  <jca02266@nifty.ne.jp>
49011         * marshal.c (w_object): should set `c_arg' at first.
49013 Fri Aug  8 03:22:28 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49015         * lib/webrick/httputils.rb (FormData#list): should not take
49016           a side effect for the receiver.
49018 Thu Aug  7 14:40:37 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49020         * cygwin/GNUmakefile: better --disbale-shared option support.
49022         * cygwin/GNUmakefile: add forwarding DLL target for cygwin.
49024 Thu Aug  7 14:21:05 2003  Corinna Vinschen  <vinschen@redhat.com>
49026         * configure.in: Fix Cygwin specific naming of libraries to
49027           be net distribution compliant. (ruby-bugs:PR#1077)
49028           cygwin-ruby18.dll -> cygruby18.dll
49030 Thu Aug  7 12:51:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49032         * eval.c (rb_f_at_exit): should not be called without a block.
49033           block_given check added.
49035 Thu Aug  7 06:46:06 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49037         * eval.c (rb_call0): forgot to pop ruby_class.
49039         * eval.c (rb_call0): update ruby_class as well as ruby_cref.
49040           (ruby-bugs-ja:PR#540)
49042 Thu Aug  7 04:52:50 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49044         * eval.c (rb_yield_0): remove ruby_frame->cbase and unify to
49045           ruby_cref.  [ruby-talk:78141]
49047 Thu Aug  7 04:19:15 2003  Akinori MUSHA  <knu@iDaemons.org>
49049         * gc.c: FreeBSD/ia64's mcontext_t is a bit different from that of
49050           Linux/ia64.  This makes gc.c compile but miniruby coredumps for
49051           the moment.
49053 Thu Aug  7 00:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49055         * ext/bigdecimal.c: Comparison results adjusted to Float's.
49056         * ext/bigdecimal.c: Use rb_num_coerce_????(x,y) instead of own.
49058 Wed Aug  6 22:58:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
49060         * lib/test/unit/testcase.rb: Added equality checking.
49061         * lib/test/unit/testsuite.rb: Added equality checking.
49062         * lib/test/unit/assertions.rb: Fixed a warning.
49064 Wed Aug  6 17:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49066         * ext/extmk.rb (extmake): pass LIBPATH to make ruby.  [ruby-dev:21137]
49068         * ext/extmk.rb (extmake): set library name as source file name in
49069           Init_ext().  [ruby-dev:21137]
49071         * lib/mkmf.rb (Logging::postpone): postpone logging messages after
49072           heading message as the result of the block.
49074         * lib/mkmf.rb (macro_defined?): append newline to src unless ended
49075           with it.
49077         * lib/mkmf.rb (have_library): treat nil function name as "main".
49078           (ruby-bugs:PR#1083)
49080         * lib/mkmf.rb (pkg_config): should append additional libraries to
49081           $libs but not $LIBS.  [ruby-dev:21137]
49083         * ext/io/wait/extconf.rb: check DOSISH macro instead of platform.
49085         * ext/digest/sha1/extconf.rb: have_library already appends library
49086           name.
49088 Wed Aug  6 17:23:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49090         * eval.c: initialize /* OK */ variables by Qnil to stop warnings.
49092 Wed Aug  6 04:58:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49094         * ext/Setup*: add io/wait and openssl.
49096 Wed Aug  6 01:13:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49098         * eval.c (rb_f_autoload): use ruby_cbase instead of ruby_class.
49100         * eval.c (rb_f_autoload_p): ditto.
49102         * class.c (rb_mod_init_copy): no longer implements independent
49103           clone and dup methods.  override "initialize_copy" instead.
49104           [ruby-core:01352]
49106         * object.c (rb_class_s_alloc): define Class allocation function.
49107           this makes Classes to follow clone framework that uses
49108           initialize_copy.
49110         * object.c (rb_class_initialize): separate instantiation and
49111           initialization.
49113         * object.c (rb_obj_alloc): prohibit instantiation from
49114           uninitialized class.
49116         * object.c (rb_class_superclass): check uninitialized class.
49118         * array.c (rb_ary_fill): wrong index processing with block.  this
49119           fix was done by Koji Arai <JCA02266@nifty.ne.jp> [ruby-list:38029]
49121         * marshal.c (w_object): should preserve generic ivar for nil,
49122           true, false, symbols, and fixnums.
49124         * marshal.c (w_uclass): base_klass check should be done after
49125           rb_class_real().
49127 Wed Aug  6 01:18:50 2003  Minero Aoki  <aamine@loveruby.net>
49129         * lib/net/http.rb: update document.
49131         * lib/net/pop.rb: ditto.
49133         * lib/net/protocol.rb: ditto.
49135 Wed Aug  6 00:48:37 2003  Koji Arai  <jca02266@nifty.ne.jp>
49137         * marshal.c (w_object): should recommend marshal_dump rather than
49138           _dump_data.
49140 Tue Aug  5 17:58:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49142         * lib/fileutils.rb (install): should preserve timestamp only.
49144 Tue Aug  5 17:31:59 2003  Ian Macdonald  <ian@caliban.org>
49146         * lib/shell/command-processor.rb (Shell::CommandProcessor::rmdir):
49147           simple typo.
49149 Tue Aug  5 15:47:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49151         * eval.c (rb_load): should preserve current source file/line.
49153 Tue Aug  5 10:04:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49155         * string.c (str_new4): ptr may refer null_str.
49157 Mon Aug  4 17:25:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49159         * stable version 1.8.0 released.
49161 For the changes before 1.8.0, see doc/ChangeLog-1.8.0
49163 Local variables:
49164 add-log-time-format: (lambda ()
49165   (let* ((time (current-time))
49166          (system-time-locale "C")
49167          (diff (+ (cadr time) 32400))
49168          (lo (% diff 65536))
49169          (hi (+ (car time) (/ diff 65536))))
49170   (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
49171 indent-tabs-mode: t
49172 tab-width: 8
49173 end: