* encoding.c (rb_filesystem_encoding): use default external encoding
[ruby-svn.git] / ChangeLog
blobf2d20969ef537a8b5d3b161cb97cfb98cb521a4e
1 Thu Aug 14 21:10:00 2008  Tanaka Akira  <akr@fsij.org>
3         * encoding.c (rb_filesystem_encoding): use default external encoding
4           for Unix.
6         * dir.c (dir_initialize): don't cache fs_encoding.
8 Thu Aug 14 20:58:57 2008  Tanaka Akira  <akr@fsij.org>
10         * transcode.c (rb_econv_open_by_transcoder_entries): renamed from
11           rb_trans_open_by_transcoder_entries.
13 Thu Aug 14 20:56:28 2008  Tanaka Akira  <akr@fsij.org>
15         * transcode.c (econv_max_output): removed.
17 Thu Aug 14 20:52:55 2008  Tanaka Akira  <akr@fsij.org>
19         * tool/transcode-tblgen.rb: check unexpected actions.
21 Thu Aug 14 20:25:52 2008  Tanaka Akira  <akr@fsij.org>
23         * transcode_data.h (transcode_invalid_byte_sequence): renamed from
24           transcode_invalid_input.
25           (transcode_destination_buffer_full): renamed from transcode_obuf_full.
26           (transcode_source_buffer_empty): renamed from transcode_ibuf_empty.
27           (rb_econv_result_t): renamed from rb_trans_result_t.
28           (rb_econv_elem_t): renamed from rb_trans_elem_t.
29           (rb_econv_t): renamed from rb_trans_t.
31         * transcode.c (UNIVERSAL_NEWLINE_DECODER): renamed from
32           UNIVERSAL_NEWLINE.
33           (CRLF_NEWLINE_ENCODER): renamed from CRLF_NEWLINE.
34           (CR_NEWLINE_ENCODER): renamed from CR_NEWLINE.
35           (rb_econv_open): renamed from rb_trans_open.
36           (rb_econv_close): renamed from rb_trans_close.
38 Thu Aug 14 19:41:42 2008  Tanaka Akira  <akr@fsij.org>
40         * transcode.c (load_transcoder): unused function removed.
41           (rb_transcoding_open): ditto.
43 Thu Aug 14 17:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45         * include/ruby/encoding.h (rb_enc_ispunct): added.
47         * common.mk (COMMONOBJS), inits.c (rb_call_inits): id.c is now
48           included from parse.c.
50         * id.c (Init_id), id.h (ruby_method_ids): added IDs used by VM.
52         * parse.y (global_symbols): added rooms for VM IDs.
54         * parse.y (rb_intern3, rb_id2str): single puctuation symbol is now
55           same as char code.
57 Thu Aug 14 17:46:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
59         * parse.y (union tmpyystype): no longer needed, since YYSTYPE is
60           defined in parse.h now.
62 Thu Aug 14 17:27:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
64         * version.c (Init_version): add RUBY_ENGINE constant.
66 Thu Aug 14 15:34:10 2008  Tanaka Akira  <akr@fsij.org>
68         * transcode.c (rb_econv_conv): new function.  it doesn't consume
69           input too much, even for multilevel conversion.
70           (transcode_loop): use rb_econv_conv.
71           (econv_primitive_convert): ditto.
73 Thu Aug 14 15:27:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
75         * include/ruby/defines.h (RUBY_ALIAS_FUNCTION): fallback definition.
77 Thu Aug 14 15:08:17 2008  Tanaka Akira  <akr@fsij.org>
79         * transcode_data.h (rb_trans_result_t): new enumeration constant:
80           transcode_output_followed_by_input.
82         * transcode.c (OUTPUT_FOLLOWED_BY_INPUT): new flag.
83           (transcode_restartable0): suspend when output followed by input if
84           OUTPUT_FOLLOWED_BY_INPUT is specified.
85           (trans_sweep): check OUTPUT_FOLLOWED_BY_INPUT.
86           (rb_trans_conv): support OUTPUT_FOLLOWED_BY_INPUT.
87           (econv_primitive_convert): return :output_followed_by_input for
88           transcode_output_followed_by_input.
90 Thu Aug 14 14:57:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
92         * gc.c (getrusage_time): should return the value.
94         * thread.c (rb_thread_priority_set): get rid of C99 feature.
96         * transcode.c (transcode_search_path): ditto.
98         * vm.c (REWIND_CFP): get rid of statement expressions.
100 Thu Aug 14 14:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
102         * vm.c (Init_VM): hide FrozenCore.
104 Thu Aug 14 12:20:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
106         * transcode.c (load_transcoder): suppress warning.
108         * missing/vsnprintf.c (BSD_vfprintf): ditto.
110 Thu Aug 14 12:01:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
112         * configure.in (gnumake): check for GNU make.
114         * Makefile.in (uncommon.mk): includes filtered common.mk.
116         * common.mk (parse.h): workaround for nmake.
118 Thu Aug 14 06:09:12 2008  Koichi Sasada  <ko1@atdot.net>
120         * thread.c (rb_thread_execute_interrupts): switch event
121           should be occur only once.
123 Thu Aug 14 05:36:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
125         * common.mk: parse.h depends on parse.c.
127         * common.mk: hash.o depends on $(ID_H_INCLUDES).
129 Thu Aug 14 02:45:16 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
131         * test/ruby/test_file_exhaustive.rb (TestFileExhaustive#setup):
132           set group of tmpdir.  [ruby-dev:35633]
134 Thu Aug 14 15:50:30 2008  Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
136         * hash.c (set_default): fix rdoc.  #441
138 Thu Aug 14 02:23:31 2008  Tanaka Akira  <akr@fsij.org>
140         * transcode.c (econv_primitive_convert): add output_byteoffset
141           argument.
143 Thu Aug 14 00:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
145         * configure.in (rb_cv_gcc_function_alias): checks alias attribute.
147         * string.c (alias_func): replaced with RUBY_ALIAS_FUNCTION.
149 Wed Aug 13 23:42:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
151         * common.mk (parse.h): fake rule.
153 Wed Aug 13 23:15:58 2008  Shugo Maeda  <shugo@ruby-lang.org>
155         * test/ruby/test_thread.rb (test_list): call Thread.pass to run t1.
156           fixed [ruby-core:18264].
158 Wed Aug 13 23:05:51 2008  TAKAO Kouji  <kouji@takao7.net>
160         * string.c (alias_func): changed to 'weak, alias' from 'alias' for
161           Mac OSX. (closes #429)
163 Wed Aug 13 19:40:12 2008  Koichi Sasada  <ko1@atdot.net>
165         * gc.c: count only freed object as freelist size.
167 Wed Aug 13 18:34:22 2008  Shugo Maeda  <shugo@ruby-lang.org>
169         * marshal.c (marshal_load): set arg.untrust properly.
171 Wed Aug 13 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
173         * transcode.c (econv_inspect): new method.
175 Wed Aug 13 17:35:58 2008  Tanaka Akira  <akr@fsij.org>
177         * transcode.c (transcode_restartable0): several local variables
178           removed.
180 Wed Aug 13 17:35:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
182         * hash.c (rb_hash_set_default_proc): add new method.  a patch from
183           Giuseppe Bilotta.  #419
185 Wed Aug 13 17:31:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
187         * vm_insnhelper.c (caller_setup_args): should ensure if the value
188           from to_proc is a real Proc.
190 Wed Aug 13 17:28:29 2008  Akinori MUSHA  <knu@iDaemons.org>
192         * common.mk: regint.h no longer includes vm_core.h.
194 Wed Aug 13 17:26:44 2008  Tanaka Akira  <akr@fsij.org>
196         * transcode_data.h (rb_transcoding): add fields: writebuf_off,
197           writebuf_len and writebuf.
198           (TRANSCODING_WRITEBUF): new macro.
200         * transcode.c (transcode_restartable0): output until output buffer is
201           really full.
202           (rb_transcoding_open_by_transcoder): initialize writebuf_len,
203           writebuf_off and writebuf.
204           (rb_transcoding_close): finalize writebuf.
206 Wed Aug 13 17:18:37 2008  Koichi Sasada  <ko1@atdot.net>
208         * thread.c (rb_thread_check_ints): added.  please note that
209           this function may cause ruby's thread switching.
211         * include/ruby/intern.h: ditto.
213         * regint.h: use rb_thread_check_ints() instead of
214           RUBY_CHECK_INTS() directly.
216 Wed Aug 13 17:01:36 2008  Akinori MUSHA  <knu@iDaemons.org>
218         * golf_prelude.rb, lib/set.rb (TC_Set#test_each),
219           test/readline/test_readline_history.rb (Readline#test_each__enumerator),
220           test/ruby/test_array.rb (TestArray#test_collect),
221           test/ruby/test_enumerator.rb (TestEnumerator#test_initialize):
222           Enumerable::Enumerator is now called Enumerator.
224         * lib/rinda/tuplespace.rb (Rinda::TupleBag#initialize): Use
225           enum_for instead of hardcoding Enumerable::Enumerator.
227 Wed Aug 13 16:40:57 2008  Koichi Sasada  <ko1@atdot.net>
229         * thread.c, vm_core.h: add manual priority support
230           using time slice.  if you enable USE_NATIVE_THREAD_PRIORITY
231           macro, this mechanism is ignored.  [ruby-dev:33124]
233         * thread_pthread.c, thread_win32.c: ditto.
235         * test/ruby/test_thread.rb: fix test parameter.
237 Wed Aug 13 16:02:14 2008  Shugo Maeda  <shugo@ruby-lang.org>
239         * object.c (rb_obj_untrusted): new method Object#untrusted?.
240           (rb_obj_untrust): new method Object#untrust.
241           (rb_obj_trust): new method Object#trust.
243         * array.c, debug.c, time.c, include/ruby/ruby.h, re.c, variable.c,
244           string.c, io.c, dir.c, vm_method.c, struct.c, class.c, hash.c,
245           ruby.c, marshal.c: fixes for Object#untrusted?.
247         * test/ruby/test_module.rb, test/ruby/test_array.rb,
248           test/ruby/test_object.rb, test/ruby/test_string.rb,
249           test/ruby/test_marshal.rb, test/ruby/test_hash.rb: added tests for
250           Object#untrusted?.
252 Wed Aug 13 16:13:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
254         * test/ruby/test_m17n.rb: follow EncodingCompatibilityError.
256         * test/ruby/test_mixed_unicode_escapes.rb: ditto.
258         * test/ruby/enc/test_utf16.rb: ditto.
260 Wed Aug 13 16:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
262         * time.c (time_cmp): retry with right hand operand if its not a
263           time object.  [ruby-dev:35011]
265 Wed Aug 13 15:51:22 2008  Akinori MUSHA  <knu@iDaemons.org>
267         * string.c: Apply a temporary fix to fix build on OS X.  A real
268           fix will follow later.
270 Wed Aug 13 15:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
272         * enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator to
273           just Enumerator.
275 Wed Aug 13 15:13:57 2008  Akinori MUSHA  <knu@iDaemons.org>
277         * common.mk (prelude.c, golf_prelude.c): Using $(COMPILE_PRELUDE)
278           requires $(RBCONFIG).
280 Wed Aug 13 15:08:04 2008  Tanaka Akira  <akr@fsij.org>
282         * transcode.c (econv_init): make flags argument optional.
283           (econv_primitive_convert): ditto.
285 Wed Aug 13 14:55:27 2008  Akinori MUSHA  <knu@iDaemons.org>
287         * common.mk (realclean-local): Remove parse.h as well.
289         * common.mk: Add missing dependencies regarding vm_core.h, id.h,
290           parse.c (parse.h), etc..
292 Wed Aug 13 14:45:37 2008  Tanaka Akira  <akr@fsij.org>
294         * enc/trans/newline.trans (rb_crlf_newline): new transcoder.
295           (rb_cr_newline): new transcoder.
297         * transcode.c (trans_open_i): one more exra room for input newline
298           converter.
299           (rb_trans_open): crlf newline and cr newline implemented.
300           (Init_transcode): Encoding::Converter::CRLF_NEWLINE and
301           Encoding::Converter::CR_NEWLINE defined.
303 Wed Aug 13 14:22:16 2008  Tanaka Akira  <akr@fsij.org>
305         * enc/trans/newline.trans: new file.
307         * transcode_data.h (rb_trans_t): add last_tc field.
309         * transcode.c (UNIVERSAL_NEWLINE): defined.
310           (CRLF_NEWLINE): defined.
311           (CR_NEWLINE): defined.
312           (rb_trans_open_by_transcoder_entries): initialize last_tc.
313           (trans_open_i): allocate one more room for output newline converter.
314           (rb_trans_open): universal newline implemented.
315           (more_output_buffer): take max_output argument instead ts.
316           (output_replacement_character): take tc argument instead of ts.
317           (transcode_loop): use last_tc field.
318           (econv_init): add flags argument for rb_trans_open.
319           (Init_transcode): Encoding::Converter::UNIVERSAL_NEWLINE defined.
321 Wed Aug 13 14:00:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
323         * common.mk (parse.c): generates parse.h together.
325         * id.c, id.h: use constants for parser tokens.
327 Wed Aug 13 13:47:05 2008  Koichi Sasada  <ko1@atdot.net>
329         * vm.c: rewind cfp to show proper backtrace.
330           [ruby-dev:35820]
332 Wed Aug 13 13:09:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
334         * tool/make-snapshot: fix for clean up.
336 Wed Aug 13 11:45:51 2008  Akinori MUSHA  <knu@iDaemons.org>
338         * vm_core.h: Declare rb_iseq_clone, which is used in class.c.
340 Wed Aug 13 11:39:19 2008  Tanaka Akira  <akr@fsij.org>
342         * transcode.c (transcode_search_path): return the length of converter
343           path.
344           (load_transcoder_entry): renamed from load_transcoder.
345           (load_transcoder): new function for loding transcoder by encoding
346           names.
347           (rb_transcoding_open_by_transcoder): extracted from
348           rb_transcoding_open.
349           (rb_transcoding_open): use load_transcoder and
350           rb_transcoding_open_by_transcoder.
351           (rb_trans_open_by_transcoder_entries): new function.
352           (trans_open_i): construct entries array.
353           (rb_trans_open): use rb_trans_open_by_transcoder_entries.
355 Wed Aug 13 10:45:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
357         * tool/make-snapshot: try to find exported directory.
359 Wed Aug 13 10:16:35 2008  TAKAO Kouji  <kouji@takao7.net>
361         * doc/NEWS: Mention the Readline.vi_editing_mode?,
362           Readline.emacs_editing_mode?, Readline::HISTORY[] and
363           Readline::HISTORY.clear change.
365 Wed Aug 13 08:03:02 2008  Tanaka Akira  <akr@fsij.org>
367         * transcode.c (econv_primitive_convert): add output_size argument.
369 Wed Aug 13 07:41:03 2008  Tanaka Akira  <akr@fsij.org>
371         * transcode.c (rb_trans_conv): report last transcode_obuf_full.
372           (econv_max_output): new method Encoding::Converter#max_output.
374 Wed Aug 13 02:46:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
376         * error.c (rb_eEncCompatError): add Exception.
378         * include/ruby/ruby.h: ditto.
380         * encoding.c (rb_enc_check): use rb_eEncCompatError.
382         * string.c (rb_enc_cr_str_buf_cat): ditto.
384         * string.c (rb_str_sub_bang): ditto.
386         * string.c (rb_str_hex): ditto.
388         * string.c (rb_str_oct): ditto.
390 Wed Aug 13 02:36:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
392         * transcode.c (str_transcode): fix error message.
394 Tue Aug 12 23:42:31 2008  Tanaka Akira  <akr@fsij.org>
396         * transcode.c (rb_cEncodingConverter): new class Encoding::Converter.
397           (econv_free): new function.
398           (econv_s_allocate): ditto.
399           (econv_init): ditto.
400           (check_econv): ditto.
401           (econv_primitive_convert): new method.
402           (Init_transcode): define Encoding::Converter.
404 Tue Aug 12 23:16:09 2008  Tanaka Akira  <akr@fsij.org>
406         * string.c (rb_str_splice_0): call rb_str_drop_bytes, not rb_str_drop.
408 Tue Aug 12 19:11:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
410         * tool/make-snapshot: fix for enc.mk.
412 Tue Aug 12 19:08:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
414         * string.c (rb_str_drop_bytes): new function to drop first bytes.
416 Tue Aug 12 18:58:48 2008  Koichi Sasada  <ko1@atdot.net>
418         * vm.c, vm_insnhelper.c (vm_define_method): move
419           function place.
421 Tue Aug 12 18:56:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
423         * string.c: more descriptive aliases of rb_str_new[2-5].
424           [ruby-dev:35615]
426 Tue Aug 12 18:51:29 2008  TAKAO Kouji  <kouji@takao7.net>
428         * gc.c (getrusage_time): Returned effective value on Windows.
430 Tue Aug 12 18:51:11 2008  Tanaka Akira  <akr@fsij.org>
432         * transcode.c (rb_trans_open): free ts before raise.
434 Tue Aug 12 18:46:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
436         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): should not ignore
437           <=> comparison.  [ruby-dev:35732]
439 Tue Aug 12 18:43:10 2008  Tanaka Akira  <akr@fsij.org>
441         * enc/trans/make_transdb.rb: *.erb.c is not used anymore.
443 Tue Aug 12 18:32:33 2008  Tanaka Akira  <akr@fsij.org>
445         * transcode_data.h (rb_trans_elem_t): new field: from and to.
447         * transcode.c (trans_open_i): just record from and to.
448           (rb_trans_open): load transcodings.
450 Tue Aug 12 18:32:03 2008  Akinori MUSHA  <knu@iDaemons.org>
452         * ext/syslog/syslog.c (mSyslog_open): Use of Check_SafeStr() is
453           deprecated.
454           (mSyslogConstants_LOG_MASK, mSyslogConstants_LOG_UPTO): Use
455           NUM2INT() instead of FIX2INT() when the type of an given object
456           is not determined.
458 Tue Aug 12 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
460         * tool/transcode-tblgen.rb (#transcode_tblgen): slight message
461           improvement.
463 Tue Aug 12 17:16:58 2008  Tanaka Akira  <akr@fsij.org>
465         * transcode.c (trans_open_i): check the result of rb_transcoding_open.
467 Tue Aug 12 16:23:32 2008  Narihiro Nakamura  <authorNari@gmail.com>
469         * gc.c (gc_profile_result): use rb_str_catf.
471 Tue Aug 12 16:13:45 2008  Tanaka Akira  <akr@fsij.org>
473         * transcode_data.h (TRANSCODE_ERROR): removed.
475         * tool/transcode-tblgen.rb: 8bit byte of ASCII-8BIT is a valid
476           (but unique to ASCII-8BIT) character.
478         * transcode.c (rb_eConversionUndefined): new error.
479           (rb_eInvalidByteSequence): ditto.
481 Tue Aug 12 16:08:51 2008  Minero Aoki  <aamine@loveruby.net>
483         * lib/net/pop.rb: POP3Command should export @socket since POP
484           calls #socket.
486 Tue Aug 12 16:06:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
488         * sprintf.c, util.c (quorem, nrv_alloc, dtoa): enabled floating point
489           support.
491 Tue Aug 12 15:52:45 2008  Narihiro Nakamura  <authorNari@gmail.com>
493         * gc.c (gc_profile_result): use sprintf.
495 Tue Aug 12 15:37:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
497         * string.c (rb_str_intern): should check symbol table overflow.
499 Tue Aug 12 15:31:04 2008  Minero Aoki  <aamine@loveruby.net>
501         * lib/net/http.rb (send_request_with_body): Content-Length should
502           be byte length of string. (closes #203)
504 Tue Aug 12 15:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
506         * enc/depend: (transvpath_prefix): prefix has no extension, so replace
507           %s with "".
509 Tue Aug 12 15:03:43 2008  TAKAO Kouji  <kouji@takao7.net>
511         * test/readline/test_readline.rb (TestReadline#test_safe_level_4):
512           tested Readline.vi_editing_mode? and Readline.emacs_editing_mode?.
514 Tue Aug 12 14:25:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
516         * enc/Makefile.in (.SUFFIXES): renamed to .trans.
518         * enc/make_encmake.rb: added --encs and --no-encs options.
520         * enc/depend (TRANSVPATH): fix for nmake.
522 Tue Aug 12 14:19:53 2008  Minero Aoki  <aamine@loveruby.net>
524         * lib/net/https.rb: supress syntax warning.
526 Tue Aug 12 14:15:51 2008  Minero Aoki  <aamine@loveruby.net>
528         * lib/net/http.rb (Net::HTTP#initialize): initialize net/https
529           variables to supress syntax warning.
531 Tue Aug 12 14:15:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
533         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): fixed shadowing variable.
535 Tue Aug 12 10:25:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
537         * array.c (rb_ary_delete): Array#delete to return deleted element.
539 Tue Aug 12 10:18:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
541         * test/win32ole/test_err_in_callback.rb: do not require 'mkmf'
542           unless WIN32OLE is defined.
544 Tue Aug 12 07:41:13 2008  Tanaka Akira  <akr@fsij.org>
546         * transcode_data.h (rb_transcoder): add resetstate_func field for
547           resetting a state of stateful encoding.
549         * enc/trans/iso2022.trans (rb_EUC_JP_to_ISO_2022_JP): specify
550           finish_eucjp_to_iso2022jp for resetstate_func.
552         * tool/transcode-tblgen.rb: specify NULL for resetstate_func.
554         * transcode.c (output_replacement_character): call resetstate_func
555           before appending the replacement character.
557 Tue Aug 12 07:19:24 2008  Tanaka Akira  <akr@fsij.org>
559         * transcode.c (get_replacement_character): extracted from
560           output_replacement_character.
562 Tue Aug 12 07:00:02 2008  Tanaka Akira  <akr@fsij.org>
564         * transcode_data.h (rb_transcoder): typedef at first.
566 Tue Aug 12 06:48:35 2008  Tanaka Akira  <akr@fsij.org>
568         * transcode.c (rb_trans_conv): find second last error.
570 Tue Aug 12 00:43:44 2008  Tanaka Akira  <akr@fsij.org>
572         * transcode_data.h (rb_trans_result_t): new type.
573           (rb_trans_elem_t): new type.
574           (rb_trans_t): new type.
576         * transcode.c (transcode_dispatch_cb): removed.
577           (transcode_dispatch): removed.
578           (rb_transcoding_result_t): moved to rb_trans_result_t in
579           transcode_data.h.
580           (transcode_restartable0): goto follow_info when FUNsi.
581           (rb_transcoding_open): use get_transcoder_entry.
582           (rb_trans_open): new function.
583           (rb_trans_conv): ditto.
584           (rb_trans_close): ditto.
585           (trans_open_i): ditto.
586           (trans_sweep): ditto.
587           (more_output_buffer): take rb_trans_t instead of rb_transcoding as
588           an argument.
589           (transcode_loop): take from_encoding and to_encoding instead of tr
590           as arguments.  use rb_trans_open/rb_trans_conv/rb_trans_close.
591           (str_transcode): don't use transcode_dispatch.
593 Mon Aug 11 20:37:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
595         * iseq.c (rb_iseq_clone): should preserve cref_stack link.
597 Mon Aug 11 20:27:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
599         * ext/dl/cfunc.c (rb_dlcfunc_call): add taint check.
601         * ext/dl/dl.c (rb_dl_malloc): add rb_secure(2).
603         * ext/dl/dl.c (rb_dl_realloc): ditto.
605         * ext/dl/dl.c (rb_dl_free): ditto.
607         * ext/dl/dl.c (rb_dl_ptr2value): ditto.
609 Mon Aug 11 20:11:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
611         * gc.c (getrusage_time): works only if RUSAGE_SELF is defined right
612           now.
614         * gc.c (gc_profile_result): C99.
616 Mon Aug 11 18:57:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
618         * array.c (rb_ary_sample): rename #choice to #sample.  in
619           addition, sample takes optional argument, a la #first.
621 Mon Aug 11 18:28:02 2008  Narihiro Nakamura  <authorNari@gmail.com>
623         * gc.c: added GC::Profiler.
625 Mon Aug 11 17:26:16 2008  TAKAO Kouji  <kouji@takao7.net>
627         * ext/readline/README.ja: added API document for
628           Readline.vi_editing_mode? and Readline.emacs_editing_mode?.
630         * ext/readline/extconf.rb: checked rl_editing_mode variable in
631           Readline library.
633         * ext/readline/readline.c (readline_s_emacs_editing_mode_p): added
634           Readline.emacs_editing_mode? method.
635           (readline_s_vi_editing_mode_p): added Readline.vi_editing_mode?
636           method.
637           (Init_readline): ditto.
639 Mon Aug 11 16:56:40 2008  TAKAO Kouji  <kouji@takao7.net>
641         * test/readline/test_readline.rb: added test for Readline's class
642           methods.
644 Mon Aug 11 16:39:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
646         * class.c (clone_method): should copy cbase in cref as well.
647           [ruby-dev:35116]
649         * iseq.c (iseq_mark): mark original iseq object.
651         * iseq.c (iseq_free): do not free internal data if they have
652           original iseq to belong.
654         * iseq.c (rb_iseq_clone): a new function to clone iseq value.
656 Mon Aug 11 16:34:48 2008  Tanaka Akira  <akr@fsij.org>
658         * enc/trans/iso2022.trans: renamed from iso2022.erb.c.
660         * enc/trans/single_byte.trans: ditto.
662         * enc/trans/utf_16_32.trans: ditto.
664         * enc/trans/korean.trans: ditto.
666         * enc/trans/japanese.trans: ditto.
668         * enc/depend: follow the renaming.
670         * tool/build-transcode: ditto.
672 Mon Aug 11 15:09:23 2008  Tanaka Akira  <akr@fsij.org>
674         * configure.in (rb_cv_broken_glibc_ia64_erfc): renamed from
675           rb_broken_glibc_ia64_erfc.
676           [ruby-core:18228]
678 Mon Aug 11 10:04:34 2008  Tanaka Akira  <akr@fsij.org>
680         * transcode_data.h (rb_transcoding): rename fields.
681           readlen -> recognized_len.
682           feedlen -> readagain_len.
684         * transcode.c: follow the field renaming.
686 Sun Aug 10 22:34:55 2008  Tanaka Akira  <akr@fsij.org>
688         * transcode.c (transcode_restartable0): invalid handling simplified.
689           (transcode_restartable): use PARTIAL_INPUT for converting buffered
690           input.
692 Sun Aug 10 22:24:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
694         * encoding.c: include util.h.  [ruby-dev:35715]
696         * common.mk: ditto.
698 Sun Aug 10 20:59:54 2008  Tanaka Akira  <akr@fsij.org>
700         * transcode_data.h (rb_transcoding): new field: flags.
702         * transcode.c (load_transcoder): extracted from transcode_dispatch_cb.
703           (rb_transcoding_result_t): renamed from transcode_result_t.
704           (rb_transcoding_open): new function.
705           (rb_transcoding_convert): ditto.
706           (rb_transcoding_close): ditto.
707           (transcode_loop): use rb_transcoding_open, rb_transcoding_convert
708           and rb_transcoding_close.
709           (str_transcode): don't need rb_transcoding.
711 Sun Aug 10 18:09:16 2008  Tanaka Akira  <akr@fsij.org>
713         * tool/transcode-tblgen.rb: record checksum of
714           transcode-tblgen.rb itself.
716 Sun Aug 10 12:34:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
718         * config.guess ({powerpc-apple,i586-pc}-haiku): re-applied r18403.
719           [ruby-core:18110]
721         * config.{guess,sub}: updated to automake-1.10.1.
723 Sun Aug 10 11:45:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
725         * enc/Makefile.in (make-workdir): use MAKEDIRS.
727         * enc/depend: makes target directory before compile/link.
729         * tool/transcode-tblgen.rb: creates target directory.
731 Sun Aug 10 11:30:48 2008  Tanaka Akira  <akr@fsij.org>
733         * transcode.c: rename my_transcoding to tc and my_transcoder to tr.
735 Sun Aug 10 11:15:55 2008  Tanaka Akira  <akr@fsij.org>
737         * transcode_data.h (rb_transcoding): add feedlen field.
739         * transcode.c (transcode_restartable0): renamed from
740           transcode_restartable.
741           save input buffer into feed buffer if next character is started the
742           point before input buffer.  for example, "\x00\xd8\x01" then "\x02"
743           in UTF-16LE.  \x02 causes invalid and next character is started from
744           \x01.
745           (transcode_restartable): new function to call
746           transcode_restartable0.  if feed buffer is not empty, convert it at
747           first.
749 Sun Aug 10 11:02:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
751         * common.mk (extconf): use MAKEDIRS.
753 Sun Aug 10 09:35:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
755         * lib/irb.rb (IRB::Irb#inspect): instance_variables returns symbols
756           instead of strings now.  [ruby-dev:34930]
758 Sun Aug 10 09:22:14 2008  Tanaka Akira  <akr@fsij.org>
760         * transcode.c (transcode_char_start): refactored to remove readlen
761           argument.
762           (transcode_restartable): refactored to remove readlen variable.
764 Sun Aug 10 08:56:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
766         * gc.c (STACK_LEVEL_MAX, ruby_stack_length): returns size_t.
767           [ruby-core:18207]
769         * configure.in (rb_cv_missing__dtos18, rb_cv_missing_fconvert),
770           ext/digest/md5/md5.c, ext/openssl/ossl.c (main),
771           ext/socket/extconf.rb (ipv6, wide-getaddrinfo): main should be int.
773         * main.c (main), win32/winmain.c, wince/wincemain.c (WinMain): envp is
774           no longer used so long time.  based on a patch from Peter Bowen at
775           [ruby-core:18208]
777 Sat Aug  9 22:05:29 2008  Tanaka Akira  <akr@fsij.org>
779         * transcode.c (transcode_loop): take destination and resize function
780           as parameters.
781           (more_output_buffer): ditto.
782           (str_transcoding_resize): argument changed from rb_transcoding* to
783           VALUE.
784           (str_transcode): call transcode_loop with destination string and its
785           resize function.
787         * transcode_data.h (rb_transcoding): move ruby_string_dest and
788           flush_func to transcode_loop parameters.
790 Sat Aug  9 21:29:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
792         * common.mk: encs depend on transdb.h
794 Sat Aug  9 21:10:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
796         * configure.in (rb_cv_rshift_sign, rb_cv_binary_elf): get rid of
797           AC_TRY_RUN.
799 Sat Aug  9 16:33:21 2008  Tanaka Akira  <akr@fsij.org>
801         * transcode_data.h (rb_transcoding): new fields: next_info and next_byte.
803         * transcode.c (transcode_restartable): save/restore next_info and
804           next_byte.
805           sync readlen and in_p when invalid.
807 Sat Aug  9 15:10:15 2008  Tanaka Akira  <akr@fsij.org>
809         * transcode.c (transcode_restartable): my_transcoder argument removed.
810           (transcode_loop): my_transcoder argument removed.
812 Sat Aug  9 14:39:34 2008  Tanaka Akira  <akr@fsij.org>
814         * transcode_data.h (rb_transcoding): add fields for restartable
815           transcoding.
816           (rb_transcoder): add max_input field.
817           from_unit_length field is renamed to input_unit_length.
819         * tool/transcode-tblgen.rb: generate max_input field.
821         * enc/trans/iso2022.erb.c: follow rb_transcoder change.
823         * enc/trans/utf_16_32.erb.c: ditto.
825         * transcode.c (PARTIAL_INPUT): new constant.
826           (transcode_char_start): new function.
827           (transcode_result_t): new type.
828           (transcode_restartable): new function.
829           (more_output_buffer): new function.
830           (transcode_loop): use transcode_restartable.
832 Sat Aug  9 13:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
834         * stable/ext/socket/socket.c (NI_MAXHOST, NI_MAXSERV): fixed invalid
835           preprocessor directives.  a patch from Peter Bowen at
836           [ruby-core:18211].
838 Sat Aug  9 06:37:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
840         * enc/make_encdb.rb, enc/trans/make_transdb.rb: skip nonexistent
841           directory.  [ruby-dev:35802]
843 Sat Aug  9 01:07:51 2008  Tanaka Akira  <akr@fsij.org>
845         * enc/trans/utf_16_32.erb.c (fun_so_from_utf_32le): implemented.
846           (fun_so_to_utf_32le): implemented.
847           [ruby-dev:35777]
849 Sat Aug  9 00:42:33 2008  Tanaka Akira  <akr@fsij.org>
851         * transcode_data.h (rb_transcoder): from_unit_length field added.
852           from_utf8 field removed.
854         * tool/transcode-tblgen.rb: generate offsets range.
855           follow rb_transcoder change.
857         * transcode.c (transcode_loop): don't use from_utf8.
858           make invalid region from_unit_length wise.
860         * enc/trans/iso2022.erb.c: follow rb_transcoder and
861           transcode_generate_node change.
863         * enc/trans/utf_16_32.erb.c: follow rb_transcoder and
864           transcode_generate_node change.
865           explicit :invalid map removed.
867 Fri Aug  8 23:29:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
869         * enc/depend (TRANSCSRCS): needs rule_subst to apply.
871         * io.c (shutdown): not define if defined already.
873 Fri Aug  8 22:47:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
875         * vm_insnhelper.c (opt_eq_func): large function to make inline.
877         * bcc32/Makefile.sub (config.h): cannot compile a big inline function.
879 Fri Aug  8 21:09:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
881         * common.mk (enk.mk): give not RUBY but MINIRUBY.
883 Fri Aug  8 17:03:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
885         * configure.in (shutdown, sched_yield, pthread_attr_setinheritsched):
886           check for Haiku.
888         * eval_intern.h, io.c, thread_pthread.c: use autoconfisticated results.
890 Fri Aug  8 16:52:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
892         * common.mk (enc.mk): mkmf.rb requires rbconfig.rb.
894         * common.mk (srcs-enc): renamed from transcodes.
896         * enc/Makefile.in (make-workdir): creates object directories.
898         * common.mk (encdb.h): see both $(srcdir)/enc and enc.
900         * enc/make_encdb.rb: ditto.
902         * enc/trans/make_transdb.rb: fix for the case no transdirs are given.
904         * enc/trans/make_transdb.rb: converts only one transcoders for each
905           basename.
907 Fri Aug  8 10:53:52 2008  Tanaka Akira  <akr@fsij.org>
909         * lib/resolv.rb: randomize source port and transaction id.
910           CVE-2008-1447.
912         * lib/resolv-replace.rb (UDPSocket#bind): don't resolv host if host is
913           "".
915 Fri Aug  8 04:20:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
917         * common.mk: see both $(srcdir)/enc/trans and enc/trans.
919         * enc/trans/make_transdb.rb: ditto.
921 Fri Aug  8 00:05:02 2008  TAKAO Kouji  <kouji@takao7.net>
923         * ext/.document: added readline/readline.c.
925         * ext/readline/readline.c: changed Copyright. added RDoc.
927         * ext/readline/README.ja: fixed typo.
929         * ext/readline/README: contents was moved RDoc.
931 Thu Aug  7 23:43:11 2008  Tanaka Akira  <akr@fsij.org>
933         * transcode_data.h (rb_transcoding): new field "stateful".
934           (rb_transcoder): preprocessor and postprocessor field removed.
935           change arguments of func_ii, func_si, func_io and func_so.
936           new field "finish_func".
938         * tool/transcode-tblgen.rb: make FUNii, FUNsi and FUNio
939           generatable.
941         * transcode.c (transcoder_lib_table): removed.
942           (transcoder_table): change structure.
943           (transcoder_key): removed because the above structure change.
944           (make_transcoder_entry): new function.
945           (get_transcoder_entry): ditto.
946           (rb_register_transcoder): follow the structure change.
947           (declare_transcoder): ditto.
948           (transcode_search_path): new function for breadth first search to
949           find a list of converters.
950           (transcode_search_path_i): new function.
951           (transcode_dispatch_cb): ditto.
952           (transcode_dispatch): use transcode_search_path.
953           (transcode_loop): follow the argument change.
954           (str_transcode): preprocessor and postprocessor stuff removed.
956         * enc/trans/iso2022.erb.c: new file.  ISO-2022-JP conversion
957           re-implemented.
959         * enc/trans/japanese.erb.c: ISO-2022-JP stuff removed.
961         * enc/trans/utf_16_32.erb.c: follow argument change of FUNso.
963         [ruby-dev:35798]
965 Thu Aug  7 22:55:44 2008  TAKAO Kouji  <kouji@takao7.net>
967         * ext/readline/README.ja: updated API document for Readline module.
969 Thu Aug  7 20:52:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
971         * lib/net/ftp.rb (login): raise FTPReplyError if passwd or acct
972           is not supplied.  fixed [ruby-core:18058].
974 Thu Aug  7 18:01:44 2008  Akinori MUSHA  <knu@iDaemons.org>
976         * misc/ruby-mode.el (ruby-imenu-create-index-in-block): Fix the
977           regexp to only pick definition lines properly.  `module_funtion'
978           is not a definition of a module named `_function'.
980 Thu Aug  7 17:47:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
982         * enc/depend: add transdb.c.
984 Thu Aug  7 16:28:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
986         * Makefile.in, common.mk, {bcc,win}32/Makefile.sub (clean-ext): do not
987           use miniruby.
989 Thu Aug  7 14:17:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
991         * enc/depend: removed needless explicit commands.
993         * lib/mkmf.rb, {bcc32,win32}/Makefile.sub (CLEANLIBS, CLEANOBJS):
994           moved clean targets to platfrom makefiles.
996 Thu Aug  7 13:12:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
998         * ext/socket/getaddrinfo.c (gai_strerror): ignore only on Haiku.
999           a patch from <zn at mbf.nifty.com>, [ruby-dev:35796].
1001 Thu Aug  7 06:31:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1003         * test/ruby/process.rb (test_popen_fork): skip a test which is
1004           freeze in FreeBSD.
1006 Thu Aug  7 06:05:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1008         * config.guess: add powerpc-apple-haiku, i586-pc-haiku.
1009           see [ruby-core:18110]
1011 Thu Aug  7 05:51:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1013         * eval_intern.h: Add support to Haiku. see [ruby-core:18110]
1015         * include/ruby/defines.h: ditto.
1017         * configure.in: ditto.
1019         * thread_pthread.c: ditto.
1021         * io.c: ditto.
1023         * lib/mkmf.rb: ditto.
1025         * ext/socket/getaddrinfo.c: ditto.
1027         * ext/socket/extconf.rb: ditto.
1029         * ext/socket/socket.c: ditto.
1031         * ext/socket/addrinfo.h: ditto.
1033         * ext/socket/getnameinfo.c: ditto.
1035 Thu Aug  7 05:43:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1037         * common.mk: mkdir enc/trans before build tables.
1039 Thu Aug  7 05:18:30 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1041         * enc/depend: enc/*.c is source but enc/trans/*.c is generated.
1043 Thu Aug  7 05:14:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1045         * regenc.c (code_to_mbc): raise RangeError Integer#chr
1046           when more than 255 is given with single byte encoding.
1047           [ruby-dev:35789]
1049 Thu Aug  7 05:06:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1051         * gc.c (run_final): runs finalizers with the object terminated.
1053         * gc.c (rb_gc_call_finalizer_at_exit): keeps finalized objects from
1054           linking to freelist.
1056 Thu Aug  7 04:43:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1058         * enc/depend: for build in other than srcdir.
1060 Wed Aug  6 22:40:48 2008  Tanaka Akira  <akr@fsij.org>
1062         * tool/transcode-tblgen.rb (transcode_generate_node): code
1063           argument removed.
1065 Wed Aug  6 21:25:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1067         * gc.c (chain_finalized_object): deletes finalizers to be invoked from
1068           finalizer_table.
1070         * gc.c (rb_gc_call_finalizer_at_exit): warns when could not invoke
1071           finalizers.
1073 Wed Aug  6 20:56:43 2008  Tanaka Akira  <akr@fsij.org>
1075         * enc/depend: transcode table generation depends on
1076           tool/transcode-tblgen.rb.
1078 Wed Aug  6 20:48:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1080         * gc.c (rb_gc_call_finalizer_at_exit): self-referencing finalizers
1081           cannot be invoked.  [ruby-dev:35681]
1083 Wed Aug  6 20:44:41 2008  Tanaka Akira  <akr@fsij.org>
1085         * tool/transcode-tblgen.rb: distinguish UNDEF and INVALID.
1086           [ruby-dev:35709]
1088         * transcode.c (transcode_loop): don't need rb_enc_mbclen now.
1090 Wed Aug  6 14:40:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1092         * common.mk (transdb.h): requires transcoders.
1094         * enc/depend (srcs): target for transcoders.
1096 Wed Aug  6 14:04:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1098         * enc/depend: replace not only $(<:...) but also $<.
1100 Wed Aug  6 13:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1102         * win32/Makefile.sub (config.status): export BASERUBY.
1104         * enc/depend: avoid GNU make'ism.
1106 Wed Aug  6 07:59:02 2008  Tanaka Akira  <akr@fsij.org>
1108         * tool/transcode-tblgen.rb (ActionMap#eql?): use == to compare @map.
1110 Wed Aug  6 07:45:26 2008  Tanaka Akira  <akr@fsij.org>
1112         * tool/transcode-tblgen.rb: show generating tables in verbose mode.
1113           (transcode_generate_node): call ActionMap#generate_node with showing
1114           table name.
1116         * enc/trans/utf_16_32.erb.c: use transcode_generate_node.
1118 Wed Aug  6 06:55:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1120         * thread.c (thread_start_func_2): propagates fatal error and system
1121           exit to the main thread.
1123 Wed Aug  6 05:31:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1125         * encoding.c (rb_to_encoding_index, rb_to_encoding): check if the name
1126           is ascii compatible as well as Encoding.find.
1128         * transcode.c (str_encode): no need to duplicate first.
1130 Wed Aug  6 05:08:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1132         * array.c (rb_ary_sort_bang): reset to real class.
1134         * file.c (rb_find_file_ext, rb_find_file): ditto.
1136         * io.c (io_reopen): ditto.
1138 Wed Aug  6 03:56:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1140         * common.mk (transcodes), tool/build-transcode: generates transcode
1141           sources.
1143         * enc/trans/{japanese,korean,single_byte,utf_16_32}.c: to be
1144           autogenerated now.
1146         * enc/depend: added rules for .c from .erb.c.
1148 Tue Aug  5 20:46:20 2008  Tanaka Akira  <akr@fsij.org>
1150         * tool/build-transcode: new file.
1152         * tool/transcode-tblgen.rb: new file.
1154         * enc/trans/make_transdb.rb: exclude *.erb.c.
1156         * enc/depend: exclude *.erb.c.
1158         * enc/trans/utf_16_32.erb.c: new file.
1160         * enc/trans/single_byte.erb.c: new file.
1162         * enc/trans/japanese.erb.c: new file.
1164         * enc/trans/korean.erb.c: new file.
1166         * enc/trans/iso-8859-2-tbl.rb: new file.
1168         * enc/trans/iso-8859-3-tbl.rb: new file.
1170         * enc/trans/iso-8859-4-tbl.rb: new file.
1172         * enc/trans/iso-8859-5-tbl.rb: new file.
1174         * enc/trans/iso-8859-6-tbl.rb: new file.
1176         * enc/trans/iso-8859-7-tbl.rb: new file.
1178         * enc/trans/iso-8859-8-tbl.rb: new file.
1180         * enc/trans/iso-8859-9-tbl.rb: new file.
1182         * enc/trans/iso-8859-10-tbl.rb: new file.
1184         * enc/trans/iso-8859-11-tbl.rb: new file.
1186         * enc/trans/iso-8859-13-tbl.rb: new file.
1188         * enc/trans/iso-8859-14-tbl.rb: new file.
1190         * enc/trans/iso-8859-15-tbl.rb: new file.
1192         * enc/trans/eucjp-tbl.rb: new file.
1194         * enc/trans/sjis-tbl.rb: new file.
1196         * enc/trans/euckr-tbl.rb: new file.
1198         * enc/trans/utf_16_32.c: regenerated.
1200         * enc/trans/single_byte.c: regenerated.
1202         * enc/trans/japanese.c: regenerated.
1204         * enc/trans/korean.c: regenerated.
1206         [ruby-dev:35730]
1208 Tue Aug  5 18:02:53 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1210         * test/io/nonblock/test_flush.rb (TestIONonblock#test_flush):
1211           rescue some exceptions. [ruby-dev:35638]
1213 Tue Aug  5 16:40:06 2008  Shugo Maeda  <shugo@ruby-lang.org>
1215         * lib/net/ftp.rb (chdir): handle 5xx errors correctly.
1216           fixed [ruby-core:18057].
1218 Tue Aug  5 16:38:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1220         * include/ruby/win32.h, bcc32/Makefile.sub (config.h): bcc 5.8 has
1221           stdint.h.
1223 Tue Aug  5 16:13:05 2008  Shugo Maeda  <shugo@ruby-lang.org>
1225         * lib/net/imap.rb (disconnect): do not refer SSL::SSLSocket for
1226           environments without OpenSSL. fixed [ruby-dev:35755].
1228 Tue Aug  5 14:19:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1230         * file.c (rb_stat_mode): generalized st_mode mask.
1232 Tue Aug  5 12:43:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1234         * io.c (retry_sendfile, retry_read): ENOSYS and EWOULDBLOCK are not
1235           defined on every platforms.
1237 Tue Aug  5 12:34:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1239         * transcode_data.h (TRANSCODE_ERROR): common transcode failure
1240           exception, would be changed later.
1242         * enc/trans/japanese.c (UNSUPPORTED_MODE): unsupported mode transition
1243           exception.
1245 Tue Aug  5 03:29:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1247         * array.c (rb_ary_sort_bang): respect overridden <=> for String and
1248           Fixnum.  [ruby-core:17708]
1250         * include/ruby/node.h (NOEX_BASIC): basic definition method flag.
1252         * include/ruby/intern.h, vm_method.c (rb_method_basic_definition_p):
1253           new function to check if the method is not redefined after the
1254           initialization.
1256         * vm_method.c (rb_obj_respond_to): use rb_method_basic_definition_p.
1258 Mon Aug  4 20:39:06 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1260         * Makefile.in (update-rubyspec): renamed the rubyspec directory
1261           "spec". Changed directory structure.
1263         * Makefile.in (test-rubyspec): ditto.
1265         * spec/README: described the structure of "spec" directory.
1267         * spec/default.mspec: configured for Matz's Ruby Implementation.
1269 Mon Aug  4 19:21:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1271         * array.c (rb_ary_tmp_new): added.
1273         * vm_eval.c (vm_call_super): fixed typo, and get rid of too large
1274           alloca.  [ruby-core:17922]
1276 Mon Aug  4 16:48:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1278         * parse.y (deferred_nodes, compstmt, arg, fixup_nodes, range_op): fix
1279           up fixnum range literal in conditional as automagical line number
1280           comparison.  [ruby-core:12124], [ruby-dev:35731]
1282 Mon Aug  4 14:41:25 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
1284         * lib/net/smtp.rb (Net::SMTP::rcptto): fix a typo. a patch from
1285           Masao Takaku <masao at nii.ac.jp>
1286           fix [ruby-dev:35489].
1288 Mon Aug  4 14:08:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1290         * marshal.c (dump_ensure), process.c (run_exec_dup2),
1291           string.c (rb_str_replace), transcode.c (transcode_dispatch): fixed
1292           memory leaks.  based on patches from shinichiro.h <shinichiro.hamaji
1293           AT gmail.com> at [ruby-dev:35751].
1295 Sun Aug  3 19:32:52 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1297         * ext/win32ole/win32ole.c (hash2named_arg): refactoring.
1299         * ext/win32ole/win32ole.c (ole_invoke, fole_respond_to, ev_on_event,
1300           fev_off_event): accepts Symbol argument.
1302         * test/win32ole/test_win32ole.rb: ditto.
1304         * test/win32ole/test_win32ole_event.rb: ditto.
1306 Sun Aug  3 10:41:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1308         * string.c (rb_str_shared_replace): fixed memory leak.  a patch from
1309           shinichiro.h <shinichiro.hamaji AT gmail.com> at [ruby-dev:35742]
1311 Sat Aug  2 22:55:41 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1313         * test/win32ole/test_err_in_callback.rb: remove temporary files.
1314           some refactoring.
1316 Sat Aug  2 15:51:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1318         * parse.y (yylex): 8 and 9 in octal integer should cause compile
1319           error.  [ruby-dev:35729]
1321 Sat Aug  2 01:06:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1323         * enc/trans/japanese.c: add U+FF5E to EUC-JP.
1324           [ruby-dev:35720] [ruby-dev:35722]
1326 Fri Aug  1 23:49:44 2008  TAKAO Kouji  <kouji@takao7.net>
1328         * ext/readline/extconf.rb: checked to have clear_history in
1329           readline library.
1330         * ext/readline/readline.c (hist_get, hist_each, Init_readline):
1331           The offset specified for the argument of history_get() might be
1332           different in GNU Readline and libedit. If use libedit, it was
1333           corrected that the computational method of the offset specified
1334           for the argument of history_get() when the Readline module was
1335           initialized was decided.
1336           (hist_get, hist_set): If use libedit, accesses first an input
1337           content in history when specifies the negative offset for the
1338           argument of history_get() or replace_history_entry(). Then
1339           checks the offset is negative in ruby.
1340           (rb_remove_history): When compiling, it corrects it to warning
1341           when libedit is used.
1342           (hist_clear, Init_readline): added Readline::HISTORY.clear
1343           method. [ruby-dev:35551]
1344         * test/readline/test_readline_history.rb: added unit test for
1345           Readline::HISTORY.
1347 Fri Aug  1 23:26:45 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1349         * transcode.c (transcode_loop): undefined character is replaced with
1350           only one character. [ruby-dev:35709]
1352 Fri Aug 01 23:26:22 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1354         Merged r16430(akr), r16431(akr), r16433(akr), r16469(nobu), and
1355         r17874(akr) from ruby_1_8.
1357         * Makefile.in (update-rubyspec): added
1359         * Makefile.in (test-rubyspec): added
1361 Fri Aug  1 23:16:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1363         * enc/trans/japanese.c: add support for CP51932,
1365 Fri Aug  1 22:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1367         * enc/trans/japanese.c: add U+FF0C,
1369 Fri Aug  1 21:49:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1371         * test/sdbm/test_sdbm.rb: add some tests.
1373 Fri Aug  1 21:36:00 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1375         * gc.c (allocate_heaps, assign_heap_slot, rb_newobj_from_heap):
1376           reset during_gc before raising NoMemoryError.
1378 Fri Aug  1 21:29:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1380         * vm.c (Init_BareVM): check failure of malloc().
1382 Fri Aug  1 20:55:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1384         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_offsets): add U+FFF3,
1385           U+FFF4, U+FFF5.
1387         * enc/trans/japanese.c (to_SHIFT_JIS_EF_BF_infos): ditto.
1389         * enc/trans/japanese.c (to_EUC_JP_EF_BF_infos): added.
1391         * enc/trans/japanese.c (to_EUC_JP_EF_BF): added.
1393         * enc/trans/japanese.c (to_EUC_JP_EF_infos): change size.
1394           [ruby-dev:35714]
1396 Fri Aug 01 18:27:15 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1398         * parse.y (parser_yylex): removed an useless conditional, and magic
1399           comment are ignored unless at the first of line.
1401         * test/ruby/test_m17n.rb (test_magic_comment_vim): added.
1403         * test/ruby/test_m17n.rb (test_magic_comment_at_variaous_positions):
1404           added.
1406 Fri Aug  1 14:54:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1408         * win32/win32.c (rb_w32_seekdir): no need to rewind to seek forward.
1410 Fri Aug  1 05:31:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1412         * transcode.c (output_replacement_character):
1413           rename from _get_replacement_character.
1415         * transcode.c (output_replacement_character):
1416           fix replacement on UTF-32{BE,LE}. [ruby-dev:35705]
1418         * transcode.c (transcode_loop): ditto.
1420         * test/ruby/test_transcode.rb (test_invalid_replace):
1421           add for above.
1423 Fri Aug  1 01:01:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1425         * proc.c (rb_proc_call_with_block): reduce comparison.
1427 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1429         * ext/syck/syck.c (syck_free_parser): fix memory leak by
1430           YAML::Syck.compile.
1432 Thu Jul 31 22:17:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1434         * ext/bigdecimal/bigdecimal.c (VpMult): prevent memory leak.
1436 Thu Jul 31 20:05:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1438         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1439           fix option1 and 3.
1441 Thu Jul 31 19:54:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1443         * transcode.c (get_replacement_character): use U+FFFD as replacement
1444           character when convert to Unicode.
1446         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1447           rename from test_public_review_issue_121.
1449         * test/ruby/test_transcode.rb (test_unicode_public_review_issue_121):
1450           enable option2.
1452 Thu Jul 31 17:00:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1454         * transcode.c (get_replacement_character): fix: invalid byte sequence
1455           is always replaced "\x00?".
1457 Thu Jul 31 16:37:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1459         * test/rubygems/test_gem_ext_configure_builder.rb
1460           (test_self_build_fail): remove extra newline. [ruby-dev:35704]
1462 Thu Jul 31 15:11:11 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1464         * test/ruby/test_transcode.rb: added test_shift_jis
1465           (contributed by Yoshihiro Kambayashi) and
1466           test_public_review_issue_121
1467           (see http://www.unicode.org/review/pr-121.html)
1469 Thu Jul 31 13:18:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1471         * include/ruby/ruby.h (struct RString): size of ary must be
1472           RSTRING_EMBED_LEN_MAX + 1.
1474 Thu Jul 31 12:23:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1476         * pack.c (pack_unpack): upper half of hexdigits has never been used.
1478 Thu Jul 31 11:31:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1480         * ext/syck/syck.h (ASSERT): fix typo at r18176.
1482         * ext/syck/rubyext.c (rb_syck_compile): expression in ASSERT() has no
1483           effect unless debug mode.
1485 Thu Jul 31 10:51:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1487         * iseq.c (ruby_iseq_disasm_insn): suppress warnings on platforms which
1488           int size differs from pointer size.
1490         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): ditto
1492         * ext/syck/rubyext.c (rb_syck_err_handler),
1493           (syck_default_error_handler): ditto.
1495 Thu Jul 31 02:21:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1497         * ext/syck/rubyext.c (rb_syck_compile): remove meaningless branch
1498           that misleads into thinking that the variable sav may be
1499           uninitialized.
1501 Thu Jul 31 01:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1503         * thread.c (rb_mutex_unlock_all): mutex is no longer a ruby object.
1505 Thu Jul 31 01:18:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1507         * parse.y (magic_comment_encoding): remove meaningless null check.
1509 Thu Jul 31 01:09:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1511         * ext/bigdecimal/bigdecimal.c (VpIsRoundMode): fix tautology
1512           condition.
1514 Thu Jul 31 00:58:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1516         * pack.c (pack_unpack): reduced static variables.
1518 Thu Jul 31 00:10:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1520         * proc.c (rb_proc_call_with_block): prevent null reference.
1522 Wed Jul 30 22:19:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1524         * parse.y (vtable_free): remove meaningless null check.
1526 Wed Jul 30 22:08:25 2008  Tanaka Akira  <akr@fsij.org>
1528         * dir.c (struct dir_data): change path field char * to VALUE.
1529           (mark_dir): new function for mark path field.
1530           (free_dir): follow the path field change.
1531           (dir_s_alloc): ditto.
1532           (dir_initialize): ditto.
1533           (dir_s_open): ditto.
1534           (dir_inspect): ditto.
1535           (dir_path): return (duplicate of) the path field to preserve
1536           encoding.  [ruby-dev:35685]
1538 Wed Jul 30 22:06:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1540         * string.c (sym_inspect): remove dead code.
1542 Wed Jul 30 21:32:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1544         * ChangeLog: fix wrong method name and add reference.
1546 Wed Jul 30 21:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1548         * regparse.c (name_add): fix memory leak.
1550 Wed Jul 30 21:08:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1552         * regparse.c (parse_exp): fix memory leak at Regexp.new("x{1,1}").
1554 Wed Jul 30 17:48:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1556         * win32/win32.c (rb_w32_select): recalc the rest of timeout for each
1557           iterations.  [ruby-core:18015]
1559 Tue Jul 29 23:37:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1561         * io.c (io_ungetc): raise NotImplementedError when ungetc is called
1562           against dummy encoding IO.  [ruby-dev:35686]
1564         * io.c (rb_io_getline_1): ditto when gets with delimiter is called.
1566         * io.c (io_getc): ditto when getc is called.
1568         * test/ruby/test_io_m17n.rb (test_terminator_stateful_conversion,
1569           test_getc_stateful_conversion, test_ungetc_stateful_conversion):
1570           these tests should raise NotImplementedError.
1572 Tue Jul 29 22:55:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1574         * test/ruby/test_io.rb (pipe): run reader thread and writer thread.
1576 Tue Jul 29 21:38:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1578         * ext/bigdecimal/bigdecimal.c (Init_bigdecimal): fix typo.
1580 Tue Jul 29 21:35:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1582         * test/etc/test_etc.rb (test_passwd): age field may be string under
1583           some environments.
1585 Tue Jul 29 17:54:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1587         * dir.c (char_casecmp): fix: return 0 if either of characters is NUL.
1589 Tue Jul 29 13:17:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1591         * test/etc/test_etc.rb (test_getpwuid): fix for users whose uid is
1592           shared.
1594 Tue Jul 29 05:37:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1596         * file.c (rb_find_file_ext, rb_find_file): explicit relative path
1597           which starts with "./" or "../" should be searched from cwd
1598           instead of load path.  [ruby-dev:35673]
1600 Tue Jul 29 02:39:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1602         * math.c (math_atanh): raise EDOM on FreeBSD when atanh(1).
1604         * math.c (math_log): ditto.
1606         * math.c (math_log2): ditto.
1608         * math.c (math_log10): ditto.
1610         * test/ruby/test_math.rb: test for above.
1612 Tue Jul 29 01:41:15 2008  Tanaka Akira  <akr@fsij.org>
1614         * dir.c (struct dir_data): intenc field removed.
1615           (dir_s_alloc): intenc initialization removed.
1616           (dir_initialize): :internal_encoding option removed.  dirname code
1617           conversion removed.
1618           (dir_enc_str): code conversion removed.
1619           [ruby-dev:35661]
1621 Mon Jul 28 21:32:17 2008  Kouhei Sutou  <kou@cozmixng.org>
1623         * test/rss/: use PNG instead of zlib as binary data.
1625 Mon Jul 28 21:24:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1627         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): reverted
1628           r18239 because r18245 made the changes unnecessary.
1630         * thread.c (rb_mutex_struct): define after including thread_{pthread,
1631           win32}.c.
1633 Mon Jul 28 21:00:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1635         * test/ruby/test_require.rb (test_require_too_long_filename):
1636           Kernel#require does not use dln_find_file_r (at r18242).
1638 Mon Jul 28 20:17:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1640         * vm_core.h: move the definition of struct rb_mutex_struct.
1642         * thread.c: ditto.
1644 Mon Jul 28 18:58:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1646         * thread.c (mutex_unlock): fix typo.
1648 Mon Jul 28 18:15:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1650         * file.c (rb_find_file_ext, rb_find_file): not to split load path with
1651           path separator.  [ruby-Bugs-21356]
1653 Mon Jul 28 18:14:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1655         * win32/win32.c (overlapped_socket_io, fcntl, rb_w32_close): must not
1656           pass a pointer to int which is smaller than st_data_t on mswin64.
1658 Mon Jul 28 16:49:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1660         * win32/win32.c (CreateChild, overlapped_socket_io): suppress
1661           warnings.
1663 Mon Jul 28 16:06:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1665         * win32/win32.c (MAXPATHLEN): define before use.
1667 Mon Jul 28 16:01:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1669         * thread_win32.[ch] (cond_every_entry, rb_thread_cond_struct): moved
1670           the definitions from .c to .h because rb_thread_cond_struct is used
1671           in vm_core.h.
1673 Mon Jul 28 14:29:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1675         * dln.c (load_lib): use dln_find_file_r instead of dln_find_file.
1677 Mon Jul 28 00:18:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1679         * vm_core.h, thread.c: It is now prohibited to use Data_Get_Struct in
1680           *_free against an object that is going to be free'ed.  So, change type
1681           of thread_t#keeping_mutexes from VALUE to mutex_t.
1683         * vm.c: remove mark to keeping_mutexes.
1685 Sun Jul 27 23:32:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1687         * test/openssl/test_ssl.rb (server_loop): rescue Errno::EINVAL and
1688           Errno::ECONNABORTED.
1690 Sun Jul 27 22:11:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1692         * bootstraptests/method.rb: increase RLIMIT_STACK size to 4M+8Kbytes
1693           because FreeBSD fails this less than that.
1695 Sun Jul 27 21:45:59 2008  Koichi Sasada  <ko1@atdot.net>
1697         * gc.c (gc_mark_children, obj_free): T_DEFERRED should not be appear.
1699         * gc.c (gc_sweep, finalize_list): fix to decrement heap_slot#limit
1700           after executing finalizer.
1702 Sun Jul 27 14:48:37 2008  Koichi Sasada  <ko1@atdot.net>
1704         * include/ruby/ruby.h: add a type T_DEFERRED.
1706         * gc.c: fix deferred finalizer system.  finalize processes of
1707           T_DATA and T_FILE are executed after gc process.
1708           And fix to use BUILTIN_TYPE() instead of seeing flag.
1710         * thread.c, vm_core.h: add RUBY_VM_SET_FINALIZER_INTERRUPT()
1711           and check intterupt_flag at rb_thread_execute_interrupts().
1713         * thread.c (mutex_mark): fix to mark next_mutex.
1715         * vm.c (rb_thread_mark): fix to mark keeping_mutexes.
1717 Sun Jul 27 09:15:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1719         * dln.h (dln_find_exe, dln_find_file): deprecated, use reentrant
1720           versions instead.
1722 Sun Jul 27 09:02:32 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
1724         * lib/rinda/tuplespace.rb: merged from 1.8.
1726         * test/rinda/test_rinda.rb: merged from 1.8.
1728 Sat Jul 26 22:45:18 2008  Yuki Sonoda (Yugui)  <yugui@yugui.jp>
1730         * sample/exyacc.rb: fixed NoMethodError(Kernel#sub!).
1731           replaced use of special variables with explicit IO
1732           operations.
1734 Sat Jul 26 21:17:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1736         * ext/win32ole/win32ole.c (Init_win32ole): add
1737           WIN32OLE_EVENT#handler=, WIN32OLE_EVENT#handler
1739         * test/win32ole/test_win32ole_event.rb: ditto.
1741 Sat Jul 26 07:44:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1743         * ext/win32ole/win32ole.c (add_event_call_back): remove unused
1744           variable.
1746 Fri Jul 25 23:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1748         * gc.c (gc_sweep, obj_free, run_final): defer finalizers of IO and
1749           Data.  [ruby-dev:35578]
1751 Fri Jul 25 23:35:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1753         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#split_header_value):
1754           reduce backtrack.  based on a fix by Christian Neukirchen
1755           <chneukirchen AT gmail.com>.
1757 Fri Jul 25 21:55:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1759         * test/ruby/enc/test_koi8.rb: move from test/ruby/test_koi8.rb.
1761 Fri Jul 25 21:09:32 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1763         * ext/win32ole/win32ole.c (ole_invoke, add_event_callback,
1764           rescue_callback): refactoring.
1766 Fri Jul 25 20:52:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1768         * test/win32ole/err_in_callback.rb: add test of raising
1769           exception in WIN32OLE_EVENT callback.
1771         * test/win32ole/test_err_in_callback.rb: ditto.
1773 Fri Jul 25 20:43:57 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
1775         * ext/win32ole/win32ole.c (Init_win32ole): add
1776           WIN32OLE_EVENT#off_event.
1778         * test/win32ole/test_win32ole_event.rb: ditto.
1780         * test/win32ole/test_win32ole_event.rb: some refactoring.
1782 Fri Jul 25 19:50:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1784         * regint.c (xmalloc, xrealloc, xfree): not to use ruby managed memory.
1786 Fri Jul 25 15:52:40 2008  Koichi Sasada  <ko1@atdot.net>
1788         * vm.c (vm_invoke_proc): skip setting safe_level if
1789           it from bmethod.  This change makes test/ruby/test_proc.rb pass.
1791 Fri Jul 25 10:00:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1793         * test/ruby/test_transcode.rb: refactoring/cleanup of
1794           test_iso_2022_jp(_1)
1796 Fri Jul 25 04:12:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
1798         * ext/nkf/nkf.c (rb_nkf_convert): output of mime encode is US-ASCII.
1799           [ruby-list:45257]
1801 Fri Jul 25 02:43:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1803         * sample/coverage.rb: move from lib/coverage.rb because this remains in
1804           an early phase of development.
1806 Fri Jul 25 00:10:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1808         * file.c (rb_find_file_ext, rb_find_file): converts Windows style path
1809           to Cygwin path.  [ruby-dev:35647]
1811 Thu Jul 24 16:30:21 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1813         * win32/win32.c (exit_handler): use st_free_table() to free socklist.
1815         * win32/win32.c (rb_w32_pipe_exec, rb_w32_accept, rb_w32_socket,
1816           rb_w32_socketpair): should check and release fd and sockets/handles
1817           if an error occurs in rb_w32_open_osfhandle().
1819 Thu Jul 24 16:05:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1821         * win32/win32.c (overlapped_socket_io): avoid warnings.
1823         * thread_win32.c (ubf_handle): refactoring.
1825 Thu Jul 24 07:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1827         * ext/win32ole/win32ole.c: got rid of improper casts.
1829 Wed Jul 23 23:19:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1831         * test/socket/test_tcp.rb (test_recvfrom): replace an irrelevant test
1832           for old behavior.
1834 Wed Jul 23 21:38:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1836         * test/ruby/test_marshal.rb: suppress warning during test.
1838 Wed Jul 23 21:35:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1840         * test/ruby/test_dir.rb: suppress warning during test.
1842 Wed Jul 23 18:27:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1844         * ext/tk/{stubs,tcltklib}.c, ext/tk/tkutil/tkutil.c: fix warnings
1845           about constness and signedness.
1847 Wed Jul 23 17:04:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1849         * ext/openssl/openssl_missing.h (d2i_of_void): define for older
1850           versions.  [ruby-dev:35637]
1852 Wed Jul 23 13:53:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1854         * ext/curses/extconf.rb: use try_static_assert.
1856 Wed Jul 23 10:06:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1858         * test/zlib/test_zlib.rb (TestZlibDeflate#test_params): suppress a
1859           finalizer warning.
1861 Wed Jul 23 06:25:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1863         * ext/syck: suppress warnings more.
1865 Wed Jul 23 03:19:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1867         * ext/nkf/nkf-utf8/nkf.c (struct input_code.name, input_codename):
1868           constified.
1870 Wed Jul 23 03:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1872         * ext/syck: suppress warnings.
1874 Wed Jul 23 00:34:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1876         * ext/openssl: suppress warnings.
1878 Tue Jul 22 23:01:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1880         * ext/syck/rubyext.c, ext/syck/yaml2byte.c, ext/syck/emitter.c,
1881           ext/syck/syck.c, ext/syck/handler.c, ext/syck/syck.h: suppress GCC
1882           warning.
1884 Tue Jul 22 20:42:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1886         * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): BigDecimal#<=> should
1887           return nil if an argument can't be coerced into BigDecimal.
1889         * ext/bigdecimal/bigdecimal.h, ext/bigdecimal/bigdecimal.c
1890           (VpIsNegDoubleZero, VpItoV): comment out unused functions.
1892 Tue Jul 22 20:33:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
1894         * test/rdoc/test_rdoc_parser_ruby.rb (teardown): close tempfile.
1896 Tue Jul 22 19:38:38 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
1898         * test/ruby/test_transcode.rb: added two comments
1900 Tue Jul 22 18:08:34 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1902         * README.EXT, README.EXT.ja: mention about FIX2LONG and NUM2LONG.
1903           see [ruby-dev:35197]
1905 Tue Jul 22 17:53:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1907         * compile.c (insn_data_to_s_detail), file.c (rb_stat_inspect),
1908           iseq.c (ruby_iseq_disasm_insn, ruby_iseq_disasm),
1909           process.c (pst_message), re.c (match_inspect): use rb_str_catf.
1911         * dir.c (dir_inspect), iseq.c (iseq_inspect, insn_operand_intern): use
1912           rb_sprintf.
1914         * error.c (rb_name_error, rb_raise, rb_loaderror, rb_fatal): use
1915           rb_vsprintf.
1917 Tue Jul 22 17:20:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1919         * win32/win32.c (init_func): new function to get API's address which
1920           is often used and not supported on all Windows.
1922         * win32/win32.c (overlapped_socket_io): shouldn't use overlapped I/O if
1923           CancelIo() is not supported.
1925 Tue Jul 22 16:47:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1927         * include/ruby/intern.h, sprintf.c (rb_str_catf, rb_str_vcatf): new
1928           functions.  [ruby-dev:35597]
1930         * string.c (rb_str_capacity): new function to return the capacity.
1932 Tue Jul 22 16:08:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
1934         * ext/socket/socket.c (connect_blocking, socks_connect_blocking,
1935           ruby_connect): cast.
1937 Tue Jul 22 11:05:08 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
1939         * test/ruby/test_dir.rb: use realpath of tmpdir. [ruby-dev:35481]
1941         * test/ruby/test_process.rb: ditto.
1943 Tue Jul 22 09:51:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1945         * misc/ruby-mode.el: fix here-doc strings with inner quotes.  patches
1946           by Nathan Weizenbaum <nex342 AT gmail.com> from [ruby-core:17615]
1947           through [ruby-core:17910].
1949 Tue Jul 22 04:26:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1951         * include/ruby/intern.h (rb_str_buf_new2): optimization for literals.
1953         * string.c (str_buf_cat): returns VALUE.
1955 Tue Jul 22 03:34:01 2008  Eric Hodel  <drbrain@segment7.net>
1957         * lib/rdoc*: Update to RDoc 2.1.0 r112.
1959 Tue Jul 22 02:51:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1961         * include/ruby/intern.h (rb_str_buf_cat2, rb_str_cat2): optimization
1962           for literals.
1964 Tue Jul 22 02:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1966         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): fix the
1967           prototype of rb_vsprintf, and added rb_str_cat2.  [ruby-dev:35622]
1969 Mon Jul 21 17:15:38 2008  Tanaka Akira  <akr@fsij.org>
1971         * encoding.c (rb_filesystem_encoding): use locale encoding on Unix.
1972           [ruby-dev:35617]
1974 Mon Jul 21 15:29:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1976         * missing/vsnprintf.c (struct __sbuf, FILE): use size_t.
1978         * sprintf.c (ruby__sfvwrite): ditto.
1980 Mon Jul 21 13:55:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1982         * README.EXT, README.EXT.ja (1.5 Manipulating Ruby data): mentioned
1983           rb_sprintf and rb_vsprintf.  [ruby-dev:35611]
1985 Mon Jul 21 10:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
1987         * io.c (prepare_getline_args): check if rs is a string when non-nil
1988           lim is given.  [ruby-dev:35610]
1990 Mon Jul 21 04:55:20 2008  Tanaka Akira  <akr@fsij.org>
1992         * dir.c (dir_initialize): use rb_convert_type instead of
1993           rb_check_convert_type to prevent SEGV by Dir.new(".", true).
1994           (dir_initialize): use FilePathValue before rb_enc_get(dirname) to
1995           prevent SEGV by Dir.new(0).
1997 Mon Jul 21 04:42:15 2008  Tanaka Akira  <akr@fsij.org>
1999         * re.c (rb_reg_s_union): useless rb_enc_get call removed to prevent
2000           SEGV by Regexp.union("", nil).
2002 Sun Jul 20 22:50:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2004         * compile.c (iseq_compile_each): NODE_POSTEXE should set each end
2005           procs only once.  [ruby-dev:35596]
2007 Sun Jul 20 16:00:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2009         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): use rb_protect
2010           instead of rb_rescue2. [ruby-dev:35595]
2012 Sun Jul 20 01:23:24 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2014         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
2016         * ext/win32ole/win32ole.c (EVENTSINK_GetIDsOfNames): return
2017           ITypeInfo::GetIDsOfNames().
2019 Sat Jul 19 09:31:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2021         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): little refactoring.
2023         * ext/win32ole/win32ole.c: add document of inspect methods.
2025 Sat Jul 19 06:08:43 2008  Eric Hodel  <drbrain@segment7.net>
2027         * lib/rdoc*: Import RDoc r104.  Various make test-all fixes.
2029 Sat Jul 19 00:27:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2031         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): fixed wrong check
2032           about 64bit positive value.
2034 Fri Jul 18 23:23:37 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2036         * ext/win32ole/win32ole.c (EVENTSINK_Invoke): avoid cfp consistency
2037           error when exception raised in event callback.
2039 Fri Jul 18 14:52:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2041         * win32/win32.c (socklist): table for registering socket options
2042           (currently only O_NONBLOCK).
2044         * win32/win32.c (StartSockets, exit_handler): alloc/free socklist.
2046         * win32/win32.c (is_socket): use socklist.
2048         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
2049           register new socket to socklist.
2051         * win32/win32.c (rb_w32_close): remove closing socket from socklist.
2053         * win32/win32.c (fcntl): register socket options.
2055         * win32/win32.c (overlapped_socket_io): send to/recv from socket with
2056           overlapped operation if the socket is not nonblocking mode.
2057           [experimental]
2059         * win32/win32.c (rb_w32_send, rb_w32_sendto, rb_w32_recv,
2060           rb_w32_recvfrom): use overlapped_socket_io().
2062         * win32/win32.c (open_ifs_socket): set overlapped mode. this is the
2063           default mode of winsock's socket(), so lacking it is an old bug.
2065 Fri Jul 18 09:44:30 2008
2067         * lib/rdoc/*: Import RDoc r101.
2069 Thu Jul 17 23:45:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2071         * test/rdoc/test_rdoc_c_parser.rb (teardown): close tempfile.
2073 Thu Jul 17 21:08:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2075         * test/ruby/test_process.rb (test_getpriority, test_setpriority): use
2076           PRIO_PROCESS instead of PRIO_USER.
2078 Thu Jul 17 20:41:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2080         * pack.c (pack_unpack): fix v and V with big endian.
2081           [1].pack("V").unpack("V") was [4294967296].
2083 Thu Jul 17 20:35:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2085         * pack.c (pack_pack): fix i! with big endian.  [1].pack("i!") was
2086           "\0\0\0\0".
2088 Thu Jul 17 16:48:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2090         * ext/socket/socket.c (ruby_connect): select() for connect() has
2091           mean only when the socket is non-blocking.
2093 Thu Jul 17 10:55:24 2008  Eric Hodel  <drbrain@segment7.net>
2095         * mkconfig.rb: Simplify expression for RDoc.
2097 Thu Jul 17 10:21:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2099         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): strict check.
2100           fixed [ruby-dev:33683]
2102 Thu Jul 17 04:19:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2104         * thread.c (thread_start_func_2): wake up joining threads.
2106         * thread.c (sleep_forever, sleep_timeval): return when interrupted.
2107           [ruby-dev:35542]
2109         * thread.c (timer_thread_function): restore main thread status.
2110           [ruby-core:17270]
2112 Thu Jul 17 01:27:38 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2114         * io.c (appendline): remove invalid access.
2116 Wed Jul 16 18:04:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2118         * signal.c (signal_exec, trap_handler): trap accepts a string as
2119           command.  [ruby-dev:35533]
2121 Wed Jul 16 00:04:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2123         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_in_out_err): new
2124           method.
2126         * test/ruby/test_argf.rb: use assert_in_out_err instead of
2127           EnvUtil.rubyexec.
2129         * test/ruby/test_module.rb: ditto.
2131         * test/ruby/test_require.rb: ditto.
2133         * test/ruby/test_objectspace.rb: ditto.
2135         * test/ruby/test_object.rb: ditto.
2137         * test/ruby/test_string.rb: ditto.
2139         * test/ruby/test_method.rb: ditto.
2141         * test/ruby/test_variable.rb: ditto.
2143         * test/ruby/test_io.rb: ditto.
2145         * test/ruby/test_rubyoptions.rb: ditto.
2147         * test/ruby/test_exception.rb: ditto.
2149         * test/ruby/test_class.rb: ditto.
2151         * test/ruby/test_thread.rb: ditto.
2153 Tue Jul 15 22:34:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2155         * win32/Makefile.sub (ruby_version): follow changes in configure.in.
2157 Tue Jul 15 21:58:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2159         * ext/tk/{,tkutil/}extconf.rb: ruby/ruby.h no longer needs to be
2160           checked.
2162         * ext/tk/{tcltklib.c,tkutil/tkutil.c}: check macros for each headers.
2164 Tue Jul 15 21:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
2166         * ext/tk/extconf.rb, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: Do
2167           not test ruby/ruby.h, which makes OS X's gcc pick the wrong
2168           header file from Ruby.framework.
2170 Tue Jul 15 21:31:26 2008  Akinori MUSHA  <knu@iDaemons.org>
2172         * configure.in (--with-ruby-version): Add a new option to specify
2173           the ruby version string for version specific directories.
2174           [ruby-dev:35490]
2176         * mkconfig.rb: Definition of ruby_version is now determined by the
2177           configure script.
2179 Tue Jul 15 18:14:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2181         * ext/socket/socket.c (ruby_connect, s_accept): check before readable/
2182           writable by select() instead of wrapping in blocking region.
2184         * ext/socket/socket.c (bsock_send, s_recvfrom, udp_send, unix_send_io,
2185           unix_recv_io): should check readable/writable before calling blocking
2186           functions.
2187           see [ruby-dev:35446]
2189 Tue Jul 15 18:12:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2191         * thread_win32.c (ubf_handle): cancel blocking IO if it can (only
2192           Vista). see [ruby-dev:35446]
2194         * win32/win32.c (errmap): add ERROR_OPERATION_ABORTED as EINTR.
2196 Mon Jul 14 20:35:21 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2198         * test/win32ole/test_win32ole_event.rb (teardown): fix typo.
2200 Mon Jul 14 18:47:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2202         * transcode.c (transcode_loop): constified.
2204         * transcode.c (str_transcode): rb_str_set_len() sets a delimiter.
2206         * transcode_data.h (rb_transcoder): constified preprocessor and
2207           postprocessor input.
2209         * enc/trans/japanese.c: ditto.
2211 Sun Jul 13 05:37:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2213         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): typo.
2215         * {bcc32,win32}/Makefile.sub: (SIZEOF_SIZE_T, SIZEOF_PTRDIFF_T): added.
2217 Sat Jul 12 23:54:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2219         * win32/Makefile.sub (LIBRUBY_DLDFLAGS): import library which created
2220           with DLL is broken. save import library which created by lib.exe and
2221           install it.
2222           fixed the problem mentioned at the postscript of [ruby-dev:35448]
2224 Sat Jul 12 23:24:21 2008  Tanaka Akira  <akr@fsij.org>
2226         * ext/socket/socket.c: use PRIuSIZE.
2228 Sat Jul 12 22:41:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2230         * include/ruby/ruby.h (PRI_PTRDIFF_PREFIX, PRI_SIZE_PREFIX): fixed typo.
2232 Sat Jul 12 22:30:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2234         * include/ruby/intern.h (HAVE_RUBY_RUBY_H): defines macros so that
2235           extconf.rb do not need to check if headers exist under separated
2236           directory.  [ruby-dev:35437]
2238         * include/{ruby,rubyio,rubysig}.h, include/ruby/intern.h: use
2239           "ruby/..." instead of <ruby/...>.
2241 Sat Jul 12 22:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2243         * configure.in (sizeof ptrdiff_t): check for size of ptrdiff_t.
2245         * include/ruby/ruby.h (PRI?PTRDIFF, PRI?SIZE): printf conversion
2246           specifiers for ptrdiff_t and size_t/ssize_t.
2248         * insns.def (leave), marshal.c (long_toobig), transcode.c
2249           (str_transcode), vm_dump.c (control_frame_dump, stack_dump_each),
2250           (debug_print_register, debug_print_pre): t and z length modifiers
2251           are C99.
2253 Sat Jul 12 16:02:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2255         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): requires
2256           webrick/cookie.  [ ruby-Bugs-21139 ]
2258 Sat Jul 12 09:25:07 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2260         * test/win32ole/test_win32ole_event.rb: add test
2261           for WIN32OLE_EVENT#on_event_with_outargs
2263         * test/win32ole/test_win32ole_event.rb(teardown): calling
2264           WIN32OLE_EVENT.message_loop
2266 Sat Jul 12 01:54:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2268         * win32/win32.c (rb_w32_select): shoudn't pass non-socket handle to
2269           original select().
2271 Fri Jul 11 23:05:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2273         * test/zlib/test_zlib.rb: add a test for Zlib::Deflate#params.
2275 Fri Jul 11 22:58:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2277         * ext/zlib/zlib.c (rb_deflate_params): flush before deflateParams.
2278           [ruby-core:17675]
2280 Fri Jul 11 22:09:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2282         * win32/setup.rb, win32/Makefile.sub (PLATFORM): use $(PLATFORM)
2283           instead of $(OS) because ENV["OS"] is used in test-all (drb).
2285 Fri Jul 11 20:51:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2287         * io.c (rb_io_wait_readable, rb_io_wait_writable): check if the file
2288           descriptor is closed.
2290         * thread.c (rb_thread_wait_fd_rw): ditto.
2292 Fri Jul 11 16:16:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2294         * win32/win32.c (rb_w32_accept, rb_w32_socket, rb_w32_socketpair):
2295           prohibit inheritance of sockets, too. [experimental]
2297 Fri Jul 11 14:39:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2299         * win32/win32.c (CreateChild): the measures for Vista is no longer
2300           unnecessary.
2302 Fri Jul 11 06:16:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2304         * common.mk (process.o): depends on util.h.
2306 Fri Jul 11 05:07:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2308         * include/ruby/win32.h (pipe): prohibit inheritance.
2309           fixed: [ruby-dev:35421]
2311 Fri Jul 11 00:56:46 2008  Koichi Sasada  <ko1@atdot.net>
2313         * thread.c (thread_create_core): fix GC problem.
2314           [ruby-core:17669]
2316 Thu Jul 10 22:06:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2318         * lib/pstore.rb (PStore#transaction): return the result from the
2319           block.  [ruby-core:17718]
2321 Thu Jul 10 21:15:49 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2323         * test/win32ole/test_win32ole_typelib.rb: add some illegal argument
2324           test.
2326         * test/win32ole/test_win32ole_type.rb: ditto.
2328         * test/win32ole/test_win32ole_event.rb: ditto.
2330         * test/win32ole/test_win32ole_param.rb: ditto.
2332         * test/win32ole/test_win32ole_method.rb: ditto.
2334 Thu Jul 10 19:38:35 2008  wanabe  <s.wanabe@gmail.com>
2336         * test/ruby/envutil.rb (assert_normal_exit): r17993 revert.
2338 Thu Jul 10 18:29:41 2008  wanabe  <s.wanabe@gmail.com>
2340         * test/ruby/envutil.rb (assert_normal_exit): finish writing script
2341           before spawn("ruby") to avoid blocking in win32.
2343 Thu Jul 10 17:20:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2345         * win32/win32.c (insert): follow recent changes of globbing.
2347 Thu Jul 10 14:09:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2349         * ext/coverage/coverage.c (rb_coverage_start): return nil.
2351 Thu Jul 10 12:41:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2353         * thread.c (rb_thread_wait_for): fixed variable name.
2355 Thu Jul 10 12:09:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2357         * vm_core.h (rb_thread_t), vm.c (rb_thread_mark), process.c
2358           (rb_last_status_get, rb_last_status_set, rb_last_status_clear):
2359           moved last_status from rb_vm_t.  [ruby-dev:35414]
2361         * vm.c (th_init2): initialize last_status with nil.
2363 Thu Jul 10 12:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2365         * thread.c (rb_thread_wait_for): wait until timed out only when
2366           sleeping with timeout.
2368 Wed Jul  9 22:41:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2370         * thread.c (sleep_timeval): wait until timed out.  [ruby-core:17270]
2372 Wed Jul  9 20:58:16 2008  Tanaka Akira  <akr@fsij.org>
2374         * array.c (rb_ary_fill): don't raise even if length is negative.
2375           [ruby-core:17483], [ruby-core:17661]
2377 Wed Jul  9 20:18:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2379         * configure.in (rb_cv_va_args_macro): check for __VA_ARGS__.
2381         * thread.c (thread_debug): show source name and line if possible.
2383         * thread_{pthread,win32}.c (rb_thread_create_timer_thread): needs more
2384           stack for debug.
2386 Wed Jul  9 11:13:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2388         * lib/profiler.rb (Profiler__#print_profile): sort in the descending
2389           order of cumulative time.
2391 Wed Jul  9 11:11:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2393         * dir.c (struct glob_args, rb_glob_caller, rb_glob2, push_pattern),
2394           (glob_brace): make consistent prototypes.
2396         * dir.c (push_glob): set enc in the caller of rb_glob_caller as well
2397           as rb_glob2.
2399 Wed Jul  9 09:12:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2401         * ext/nkf/nkf-utf8/nkf.c (options): use input_endian.
2403 Wed Jul  9 01:38:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2405         * string.c (rb_str_succ): alphabets or numerics mutually enclosing
2406           non-alphanumeric characters can carry up.  e.g., "1.999".succ should
2407           be "2.000".
2409 Wed Jul  9 00:12:31 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2411         * thread.c (rb_set_coverages, rb_reset_coverages): enable and disable
2412           coverage measurement.
2414         * thread.c (rb_get_coverages): rename and move from vm.c.
2416         * vm.c (rb_vm_get_coverages): ditto.
2418         * iseq.c (prepare_iseq_build): ditto.
2420         * thread.c (clear_coverage): ditto.
2422         * parse.y (coverage): ditto.
2424         * ext/coverage/coverage.c: use above functions, add new method
2425           Coverage.start and fix rdoc .
2427 Tue Jul  8 23:02:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2429         * ext/win32ole/win32ole.c (find_default_source): bug fix when
2430           OLE object does not have default source interface.
2432         * test/win32ole/test_win32ole_event.rb: ditto.
2434 Tue Jul  8 22:56:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2436         * thread.c (rb_enable_coverages): hide coverage array by setting 0 to
2437           klass during measurement.
2439         * parse.y (coverage, yycompile0): ditto.
2441         * iseq.c (prepare_iseq_build): use rb_hash_lookup instead of
2442           rb_hash_aref.
2444         * thread.c (rb_coverage_result): restore klass of coverage array
2445           and return it.
2447         * theaad.c (update_coverage): chcek whether its klass is 0.
2449 Tue Jul  8 22:28:25 2008  Koichi Sasada  <ko1@atdot.net>
2451         * lib/debug.rb, lib/profile.rb: fix to use RubyVM.
2453         * lib/rdoc/parsers/parse_c.rb: ditto.
2455 Tue Jul  8 21:45:22 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2457         * vm.c (rb_vm_mark): mark the last element of special_exceptions.
2459 Tue Jul  8 19:55:40 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2461         * ext/win32ole/win32ole.c (find_default_source): try to
2462           find COCLASS when WIN32OLE object is not COCLASS.
2464         * test/win32ole/test_win32ole_event.rb: ditto
2466 Tue Jul  8 13:38:22 2008  Koichi Sasada  <ko1@atdot.net>
2468         * compile.h: fix to skip inserting a trace insn.
2470 Tue Jul  8 11:41:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2472         * dir.c: shoudn't use ruby object in globbing, because glob service
2473           routines are called before initializing ruby on some platforms (ex.
2474           windows).
2476 Tue Jul  8 10:08:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2478         * dir.c (Next): use rb_enc_mbclen. [ruby-dev:35390]
2480 Tue Jul  8 07:59:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2482         * dir.c (Next): use rb_enc_precise_mbclen.
2484 Tue Jul  8 02:27:23 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2486         * dir.c: preserve encoding of strings in glob and fnmatch.
2488         * include/ruby/ruby.h: related changes.
2490 Tue Jul  8 00:22:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2492         * string.c (rb_str_succ): limit carrying in an alphanumeric region if
2493           exists.  [ruby-dev:35094]
2495 Mon Jul  7 20:39:28 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2497         * ext/win32ole/win32ole.c(Init_win32ole): add
2498           WIN32OLE_TYPE#source_ole_types, WIN32OLE_TYPE#default_ole_types,
2499           WIN32OLE_TYPE#default_event_sources.
2501         * test/win32ole/test_win32ole_type.rb: ditto.
2503 Mon Jul  7 19:45:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2505         * test/ruby/test_dir.rb (test_chroot_nodir): add Errno::EPERM.
2507 Mon Jul  7 17:12:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2509         * lib/ipaddr.rb (IPAddr#initialize): get rid of ArgumentError in
2510           IPAddr#to_range.  a patch from okkez <okkez000 AT gmail.com> in
2511           [ruby-dev:35091].
2513 Mon Jul  7 01:24:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2515         * file.c (rb_file_s_extname): fix for file name with spaces.
2516           [ruby-talk:307404]
2518 Mon Jul  7 00:59:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2520         * thread_pthread.c (ruby_init_stack): prior STACK_END_ADDRESS if
2521           found.  [ruby-core:17624]
2523 Sun Jul  6 23:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2525         * ext/socket/socket.c (bsock_send, s_recvfrom, ruby_connect, s_accept),
2526           (udp_send, unix_send_io, unix_recv_io): blocking region support.
2528 Sun Jul  6 18:34:35 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2530         * test/win32ole/test_win32ole_type.rb (test_initialize): add
2531           more assertions.
2533 Sun Jul  6 10:12:21 2008  Kouhei Sutou  <kou@cozmixng.org>
2535         * lib/test/unit/collector/objectspace.rb
2536           (Test::Unit::Collector::ObjectSpace::NAME): fix a typo.
2538 Sun Jul  6 00:56:51 2008  Tanaka Akira  <akr@fsij.org>
2540         * ext/socket/socket.c (host_str): fix type mismatch in rb_raise
2541           format and argument.
2542           (port_str): ditto.
2543           (unix_recv_io): ditto.
2544           (sock_s_unpack_sockaddr_un): ditto.
2546 Sat Jul  5 23:42:23 2008  Tanaka Akira  <akr@fsij.org>
2548         * include/ruby/ruby.h (NUM2INT): cast to int.
2549           (FIX2INT): ditto.
2550           (NUM2UINT): cast to unsigned int.
2551           (FIX2UINT): ditto.
2553 Sat Jul  5 23:10:41 2008  Tanaka Akira  <akr@fsij.org>
2555         * io.c (rb_pipe): new function for handling EMFILE and ENFILE
2556           error of pipe().
2557           (UPDATE_MAXFD_PIPE): removed.
2558           (pipe_open): use rb_pipe.
2559           (rb_io_s_pipe): ditto.
2561         * process.c (pipe_nocrash): use rb_pipe.
2563         * include/ruby/intern.h (rb_pipe): declared.
2565 Sat Jul  5 22:22:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2567         * thread.c (thread_initialize): NUM2INT() returns int.
2569         * thread.c (timer_thread_function), thread_pthread.c (thread_timer),
2570           thread_win32.c (timer_thread_func), thread_{pthread,win32}.c
2571           (rb_thread_create_timer_thread): passing VM.
2573 Sat Jul  5 20:53:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2575         * test/win32ole/test_word.rb: check word installed.
2577 Sat Jul  5 16:12:54 2008  Narihiro Nakamura  <authorNari@gmail.com>
2579         * gc.c: revert. before lazy sweep.
2581 Sat Jul  5 09:55:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2583         * ext/win32ole/win32ole.c: add WIN32OLE#ole_respond_to?
2585         * test/win32ole/test_win32ole.rb: ditto.
2587 Sat Jul  5 08:48:05 2008  Tanaka Akira  <akr@fsij.org>
2589         * re.c (unescape_nonascii): add has_property argument not to
2590           raise error by /\p{Hiragana}\u{3042}/ in EUC-JP script.
2591           (rb_reg_preprocess): use has_property argument to make regexp
2592           encoding fixed.
2594 Sat Jul  5 08:29:47 2008  Tanaka Akira  <akr@fsij.org>
2596         * re.c (unescape_nonascii): make regexp fixed_encoding if \p is used.
2597           fixed [ruby-core:17279].
2599 Fri Jul  4 23:12:53 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2601         * ext/win32ole/win32ole.c (d2time): fix the bug of VT_DATE
2602           to String conversion when negative value.
2604         * test/win32ole/test_win32ole_variant.rb: ditto.
2606 Fri Jul  4 22:15:29 2008  Tanaka Akira  <akr@fsij.org>
2608         * lib/test/unit/testcase.rb: collect decendants of
2609           Test::Unit::TestCase using inherited.
2611         * lib/test/unit/autorunner.rb: don't use ObjectSpace.each_object.
2613         * lib/test/unit/collector/dir.rb: ditto.
2615         * lib/test/unit/collector/objectspace.rb: ditto.
2617         [ruby-core:17126]
2619 Fri Jul  4 20:43:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2621         * include/ruby/oniguruma.h (OnigEncoding): removed auxiliary_data.
2623         * include/ruby/encoding.h (ENC_DUMMY_P): moved dummy encoding flag to
2624           rb_encoding from Encoding instance.
2626         * encoding.c (rb_encoding_list): list of Encoding instances.
2628         * encoding.c (struct rb_encoding_entry): moved base encoding from
2629           instance variable.
2631 Fri Jul  4 17:51:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2633         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): proper check.
2635 Fri Jul  4 14:17:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2637         * lib/net/ftp.rb (Net::FTP#sendport): use divmod.  [ruby-core:17557]
2639 Fri Jul  4 11:08:37 2008  Narihiro Nakamura  <authorNari@gmail.com>
2641         * gc.c (garbage_collect_force): sweep is completely ended.
2643         * gc.c (os_obj_of): invoke garbage_collect_force() when freelist none.
2645 Fri Jul  4 05:01:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2647         * numeric.c (rb_num2uint, rb_fix2uint): typo.
2649 Fri Jul  4 02:21:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2651         * numeric.c (check_uint, rb_num2uint, rb_fix2uint): also needs checking
2652           negative value. see [ruby-dev:33683]
2654 Thu Jul  3 23:26:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2656         * include/ruby/intern.h: remove prototypes about coverage.
2658         * iseq.c (prepare_iseq_build): add prototype.
2660         * parse.y (coverage): ditto.
2662         * thread.c (clear_coverage): ditto.
2664         * thread.c (update_coverage): use rb_sourceline.
2666         * thread.c (rb_get_coverages): rename and move to vm.c.
2668         * vm.c (rb_vm_get_coverages): ditto.
2670         * ext/coverage/coverage.c: add rdoc.
2672 Thu Jul  3 21:51:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2674         * ext/coverage/coverage.c, ext/coverage/extconf.rb: eliminate
2675           COVERAGE__ and introduce coverage.so instead.  How to measure
2676           coverage: (1) require "coverage.so", (2) require or load Ruby source
2677           file, and (3) Coverage.result will return the same hash as COVERAGE__.
2678           [ruby-dev:35324]
2680         * thread.c (rb_enable_coverages): start coverage measurement by using
2681           rb_add_event_hook.
2683         * thread.c (rb_get_coverages): returns current results of coverage
2684           measurement.
2686         * include/ruby/intern.h: add prototype for above two functions.
2688         * vm_core.h, vm.c: add field of coverages to rb_vm_t.
2690         * insns.def (trace): remove special handling for COVERAGE__.
2692         * iseq.c (prepare_iseq_build): switch COVERAGE__ to
2693           rb_get_coverages().
2695         * parse.y (coverage): ditto.
2697         * thread.c (clear_coverage): ditto.
2699         * lib/coverage.rb: use coverage.so instead of COVERAGE__.
2701 Thu Jul  3 21:20:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2703         * thread.c (thread_initialize): NUM2INT returns long.
2705 Thu Jul  3 21:06:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2707         * eval.c (Init_eval): typo fixed in r17833.
2709 Thu Jul  3 19:44:44 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2711         * ext/win32ole/win32ole.c (Init_win32ole): remove duplicate line.
2713 Thu Jul  3 16:08:36 2008  Tanaka Akira  <akr@fsij.org>
2715         * configure.in (erfc): erfc of glibc comes with Debian GNU/Linux Etch
2716           on IA64 is broken.  erfc(10000.0) aborts.
2717           use missing/erf.c instead.
2718           http://sources.redhat.com/ml/libc-hacker/2005-08/msg00008.html
2720 Thu Jul  3 12:49:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
2722         * lib/net/smtp.rb (Net::SMTP::start): use 'localhost' instead of
2723           'localhost.localdomain'.  [ruby-dev:35333]
2725         * lib/net/smtp.rb (Net::SMTP::SMTP.start): ditto.
2727 Thu Jul  3 07:06:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2729         * Makefile.in (SET_LC_MESSAGES): LC_MESSAGES must be C.
2731 Thu Jul  3 07:02:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2733         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
2734           messages of preallocated special exceptions also.
2736 Thu Jul  3 04:39:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2738         * gc.c (rb_during_gc): VALUE cache is irrelevant.
2740 Thu Jul  3 01:44:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2742         * regint.h (GET_ALIGNMENT_PAD_SIZE, ALIGNMENT_RIGHT): cast pointer to
2743           uintptr_t instead of unsigned int.
2745 Thu Jul  3 01:23:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2747         * sprintf.c: include ieeefp.h to refer isinf.
2749         * ext/bigdecimal/bigdecimal.c: ditto.
2751         * ext/json/ext/generator/generator.c: ditto.
2753         * rational.c: ditto.
2755 Thu Jul  3 01:01:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2757         * missing/tgamma.c (tgamma): remove unused variable.
2759 Thu Jul  3 00:18:00 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2761         * ext/win32ole/win32ole.c: avoid creating Ruby object during
2762           GC. thanks to arton <artonx AT yahoo.co.jp>. [ruby-dev:35313]
2764         * test/win32ole/test_win32ole_event.rb: ditto.
2766 Thu Jul  3 00:09:31 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
2768         * gc.c: add rb_during_gc(). based on a patch from arton <artonx AT
2769           yahoo.co.jp> at [ruby-dev:35313].
2771         * include/ruby/intern.h: ditto.
2773 Wed Jul  2 09:49:10 2008  Narihiro Nakamura  <authorNari@gmail.com>
2775         * gc.c (gc_lazy_sweep): use lazy sweep algorithm for response
2776           performance gain.
2778         * gc.c (garbage_collect_force): mark and lazysweep invoke, after
2779           erasing all mark.
2781         * gc.c (GC_NOT_LAZY_SWEEP): not lazy sweep flag. for debug.
2783 Wed Jul  2 03:42:44 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2785         * test/ruby/test_settracefunc.rb: fix expected traces for
2786           RubyVM::FrozenCore's event and r17744.
2788 Wed Jul  2 03:10:41 2008  Koichi Sasada  <ko1@atdot.net>
2790         * compile.h, insns.def: reduce insn operand of "trace".
2792         * include/ruby/ruby.h: add RUBY_EVENT_COVERAGE event.
2794 Wed Jul  2 02:02:34 2008  Koichi Sasada  <ko1@atdot.net>
2796         * proc.c, vm.c: fix to refer next ruby level cfp to make binding.
2798 Wed Jul  2 01:58:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2800         * insns.def (trace): C99ism.
2802 Wed Jul  2 01:53:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2804         * Add coverage measurement constant COVERAGE__.  This constant is not
2805           for casual use.  Usage: (1) assign {} to COVERAGE__, (2) require or
2806           load Ruby source file, and (3) COVERAGE__["sourcefilepath"] will
2807           return an array whose elements represent number of executions per
2808           line of source code.
2810         * vm_core.h: add field of coverage array to iseq.
2812         * iseq.c (prepare_iseq_build): ditto.
2814         * insns.def (trace): update coverage array.
2816         * parse.y (coverage): create and initialize coverage array.
2818         * compile.h (ADD_TRACE): add trace instruction to update covearge
2819           array.
2821         * thread.c (clear_coverage): delete coverage array when forking.
2822           Otherwise, double count of coverage may occur.
2824         * lib/coverage.rb: sample coverage measurement tool.
2826         * error.c: distinguish explicitly between parse_in_eval and
2827           mild_compile_error.
2829         * load.c: ditto.
2831         * vm_eval.c: ditto.
2833 Tue Jul  1 21:32:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
2835         * lib/test/unit/ui/console/testrunner.rb: prevent destructive
2836           modification to $0.
2838         * test/rubygems/gemutilities.rb (build_rake_in): move from
2839           test_gem_ext_rake_builder.rb.
2841         * test/rubygems/test_gem_ext_rake_builder.rb: ditto.
2843         * test/rubygems/test_gem_installer.rb: override Gem.ruby and
2844           ENV["rake"].
2846         * test/rubygems/test_gem_uninstaller.rb: ditto.
2849 Tue Jul  1 21:13:17 2008  Koichi Sasada  <ko1@atdot.net>
2851         * compile.c, vm.c, insns.def: call FrozenCore.set_postexe method
2852           instead to use "postexe" insn.
2854         * id.c, id.h: add a prepared id for above.
2856 Tue Jul  1 21:09:58 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2858         * lib/mkmf.rb (create_tmpsrc): we need to include COMMON_HEADERS,
2859           namely inclusion of ruby.h, because _GNU_SOURCE is now defined
2860           there (if any) and socket.so requires it on Linux systems.
2862 Tue Jul  1 20:55:07 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2864         * eval.c (rb_interrupt): trick to suppress GCC warning.
2866         * sprintf.c (rb_str_format): ditto.
2868 Tue Jul  1 20:44:36 2008  Koichi Sasada  <ko1@atdot.net>
2870         * tool/instruction.rb: RubyVM is not module.
2872 Tue Jul  1 19:31:24 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2874         * ext/digest/digest.c (rb_digest_instance_inspect): constified.
2876         * variable.c (rb_path2class): field precision should have type int.
2878 Tue Jul  1 19:01:00 2008  NARUSE, Yui  <naruse@ruby-lang.org>
2880         * enc/shift_jis.c (code_is_ctype): HALF WIDTH KATAKANA is
2881           a character.
2883 Tue Jul  1 17:56:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2885         * missing/vsnprintf.c (BSD__uqtoa): constified.
2887 Tue Jul  1 17:50:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
2889         * enc/make_encdb.h: always add ';' at the end of line.
2891 Tue Jul  1 17:44:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2893         * iseq.c (COMPILE_OPTION_FALSE), time.c (timegm_noleapsecond),
2894           thread.c (eKillSignal, eTerminateSignal),
2895           missing/vsnprintf.c (BSD_vfprintf): constified.
2897 Tue Jul  1 17:37:43 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2899         * enc/ascii.c: ISO C does not allow extra ';' outside of a
2900           function
2902         * enc/us_ascii.c: ditto.
2904         * enc/utf_8.c: ditto.
2906         * enc/big5.c: ditto.
2908         * enc/euc_jp.c: ditto.
2910         * enc/euc_kr.c: ditto.
2912         * enc/euc_tw.c: ditto.
2914         * enc/gb2312.c: ditto.
2916         * enc/gbk.c: ditto.
2918         * enc/iso_8859_1.c: ditto.
2920         * enc/iso_8859_2.c: ditto.
2922         * enc/iso_8859_3.c: ditto.
2924         * enc/iso_8859_4.c: ditto.
2926         * enc/iso_8859_5.c: ditto.
2928         * enc/iso_8859_6.c: ditto.
2930         * enc/iso_8859_7.c: ditto.
2932         * enc/iso_8859_8.c: ditto.
2934         * enc/iso_8859_9.c: ditto.
2936         * enc/iso_8859_10.c: ditto.
2938         * enc/iso_8859_11.c: ditto.
2940         * enc/iso_8859_13.c: ditto.
2942         * enc/iso_8859_14.c: ditto.
2944         * enc/iso_8859_15.c: ditto.
2946         * enc/iso_8859_16.c: ditto.
2948         * enc/koi8_r.c: ditto.
2950         * enc/shift_jis.c: ditto.
2952         * enc/utf_16be.c: ditto.
2954         * enc/utf_32be.c: ditto.
2956         * enc/utf_32le.c: ditto.
2958         * enc/windows_1251.c: ditto.
2960         * process.c (run_exec_rlimit): ISO C90 forbids mixed declarations
2961           and code
2963         * include/ruby/ruby.h (enum ruby_special_consts): ISO C forbids
2964           comma at end of enumerator list
2966         * include/ruby/ruby.h (enum ruby_value_type): ditto.
2968         * eval_intern.h (enum): ditto.
2970         * vm_core.h (enum rb_thread_status): ditto.
2972         * parse.y (enum lex_state_e): ditto.
2974         * parse.y (enum string_type): ditto.
2976         * process.c (enum): ditto.
2978         * ruby.c (enum dump_flag_bits): ditto.
2980         * ruby.c (enum disable_flag_bits): ditto.
2982         * enc/gb18030.c (enum): ditto.
2984 Tue Jul  1 17:21:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
2986         * regexec.c (stack_double): use MatchStackLimitSize atomically.
2988         * regparse.c (onig_free_shared_cclass_table): OnigTypeCClassTable
2989           needs atomicity
2991         * regsyntax.c: constified all predefined OnigSyntaxTypes.
2993 Tue Jul  1 16:57:44 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
2995         * include/ruby/st.h (struct st_table): type of bit-field
2996           'num_entries' is a GCC extension
2998         * include/ruby/ruby.h (rb_intern): prefix __extnsion__ for
2999           braced-groups within expressions.
3001         * include/ruby/intern.h (rb_usascii_str_new2): ditto.
3003         * include/ruby/intern.h (rb_tainted_str_new2): ditto.
3005         * include/ruby/intern.h (rb_str_new2): ditto.
3007 Tue Jul  1 15:01:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3009         * lib/rubygems/ext/builder.rb (Gem::Ext::Builder.make),
3010           (Gem::Ext::Builder.run): EXIT_SUCCESS may be 0 or may not.
3012         * test/rubygems/test_gem_ext_rake_builder.rb (build_rake_in): override
3013           Gem.ruby and ENV["rake"].
3015         * runruby.rb: bin/rake does not exist in archdir where architecture
3016           depend script (i.e. rbconfig.rb) exists.
3018 Tue Jul  1 13:19:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3020         * array.c (rb_ary_fill): check if beg is too big.
3022 Tue Jul  1 12:01:16 2008  Koichi Sasada  <ko1@atdot.net>
3024         * compile.c, insns.def, vm.c, vm_core.h: remove some insns
3025           (undef, alias, definemethod).
3026           Call RubyVM::FrozenCore's singleton method instead.
3027           Add "putiseq" and "putspecialobject" instructions.
3029         * id.c, id.h: add ids for above.
3031         * tool/parse.rb: "VM" no longer exists.  Use RubyVM instead.
3033 Tue Jul  1 03:28:16 2008  Eric Hodel  <drbrain@segment7.net>
3035         * test/rubygems/test_ext_configure_builder.rb:  Apply locale-free
3036           patch by Yusuke ENDOH.  [ruby-core:17444].
3038         * runruby.rb: Set ENV['rake'].  Patch by Yusuke ENDOH
3039           [ruby-core:17442].
3041 Tue Jul  1 01:07:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3043         * lib/cgi.rb (CGI::QueryExtension.read_multipart): blanks inside
3044           double quotes are allowed.  [ruby-list:45140]
3046 Tue Jul  1 00:59:43 2008  Tanaka Akira  <akr@fsij.org>
3048         * numeric.c (num_coerce): call rb_Float(x) first.  don't depend on
3049           evaluation order of function arguments.
3051 Tue Jul  1 00:49:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3053         * gc.c (rb_newobj): abort GC phase before rb_bug.
3055 Mon Jun 30 23:15:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3057         * test/openssl/test_ssl.rb (start_server): shutdown TCPServer before
3058           close.
3060 Mon Jun 30 23:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3062         * common.mk (RUBY_H_INCLUDES): common headers which are included with
3063           ruby.h together.
3065 Mon Jun 30 22:57:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3067         * test/ruby/test_settracefunc.rb (test_raise): reveal an exception
3068           hided by rescue modifier.
3070 Mon Jun 30 22:49:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3072         * test/ruby/test_array.rb (test_aset): access with too big index
3073           raises not ArgumentError but IndexError now.
3075 Mon Jun 30 22:30:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3077         * lib/test/unit/collector/dir.rb (recursive_collect): r15662 reverted.
3079 Mon Jun 30 22:27:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3081         * ext/stringio/stringio.c (strio_getline): fix for nil and "" as
3082           separator.  [ruby-dev:34591]
3084 Mon Jun 30 22:21:30 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3086         * io.c (argf_each_line): pass args to each_line. [ruby-dev:34958]
3088 Mon Jun 30 22:12:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3090         * gc.c (chain_finalized_object): should not delete from finalizer
3091           table until run.
3093         * gc.c (rb_gc_call_finalizer_at_exit): deferred_final_list may be
3094           empty first.
3096 Mon Jun 30 18:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3098         * gc.c (gc_finalize_deferred): allow object allocation in finalizers.
3100         * gc.c (rb_gc_call_finalizer_at_exit): ditto.
3102 Mon Jun 30 14:41:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3104         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc when
3105           USE_VALUE_CACHE is not defined (normal case).
3107 Mon Jun 30 10:28:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3109         * ext/syslog/syslog.c (syslog_write): syslog operations should be
3110           protected from $SAFE level 4.  a patch from Keita Yamaguchi
3111           <keita.yamaguchi at gmail.com>.
3113         * ext/syslog/syslog.c (mSyslog_close): ditto.
3115         * ext/syslog/syslog.c (mSyslog_set_mask): ditto.
3117 Mon Jun 30 03:01:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3119         * test/net/http/test_http.rb (_test_request__file): specify encoding
3120           explicitly.
3122         * test/net/http/utils.rb: ditto.
3124 Mon Jun 30 02:31:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3126         * encoding.c (rb_utf8_encindex): defined.
3128         * include/ruby/encoding.h (rb_utf8_encindex): ditto.
3130 Mon Jun 30 02:14:34 2008  Koichi Sasada  <ko1@atdot.net>
3132         * vm.c, vm_core.h,vm_core.h, vm_dump.c, iseq.c: rename class name
3133           VM -> RubyVM, and rename rb_cVM -> rb_cRubyVM.
3134           "VM" is too short name for class.
3136         * test/ruby/test_method.rb, test/ruby/test_settracefunc.rb: ditto.
3138         * include/ruby/ruby.h: rb_cRubyVM, rb_cEnv, rb_cISeq should not be
3139           exposed.
3141 Mon Jun 30 02:10:32 2008  Koichi Sasada  <ko1@atdot.net>
3143         * process.c (Init_process): fix to avoid a warning.
3145 Mon Jun 30 01:52:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3147         * test/ruby/test_parse.rb: remove tests for open_args.
3149 Sun Jun 29 23:01:54 2008  Tanaka Akira  <akr@fsij.org>
3151         * string.c (rb_str_format_m): make tmp volatile to avoid possible GC
3152           problem.
3154 Sun Jun 29 18:01:30 2008  Kouhei Sutou  <kou@cozmixng.org>
3156         * lib/rss/parser.rb, lib/rss/utils.rb: merge documents from ruby_1_8.
3158 Sun Jun 29 17:44:23 2008  Kouhei Sutou  <kou@cozmixng.org>
3160         * lib/rss/parser.rb (RSS::ListenerMixin#known_class): define to
3161           work with ruby 1.8.x too.
3163 Sun Jun 29 17:41:42 2008  Kouhei Sutou  <kou@cozmixng.org>
3165         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#to_feed): raise
3166           exception not return nil if RSS::Maker.make can't get required
3167           information.
3169         * test/rss/rss-assertions.rb: follow the above change.
3171 Sun Jun 29 17:37:23 2008  Kouhei Sutou  <kou@cozmixng.org>
3173         * lib/rss/maker/base.rb (RSS::Maker::RSSBase#make): require block.
3175         * test/rss/test_maker_{0.9,1.0,2.0}.rb: follow the above change.
3177 Sun Jun 29 17:33:34 2008  Kouhei Sutou  <kou@cozmixng.org>
3179         * lib/rss/maker/base.rb, lib/rss/maker/itunes.rb: don't use
3180           instance_eval to initialize variables. (speed up)
3182 Sun Jun 29 17:31:15 2008  Kouhei Sutou  <kou@cozmixng.org>
3184         * lib/rss/rss.rb, test/rss/test_version.rb (RSS::VERSION):
3185           0.2.4 -> 0.2.5.
3187 Sun Jun 29 11:36:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3189         * dir.rb: fix resource leak.
3191 Sun Jun 29 09:43:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3193         * lib/tmpdir.rb (@@systmpdir): prior LOCAL_APPDATA if possible, and
3194           should be clean.  based on a patch from arton <artonx AT
3195           yahoo.co.jp> at [ruby-dev:35269]
3197 Sun Jun 29 07:53:08 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3199         * ext/win32ole/win32ole.c (date2time_str): fix the overflow in
3200           some situation. [ruby-bugs-20793]
3202 Sat Jun 28 21:25:08 2008  Tanaka Akira  <akr@fsij.org>
3204         * include/ruby/ruby.h (struct RRegexp): new field usecnt.  replace
3205           str and len by src.
3207         * gc.c (gc_mark_children): mark src field of regexp.
3208           (obj_free): don't free str field.
3210         * re.c (REG_BUSY): removed.
3211           (rb_reg_initialize): prohibit re-initialize regexp.
3212           (rb_reg_search): use usecnt to prevent freeing regexp currently
3213           using.  this prevents SEGV by:
3214             r = /\A((a.)*(a.)*)*b/
3215             r =~ "ab" + "\xc2\xa1".force_encoding("euc-jp")
3216             t = Thread.new { r =~ "ab"*8 + "\xc2\xa1".force_encoding("utf-8")}
3217             sleep 0.2
3218             r =~ "ab"*8 + "\xc2\xa1".force_encoding("euc-jp")
3220 Sat Jun 28 21:15:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3222         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
3223           rb_usascii_str_new2): use inline versions only for constant
3224           literals.
3226 Sat Jun 28 13:12:06 2008  Tanaka Akira  <akr@fsij.org>
3228         * test/rubygems/test_gem.rb (test_self_path_APPLE_GEM_HOME): don't use
3229           fixed /tmp/apple_gem_home directory.
3231 Sat Jun 28 08:40:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3233         * ext/win32ole/win32ole.c: check String encoding when
3234           converting String to VT_BSTR in OLE.
3236         * test/win32ole/test_win32ole.rb: ditto.
3238 Sat Jun 28 01:08:42 2008  Tanaka Akira  <akr@fsij.org>
3240         * time.c (time_timespec): fix rounding negative float.
3242 Fri Jun 27 21:38:57 2008  Tanaka Akira  <akr@fsij.org>
3244         * struct.c: __size__ removed.  use the length of __members__ instead.
3245           (num_members): new function.
3247 Fri Jun 27 21:19:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3249         * test/inlinetest.rb (InlineTest.in_progname): workaround for frozen
3250           $0.  [ruby-dev:35261]
3252         * lib/test/unit/ui/console/testrunner.rb (TestRunner#finished): ditto.
3254 Fri Jun 27 17:45:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
3256         * lib/erb.rb: adjust line number for magic comment.
3258         * test/erb/test_erb.rb: add tests for def_method.
3260 Fri Jun 27 14:29:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3262         * parse.y (primary): empty not should call '!' on nil.
3263           cf [ruby-dev:35227]
3265 Fri Jun 27 14:25:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3267         * vm.c (vm_eval_body): if thrown exception is frozen, reraise it to
3268           create a new instance.
3270 Fri Jun 27 13:29:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3272         * include/ruby/intern.h (rb_str_new2, rb_tainted_str_new2,
3273           rb_usascii_str_new2): use with-length versions with strlen to
3274           optimize strlen, if optimized.
3276 Fri Jun 27 12:28:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3278         * lib/un.rb (mkmf): new command to create makefile.
3280 Fri Jun 27 11:06:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3282         * lib/un.rb (wait_writable): added help message.
3284 Fri Jun 27 06:52:54 2008  Koichi Sasada  <ko1@atdot.net>
3286         * configure.in: need a ",".
3288         * process.c (rb_fork): check CANNOT_FORK_WITH_PTHREAD macro.
3290 Fri Jun 27 06:50:56 2008  Koichi Sasada  <ko1@atdot.net>
3292         * vm_eval.c (vm_call_super): fix to call method_missing.
3293           [ruby-core:15719], [ruby-core:17340]
3295 Fri Jun 27 00:00:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3297         * ruby.c (set_arg0, ruby_prog_init): freeze $0.  a patch from Keita
3298           Yamaguchi <keita.yamaguchi at gmail.com>.
3300 Thu Jun 26 23:58:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3302         * string.c (rb_str_index_m, rb_str_rindex_m, rb_str_include): fix
3303           rdoc.
3305 Thu Jun 26 17:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3307         * variable.c (rb_f_trace_var): should not be allowed at safe level 4.  
3308           a patch from Keita Yamaguchi <keita.yamaguchi at gmail.com>.
3310 Thu Jun 26 11:04:30 2008  Eric Hodel  <drbrain@segment7.net>
3312         * lib/rubygems: Update to RubyGems 1.2.0 r1824.  Incorporates patch by
3313           Yusuke ENDOH [ruby-core:17353].
3315 Thu Jun 26 00:48:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3317         * parse.y (primary): not operand might be empty.  [ruby-dev:35227]
3319 Wed Jun 25 21:54:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3321         * parse.y (primary): make functional-style not operator to act
3322           like function.  see <http://d.hatena.ne.jp/ku-ma-me/20080624/p1>.
3324 Wed Jun 25 15:28:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3326         * array.c (rb_ary_fill): not depend on unspecified behavior at integer
3327           overflow.  reported by Vincenzo Iozzo <snagg AT openssl.it>.
3329 Wed Jun 25 13:42:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3331         * lib/erb.rb (ERB::Compiler:Buffer#new): push magic comment first.
3333         * lib/erb.rb (ERB::Compiler#compile): fix for broken input.
3335 Wed Jun 25 12:10:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3337         * lib/erb.rb (ERB::Compiler#compile): magic comment needs LF.
3339 Wed Jun 25 09:31:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3341         * lib/erb.rb (ERB::Compiler#compile): output magic comment.
3343 Tue Jun 24 22:14:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3345         * vm_eval.c (eval_string_with_cref): preserve parse_in_eval even if
3346           exception raised.
3348 Tue Jun 24 22:09:18 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
3350         * ext/win32ole/win32ole.c(ole_invoke): fix memory leak.
3351           [ruby-bugs-20792]
3353 Tue Jun 24 17:20:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3355         * configure.in (rb_cv_fork_with_pthread): check after check for
3356           pthread library, and define the macro when checked only.
3358 Tue Jun 24 17:04:39 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3360         * ext/io/wait/extconf.rb: check sys/socket.h for cygwin.
3362 Tue Jun 24 16:51:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3364         * io.c (io_reopen): remove cygwin handling because it seems to be for
3365           C's stdio.
3366           fixed [ruby-dev:35183]
3368 Tue Jun 24 11:12:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3370         * include/ruby/win32.h, win32/win32.c (rb_w32_getppid): now support
3371           getppid() on win32 (but only Win2k or later).
3373         * process.c (get_ppid): remove win32 special logic.
3375 Tue Jun 24 09:40:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3377         * ext/socket/socket.c (init_sock): socket is binmode on platforms
3378           which support binmode.
3380 Tue Jun 24 00:21:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3382         * compile.c (iseq_build_from_ary): initialize arg_opts, a patch from
3383           Adam Strzelecki <ono@java.pl> in [ruby-core:17220].
3385 Tue Jun 24 00:10:53 2008  wanabe  <s.wanabe@gmail.com>
3386         * compile.c (iseq_build_from_ary): fix expression to obtain 
3387           iseq->local_size and iseq->local_table_size.  [ruby-dev:35205]
3389 Mon Jun 23 11:31:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3391         * lib/mathn.rb (Rational::power2): removed incomplete method.
3392           see [ruby-dev:35195].   [ruby-core:17293]
3394 Sun Jun 22 14:16:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3396         * ext/readline/extconf.rb (have_readline_func): readline on Mac OS X
3397           needs headers to detect some functions.
3399 Sun Jun 22 09:51:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3401         * object.c (rb_class_superclass): rdoc improvement, a patch from
3402           Gaston Ramos <ramos.gaston AT gmail.com> in [ruby-core:17371].
3404 Sun Jun 22 09:22:32 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3406         * README.EXT: translated README.EXT.ja
3408 Sun Jun 22 00:42:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3410         * win32/win32.c (rb_w32_osid, rb_w32_osver, CreateChild): XP is
3411           is different from Vista about pipe handle inheritance.
3412           fixed [ruby-core:17367], reported by Lars Christensen <larsch at
3413           belunktum.dk>
3415 Sun Jun 22 00:38:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3417         * README.EXT.ja: add note about mark and free.
3419 Sun Jun 22 00:01:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3421         * io.c (rb_io_binmode_p, argf_binmode_p, Init_IO): new method
3422           IO#binmode? and ARGF.binmode?  [ruby-dev:35148]
3424 Sat Jun 21 17:33:50 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3426         * win32/win32.c (rb_w32_spawn): no longer support P_WAIT.
3428 Sat Jun 21 16:46:09 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3430         * thread_win32.c (native_sleep): must block reentrance when accessing
3431           th->unblock.
3432           fixed [ruby-core:17341], reported by Bill Kelly <billk at cts.com>
3434 Sat Jun 21 16:29:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3436         * parse.y (call_args2, open_args): removed.
3438         * parse.y (parser_yylex): unified warnings at space between method
3439           name and argument parenthesis.  [ruby-dev:33943]
3441 Sat Jun 21 16:21:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3443         * numeric.c (flo_round): get rid of overflow.
3445 Sat Jun 21 15:57:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3447         * lib/rdoc/parsers/parse_rb.rb (RDoc#collect_first_comment): skip
3448           magic comment.
3450 Sat Jun 21 15:54:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3452         * configure.in: check if fork works with pthread.
3454 Sat Jun 21 15:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3456         * tool/make-snapshot: ported to ruby.
3458         * tool/make-snapshot: fixed digests.
3460 Sat Jun 21 04:36:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3462         * ext/bigdecimal/lib/bigdecimal/jacobian.rb (Jacobian::dfdxi):
3463           typo fixed (raize -> raise).  [ruby-list:45101]
3465         * enumerator.c (enum_each_cons): typo in RDoc fixed.
3467 Sat Jun 21 00:45:34 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3469         * tool/make-snapshot: do not use sha256sum; use BASERUBY instead
3471         * common.mk (dist): use tool/make-snapshot instead
3473 Fri Jun 20 16:34:14 2008  Tanaka Akira  <akr@fsij.org>
3475         * process.c (Init_process): Process::Status#to_int removed.
3476           (PST2INT): defined.
3477           (pst_to_s): use PST2INT.
3478           (pst_inspect): ditto.
3479           (pst_equal): ditto.
3480           (pst_bitand): ditto.
3481           (pst_rshift): ditto.
3482           (pst_wifstopped): ditto.
3483           (pst_wstopsig): ditto.
3484           (pst_wifsignaled): ditto.
3485           (pst_wtermsig): ditto.
3486           (pst_wifexited): ditto.
3487           (pst_wexitstatus): ditto.
3488           (pst_success_p): ditto.
3489           (pst_wcoredump): ditto.
3490           (rb_f_system): ditto.
3492 Fri Jun 20 15:40:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3494         * array.c (rb_ary_store, rb_ary_splice): not depend on unspecified
3495           behavior at integer overflow.
3497         * string.c (str_buf_cat): ditto.
3499 Fri Jun 20 12:39:55 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3501         * process.c (rb_detach_process): store detached process ID in the
3502           thread local storage.  moved from lib/open3.rb.
3504 Fri Jun 20 11:57:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3506         * string.c (rb_str_sub_bang): should preserve replacement points
3507           since they may be altered in the yielded block.
3509 Fri Jun 20 11:07:56 2008  Tanaka Akira  <akr@fsij.org>
3511         * string.c (rb_memhash): randomize hash to avoid algorithmic
3512           complexity attacks.
3513           (rb_str_hash): use rb_memhash.
3515         * include/ruby/intern.h (rb_reset_random_seed): declared.
3517         * thread.c (rb_thread_atfork): call rb_reset_random_seed.
3519         * inits.c (rb_call_inits): call Init_RandomSeed at first.
3521         * random.c (seed_initialized): defined.
3522           (fill_random_seed): extracted from random_seed.
3523           (make_seed_value): extracted from random_seed.
3524           (rb_f_rand): initialize random seed at first.
3525           (initial_seed): defined.
3526           (Init_RandomSeed): defined.
3527           (Init_RandomSeed2): defined.
3528           (rb_reset_random_seed): defined.
3529           (Init_Random): call Init_RandomSeed2.
3531 Wed Jun 18 21:52:38 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3533         * array.c (ary_new, rb_ary_initialize, rb_ary_store,
3534           rb_ary_splice, rb_ary_times): integer overflows should be
3535           checked. based on patches from Drew Yao <ayao at apple.com>
3536           fixed CVE-2008-2726
3538         * string.c (rb_enc_cr_str_buf_cat): fixed unsafe use of alloca,
3539           which led memory corruption. based on a patch from Drew Yao
3540           <ayao at apple.com> fixed CVE-2008-2726
3542 Fri Jun 20 03:26:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3544         * process.c (rb_f_fork): NetBSD 4.0 or later can fork.
3546 Fri Jun 20 03:19:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3548         * test/testunit/collector/test_dir.rb: r15825 made it unnecessary to
3549           change String to Symbol.
3551         * test/testunit/collector/test_objectspace.rb: ditto.
3553 Fri Jun 20 03:14:31 2008  Eric Hodel  <drbrain@segment7.net>
3555         * lib/rubygems*, test/rubygems/*:  Update to RubyGems 1.1.1 r1784 (pre
3556           1.2).
3558 Fri Jun 20 03:01:59 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3560         * thread.c: try to remove false positive of deadlock detection (second
3561           trial).
3563 Fri Jun 20 02:16:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3565         * lib/mathn.rb (Rational::power2): typo fixed.  [ruby-core:17293]
3567 Fri Jun 20 02:11:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3569         * string.c (str_gsub): should preserve last successful match
3570           data.  [ruby-dev:35182]
3572 Fri Jun 20 01:07:28 2008  Koichi Sasada  <ko1@atdot.net>
3574         * KNOWNBUGS.rb, bootstraptest/pending.rb: move a bug (?) to pending.
3576 Fri Jun 20 00:40:08 2008  Koichi Sasada  <ko1@atdot.net>
3578         * proc.c (proc_new): fix to return Proc object if block is already
3579           in heap.  [ruby-core:15711]
3581         * bootstraptest/test_proc.rb: add a test.
3583 Fri Jun 20 00:18:04 2008  Koichi Sasada  <ko1@atdot.net>
3585         * thread_win32.c (native_sleep): fix to decrement sleeper count.
3587 Thu Jun 19 23:48:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3589         * test/net/http/test_http.rb: compare encodings of two strings before
3590           comparing themself, which suppress too big error output.
3592 Thu Jun 19 23:46:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3594         * ext/json/ext/parser/parser.rl, ext/json/ext/parser/parser.c: JSON
3595           text SHALL be encoded in Unicode.
3597 Thu Jun 19 23:17:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3599         * thread.c, thread_win32.c, vm_core.h: try to remove false positive of
3600           deadlock detection.
3602 Thu Jun 19 21:38:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3604         * ext/extmk.rb (extmake): check if compile before showing message.
3606 Thu Jun 19 21:35:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3608         * tool/make-snapshot: supported multiple snapshots.
3610 Thu Jun 19 20:37:00 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
3612         * lib/net/pop.rb (Net::POP3#set_all_uids): speed
3613           up. a patch from <m-sumi AT techfirm.co.jp> [ruby-list:45047]
3615 Thu Jun 19 17:44:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3617         * ext/etc/etc.c (Init_etc): define constant aliases Etc::Passwd
3618           and Etc::Group.  [ruby-dev:35150]
3620 Thu Jun 19 17:37:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3622         * string.c (str_alloc): specify 'inline' modifier.
3624         * string.c (str_alloc): remove cSymbol hack that no longer
3625           necessary.
3627         * string.c (scan_once): avoid retrieving encoding info unless
3628           necessary.
3630 Thu Jun 19 17:19:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3632         * string.c (rb_str_scan): String#scan should preserve last
3633           successful match data.  [ruby-dev:35106]
3635 Thu Jun 19 16:49:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3637         * missing/acosh.c (atanh): should set ERANGE to errno if parameter
3638           is the boundary case. fixed [ruby-dev:35155]
3640 Thu Jun 19 16:06:01 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3642         * ext/tk/lib/tkextlib/tile/treeview.rb: cannot configure tags.
3644 Thu Jun 19 11:48:33 2008  Koichi Sasada  <ko1@atdot.net>
3646         * test/ruby/test_enumerator.rb: fix to skip "with_memo" test.
3648 Thu Jun 19 11:40:55 2008  Koichi Sasada  <ko1@atdot.net>
3650         * vm_insnhelper.c (vm_throw): fix "return" process from "lambda".
3652         * bootstraptest/test_proc.rb: add a test.
3654         * bootstraptest/pending.rb: add a pending bug.
3656 Thu Jun 19 00:33:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3658         * test/etc/test_etc.rb: avoid infinite loop.  [ruby-dev:35158]
3660 Wed Jun 18 23:07:19 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
3662         * gc.c (rb_newobj): prohibit call of rb_newobj() during gc.
3663           a patch from Sylvain Joyeux in [ruby-core:12099].
3665 Wed Jun 18 21:08:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3667         * ruby.c (verbose_setter, opt_W_getter): fixed prototypes.
3669 Wed Jun 18 19:20:00 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3671         * ruby.c (opt_W_getter): use ruby_verbose directly instead of parameter
3672           because ruby_verbose is not a real variable, so the address of
3673           parameter is not collect.
3675 Wed Jun 18 18:31:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3677         * win32/win32.c (errmap): add some pipe errors.
3679         * win32/win32.c (rb_w32_write): set errno when CRT's errno is EINVAL
3680           for pipe errors.
3682 Wed Jun 18 18:09:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3684         * win32/win32.c (poll_child_status): set EINVAL to errno when
3685           GetExitCodeProcess() fails with ERROR_INVALID_HANDLE.
3687 Wed Jun 18 15:01:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3689         * io.c (rb_open_file): fs_encoding and fname_encoding is
3690           rb_encoding *.
3691           fixed [ruby-dev:35151]
3693 Wed Jun 18 14:30:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3695         * io.c (rb_open_file): not rb_enc_get_index but rb_enc_get.
3697 Wed Jun 18 13:49:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3699         * include/ruby/win32.h (pipe): now pipe is textmode. although this
3700           change is experimental, it will be spec if no compatibility problem
3701           is reported.
3703 Wed Jun 18 12:05:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3705         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
3706           public methods only.  [ruby-core:17283]
3708         * object.c (convert_type): ditto.
3710         * lib/singleton.rb (Singleton#_dump): conversion method should be
3711           public.
3713 Wed Jun 18 10:18:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3715         * ext/etc/etc.c (etc_passwd, etc_group): fixed rdoc.  a patch from
3716           okkez <okkez000 AT gmail.com> in [ruby-dev:35141].
3718 Wed Jun 18 08:58:16 2008  Eric Hodel  <drbrain@segment7.net>
3720         * lib/rubygems/*:  Fix errors for 1.9.
3722         * gem_prelude.rb:  Only remove methods from gem_prelude.rb when
3723           loading real RubyGems.
3725 Wed Jun 18 07:03:30 2008  Eric Hodel  <drbrain@egment7.net>
3727         * lib/rubygems/*:  Update to RubyGems r1778 (pre 1.2).
3729 Wed Jun 18 04:27:58 2008  Koichi Sasada  <ko1@atdot.net>
3731         * KNOWNBUGS.rb, bootstraptest/pending.rb: move pending bug.
3733 Wed Jun 18 04:24:20 2008  Koichi Sasada  <ko1@atdot.net>
3735         * vm.c, vm_insnhelper.c: fix escape process with "break" and "return"
3736           syntax in "lambda".  [ ruby-Bugs-19304 ], [ruby-core:17164]
3738         * KNOWNBUGS.rb, bootstraptest/test_proc.rb: add/move solved test.
3740 Wed Jun 18 01:51:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3742         * ext/tk/lib/multi-tk.rb: cannot access class variable from
3743           singleton method. 
3745 Wed Jun 18 00:03:33 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3747         * dir.c (Init_Dir): dir_foreach() takes variable argument.
3749 Tue Jun 17 23:04:24 2008  James Edward Gray II  <jeg2@ruby-lang.org>
3751         * lib/net/telnet.rb:  Fixing Telnet#wairfor() which was broken by
3752           changes to the Kernel::Integer() method.  [ruby-core:17272]
3754 Tue Jun 17 23:02:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3756         * ruby.c (opt_W_getter): made a hooked variable.
3758 Tue Jun 17 22:04:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3760         * enc/euc_jp.c (property_name_to_ctype): core dumped when sizeof(int)
3761           differs from sizeof(long).  [ruby-dev:35131]
3763         * enc/shift_jis.c (property_name_to_ctype): ditto.
3765         * enc/unicode.c (onigenc_unicode_property_name_to_ctype): ditto.
3767 Tue Jun 17 20:32:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3769         * common.mk (miniruby$(EXEEXT)): $(PREP) isn't always same as
3770           miniruby, and tests, debug, etc have no meaning when
3771           cross-compiling.
3773 Tue Jun 17 18:39:11 2008  Ryan Davis  <ryan@wrath.local>
3775         * common.mk: fixed dependencies on miniruby.
3777 Tue Jun 17 18:11:01 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3779         * include/ruby/win32.h (pipe): expand pipe buffer size.
3781 Tue Jun 17 17:07:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3783         * win32/win32.c (CreateChild): no need to inherit handles here because
3784           spawn'ed child cannot detect that STDIN is closed.
3786 Tue Jun 17 06:32:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3788         * dir.c (dir_data): add intenc and extenc.
3790         * dir.c (dir_s_alloc): ditto.
3792         * dir.c (dir_initialize): now accept internal_encoding and
3793           external_encoding.
3795         * dir.c (dir_s_open): changed for dir_initialize.
3797         * dir.c (dir_open_dir): ditto.
3799         * dir.c (dir_foreach): changed for dir_open_dir.
3801         * dir.c (dir_entries): changed for dir_open_dir.
3803         * dir.c (dir_enc_str): defined.
3805         * dir.c (dir_path): use dir_enc_str.
3807         * dir.c (dir_read): ditto.
3809         * dir.c (dir_each): ditto.
3811 Tue Jun 17 06:28:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3813         * io.c (io_set_encoding): defined.
3815         * io.c (rb_open_file): convert path on Windows and Mac OS X.
3817         * io.c (open_key_args): use io_set_encoding and now accept
3818           internal_encoding and external_encoding.
3820 Tue Jun 17 06:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3822         * encoding.c (rb_filesystem_encoding): defined.
3824         * include/ruby/encoding.h (rb_filesystem_encoding): added.
3826 Tue Jun 17 06:24:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3828         * ext/syck/rubyext.c: add encoding header.
3830 Tue Jun 17 01:52:50 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
3832         * ext/tk/tcltklib.c: SEGV when exit.
3834         * ext/tk/lib/tk.rb: add a check for safety to Tk.exit.
3836         * ext/tk/sample/irbtkw.rbw: freezes when receives SIGINT.
3838 Mon Jun 16 21:58:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3840         * ext/stringio/stringio.c (strio_each, strio_readlines): IO#each and
3841           IO#readlines do not affect $_.  [ruby-core:17277]
3843 Mon Jun 16 18:52:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3845         * lib/thwait.rb (ThreadsWait): Exception2MessageMapper no longer has
3846           extend_to method.  [ruby-core:17267]
3848 Mon Jun 16 14:46:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3850         * lib/e2mmap.rb (E2MM.def_e2message): typo.
3852 Mon Jun 16 09:43:27 2008  Akinori MUSHA  <knu@iDaemons.org>
3854         * enumerator.c (enumerator_with_object, Init_Enumerator):
3855           Temporarily back out with_memo, for which we need a better name.
3857 Mon Jun 16 07:14:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3859         * ext/stringio/stringio.c (strio_readline, strio_each)
3860           (strio_readlines): set lastline.  [ruby-core:17257]
3862 Mon Jun 16 01:49:39 2008  Koichi Sasada  <ko1@atdot.net>
3864         * eval.c (rb_f_block_given_p): fix to skip class frame.
3865           [ruby-core:14813]
3867         * KNOWNBUGS.rb, bootstraptest/test_method.rb: move solved test.
3869 Mon Jun 16 01:48:08 2008  Koichi Sasada  <ko1@atdot.net>
3871         * vm_dump.c (vm_stack_dump_raw): disable verbose debug output.
3873 Mon Jun 16 01:33:08 2008  Koichi Sasada  <ko1@atdot.net>
3875         * vm_core.h, thread.c: rename global_interpreter_lock to
3876           global_vm_lock.
3878 Sun Jun 15 18:40:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
3880         * ext/syck/rubyext.c (yaml_org_handler): associate encoding.
3882         * ext/syck/rubyext.c (syck_genericresolver_node_import): ditto.
3884 Sun Jun 15 18:17:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3886         * vm_core.h (rb_vm_t), vm.c (rb_vm_mark): moved preallocated special
3887           exceptions.
3889         * eval.c (Init_eval), gc.c (Init_GC), proc.c (Init_Proc): freeze
3890           preallocated special exceptions.
3892         * eval.c (rb_longjmp): duplicate the thrown exception to set backtrace
3893           if it was frozen.
3895         * gc.c (rb_memerror): raise nomem_error without backtrace if failed to
3896           make backtrace.
3898 Sat Jun 14 22:52:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3900         * ext/stringio/stringio.c (strio_sysread): should not raise at empty
3901           read.  a patch from Arthur Schreiber at [ruby-core:17245].
3903 Sat Jun 14 16:55:46 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3905         * file.c (file_expand_path): no need to expand root path which has no
3906           short file name.  [ruby-dev:35095]
3908 Sat Jun 14 11:59:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3910         * gc.h (STACK_UPPER): moved from gc.c
3912         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
3913           ruby_thread_init_stack): moved stack initialization from gc.c.
3915 Sat Jun 14 11:57:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3917         * gc.h (STACK_UPPER): moved from gc.c
3919         * thread.c, thread_{pthread,win32}.c (ruby_init_stack,
3920           ruby_thread_init_stack): moved stack initialization from gc.c.
3922 Sat Jun 14 07:52:53 2008  Tanaka Akira  <akr@fsij.org>
3924         * gc.c (ruby_initial_gc_stress): defined.
3925           (ruby_initial_gc_stress_ptr): defined.
3927         * debug.c (set_debug_option): use ruby_initial_gc_stress_ptr for
3928           gc_stress option.
3930 Sat Jun 14 00:09:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3932         * gc.c (ruby_gc_stress): moved to rb_objspace_t.
3934         * gc.c (gc_stress_get, gc_stress_set): VM local attribute.
3936         * signal.c (sigsegv): ditto.
3938 Fri Jun 13 21:55:48 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3940         * rational.c (nurat_equal_p): Rational(0,x) and 0 are equivalent,
3941           anyway.
3943 Fri Jun 13 21:26:39 2008  Tadayoshi Funaba  <tadf@dotrb.org>
3945         * complex.c (string_to_c, nucomp_s_convert): preserve the current
3946           backref.
3948         * rational.c (string_to_r, nurat_s_convert): ditto.
3950         * include/ruby/intern.h (rb_match_busy): added a declaration.
3952 Fri Jun 13 18:08:10 2008  Tanaka Akira  <akr@fsij.org>
3954         * lib/time.rb (Time.xmlschema): don't accept decimal dot without
3955           fractional digits.  fractional digits handling simplified.
3957 Fri Jun 13 17:20:40 2008  wanabe  <s.wanabe@gmail.com>
3959         * complex.c (string_to_c_internal): save and restore backref.
3960           fixed [ruby-dev:34991]
3962 Fri Jun 13 17:06:20 2008  wanabe  <s.wanabe@gmail.com>
3964         * rational.c (string_to_r_internal): save and restore backref.
3965           fixed [ruby-dev:34990]
3967 Fri Jun 13 14:41:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
3969         * README.EXT.ja: update about Fixnum. reported in
3970            <http://www.tmtm.org/ja/tdiary/?date=20080611#p01>
3972         * README.EXT.ja: describe about StringValueCStr().
3974         * README.EXT: ditto.
3976 Fri Jun 13 14:24:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
3978         * gc.c (rb_memerror): exit with EXIT_FAILURE instead of magic number.
3980         * gc.c (ruby_stack_check): STACK_LENGTH should be less than
3981           STACK_LEVEL_MAX.
3983 Fri Jun 13 12:55:37 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
3985         * enum.c (sort_by_i): use NODE_DOT2 instead of NODE_MEMO to avoid
3986           extra calls to is_pointer_to_heap() in GC.
3988         * enum.c (enum_zip): ditto.
3990 Fri Jun 13 00:41:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3992         * test/ruby/test_thread.rb: add a test.
3994 Thu Jun 12 23:30:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
3996         * thread.c (mutex_unlock): fix cond_notified consistency.
3998 Thu Jun 12 22:19:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4000         * thread_win32.c (native_sleep): fixed previous commit.
4002 Thu Jun 12 21:59:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4004         * thread.c, vm_core.h, vm.c, thread_pthread.c, thread_win32.c: add
4005           deadlock detection.  [ruby-dev:35044]
4007         * bootstraptest/test_thread.rb: add tests for above.
4009 Thu Jun 12 21:39:55 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4011         * complex.c: refactoring.
4013         * rational.c: ditto.
4015 Thu Jun 12 17:11:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4017         * regint.h: undefine USE_CAPTURE_HISTORY which is mentioned as
4018           unsupported in the Onigiruma document.
4020 Thu Jun 12 13:36:54 2008  Tanaka Akira  <akr@fsij.org>
4022         * include/ruby/ruby.h (rb_intern): use rb_intern2 with strlen for
4023           constant symbols to optimize strlen.
4025 Thu Jun 12 08:47:51 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4027         * io.c (read_all): should use io_read_encoding(), not
4028           io_input_encoding().
4030         * io.c (rb_io_getline_1): reduce calling of io_read_encoding().
4032         * string.c (rb_str_scan): need not to restore $~ value, so avoid
4033           pinning match object.
4035 Thu Jun 12 02:49:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4037         * ext/stringio/stringio.c (strio_init): rewind when reopened.
4039 Thu Jun 12 02:43:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4041         * array.c (rb_ary_zip): ANSI style.
4043 Thu Jun 12 02:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4045         * io.c (rb_io_reopen): clear read buffer.
4047 Thu Jun 12 00:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4049         * ext/tk: check proper conditions.  [ruby-dev:35047]
4051 Wed Jun 11 23:33:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4053         * io.c (io_fread): bypass buffered read if reading buffer is empty.
4055         * io.c (remain_size): do not add extra one byte.
4057 Wed Jun 11 12:15:17 2008  Tanaka Akira  <akr@fsij.org>
4059         * bootstraptest/runner.rb (assert_normal_exit): hide stderr output
4060           when success.
4062 Wed Jun 11 09:26:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4064         * common.mk (encs): need to pass miniruby path for windows.
4066 Wed Jun 11 05:53:20 2008  Koichi Sasada  <ko1@atdot.net>
4068         * vm.c, eval_intern.h (PASS_PASSED_BLOCK):
4069           set a VM_FRAME_FLAG_PASSED flag to skip this frame when
4070           searching ruby-level-cfp.
4072         * eval.c, eval_intern.h, proc.c: fix to check cfp.  if there is
4073           no valid ruby-level-cfp, cause RuntimeError exception.
4074           [ruby-dev:34128]
4076         * vm_core.h, vm_evalbody.c, vm.c, vm_dump.c, vm_insnhelper.c,
4077           insns.def: rename FRAME_MAGIC_* to VM_FRAME_MAGIC_*.
4079         * KNOWNBUGS.rb, bootstraptest/test*.rb: move solved bugs.
4081 Wed Jun 11 05:55:31 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
4083         * ext/tk/tcltklib.c: SEGV when tcltk-stubs is enabled.
4085         * ext/tk/tcltklib.c: avoid error on a shared object.
4087         * ext/tk/extconf.rb: support --with-tcltkversion
4089         * ext/tk/README.tcltklib: add document about --with-tcltkversion
4091         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb, ext/tk/lib/remote-tk.rb: 
4092           not work on $SAFE==4
4094         * ext/tk/lib/multi-tk.rb: Object#methods returns Symbols on Ruby1.9.
4096         * ext/tk/lib/tk/timer.rb: add TkTimer#at_end(proc) to register the 
4097           procedure which called at end of the timer.
4099         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemfont.rb, ext/tk/lib/font.rb: 
4100           support __IGNORE_UNKNOWN_CONFIGURE_OPTION__ about font options.
4102         * ext/tk/lib/*: treat __IGNORE_UNKNOWN_CONFIGURE_OPTION__
4104         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb, 
4105           ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb, 
4106           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: bug fix. 
4108         * ext/tk/lib/tk/text.rb: typo. call a wrong method.
4110         * ext/tk/lib/tk/itemconfig.rb: ditto.
4112         * ext/tk/lib/tk.rb, ext/tk/lib/tk/itemconfig.rb, 
4113           ext/tk/lib/tk/canvas.rb: support alias names of option keys.
4115         * ext/tk/lib/tk/grid.rb: lack of module-method definitions.
4117         * ext/tk/lib/tk/pack.rb, ext/tk/lib/tk/grid.rb: increase supported 
4118           parameter patterns of configure method.
4120         * ext/tk/lib/tk.rb: add TkWindow#grid_anchor, grid_column, grid_row.
4122         * ext/tk/lib/tk/wm.rb: methods of Tk::Wm_for_General module cannot
4123           pass the given block to methods of Tk::Wm module.
4125         * ext/tk/lib/tk/wm.rb: Wm#overrideredirect overwrites argument to 
4126           an invalid value.
4128         * ext/tk/lib/tk.rb: fix memory (object) leak bug.
4130         * ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: fix memory leak.
4132         * ext/tk/sample/demos-jp/aniwave.rb, ext/tk/sample/demos-en/aniwave.rb:
4133           bug fix.
4135         * ext/tk/lib/tkextlib/blt/component.rb, 
4136           ext/tk/lib/tkextlib/tile/tentry.rb, 
4137           ext/tk/lib/tkextlib/tile/treeview.rb: ditto.
4139         * ext/tk/lib/tkextlib/tile/tpaned.rb: improve TPaned#add.
4141         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget, 
4142           ext/tk/sample/demos-jp/style.rb, ext/tk/sample/demos-en/style.rb, 
4143           ext/tk/sample/demos-jp/bind.rb, ext/tk/sample/demos-en/bind.rb: 
4144           bug fix.
4146         * ext/tk/sample/ttk_wrapper.rb: ditto.
4148         * ext/tk/sample/ttk_wrapper.rb: support "if __FILE__ == $0" idiom.
4150         * ext/tk/sample/tktextio.rb: add binding for 'Ctrl-u' at console mode.
4152         * ext/tk/lib/tkextlib/tile.rb, ext/tk/lib/tkextlib/tile/style.rb, 
4153           ext/tk/sample/ttk_wrapper.rb: improve treating and control themes. 
4154           add Tk::Tile.themes and Tk::Tile.set_theme(theme).
4156         * ext/tk/lib/tkextlib/tile.rb: lack of autoload definitions.
4158         * ext/tk/lib/tkextlib/tile/tnotebook.rb: cannot use kanji (not UTF-8) 
4159           characters for headings.
4161         * ext/tk/lib/tkextlib/tkDND/shape.rb: wrong package name.
4163         * ext/tk/tkutil/tkutil.c: improve handling callback-subst-keys. 
4164           Now, support longnam-keys (e.g. '%CTT' on tkdnd-2.0; however, still
4165           not support tkdnd-2.0 on tkextlib), and symbols of parameters (e.g. 
4166           :widget=>'%W', :keycode=>'%k', '%x'=>:x, '%X'=>:root_x, and so on; 
4167           those are attributes of event object). It means that Ruby/Tk accepts
4168           not only "widget.bind(ev, '%W', '%k', ...){|w, k, ...| ... }", but 
4169           also "widget.bind(ev, :widget, :keycode, ...){|w, k, ...| ... }". 
4170           It is potentially incompatible, when user passes symbols to the
4171           arguments of the callback block (the block receives the symbols as
4172           strings). I think that is very rare case (probably, used by Ruby/Tk
4173           experts only). When causes such trouble, please give strings instead
4174           of such symbol parameters (e.g. call Symbol#to_s method).
4176         * ext/tk/lib/tk/event.rb, ext/tk/lib/tk/validation.rb, 
4177           ext/tk/lib/tkextlib/blt/treeview.rb, 
4178           ext/tk/lib/tkextlib/winico/winico.rb: ditto.
4180         * ext/tk/tkutil/tkutil.c: strings are available on subst_tables on 
4181           TkUtil::CallbackSubst class (it is useful on Ruby 1.9). 
4183         * ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tkextlib/iwidgets/hierarchy.rb, 
4184           ext/tk/lib/tkextlib/iwidgets/spinner.rb, 
4185           ext/tk/lib/tkextlib/iwidgets/entryfield.rb, 
4186           ext/tk/lib/tkextlib/iwidgets/calendar.rb, 
4187           ext/tk/lib/tkextlib/blt/dragdrop.rb, 
4188           ext/tk/lib/tkextlib/tkDND/tkdnd.rb, 
4189           ext/tk/lib/tkextlib/treectrl/tktreectrl.rb, 
4190           ext/tk/lib/tkextlib/tktable/tktable.rb: disable code piece became 
4191           unnecessary by reason of the changes of ext/tk/tkutil/tkutil.c.
4193         * ext/tk/lib/tk.rb, ext/tk/lib/multi-tk.rb: change strategy to define
4194           the constant WITH_ENCODING.
4196         * ext/tk/lib/tk.rb: fix bug on Tk::Encoding.tk_encoding_names.
4198 Wed Jun 11 03:40:37 2008  Akinori MUSHA  <knu@iDaemons.org>
4200         * lib/find.rb (Find#find): Return an enumerator if no block is
4201           given.
4203 Wed Jun 11 01:28:12 2008  Koichi Sasada  <ko1@atdot.net>
4205         * include/ruby/intern.h, proc.c: revert rb_proc_call() and
4206           create rb_proc_call_with_block() instead.
4208         * include/ruby/ruby.h, eval_jump.c, thread.c, vm_insnhelper.c: 
4209           rb_blockptr should not be exposed.
4211 Tue Jun 10 21:07:19 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4213         * test/ruby/test_float.rb: add tests. [ruby-dev:35009]
4215 Tue Jun 10 20:55:57 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4217         * complex.c (nucomp_s_convert): need not to initialize optional
4218           argument for rb_scan_args().
4220 Tue Jun 10 20:13:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4222         * ext/extmk.rb: negate default of --without-ext if --with-ext is
4223           given.
4225         * ext/extmk.rb: negate default of --without-ext.
4227 Tue Jun 10 17:43:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4229         * array.c (rb_ary_shuffle_bang): update RDoc.  [ruby-dev:35034]
4231 Tue Jun 10 17:30:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4233         * include/ruby/intern.h (rb_obj_instance_exec, rb_mod_module_exec):
4234           added prototypes.
4236 Tue Jun 10 17:00:29 2008  wanabe  <s.wanabe@gmail.com>
4238         * util.c (ruby_strtod): ruby_strtod don't allow a trailing
4239           decimal point like "7.". [ruby-dev:34835] [ruby-dev:35009]
4241 Tue Jun 10 13:48:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4243         * rational.c (nurat_s_convert): need not to initialize optional
4244           argument for rb_scan_args().
4246 Tue Jun 10 12:58:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4248         * ext/io/wait/wait.c (FIONREAD_POSSIBLE_P): suppress warnings.
4250 Tue Jun 10 12:43:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4252         * include/ruby/ruby.h (CONST_ID_CACHE): fixed statement expression.
4254 Tue Jun 10 11:25:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4256         * ruby.c (rb_argv0): revised for ext/tk.
4258         * include/ruby/encoding.h: not to use varargs.h since requiring C89.
4260 Tue Jun 10 00:50:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4262         * include/ruby/ruby.h, vm_core.h: add a type rb_blockptr.
4264         * vm_insnhelper.c (vm_yield_with_cfunc): vm_yield_with_cfunc receives
4265           blockptr and passes it to iterating block.
4267         * proc.c (rb_proc_call), include/ruby/intern.h: rb_proc_call receives
4268           blockptr.  "rb_proc_call(self, args, blockptr)" in C corresponds to
4269           "self.call(*args, &block)" in Ruby.
4271         * proc.c (proc_call): pass blockptr to block that is written in C.
4273         * proc.c (curry): receive blockptr and pass it to original proc.
4274           [ruby-core:15551]
4276         * vm.c (invoke_block_from_c): fix for change of vm_yield_with_cfunc.
4278         * thread.c (call_trace_proc), eval_jump.c (rb_call_end_proc): fix for
4279           change of rb_proc_call.
4281 Tue Jun 10 00:10:49 2008  Tanaka Akira  <akr@fsij.org>
4283         * common.mk (test-knownbug): give $(OPTS) for bootstraptest/runner.rb.
4285 Mon Jun  9 23:10:50 2008  Tanaka Akira  <akr@fsij.org>
4287         * eval.c (Init_stack): don't declare.  it is a macro now.
4289 Mon Jun  9 22:46:47 2008  wanabe  <s.wanabe@gmail.com>
4291         * compile.c : treat []&&= in virtually the same way as []||=.
4292           [ruby-dev:34679]
4294 Mon Jun  9 21:17:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4296         * enc/depend (clean): remove build directories.
4298         * test_knownbug.rb -> KNOWNBUGS.rb: renamed.
4300         * common.mk: apply above change.
4302 Mon Jun  9 21:14:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4304         * lib/mkmf.rb (configuration): set flags.
4306 Mon Jun  9 21:09:02 2008  Koichi Sasada  <ko1@atdot.net>
4308         * bootstraptest/test_knownbug.rb -> ./test_knownbug.rb: moved.
4310         * common.mk: add a rule "test-knownbug".
4312 Mon Jun  9 21:00:32 2008  Tadayoshi Funaba  <tadf@dotrb.org>
4314         * complex.c (nucomp_s_convert): can accept Complex('i').
4315           [ruby-dev:34991]
4317 Mon Jun  9 18:25:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4319         * include/ruby/ruby.h (CONST_ID): constant ID cache for non-gcc.
4321         * *.c: no cache in init functions.
4323 Mon Jun  9 17:56:30 2008  Akinori MUSHA  <knu@iDaemons.org>
4325         * lib/set.rb (Set#delete_if): Call to_a.
4326           (SortedSet#delete_if, TC_SortedSet#test_sortedset): Use super to
4327           yield elements in sorted order; [ruby-core:17144] by Arthur
4328           Schreiber.
4329           (SortedSet#each, SortedSet#each, TC_Set#test_each)
4330           (TC_SortedSet#test_sortedset): Return self; [ruby-dev:35002] by
4331           Arthur Schreiber.
4333 Mon Jun  9 17:47:09 2008  Tanaka Akira  <akr@fsij.org>
4335         * io.c (fptr_finalize): close IO object if fd is already closed.
4336           (rb_p): call rb_io_write just once.
4338 Mon Jun  9 15:37:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4340         * ruby.c (require_libraries): req_list may be NULL.  [ruby-dev:35008]
4342 Mon Jun  9 14:18:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4344         * vm_core.h (struct rb_vm_struct): moved src_encoding_index,
4345           ruby_debug, ruby_verbose, and rb_progname.
4347         * ruby.c (rb_argv0): no longer used.
4349         * ruby.c (struct cmdline_options): moved setids and req_list, and the
4350           latter is now an array, to prevent memory leak.
4352         * ruby.c (cmdline_options_init): added.
4354         * ruby.c (add_modules, require_libraries, init_ids, forbid_setid): use
4355           struct cmdline_options.
4357         * vm.c (vm_init2): initialize src_encoding_index.
4359         * vm.c: getters/setters for ruby_{debug,verbose}.
4361 Mon Jun  9 09:54:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4363         * include/ruby/intern.h (Init_stack): make to call ruby_init_stack.
4365 Mon Jun  9 08:12:40 2008  wanabe  <s.wanabe@gmail.com>
4367         * vm_insnhelper.c, vm.c, proc.c : revert r17021. [ruby-dev:34997]
4369 Mon Jun  9 03:12:23 2008  Koichi Sasada  <ko1@atdot.net>
4371         * bootstraptest/pending.rb: move/remove solved issues.
4373         * bootstraptest/test_class.rb: ditto.
4375 Mon Jun  9 02:32:58 2008  Akinori MUSHA  <knu@iDaemons.org>
4377         * ext/zlib/zlib.c (rb_deflate_init_copy): Copy buffers as well.
4378           [ruby-list:45018]
4380 Sun Jun  8 22:22:20 2008  wanabe  <s.wanabe@gmail.com>
4382         * vm_insnhelper.c, vm.c, proc.c (proc_call): allow call method with
4383           block that both is written in C. [ruby-dev:34273] [ruby-core:15551]
4385         *  proc.c (curry): use proc_call instead of rb_proc_call.
4386           [ruby-dev:34273] [ruby-core:15551]
4388 Sun Jun  8 21:50:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4390         * test/zlib/test_zlib.rb: add tests to achieve over 90% test coverage
4391           of zlib.
4393 Sun Jun  8 20:12:47 2008  wanabe  <s.wanabe@gmail.com>
4395         * vm_insnhelper.c (vm_throw): regard break as return in lambda.
4396           [ruby-dev:34646]
4398 Sun Jun  8 19:17:59 2008  Koichi Sasada  <ko1@atdot.net>
4400         * gc.c: add a build option "CALC_EXACT_MALLOC_SIZE".
4401           This option enables to calculate exact size of current 
4402           allocated size by malloc().  You can access these information
4403           with GC.malloc_allocated_size and GC.malloc_allocations.
4404           This option consume additional memory as a header of each memory
4405           object.  This option also helps to find out xmalloc()/xfree()
4406           consistency.  If you get trouble with this option, some extension
4407           using "free()" instead of "xfree()".
4408           This options is disabled by default.
4410 Sun Jun  8 18:15:38 2008  Koichi Sasada  <ko1@atdot.net>
4412         * array.c, bignum.c, cont.c, dir.c, dln.c, encoding.c, enumerator.c,
4413           enumerator.c (enumerator_allocate), eval_jump.c, file.c, hash.c,
4414           io.c, load.c, pack.c, proc.c, random.c, re.c, ruby.c, st.c,
4415           string.c, thread.c, thread_pthread.c, time.c, util.c, variable.c,
4416           vm.c, gc.c:
4417           allocated memory objects by xmalloc (ruby_xmalloc) should be
4418           freed by xfree (ruby_xfree).
4420         * ext/curses/curses.c, ext/dbm/dbm.c, ext/digest/digest.c, 
4421           ext/gdbm/gdbm.c, ext/json/ext/parser/parser.c, 
4422           ext/json/ext/parser/unicode.c, ext/openssl/ossl_cipher.c,
4423           ext/openssl/ossl_hmac.c, ext/openssl/ossl_pkey_ec.c,
4424           ext/sdbm/init.c, ext/strscan/strscan.c, ext/zlib/zlib.c:
4425           ditto.
4427 Sun Jun  8 01:15:11 2008  Tanaka Akira  <akr@fsij.org>
4429         * hash.c (hash_i): make Hash#hash order insensitive.
4430           (rb_hash_dup): use DUPSETUP.
4432 Sat Jun  7 23:47:35 2008  Akinori MUSHA  <knu@iDaemons.org>
4434         * ext/zlib/zlib.c (rb_deflate_initialize, Init_zlib): Fix up
4435           initialize_copy; [ruby-list:45016].
4437 Sat Jun  7 22:15:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4439         * configure.in (VENDOR_DIR): use LIBDIR instead of PREFIX as well as
4440           SITE_DIR.  a patch from Richard Brown <rbrown AT exherbo.org> in
4441           [ruby-core:17129].
4443 Sat Jun  7 21:37:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4445         * io.c (rb_f_open), re.c (rb_reg_search), transcode.c (str_transcode):
4446           suppress warnings.
4448         * util.c (quorem, rv_alloc, nrv_alloc): only used in dtoa().
4450 Sat Jun  7 16:06:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4452         * configure.in (CFLAGS, CXXFLAGS): append default flags.
4454 Sat Jun  7 01:23:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4456         * io.c (rb_open_file, rb_io_s_sysopen): fmode should be unsigned int.
4457           fixed [ruby-dev:34979]
4459 Fri Jun  6 23:46:19 2008  Koichi Sasada  <ko1@atdot.net>
4461         * vm_insnhelper.c (vm_callee_setup_arg): check simple flag before
4462           calling setup_arg function().  this change reduce function call.
4464 Fri Jun  6 21:51:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4466         * win32/Makefile.sub (COMMON_HEADERS): include ws2tcpip.h.
4468         * ext/socket/addrinfo.h (addrinfo, getaddrinfo, getnameinfo,
4469           freehostent, freeaddrinfo): undef before define because these are
4470           macros in some versions of Windows SDK.
4472           merged from ruby_1_8.
4474 Fri Jun  6 18:25:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4476         * test/iconv/utils.rb (default_test): override not to croak.
4478 Fri Jun  6 16:41:45 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4480         * include/ruby/win32.h: include ws2tcpip.h. fixed [ruby-Bugs-20528]
4482 Fri Jun  6 15:05:02 2008  Tanaka Akira  <akr@fsij.org>
4484         * gc.c (count_objects): clear hash after counting objects.
4486 Fri Jun  6 12:43:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4488         * test/ruby/test_dir.rb (TestDir::test_glob): glob file names not sorted.
4490 Fri Jun  6 00:05:33 2008  Tanaka Akira  <akr@fsij.org>
4492         * lib/time.rb (Time.xmlschema): don't use float.  fix
4493           http://rubyforge.org/tracker/index.php?func=detail&group_id=426&atid=1698&aid=20504
4495 Thu Jun  5 23:56:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4497         * test/ruby/test_gc.rb: add tests to achieve over 90% test coverage of
4498           gc.c.
4500         * test/ruby/test_objectspace.rb: ditto.
4502         * test/ruby/test_marshal.rb: ditto.
4504 Thu Jun  5 23:40:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4506         * gc.c (rb_objspace_alloc): this function is needed only when
4507           ENABLE_VM_OBJSPACE macro is defined.
4509         * vm.c: ditto.
4511 Thu Jun  5 23:31:21 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4513         * test/stringio/test_stringio.rb: add tests to achieve over 95% test
4514           coverage of stringio.
4516         * test/strscan/test_stringscanner.rb: ditto for strscan.
4518 Thu Jun  5 23:25:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4520         * eval.c (ruby_finalize_0): clear trace_func after executing END
4521           procs.
4523         * thread.c: fix typo.
4525 Thu Jun  5 22:50:50 2008  Tanaka Akira  <akr@fsij.org>
4527         * gc.c (os_obj_of): heaps may be modified in yield.
4529 Thu Jun  5 21:46:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4531         * st.c (st_reverse_foreach): comment out unused function.
4533         * util.c (dtoa): ditto.
4535 Thu Jun  5 20:30:46 2008  Akinori MUSHA  <knu@iDaemons.org>
4537         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_initialize):
4538           Add a null check for ssl; submitted by akira yamada
4539           in [ruby-dev:34950].
4541         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Define OP_NO_TICKET if
4542           SSL_OP_NO_TICKET is present; submitted by akira yamada
4543           in [ruby-dev:34944].
4545         * test/openssl/test_ssl.rb (OpenSSL#test_server_session): Add a
4546           workaround for the case where OpenSSL is configured with
4547           --enable-tlsext; submitted by akira yamada in [ruby-dev:34944].
4549 Thu Jun  5 20:24:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4551         * thread.c (thread_set_trace_func_m): fix check for proc argument.
4553 Thu Jun  5 20:17:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4555         * lib/rexml/document.rb (REXML::Document:write): leaky modification
4556           trans -> transitive.  [ruby-dev:32040], r13686
4558         * lib/rexml/text.rb (Text.check): fix check for illegal character.
4560 Thu Jun  5 14:03:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4562         * ext/iconv/iconv.c (iconv_create): find encoding without options.
4564 Thu Jun  5 07:48:32 2008  Koichi Sasada  <ko1@atdot.net>
4566         * string.c (hash): should be "static".
4568 Thu Jun  5 01:47:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4570         * test/ruby/test_transcode.rb: add tests for iso-2022-jp.
4572 Thu Jun  5 01:27:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4574         * test/ruby/test_process.rb: add tests.
4576 Wed Jun  4 23:10:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4578         * ext/zlib/zlib.c (rb_gzfile_set_mtime): fix typo.
4580 Wed Jun  4 18:53:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4582         * object.c (rb_obj_alloc): RDoc updated.  a patch from Gaston
4583           Ramos <ramos.gaston at gmail.com> in [ruby-core:17073].
4585 Wed Jun  4 18:36:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4587         * lib/rdoc.rb: massive spelling correction patch from Evan Farrar
4588           <evanfarrar at gmail.com> in [ruby-doc:1382] applied.
4590 Wed Jun  4 17:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4592         * ext/iconv/iconv.c (iconv_iconv): fix for length argument and now
4593           allows range.  [ruby-core:17092]
4595 Wed Jun  4 15:45:41 2008  Akinori MUSHA  <knu@iDaemons.org>
4597         * enumerator.c (enumerator_with_index, enumerator_with_memo): Fix
4598           grammo in rdoc.
4600 Wed Jun  4 13:06:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4602         * configure.in (CFLAGS, CXXFLAGS): include additional flags to
4603           CFLAGS and CXXFLAGS while configuration.
4605 Tue Jun  3 23:06:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4607         * ext/strscan/strscan.c (strscan_scan_full, strscan_search_full): fix
4608           document.
4610 Tue Jun  3 22:37:26 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4612         * ext/strscan/strscan.c (strscan_exist_p): fix document.
4614 Tue Jun  3 22:33:29 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4616         * test/ruby/test_dir.rb: add tests to achieve over 90% test coverage
4617           of dir.c.
4619         * test/ruby/test_encoding.rb: add tests for dummy?, name_list and
4620           aliases.
4622         * test/ruby/test_marshal.rb: add some tests.
4624 Tue Jun  3 22:25:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4626         * test/etc/test_etc.rb: new tests for etc.
4628 Tue Jun  3 19:35:02 2008  Akinori MUSHA  <knu@iDaemons.org>
4630         * enumerator.c (enumerator_with_memo): New method: with_memo().
4632 Tue Jun  3 20:04:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4634         * win32/Makefile.sub (miniruby$(EXEEXT)): miniruby cannot be
4635           written by miniruby itself.
4637 Tue Jun  3 19:33:22 2008  Akinori MUSHA  <knu@iDaemons.org>
4639         * enumerator.c (enumerator_init_copy): Take care of
4640           initialize_copy as well as initialize.
4642 Tue Jun  3 16:06:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4644         * file.c (file_expand_path): fix for non-existent files and SFN of
4645           symlinks.  [ruby-talk:303736]
4647 Tue Jun  3 15:12:01 2008  Akinori MUSHA  <knu@iDaemons.org>
4649         * lib/set.rb (Set#classify): Back out the `group_by' alias.
4650           Better think twice.
4652 Tue Jun  3 15:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
4654         * lib/set.rb (Set#collect, Set#select): Back out.  I thought it
4655           was consistent but turned out to be wrong.
4657 Tue Jun  3 13:41:08 2008  Akinori MUSHA  <knu@iDaemons.org>
4659         * lib/set.rb (Set#collect, Set#select): Override Enumerable
4660           methods and make them return a set. [ruby-core:17055]
4661           (Set#delete_if, Set#collect!, Set#reject!, Set#classify)
4662           (Set#divide, Set#delete_if): Return an enumerator if no block is
4663           given.
4664           (Set#classify): Define an alias `group_by' to override that of
4665           Enumerable.
4667 Tue Jun  3 13:35:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4669         * process.c (run_exec_pgroup): C99 ism.
4671 Tue Jun  3 12:51:57 2008  Akinori MUSHA  <knu@iDaemons.org>
4673         * enumerator.c (enumerator_allocate, enumerator_ptr): Properly
4674           detect if the object is initialized and raise error when
4675           appropriate.
4676           (enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052]
4678 Tue Jun  3 01:21:51 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4680         * test/ruby/test_method.rb: add a test.
4682 Tue Jun  3 00:26:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4684         * marshal.c (w_object): add a check for modification of array during
4685           its dump.
4687 Mon Jun  2 22:27:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4689         * enc/iso_8859_5.c: Large omicron should lowercase to small omicron.
4691         * test/ruby/test_big5.rb, test/ruby/test_cp949.rb,
4692           test/ruby/test_euc_jp.rb, test/ruby/test_euc_kr.rb,
4693           test/ruby/test_euc_tw.rb, test/ruby/test_gb18030.rb,
4694           test/ruby/test_gbk.rb, test/ruby/test_iso_8859.rb,
4695           test/ruby/test_koi8.rb, test/ruby/test_shift_jis.rb,
4696           test/ruby/test_windows_1251.rb: new tests for encoding.
4698         * test/ruby/test_utf16.rb, test/ruby/test_utf32.rb,
4699           test/ruby/test_regexp.rb: add tests.
4701 Mon Jun  2 21:56:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4703         * test/ruby/test_file.rb: add tests for uninitialized object.
4705         * test/ruby/test_class.rb: ditto.
4707         * test/ruby/test_thread.rb: ditto.
4709 Mon Jun  2 21:44:15 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4711         * re.c: fix SEGV by Regexp.allocate.names, Match.allocate.names, etc.
4713         * test/ruby/test_regexp.rb: add tests for above.
4715         * io.c: fix SEGV by IO.allocate.print, etc.
4717         * test/ruby/test_io.rb: add tests for above.
4719 Mon Jun  2 19:17:47 2008  Tanaka Akira  <akr@fsij.org>
4721         * test/ruby/test_argf.rb (teardown): remove renamed temporary files.
4723 Mon Jun  2 18:51:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4725         * lib/un.rb (wait_writable): wait until target files can be
4726           written actually.
4728         * win32/Makefile.sub (LDSHARED_0, LINK_SO): get rid of failure of
4729           mt.exe.
4731 Mon Jun  2 16:26:17 2008  Akinori MUSHA  <knu@iDaemons.org>
4733         * lib/delegate.rb (Delegator::MethodDelegation#respond_to):
4734           respond_to? should now take optional second argument; submitted
4735           by Jeremy Kemper <jeremy at bitsweat.net> in [ruby-core:17045].
4737 Mon Jun  2 16:14:18 2008  Akinori MUSHA  <knu@iDaemons.org>
4739         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Oops.  This
4740           change did not apply to trunk.  Backed out.
4742 Mon Jun  2 16:08:24 2008  Akinori MUSHA  <knu@iDaemons.org>
4744         * lib/erb.rb (ERB::Compiler::TrimScanner#scan_line): Fix a bug
4745           where tokens are not yielded one by one.
4747         * test/erb/test_erb.rb (TestERBCore#_test_01)
4748           (TestERBCore#test_02_safe_04): The expected value should come
4749           first for assert_equal().
4751 Mon Jun  2 13:06:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4753         * mkconfig.rb: hide build path from rbconfig.rb.
4755 Mon Jun  2 08:46:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4757         * util.c (ruby_strtod, dtoa): initialize more variables for error
4758           handling.
4760 Mon Jun  2 04:55:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4762         * suppress warnings on cygwin, mingw and mswin.
4764 Mon Jun  2 04:35:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4766         * enc/gb18030.c (gb18030_code_to_mbc): add 0x80000000
4767           for 4bytes character.
4769 Mon Jun  2 03:52:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4771         * ruby.c (set_arg0): reverted used variable definition.
4773 Mon Jun  2 03:23:25 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4775         * enc/gb18030.c (gb18030_mbc_to_code): mask by 0x7FFFFFFF
4776           because OnigCodePoint will be used as 32bit signed int.
4777           Masking by 0x7FFFFFFF is ok on GB18030;
4778           Minimum 4bytes character is 0x81308130.
4780 Sun Jun  1 22:29:35 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4782         * rational.c (string_to_r_internal): use rb_isdigit.
4784         * marshal.c (long_toobig): use %zd.
4786         * ruby.c (set_arg0): move unused variable definition.
4788 Sun Jun  1 12:18:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4790         * insns.def (DEFINE_INSN): subtract of pointers is ptrdiff_t.
4791           this is not int on 64bit system.
4793         * vm_dump.c (control_frame_dump): ditto.
4795         * vm_dump.c (stack_dump_each): ditto.
4797         * vm_dump.c (debug_print_register): ditto.
4799         * vm_dump.c (debug_print_pre): ditto.
4801         * transcode.c (str_transcode): ditto.
4803 Sun Jun  1 10:32:18 2008  Tanaka Akira  <akr@fsij.org>
4805         * test/ruby/envutil.rb (assert_normal_exit): show coredump status.
4807 Sat May 31 23:33:34 2008  Akinori MUSHA  <knu@iDaemons.org>
4809         * README, README.ja: Add a note about default C flags.
4811 Sat May 31 23:02:00 2008  Tanaka Akira  <akr@fsij.org>
4813         * gc.c (count_objects): clear given hash.
4815 Sat May 31 20:28:10 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4817         * test/ruby/test_regexp.rb: add tests.
4819 Sat May 31 19:11:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4821         * enc/utf_16{be,le}.c (utf16{be,le}_code_to_mbc):
4822           fix codepoint to bytes.
4824 Sat May 31 18:28:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4826         * suppress warnings with -Wwrite-string.
4828 Sat May 31 18:26:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
4830         * array.c (rb_ary_delete_if): should return enumerator if no block
4831           is given.  [ruby-dev:34901]
4833 Sat May 31 15:58:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4835         * Makefile.in, configure.in (warnflags): defaulted to -Wall
4836           -Wno-parentheses with gcc.  [ruby-dev:34810]
4838 Sat May 31 15:17:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4840         * include/ruby/mvm.h: new header file for MVM, and moved rb_vm_t and
4841           rb_thread_t from vm_core.h.
4843 Sat May 31 12:02:23 2008  Tanaka Akira  <akr@fsij.org>
4845         * test/ruby/envutil.rb (assert_normal_exit): show pid when fail.
4847 Fri May 30 23:55:56 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
4849         * test/ruby/test_rubyoptions.rb: add a test of RUBY_DESCRIPTION.
4851 Fri May 30 22:47:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4853         * test/ruby/test_regexp.rb: add tests.
4855 Fri May 30 22:40:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4857         * test/ruby/test_signal.rb: add tests to achieve over 80% test
4858           coverage of signal.c.
4860 Fri May 30 22:28:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4862         * signal.c (esignal_signo): fix SignalException#signo which returned
4863           nil absolutely.
4865         * signal.c (esignal_init): always prepend "SIG" to a string that is
4866           returned by SignalException#signm.
4868 Fri May 30 22:17:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4870         * test/ruby/test_argf.rb: rename a conflicting method name.
4872         * test/ruby/test_string.rb: ditto.
4874         * test/ruby/test_io.rb: ditto.
4876 Fri May 30 22:14:37 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4878         * compile.c (defined_expr): fix SEGV by defined?([1]).
4880 Fri May 30 12:18:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4882         * common.mk (prelude.c): simply depends on PREP.  [ruby-dev:34877]
4884         * enc/make_encdb.rb, enc/trans/make_transdb.rb: ditto.
4886 Fri May 30 10:55:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4888         * vm_core.h (struct rb_unblock_callback), thread.c
4889           (set_unblock_function), thread_{pthread,win32}.c (native_sleep):
4890           extracted from struct rb_thread_struct.
4892         * thread.c (reset_unblock_function): not check interrupts at leaving
4893           blocking region.  [ruby-dev:34874]
4895 Fri May 30 06:09:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
4897         * enc/utf_8.c: add UTF8-MAC (UTF-8-MAC).
4899 Fri May 30 04:17:13 2008  Akinori MUSHA  <knu@iDaemons.org>
4901         * enum.c (enum_count, count_all_i, Init_Enumerable),
4902           array.c (rb_ary_count): If no argument or block is given, count
4903           the number of all elements.
4905 Fri May 30 03:12:18 2008  Akinori MUSHA  <knu@iDaemons.org>
4907         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand):
4908           Int should be enough here.
4910 Fri May 30 02:35:00 2008  Akinori MUSHA  <knu@iDaemons.org>
4912         * ext/openssl/ossl_bn.c (ossl_bn_s_rand, ossl_bn_s_pseudo_rand),
4913           ext/openssl/ossl_pkey_dh.c (ossl_dh_s_generate)
4914           (ossl_dh_initialize),
4915           ext/openssl/ossl_pkey_dsa.c (ossl_dsa_s_generate),
4916           ext/openssl/ossl_rand.c (ossl_rand_bytes)
4917           (ossl_rand_pseudo_bytes, ossl_rand_egd_bytes),
4918           ext/openssl/ossl_x509store.c (ossl_x509stctx_set_error): Do not
4919           use FIX2INT() without checking the value type.  Use NUM2INT()
4920           instead; found by akr in [ruby-dev:34890].
4922 Fri May 30 02:08:20 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4924         * signal.c (esignal_init): handle a non-integer argument correctly,
4925           allowing SignalException.new(:INT).
4927 Fri May 30 00:59:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4929         * test/ruby/test_regexp.rb: add tests.
4931 Thu May 29 22:51:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4933         * test/ruby/test_require.rb: add a test for load with wrap flag, to
4934           achieve 100% test coverage of eval_jump.c.
4936 Thu May 29 22:47:53 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4938         * test/ruby/test_argf.rb: new tests for ARGF, to achieve over 85% test
4939           coverage of file.c.
4941         * test/ruby/test_io.rb: add tests.
4943 Thu May 29 22:41:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4945         * io.c (argf_readchar): raise EOFError, synchronizing IO#readchar.
4947 Thu May 29 22:29:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
4949         * io.c (argf_external_encoding, argf_internal_encoding): fix SEGV by
4950           ARGF.external_encoding.
4952 Thu May 29 17:52:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4954         * ext/zlib/extconf.rb: search zlib1, and regard mswin32 later than VC6
4955           as WIN32.  [ruby-core:16984]
4957 Wed May 28 18:05:28 2008  Akinori MUSHA  <knu@iDaemons.org>
4959         * array.c (rb_ary_nitems, Init_Array): Axe Array#nitems().
4960           cf. [ruby-dev:34676]-[ruby-dev:34713]
4962 Wed May 28 17:50:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4964         * win32/mkexports.rb (Exports#objdump, Exports#each_line): extracted.
4966 Wed May 28 17:41:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4968         * Makefile.in (MKPREP): appended $(RBCONFIG).
4970         * common.mk (enc.mk, prelude.c): not depend on $(RBCONFIG) on mswin32
4971           to get of compiling twice each time.
4973         * win32/Makefile.sub (prelude.c): not depend on $(PREP).
4975 Wed May 28 17:37:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4977         * win32/mkexports.rb (Exports::Mswin#each_export): speed up.
4979 Wed May 28 16:41:59 2008  Akinori MUSHA  <knu@iDaemons.org>
4981         * array.c (rb_ary_slice_bang): Call rb_ary_modify_check() at the
4982           beginning. [rubyspec]
4984 Wed May 28 16:12:44 2008  Akinori MUSHA  <knu@iDaemons.org>
4986         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
4987           Set the HTTP status code to 302 if a Location header field is
4988           present and the status code is not valid as a client
4989           redirection.  cf. RFC 3875 6.2.3, 6.2.4.
4991 Wed May 28 15:53:52 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
4993         * enc/trans/japanese.c (to_SHIFT_JIS_EF_infos): typo.
4995 Wed May 28 15:18:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
4997         * lib/singleton.rb (SingletonClassMethods): _load should be public.
4999 Wed May 28 13:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5001         * enc/trans/japanese.c: add workaround for Unicode to CP932.
5002           U+2015->0x815C, U+2225->0x8161, U+FF0D->0x817C, U+FF3C->0x815F,
5003           U+FF5E->0x8160, U+FFE0->0x8191, U+FFE1->0x8192, U+FFE2->0x81CA
5005 Wed May 28 12:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5007         * marshal.c (w_object, marshal_dump, r_object0, marshal_load): search
5008           private methods too.  [ruby-dev:34671]
5010         * object.c (convert_type): ditto.
5012 Wed May 28 08:42:51 2008  Tanaka Akira  <akr@fsij.org>
5014         * numeric.c: "%" is required before PRI?VALUE.
5016 Tue May 27 22:10:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5018         * eval_error.c (error_handle): SystemExit and SignalException throws
5019           TAG_RAISE but not TAG_FATAL.
5021         * thread.c (rb_thread_execute_interrupts): delay interrupts during
5022           raising exceptions.  [ruby-dev:34855]
5024 Tue May 27 20:18:30 2008  Akinori MUSHA  <knu@iDaemons.org>
5026         * array.c (rb_ary_slice_bang): Return an empty array instead of
5027           nil when pos is valid and len is adjusted from a valid value to
5028           zero; caught by RubySpec.
5030 Tue May 27 19:12:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5032         * Makefile.in (MKPREP), common.mk, win32/Makefile.sub (prelude.c): get
5033           rid of depending PREP with nmake.
5035         * common.mk (encs): depends on libruby.
5037 Tue May 27 19:00:22 2008  Akinori MUSHA  <knu@iDaemons.org>
5039         * ext/stringio/stringio.c (strio_each_char, Init_stringio): Add
5040           StringIO#{each_char,chars}.
5041           (Init_stringio): Fix StringIO#bytes.
5043 Tue May 27 17:54:35 2008  Akinori MUSHA  <knu@iDaemons.org>
5045         * ext/stringio/stringio.c (strio_each_byte): Return self instead
5046           of nil as the rdoc says.
5048 Tue May 27 15:36:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5050         * numeric.c (check_int): use PRIxVALUE format specifier.
5052         * numeric.c (check_uint, rb_num2fix, int_chr): ditto.
5054         * numeric.c (num_fdiv): fallback to_f should always return float
5055           result.  should not use #quo that may return rational.
5057         * numeric.c (num_div): should raise ZeroDivisionError.
5059         * numeric.c (fix_divide): ditto.
5061         * test/ruby/test_numeric.rb (TestNumeric::test_divmod): avoid
5062           ZeroDivisionError in tests.
5064 Tue May 27 13:14:53 2008  Akinori MUSHA  <knu@iDaemons.org>
5066         * enum.c (enum_to_a): Pass arguments through to #each().
5067           (enum_sort): Follow the enum_to_a signature change.
5068           (enum_reverse_each): Add #reverse_each().
5070 Tue May 27 13:12:37 2008  Akinori MUSHA  <knu@iDaemons.org>
5072         * io.c (Init_IO): Define ARGF.{lines,bytes,chars}.
5074 Tue May 27 12:06:37 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5076         * file.c (BUFCHECK): wrong condition. [ruby-core:16921]
5078         * file.c (file_expand_buf): shouldn't use buflen for length of string.
5080 Mon May 26 18:24:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5082         * file.c (BUFCHECK): no resize if enough room.
5084         * file.c (file_expand_path): use BUFCHECK.
5086 Mon May 26 17:48:42 2008  Akinori MUSHA  <knu@iDaemons.org>
5088         * enumerator.c (struct enumerator, enumerator_init)
5089           (enumerator_init_copy, enumerator_each): Eliminate iter.
5090           (enumerator_ptr): Do not hardcode the class name.
5091           (enumerator_with_index): Delay variable initialization after
5092           RETURN_ENUMERATOR().
5094 Mon May 26 17:23:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5096         * file.c (file_expand_path): add more space for '/'.
5098         * file.c (file_expand_path): should reset address of p after calling
5099           rb_str_resize(). [ruby-dev:34800]
5101 Mon May 26 16:49:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5103         * misc/ruby-mode.el (ruby-mode): use run-hooks if run-mode-hook is
5104           not available.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>
5105           in [ruby-dev:34853].
5107 Mon May 26 16:41:35 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5109         * file.c (ntfs_tail): filename which starts with '.' is valid.
5111         * file.c (file_expand_path): cygwin symlink support.
5113 Mon May 26 07:15:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5115         * vm_dump.c (rb_vm_bugreport): rb_make_backtrace has no arguments.
5117 Mon May 26 01:17:54 2008  Tanaka Akira  <akr@fsij.org>
5119         * test/ruby/envutil.rb (assert_normal_exit): signal description
5120           refined.
5122 Mon May 26 00:52:52 2008  Akinori MUSHA  <knu@iDaemons.org>
5124         * hash.c (env_each_key, env_each_value, env_reject_bang)
5125           (rb_env_clear, env_replace): Omit duplicated secure level check.
5127 Mon May 26 00:37:16 2008  Akinori MUSHA  <knu@iDaemons.org>
5129         * hash.c (env_each_value): Do not call env_values() twice.
5131 Sun May 25 17:54:36 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5133         * compile.c (iseq_compile): set local_table for
5134           ISEQ_TYPE_DEFINED_GUARD.
5136 Sun May 25 17:52:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5138         * compile.c (iseq_build_body): remove side effect from
5139           VM::InstructionSequence.load.
5141 Sun May 25 04:30:45 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5143         * test/ruby/test_modules.rb (remove_json_mixins): change judgment
5144           condition.
5146 Sun May 25 03:54:39 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5148         * test/ruby/test_modules.rb (test_ancestors, test_included_modules):
5149           ignore json mixins.
5151 Sun May 25 02:37:25 2008  Koichi Sasada  <ko1@atdot.net>
5153         * eval_method.c: renamed from vm_method.c.  "vm_method.c" is included
5154           by "vm.c".
5156         * vm_eval.c: added.  Some codes are moved from "eval.c"
5158         * common.mk: fix for above changes.
5160         * compile.c: make a vm_eval(0)
5162         * eval.c, eval_error.c, eval_intern.h, eval_jump.c, proc.c, vm.c,
5163           id.c, id.h, vm_core.h, vm_dump.c, vm_evalbody.c, vm_insnhelper.c,
5164           blockinlining.c: fix for above changes.  and do some refactoring.
5165           this changes improve rb_yield() performance.
5167 Sat May 24 22:32:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5169         * util.c (ruby_strtod): clear errno at the top of our own
5170           implementation of strtod(3).  [ruby-dev:34834] [ruby-dev:34839]
5172 Sat May 24 15:26:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5174         * compile.c (iseq_set_exception_table, NODE_WHILE, NODE_NEXT): remove
5175           special handling that decrements sp in CATCH_TYPE_NEXT for NODE_WHILE.
5177         * vm.c (vm_eval_body), vm_insnhelper.c (vm_throw): remove unused code.
5179 Sat May 24 08:13:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5181         * transcode.c (rb_str_transcode): argc is 1, and argv is &to.
5183 Fri May 23 17:55:11 2008  Akinori MUSHA  <knu@iDaemons.org>
5185         * array.c (rb_ary_slice_bang): Be consistent with Array#slice()
5186           and String#slice!().  Just return nil when a negative length or
5187           out of boundary index is given instead of raising an exception
5188           via internal functions.
5190 Fri May 23 16:44:34 2008  Akinori MUSHA  <knu@iDaemons.org>
5192         * enumerator.c (Init_Enumerator): Override
5193           Enumerable::Enumerator#each_with_index with #with_index.
5195 Fri May 23 12:23:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5197         * vm_core.h (rb_num_t): moved form vm.h.
5199         * tool/instruction.rb (RubyVM::Instruction#sp_increase_c_expr),
5200           tool/instruction.rb (RubyVM::VmBodyGenerator#make_header_operands):
5201           omit unused variables.
5203 Fri May 23 08:47:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5205         * error.c (exc_equal): == operator should be transitional.  
5206           [ruby-dev:34808]
5208         * error.c (syserr_eqq): === should be able to handle delegated
5209           objects as well.
5211 Fri May 23 06:15:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5213         * iseq.c (rb_iseq_compile_with_option): get rid of segv.
5215 Fri May 23 02:29:14 2008  Koichi Sasada  <ko1@atdot.net>
5217         * insns.def (opt_gt|ge|lt|le): use values directly to compare.
5219 Fri May 23 01:15:09 2008  Koichi Sasada  <ko1@atdot.net>
5221         * eval.c, eval_intern.h, include/ruby/intern.h, include/ruby/ruby.h,
5222           vm.c, vm_core.h, vm_insnhelper.c: remove pointless "const".
5224 Thu May 22 23:45:17 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5226         * compile.c (get_destination_insn, get_next_insn, get_prev_insn):
5227           peephole optimization should not ignore ISEQ_ELEMENT_ADJUST.
5229 Thu May 22 20:20:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5231         * marshal.c (check_dump_arg, check_load_arg): check if reentered.
5232           [ruby-dev:34802]
5234 Thu May 22 20:14:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5236         * iseq.c (iseq_load, iseq_data_to_ary): support
5237           ISEQ_TYPE_DEFINED_GUARD.
5239 Thu May 22 19:01:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5241         * vm.c (vm_get_ruby_level_cfp): moved from eval_intern.h.
5243         * vm.c (sdr, nsdr): define methods only if VMDEBUG is defined.
5245 Thu May 22 17:18:35 2008  Tanaka Akira  <akr@fsij.org>
5247         * array.c (rb_ary_compact_bang): fix reallocation size.
5249 Thu May 22 15:20:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5251         * eval_intern.h, vm_core.h, include/ruby/intern.h, include/ruby/ruby.h,
5252           vm.c: need to add const to prototypes, of course.
5254 Thu May 22 13:24:43 2008  Koichi Sasada  <ko1@atdot.net>
5256         * eval.c, vm.c, vm_core.h, vm_insnhelper.c: specify "const".
5258         * vm_opts.h: add a OPT_TOKEN_THREADED_CODE macro.
5260 Thu May 22 12:51:41 2008  Tanaka Akira  <akr@fsij.org>
5262         * insns.def (newhash): fix a variable definition: "const k".
5264 Thu May 22 12:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5266         * array.c (flatten): check if reentered.  [ruby-dev:34798]
5268 Thu May 22 11:39:59 2008  Tanaka Akira  <akr@fsij.org>
5270         * test/ruby/envutil.rb (assert_normal_exit): capture stdout and stderr
5271           of the child process.
5273 Thu May 22 08:28:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5275         * array.c (flatten): free memo hash table before raising exception.
5276           [ruby-dev:34789]
5278 Thu May 22 06:30:10 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
5280         * array.c (flatten): fix memory leak.
5282 Thu May 22 06:21:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5284         * ext/nkf/nkf-utf8/nkf.c (nkf_str_caseeql): added.
5286         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index): use nkf_str_caseeql.
5288 Thu May 22 05:45:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5290         * proc.c (proc_dup): should copy safe_level from src proc
5291           properly.  a patch from Keita Yamaguchi
5292           <keita.yamaguchi at gmail.com>
5294 Thu May 22 02:46:08 2008  Shugo Maeda  <shugo@ruby-lang.org>
5296         * lib/net/imap.rb: do not use Thread#raise. [ruby-dev:34739]
5298 Thu May 22 00:30:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5300         * test/ruby/test_require.rb: new tests for library requiring, to
5301           achieve over 90% test coverage of dln.c.
5303         * test/ruby/test_class.rb: add tests to achieve over 90% test coverage
5304           of class.c.
5306         * test/ruby/test_module.rb: ditto.
5308 Thu May 22 00:15:44 2008  Koichi Sasada  <ko1@atdot.net>
5310         * insns.def, vm_insnhelper.c: specify "const".
5312 Wed May 21 23:20:21 2008  Koichi Sasada  <ko1@atdot.net>
5314         * bootstraptest/test_eval.rb: fix syntax.
5316 Wed May 21 17:46:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5318         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_find_index):
5319           use strcasecmp. [ruby-dev:34787]
5321 Wed May 21 16:48:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5323         * array.c (rb_ary_compact_bang): avoid forceful realloc.
5325 Wed May 21 07:42:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5327         * string.c (rb_usascii_str_new): use rb_str_new.
5329         * string.c (rb_enc_str_new): ditto.
5331         * string.c (rb_usascii_str_new2): use rb_str_new2.
5333 Wed May 21 07:22:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5335         * encoding.c, include/ruby/encoding.h
5336           (rb_enc_associate, rb_enc_associate_index):
5337           returns obj. [ruby-dev:34778]
5339 Wed May 21 04:20:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5341         * encoding.c (rb_ascii8bit_encoding): use ENCINDEX_ASCII.
5343         * encoding.c, include/ruby/encoding.h (rb_ascii8bit_encindex):
5344           added.
5346         * encoding.c (rb_locale_encoding): use rb_usascii_encoding().
5348 Wed May 21 01:45:58 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5350         * test/ruby/test_file_exhaustive.rb (setup): workaround for Windows
5351           Vista.
5353         * test/ruby/envutil.rb (rubyexec): now Open3.open3 is supported on
5354           Windows.
5356         * test/ruby/test_process.rb: use ``||'' instead of ``;'' because
5357           cmd.exe not support it.
5359 Wed May 21 01:28:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5361         * transcode.c, include/ruby/encoding.h (rb_str_transcode):
5362           C API of encoding conversion for Ruby object.
5363           VALUE rb_str_transcode(VALUE str, VALUE to).
5365         * transcode.c (str_encode, str_encode_bang):
5366           rename from rb_tr_transcode or rb_str_transcode_bang.
5368 Tue May 20 23:26:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5370         * test/ruby/test_array.rb: fix tests for 64bit CPU.
5372 Tue May 20 20:59:56 2008  NARUSE, Yui  <naruse@ruby-lang.org>
5374         * ext/nkf/nkf-utf8/nkf.c (rb_nkf_convert) (nkf_enc_without_bom):
5375           reverted. nkf-utf8/nkf.c should be independent of ruby.
5377         * ext/nkf/nkf.c (options):
5378           moved from nkf-utf8/nkf.c. 
5379           override nkf's original settings for Unicode BOM.
5381 Tue May 20 13:20:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5383         * ext/nkf/nkf.c (rb_nkf_convert), ext/nkf/nkf-utf8/nkf.c
5384           (nkf_enc_without_bom): BOM is not a part of encodings.
5386         * ext/nkf/nkf.c (Init_nkf), ext/nkf/nkf-utf8/nkf.c (options):
5387           UTF-{16,32} without endian have no sense.
5389 Tue May 20 12:13:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5391         * ruby.c (proc_options, process_options): --dump option.
5393 Tue May 20 11:36:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5395         * include/ruby/ruby.h (PRI[diouxX]VALUE): printf format for VALUE.
5397         * gc.c (assign_heap_slot): suppress a warning.
5399 Tue May 20 03:42:43 2008  Koichi Sasada  <ko1@atdot.net>
5401         * eval.c, vm_insnhelper.c: fix cref in instance_eval
5402           and cvar_base search protocol.
5404         * bootstraptest/test_knownbug.rb, test_eval.rb: move solved test
5405           and add new tests.
5407         * test/ruby/test_eval.rb: fix tests for spec.
5409 Tue May 20 01:43:44 2008  Koichi Sasada  <ko1@atdot.net>
5411         * bootstraptest/test_knownbug.rb: fix a test.
5412           "block_given?" returns true if "yield" can be used.
5414 Tue May 20 01:07:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5416         * parse.y (assignable_gen): when "self = 1" was evaluated, unnecessary
5417           error message was output, which might cause null pointer access.
5419 Tue May 20 08:38:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5421         * string.c (rb_enc_strlen_cr): need to set ENC_CODERANGE_7BIT if
5422           search_nonascii() fails.    [ruby-dev:34751]
5424         * string.c (rb_str_reverse): preserve coderange info if the
5425           receiver is 7bit string.
5427         * string.c (rb_str_reverse_bang): ditto.
5429         * string.c (rb_str_reverse_bang): should have called
5430           single_byte_optimizable before rb_str_modify() that clears
5431           coderange info.
5433         * string.c (tr_trans): handle single bytes more eagerly.
5435 Mon May 19 23:32:12 2008  Koichi Sasada  <ko1@atdot.net>
5437         * vm.c (invoke_block_from_c): fix call flow.
5439 Mon May 19 23:19:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5441         * regexec.c (slow_search): check the case when the length is 1.
5442           The behavior of memcmp is undefined if the third argument is 0.
5444 Mon May 19 21:07:48 2008  Koichi Sasada  <ko1@atdot.net>
5446         * thread_pthread.c (native_thread_apply_priority): 
5447           fix argument range check.  [ruby-dev:33124]
5449 Mon May 19 18:22:35 2008  Akinori MUSHA  <knu@iDaemons.org>
5451         * ext/openssl/ossl_pkcs5.c (ossl_pkcs5_pbkdf2_hmac): Fix the type
5452           of md; pointed out by Takahiro Kambe <taca at back-street.net>
5453           in [ruby-dev:34748].
5455 Mon May 19 17:23:55 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5457         * regparse.c (PINC): use optimized enclen() instead of
5458           ONIGENC_MBC_ENC_LEN().
5460         * regparse.c (PFETCH): ditto.
5462         * regparse.c (PFETCH): small optimization.
5464         * regexec.c (slow_search): single byte encoding optimization.
5466         * regenc.h (enclen): avoid calling function when encoding's
5467           min_len == max_len.
5469         * re.c (rb_reg_regsub): rb_enc_ascget() optimization for single
5470           byte encoding.
5472         * re.c (rb_reg_search): avoid allocating new re_registers if we
5473           already have MatchData.
5475         * re.c (match_init_copy): avoid unnecessary onig_region_free()
5476           before onig_region_copy. 
5478         * encoding.c (rb_enc_get_index): remove implicit enc_capable check
5479           each time.
5481         * encoding.c (rb_enc_set_index): ditto.
5483         * encoding.c (enc_compatible_p): small refactoring.
5485         * include/ruby/encoding.h (rb_enc_dummy_p): inline
5486           rb_enc_dummy_p() and export related code.
5488 Mon May 19 14:32:03 2008  Koichi Sasada  <ko1@atdot.net>
5490         * version.h: fix strange change by version.h update tool.
5492 Mon May 19 14:18:13 2008  Koichi Sasada  <ko1@atdot.net>
5494         * bootstraptest/test_knownbug.rb: move solved tests.
5496         * bootstraptest/test_eval.rb, test_literal.rb, test_syntax.rb,
5497           test_thread.rb: ditto.
5499         * test/ruby/test_m17n.rb, test_proc.rb, test_sprintf.rb,
5500           test_string.rb, test/ruby/test_struct.rb: ditto.
5502 Mon May 19 13:23:03 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5504         * process.c (rb_spawn_internal): set last_status when status == -1
5505           because there is no path to set it on win32. this patch is derived
5506           from [ruby-core:16787], submitted by Luis Lavena <luislavena at
5507           gmail.com>
5509 Mon May 19 11:32:47 2008  Koichi Sasada  <ko1@atdot.net>
5511         * vm.c, insns.def, eval.c, vm_insnhelper.c: fix CREF handling.
5512           VM value stack frame of block contains cref information.
5513          (dfp[-1] points CREF)
5515         * compile.c, eval_intern.h, eval_method.c, load.c, proc.c,
5516           vm_dump.h, vm_core.h: ditto.
5518         * include/ruby/ruby.h, gc.c: remove T_VALUES because of above
5519           changes.
5521         * bootstraptest/test_eval.rb, test_knownbug.rb: move solved test.
5523 Sun May 18 22:26:51 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
5525         * lib/webrick/httpservlet/filehandler.rb: should normalize path
5526           name in path_info to prevent script disclosure vulnerability on
5527           DOSISH filesystems. (fix: CVE-2008-1891)
5528           Note: NTFS/FAT filesystem should not be published by the platforms
5529           other than Windows. Pathname interpretation (including short
5530           filename) is less than perfect.
5532         * lib/webrick/httpservlet/abstract.rb
5533           (WEBrick::HTTPServlet::AbstractServlet#redirect_to_directory_uri):
5534           should escape the value of Location: header.
5536         * lib/webrick/httpservlet/cgi_runner.rb: accept interpreter
5537           command line arguments.
5539 Sun May 18 02:54:46 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5541         * pack.c (pack_pack): check errno to detect error of ruby_strtoul.
5543         * pack.c (pack_unpack): ditto.
5545         * test/ruby/test_pack.rb: add a test for above.
5547 Sat May 17 23:53:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5549         * file.c (file_expand_path): fix for short file name on Cygwin.
5551 Sat May 17 18:03:52 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5553         * vm.c (Init_VM): removed the definition of Thread#initialize,
5554           which is overwritten in Init_Thread and is never used.
5556 Sat May 17 14:01:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5558         * array.c (rb_ary_sort_bang): should not free shared pointer, and set
5559           shared.  [ruby-dev:34732]
5561 Sat May 17 12:34:54 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5563         * thread_pthread.c (Init_native_thread): Kernel#.sleep used never to
5564           sleep on Mac OS X. Reported by arton <artonx AT yahoo.co.jp>.
5566         * thread_pthread.c (native_sleep): added error checks.
5568 Sat May 17 11:29:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5570         * file.c (rb_file_s_extname): first dot is not an extension name.
5572 Sat May 17 03:21:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5574         * array.c (rb_ary_sort_bang): stop memory leak.  [ruby-dev:34726]
5576         * re.c (rb_reg_search): need to free allocated buffer in re_register.
5578         * regexec.c (onig_region_new): more pedantic malloc check.
5580         * regexec.c (onig_region_resize): ditto.
5582         * regexec.c (STATE_CHECK_BUFF_INIT): ditto.
5584         * regexec.c (onig_region_copy): use onig_region_resize.
5586 Fri May 16 12:48:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5588         * math.c (to_flo): rb_Float() accepts even strings for input.
5590         * complex.c (nucomp_to_f): fix wrong message.
5592         * complex.c (nucomp_to_r): ditto.
5594         * object.c (rb_Float): do not check NaN for error.  NaN is a part
5595           of valid float values.
5597 Thu May 15 23:36:09 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5599         * test/ruby/test_string.rb: add tests to achieve over 90% test
5600           coverage of string.c.
5602         * test/ruby/test_m17n.rb: ditto.
5604         * test/ruby/test_symbol.rb: ditto.
5606         * test/ruby/test_pack.rb: ditto.
5608 Thu May 15 23:01:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5610         * string.c (tr_find): String#delete returned wrong result when multiple
5611           utf-8 arguments are passed.
5613         * test/ruby/test_m17n.rb (test_delete): add a test for above.
5615 Thu May 15 22:37:56 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5617         * parse.y (ripper_warningS): now used.
5619 Thu May 15 15:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5621         * file.c (file_expand_path): support for alternative data stream
5622           and ignored trailing garbage of NTFS.
5624         * file.c (rb_file_s_basename): ditto.
5626         * file.c (rb_file_s_extname): ditto.
5628 Thu May 15 13:43:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5630         * object.c (rb_cstr_to_dbl): no need for forceful warning when
5631           converting to float.  overflow is a nature of float values.
5633         * parse.y (parser_yylex): ditto.
5635 Thu May 15 13:23:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5637         * re.c (rb_reg_prepare_enc): error condition was updated for non
5638           ASCII compatible strings.
5640 Thu May 15 12:19:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5642         * ext/openssl/openssl_missing.c (HMAC_CTX_copy): adopted
5643           prototype change in openssl bundled with newer OpenBSD.
5644           a patch from Takahiro Kambe <taca at back-street.net> in
5645           [ruby-dev:34691].
5647 Wed May 14 22:09:25 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5649         * ChangeLog: fix typo.
5651 Wed May 14 21:49:14 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5653         * test/ruby/test_object.rb: new tests to achieve over 90% test
5654           coverage of object.c, eval.c and eval_method.c.
5656         * test/ruby/test_module.rb: ditto.
5658         * test/ruby/test_trace.rb: ditto.
5660         * test/ruby/test_integer.rb: ditto.
5662         * test/ruby/test_float.rb: ditto.
5664         * test/ruby/test_method.rb: ditto.
5666         * test/ruby/test_variable.rb: ditto.
5668         * test/ruby/test_eval.rb: ditto.
5670         * test/ruby/test_exception.rb: ditto.
5672         * test/ruby/test_class.rb: ditto.
5674 Wed May 14 12:46:37 2008  Koichi Sasada  <ko1@atdot.net>
5676         * iseq.c (insn_operand_intern): remove Qundef related code.
5678 Wed May 14 12:42:36 2008  Akinori MUSHA  <knu@iDaemons.org>
5680         * array.c (rb_ary_count): Override Enumerable#count for better
5681           performance.
5683 Wed May 14 11:29:06 2008  Koichi Sasada  <ko1@atdot.net>
5685         * insns.def: add a "putcbase" instruction.
5687         * compile.c, insns.def: fix to use putcbase instruction for
5688           class search.  Qundef should not be used.
5690 Wed May 14 07:49:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5692         * eval.c (rb_call0): defer calling of rb_frame_self() until it
5693           become really necessary.
5695         * eval.c (rb_call): ditto.
5697 Wed May 14 00:55:56 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5699         * test/ruby/test_io_m17n.rb: remove a duplicative method.
5701         * test/ruby/test_utf16.rb: rename a conflicting method name.
5703         * test/ruby/test_array.rb: ditto.
5705         * test/ruby/test_file_exhaustive.rb: ditto.
5707         * test/ruby/test_hash.rb: ditto.
5709         * test/ruby/test_env.rb: ditto.
5711         * test/ruby/test_fixnum.rb: ditto.
5713         * test/ruby/test_rational.rb: ditto.
5715 Wed May 14 00:45:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5717         * eval_method.c (rb_add_method): fix check for warning when
5718           Object#initialize is redefined. (same as 1.8)
5720 Tue May 13 23:32:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5722         * enum.c (enum_yield): use rb_yield_values2.
5724         * enum.c (DEFINE_ENUMFUNCS): macro to define enumerator and yielding
5725           functions.
5727         * enum.c (enum_all_func, enum_any_func, enum_one_func,
5728           enum_none_func): reduced duplicate code.
5730 Tue May 13 15:09:38 2008  Akinori MUSHA  <knu@iDaemons.org>
5732         * enumerator.c: Update rdoc.
5733           (enumerator_initialize): Discourage the use.
5734           (enum_each_slice, enum_each_cons, enumerator_each)
5735           (enumerator_with_index): Add a note about a call without a block.
5737 Tue May 13 08:25:31 2008  Tanaka Akira  <akr@fsij.org>
5739         * io.c (rb_f_gets): re-enable rdoc.
5740           (rb_f_readline): ditto.
5741           (rb_f_readlines): ditto.
5743 Tue May 13 07:56:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5745         * string.c (rb_str_cat): fixed buffer overrun reported by
5746           Christopher Thompson <cthompson at nexopia.com> in [ruby-core:16746]
5748 Mon May 12 23:37:57 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5750         * vm.c (collect_local_variables_in_env): remove unnecessary check
5751           which causes: x=1;proc{local_variables}.call #=> []
5753         * test/ruby/test_variable.rb: add a test for above.
5755 Mon May 12 23:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5757         * process.c, include/ruby/intern.h (rb_run_exec_options): externed.
5759         * process.c (save_redirect_fd, save_env_i, save_env, run_exec_dup2,
5760           run_exec_open, run_exec_pgroup, run_exec_rlimit, rb_run_exec_options):
5761           save parent's process environments.
5763         * process.c (rb_spawn_internal): remove calling run_exec_options()
5764           because cannot restore after spawn.
5766         * io.c (pipe_open): ditto.
5768         * test/ruby/test_process.rb (test_execopts_env): upcase environment
5769           variable name for case insensitive platforms.
5771         * win32/win32.c (init_env): set USER environment variable only when
5772           USERNAME is available.
5774 Mon May 12 22:23:01 2008  Tanaka Akira  <akr@fsij.org>
5776         * lib/date.rb (once): use Object#object_id instead of Symbol#to_i.
5778 Mon May 12 21:34:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5780         * test/ruby/envutil.rb (rubybin): return expanded rubyexe instead of
5781           expanded ruby if available.
5783 Mon May 12 20:19:55 2008  Akinori MUSHA  <knu@iDaemons.org>
5785         * enum.c (grep_i): Be aware of multiple values;
5786           fix [ruby-dev:34653].
5787           (grep_iter_i): Ditto.
5788           (count_i): Ditto.
5789           (find_i): Ditto.
5790           (find_index_i): Ditto.
5791           (find_all_i): Ditto.
5792           (reject_i): Ditto.
5793           (inject_i): Ditto.
5794           (inject_op_i): Ditto.
5795           (partition_i): Ditto.
5796           (group_by_i): Ditto.
5797           (first_i): Ditto.
5798           (sort_by_i): Ditto.
5799           (all_i): Ditto.
5800           (all_iter_i): Ditto.
5801           (any_i): Ditto.
5802           (any_iter_i): Ditto.
5803           (one_i): Ditto.
5804           (one_iter_i): Ditto.
5805           (none_i): Ditto.
5806           (none_iter_i): Ditto.
5807           (min_i): Ditto.
5808           (min_ii): Ditto.
5809           (max_i): Ditto.
5810           (max_ii): Ditto.
5811           (minmax_i): Ditto.
5812           (minmax_ii): Ditto.
5813           (min_by_i): Ditto.
5814           (max_by_i): Ditto.
5815           (minmax_by_i): Ditto.
5816           (member_i): Ditto.
5817           (take_i): Ditto.
5818           (take_while_i): Ditto.
5819           (drop_i): Ditto.
5820           (drop_while_i): Ditto.
5821           (cycle_i): Ditto.
5823         * enum.c (each_with_index): Update rdoc.  each_with_index() takes
5824           arguments that are passed through to each(), and a hash preserves
5825           key order.
5827 Mon May 12 19:05:24 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5829         * process.c (rb_spawn_internal): remove calling run_exec_options()
5830           because cannot restore after spawn. we'll fix this later.
5832 Mon May 12 18:16:44 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
5834         * process.c (rb_spawn_internal): need to call run_exec_options() before
5835           spawn if the platform doesn't have fork. [ruby-dev:34647]
5837 Mon May 12 15:20:02 2008  Tanaka Akira  <akr@fsij.org>
5839         * gc.c (ruby_vm_xmalloc): increase malloc_increase only if malloc
5840           succeeds.  failed malloc size can be huge.  it may increase
5841           malloc_limit too big which cause less GC and memory full.
5842           (ruby_vm_xrealloc): ditto.
5843           (rb_objspace): make params.limit and params.increase size_t.
5845 Mon May 12 15:04:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5847         * re.c (rb_reg_prepare_re): made non static with small refactoring.
5849         * ext/strscan/strscan.c (strscan_do_scan): should adjust encoding
5850           before regex searching.
5852 Mon May 12 13:57:19 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5854         * eval.c (is_defined): add NODE_OP_ASGN_{OR,AND}.  "defined?(a||=1)"
5855           should not operate assignment.  [ruby-dev:34645]
5857 Mon May 12 13:29:26 2008  Tanaka Akira  <akr@fsij.org>
5859         * bignum.c (bigzero_p): check from MSB to LSB.  [ruby-dev:34649]
5861 Mon May 12 12:32:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5863         * common.mk (RUBYOPT): affected BASERUBY too.  [ruby-talk:301514]
5865 Mon May 12 12:27:55 2008  Tanaka Akira  <akr@fsij.org>
5867         * gc.c (assign_heap_slot): fix condition for number of objects in
5868           a heap.
5870 Mon May 12 12:24:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5872         * string.c (sym_to_i): really removed.  [ruby-dev:34641]
5874 Mon May 12 11:15:55 2008  Yuki Sonoda (Yugui) <yugui@yugui.jp>
5876         * gc.c (assign_heap_slot):  put the binary search routine in order.
5878 Mon May 12 10:52:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5880         * ruby.c (ruby_init_gems), gem_prelude.rb: check if Gem is defined
5881           instead of Gem::Enable.
5883         * gem_prelude.rb (load_full_rubygems_library, const_missing): prevent
5884           infinite recursion.  [ruby-dev:34539]
5886 Sun May 11 23:19:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5888         * enum.c (all_iter_i, any_iter_i): reduced duplicated code.
5890 Sun May 11 22:54:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5892         * bootstraptest/runner.rb (main): leave -I options for purelib.rb
5893           untouched.
5895         * bootstraptest/runner.rb (main): handle relative path -r options.
5897 Sun May 11 19:04:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
5899         * test/ruby/test_thread.rb: kill and join temporal threads that are
5900           created in each test.
5902 Sun May 11 17:58:45 2008  Tanaka Akira  <akr@fsij.org>
5904         * test/ruby/test_process.rb (TestProcess#with_stdin): defined.
5905           (TestProcess#test_argv0_noarg): don't use redirect_fds.
5906           [ruby-dev:34647]
5908 Sun May 11 17:57:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5910         * configure.in (MINIRUBY): should not include extension library path.
5912 Sun May 11 14:40:36 2008  Tanaka Akira  <akr@fsij.org>
5914         * include/ruby/ruby.h (SIZET2NUM): new macro.
5915           (NUM2SIZET): new macro.
5917         * gc.c (struct rb_objspace): use size_t for increment, length and
5918           used for 64bit.
5919           (allocate_heaps): ditto.
5920           (assign_heap_slot): ditto.
5921           (set_heaps_increment): ditto.
5922           (gc_mark_all): ditto.
5923           (is_pointer_to_heap): ditto.
5924           (free_unused_heaps): ditto.
5925           (gc_sweep): ditto.
5926           (os_obj_of): ditto.
5927           (rb_gc_call_finalizer_at_exit): ditto.
5928           (count_objects): ditto.
5930 Sun May 11 13:14:09 2008  Tanaka Akira  <akr@fsij.org>
5932         * thread.c (thread_cleanup_func_before_exec): extracted from
5933           thread_cleanup_func not to touch pthread data.
5934           pthread_cond_destroy in forked process may cause deadlock on
5935           Debian GNU/Linux Etch on x86, x86-64 and IA64.
5936           this doesn't cause resource leak because the process will exec soon.
5937           (terminate_atfork_before_exec_i): defined.
5938           (rb_thread_atfork_before_exec): defined.
5940         * include/ruby/intern.h (rb_thread_atfork_before_exec): declared.
5942         * process.c (rb_exec_atfork): call rb_thread_atfork_before_exec
5943           instead of rb_thread_atfork.
5945         * io.c (popen_exec): call rb_thread_atfork_before_exec instead of
5946           rb_thread_atfork.
5948 Sat May 10 22:14:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5950         * string.c (tr_trans): single '^' does not mean negation.
5951           [ruby-dev:34632]
5953         * string.c (tr_trans): should check src size, not str size.
5954           [ruby-dev:34637]
5956         * string.c (tr_trans): should not turn on modify flag if no
5957           modification happens.  [ruby-dev:34631]
5959 Sat May 10 18:11:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5961         * string.c (rb_str_each_line): zero length record separator should
5962           split a string into paragraphs.  [ruby-dev:34586]
5964         * string.c (rb_str_each_line): RDoc updated.
5966 Sat May 10 11:36:20 2008  Tanaka Akira  <akr@fsij.org>
5968         * vm.c (env_mark): mark env->block.self.  prevent SEGV when GC occur
5969           in prepare_iseq_build with gcc version 3.4.6 [FreeBSD] 20060305 on
5970           FreeBSD/amd64.
5972 Fri May  9 19:16:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5974         * thread.c (timeofday): use monotonic clock.  based on a patch
5975           from zimbatm <zimbatm at oree.ch> in [ruby-core:16627].
5977 Fri May  9 07:47:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5979         * cont.c (cont_restore_0): dynamic stack direction code should be
5980           consistent with static one.  [ruby-talk:301152]
5982 Fri May  9 00:03:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5984         * parse.y (arg): operator assignment "a += b rescue c" should be
5985           parsed as "a += (b rescue c)" just like normal assignment.
5986           [ruby-talk:301000]
5988 Thu May  8 18:14:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
5990         * bignum.c (rb_big_and): bit-wise operation should not take float
5991           values.  [ruby-dev:34612]
5993         * bignum.c (rb_big_or): ditto.
5995         * bignum.c (rb_big_xor): ditto.
5997 Thu May  8 17:44:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
5999         * common.mk, ext/extmk.rb, lib/mkmf.rb: use absolute path for RUBYOPT.
6001         * file.c (rb_find_file_ext): guard load_path from GC.
6002           gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) optimizes
6003           load_path by holding only RARRAY_LEN(load_path) and
6004           RARRAY_PTR(load_path) in registers on IA64 GNU/Linux Etch.
6006 Thu May  8 16:41:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6008         * configure.in (MINIRUBY), common.mk (RUBYOPT): add purelib.rb.
6009           [ruby-core:16642]
6011 Thu May  8 16:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6013         * parse.y (parser_yylex): ! and ? at the bottom are no longer part
6014           of valid symbol names.  [ruby-dev:34590]
6016 Thu May  8 15:36:11 2008  Tanaka Akira  <akr@fsij.org>
6018         * thread.c (rb_gc_save_machine_context): call FLUSH_REGISTER_WINDOWS
6019           to mark the register stack from GC on another thread.
6021 Thu May  8 15:14:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6023         * array.c (rb_ary_sort_bang): freeze temporary array.
6025 Thu May  8 13:19:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6027         * vm.c (rb_thread_mark): mark stat_insn_usage only when ptr is not
6028           null.
6030 Thu May  8 10:44:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6032         * array.c (sort_reentered): reentered check may be called from
6033           Array#sort.
6035 Thu May  8 09:51:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6037         * array.c (sort_1, sort_2): check for reentered and if elements are
6038           accessible.  [ruby-core:16679]
6040 Thu May  8 06:43:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6042         * dln.c (dln_find_exe_r, dln_find_file_r): reentrant versions.
6044         * file.c (rb_find_file_ext, rb_find_file), process.c (proc_exec_v),
6045           (rb_proc_exec, proc_spawn_v, proc_spawn), ruby.c (process_options):
6046           use reentrant versions.
6048 Thu May  8 06:27:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6050         * thread.c (rb_thread_key_p): thread local storage stores ID.
6052 Thu May  8 01:10:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6054         * string.c (tr_trans): should squeeze properly.  [ruby-dev:34587]
6056         * string.c (tr_trans): had a bug in treating multi-byte character
6057           replacement.
6059         * string.c (rb_str_delete_bang): need not to do anything for empty
6060           strings.
6062         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_delete): add
6063           test for empty receiver.
6065 Wed May  7 20:19:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6067         * ruby.c (process_options, ruby_set_argv): set encoding of rb_argv
6068           after Init_prelude() because cannot load encoding extensions before
6069           it.
6071 Wed May  7 20:00:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6073         * numeric.c (bit_coerce): float should not be a valid operand of
6074           bitwise operations.  [ruby-dev:34583]
6076 Wed May  7 19:35:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6078         * thread.c (rb_thread_key_p): should always convert symbol to ID.
6079           [ruby-dev:34588]
6081 Wed May  7 19:30:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6083         * numeric.c (fix_divide): float division should floor() before
6084           rounding into integer.  [ruby-dev:34584]
6086 Wed May  7 18:02:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6088         * string.c (sym_to_i): remove obsolete method.  preparation for
6089           symbol GC.
6091         * numeric.c (fix_to_sym): ditto.
6093         * numeric.c (fix_id2name): ditto.
6095 Wed May  7 17:43:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6097         * io.c (io_puts_ary): check recursion first.  [ruby-dev:34580]
6099 Wed May  7 17:41:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6101         * vm.c (vm_eval_body): initialize retval.  [ruby-dev:34576]
6103 Wed May  7 13:02:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6105         * bignum.c (rb_big_fdiv): flo.fdiv(NaN) should result NaN.
6107         * numeric.c (num_quo): renamed and moved from bignum.c.
6108           [ruby-dev:34582]
6110         * bignum.c (rb_big_fdiv): update RDoc description
6112         * rational.c (nurat_s_new_m): small refactoring.
6114         * bignum.c (rb_big2dbl): no need for forceful warning when
6115           converting to float.  overflow is a nature of float values.
6117 Wed May  7 00:54:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6119         * ext/zlib/zlib.c (gzreader_gets): may cause infinite loop.
6120           a patch from Kouya <kouyataifu4 at gmail.com> in
6121           [ruby-reference-manual:762].
6123 Tue May  6 02:08:18 2008  Tanaka Akira  <akr@fsij.org>
6125         * test/io/nonblock/test_flush.rb: don't set Thread.abort_on_exception.
6127         * test/net/imap/test_imap.rb: ensure disconnecting imap to terminate
6128           receiver thread.
6130 Tue May  6 00:29:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6132         * iseq.c (insn_operand_intern): should handle Qundef embedded in
6133           operand.  [ruby-core:16656]
6135 Tue May  6 00:00:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6137         * compile.c (iseq_compile_each): should call compile_cpath() for
6138           modules as well.  [ruby-dev:34585]
6140         * insns.def (defineclass): add undef handling.
6142 Mon May  5 23:49:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6144         * insns.def (defineclass): was using wrong variable.  [ruby-dev:34592]
6146 Mon May  5 20:07:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6148         * io.c (io_fflush): IO#flush problem within threads.  a patch from
6149           <s.wanabe at gmail.com> in [ruby-dev:34595].
6151 Mon May  5 19:58:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6153         * compile.c (defined_expr): protect some expression from
6154           segmentation fault.  a patch from wanabe <s.wanabe at gmail.com>
6155           in [ruby-dev:34593].
6157 Mon May  5 19:49:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6159         * struct.c (rb_struct_s_def): Struct.new(0) should not SEGV.
6160           based on the patch from wanabe <s.wanabe at gmail.com> in
6161           [ruby-dev:34594].
6163         * struct.c (make_struct): call to_str on name object.
6165 Mon May  5 17:17:40 2008  Tanaka Akira  <akr@fsij.org>
6167         * eval.c (ruby_cleanup): wrap ruby_finalize_0 by SAVE_ROOT_JMPBUF to
6168           avoid SEGV by at_exit { Fiber.new{}.resume } on IA64.
6170 Mon May  5 12:12:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6172         * array.c (rb_ary_slice_bang): should adjust length before making
6173           sub-array.
6175 Mon May  5 11:36:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6177         * array.c (rb_ary_dup): should dupe corresponding information.
6178           [ruby-dev:34581]
6180 Mon May  5 11:13:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6182         * compile.c (compile_cpath): use Qundef to denote cbase lookup.
6184         * insns.def (defineclass): Qundef is passed for cbase.
6186         * insns.def (setconstant): ditto.
6188         * vm_insnhelper.c (vm_check_if_namespace): use rb_inspect()
6189           instead of rb_obj_as_string() for better description.
6191 Mon May  5 02:10:23 2008  Tanaka Akira  <akr@fsij.org>
6193         * gc.c (set_heaps_increment): fix memory allocation strategy by
6194           determining heaps_inc from heaps_used, not objects_delta.
6195           (struct rb_objspace): delta removed.  change increment, length and
6196           used to long for LP64.
6197           (objects_delta): removed.
6198           (allocate_heaps): add next_heaps_length argument.
6199           (init_heap): renamed from add_heap.
6200           (garbage_collect): use heaps_increment in dont_gc.
6202 Sun May  4 21:09:32 2008  Tanaka Akira  <akr@fsij.org>
6204         * lib/getoptlong.rb: use $stderr instead of $deferr.
6206 Sun May  4 16:04:28 2008  Tanaka Akira  <akr@fsij.org>
6208         * time.c (obj2nsec): fix string argument.
6210 Sun May  4 14:29:14 2008  Tanaka Akira  <akr@fsij.org>
6212         * eval.c (rb_obj_respond_to): check the result of respond_to? method
6213           by RTEST.
6215 Sun May  4 12:57:58 2008  Tanaka Akira  <akr@fsij.org>
6217         * string.c (rb_str_each_line): return original string.
6219 Sat May  3 20:57:06 2008  Tanaka Akira  <akr@fsij.org>
6221         * test/ruby/envutil.rb (Test::Unit::Assertions#assert_normal_exit):
6222           new method.
6224 Sat May  3 18:10:54 2008  Tanaka Akira  <akr@fsij.org>
6226         * time.c (time_timespec): raise TypeError for nil and other objects
6227           which has no divmod method.
6229 Fri May  2 23:59:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6231         * io.c (internal_read_func, internal_write_func): split from
6232           internal_io_func.
6234 Fri May  2 23:55:15 2008  Tanaka Akira  <akr@fsij.org>
6236         * variable.c (rb_define_hooked_variable): guard *var from GC to
6237           prevent collecting argf under RUBY_DEBUG=gc_stress.
6239 Fri May  2 17:29:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6241         * range.c (range_step): call to_int if step is not a numeric
6242           value.  [ruby-dev:34575]
6244 Fri May  2 16:10:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6246         * range.c (range_step): do not forcefully convert steps into
6247           integers.  [ruby-dev:34571]
6249 Fri May  2 14:52:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6251         * misc/ruby-mode.el: move fontifying code from hook.  a patch from
6252           Phil Hagelberg <phil at hagelb.org> in [ruby-core:16636].
6254 Fri May  2 14:10:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6256         * range.c (range_step): step may be bignum.
6258 Fri May  2 13:52:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6260         * re.c (Init_Regexp): remove MatchData#select.  [ruby-dev:34563]
6262 Thu May  1 23:59:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6264         * bignum.c (rb_big_divide), numeric.c (fix_divide): check for result
6265           domain.  [ruby-dev:34559]
6267 Thu May  1 23:57:06 2008  James Edward Gray II  <jeg2@ruby-lang.org>
6269         * lib/net/telnet.rb:  This patch from Brian Candler adds a FailEOF mode which
6270           can be activated to have net/telnet raise EOFError exceptions when the
6271           remote connection is closed.  The default behavior remains unchanged though.
6273 Thu May  1 23:43:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6275         * range.c (range_step): check if step can be converted to an integer.
6276           [ruby-dev:34558]
6278         * range.c (range_step): allow float step bigger than zero but less
6279           than one.  [ruby-dev:34557]
6281 Thu May  1 23:20:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6283         * bignum.c (rb_big_divide): return an integer for idiv.
6284           [ruby-dev:34553]
6286 Thu May  1 20:47:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6288         * hash.c (rb_hash_s_create): should access converted hash value.
6289           [ruby-dev:34555]
6291 Thu May  1 20:31:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6293         * test/ruby/test_parse.rb (TestParse::test_void_expr_stmts_value):
6294           shut up warning.
6296         * rational.c (nurat_to_f): no need for forceful warning when
6297           converting to float.  overflow is a nature of float values.
6299 Thu May  1 16:10:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6301         * hash.c (env_delete_if): return enumerator if no block given.
6302           [ruby-dev:34554]
6304 Wed Apr 30 21:36:40 2008  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
6306         * lib/erb.rb (url_encode): [ruby-dev:34497] ERB::Util#url_encode
6307           bug fix. Reported by rubikitch.
6309         * test/erb/test_erb.rb: ditto
6311 Wed Apr 30 20:11:36 2008  James Edward Gray II  <jeg2@ruby-lang.org>
6313         * lib/net/telnet.rb:  Fixing a bug where line endings would not be properly
6314           escaped when the two character ending was broken up into separate TCP
6315           packets.  Issue reported and patched by Brian Candler.
6317 Wed Apr 30 18:03:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6319         * load.c (rb_load_path), vm_core.h (rb_vm_t): moved to VM.
6321         * load.c (rb_get_load_path): returns absolute load path.
6323         * load.c (load_path_getter): $LOAD_PATH getter.
6325         * file.c (rb_find_file_ext, rb_find_file), ruby.c (push_include,
6326           ruby_init_loadpath): use the accessor.
6328         * vm.c (rb_vm_mark): mark load_path.
6330 Wed Apr 30 17:47:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6332         * re.c (rb_reg_search): use local variable.  a patch from wanabe
6333           <s.wanabe AT gmail.com> in [ruby-dev:34537].  [ruby-dev:34492]
6335 Wed Apr 30 16:10:18 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6337         * eval_intern.h: specify the values of the enumeration constants
6338           explicitly.  [ruby-dev:34489]
6340 Wed Apr 30 12:32:39 2008  Tanaka Akira  <akr@fsij.org>
6342         * process.c (check_exec_redirect_fd): prohibit duplex IO.
6343           (check_exec_fds): record maxhint even if close_others is not
6344           specified.
6345           (rb_exec_arg_fixup): renamed from rb_exec_arg_fix.
6347 Mon Apr 28 20:24:27 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6349         * rational.c (nurat_marshal_load): checks the given
6350           denominator. [ruby-dev:34536]
6352 Mon Apr 28 14:21:18 2008  Tanaka Akira  <akr@fsij.org>
6354         * include/ruby/ruby.h (POSFIXABLE): use FIXNUM_MAX+1 instead of
6355           FIXNUM_MAX to make it possible to convert to double accurately on
6356           environments with 64bit VALUE and 64bit double.
6357           It assumes FLT_RADIX is 2.
6358           fix RubyForge bug #14102.
6360 Mon Apr 28 12:48:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6362         * process.c (rb_exec_arg_addopt, rb_exec_arg_addopt): now can specify
6363           close_exec on having no fork environment (but still meaningless).
6365 Mon Apr 28 11:11:29 2008  Tanaka Akira  <akr@fsij.org>
6367         * process.c (run_exec_options): don't call FIX2INT for nil.
6369 Mon Apr 28 11:11:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6371         * proc.c (method_name): should return symbols instead of strings.
6372           [ruby-dev:34531]
6374 Mon Apr 28 09:02:43 2008  Tanaka Akira  <akr@fsij.org>
6376         * include/ruby/intern.h (rb_exec_arg_init): declared.
6377           (rb_exec_arg_addopt): declared.
6378           (rb_exec_arg_fix): declared.
6379           (rb_exec_initarg): removed.
6380           (rb_exec_getargs): removed.
6381           (rb_exec_initarg2): removed.
6383         * io.c (struct popen_arg): make execarg as a pointer.
6384           (popen_exec): follow popen_arg change.
6385           (pipe_open): add eargp argument.  extract argc and argv from eargp.
6386           use rb_exec_arg_addopt to add redirect options.
6387           (pipe_open_v): set up struct rb_exec_arg.
6388           (pipe_open_s): set up struct rb_exec_arg.
6390         * process.c (rb_exec_arg_addopt): new function extracted from
6391           check_exec_options_i.
6392           (check_exec_options_i): use rb_exec_arg_addopt.
6393           (rb_check_exec_options): opthash is always a hash now.
6394           (rb_exec_getargs): make it static.
6395           (rb_exec_fillarg): renamed from rb_exec_initarg2.  don't set up
6396           redirect_fds.
6397           (rb_exec_arg_init): new function.
6398           (rb_exec_arg_fix): new function.
6399           (rb_f_exec): use rb_exec_arg_init and rb_exec_arg_fix.  use
6400           rb_exec_arg_addopt to set close_others option.
6401           (run_exec_options): make close_others by default.
6402           (rb_spawn_internal): use rb_exec_arg_init and rb_exec_arg_fix.  use
6403           rb_exec_arg_addopt to set close_others option.
6405 Sun Apr 27 18:59:04 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6407         * rational.c (nurat_expt): use f_rational_new2. [ruby-dev:34524]
6409 Sun Apr 27 15:23:40 2008  Koichi Sasada  <ko1@atdot.net>
6411         * gc.c (gc_count): add a GC.count method.  This method returns
6412           a GC invoking count.
6414 Sun Apr 27 12:20:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6416         * vm_core.h (rb_vm_t), gc.c (rb_objspace, rb_newobj), vm.c
6417           (Init_BareVM): per-VM object space support, which is disabled now.
6419         * gc.c (rb_objspace_alloc), vm.c (Init_BareVM): should not use ruby
6420           malloc here.
6422         * gc.c (garbage_collect, etc): performance improvement by passing the
6423           reference instead of referring the global variable in each functions.
6425 Sun Apr 27 08:06:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6427         * ruby.c (ruby_set_argv): ARGV should be locale encoding.
6428           [ruby-list:44861]
6430 Sun Apr 27 01:46:29 2008  Tanaka Akira  <akr@fsij.org>
6432         * lib/open3.rb (Open3.popen3w): removed.
6433           (Open3.popen3): notice wait_thr.
6435 Sun Apr 27 01:13:05 2008  Eric Hodel  <drbrain@segment7.net>
6437         * lib/rdoc, test/rdoc:  Update to RDoc 2.0.0 r56.
6439 Sat Apr 26 21:30:40 2008  Tanaka Akira  <akr@fsij.org>
6441         * include/ruby/intern.h (rb_hash_dup): declared.
6443         * hash.c (rb_hash_dup): new function.
6445         * process.c (rb_spawn_internal): don't modify option hash.
6447 Sat Apr 26 18:36:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6449         * io.c, signal.c, thread.c, thread_win32.c, include/ruby/intern.h:
6450           suppress warnings.
6452 Sat Apr 26 17:42:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6454         * error.c (builtin_types), gc.c (count_objects): added Complex and
6455           Rational.
6457 Sat Apr 26 17:35:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6459         * error.c (rb_eNOERROR): renamed.
6461 Sat Apr 26 17:30:11 2008  Koichi Sasada  <ko1@atdot.net>
6463         * include/ruby/ruby.h, gc.c: remove T_BLOCK.
6465         * include/ruby/ruby.h: re-number T_xxx.
6467 Sat Apr 26 17:31:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6469         * process.c (rb_cProcessTms, rb_cProcessStatus): renamed.
6471         * error.c (builtin_types), signal.c (siglist), st.c (primes),
6472           struct.c (ref_func), time.c (months): constified.
6474 Sat Apr 26 13:00:41 2008  Tanaka Akira  <akr@fsij.org>
6476         * lib/open3.rb: double fork is replaced by spawn with Process.detach.
6477           (Open3.popen3w): new method to access the thread returned by
6478           Process.detach.
6480 Sat Apr 26 00:47:43 2008  Tanaka Akira  <akr@fsij.org>
6482         * process.c (rb_spawn_internal): new function to specify
6483           default_close_others.
6484           (rb_spawn): specify default_close_others true.
6485           (rb_f_system): call rb_spawn_internal with default_close_others as
6486           false.
6488 Sat Apr 26 12:26:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6490         * range.c (range_each): use INT2FIX() for fixnum values.
6492 Fri Apr 25 17:56:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6494         * gc.c (free_unused_heaps): preserve last used heap segment to
6495           reduce malloc() call.
6497 Fri Apr 25 17:54:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6499         * gc.c (HEAP_SIZE): use smaller heap segment (2K) for more chance
6500           to be freed.  based on patch from authorNari <authornari at gmail.com>.
6502         * gc.c (rb_newobj_from_heap): eventually allocate heap segments.
6504 Fri Apr 25 15:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6506         * process.c (rb_spawn): rb_exec_initarg() returns new argc and argv in
6507           earg.
6509 Fri Apr 25 12:37:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6511         * array.c (flatten): returns an instance of same class.
6512           [ruby-core:16554]
6514 Fri Apr 25 10:52:27 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6516         * include/ruby/win32.h: define mode_t for umask.
6518         * process.c (check_exec_options_i, check_exec_fds, run_exec_options):
6519           support "close_others" only when fork(2) is available.
6521 Fri Apr 25 00:16:11 2008  Tanaka Akira  <akr@fsij.org>
6523         * process.c: include sys/stat.h for umask.
6525 Thu Apr 24 23:25:17 2008  Tanaka Akira  <akr@fsij.org>
6527         * include/ruby/intern.h (rb_env_clear): declared.
6528           (rb_io_mode_modenum): declared.
6529           (rb_close_before_exec): declared.
6530           (struct rb_exec_arg): add options and redirect_fds field.
6531           (rb_check_argv): removed.
6532           (rb_exec_initarg): declared.
6533           (rb_exec_getargs): declared.
6534           (rb_exec_initarg2): declared.
6535           (rb_fork): add third argument: fds.
6537         * io.c (max_file_descriptor): new static variable to record maximum
6538           file descriptor ruby used.
6539           (UPDATE_MAXFD): new macro.
6540           (UPDATE_MAXFD_PIPE): new macro.
6541           (rb_io_mode_modenum): externed.
6542           (rb_sysopen): update max_file_descriptor.
6543           (rb_close_before_exec): new function.
6544           (popen_exec): redirection removed because it is done by extended
6545           spawn mechanism.
6546           (pipe_open): generate a hash for spawn options to specify
6547           redirections.
6548           (pipe_open_v): use rb_exec_getargs.
6549           (pipe_open_s): use rb_exec_getargs.
6550           (rb_io_initialize): update max_file_descriptor.
6552         * process.c (hide_obj): new function.
6553           (check_exec_redirect_fd): new function.
6554           (check_exec_redirect): new function.
6555           (check_exec_options_i): new function.
6556           (check_exec_fds): new function.
6557           (rb_check_exec_options): new function.
6558           (check_exec_env_i): new function.
6559           (rb_check_exec_env): new function.
6560           (rb_exec_getargs): new function.
6561           (rb_exec_initarg2): new function.
6562           (rb_exec_initarg): new function.
6563           (rb_f_exec): use rb_exec_initarg.
6564           (intcmp): new function.
6565           (run_exec_dup2): new function.
6566           (run_exec_close): new function.
6567           (run_exec_open): new function.
6568           (run_exec_pgroup): new function.
6569           (run_exec_rlimit): new function.
6570           (run_exec_options): new function.
6571           (rb_exec): call run_exec_options.
6572           (move_fds_to_avoid_crash): new function.
6573           (pipe_nocrash): new function.
6574           (rb_fork): use pipe_nocrash to avoid file descriptor conflicts.
6575           (rb_spawn): use rb_exec_initarg.
6576           (rlimit_resource_name2int): extracted from rlimit_resource_type.
6577           (rlimit_type_by_hname): new function.
6578           (rlimit_type_by_lname): new function.
6579           (rlimit_resource_type): use rlimit_type_by_hname.
6580           (proc_daemon): add fds argument for rb_fork.
6582         * hash.c (rb_env_clear): renamed from env_clear and externed.
6584         [ruby-dev:34086]
6586 Thu Apr 24 23:00:58 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6588         * test/ruby/test_thread.rb: fix typos.
6590         * test/ruby/envutil.rb (rubyexec): move Open3.popen3 call into timeout
6591           block.
6593 Thu Apr 24 22:34:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6595         * test/ruby/test_comparable.rb: new tests for Comparable, to achieve
6596           100% test coverage of compar.c.
6598 Thu Apr 24 17:19:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6600         * ruby.c (process_options): set safe_level before loading script.
6601           [ruby-dev:34421]
6603 Thu Apr 24 14:15:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6605         * dln.c (dln_find_1): prior files with extensions to files sans
6606           extensions.  [ruby-core:16517]
6608 Thu Apr 24 00:26:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6610         * lib/rdoc/ri/descriptions.rb: fixed wrong class nestings.
6612 Thu Apr 24 00:20:01 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6614         * test/ruby/test_settracefunc.rb: add a test for set_trace_func.
6616         * test/ruby/envutil.rb: move "rubyexec" method from test_rubyoptions.rb.
6618         * test/ruby/test_rubyoptions.rb: use rubyexec in envutil.rb.
6620         * test/ruby/test_thread.rb: add tests to achieve over 90% test coverage
6621           of thread.c.
6623 Wed Apr 23 15:28:52 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6625         * test/gdbm/test_gdbm.rb (TestGDBM#test_s_open_no_create): failed
6626           notice moved from comment to assertion message. [ruby-dev:29127]
6628 Wed Apr 23 11:49:54 2008  Akinori MUSHA  <knu@iDaemons.org>
6630         * lib/set.rb (Set#each, SortedSet#each, TC_Set#test_each): Return
6631           an enumerator if no block is given.
6633 Wed Apr 23 00:36:03 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6635         * test/openssl/test_ssl.rb (start_server): add timeout to server.join.
6637 Wed Apr 23 00:18:45 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6639         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): Improve
6640           tests of Symbol#to_proc.
6642 Tue Apr 22 22:40:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6644         * lib/drb/drb.rb (DRb::DRbServer::check_insecure_method): should
6645           check method names by symbols, not by strings.  a patch from
6646           Kazuhiro NISHIYAMA <zn at mbf.nifty.com> in [ruby-dev:34487].
6648 Tue Apr 22 22:15:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6650         * misc/ruby-style.el (ruby-style-{case,label}-indent): up list from
6651           indentation point.
6653 Tue Apr 22 21:09:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6655         * ext/nkf/nkf-utf8/nkf.c (score_table_A0, score_table_F0):
6656           type of content is unsigned char.
6658         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): 'c' is nkf_char.
6660         * ext/nkf/nkf-utf8/nkf.c (push_broken_buf): enc is 0 or pointer.
6662         * ext/nkf//nkf.c (options): type of option is unsigned char.
6664 Tue Apr 22 20:51:58 2008  NARUSE, Yui  <naruse@ruby-lang.org>
6666         * ext/nkf/nkf-utf8/nkf.c (z_conv): characters must be nkf_char.
6668 Tue Apr 22 19:23:05 2008  Akinori MUSHA  <knu@iDaemons.org>
6670         * enumerator.c (enumerator_initialize): Remove an undocumented
6671           feature (passing a block to the constructor) that's broken.
6672           This is not what I intended.
6674 Tue Apr 22 17:54:05 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6676         * vm_core.h (exec_event_hooks): ``inline'' is a type modifier, not
6677           a type itself.
6679 Tue Apr 22 16:24:27 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6681         * string.c (rb_enc_cr_str_buf_cat): do not use C++ comments.
6683 Tue Apr 22 16:23:53 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6685         * configure.in: use AC_USE_SYSTEM_EXTENSIONS.
6687 Tue Apr 22 16:23:16 2008  URABE Shyouhei  <shyouhei@ruby-lang.org>
6689         * vm_evalbody.c (DECL_SC_REG): use __asm__ instead.
6691 Tue Apr 22 16:18:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6693         * vm_evalbody.c (DECL_SC_REG): typo fixed.
6695 Tue Apr 22 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6697         * configure.in (struct timespec): needs time.h according to POSIX.
6699 Tue Apr 22 13:19:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6701         * thread.c (rb_thread_stop_timer_thread): should clear
6702           timer_thread_id after stopping it.
6704 Tue Apr 22 13:12:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6706         * thread.c (thread_join): remove the current thread from the join list
6707           of the target thread.
6709 Tue Apr 22 12:03:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6711         * vm_insnhelper.c (vm_get_ev_const): search from the base klass if it
6712           is given.
6714 Tue Apr 22 09:58:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6716         * ext/win32ole/win32ole.c: avoid warnings.
6718 Tue Apr 22 09:56:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6720         * file.c (eaccess): workaround for recent msvcrt's behavior.
6721           [ruby-core:16460]
6723 Mon Apr 21 19:08:32 2008  Tanaka Akira  <akr@fsij.org>
6725         * io.c (copy_stream_body): call rb_io_check_readable and
6726           rb_io_check_writable.
6728 Mon Apr 21 17:45:27 2008  Akinori MUSHA  <knu@iDaemons.org>
6730         * ext/dbm/dbm.c (fdbm_each_value, fdbm_each_key, fdbm_each_pair):
6731           GDBM#{each,each_pair,each_key,each_value}: Return an enumerator
6732           if no block is given.
6734         * ext/gdbm/gdbm.c (fgdbm_each_value, fgdbm_each_key,
6735           fgdbm_each_pair): GDBM#{each,each_pair,each_key,each_value}:
6736           Return an enumerator if no block is given.
6738         * ext/openssl/ossl_config.c (ossl_config_each):
6739           OpenSSL::Config#each: Return an enumerator if no block is given.
6741         * ext/readline/readline.c (hist_each): Readline::HISTORY#each:
6742           Return an enumerator if no block is given.
6744         * ext/sdbm/init.c (fsdbm_each_value, fsdbm_each_key,
6745           fsdbm_each_pair): SDBM#{each,each_pair,each_key,each_value}:
6746           Return an enumerator if no block is given.
6748         * ext/stringio/stringio.c (strio_each_byte, strio_each):
6749           StringIO#{each,each_line,each_byte}: Return an enumerator if no
6750           block is given.
6752         * ext/stringio/stringio.c (Init_stringio): Add #lines and #bytes,
6753           which are aliases to #each_line and #each_byte, respectively.
6755         * ext/win32ole/win32ole.c (fole_each): WIN32OLE#each: Return an
6756           enumerator if no block is given.
6758         * ext/zlib/zlib.c (rb_gzreader_each_byte, rb_gzreader_each):
6759           Zlib::GzipReader#{each,each_line,each_byte}: Return an
6760           enumerator if no block is given.
6762         * ext/zlib/zlib.c (Init_zlib): Add Zlib::GzipReader#lines and
6763           #bytes, which are aliases to #each_line and #each_byte,
6764           respectively.
6766 Mon Apr 21 17:01:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6768         * iseq.c (rb_iseq_compile_with_option): check if src is a string.
6769           [ruby-core:16453]
6771 Mon Apr 21 16:06:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6773         * enumerator.c (enumerator_init): preserve the method name in ID.
6775         * enumerator.c (enumerator_each): need not to call rb_to_id().
6777         * enumerator.c (enumerator_with_index): ditto.
6779 Mon Apr 21 11:00:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6781         * compile.c (defined_expr): capture exception during defined?
6782           evaluation.  a patch from wanabe <s.wanabe at gmail.com> in
6783           [ruby-dev:34461].  [ruby-core:16010]
6785 Mon Apr 21 10:06:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6787         * time.c: should include <errno.h> to refer errno.
6789 Mon Apr 21 09:58:04 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6791         * time.c (rb_strftime): check errno to detect strftime(3)'s error.
6792           this is workaround for recent version of MSVCRT.
6793           [ruby-dev:34456]
6795 Mon Apr 21 08:54:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
6797         * gc.c (ruby_xmalloc): use size_t for malloc argument instead of long.
6799 Sun Apr 20 21:00:21 2008  Akinori MUSHA  <knu@iDaemons.org>
6801         * enumerator.c, include/ruby/ruby.h: Export rb_cEnumerator.
6803 Sun Apr 20 20:47:50 2008  Akinori MUSHA  <knu@iDaemons.org>
6805         * enumerator.c: Resolve the method every time an enumeration
6806           method is run, not once when the enumerator is initialized as it
6807           was before, so that method_missing() and method (re)definition
6808           afterwards are both in effect; pointed out in: [ruby-core:16441]
6810 Sun Apr 20 15:11:00 2008  Tanaka Akira  <akr@fsij.org>
6812         * io.c (copy_stream_rbuf_to_dst): removed.
6813           (copy_stream_fallback_body): don't bypass write method.
6814           (copy_stream_body): simplified.
6816 Sun Apr 20 15:01:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6818         * vm_core.h (struct iseq_compile_data): moved label_no from
6819           new_label_body().
6821         * compile.c (iseq_set_exception_table): allocates catch_table only
6822           when entries exist.
6824         * compile.c (struct iseq_link_element, struct iseq_insn_data): made
6825           enum for debuggers.
6827 Sun Apr 20 14:44:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6829         * compile.c (iseq_compile_each): fix for splat in when and rescue.
6830           a patch from wanabe <s.wanabe AT gmail.com> in [ruby-dev:34429].
6831           [ruby-core:14537]
6833 Sun Apr 20 13:55:37 2008  Tanaka Akira  <akr@fsij.org>
6835         * io.c (copy_stream_fallback): write directly (bypassing write method)
6836           if possible.
6838 Sun Apr 20 12:49:03 2008  Tanaka Akira  <akr@fsij.org>
6840         * io.c (copy_stream_fallback): read directly (bypassing readpartial
6841           method) if possible.
6843 Sun Apr 20 04:45:13 2008  Tanaka Akira  <akr@fsij.org>
6845         * io.c (copy_stream_body): use readpartial and write method for
6846           non-IOs such as StringIO and ARGF.
6848 Fri Apr 18 20:57:33 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6850         * test/ruby/test_array.rb: add tests to achieve over 95% test coverage
6851           of array.c.
6853 Fri Apr 18 17:37:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6855         * gc.c (rb_gc_mark_locations): get rid of underflow.
6857         * gc.c (mark_current_machine_context): check if the main thread stack
6858           position may shrink under the initialized position.  [ruby-core:16436]
6860 Thu Apr 17 22:20:52 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6862         * enc/trans/utf_16_32.c (fun_so_to_utf_16be, fun_so_to_utf_16le): add
6863           parentheses to remove warnings of gcc.
6865         * io.c (rb_io_getc): remove unused variables.
6867         * compile.c (NODE_NEXT, NODE_REDO): remove unused labels.
6869         * ext/nkf/nkf.c (rb_nkf_convert): remove unused variables.
6871         * ext/syck/rubyext.c (syck_resolver_initialize,
6872           syck_resolver_detect_implicit, syck_emitter_emit): remove unused
6873           variables.
6875 Thu Apr 17 20:12:47 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6877         * test/ruby/test_rubyoptions.rb (test_search): enable some assertions.
6879         * test/ruby/test_rubyoptions.rb: flunk message in win32.
6881 Thu Apr 17 16:07:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6883         * test/ruby/test_rubyoptions.rb (ruby): run in C locale.
6885         * test/ruby/test_rubyoptions.rb (test_encoding): --encoding does not
6886           affect source code.
6888 Thu Apr 17 00:45:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6890         * test/ruby/test_process.rb (test_rlimit_nofile): reset RLIMIT_NOFILE
6891           before exit (for gcov).
6893         * test/ruby/test_rubyoptions.rb: new tests for option of ruby
6894           interpreter, to achieve over 95% test coverage of ruby.c.
6896 Wed Apr 16 02:40:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6898         * ruby.c (process_options): preludes and parser need to run in safe
6899           level 0.  [ruby-dev:34407]
6901 Wed Apr 16 02:26:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6903         * ruby.c (process_options): dln_find_file returns the pointer to a
6904           static buffer, so should copy it.  [ruby-dev:34409]
6906 Tue Apr 15 23:08:46 2008  Kouhei Sutou  <kou@cozmixng.org>
6908         * lib/xmlrpc/client.rb: fix cookie handling. [ruby-dev:34403]
6910         * test/xmlrpc/test_cookie.rb: add a test for the above fix.
6912 Tue Apr 15 19:20:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6914         * io.c: #undef rb_argv moved before #define.
6916 Tue Apr 15 18:02:17 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6918         * include/ruby/intern.h (rb_argv): replaced with rb_get_argv().
6919           [ruby-Bugs-19514]
6921 Tue Apr 15 17:10:59 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6923         * lib/net/http.rb, lib/net/smtp.rb, lib/net/pop.rb: update
6924           URLs of Japanese documents.
6926 Tue Apr 15 16:45:14 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
6928         * test/ruby/test_symbol.rb (TestSymbol#test_to_proc): add tests.
6930 Tue Apr 15 15:38:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6932         * misc/ruby-mode.el (ruby-encoding-map): added shift-jis for older
6933           versions.
6935         * misc/ruby-mode.el (ruby-mode-set-encoding):
6936           coding-system-to-mime-charset is not a standard function.
6937           [carbon-emacs:795]
6938           fix for the case that magic comment exists but coding system is
6939           absent.
6941         * misc/ruby-mode.el (ruby-mode): use write-contents-functions or
6942           write-contents-hooks for older versions.
6944 Tue Apr 15 07:21:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
6946         * complex.c (nucomp_div): [ruby-dev:34357]
6948         * complex.c (nucomp_abs): use hypot.
6950         * complex.c (nucomp_quo): do not force conversion.
6952         * test/ruby/test_complex.rb: omitted some meaningless tests.
6954 Mon Apr 14 23:25:50 2008  Yusuke Endoh  <mame@tsg.ne.jp>
6956         * test/ruby/test_objectspace.rb: add a test for
6957           ObjectSpace.count_objects.
6959 Mon Apr 14 22:44:24 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
6961         * file.c (SET_EXTERNAL_ENCODING): avoid call rb_enc_check() on
6962           half-baked result string.
6964         * re.c (rb_reg_search): make search reentrant.  [ruby-dev:34223]
6966         * test/ruby/test_parse.rb (TestParse::test_global_variable):
6967           should preserve $& variable.
6969 Mon Apr 14 17:23:27 2008  Akinori MUSHA  <knu@iDaemons.org>
6971         * hash.c (rb_hash_delete_if, rb_hash_reject_bang, env_delete_if,
6972           env_reject_bang): Return an enumerator if no block is given.
6974 Mon Apr 14 14:33:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6976         * compile.c, compile.h (compile_debug): made runtime option.
6978         * debug.c (ruby_debug_print_indent): returns if debug_level exceeds
6979           the threshold.
6981         * debug.c (ruby_debug_printf): printf to stderr.
6983         * iseq.c (make_compile_option, make_compile_option_value): added
6984           debug_level option.
6986         * vm_core.h (rb_compile_option_t): added debug_level.
6988         * vm_core.h (struct iseq_compile_data): added node_level.
6990 Mon Apr 14 12:52:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
6992         * gc.c (Init_stack): use ruby_init_stack.  [ruby-dev:34350]
6994         * gc.c (rb_objspace_t): packed globals.  [ruby-dev:34348]
6996         * gc.c (finalizers): removed.  [ruby-dev:34349]
6998 Mon Apr 14 11:30:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7000         * array.c (ary_new): new integer overflow check condition.
7001           suggested by TOYOFUKU Chikanobu <nobu_toyofuku at nifty.com> in
7002           [ruby-dev:34156].
7004         * array.c (rb_ary_initialize): ditto.
7006 Mon Apr 14 00:51:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7008         * test/ruby/test_parse.rb: add tests to achieve over 95% test coverage
7009           of parse.y.
7011 Sun Apr 13 23:53:58 2008  Akinori MUSHA  <knu@iDaemons.org>
7013         * enum.c (enum_cycle): Make Enumerable#cycle do a finite loop when
7014           the number of cycles is specified.
7016         * array.c (rb_ary_cycle): Ditto for Array#cycle.
7018 Sun Apr 13 18:52:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7020         * thread_pthread.c (lock_func): should not check interrupts in
7021           blocking region.  [ruby-dev:34378]
7023 Sat Apr 12 12:41:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7025         * eval.c (ruby_exec_node, ruby_run_node), ruby.c (process_options):
7026           use iseq instead of NODE.
7028         * gc.c (source_filenames): removed.
7030         * include/ruby/intern.h, parse.y (yycompile, parser_mark, parser_free,
7031           ripper_initialize): rb_source_filename() is no longer used.
7033         * compile.c, compile.h (ERROR_ARGS), parse.y (node_newnode, fixpos,
7034           parser_warn, e_option_supplied, warn_unless_e_option, range_op,
7035           cond0): nd_file is no longer used.
7037 Sat Apr 12 12:17:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7039         * prelude.rb (require_relative): move require_relative from
7040           lib/require_relative.rb.  [ruby-core:16356]
7042         * lib/require_relative.rb: removed.
7044 Sat Apr 12 05:55:57 2008  Eric Hodel  <drbrain@segment7.net>
7046         * lib/rubygems*, test/rubygems*:  Update to RubyGems 1.1.1 r1701.
7048 Sat Apr 12 03:13:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7050         * file.c (file_expand_path): set external encoding.
7052         * file.c (rb_file_s_basename, rb_file_s_dirname, rb_file_s_extname):
7053           copy encoding.
7055 Fri Apr 11 17:35:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7057         * enum.c (count_i): modified to shut warning up.
7059 Fri Apr 11 17:25:09 2008  Akinori MUSHA  <knu@iDaemons.org>
7061         * enum.c (count_i, count_iter_i, enum_count, enum_find_index):
7062           Reduce code.
7064 Fri Apr 11 17:06:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7066         * enum.c (find_index_i): modified to shut warning up.
7068         * enum.c (find_index_iter_i): ditto.
7070 Fri Apr 11 16:44:43 2008  Akinori MUSHA  <knu@iDaemons.org>
7072         * enum.c (enum_find_index): Add support for find_index(obj);
7073           [ruby-dev:34313].
7075         * array.c (rb_ary_index): Define find_index as an alias to index.
7077 Fri Apr 11 16:42:33 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7079         * lib/yaml/store.rb (YAML::load): modified to support empty
7080           database.
7082 Fri Apr 11 08:05:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7084         * marshal.c (w_object): add volatile to avoid potential GC bug.  a
7085           patch from Tomoyuki Chikanaga <chikanag at nippon-control-system.co.jp>
7086           in [ruby-dev:34311].
7088 Thu Apr 10 23:08:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7090         * lib/pstore.rb (PStore::dump, PStore::load): allow subclass
7091           overriding.  [ruby-dev:34305]
7093         * lib/yaml/store.rb (YAML::Store::marshal_dump_supports_canonical_option?):
7094           add a method to support faster PStore.
7096 Thu Apr 10 20:36:45 2008  Akinori MUSHA  <knu@iDaemons.org>
7098         * misc/rdebug.el, misc/README: Remove rdebug.el as per request
7099           from the maintainer and mention the ruby-debug project at
7100           RubyForge in README; bug#19043.
7102 Thu Apr 10 19:41:00 2008  Akinori MUSHA  <knu@iDaemons.org>
7104         * eval.c (rb_f_loop): Mention StopIteration in the document.
7106 Thu Apr 10 19:23:55 2008  Akinori MUSHA  <knu@iDaemons.org>
7108         * array.c (rb_ary_pop_m, rb_ary_shift_m): Update documents for
7109           #pop() and #shift().
7111         * array.c (rb_ary_slice_bang): Update document.  Assigning
7112           array[*args]= nil no longer removes elements.
7114 Thu Apr 10 16:58:44 2008  Tanaka Akira  <akr@fsij.org>
7116         * marshal.c (w_object): TYPE_USERDEF assigns id for ivars first.
7117           [ruby-dev:34159] by nagachika.
7119 Thu Apr 10 15:03:47 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7121         * lib/generator.rb: removed obsolete library.  [ruby-core:16233]
7123         * test/test_generator.rb: removed as well.  [ruby-dev:34306]
7125         * lib/pstore.rb: replaced by Hongli Lai's faster version.
7127 Thu Apr 10 10:27:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7129         * thread_pthread.c (native_sleep): sleep_cond is initialized at
7130           creation.  [ruby-Patches-19361].
7132 Wed Apr  9 14:43:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7134         * thread.c (lock_func): optimized and checks for interrupt_flag.
7135           based on a patch from Sylvain Joyeux in [ruby-Patches-19361] and
7136           [ruby-Patches-19362].
7138 Wed Apr  9 12:12:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7140         * test/ruby/test_thread.rb: new tests from Sylvain Joyeux in
7141           [ruby-Patches-19361].
7143 Tue Apr  8 21:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7145         * thread.c (rb_mutex_sleep): ensures to re-acquire at waking up.
7146           [ruby-Patches-19361]
7148 Tue Apr  8 11:00:14 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7150         * lib/complex.rb: remove Math first before overwriting by CMath.
7152 Tue Apr  8 10:34:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7154         * load.c (rb_require_safe): should check fname path after $SAFE is
7155           properly set.  [ruby-dev:34268]
7157         * re.c (rb_reg_quote): should always copy the quoting string.
7158           [ruby-core:16235]
7160 Tue Apr  8 10:30:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7162         * common.mk (prelude.c): depends on enc/prelude.rb.
7164         * enc/prelude.rb: fixed initial library names.
7166 Tue Apr  8 03:39:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7168         * load.c (rb_provided): check expanded path for relative path
7169           features, loading or loaded features are already expanded in 1.9.
7171         * variable.c (rb_autoload_load): no needs to check if provided before
7172           rb_require_safe.  [ruby-dev:34266]
7174 Mon Apr  7 22:41:21 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7176         * numeric.c: cancelled recent changes (except to remove rdiv).
7178         * bignum.c: ditto.
7180         * bignum.c: added rb_big_idiv.
7182 Mon Apr  7 15:51:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7184         * encoding.c (enc_init_db): moved to enc/encdb.c.
7186         * transcode.c (init_transcoder_table): moved to enc/trans/transdb.c.
7188         * enc/depend (enc/encdb.o enc/trans/transdb.o): depend on
7189           corresponding headers.
7191         * common.mk (COMMONOBJS): moved transcode.o from OBJS
7193 Mon Apr  7 12:26:32 2008  Koichi Sasada  <ko1@atdot.net>
7195         * bootstraptest/test_knownbug.rb: add a known-bug.
7197 Mon Apr  7 12:15:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7199         * range.c (range_each_func): should not leave a variable
7200           uninitialized, which could cause SEGV.
7202         * range.c (range_step): removed duplicated and unreachable code.
7204 Mon Apr  7 02:12:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7206         * string.c (rb_str_intern): need not to check if tainted.
7207           [ruby-dev:34219]
7209 Sun Apr  6 09:45:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7211         * dir.c (dir_tell): check if closed.  [ruby-core:16223]
7213 Sat Apr  5 23:17:20 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7215         * lib/cmath.rb: new.
7217         * lib/complex.rb: depends lib/cmath.rb.
7219         * lib/rational.rb: added rdiv.
7221         * complex.c: removed some math functions.
7223 Sat Apr  5 05:50:57 2008  Eric Hodel  <drbrain@segment7.net>
7225         * lib/rdoc/parsers/parse_rb.rb: Fix uninitialized variable warnings.
7227         * lib/rdoc/generator/html.rb: ditto.
7229         * lib/rdoc/options.rb: Fix shadowed variable warning.
7231         * lib/webrick/httprequest.rb: Fix redefined method warning.
7233 Sat Apr  5 02:13:52 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7235         * bignum.c (rb_cmpint): moved from compar.c, to check bignum
7236           zero.
7238 Fri Apr  4 23:24:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7240         * re.c (rb_memsearch_qs): wrong boundary condition.
7242         * re.c (rb_memsearch_qs_utf8): ditto.
7244 Fri Apr  4 14:11:36 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7246         * re.c (rb_memsearch_qs): wrong boundary condition.  a patch from
7247           wanabe <s.wanabe AT gmail.com> in [ruby-dev:34248].
7249 Fri Apr  4 05:57:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7251         * lib/net/pop.rb (Net::POP3::do_finish): clear @n_mails and
7252           @n_bytes as well.  [ruby-core:16144]
7254 Fri Apr  4 01:59:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7256         * range.c (range_step): add step for each iteration if begin and
7257           end are numeric.  [ruby-core:15990]
7259 Fri Apr  4 00:42:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7261         * bignum.c (Init_Bignum): rdiv method removed.  [ruby-dev:34242]
7263         * complex.c (nucomp_quo): ditto.
7265         * numeric.c (num_rdiv): ditto.
7267         * rational.c (nurat_div): ditto.
7269         * complex.c (nucomp_fdiv): fdiv implementation restored.
7271         * numeric.c (num_quo): RDoc updated.
7273 Thu Apr  3 21:51:45 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7275         * complex.c (nucomp_int_check): function for DRY real check.
7277         * complex.c (nucomp_{add,sub,mul,div,expt}): use rb_num_coerce_bin().
7279 Thu Apr  3 19:59:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7281         * insns.def (defineclass): check if cbase is a class or a module.
7282           [ruby-core:16118]
7284 Thu Apr  3 14:42:11 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7286         * common.mk (INSNS): add insns_info.inc.
7288         * common.mk (INSNS): make incs separately for nmake.
7290 Thu Apr  3 13:20:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7292         * common.mk (endb.h, transdb.h, prelude.c): depend on $(PREP) and
7293           check if really changed.  [ruby-core:16102]
7295         * Makefile.in, common.mk, configure.in, {win32,bcc32}/Makefile.sub
7296           (MINIOBJS, ARCHMINIOBJS): separated.
7298 Thu Apr  3 09:00:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7300         * compile.c (iseq_set_sequence, iseq_insns_unification,
7301           insn_data_to_s_detail): constified.
7303         * iseq.c (insn_operand_intern, ruby_iseq_disasm_insn): ditto.
7305         * template/{insns_info,opt_sc,optunifs}.inc.tmpl: ditto.
7307         * tool/instruction.rb (OptUnifsIncGenerator): ditto.
7309 Thu Apr  3 08:46:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7311         * range.c (range_include): add RDoc to describe that comparison
7312           for numeric is done according magnitude of values.
7313           [ruby-core:15907]
7315 Wed Apr  2 22:29:35 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7317         * rational.c (nurat_int_check): function for DRY integer check.
7319         * numeric.c (num_rdiv): should always return rational number.
7321         * rational.c (nurat_add, nurat_sub, nurat_mul, nurat_fdiv,
7322           nurat_cmp): use rb_num_coerce_bin().
7324         * rational.c (nurat_division): does / and rdiv.
7326         * .gdbinit (rp): no longer use rb_p().
7328 Wed Apr  2 06:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7330         * .gdbinit (rp): supports rational and complex numbers.  it's
7331           cheating since it uses rb_p().
7333 Wed Apr  2 06:24:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7335         * include/ruby/node.h: add new constants for rb_call()'s scope.
7337         * eval.c (iterate_method): use CALL_* scope constant to specify
7338           proper scope value.
7340         * eval.c (rb_each, rb_apply, rb_funcall, rb_funcall2, rb_funcall3):
7341           ditto.
7343 Tue Apr  1 21:19:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7345         * rational.c: need to include <float.h> just once.
7347 Tue Apr  1 16:40:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7349         * bignum.c (big2dbl): more precise conversion at edge cases.
7350           [ruby-dev:34195]
7352 Tue Apr  1 14:43:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7354         * configure.in: get rid of empty expansion.
7356         * configure.in: _setjmp is available but _longjmp is not on mingw.
7358 Tue Apr  1 09:41:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7360         * {bcc,win}32/Makefile (config.h): need to define RUBY_SETJMP, etc.
7362 Tue Apr  1 07:31:58 2008  Eric Hodel  <drbrain@segment7.net>
7364         * lib/rubygems* test/rubygems*: Import RubyGems 1.1.0.
7366 Tue Apr  1 03:20:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7368         * configure.in (RUBY_SETJMP, RUBY_LONGJMP, RUBY_JMP_BUF): prefers
7369           _setjmp over setjmp and sigsetjmp.  [ruby-core:16023]
7370           __builtin_setjmp cannot handle a variable.
7372         * configure.in (--with-setjmp-type): new option to override the
7373           default rule in the above.
7375         * eval_intern.h (ruby_setjmp, ruby_longjmp), gc.c (rb_setjmp),
7376           vm_core.h (rb_jmpbuf_t): use RUBY_SETJMP, RUBY_LONGJMP and
7377           RUBY_JMP_BUF.
7379 Tue Apr  1 01:55:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7381         * lib/resolv.rb (Resolv::Config.default_config_hash): requires
7382           win32/resolv to use Win32::Resolv.  [ruby-dev:34138]
7384 Tue Apr  1 01:40:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7386         * complex.c: adopted the ruby's style.
7388         * rational.c: ditto.
7390 Tue Apr  1 00:17:35 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7392         * rational.c: revert.
7394 Mon Mar 31 18:57:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7396         * {bcc,win}32/Makefile.sub (config.h): define ssize_t.
7398         * io.c (copy_stream_body): some platform don't have O_NOCTTY.
7400 Mon Mar 31 18:42:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7402         * configure.in: check for ssize_t.  [ruby-dev:34184]
7404 Mon Mar 31 14:45:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7406         * numeric.c (num_quo): should convert its operand to Rational.
7408         * rational.c (string_to_r_strict): should raise TypeError.
7410         * bignum.c (Init_Bignum): should not redefine Bignum#div.
7411           Numeric#div will do.  [ruby-dev:34066]
7413 Mon Mar 31 04:05:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7415         * io.c (io_getc): set coderange while getting characters.
7417 Sun Mar 30 23:16:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7419         * proc.c (proc_dup): should copy is_lambda attribute as well.
7420           [ruby-talk:296244]
7422 Sun Mar 30 15:33:29 2008  Tanaka Akira  <akr@fsij.org>
7424         * io.c: IO.copy_stream implemented.  [ruby-dev:33843]
7426         * thread.c (rb_fd_select): new function.
7428         * configure.in (sys/sendfile.h): check the header file.
7429           (sendfile): check the function.
7430           (pread): check the function.
7432 Sat Mar 29 14:18:41 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
7434         * ext/tk/*: full update Ruby/Tk to support Ruby(1.9|1.8) and Tc/Tk8.5.
7436         * ext/tk/lib/tkextlib/tile.rb: [incompatible] remove TileWidgets'
7437           instate/state/identify method to avoid the conflict with standard
7438           widget options. Those methods are renamed to ttk_instate/ttk_state/
7439           ttk_identify (tile_instate/tile_state/tile_identify are available
7440           too). Although I don't recommend, if you really need old methods,
7441           please define "Tk::USE_OBSOLETE_TILE_STATE_METHOD = true" before
7442           "require 'tkextlib/tile'".
7444         * ext/tk/lib/tkextlib/tile.rb: "Tk::Tile::__Import_Tile_Widgets__!"
7445           is obsolete. It outputs warning. To control default widget set,
7446           use "Tk.default_widget_set = :Ttk".
7448         * ext/tk/lib/tk.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__ method and
7449           __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method are defined
7450           as module methods of TkConfigMethod. It may help users to wrap old
7451           Ruby/Tk scripts (use standard widgets) to force to use Ttk widgets.
7452           Ttk widgets don't have some options of standard widgets which are
7453           control the view of widgets. When set ignore-mode true, configure
7454           method tries to ignore such unknown options with no exception.
7455           Of course, it may raise other troubles on the GUI design.
7456           So, those are a little danger methods.
7458         * ext/tk/lib/tk/itemconfig.rb: __IGNORE_UNKNOWN_CONFIGURE_OPTION__
7459           method and __set_IGNORE_UNKNOWN_CONFIGURE_OPTION__!(mode) method
7460           are defined as module methods of TkItemConfigMethod as the same
7461           purpose as TkConfigMethod's ones.
7463         * ext/tk/sample/ttk_wrapper.rb: A new example. This is a tool for
7464           wrapping old Ruby/Tk scripts (which use standard widgets) to use
7465           Ttk (Tile) widgets as default.
7467         * ext/tk/sample/tkextlib/tile/demo.rb: use ttk_instate/ttk_state
7468           method instead of instate/state method.
7470         * ext/tk/lib/tk/root, ext/tk/lib/tk/namespace.rb,
7471           ext/tk/lib/tk/text.rb, ext/tk/lib/tkextlib/*: some 'instance_eval's
7472           are replaced to "instance_exec(self)".
7474         * ext/tk/lib/tk/event.rb: bug fix on KEY_TBL and PROC_TBL (?x is not
7475           a character code on Ruby1.9).
7477         * ext/tk/lib/tk/variable.rb: support new style of operation argument
7478           on Tcl/Tk's 'trace' command for variables.
7480         * ext/tk/sample/demos-jp/widget, ext/tk/sample/demos-en/widget: bug fix
7482         * ext/tk/sample/demos-jp/textpeer.rb,
7483           ext/tk/sample/demos-en/textpeer.rb: new widget demo.
7485         * ext/tk/tcltklib.c: decrease SEGV troubles (probably)
7487         * ext/tk/lib/tk.rb: remove Thread.critical access if Ruby1.9
7489         * ext/tk/lib/tk/multi-tk.rb: support Ruby1.9 (probably)
7491         * ext/tk/lib/tkextlib/tile.rb: add method to define Tcl/Tk command
7492           to make Tcl/Tk theme sources (based on different version of Tile
7493           extension) available.
7494           (Tk::Tile::__define_LoadImages_proc_for_compatibility__)
7496         * ext/tk/lib/tk.rb, ext/tk/lib/tk/wm.rb: support dockable frames
7497           (Tcl/Tk8.5 feature). 'wm' command can treat many kinds of widgets
7498           as toplevel widgets.
7500         * ext/tk/lib/tkextlib/tile/style.rb: ditto.
7501           (Tk::Tile::Style.__define_wrapper_proc_for_compatibility__)
7503         * ext/tk/lib/tk/font.rb: add actual_hash and metrics_hash to get
7504           properties as a hash. metrics_hash method returns a boolean value
7505           for 'fixed' option. But metrics method returns numeric value
7506           (0 or 1) for 'fixed' option, because of backward compatibility.
7508         * ext/tk/lib/tk/timer.rb: sometimes fail to set callback procedure.
7510         * ext/tk/lib/tk.rb: add Tk.sleep and Tk.wakeup method. Tk.sleep
7511           doesn't block the eventloop. It will be better to use the method
7512           in event callbacks.
7514         * ext/tk/sample/tksleep_sample.rb: sample script about Tk.sleep.
7516 Thu Mar 27 20:44:22 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7518         * complex.c (f_lcm): removed.
7520         * rational.c (rb_lcm, rb_gcdlcm): added.
7522         * lib/complex.rb (gcd, lcm, gcdlcm): removed.
7524         * lib/rational.rb (gcd, lcm, gcdlcm): ditto.
7526 Wed Mar 26 18:11:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7528         * variable.c (rb_mod_constants): rdoc updated.  a patch from
7529           Florian Gilcher <flo AT andersground.net> in [ruby-core:16009].
7531 Wed Mar 26 00:55:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7533         * test/ruby/test_rand.rb: add tests to achieve over 95% test coverage
7534           of random.c.
7536 Wed Mar 26 00:28:55 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7538         * test/ruby/test_rational.rb: add tests to achieve over 90% test
7539           coverage of rational.c.
7541         * test/ruby/test_complex.rb: ditto for complex.c.
7543 Tue Mar 25 19:34:05 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7545         * bootstraptest/test_knownbug.rb: add tests.  [ruby-dev:34128]
7547 Tue Mar 25 19:09:04 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7549         * array.c (ary_new): fix size check.  [ruby-dev:34123]
7551         * array.c (rb_ary_take, rb_ary_drop): check negative size and use
7552           NUM2LONG instead of FIX2LONG.  [ruby-dev:34123]
7554         * enum.c (enum_take, enum_drop): check negative size.
7556         * test/ruby/test_array.rb: add tests for above.
7558 Tue Mar 25 16:32:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7560         * ruby.c (proc_options): checks if the word is empty.
7562         * ruby.c (process_options): typo fixed.  [ruby-dev:34122]
7564 Tue Mar 25 15:26:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7566         * compile.c (defined_expr): false short-circuit destination label may
7567           be needed.  [ruby-talk:295296]
7569         * compile.c (iseq_compile_each): put nil if false short-circuit is
7570           created.
7572         * compile.c (compile_massign_opt): no need to use alloca.
7574 Mon Mar 24 19:23:52 2008  Akinori MUSHA  <knu@iDaemons.org>
7576         * parse.y (debug_lines): Always prepare a new array for each
7577           file's SCRIPT_LINES__ storage, instead of appending source lines
7578           every time a file is re-loaded; submitted by Rocky Bernstein in
7579           #18517.
7581 Mon Mar 24 10:25:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7583         * configure.in: sitearch should use target_cpu.  [ruby-core:15986]
7585 Sun Mar 23 02:51:57 2008  Tanaka Akira  <akr@fsij.org>
7587         * process.c (rlimit_resource_value): use NUM2RLIM.
7589 Sun Mar 23 02:28:01 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7591         * complex.c: fixed. [ruby-dev:34109]
7593         * rational.c: ditto.
7595 Fri Mar 21 21:32:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7597         * io.c (rb_f_gets, rb_f_readline, rb_f_readlines): delegates to ARGF
7598           as well as puts and putc.  [ruby-dev:34100]
7600 Fri Mar 21 21:26:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7602         * lib/resolv.rb (Resolv::Hosts): should not use win32/resolv on cygwin.
7603           [ruby-dev:29945], [ruby-dev:34095]
7605         * lib/win32/registry.rb (Win32::Registry.expand_environ): try upcased
7606           name too for cygwin.  [ruby-dev:29945]
7608         * lib/win32/resolv.rb (Win32::Resolv.get_hosts_path): use expand_path.
7610 Fri Mar 21 21:10:00 2008  Akinori MUSHA  <knu@iDaemons.org>
7612         * lib/ipaddr.rb: Say that I am the current maintainer.
7614         * lib/set.rb: Ditto.
7616         * lib/shellwords.rb: Ditto.
7618         * ext/syslog/syslog.txt: Ditto.
7620 Fri Mar 21 09:24:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7622         * instruby.rb (open_for_install): write block result and rewrite only
7623           if changed from existing file.
7625 Fri Mar 21 08:29:33 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7627         * rational.c (nurat_to_f): rearrangement.
7629 Fri Mar 21 06:44:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7631         * rational.c (nurat_to_f): C99.
7633 Fri Mar 21 01:40:27 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7635         * complex.c (nucomp_sub, nucomp_expt): call corresponding functions.
7637 Fri Mar 21 01:21:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7639         * missing/tgamma.c: include config.h before math.h.  [ruby-dev:34075]
7641 Thu Mar 20 21:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7643         * io.c (argf_getline): use receiver.
7645 Thu Mar 20 21:20:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7647         * rational.c: some improvements (include Shin-ichiro HARA's
7648           effort).
7650         * complex.c: some improvements.
7652         * test/ruby/test_rational2.rb: new.
7654 Thu Mar 20 00:21:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7656         * io.c (argf_initialize_copy): get rid of segfault.
7658         * io.c (argf_tell, argf_seek_m, argf_set_pos, argf_rewind,
7659           argf_fileno, argf_to_io, argf_eofl, argf_getc, argf_getbyte,
7660           argf_readchar, argf_readbyte, argf_each_line): use receiver.
7662 Wed Mar 19 23:52:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7664         * io.c (rb_io_putc, rb_io_puts): output directly if the receiver is
7665           rb_stdout to get rid of infinite recursion.  [ruby-dev:34059]
7667 Wed Mar 19 22:27:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7669         * rational.c: added rb_gcd.
7671         * complex.c: use rb_gcd.
7673 Wed Mar 19 18:37:00 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7675         * complex.c: revert.
7677         * rational.c: revert.
7679 Wed Mar 19 17:31:20 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7681         * eval_intern.h (TH_EXEC_TAG): need not to FLUSH_REGISTER_WINDOWS.
7682           [ruby-core:15871], [ruby-dev:34088]
7684 Wed Mar 19 14:53:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7686         * complex.c (nucomp_to_s, nucomp_inspect): get rid of making
7687           unnecessary intermediate objects.
7689         * complex.c (make_patterns, string_to_c): do not treat successive
7690           underscores as a part of numeric like as literals.  [ruby-dev:34085]
7692         * rational.c (make_patterns, string_to_r): ditto.
7694 Wed Mar 19 14:36:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7696         * bignum.c (rb_cstr_to_inum): treat successive underscores as
7697           nondigit.  [ruby-dev:34089]
7699 Wed Mar 19 14:08:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7701         * encoding.c (enc_check_encoding): should not load autoloaded encoding
7702           directly, instead use rb_enc_find_index() which deal with alias and
7703           replica.  [ruby-core:15957]
7705 Wed Mar 19 11:49:47 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7707         * regint.h (include): include ruby.h instead of defines.h and config.h.
7709 Wed Mar 19 10:17:12 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7711         * regint.h (CHECK_INTERRUPT_IN_MATCH_AT): add interrupt check
7712           during match.  [ruby-talk:295002]
7714 Tue Mar 18 16:24:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7716         * parse.y (literal_concat_gen): bail out at different encoding.
7718 Tue Mar 18 04:00:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7720         * re.c (rb_memsearch_ss): simple shift search.
7722         * re.c (rb_memsearch_qs): quick search.
7724         * re.c (rb_memsearch_qs_utf8): quick search for UTF-8 string.
7726         * re.c (rb_memsearch_qs_utf8_hash): hash functions for above.
7728         * re.c (rb_memsearch): use above functions.
7730         * string.c (rb_str_index): give enc to rb_memsearch.
7732         * include/ruby/intern.h (rb_memsearch): move to encoding.h.
7734         * include/ruby/encoding.h (rb_memsearch): move from intern.h.
7736         * common.mk (PREP): add dependency.
7738 Mon Mar 17 22:23:54 2008  Yusuke Endoh  <mame@tsg.ne.jp>
7740         * array.c (rb_ary_take, rb_ary_take_while, rb_ary_drop,
7741           rb_ary_drop_while): new methods. [ruby-dev:34067]
7743         * test/ruby/test_array.rb: add tests for above.
7745 Mon Mar 17 17:11:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7747         * misc/ruby-mode.el (ruby-mode): should use `run-mode-hooks' instead
7748           of calling `run-hooks' directly to run the mode hook.  patch from
7749           Chiyuan Zhang <pluskid AT gmail.com> in [ruby-core:15915]
7751 Mon Mar 17 16:41:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7753         * configure.in: unset GREP_OPTIONS.  [ruby-core:15918]
7755 Sun Mar 16 18:07:07 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
7757         * enc/trans/utf_16_32.c: bug fix (some invalid UTF-8 sequences
7758           were legal)
7760         * test/ruby/test_transcode.rb: test for above bug
7762 Sun Mar 16 17:28:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7764         * common.mk (LIBRUBY_SO): add dependency to $(BUILTIN_ENCOBJS).
7766 Sun Mar 16 08:51:41 2008  Tadayoshi Funaba  <tadf@dotrb.org>
7768         * include/ruby/intern.h: added some declarations.
7770         * include/ruby/ruby.h: ditto.
7772         * common.mk: added some entries.
7774         * configure.in: added a check for signbit.
7776         * lib/complex.rb: nearly all of core definitions have been removed.
7778         * lib/rational.rb: ditto.
7780         * lib/mathn.rb: some trivial adjustments.
7782         * complex.c: new.
7784         * rational.c: ditto.
7786         * numeric.c (flo_{quo,rdiv}, fix_fdiv): added.
7788         * numeric.c ({num,int}_{numerator,denominator}): ditto.
7790         * bignum.c (rb_big_fdiv): ditto.
7792         * numeric.c (fix_{quo,pow}): now may yield rational number.
7794         * bignum.c (rb_big_{quo,pow}): ditto.
7796         * numeric.c (rb_{int,flo}_induced_from): now can accept rational.
7798         * gc.c (gc_mark_children, obj_free): now detects complex and rational.
7800         * inits.c (rb_call_inits): now calls Init_{Complex,Rational}.
7802         * test/ruby/test_complex.rb: new.
7804         * test/ruby/test_rational.rb: ditto.
7806 Sat Mar 15 17:48:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7808         * encoding.c (rb_enc_associate_index): pass unnecessary enc_capable().
7810         * string.c (rb_str_cmp): reduce invocation of rb_enc_compatible().
7812 Fri Mar 14 17:04:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7814         * include/ruby/ruby.h (inttypes.h): includes always if available.
7816         * string.c, ext/digest/defs.h: moved inttypes.h to ruby.h.
7818 Fri Mar 14 16:59:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7820         * configure.in (RUBY_LIB_PREFIX): fix for prefix.
7822 Fri Mar 14 16:35:11 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7824         * lib/cgi.rb (CGI::Cookie::initialize): performance patch from
7825           Makoto Kuwata <kwa@kuwata-lab.com> in [ruby-dev:34048].
7827 Fri Mar 14 15:49:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7829         * configure.in (RUBY_LIB_PREFIX): use libdir.
7831 Fri Mar 14 14:24:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7833         * ext/digest/defs.h: inttypes.h is still needed.
7835 Fri Mar 14 11:34:12 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7837         * {bcc,win}32/Makefile.sub: follow below changes.
7839 Fri Mar 14 11:24:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7841         * misc/ruby-mode.el (ruby-encoding-map, ruby-use-encoding-map): added
7842           to customize.
7844 Fri Mar 14 10:37:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7846         * configure.in (int8_t, uint8_t,  int16_t,  uint16_t int32_t,
7847           uint32_t int64_t, uint64_t, int128_t, uint128_t,
7848           intptr_t, uintptr_t): check if defined.
7850         * win32/Makefile.sub: follow configure.in.
7852         * ext/digest/defs.h: remove checks for uint8_t, uint32_t and uint64_t.
7854 Fri Mar 14 10:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7856         * configure.in (RUBY_CHECK_VARTYPE): should not indent preprocessor
7857           directives.
7859 Fri Mar 14 10:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7861         * string.c (UNALIGNED_WORD_ACCESS): IA64 cannot access unaligned word.
7863 Thu Mar 13 21:00:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7865         * array.c (rb_ary_slice_bang): should not use rb_ary_subseq()
7866           which shares internal pointer.  splice modifies the receiver
7867           right after subseq.  [ruby-dev:34005]
7869         * bootstraptest/test_struct.rb: some test moved from test to shut
7870           warning up.
7872 Thu Mar 13 19:42:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
7874         * {bcc,win}32/Makefile.sub (config.h): define uint32_t.
7876 Thu Mar 13 14:14:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7878         * trunk/configure.in (AC_CHECK_HEADERS): stdint.h is not needed to
7879           check.
7881         * trunk/configure.in (rb_cv_type_uint32_t): unquoted.  [ruby-dev:34030]
7883         * trunk/string.c (hash): use inttypes.h instead of stdint.h.
7885 Thu Mar 13 10:42:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7887         * numeric.c (fix_divmod): should return integer division.  [ruby-dev:34006]
7889         * enum.c (zip_ary): wrong boundary condition.
7891         * test/ruby/test_numeric.rb (TestNumeric::test_num2long): bit-and
7892           should not raise RangeError.
7894 Thu Mar 13 03:12:48 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7896         * lib/irb/cmd/help.rb: should be updated for new ri structure.
7897           [ruby-core:15825]
7899         * lib/rdoc/ri/driver.rb (RDoc::initialize): allow options to be optional.
7901         * lib/rdoc/ri/driver.rb (RDoc::class_cache): map_dirs may be
7902           empty.
7904         * lib/rdoc/ri/driver.rb (RDoc::get_info_for): revive get_info_for
7905           method.  maybe broken.
7907         * lib/rdoc/ri/util.rb (RDoc::initialize): should not use RiError
7908           no more.
7910 Thu Mar 13 01:45:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7912         * configure.in (stdint.h): check if presence.
7914         * configure.in (uint32_t): check if defined.
7916         * string.c (hash): fix for portability.  [ruby-dev:34020]
7918 Wed Mar 12 17:33:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7920         * object.c (rb_cstr_to_dbl): fix for a mere underscore.
7922 Wed Mar 12 14:47:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7924         * eval_intern.h (rb_thread_raised_set): use generic flags.
7926         * eval.c (rb_longjmp): clear all raised flags.
7928         * eval.c (stack_check): leave clearing flag to rb_longjmp.
7930         * gc.c (rb_memerror): use thread raised flag instead of static flag.
7932 Tue Mar 11 23:38:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7934         * array.c (rb_ary_combination): argument check before creating
7935           Enumerator.
7937         * array.c (rb_ary_permutation): ditto.
7939         * enum.c (enum_zip): optimize if all arguments are arrays.
7941 Tue Mar 11 19:48:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7943         * numeric.c (fix_coerce): try conversion before type check.
7944           [ruby-core:15838]
7946 Tue Mar 11 12:39:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7948         * common.mk (clean-local): WINMAINOBJ is Windows specific.
7950 Tue Mar 11 10:19:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7952         * string.c (hash): replaced by MurmurHash described in
7953           <http://murmurhash.googlepages.com/>.
7955 Tue Mar 11 09:52:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7957         * string.c (rb_str_comparable): empty strings in any encoding are
7958           compatible each other.
7960 Tue Mar 11 00:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7962         * ruby.c (usage): remove some unimportant lines to fit -h message
7963           in a page.  [ruby-dev:34018]
7965 Mon Mar 10 17:11:00 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
7967         * eval.c (rb_f_local_variables): local_variables should return an
7968           array of symbols.  [ruby-dev:34008]
7970         * vm.c (collect_local_variables_in_env): ditto.
7972 Mon Mar 10 15:53:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7974         * version.c (MKSTR): make US-ASCII.  [ruby-dev:34010]
7976 Mon Mar 10 02:08:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
7978         * string.c (rb_str_index): if t == s + pos, the character beginning
7979           from s + pos is valid.
7981 Sun Mar  9 13:51:21 2008  Eric Hodel  <drbrain@segment7.net>
7983         * lib/rdoc/generator.rb: Restore missing line to #params.  Patch by
7984           Lincoln Stoll <lstoll at lstoll.net>
7986 Sun Mar  9 09:52:00 2008  Eric Hodel  <drbrain@segment7.net>
7988         * lib/rdoc/code_objects.rb: Remove debugging Kernel#p.  Patch by
7989           Lincoln Stoll <lstoll at lstoll.net>
7990         * lib/rdoc/generator/html.rb: Fully qualify AllReferences.  Patch by
7991           Lincoln Stoll <lstoll at lstoll.net>
7992         * lib/rdoc/ri/writer.rb: Fix 1.8 backwards compatibility.
7994 Sat Mar  8 18:50:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
7996         * file.c (isdirsep): backslash is valid path separator on cygwin too.
7998 Sat Mar  8 06:53:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8000         * string.c (search_nonascii): Use VALUE instead of unsigned long
8001           because VALUE can be the fastest unsigned integer type.
8002           On LLP64 unsigned long isn't the fastest.
8003         * string.c (str_strlen): ditto.
8004         * string.c (str_utf8_nth): ditto.
8005         * string.c (count_utf8_lead_bytes_with_ulong): ditto.
8007         * string.c (count_utf8_lead_bytes_with_word): renamed.
8009 Fri Mar  7 21:27:43 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8011         * bignum.c: fix indent.
8013 Fri Mar  7 21:12:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8015         * bignum.c (power_cache_init, power_cache_get_power0, Init_Bignum):
8016           delayed initializing power cache per base.  [ruby-dev:34003]
8018 Fri Mar  7 20:30:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8020         * cont.c (cont_restore_0): fixed typo.  [ruby-core:15821]
8022 Fri Mar  7 19:56:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8024         * lib/mkmf.rb: rdoc added.  [ruby-Patches-9762]
8026 Thu Mar  6 17:26:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8028         * sprintf.c (rb_str_format): space flag is in effect for Inf/NaN too.
8029           [ruby-dev:34002]
8031 Thu Mar  6 15:44:20 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8033         * sprintf.c (rb_str_format): casting double to long is undefined
8034           if the integer part of double is out of the range of long.
8036 Thu Mar  6 15:11:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8038         * sprintf.c (rb_str_format): ignore 0 flag for NaN and Inf.
8039           [ruby-dev:33994]
8041 Thu Mar  6 15:05:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8043         * {bcc32,win32}/Makefile.sub (RUNRUBY): use $(PROGRAM) instead of
8044           ruby$(EXEEXT).
8045           suggested by KIMURA Koichi <kimura.koichi at canon.co.jp>.
8046           [ruby-dev:34000]
8048 Thu Mar  6 14:46:08 2008  Tanaka Akira  <akr@fsij.org>
8050         * missing/lgamma_r.c (loggamma): return 0 for 1 and 2.
8052         * test/ruby/test_math.rb: accept errors by functions under missing/.
8054 Thu Mar  6 14:29:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8056         * transcode.c (rb_str_transcode_bang): set coderange.
8058         * transcode.c (rb_str_transcode): use rb_str_transcode_bang.
8060 Thu Mar  6 14:00:10 2008  Tanaka Akira  <akr@fsij.org>
8062         * include/ruby/missing.h (cbrt): add declaration.
8064 Thu Mar  6 11:14:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8066         * misc/ruby-mode.el (ruby-add-log-current-method): use ruby style
8067           method name format.
8069 Thu Mar  6 11:12:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8071         * sprintf.c (rb_str_format): no need of loop.
8073 Thu Mar  6 08:30:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8075         * object.c (rb_mod_freeze): call rb_class_name() directly.
8076           [ruby-core:15802]
8078 Thu Mar  6 04:32:06 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8080         * string.c (count_utf8_lead_bytes_with_ulong): fix shift size.
8081           [ruby-dev:33993]
8083         * string.c (str_utf8_nth) fix wrong counting.
8085 Thu Mar  6 00:34:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8087         * sprintf.c (rb_str_format): size_t returned from strlen() can be
8088           unsigned.
8090 Thu Mar  6 00:31:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8092         * struct.c (make_struct): preserve encoding of struct name.
8094 Wed Mar  5 22:49:20 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8096         * string.c (is_utf8_lead_byte, count_utf8_lead_bytes_with_ulong):
8097           defined for UTF-8 optimization.
8099         * string.c (str_strlen): use is_utf8_lead_byte and
8100           count_utf8_lead_bytes_with_ulong.
8102         * string.c (str_utf8_nth) ditto.
8104 Wed Mar  5 17:53:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8106         * file.c (rb_file_flock): returns false on EAGAIN if non-blocking.
8107           [ruby-core:15795]
8109 Wed Mar  5 17:43:43 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8111         * transcode.c (transcode_loop): Adjusted detection of invalid
8112           (ill-formed) UTF-8 sequences. Fixing potential security issue, see
8113           http://www.unicode.org/versions/Unicode5.1.0/#Notable_Changes.
8115         * test/ruby/test_transcode.rb: Added two tests for above fix.
8117 Wed Mar  5 14:00:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8119         * numeric.c (fix_to_s): avoid rb_scan_args() when no argument
8120           given.
8121         * bignum.c (rb_big_to_s): ditto.
8122         * enum.c (enum_first): ditto.
8123         * eval_jump.c (rb_f_catch): ditto.
8124         * io.c (rb_obj_display): ditto.
8125         * class.c (rb_obj_singleton_methods): ditto.
8126         * object.c (rb_class_initialize): ditto.
8127         * random.c (rb_f_srand): ditto.
8128         * range.c (range_step): ditto.
8129         * re.c (rb_reg_s_last_match): ditto.
8130         * string.c (rb_str_to_i): ditto.
8131         * string.c (rb_str_each_line): ditto.
8132         * string.c (rb_str_chomp_bang): ditto.
8133         * string.c (rb_str_sum): ditto.
8135         * string.c (str_modifiable): declare inline.
8136         * string.c (str_independent): ditto.
8138 Wed Mar  5 11:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8140         * lib/debug.rb: require 'continuation' to implement "restart"
8141           command.  [ruby-dev:33992]
8143         * lib/debug.rb (Context::debug_command): remove local variable
8144           shadowing to shut up warnings.  [ruby-dev:33992]
8146         * lib/debug.rb (Context::display_list): ditto.
8148         * lib/debug.rb (Context::resume): ditto.
8150         * lib/debug.rb (Context::get_thread): no longer use #index for Hash.
8152 Tue Mar  4 21:35:59 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8154         * lib/irb.rb (IRB::Irb::eval_input): SyntaxError should not be
8155           considered as IRB bug.  [ruby-dev:33991]
8157         * lib/irb/workspace.rb (IRB::WorkSpace::filter_backtrace): should
8158           filter 'irb.rb' as well for context mode 2 and 3.
8160 Tue Mar  4 19:10:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8162         * hash.c (rb_hash_aset): should not copy key string when
8163           compare_by_identity is set.  [ruby-dev:33604]
8165         * hash.c (hash_equal): two hash tables are different when internal
8166           comparison table differ.  [ruby-dev:33989]
8168 Tue Mar  4 16:29:06 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8170         * parse.y (parser_yylex): disallow non digits '0o' expression.
8172 Tue Mar  4 14:35:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8174         * io.c (open_key_args): use rb_io_open_with_args instead of rb_f_open.
8175           [ruby-core:15763]
8177 Tue Mar  4 13:41:46 2008  Tanaka Akira  <akr@fsij.org>
8179         * gc.c (add_heap): fix previous change.  [ruby-dev:33988]
8181 Tue Mar  4 10:21:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8183         * gc.c (add_heap): use binary search to find the place to insert the
8184           new heap slot.  [ruby-dev:33983]
8186 Tue Mar  4 05:30:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8188         * io.c (open_key_args): use rb_io_open instead of rb_f_open.
8189           [ruby-core:15746]
8191 Mon Mar  3 23:28:37 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
8193         * lib/webrick/httpservlet/filehandler.rb: should normalize path
8194           separators in path_info to prevent directory traversal
8195           attacks on DOSISH platforms.
8196           reported by Digital Security Research Group [DSECRG-08-026].
8198         * lib/webrick/httpservlet/filehandler.rb: pathnames which have
8199           not to be published should be checked case-insensitively.
8201 Mon Mar  3 17:25:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8203         * gc.c (add_heap): sort heaps array in ascending order to use
8204           binary search.
8206         * gc.c (is_pointer_to_heap): use binary search to identify object
8207           in heaps.  works better when number of heap segments grow big.
8209 Mon Mar  3 17:15:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8211         * re.c (rb_reg_regsub): remove too strict encoding check.
8212           [ruby-dev:33966]
8214 Mon Mar  3 16:14:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8216         * hash.c (rb_any_hash): shrinks all results in Fixnum range.
8217           [ruby-core:15713]
8219 Sun Mar  2 23:03:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8221         * io.c (rb_io_ungetc): reduce redundant call.
8223 Sun Mar  2 10:13:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8225         * ruby.c (load_file): parse shebang in us-ascii.  a patch from
8226           sheepman <sheepman AT sheepman.sakura.ne.jp> in [ruby-dev:33955]
8228 Sun Mar  2 00:08:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8230         * object.c (rb_cstr_to_dbl): check for successive underscores.
8231           [ruby-dev:33952]
8233 Sat Mar  1 17:59:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8235         * io.c (struct argf): packed ARGF stuffs.
8237         * ruby.c (proc_options): use ruby_set_inplace_mode().
8239 Sat Mar  1 17:51:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8241         * lib/test/unit/collector/dir.rb (recursive_collect): do not always
8242           include all test_*.rb.
8244 Sat Mar  1 14:14:17 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8246         * development snapshot 1.9.0-1 released.
8248 Sat Mar  1 13:46:26 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8250         * tool/make-snapshot: make prereq uses MINIRUBY.
8252         * tool/make-snapshot: allow packaging like 1.9.0-1 by second
8253           command-line argument.
8255 Sat Mar  1 13:11:03 2008  Tanaka Akira  <akr@fsij.org>
8257         * test/ruby/allpairs.rb: new file for all pairs method.
8259         * test/ruby/test_m17n_comb.rb: use allpairs.rb to reduce test cases.
8261         * test/ruby/test_sprintf_comb.rb: ditto.
8263 Sat Mar  1 12:34:21 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8265         * string.c (sym_inspect): use rb_str_inspect() instead of
8266           rb_str_dump().  [ruby-dev:33946]
8268 Sat Mar  1 12:15:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8270         * eval_method.c (rb_get_method_body): ent->method may be freed by
8271           GC.  [ruby-dev:31819]
8273         * thread.c (remove_event_hook): should not access freed memory.
8274           [ruby-dev:31820]
8276 Sat Mar  1 10:31:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8278         * io.c (read_all, rb_io_getline_fast): encoding is io_input_encoding.
8280 Sat Mar  1 10:09:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8282         * string.c (tr_setup_table, rb_str_split_m, rb_str_chomp_bang):
8283           simplified with rb_enc_ascget().  [ruby-dev:33944]
8285 Sat Mar  1 10:01:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8287         * string.c (rb_str_coderange_scan_restartable): should not return
8288           offset in the middle of a character.
8290         * string.c (rb_str_coderange_scan_restartable): should not return
8291           invalid cr value.
8293 Sat Mar  1 09:36:08 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8295         * sprintf.c (rb_str_format): "%#.0o" should keep prefix where
8296           "%#.0x" should not.
8298 Sat Mar  1 02:35:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8300         * bignum.c (big2str_find_n1): check integer overflow.
8302 Sat Mar  1 00:29:07 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8304         * encoding.c (rb_enc_dummy_p): bootstrap encodings can not be dummy.
8306         * encoding.c (rb_enc_ascget): no needs to call rb_enc_precise_mbclen()
8307           twice.
8309 Fri Feb 29 23:14:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8311         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test
8312           updated.
8314 Fri Feb 29 20:58:09 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8316         * test/ruby/test_iterator.rb (TestIterator::test_enumerator):
8317           adjust test for zip behavior reversion.
8319 Fri Feb 29 20:25:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8321         * string.c (rb_str_chomp_bang): now works on UTF-16.
8323         * string.c (tr_setup_table): negation should work on non ASCII
8324           compatible strings as well.
8326         * string.c (rb_str_split_m): awk split should work on non ASCII
8327           compatible strings as well.
8329 Fri Feb 29 18:08:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8331         * time.c (time_strftime): format should be ascii compatible.
8333         * parse.y (rb_intern3): non ASCII compatible symbols.
8335         * re.c (rb_reg_regsub): add encoding check.
8337         * string.c (rb_str_chomp_bang): ditto.
8339         * test/ruby/test_utf16.rb (TestUTF16::test_chomp): raises exception.
8341 Fri Feb 29 15:16:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8343         * string.c (rb_str_rpartition): calculation was done in byte indexing.
8345         * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_start_with):
8346           allow start_with? matching on broken strings.
8348 Fri Feb 29 15:12:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8350         * parse.y (opt_block_param): command can start just after block param
8351           definition.  [ruby-list:44479]
8353 Fri Feb 29 03:22:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8355         * test/ruby/test_time.rb (test_readers): fix typo.
8356           (test_strftime): "UTC" is also ok for time.gmtime.strftime("%Z").
8358 Fri Feb 29 02:50:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8360         * string.c (str_new): remove encoding assumption of empty string.
8362         * hash.c ( rb_f_getenv, env_fetch, env_inspect): result of ENV should
8363           be always ASCII-8BIT.
8365         * object.c (nil_to_s): nil.to_s should be US-ASCII.
8367 Fri Feb 29 02:24:22 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
8369         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
8371         * ext/tk/lib/tk.rb, ext/tk/lib/tk/text.rb,
8372           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: remove adhoc check
8373           of Ruby's features (use existence of some classes instead of
8374           comparing with RUBY_VERSION)
8376         * ext/tk/lib/tk/root.rb, ext/tk/lib/tk/autoload.rb: make TkRoot
8377           (Tk::Root) unswitchable
8379         * ext/tk/lib/multi-tk.rb: partial bug fix (still not work!!)
8381 Thu Feb 28 23:37:12 2008  Tanaka Akira  <akr@fsij.org>
8383         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): use ASCII-8BIT
8384           for charset unspecified non-text data.
8386 Thu Feb 28 22:19:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8388         * encoding.c (enc_capable): IMMEDIATE_P doesn't include Qnil and Qfalse.
8389           use SPECIAL_CONST_P.
8391 Thu Feb 28 19:45:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8393         * encoding.c (enc_find): check type of argument and convert to String
8394           if it is StringValue. [ruby-cvs:22866]
8396 Thu Feb 28 18:07:52 2008  Tanaka Akira  <akr@fsij.org>
8398         * lib/open-uri.rb (OpenURI::Meta#meta_setup_encoding): setup encoding
8399           by charset.
8400           (OpenURI::Meta#meta_add_field): call meta_setup_encoding when
8401           content-type.
8403 Thu Feb 28 15:29:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8405         * io.c (rb_io_getline_fast): scan coderange.
8407 Thu Feb 28 14:36:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8409         * string.c (rb_enc_str_copy): removed.
8411 Thu Feb 28 13:51:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8413         * eval.c (stack_check): made flag per threads.
8415         * thread.c (rb_thread_set_raised, rb_thread_reset_raised): prefixed.
8417 Thu Feb 28 11:43:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8419         * file.c (rb_file_flock): immediately returns on EAGAIN if
8420           non-blocking.  [ruby-core:15672]
8422 Thu Feb 28 11:23:50 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8424         * io.c (rb_io_getline_1): get rid of segfault.  [ruby-dev:33938]
8426 Thu Feb 28 11:19:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8428         * string.c (rb_str_reverse_bang): removed unused variables.
8430         * include/ruby/encoding.h (rb_str_coderange_scan_restartable): added
8431           prototype.
8433         * string.c (rb_str_coderange_scan_restartable, rb_str_times): removed
8434           unused variables.
8436         * string.c (rb_str_reverse_bang): ditto
8438         * string.c (rb_enc_str_copy): unused now.  may be used in future?
8440 Thu Feb 28 03:03:32 2008  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
8442         * ext/tk/lib/tk.rb, ext/tk/lib/*: make default widget set
8443           switchable between Tk (standard Tcl/Tk widget set) and
8444           Ttk (Tile). Initial default widget set is Tk. Now, toplevel
8445           widget classes are removed and defined as aliases.
8446           For example, "TkButton" is an alias of the "Tk::Button" class.
8447           Those aliases are replaced when switching default widget set.
8448           "Tk.default_widget_set=" is the method for switching default
8449           widget set. "Tk.default_widget_set = :Ttk" defines Ttk (Tile)
8450           widget set as default. It means that "TkButton" denotes
8451           "Tk::Tile::Button" class. And then, "TkButton.new" creates
8452           a Tk::Tile::Button widget. Of course, you can back to use
8453           standard Tk widgets as the default widget set by calling
8454           "Tk.default_widget_set = :Tk", whenever you want. Based on
8455           the feature, you can use Ttk widget styling engine on your
8456           old Ruby/Tk application without modifying its source, if you
8457           don't use widget options unsupported on Ttk widgets (At first,
8458           call "Tk.default_widget_set = :Ttk", and next load and run
8459           your application).
8460           This is one step for supporting Tcl/Tk8.5 features.
8462 Wed Feb 27 22:55:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8464         * string.c (rb_str_coderange_scan_restartable): coderange scanning
8465           for partial read.
8467         * io.c (read_all): set coderange when not convert encoding.
8469 Wed Feb 27 03:55:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8471         * ext/extmk.rb, enc/make_encmake.rb: load current mkmf.rb even if
8472           cross-compiling.
8474         * ext/extmk.rb, enc/make_encmake.rb, lib/mkmf.rb: need to be 1.8
8475           compatible for cross-compiling.
8477 Tue Feb 26 16:53:13 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8479         * misc/ruby-mode.el (ruby-calculate-indent): should distinguish
8480           comment and # in strings.  [ruby-dev:33874]
8482 Tue Feb 26 16:41:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8484         * array.c (combi_len, rb_ary_product): check for overflow.
8485           [ruby-Bugs-18355]
8487 Tue Feb 26 16:38:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8489         * array.c (recursive_cmp): compare minimal length parts.
8491 Tue Feb 26 16:06:00 2008  Technorama Ltd.  <oss-ruby@technorama.net>
8493         * ext/openssl/ossl_{ec,dh,dsa,rsa}.c: Remove useless warnings.
8495         * ext/openssl/ossl_asn1.c: Simplify code.
8497         * ext/openssl/ossl_ssl_session.c Fix compiler warnings.
8498           Undefine #id if SSL_SESSION_get_id is not supported.
8500 Tue Feb 26 15:50:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8502         * parse.y (value_expr_gen): removed inappropriate warning.
8503           [ruby-core:15660]
8505 Tue Feb 26 15:43:42 2008  Tanaka Akira  <akr@fsij.org>
8507         * parse.y (tokadd_escape): refactored.  [ruby-core:15657]
8509 Tue Feb 26 15:30:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8511         * array.c (rb_ary_eql, rb_ary_cmp): get rid of stack overflow with
8512           self-recursive constructs.  [ruby-Bugs-18356]
8514 Tue Feb 26 01:16:01 2008  Tanaka Akira  <akr@fsij.org>
8516         * include/ruby/ruby.h (ROBJECT_NUMIV): renamed from ROBJECT_LEN.
8517           (ROBJECT_IVPTR): renamed from ROBJECT_PTR.
8519         * variable.c: follow the above renaming.
8521         * object.c: ditto.
8523         * gc.c: ditto.
8525         * marshal.c: ditto.
8527 Mon Feb 25 17:30:29 2008  Technorama Ltd.  <oss-ruby@technorama.net>
8529         * ext/openssl/digest.c ext/openssl/lib/openssl/digest.rb:
8530           Commit patch #9280 from Akinori MUSHA.
8531           Simplify the OpenSSL::Digest class and make use of the
8532           existing Digest framework.
8533           Enhance performance.
8535 Mon Feb 25 15:33:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8537         * bignum.c (big2str_karatsuba): initialize cache if not initialized.
8539         * bignum.c (Init_Bignum): delayed initializing cache.
8540           [ruby-dev:33930]
8542 Mon Feb 25 13:40:03 2008  Tanaka Akira  <akr@fsij.org>
8544         * process.c (Init_process): share bignum objects for RLIM_INFINITY,
8545           RLIM_SAVED_MAX and RLIM_SAVED_CUR if they are equal.
8547 Mon Feb 25 10:41:41 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8549         * encoding.c (Encoding#dummy): minor grammatical fixes
8550           in rdoc documentation.
8552 Mon Feb 25 00:01:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8554         * cygwin/GNUmakefile.in (clean-local): should be double-colon.
8556 Sun Feb 24 23:39:59 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8558         * common.mk, {bcc,win}32/Makefile.sub (clean-local): remove
8559           intermediate files.
8561         * cygwin/GNUmakefile.in (clean-local): remove def file.
8563 Sun Feb 24 06:49:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8565         * debug.c (ruby_set_debug_option): separated ruby_each_words().
8567         * util.c (ruby_each_words): extracted from ruby_set_debug_option().
8569         * ruby.c (enable_option, disable_option): allow all for all known
8570           features.
8572         * ruby.c (proc_options): generalized enable/disable options.
8574         * ruby.c (ruby_init_gems): take enabled flag.  [ruby-core:14840]
8576         * ruby.c (process_options): added --disable-rubyopt flag.
8578         * include/ruby/util.h (ruby_each_words): prototype.
8580 Sun Feb 24 05:25:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8582         * ruby.c (proc_options): check if argument for -E exists.
8584 Sun Feb 24 05:09:43 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8586         * misc/ruby-style.el (ruby-style-label-indent): fix for labels inside
8587           blocks in switch.
8589 Sun Feb 24 03:52:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8591         * util.c (valid_filename): use O_EXCL to get rid of clobbering
8592           existing files in race conditions.
8594 Sat Feb 23 21:36:13 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8596         * ext/win32ole/win32ole.c (ole_init_cp): should return value.
8598 Sat Feb 23 20:16:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8600         * string.c (str_sublen): removed.
8602         * string.c (rb_str_reverse, rb_str_reverse_bang): use
8603           single_byte_optimizable.
8605 Sat Feb 23 19:25:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8607         * string.c (rb_enc_cr_str_copy_for_substr): renamed from
8608           rb_enc_cr_str_copy.
8610         * string.c: use rb_enc_cr_str_copy_for_substr and keep coderange.
8612 Sat Feb 23 18:50:17 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
8614         * ext/win32ole/win32ole.c (ole_encoding2cp): remove US-ASCII
8615           mapping.
8617 Sat Feb 23 01:09:47 2008  Tanaka Akira  <akr@fsij.org>
8619         * process.c (rlimit_resource_type): new function.
8620           (rlimit_resource_value): new function.
8621           (proc_getrlimit): use rlimit_resource_type to accept
8622           symbol and string as resource type.
8623           (proc_setrlimit): use rlimit_resource_type and rlimit_resource_value
8624           to accept symbol and string as resource type and values.
8626 Fri Feb 22 21:12:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8628         * string.c (rb_enc_cr_str_copy): check string's coderange is 7bit or
8629           valid.
8631 Fri Feb 22 19:50:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8633         * bignum.c (BIGZEROP): fix for longer Bignum zeros.  [ruby-Bugs-17454]
8635 Fri Feb 22 15:47:36 2008  Tanaka Akira  <akr@fsij.org>
8637         * encoding.c (rb_enc_mbclen): return minlen instead of 1 when
8638           a character is not found properly.
8640         * string.c (rb_enc_strlen): round up string length with fixed
8641           multibyte encoding such as UTF-32.
8642           (rb_enc_strlen_cr): ditto.
8643           (rb_str_substr): fix substring with fixed multibyte encoding.
8644           (rb_str_justify): check number of characters.
8646 Fri Feb 22 12:11:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8648         * string.c (rb_str_inspect): string of ascii incompatible encoding
8649           should be escaped and returned as US-ASCII encoding.
8651 Fri Feb 22 11:16:55 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8653         * string.c (rb_str_substr): copy encoding although empty string.
8655 Fri Feb 22 04:48:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8657         * string.c (rb_str_times): empty string's coderange is CODERANGE_7BIT.
8659         * string.c (rb_str_substr): ditto.
8661         * encoding.c (rb_enc_compatible): empty string is compatible with not
8662           only nonasciicompatible strings. [ruby-dev:33895]
8664 Thu Feb 21 17:15:15 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
8666         * transcode.c: Added basic support for passing options to String#encode
8667           via a hash. Currently only one option, with one value, is supported:
8668           invalid: :ignore (dropping invalid byte sequences instead of
8669           producing an error). Option naming is not yet stable!
8671         * test/ruby/test_transcode.rb: Added a single test for invalid: :ignore
8672           option. Not more tests because most data does not yet distinguish
8673           between INVALID and UNKNOWN.
8675 Thu Feb 21 16:35:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8677         * array.c (rb_ary_unshift_m): expands enough for argc.  [ruby-dev:33880]
8679 Thu Feb 21 14:49:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8681         * io.c (argf_set_encoding): uses current_file after check if next
8682           input is available.
8684 Thu Feb 21 14:13:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8686         * io.c (rb_f_putc): invoke stdout method so that redefining putc
8687           may take effect.   [ruby-talk:291844]
8689         * io.c (rb_f_puts): ditto.
8691 Thu Feb 21 11:10:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8693         * string.c: replace rb_enc_copy by rb_enc_cr_str_copy or
8694           rb_enc_cr_str_exact_copy.
8696 Thu Feb 21 10:35:04 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8698         * include/ruby/encoding.h (rb_enc_asciicompat): dummy encoding is not
8699           ascii compatible. [ruby-dev:33878]
8701 Thu Feb 21 00:01:34 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8703         * configure.in (RPATHFLAG): -R option of HP-UX ld is not for runtime
8704           load path.  [ruby-list:44600]
8706 Wed Feb 20 23:55:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8708         * win32/win32.c (rb_w32_map_errno): exported.
8710 Wed Feb 20 23:28:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8712         * ext/readline/extconf.rb (rl_event_hook): workaround for native
8713           windows.
8715 Wed Feb 20 19:42:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8717         * encoding.c (rb_enc_associate_index): doesn't clear coderange
8718           when new encoding equals to old one.
8720 Wed Feb 20 19:15:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8722         * string.c (rb_enc_str_copy): added for wrapper for rb_enc_copy.
8723           this also copy coderange when ptr and len is equal.
8725         * string.c (rb_enc_cr_str_copy): added for wrapper for rb_enc_copy.
8726           this always copy coderange.
8728         * string.c (str_replace_shared): use rb_enc_str_copy.
8730         * string.c (str_new3): don't rb_enc_copy because encoding is copied
8731           at str_replace_shared.
8733 Wed Feb 20 13:08:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8735         * instruby.rb (parse_args): added --dir-mode, --script-mode and
8736           --cmd-type options.  [ruby-dev:33816]
8738         * instruby.rb (parse_args): added bin-arch and bin-comm to install
8739           type, for compiled files and script files.
8741         * instruby.rb (parse_args): deal with make style command line macros,
8742           and count as long style options if prefixed with INSTALL_.
8744         * instruby.rb (makedirs): use $dir_mode.  [ruby-dev:33805]
8746         * instruby.rb (open_for_install): set file mode, which is now
8747           permission mode instead of access mode.
8749         * instruby.rb (bin-comm): installs scripts with replacing shebang
8750           lines.
8752 Wed Feb 20 10:04:22 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8754         * io.c (open_key_args): set arg->io even if no options passed.
8755           [ruby-dev:33072]
8757 Tue Feb 19 21:11:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8759         * string.c (rb_enc_strlen_cr): get length with coderange scan.
8761         * string.c (str_strlen): use rb_enc_strlen_cr. [ruby-dev:33849]
8763 Tue Feb 19 20:49:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8765         * eval.c (rb_raise_jump): moved adjustment for control frame.
8767 Tue Feb 19 18:34:32 2008  Tanaka Akira  <akr@fsij.org>
8769         * gc.c (STACK_LENGTH) [SPARC] : 0x80 offset removed.  [ruby-dev:33857]
8771 Tue Feb 19 14:27:32 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8773         * ext/readline/readline.c (readline_event): prevent polling.  based on
8774           a patch from error errorsson in [ruby-Bugs-17675].
8776 Tue Feb 19 11:14:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8778         * eval.c (ruby_exec_node): no thread starts inside iseq compilation.
8780         * eval.c (rb_f_raise): skip current control frame.  [ruby-core:15589]
8782         * insns.def (opt_div): raise as the ordinary method. [ruby-core:15589]
8784 Mon Feb 18 15:16:30 2008  Tanaka Akira  <akr@fsij.org>
8786         * string.c (rb_str_each_line): fix newline size.
8788 Mon Feb 18 13:06:37 2008  Tanaka Akira  <akr@fsij.org>
8790         * lib/irb/locale.rb (IRB::Locale#lc2kconv): check ja_JP.EUC-JP as well.
8792 Mon Feb 18 11:51:19 2008  Tanaka Akira  <akr@fsij.org>
8794         * re.c (re_warn): defined to restore warnings for /[a-c-e]/, etc.
8796 Mon Feb 18 10:17:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8798         * ext/pty/lib/expect.rb (IO#expect): check if peer is closed.
8799           [ruby-Bugs-17940]
8801 Mon Feb 18 00:33:03 2008  Tanaka Akira  <akr@fsij.org>
8803         * re.c (rb_reg_regsub): don't repeat repl twice with
8804           "X".sub!(/./, sprintf("\\%c", 255)).
8806 Sun Feb 17 23:06:55 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
8808         * lib/cgi.rb (CGI::escapeHTML): use gsub with Hash. [ruby-dev:33828]
8810 Sun Feb 17 21:38:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8812         * encoding.c (ENC_CODERANGE_AND): fix broken case. [ruby-dev:33826]
8814         * string.c (rb_str_times): fix broken case. [ruby-dev:33826]
8816 Sun Feb 17 20:45:10 2008  Tanaka Akira  <akr@fsij.org>
8818         * re.c (rb_reg_prepare_re): add enable_warning parameter.
8819           (rb_reg_adjust_startpos): disable warning by rb_reg_prepare_re.
8820           (rb_reg_search): follow rb_reg_prepare_re parameter change.
8822 Sun Feb 17 20:12:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
8824         * test/ruby/test_regexp.rb: add tests to achieve over 90% test
8825           coverage of re.c.
8827 Sun Feb 17 15:25:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8829         * encoding.c (ENC_CODERANGE_AND): added.
8831         * string.c (rb_str_plus, rb_str_times): keep coderange.
8833         * parse.y (STR_NEW0) use rb_usascii_str_new.
8835 Sun Feb 17 14:07:24 2008  Tanaka Akira  <akr@fsij.org>
8837         * string.c (str_strlen): rb_enc_strlen doesn't fail.
8839 Sun Feb 17 13:03:48 2008  Tanaka Akira  <akr@fsij.org>
8841         * string.c (str_sublen): use rb_enc_strlen.
8843 Sun Feb 17 12:17:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8845         * enc/{euc_jp.c,gbk.c,iso_8859_1.c,iso_8859_11.c,iso_8859_13.c,
8846           iso_8859_2.c,iso_8859_6.c,iso_8859_7.c,iso_8859_8.c,iso_8859_9.c,
8847           shift_jis.c,windows_1251.c}: add document about encodings.
8849         * enc/cp949.c: divided into new file.
8851 Sun Feb 17 10:59:04 2008  Tanaka Akira  <akr@fsij.org>
8853         * re.c (rb_reg_quote): return US-ASCII string consistently.
8855 Sun Feb 17 09:17:08 2008  Tanaka Akira  <akr@fsij.org>
8857         * string.c (rb_str_times): reduce loop overhead.
8859 Sun Feb 17 03:37:01 2008  Tanaka Akira  <akr@fsij.org>
8861         * include/ruby/re.h (struct rmatch_offset): new struct for character
8862           offsets.
8863           (struct rmatch): new struct.
8864           (struct RMatch): reference struct rmatch.
8865           (RMATCH_REGS): new macro.
8867         * re.c (match_alloc): initialize struct rmatch.
8868           (pair_byte_cmp): new function.
8869           (update_char_offset): update character offsets.
8870           (match_init_copy): copy regexp and character offsets.
8871           (match_sublen): removed.
8872           (match_offset): use update_char_offset.
8873           (match_begin): ditto.
8874           (match_end): ditto.
8875           (rb_reg_search): make character offset updated flag false.
8876           (match_size): use RMATCH_REGS.
8877           (match_backref_number): ditto.
8878           (rb_reg_nth_defined): ditto.
8879           (rb_reg_nth_match): ditto.
8880           (rb_reg_match_pre): ditto.
8881           (rb_reg_match_post): ditto.
8882           (rb_reg_match_last): ditto.
8883           (match_array): ditto.
8884           (match_aref): ditto.
8885           (match_values_at): ditto.
8886           (match_inspect): ditto.
8888         * string.c (rb_str_subpat_set): use RMATCH_REGS.
8889           (rb_str_sub_bang): ditto.
8890           (str_gsub): ditto.
8891           (rb_str_split_m): ditto.
8892           (scan_once): ditto.
8894         * gc.c (obj_free): free character offsets.
8896 Sun Feb 17 03:13:40 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
8898         * win32/resource.rb: made version infos confirm to OS spec.
8900         * {bcc32,win32}/Makefile.sub (*.rc): add dependency.
8902 Sat Feb 16 20:49:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8904         * string.c (rb_str_substr): optimized for UTF-8.
8906 Sat Feb 16 18:13:53 2008  Tanaka Akira  <akr@fsij.org>
8908         * encoding.c (rb_enc_compatible): check encoding incapable arguments.
8910 Sat Feb 16 20:12:47 2008  Tanaka Akira  <akr@fsij.org>
8912         * re.c (match_inspect): avoid SEGV with MatchData.allocate.inspect.
8914 Sat Feb 16 19:04:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8916         * string.c (str_strlen): revert r15507. [ruby-dev:33810]
8918 Sat Feb 16 18:25:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8920         * string.c (str_strlen): little more optimization.
8921           (rb_enc_nth): remove needless variable 'c'.
8923 Sat Feb 16 18:00:13 2008  Tanaka Akira  <akr@fsij.org>
8925         * encoding.c (rb_enc_compatible): empty strings are always compatible.
8927         * string.c (rb_enc_cr_str_buf_cat): ditto.
8929 Sat Feb 16 16:14:35 2008  Tanaka Akira  <akr@fsij.org>
8931         * string.c (rb_enc_strlen): UTF-8 character count moved to str_strlen.
8932           (str_strlen): UTF-8 character count is only applicable for valid
8933           UTF-8 string.  [ruby-dev:33807]
8935 Sat Feb 16 13:16:49 2008  Tanaka Akira  <akr@fsij.org>
8937         * string.c (rb_str_sub_bang): stringize replacing hash values.
8938           (str_gsub): ditto.
8940 Sat Feb 16 13:01:33 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8942         * string.c (rb_enc_strlen): add search_nonascii like character
8943           counter for UTF-8.
8945 Sat Feb 16 11:53:35 2008  Tanaka Akira  <akr@fsij.org>
8947         * encoding.c (rb_enc_strlen): moved to string.c.
8949         * string.c (rb_enc_strlen): use search_nonascii.
8950           (str_strlen): don't use search_nonascii.
8952 Sat Feb 16 11:45:31 2008  Tanaka Akira  <akr@fsij.org>
8954         * lib/require_relative.rb: check require_relative call in eval.
8956 Sat Feb 16 08:00:01 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8958         * ruby.c (process_options): set default_external before loading
8959           libraries. [ruby-dev:33801]
8961 Sat Feb 16 05:49:54 2008  NARUSE, Yui  <naruse@ruby-lang.org>
8963         * enc/iso_8859_{4,13}.c: Windows-1257 is replica of ISO-8859-13.
8965         * string.c (single_byte_optimizable): rb_enc_mbminlen must be 1
8966           when rb_enc_mbmaxlen is 1.
8968 Sat Feb 16 03:43:18 2008  Tanaka Akira  <akr@fsij.org>
8970         * encoding.c (rb_enc_nth): moved to string.c.
8972         * string.c (rb_enc_nth): moved from string.c.  use search_nonascii
8973           for ASCII compatible string.
8974           (str_nth): wrong optimization removed to fix
8975           "a".force_encoding("EUC-JP").slice!(0,10) returns
8976           "a\x00\x00\x00\x00\x00\x00\x00\x00\x00"
8978 Sat Feb 16 00:21:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8980         * range.c (rb_range_beg_len): check if responds to "begin" and "end"
8981           methods for non-Range object.
8983 Fri Feb 15 20:29:42 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
8985         * ext/win32ole/win32ole.c (ole_init_cp): initialize WIN32OLE.codepage
8986           according to Encoding.default_external.
8988         * test/win32ole/test_win32ole.rb: ditto.
8990 Fri Feb 15 19:31:23 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
8992         * include/ruby/node.h (NODE_FL_NEWLINE): renamed from NODE_NEWLINE
8993           to denote its a flag.  [ruby-core:15529]
8995 Fri Feb 15 18:23:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
8997         * string.c (rb_str_sub_bang, str_gsub): allows hash for replacement.
8999 Fri Feb 15 17:12:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9001         * string.c (str_strlen): use search_nonascii() for performance.
9003         * string.c (str_nth): ditto.
9005 Fri Feb 15 16:22:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9007         * io.c (open_key_args): allow specifying both :mode and :encoding.
9009 Fri Feb 15 15:34:47 2008  Tanaka Akira  <akr@fsij.org>
9011         * string.c (rb_str_getbyte): new method.
9012           (rb_str_setbyte): new method.
9014 Fri Feb 15 15:29:03 2008  Tanaka Akira  <akr@fsij.org>
9016         * lib/require_relative.rb: new file.
9018 Fri Feb 15 15:23:12 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9020         * ext/iconv/iconv.c (iconv_convert): check upper bound.  a patch from
9021           Daniel Luz at [ruby-Bugs-17910].
9023 Fri Feb 15 10:35:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9025         * re.c (rb_reg_quote): set US-ASCII for ASCII-only string.
9026           [ruby-dev:33785]
9028 Fri Feb 15 10:27:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9030         * {win,bcc}32/Makefile.sub (config.h): added HAVE_FTRUNCATE.
9031           [ruby-dev:33786]
9033 Fri Feb 15 09:44:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9035         * parse.y (reg_compile_gen): reg_fragment_setenc might not raise an
9036           exception before rb_reg_compile.
9038 Fri Feb 15 07:37:40 2008  Eric Hodel  <drbrain@segment7.net>
9040         * lib/rdoc/ri/paths.rb: Preserve compatibility with 1.8.
9042 Fri Feb 15 02:42:25 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9044         * configure.in (ftruncate): check if available.
9046         * file.c (rb_file_truncate): check if ftruncate instead of truncate.
9048 Fri Feb 15 02:40:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9050         * configure.in (sigsetmask): check when signal semantics is not POSIX.
9052         * signal.c (USE_TRAP_MASK): set true if sigprocmask or sigsetmask is
9053           available.
9055 Thu Feb 14 23:56:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9057         * eval_error.c (error_print): append a newline to rest lines.
9059         * parse.y (reg_compile_gen): appends error message from
9060           rb_reg_compile() to one from reg_fragment_setenc().
9062 Thu Feb 14 21:00:14 2008  Tanaka Akira  <akr@fsij.org>
9064         * io.c (io_reopen): check STDIN, STDOUT and STDERR mode according to
9065           stdio streams.
9067 Thu Feb 14 16:07:40 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9069         * test/ruby/test_math.rb: actual-expected argument ordering for
9070           test_math.rb fixed.  a patch from Tadashi Saito
9071           <shiba AT mail2.accsnet.ne.jp> in [ruby-dev:33770].
9073 Thu Feb 14 16:02:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9075         * file.c (rb_file_s_utime): inhibits with secure level 2 or higher.
9077 Thu Feb 14 12:30:02 2008  Tanaka Akira  <akr@fsij.org>
9079         * re.c (rb_reg_preprocess_dregexp): use non-preprocessed regexp source
9080           for result.
9082 Thu Feb 14 01:43:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9084         * lib/timeout.rb (Timeout::timeout): made sensitive to location on the
9085           stack.  [ruby-core:15458]
9087 Thu Feb 14 00:49:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9089         * common.mk (INSTRUBY_ARGS): pass mode to install.  [ruby-dev:33766]
9091         * instruby.rb (parse_args): added --data-mode and --prog-mode options.
9093 Thu Feb 14 00:02:19 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9095         * eval.c (eval): allow to eval in a binding that has a singleton method.
9096           [ruby-dev:33763]
9098         * test/ruby/test_proc.rb: add tests to achieve over 70% test coverage
9099           of proc.c.
9101         * test/ruby/test_method.rb: ditto.
9103 Wed Feb 13 22:46:36 2008  Tanaka Akira  <akr@fsij.org>
9105         * lib/pathname.rb (Pathname#sub_ext): new method.  [ruby-list:44608]
9107 Wed Feb 13 21:50:32 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9109         * proc.c (proc_curry): new method. [ruby-dev:33676]
9111         * test/ruby/test_proc.rb: add tests for above.
9113 Wed Feb 13 20:48:50 2008  Tanaka Akira  <akr@fsij.org>
9115         * include/ruby/ruby.h (RObject): add iv_index_tbl for shortcut of
9116           RCLASS_IV_INDEX_TBL(rb_obj_class(obj)).
9117           (ROBJECT_IV_INDEX_TBL): defined.
9119         * object.c (init_copy): initialize iv_index_tbl in struct RObject.
9121         * variable.c (ivar_get): use ROBJECT_IV_INDEX_TBL.
9122           (rb_ivar_defined): ditto.
9123           (obj_ivar_each): ditto.
9124           (rb_obj_remove_instance_variable): ditto.
9125           (rb_ivar_set): update iv_index_tbl in struct RObject.
9127 Wed Feb 13 16:21:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9129         * lib/uri/generic.rb: revert r15442. 2nd argument of String#sub parse
9130           escapes. [ruby-dev:33726]
9132         * bootstraptest/test_method.rb, enc/depend, instruby.rb, lib/mkmf.rb,
9133           mkconfig.rb: revert r15443. ditto.
9135 Wed Feb 13 11:20:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9137         * enc/depend: fix typo.
9139         * lib/mkmf.rb: revert r15443. "\\1#{sep}\\2" is wrong if sep is ended
9140           with "\\".
9142 Wed Feb 13 08:57:21 2008  Eric Hodel  <drbrain@segment7.net>
9144         * lib/rdoc/markup/inline.rb:  Allow inline markup to have a leading
9145           '#' or '\', or trailing punctuation.  i.e. *#freeze?*, *\foo?*.
9147 Wed Feb 13 07:21:23 2008  Eric Hodel  <drbrain@segment7.net>
9149         * lib/rdoc/to_html_hyperlink.rb:  Moved linking to to_html.rb, move
9150           crossref to to_html_crossref.rb
9152 Wed Feb 13 04:15:44 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9154         * parse.y (arg_concat_gen, arg_append_gen): optimize for array push.
9156         * parse.y (arg_concat_gen): optimize for array concat.
9158         * parse.y (arg_add_gen): removed since identical to arg_append_gen.
9160 Tue Feb 12 21:04:51 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9162         * parse.y (exc_list): should use mrhs if non array.
9164 Tue Feb 12 20:32:50 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9166         * lib/rational.rb (floor, ceil, truncate, round): do not use
9167           definitions of Numeric.
9169         * lib/rational.rb (to_i): should returns truncated self.
9171         * lib/complex.rb (numerator): requires
9172           Integer#{numerator,denominator}.
9174         * lib/complex.rb (quo): do not use definition of Numeric.
9176         * lib/complex.rb (>, >=, <, <=, between?, div, divmod, modulo,
9177           floor, ceil, truncate, round): undef'ed.
9179         * lib/mathn.rb (Rational#inspect): removed.
9181 Tue Feb 12 16:48:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9183         * parse.y (args, mrhs): flattens literal array splats.
9185         * parse.y (exc_list): splat literal array.
9187 Tue Feb 12 15:27:19 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9189         * bootstraptest/runner.rb, bootstraptest/test_method.rb, enc/depend,
9190           instruby.rb, lib/mkmf.rb, lib/test/unit/util/procwrapper.rb,
9191           mkconfig.rb, sample/test.rb, template/vm.inc.tmpl,
9192           test/ruby/test_stringchar.rb: fixes around String#gsub.
9195 Tue Feb 12 15:11:47 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9197         * ext/json/lib/json/pure/generator.rb,
9198           ext/json/lib/json/pure/parser.rb, ext/openssl/lib/openssl/x509.rb,
9199           ext/win32ole/sample/olegen.rb, lib/date/format.rb, lib/irb/context.rb,
9200           lib/irb/workspace.rb, lib/net/http.rb, lib/net/imap.rb,
9201           lib/rdoc/generator.rb, lib/rdoc/markup/to_html.rb,
9202           lib/rdoc/markup/to_latex.rb, lib/rdoc/parsers/parse_c.rb,
9203           lib/rdoc/ri/formatter.rb, lib/rexml/parsers/baseparser.rb,
9204           lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rss/parser.rb,
9205           lib/uri/common.rb, lib/uri/generic.rb, lib/webrick/httpresponse.rb,
9206           lib/webrick/httpservlet/filehandler.rb, lib/yaml/baseemitter.rb,
9207           lib/yaml/encoding.rb: performance tuning around String#gsub.
9209 Tue Feb 12 12:16:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9211         * string.c (rb_str_hash_cmp): lighter version of rb_str_cmp() for
9212           hash comparison function.
9214         * hash.c (rb_any_cmp): use rb_str_hash_cmp().
9216         * string.c (rb_str_casecmp): should return nil for incompatible
9217           comparison.
9219 Tue Feb 12 12:13:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9221         * instruby.rb: specify file mode to install.  a patch from
9222           pegacorn  <subscriber.jp AT gmail.com> in [ruby-dev:33699].
9224 Tue Feb 12 11:38:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9226         * numeric.c (rb_num_coerce_bin): add ID argument to specify
9227           caller's method name.  [ruby-dev:33663]
9229         * numeric.c (rb_num_coerce_cmp): ditto.
9231         * numeric.c (rb_num_coerce_relop): ditto.
9233         * ext/bigdecimal/bigdecimal.c (DoSomeOne): add function name argument.
9235 Tue Feb 12 10:25:02 2008
9237         * lib/rdoc/rdoc.rb:  Wrap parse_files' read in version check for
9238           backwards compatibility.
9240 Tue Feb 12 10:15:14 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9242         * ruby.c (load_file): enc must effect source encoding.
9243           [ruby-core:15496]
9245 Tue Feb 12 10:16:47 2008  Eric Hodel  <drbrain@segment7.net>
9247         * lib/rdoc/ri/paths.rb:  Restore require rubygems check.
9249 Tue Feb 12 02:42:27 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9251         * range.c (range_include): specialize single character string
9252           case (e.g. (?a ..?z).include(?x)) for performance.
9253           [ruby-core:15481]
9255         * string.c (rb_str_upto): specialize single character case.
9257         * string.c (rb_str_hash): omit coderange scan for performance.
9259         * object.c (rb_check_to_integer): check Fixnum first.
9261         * object.c (rb_to_integer): ditto.
9263         * string.c (rb_str_equal): inline memcmp to avoid unnecessary
9264           rb_str_comparable().
9266         * parse.y (rb_intern2): use US-ASCII encoding.
9268         * parse.y (rb_intern_str): ditto.
9270 Mon Feb 11 17:21:18 2008  Kouhei Sutou  <kou@cozmixng.org>
9272         * lib/rss/rss.rb (RSS::VERSION), test/rss/test_version.rb:
9273           0.2.3 -> 0.2.4.
9275         * lib/rss/maker.rb, lib/rss/maker/, test/rss/test_maker_2.0.rb:
9276           fixed a bug that RSS::Maker.make("0.9")'s item doesn't make some
9277           elements if description is missed.
9278           Reported by Michael Auzenne. Thanks!!!
9280         * lib/rss/maker/0.9.rb, test/rss/test_maker_0.9.rb:
9281           RSS::Maker.make("0.9") generates RSS 0.92 not RSS 0.91.
9283 Mon Feb 11 10:43:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9285         * ruby.c (load_file): the encoding of DATA follows the source
9286           file encoding. [ruby-dev:33693]
9288 Mon Feb 11 06:50:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9290         * test/ruby/test_pack.rb: fix tests for 64bit CPU.
9292         * test/ruby/test_bignum.rb: ditto.
9294         * test/ruby/test_file_exhaustive.rb: ditto.
9296         * test/ruby/test_integer.rb: ditto.
9298         * test/ruby/test_time.rb: ditto.
9300         * test/ruby/test_numeric.rb: ditto.
9302         * test/ruby/test_fixnum.rb: ditto.
9304 Mon Feb 11 00:18:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9306         * lib/benchmark.rb (Job::Benchmark#item): fix typo.
9308 Sun Feb 10 21:58:32 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9310         * common.mk (encdb, transdb): depend on $(PREP).
9312 Sun Feb 10 16:58:20 2008  Eric Hodel  <drbrain@segment7.net>
9314         * lib/rubygems*, test/rubygems*, gem_prelude.rb: Import RubyGems
9315           r1601.  [ruby-core:15381]
9317 Sun Feb 10 15:07:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9319         * {bcc32,win32,wince}/Makefile.sub (MISSING): added cbrt.obj.
9321 Sun Feb 10 12:58:33 2008  Eric Hodel  <drbrain@segment7.net>
9323         * lib/rdoc/code_objects.rb: Make some attributes accessible for reuse.
9324         * lib/rdoc/generator/html.rb: Pull out ContextUser classes and related
9325           methods for reuse.
9326         * lib/rdoc/generator.rb: Move ContextUser classes to
9327           RDoc::Generator::Context for reuse.
9328         * lib/rdoc/rdoc.rb: Make RDoc::RDoc initialization a little easier.
9329         * lib/rdoc/options.rb: Make RDoc::Options easier to use without
9330           parsing an ARGV.
9331         * lib/rdoc/markup/to_*.rb: Subclass RDoc::Markup::Formatter.
9332         * lib/rdoc/markup/formatter.rb: Add RDoc::Markup::Formatter to make
9333           RDoc markup conversion easier.
9334         * lib/rdoc/markup/fragments.rb: Make RDoc::Markup::ListItem easier to
9335           test.
9336         * lib/rdoc/markup/to_html_hyperlink.rb: Pulled out of the HTML
9337           generator for easier reusability.
9338         * lib/rdoc/markup.rb: Fix bug with labeled lists containing bullet
9339           lists.
9340         * lib/rdoc/generators/html/html.rb: Fix Constant display.
9342 Sat Feb  9 23:44:29 2008  Tanaka Akira  <akr@fsij.org>
9344         * missing/tgamma.c (tgamma): use lgamma_r if available.
9346 Sat Feb  9 23:22:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9348         * ext/bigdecimal/extconf.rb: simplified the condition.
9350 Sat Feb  9 21:20:28 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9352         * test/ruby/test_math.rb: add tests for Math.gamma, Math.lgamma and
9353           Math.cbrt, and use assert_in_delta instead of assert.
9355 Sat Feb  9 18:34:45 2008  Tanaka Akira  <akr@fsij.org>
9357         * math.c (math_cbrt): new method Math.cbrt.
9359         * configure.in (cbrt): check for replacement functions.
9361         * missing/cbrt.c: new file.
9363 Sat Feb  9 17:51:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9365         * ext/bigdecimal/bigdecimal.c (BigDecimal_to_f): use strtod() for more
9366           precision.  [ruby-talk:290296]
9368         * ext/bigdecimal/bigdecimal.c (BASE_FIG): made constant.
9370         * ext/bigdecimal/extconf.rb: ditto.  [ruby-dev:33658]
9372 Sat Feb  9 12:06:45 2008  Tanaka Akira  <akr@fsij.org>
9374         * missing/tgamma.c (tgamma): add error check.
9376 Sat Feb  9 11:47:03 2008  Tanaka Akira  <akr@fsij.org>
9378         * math.c (math_gamma): add error check.
9379           (math_lgamma): ditto.
9381 Sat Feb  9 11:09:26 2008  Tanaka Akira  <akr@fsij.org>
9383         * missing/lgamma_r.c (lgamma_r): return HUGE_VAL for non-positive
9384           integers.
9386 Sat Feb  9 10:03:07 2008  Tanaka Akira  <akr@fsij.org>
9388         * string.c (rb_str_new4): copy encoding from orig, instead of shared
9389           one.
9391 Sat Feb 09 01:01:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9393         * file.c (lchmod_internal): fix warning cast from pointer to integer of
9394           different size.
9396 Sat Feb  9 00:44:52 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9398         * lib/irb.rb (IRB::Irb::eval_input): rescues Interrupt and other than
9399           SystemExit and SignalException.  [ruby-core:15359]
9401 Fri Feb  8 23:51:36 2008  Tanaka Akira  <akr@fsij.org>
9403         * missing/lgamma_r.c (lgamma_r): use smaller argument for sin function.
9405 Fri Feb  8 22:10:36 2008  Tanaka Akira  <akr@fsij.org>
9407         * lib/open-uri.rb (OpenURI.open_http): rescue URI::InvalidURIError by
9408           URI.parse for location URI.
9410 Fri Feb  8 19:22:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9412         * ext/iconv/iconv.c (rb_str_derive): uses rb_str_subseq() for byte
9413           length.  [ruby-dev:33653]
9415         * ext/iconv/iconv.c (iconv_convert): added toidx argument to set
9416           encoding of successfully converted string.  [ruby-dev:33221]
9418 Fri Feb  8 15:09:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9420         * lib/mkmf.rb (xsystem): expand macros like as make.
9422 Fri Feb  8 09:27:57 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9424         * lib/rdoc/ri/driver.rb (read_yaml): remove SM* for compatibility.
9426 Fri Feb  8 00:07:24 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9428         * test/ruby/test_hash.rb: follow the change of Hash#flatten.
9430         * test/ruby/test_time.rb: add tests to achieve over 70% test coverage
9431           of time.c.
9433         * test/ruby/test_prec.rb: ditto over 90% for prec.c.
9435 Thu Feb  7 19:11:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9437         * string.c (rb_str_dup): reverted unneeded change.  [ruby-dev:33634]
9439         * string.c (rb_str_replace): makes frozen shared string before
9440           sharing.
9442 Thu Feb  7 16:33:51 2008  Tanaka Akira  <akr@fsij.org>
9444         * io.c (io_reopen): don't change access mode for stdin, stdout and
9445           stderr.  [ruby-core:15360]
9447 Thu Feb  7 16:33:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9449         * string.c (str_replace_shared): replaces string with sharing.
9451         * string.c (rb_str_new4, rb_str_associate, rb_str_associated): allows
9452           associated strings shared.
9454         * string.c (rb_str_dup, rb_str_substr, rb_str_replace): shares memory.
9455           [ruby-core:15400]
9457 Thu Feb  7 15:42:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9459         * string.c (rb_str_end_with): compares with the suffix.
9461 Thu Feb  7 15:03:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9463         * enc/trans/korean.c: add support for CP949 by Park Ji-In.
9464           [ruby-dev:33626]
9466 Thu Feb  7 11:11:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9468         * missing/lgamma_r.c (lgamma_r): some compilers don't permit dividing
9469           by literal 0.0. use const variable instead.
9471         * {bcc32,win32,wince}/Makefile.sub (MISSING): add lgamma_r.obj and
9472           tgamma.obj.
9474 Thu Feb  7 10:39:21 2008  Tanaka Akira  <akr@fsij.org>
9476         * math.c (math_gamma): new method Math.gamma.
9477           (math_lgamma): new method Math.lgamma.
9479         * include/ruby/missing.h (tgamma): declared unless HAVE_TGAMMA.
9480           (lgamma_r): declared unless HAVE_LGAMMA_R.
9482         * configure.in (tgamma): check for replacement functions.
9483           (lgamma_r): ditto.
9485         * missing/tgamma.c: new file.  based on gamma.c from
9486           "C-gengo niyoru saishin algorithm jiten" (New Algorithm handbook
9487           in C language) (Gijyutsu hyouron sha, Tokyo, 1991)
9488           by Haruhiko Okumura.
9490         * missing/lgamma_r.c: ditto.
9492         * LEGAL (missing/tgamma.c): describe as public domain.
9493           (missing/lgamma_r.c): ditto.
9495 Thu Feb  7 09:05:57 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9497         * ext/nkf/nkf-utf8/nkf.c (nkf_enc_from_index): BINARY does not
9498           have in-bound encoding index.
9500 Thu Feb  7 04:26:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9502         * enc/trans/korean.c: add EUC-KR conversion support by Park Ji-In.
9503           [ruby-dev:33621]
9505 Wed Feb  6 01:47:39 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9507         * hash.c (rb_hash_flatten): do not flatten recursively by default.
9508           [ruby-dev:33603]
9510 Wed Feb  6 00:50:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9512         * insns.def (adjuststack): never use INC_SP with minus value because
9513           some compilers cannot deal it correctly. use DEC_SP instead.
9515 Wed Feb  6 00:48:41 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9517         * test/ruby/test_hash.rb: add tests to achieve over 90% test coverage
9518           of hash.c.
9520         * test/ruby/test_env.rb: ditto.
9522 Wed Feb  6 00:24:49 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9524         * hash.c (env_rassoc): remove access to free'd environment on mswin32.
9526 Tue Feb  5 21:57:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9528         * vm.c (rb_call_super): pass a passed block when super is called via
9529           rb_call_super.  [ruby-dev:33598]
9531 Tue Feb  5 11:14:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9533         * lib/mkmf.rb (INSTALL_DIRS, install_dirs): added BINDIR.
9535         * lib/mkmf.rb (install_files): rejects files matching to
9536           $NONINSTALLFILES.
9538         * lib/mkmf.rb (init_mkmf): defaults $NONINSTALLFILES to backup and
9539           temporary files.
9541 Mon Feb  4 21:52:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9543         * lib/delegate.rb (DelegateClass): use define_method instead of
9544           module_eval to improve performance.  [ruby-dev:33586]
9546 Mon Feb  4 16:44:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9548         * configure.in (darwin): NSIG is not defined if _XOPEN_SOURCE > 500L.
9549           [ruby-dev:33584]
9551 Mon Feb  4 14:51:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9553         * parse.y (rb_enc_symname2_p): support "!", "!=" and "!~".
9554           [ruby-dev:33592]
9556 Mon Feb  4 13:58:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9558         * lib/delegate.rb (Delegator.preserved, DelegateClass.methods): extend
9559           shouldn't be delegated. [ruby-dev:32987], etc.
9561 Mon Feb  4 08:59:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9563         * lib/cgi.rb (CGI::QueryExtension::[]): no more transition
9564           extend(CGI::Value).  a patch from <tommy AT tmtm.org> in
9565           [ruby-dev:33583].
9567 Sun Feb  3 21:13:13 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9569         * test/ruby/test_numeric.rb: forgot to add this (at r15360).
9571         * test/ruby/test_file_exhaustive.rb: add tests to achieve over 80% test
9572           coverage of file.c.
9574 Sat Feb  2 20:06:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9576         * lib/benchmark.rb (Benchmark::realtime): make Benchmark#realtime
9577           a bit faster.  a patch from Alexander Dymo <dymo AT ukrpost.ua> in
9578           [ruby-core:15337].
9580 Sat Feb  2 17:40:21 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9582         * time.c (time_cmp): Time.<=> no longer supports comparison with
9583           numeric. [ruby-core:15332]
9585 Sat Feb  2 09:53:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9587         * configure.in (darwin): disabled fat-binary support which confuses
9588           configure much, since ``universal'' implies hidden cross-compiling.
9589           TODO: ruby and libruby.bundle might be possible to bound with `lipo'
9590           after builds for each archs.  Anyway, config.h and rbconfig.rb must
9591           be separated definitely at least.
9593 Sat Feb  2 09:28:36 2008  Tanaka Akira  <akr@fsij.org>
9595         * random.c (limited_big_rand): fix buffer overflow when SIZEOF_BDIGITS
9596           is 2.  fixed by Kenta Murata.  [ruby-dev:33565]
9598 Fri Feb  1 21:42:37 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9600         * configure.in (darwin): _XOPEN_SOURCE is necessary to make ucontext_t
9601           consistent with the library implementation of MacOS X 10.5.
9602           [ruby-dev:33461]
9604         * configure.in (darwin): ucontext on PowerPC MacOS X 10.5 is broken.
9606 Fri Feb  1 11:44:22 2008  Tanaka Akira  <akr@fsij.org>
9608         * tool/compile_prelude.rb (C_ESC): use octal escape to avoid
9609           "\x09for (;;) ..." to be interpret the first character 0x9f.
9611 Thu Jan 31 23:06:42 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9613         * test/ruby/test_bignum.rb: suppress warnings during test.
9615         * test/ruby/test_enum.rb: ditto.
9617         * test/ruby/test_integer.rb: add tests to achieve over 90% test
9618           coverage of numeric.c.
9620         * test/ruby/test_float.rb: ditto.
9622         * test/ruby/test_fixnum.rb: ditto.
9624         * test/ruby/test_numeric.rb: ditto.
9626         * test/ruby/test_pack.rb: add tests to achieve over 90% test coverage
9627           of pack.c.
9629 Thu Jan 31 17:30:42 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9631         * marshal.c (r_object0): no need to call r_entry for immediate values.
9633 Thu Jan 31 15:46:30 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9635         * lib/rdoc/ri/formatter.rb (output): add accessor.
9637         * lib/rdoc/ri/display.rb (page): replace @formatter.output instead of
9638           $stdout.
9640 Thu Jan 31 15:06:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9642         * marshal.c (r_object0): call r_entry/r_leave to call proc when
9643           TYPE_FIXNUM, TYPE_NIL, TYPE_TRUE, TYPE_FALSE, TYPE_SYMBOL.
9645 Thu Jan 31 14:03:38 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9647         * lib/rdoc/ri/display.rb (display_method_list, display_class_list):
9648           use @formatter.raw_print_line instead of puts.
9650         * lib/rdoc/ri/driver.rb (select_methods): new method to collect all
9651           instance/class methods which match with passed pattern.
9653         * lib/rdoc/ri/driver.rb (run): use class_cache's result directly
9654           instead of select_classes' because it's removed now.
9656         * lib/rdoc/ri/driver.rb (run): search methods when passed name is not
9657           class name. [ruby-core:15309]
9659 Thu Jan 31 08:31:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9661         * common.mk (ext/extmk.rb, instruby.rb): inlined $(MAKE) so that can
9662           be executed even with -n.
9664 Thu Jan 31 06:24:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9666         * io.c (rb_io_close_read): replaces fptr with the tied writer if
9667           duplex.
9669         * io.c (rb_io_close_write): unties the tied IO for writing if duplex.
9670           [ruby-dev:33532]
9672 Thu Jan 31 02:22:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9674         * io.c (open_key_args): allow encoding key to take two encoding
9675           names.  a patch from <rubikitch AT ruby-lang.org>.  [ruby-dev:33540]
9677 Thu Jan 31 02:15:49 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9679         * parse.y (dsym): allow empty symbols.  [ruby-core:15248]
9681 Thu Jan 31 00:01:51 2008  Tanaka Akira  <akr@fsij.org>
9683         * io.c (select_internal): fix SEGV by `select [STDIN],nil,[STDIN]'.
9684           fixed by Petr Chromec.
9685           http://rubyforge.org/tracker/index.php?func=detail&aid=17275&group_id=426&atid=1698
9687 Wed Jan 30 17:32:49 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9689         * enc/*.c: add GB12345, UCS-{2,4}{BE,LE}.
9691 Wed Jan 30 14:32:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9693         * lib/rdoc/ri/driver.rb (cache_file_for): shouldn't use `:' in filename.
9695 Wed Jan 30 14:27:19 2008  Tanaka Akira  <akr@fsij.org>
9697         * string.c (rb_str_succ): use wrapped character as a carry for
9698           ASCII incompatible encoding.
9700 Wed Jan 30 12:26:59 2008  Tanaka Akira  <akr@fsij.org>
9702         * enc/utf_16be.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
9703           (UTF16_IS_SURROGATE_SECOND): ditto.
9704           (UTF16_IS_SURROGATE): defined.
9705           (utf16be_mbc_enc_len): validation implemented.
9707         * enc/utf_16le.c (UTF16_IS_SURROGATE_FIRST): avoid branch.
9708           (UTF16_IS_SURROGATE_SECOND): ditto.
9709           (UTF16_IS_SURROGATE): defined.
9710           (utf16le_mbc_enc_len): validation implemented.
9712 Wed Jan 30 12:06:43 2008  Tadayoshi Funaba  <tadf@dotrb.org>
9714         * bignum.c (rb_cstr_to_inum): '0_2' is a valid representation.
9716 Wed Jan 30 11:57:50 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9718         * bootstraptest/runner.rb: fix -I../../hoge case.
9720 Wed Jan 30 01:25:16 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9722         * test/ruby/test_range.rb: add tests to achieve over 90% test coverage
9723           of range.c.
9725 Wed Jan 30 00:09:37 2008  Tanaka Akira  <akr@fsij.org>
9727         * enc/euc_tw.c (euctw_mbc_enc_len): validation implemented.
9729 Tue Jan 29 22:58:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9731         * test/ruby/test_enumerator.rb: add tests to achieve over 90% test
9732           coverage of enumerator.c.
9734         * test/ruby/test_enum.rb: add for enum.c.
9736 Tue Jan 29 22:29:48 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9738         * enumerator.c: fix documents.
9740 Tue Jan 29 22:27:11 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9742         * range.c: fix SEGV by ("a" .. "z").step(2 ** 30) { }.
9744 Tue Jan 29 21:59:16 2008  Tanaka Akira  <akr@fsij.org>
9746         * enc/euc_tw.c (euctw_islead): 0x8e is a leading byte.
9748 Tue Jan 29 21:55:35 2008  Yusuke Endoh  <mame@tsg.ne.jp>
9750         * bignum.c: move object allocation out of blocking_region.
9751           [ruby-dev:33139]
9753 Tue Jan 29 20:37:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9755         * enc/trans/make_transdb.rb: add for make transdb.h.
9757         * dmytranscode.c: add for miniruby.
9759         * enc/gbk.c (gbk_left_adjust_char_head, gbk_is_allowed_reverse_match):
9760           fix odd regexp match. [ruby-dev:33502]
9762 Tue Jan 29 20:17:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9764         * {bcc32,win32}/Makefile.sub (MINIOBJS): add dmytranscode.$(OBJEXT).
9766 Tue Jan 29 19:39:40 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9768         * configure.in, common.mk: fix rule for dmytranscode.o.
9770 Tue Jan 29 19:03:16 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9772         * enc/trans/japanese.c (rb_to_Windows_31J): to 'Windows-31J'.
9774         * common.mk: add rules for transdb.h.
9776         * transcode.c (init_transcoder_table): use transdb.h.
9778 Tue Jan 29 18:05:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9780         * encoding.c (encdb_{replicate,alias,dummy,declare}): define only if
9781           NO_ENCDB_H is not defined.
9783 Tue Jan 29 17:54:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9785         * enc/gbk.c (EncLen_gbk): too short. [ruby-dev:33497]
9787 Tue Jan 29 17:25:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9789         * dmyencoding.c, encoding.c (enc_init_db, NO_ENCDB_H):
9790           miniruby doesn't use encdb.
9792         * common.mk: encdb.h use miniruby.
9794 Tue Jan 29 17:37:36 2008  Tanaka Akira  <akr@fsij.org>
9796         * enc/gb18030.c (gb18030_mbc_enc_len): validation implemented.
9798 Tue Jan 29 17:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9800         * tool/ifchange: remove $temp when unchanged.
9802 Tue Jan 29 16:59:01 2008  Tanaka Akira  <akr@fsij.org>
9804         * insns.def (toregexp): generate a regexp from strings instead of one
9805           string.
9807         * re.c (rb_reg_new_ary): defined for toregexp.  it concatenates
9808           strings after each string is preprocessed.
9810         * compile.c (compile_dstr_fragments): split from compile_dstr.
9811           (compile_dstr): call compile_dstr_fragments.
9812           (compile_dregx): defined for dynamic regexp.
9813           (iseq_compile_each): use compile_dregx for dynamic regexp.
9815           [ruby-dev:33400]
9817 Tue Jan 29 16:25:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9819         * common.mk, ext/extmk.rb: always make encdb.h.
9821 Tue Jan 29 12:53:39 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9823         * enc/gbk.c: add GBK, CP936 and CP949.
9825         * enc/euc_kr.c: remove CP949.
9827         * enc/euc_cn.c: remove CP936 and rename to gb2312.c
9829         * enc/gb2312.c: GB2312 is preferred MIME name.
9831 Tue Jan 29 03:01:29 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9833         * parse.y (reg_fragment_setenc_gen): US-ASCII script special code.
9835         * parse.y (reg_fragment_check_len, reg_compile_gen): no need such
9836           trick.
9837           [ruby-dev:33399]
9839         * test/ruby/test_m17n.rb (test_regexp_usacii_literal): add tests.
9841 Tue Jan 29 01:38:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9843         * common.mk ($(srcdir)/revision.h): no need to show ifchange execution
9844           because ifchange echos updated or unchanged.
9846 Tue Jan 29 01:26:23 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9848         * common.mk (up): use last changed revision.
9850         * common.mk (up): force to update revision.h.
9852 Tue Jan 29 00:12:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9854         * bignum.c (rb_big2str0): should be US-ASCII.
9856 Tue Jan 29 00:10:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9858         * misc/ruby-mode.el (ruby-mode-set-encoding): updates magic comment.
9860 Mon Jan 28 23:47:52 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9862         * parse.y (rb_id2str, ripper_initialize, Init_ripper):
9863           use rb_usascii_str_new2. [ruby-dev:33449]
9865 Mon Jan 28 19:37:08 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9867         * ext/win32ole/win32ole.c (ole_cp2encoding): new function.
9869         * ext/win32ole/win32ole.c (ole_wc2vstr, ole_variant2val, fole_missing):
9870           set encoding to result.
9872         * ext/win32ole/win32ole.c (fole_s_set_code_page, Init_win32ole): set
9873           default encoding.
9874           [ruby-dev:33433]
9876 Mon Jan 28 11:17:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9878         * string.c, parse.y, re.c: use rb_ascii8bit_encoding.
9880 Mon Jan 28 17:54:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9882         * enc/utf_7.h: add dummy encoding UTF-7 and its alias CP65000.
9884 Mon Jan 28 17:41:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9886         * enc/utf_8.c: add alias CP65001.
9888 Mon Jan 28 15:33:23 2008  Tanaka Akira  <akr@fsij.org>
9890         * enc/big5.c (big5_mbc_enc_len): validation implemented.
9892 Mon Jan 28 13:02:02 2008  Tanaka Akira  <akr@fsij.org>
9894         * enc/euc_kr.c (euckr_mbc_enc_len): validation implemented.
9896 Mon Jan 28 11:24:49 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9898         * parse.y (parser_str_new): encoding of UTF-8 literal string in
9899           US-ASCII script is UTF-8. [ruby-dev:33406]
9901 Mon Jan 28 10:25:59 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9903         * test/ruby/test_m17n.rb (test_magic_comment): add test.
9905 Mon Jan 28 09:34:54 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
9907         * common.mk (help): use double quotes for nmake.
9909 Mon Jan 28 00:39:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9911         * parse.y (parser_set_encode): check if encoding is ASCII compatible.
9913 Mon Jan 28 01:21:15 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
9915         * io.c (rb_open_file): should check NUL in path.
9916           <http://www.rubyist.net/~matz/20080125.html#c01>.
9918         * io.c (rb_io_s_popen): ditto.
9920         * io.c (rb_io_reopen): ditto.
9922         * io.c (next_argv): ditto.
9924 Sun Jan 27 23:33:35 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9926         * sprintf.c (rb_str_format): fix for left justify flag.
9928         * sprintf.c (rb_str_format): zero-precision zero bug revised.
9929           [ruby-dev:33419]
9931 Sun Jan 27 23:20:54 2008  Tanaka Akira  <akr@fsij.org>
9933         * include/ruby/oniguruma.h: precise mbclen API redesigned to avoid
9934           inline functions.
9935           (onigenc_mbclen_charfound): removed.
9936           (onigenc_mbclen_needmore): removed.
9937           (onigenc_mbclen_recover): removed.
9938           (ONIGENC_MBCLEN_CHARFOUND): removed.
9939           (ONIGENC_MBCLEN_CHARFOUND_P): defined.
9940           (ONIGENC_MBCLEN_CHARFOUND_LEN): defined.
9941           (ONIGENC_MBCLEN_INVALID): removed.
9942           (ONIGENC_MBCLEN_INVALID_P): defined.
9943           (ONIGENC_MBCLEN_NEEDMORE): removed.
9944           (ONIGENC_MBCLEN_NEEDMORE_P): defined.
9945           (ONIGENC_MBCLEN_NEEDMORE_LEN): defined.
9946           (ONIGENC_MBC_ENC_LEN): use onigenc_mbclen_approximate.
9948         * regenc.c (onigenc_mbclen_approximate): defined.
9950         * include/ruby/encoding.h (MBCLEN_CHARFOUND): removed.
9951           (MBCLEN_INVALID): removed.
9952           (MBCLEN_NEEDMORE): removed.
9953           (MBCLEN_CHARFOUND_P): defined.
9954           (MBCLEN_INVALID_P): defined.
9955           (MBCLEN_NEEDMORE_P): defined.
9956           (MBCLEN_CHARFOUND_LEN): defined.
9957           (MBCLEN_NEEDMORE_LEN): defined.
9959         * encoding.c: use new API.
9961         * re.c: ditto.
9963         * string.c: ditto.
9965         * parse.y: ditto.
9967 Sun Jan 27 22:55:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9969         * parse.y (value_expr_gen): reverted r12880.  [ruby-dev:33388]
9971 Sun Jan 27 22:33:39 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9973         * sprintf.c (rb_str_format): fix for octal with precision.
9974           [ruby-dev:33411]
9976 Sun Jan 27 22:31:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
9978         * misc/ruby-mode.el (ruby-mode-set-encoding): automatically insert
9979           encoding magic comment.
9981         * misc/ruby-mode.el (ruby-mode): set ruby-mode-set-encoding to buffer
9982           local before-save-hook.
9984 Sun Jan 27 19:51:15 2008  Tanaka Akira  <akr@fsij.org>
9986         * string.c (rb_str_inspect): avoid exception by
9987           "\#\xa1".force_encoding("euc-jp").inspect.
9989 Sun Jan 27 19:07:33 2008  Tanaka Akira  <akr@fsij.org>
9991         * string.c (rb_str_succ): warning suppressed.
9993 Sun Jan 27 18:18:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9995         * common.mk (help): show major targets.
9997 Sun Jan 27 17:54:48 2008  NARUSE, Yui  <naruse@ruby-lang.org>
9999         * ext/nkf/nkf.c: raise error when no output encoding is given.
10001 Sun Jan 27 17:20:10 2008  Tanaka Akira  <akr@fsij.org>
10003         * string.c (rb_str_succ): don't increment/decrement codepoint.
10005 Sun Jan 27 16:03:42 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10007         * lib/irb/ruby-lex.rb (RubyLex#buf_input): use chars.to_a.
10009 Sun Jan 27 16:27:22 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10011         * ext/nkf/nkf-utf8: update nkf.
10013 Sun Jan 27 16:25:27 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10015         * re.c (rb_reg_source): set encoding as regexp encoding.
10017 Sun Jan 27 05:56:39 2008  Tanaka Akira  <akr@fsij.org>
10019         * re.c (rb_reg_preprocess): force fixed encoding when ASCII
10020           incompatible source string.
10022 Sat Jan 26 23:46:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10024         * sprintf.c (rb_str_format): zero-precision zero should be empty.
10025           [ruby-dev:33363]
10027         * sprintf.c (rb_str_format): not prepend octal prefix to negative or
10028           zero value.  [ruby-dev:33363], [ruby-dev:33367]
10030 Sat Jan 26 23:42:15 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10032         * parse.y (assignable_gen, keyword_to_name): __ENCODING__ was missing.
10034 Sat Jan 26 19:08:45 2008  Tanaka Akira  <akr@fsij.org>
10036         * marshal.c (w_object): dump string encoding in USERDEF.
10037           [ruby-dev:33401]
10039 Sat Jan 26 17:42:23 2008  Koichi Sasada  <ko1@atdot.net>
10041         * compile.c (iseq_compile_each): validate argument expr of "next"
10042           statement.
10044         * bootstraptest/test_syntax.rb: add a test.
10046 Sat Jan 26 17:22:46 2008  Koichi Sasada  <ko1@atdot.net>
10048         * compile.c, compile.h: fix to calculate correct stack depth
10049            at each instruction.
10051 Sat Jan 26 09:41:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10053         * lib/rexml/doctype.rb, test/rss/test_maker_itunes.rb: replace
10054           multi-byte string.
10056         * test/json/{test_json.rb, test_json_unicode.rb}:
10057           add magic comment.
10059 Sat Jan 26 09:30:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10061         * include/ruby/encoding.h (rb_usascii_encindex): added prototype.
10063         * include/ruby/intern.h (rb_usascii_str_new, rb_usascii_str_new2):
10064           ditto.
10066 Sat Jan 26 09:17:13 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10068         * string.c (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when
10069           empty string (len == 0).
10071 Sat Jan 26 03:41:53 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10073         * parse.y (parser_initialize): set default script encoding as US-ASCII.
10075         * ruby.c (load_file): ditto.
10077         * ruby.c (process_options): set script encoding of -e from locale
10078           except when -K is specified.
10080         * ruby.c (load_file): set script encoding of stdin from locale except
10081           when -K is specified. [ruby-dev:33375]
10083 Sat Jan 26 02:51:06 2008  Koichi Sasada  <ko1@atdot.net>
10085         * compile.c, compile.h: fix stack pointer issues.
10086           calculate correct stack depth at compile time.
10088         * insns.def (emptstack): remove it and add a new insn "adjuststack".
10090         * bootstraptest/test_knownbug.rb: move/remove fixed test.
10092         * bootstraptest/test_syntax.rb: ditto.
10094 Sat Jan 26 00:17:18 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10096         * string.c (rb_str_usascii_new{,2}: defined.
10097           (rb_str_new): set US-ASCII and ENC_CODERANGE_7BIT when empty
10098           string.
10100         * encoding.c (rb_usascii_encoding, rb_usascii_encindex): defined.
10101           (rb_enc_inspect, enc_name, rb_locale_charmap, rb_enc_name_list_i):
10102           use rb_str_ascii_new.
10104         * array.c (recursive_join, inspect_ary): ditto.
10106         * object.c (nil_to_s, nil_inspect, true_to_s, false_to_s,
10107           rb_mod_to_s): ditto.
10109         * hash.c (inspect_hash, rb_hash_inspect, rb_f_getenv, env_fetch,
10110           env_clear, env_to_s, env_inspect): ditto.
10112         * numeric.c (flo_to_s, int_chr, rb_fix2str): ditto.
10114         * bignum.c (rb_big2str): ditto.
10116         * file.c (rb_file_ftype, rb_file_s_dirname, rb_file_s_extname,
10117           file_inspect_join, Init_file): ditto.
10119         * test/ruby/test_ruby_m17n.rb: add checks for encoding of string.
10121 Sat Jan 26 01:35:46 2008  Tanaka Akira  <akr@fsij.org>
10123         * marshal.c (r_byte): use getbyte instead of getc.
10124           (marshal_load): ditto.
10125           [ruby-dev:33264]
10127 Sat Jan 26 00:43:40 2008  Tanaka Akira  <akr@fsij.org>
10129         * io.c (rb_io_getline_fast): don't care ASCII incompatible encoding.
10130           (prepare_getline_args): generate a newline according to IO encoding
10131           when necessary.
10132           (rb_io_getline_1): call rb_io_getline_fast only for ASCII
10133           compatible encoding.
10135 Fri Jan 25 21:49:36 2008  Tanaka Akira  <akr@fsij.org>
10137         * string.c (rb_str_buf_cat_ascii): use rb_enc_cr_str_buf_cat.
10139 Fri Jan 25 19:38:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10141         * common.mk (version.$(OBJEXT)): depends on $(srcdir)/revision.h.
10143         * common.mk (revision.h): extracts revision number with ``svn info''.
10145         * common.mk (up): target to update from the repository.
10147         * Makefile.in, {win,bcc}32/Makefile.sub (IFCHANGE): tool to update a
10148           file if changed.
10150         * tool/ifchange: for unixen.
10152         * win32/ifchange.bat: some fix
10154 Fri Jan 25 17:12:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10156         * ruby.c (load_file): set default to ASCII-8BIT explicitly if -K
10157           option is not given.
10159 Fri Jan 25 16:31:47 2008  Tanaka Akira  <akr@fsij.org>
10161         * include/ruby/intern.h (rb_str_buf_cat_ascii): declared.
10163         * string.c (rb_str_buf_cat_ascii): defined.
10165         * re.c (rb_reg_s_union): use rb_str_buf_cat_ascii to support ASCII
10166           incompatible encoding.
10168 Fri Jan 25 16:11:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10170         * ruby.c (process_options, load_file, rb_load_file): propagates script
10171           encoding by -K to libraries.  [ruby-dev:33156]
10173 Fri Jan 25 15:56:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10175         * ruby.c (cmdline_arguments): split argc and argv from cmdline_options.
10177         * ruby.c (process_options): not set encoding of -e option from -E
10178           option if they are not compatible.
10180 Fri Jan 25 13:15:23 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10182         * ruby.c (proc_options, process_options, load_file): shouldn't effect
10183           --encoding to script encoding. [ruby-dev:33169]
10185 Fri Jan 25 10:31:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10187         * */*.bat: set svn:mime-type to text/batch.
10189 Thu Jan 24 23:23:06 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10191         * enum.c (enum_one, enum_take_while, enum_drop_while): fix documents.
10193 Thu Jan 24 21:46:24 2008  Tanaka Akira  <akr@fsij.org>
10195         * parse.y (reg_fragment_setenc_gen): associate ASCII-8BIT only if
10196           str has only ASCII characters.
10198 Thu Jan 24 20:46:17 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10200         * test/ruby/test_m17n.rb: follow to the following changes.
10202 Thu Jan 24 20:21:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10204         * parser.y (parser_str_new): automatically update string literal's
10205           encoding from US-ASCII to ASCII-8BIT when script encoding is US-ASCII
10206           and the string includes non-ascii bytes. [ruby-dev:33348]
10208         * parser.y (reg_fragment_check_gen, reg_compile_gen): automatically
10209           update regexp literal's encoding from US-ASCII to ASCII-8BIT when
10210           script encoding is US-ASCII, the regexp has no kcode option and the
10211           regexp includes non-ascii bytes. [ruby-dev:33353]
10213 Thu Jan 24 19:36:22 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10215         * lib/uri/generic.rb (URI::Generic::inspect): use Kernel#to_s instead
10216           object_id with printf.  [ruby-dev:33347]
10218 Thu Jan 24 19:29:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10220         * sprintf.c (remove_sign_bits): returns pointer to the first char to
10221           be used, instead of copying.
10223         * sprintf.c (rb_str_format): negative indicator dots should come
10224           before sign digits always.  [ruby-dev:33224]
10226 Thu Jan 24 18:19:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10228         * include/ruby/encoding.h (rb_enc_is_newline): parenthesized arguments.
10230 Thu Jan 24 18:14:14 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10232         * re.c (rb_reg_fixed_encoding_p): no need to treat ASCII-8BIT specially.
10234 Thu Jan 24 16:53:06 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10236         * re.c (rb_reg_initialize): 7bit clean regexp should be US-ASCII.
10237           [ruby-dev:33346]
10239 Thu Jan 24 16:31:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10241         * io.c (rb_io_getline_fast): the end point of left_char_head()
10242           must be the last character.  [ruby-cvs:22445]
10244 Thu Jan 24 16:24:25 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10246         * parse.y (reg_fragment_setenc_gen): recognize regexp with option n as
10247           as ASCII-8BIT instead of US-ASCII. [ruby-dev:33339]
10249 Thu Jan 24 15:44:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10251         * array.c (collect_bang_i): use rb_ary_store() to avoid potential
10252           memory corruption.  a patch from Yusuke Endoh <mame@tsg.ne.jp>
10253           in [ruby-dev:33328].
10255         * array.c (ITERATE): remove unnecessary macro.
10257         * array.c (sort_1): remove ary_sort_check().  in-place sort keep
10258           original elements even when it's modified.
10260         * array.c (sort_2): ditto.
10262 Thu Jan 24 15:09:40 2008  Tanaka Akira  <akr@fsij.org>
10264         * time.c (make_time_t): revert round trip test.  [ruby-dev:33058]
10266 Thu Jan 24 11:14:56 2008  Tanaka Akira  <akr@fsij.org>
10268         * string.c (rb_enc_cr_str_buf_cat): ASCII incompatible encoding is
10269           not compatible with any other encoding.
10271 Thu Jan 24 07:34:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10273         * parse.y (STR_NEW0): set encoding as US-ASCII.
10275 Thu Jan 24 03:47:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10277         * lib/rexml/text.rb, lib/rubygems/open-uri.rb, lib/open-uri.rb,
10278           test/logger/test_logger.rb, test/ruby/test_regexp.rb:
10279           fix tests. [ruby-dev:33336]
10281 Thu Jan 24 03:23:44 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10283         * string.c (rb_str_each_line): use memchr(3) for faster newline
10284           search.
10286         * io.c (appendline): remove unused arguments
10288         * io.c (rb_io_getline_fast): make much simpler (and faster).
10290 Thu Jan 24 02:13:07 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10292         * insns.def (expandarray): fix stack inc.  [ruby-dev:32892]
10294         * bootstraptest/test_knownbug.rb, test_massign.rb: move a fixed test.
10296 Thu Jan 24 01:00:34 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10298         * encoding.{c, h} (rb_usascii_encoding): added.
10300         * parse.y (parser_str_new, rb_intern3): ascii only string literal is
10301           US-ASCII.
10303         * ruby.c (proc_optionc): -Kn means ASCII-8BIT.
10305 Wed Jan 23 23:54:40 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10307         * sprintf.c: fix comment.  [ruby-dev:33275]
10309         * math.c: fix comment.  [ruby-dev:33276]
10311 Wed Jan 23 22:47:34 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10313         * test/ruby/test_struct.rb: add tests to achieve over 90% test
10314           coverage of struct.c.
10316         * test/ruby/test_sprintf.rb: ditto for sprintf.c.
10318         * test/ruby/test_math.rb: ditto for math.c.
10320 Wed Jan 23 22:14:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10322         * enc/trans/japanese.c (rb_from_Windows_31J, rb_to_Windows_31J):
10323           provisional workaround for Windows-31J.  [ruby-dev:33320]
10325 Wed Jan 23 15:25:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10327         * time.c (time_strftime): copy encoding from format.  [ruby-dev:33303]
10329 Wed Jan 23 15:04:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10331         * string.c (str_make_independent): should set length.
10333         * string.c (rb_str_associate): hide associated array from ObjectSpace.
10335         * string.c (rb_str_associated): return associated array with freezing
10336           instead of false.  [ruby-dev:33282]
10338         * string.c (rb_str_freeze): freeze associated array together.
10340 Wed Jan 23 13:39:48 2008  Tanaka Akira  <akr@fsij.org>
10342         * re.c (rb_reg_prepare_re): fix SEGV by
10343           /a/ =~ "aa".force_encoding("utf-16be").
10345 Wed Jan 23 11:53:26 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10347         * string.c (str_mod_check, str_nth, str_offset): constified.
10349         * string.c (rb_str_dump): dump in ASCII-8BIT always.
10351 Wed Jan 23 10:18:10 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10353         * eval_method.c (rb_export_method): set ruby_vm_redefined_flag for
10354           visibility change as well.  reported by K.Kosako in
10355           http://d.hatena.ne.jp/kkos/20080122#1201012720.
10357 Tue Jan 22 22:26:23 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10359         * test/ruby/test_bignum.rb: change some tests because rational
10360           redefines Bignum#quo and Bignum#**.
10362 Tue Jan 22 20:58:15 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10364         * lib/mkmf.rb (create_makefile): need to output sodir rule.
10366 Tue Jan 22 19:37:16 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10368         * lib/mkmf.rb (create_makefile): lib files shouldn't depend on install
10369           dir because if the dir is newer than lib files, lib files will be
10370           always copied.
10372 Tue Jan 22 17:52:52 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10374         * enc/trans/utf_16_32.c: Streamline parentheses, add more
10375           'static' qualifiers.
10377 Tue Jan 22 12:57:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10379         * configure.in (MINIRUBY): remove -I$(EXTOUT)/$(arch) from
10380           MINIRUBY since miniruby might not be able to load DLL.
10382         * test/ruby/test_m17n.rb: move tests from bootstrap test.
10384         * encoding.c (enc_find): should check name if ASCII compatible.
10386         * string.c (rb_str_end_with): should check character boundary.
10388         * encoding.c (rb_enc_compatible): encoding must be ASCII
10389           compatible before checking ENC_CODERANGE_7BIT.
10391         * encoding.c (rb_enc_compatible): wrong compatibility condition.
10392           [ruby-dev:33273]
10394 Tue Jan 22 09:26:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10396         * string.c (rb_str_each_char): iterates over a shadow.
10397           [ruby-dev:33243]
10399 Tue Jan 22 08:59:52 2008  Eric Hodel  <drbrain@segment7.net>
10401         * lib/rdoc/ri/formatter.rb:  Indent labeled lists like note lists.
10403         * test/rdoc/test_rdoc_ri_overstrike_formatter.rb:  Added.
10405         * test/rdoc/test_rdoc_ri_formatter.rb:  Added tests.
10407 Tue Jan 22 04:40:28 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10409         * parse.y (rb_intern3): do not call rb_enc_mbclen() if *m is
10410           ASCII.  [ruby-talk:287225]
10412         * string.c (rb_str_each_line): use rb_enc_is_newline() to gain
10413           performance if the record separator ($/) is not modified.
10415 Tue Jan 22 01:15:51 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10417         * ChangeLog: format-time-string under C locale. [ruby-dev:33261]
10419 Tue Jan 22 00:45:12 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10421         * test/ruby/test_bignum.rb: add tests for bignum.c.
10423 Tue Jan 22 00:30:08 2008  Yusuke Endoh  <mame@tsg.ne.jp>
10425         * bignum.c (big_shift): fix a bug that caused infinite loop when
10426           left shifting.
10428 Mon Jan 21 20:09:38 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10430         * lib/date.rb (marshal_load): initialize the cache.
10432 Mon Jan 21 19:42:42 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10434         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
10435           added UTF-32BE and UTF-32LE conversions.
10437 Mon Jan 21 14:36:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10439         * transcode.c (str_transcode): initialize transcoder in
10440           rb_transcoding.  [ruby-dev:33234]
10442         * transcode_data.h (rb_transcoding): transcoder constified.
10444 Mon Jan 21 12:50:02 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10446         * eval.c, gc.c (setjmp): sigsetjmp is a macro on cygwin.
10448 Mon Jan 21 12:35:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10450         * transcode.c (transcode_loop, str_transcoding_resize): use unsigned
10451           char.  [ruby-dev:33232]
10453         * transcode_data.h (rb_transcoding, rb_transcoder): removed callback
10454           parameters.
10456         * enc/trans/japanese.c: ditto.
10458         * enc/trans/utf_16_32.c: parenthesized bit-or operands.
10460 Mon Jan 21 11:59:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10462         * string.c (rb_str_each_char): move forward.  [ruby-dev:33231]
10464 Mon Jan 21 06:40:03 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10466         * transcode.c (transcode_dispatch): constified return value.
10468         * transcode_data.h (rb_transcoding): include pointer to rb_transcoder
10469           and auxiliary data.
10471         * transcode_data.h (rb_transcoder): all callback functions should have
10472           their own parameters.
10474         * enc/trans/{japanese,single_byte}.c: constified.
10476 Mon Jan 21 03:45:49 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10478         * string.c (rb_str_each_char): advance offset before get next char
10479           length.  [ruby-dev:33211]
10481 Sun Jan 20 20:00:20 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10483         * transcode.c, enc/trans/utf_16_32.c, test/ruby/test_transcode.rb:
10484           added UTF-16LE conversions.
10486         * fixed changelog for last commit
10488 Sun Jan 20 17:54:00 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10490         * added changelog for last commit
10492 Sun Jan 20 15:08:08 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10494         * enc/trans/utf_16_32.c: new file, currently implementing
10495           UTF-16BE conversions only.
10497         * test/ruby/test_transcode.rb: Added tests for UTF-16BE;
10498           made check_both_ways() use force_encoding differently.
10500         * transcode_data.h, transcode.c: Support for more conversion
10501           functions.
10503 Sun Jan 20 13:06:01 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10505         * string.c (rb_str_each_char): performance improvement, and stop if
10506           shortened in the block.  [ruby-dev:33189]
10508 Sun Jan 20 09:12:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10510         * common.mk: use -Ks when read insns.def. [ruby-dev#33185]
10512         * parse.y: fix -e and stdin strings aren't set encoding.
10514 Sun Jan 20 05:12:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10516         * enc/make_encdb.rb: fix duplication check.
10518 Sun Jan 20 05:03:46 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10520         * ascii.c: remove definition of replica KOI8-U.
10522 Sun Jan 20 00:33:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10524         * enc/koi8_u.c: added.
10526         * regenc.c, enc/utf_8.c, enc/unicode.c, enc/gb18030.c: add ARG_UNUSED.
10528 Sat Jan 19 22:41:39 2008  Tanaka Akira  <akr@fsij.org>
10530         * string.c (coderange_scan): don't call mbclen functions for ASCII
10531           characters with ASCII compatible encoding.
10533 Sat Jan 19 21:00:34 2008  Tanaka Akira  <akr@fsij.org>
10535         * lib/rdoc/template.rb (RDoc): defined to avoid uninitialized constant
10536           error by `./ruby test/rubygems/test_gem_server.rb'.
10538 Sat Jan 19 20:41:29 2008  Tanaka Akira  <akr@fsij.org>
10540         * encoding.c (enc_new): don't free rb_encoding to avoid SEGV by
10541           `miniruby -e exit' on x86_64 GNU/Linux.
10543 Sat Jan 19 18:40:19 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10545         * lib/date.rb (once): use an instance variable which points a hash
10546           as cache. [experimental]
10548 Sat Jan 19 17:21:29 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10550         * lib/date.rb, lib/date/format.rb: parse's hints as an
10551           experimental function has been removed.
10553 Sat Jan 19 11:21:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10555         * configure.in (sigsetjmp): check if available.
10557         * eval.c, gc.c (setjmp): do not use _setjmp if sigsetjmp is available.
10559 Sat Jan 19 11:10:11 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10561         * configure.in: Remove wrong assumptions about Cygwin.  a patch from
10562           Corinna Vinschen in [ruby-Bugs-17018].
10564 Sat Jan 19 09:23:14 2008  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
10566         * ext/win32ole/win32ole.c (ole_set_safe_array): should not use
10567           recursive calling.
10569         * test/win32ole/test_win32ole_variant.rb: ditto.
10571 Sat Jan 19 08:58:47 2008  Eric Hodel  <drbrain@segment7.net>
10573         * lib/rdoc/markup: Remove ListBase and Line constants.
10575         * lib/rdoc/ri: Allow output IO to be specified.
10577         * test/rdoc/parser/test_parse_c.rb: Move up one level, fixed.
10579         * test/rdoc/parser/test_rdoc_markup_attribute_manager.rb: Renamed to
10580           match new class name, updated to match new classes.
10582         * test/rdoc/test_rdoc_ri_formatter.rb: Start of RI formatting tests.
10584         * test/rdoc/test_rdoc_ri_attribute_manager.rb: Start of
10585           RDoc::RI::AttributeManager tests.
10587         * test/rdoc/test_simple_markup.rb: Moved to match new class name.
10589 Sat Jan 19 08:35:36 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10591         * parse.y (parser_prepare): get encoding from the first line.
10592           [ruby-dev:33168]
10594         * ruby.c (load_file): set encoding to input with set_encoding.
10596 Sat Jan 19 03:46:42 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10598         * thread.c (thread_create_core): prohibit thread creation in the
10599           frozen thread group.  a patch in [ruby-dev:33176] from sheepman
10600           <sheepman AT sheepman.sakura.ne.jp>.
10602         * thread.c (thread_create_core): should inherit ThreadGroup from
10603           the current thread.
10605 Sat Jan 19 00:37:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10607         * sprintf.c (rb_str_format): set result encoding for wider width.
10609 Sat Jan 19 00:13:19 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10611         * thread_win32.c (w32_wait_events): shouldn't invoke interrupt handle
10612           by timer_thread.
10614 Fri Jan 18 23:49:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10616         * thread.c (thread_create_core): set thread group before creating
10617           thread.
10619 Fri Jan 18 20:19:51 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10621         * parse.y (ripper_initialize): too early to set parser->enc.
10623 Fri Jan 18 20:03:05 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10625         * win32/setup.mak (BASERUBY): nmake cannot execute ruby correctly
10626           if the path of ruby.exe is quoted.
10628         * win32/setup.mak ($(ARCH)): if a macro is appended by $(APPEND),
10629           a space will be inserted on the top of the line.
10631 Fri Jan 18 17:56:09 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10633         * eval_intern.h, insnhelper.h, thread_pthread.h, vm_core.h, vm_opts.h:
10634           prefixed include guards with RUBY.
10636         * id.h: added include guard.
10638         * regenc.h, regint.h, regparse.h: prefixed include guards with
10639           ONIGURUMA.
10641 Fri Jan 18 15:57:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10643         * thread.c (thread_cleanup_func): ignore errors from destroying mutex
10644           of dead thread.  [ruby-core:15069]
10646         * thread_pthread.c, thread_win32.c (native_thread_destroy): ditto.
10648 Fri Jan 18 15:56:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10650         * encoding.c (rb_enc_name_list_i, rb_enc_aliases_enc_i): freeze
10651           element strings to be returned.
10653 Fri Jan 18 14:36:34 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
10655         * test/ruby/test_m17n.rb (test_str_dump): added test for
10656           String#dump. [ruby-dev:33142]
10658 Fri Jan 18 12:25:13 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10660         * encoding.c (load_encoding): check if successfully loaded.
10662         * encoding.c (rb_enc_find_index): use original encoding name to
10663           replicate loaded encoding instead alias.
10665 Fri Jan 18 09:43:02 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10667         * re.c (rb_char_to_option_kcode): Regexp switch `s' should mean
10668           Windows-31J, as wells as `-Ks'.
10670 Fri Jan 18 09:22:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10672         * parse.y (parser_initialize): explicitly call rb_ascii8bit_encoding().
10674         * parse.y (parser_prepare): lex_input may not be have encoding (e.g. IO).
10676         * parse.y (rb_parser_compile_string): set encoding from input string.
10678         * encoding.c (rb_enc_find_index): use ASCII-8BIT if loading known
10679           encoding failed.
10681         * parse.y (ripper_initialize): move parser->enc initialization.
10683         * encoding.c (rb_enc_aliases_enc_i): exclude non alias names from
10684           Encoding.aliases.
10686         * encoding.c (rb_enc_find_index): use original encoding name to
10687           load DLL.
10689 Fri Jan 18 07:06:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10691         * io.c (Init_IO): stdin/stdout may not be duplex.
10693 Fri Jan 18 04:27:57 2008  Eric Hodel  <drbrain@segment7.net>
10695         * sample/rdoc/markup/rdoc2latex.rb:  Fix for new namespacing.
10697         * lib/rdoc/markup/to_latex.rb:  Fix namespacing.
10699 Fri Jan 18 02:02:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10701         * bootstraptest/runner.rb (assert_valid_syntax): added.
10703         * bootstraptest/test_knownbug.rb: added test for [ruby-list:44479]
10705 Fri Jan 18 01:48:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10707         * vm_insnhelper.c (vm_call_method): check argument number to
10708           attr_reader.  [ruby-core:15120]
10710 Fri Jan 18 00:49:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10712         * io.c (rb_io_check_readable): flush tied write IO too.
10714         * io.c (Init_IO): tie stdin with stdout.  [ruby-core:15107]
10716 Fri Jan 18 00:23:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10718         * encoding.c (enc_free): removed since rb_encoding may be used while
10719           cleanup.
10721 Fri Jan 18 00:17:19 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10723         * enc/euc_cn.c: split from enc/euc_kr.c.
10725 Fri Jan 18 00:03:54 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10727         * ext/stringio/stringio.c (strio_init): use default external encoding
10728           if nothing is given.  a patch from sheepman <sheepman AT
10729           sheepman.sakura.ne.jp> in [ruby-dev:33159].
10731 Thu Jan 17 23:56:20 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10733         * common.mk (encdb.h): give output file name to make_encdb.rb.
10735         * encoding.c (enc_table): simplified.
10737         * encoding.c (enc_register_at): lazy loading.  [ruby-dev:33013]
10739         * regenc.h (ENC_DUMMY): added.
10741         * enc/make_encdb.rb: now emits macros only.
10743         * enc/iso_2022_jp.h: split from encoding.c.
10745 Thu Jan 17 21:48:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10747         * re.c (rb_char_to_option_kcode): fixed typo.
10749 Thu Jan 17 21:01:25 2008  Tadayoshi Funaba  <tadf@dotrb.org>
10751         * lib/date.rb (Date::Infinity#<=>): didn't work.  A patch from
10752           Dirkjan Bussink <d.bussink AT gmail.com> [ruby-core:15098].
10753           This is a bug obviously.  However it didn't affect the library's
10754           functions.
10756         * lib/date.rb, lib/date/format.rb: some trivial changes.
10758 Thu Jan 17 13:07:18 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10760         * string.c (rb_str_dump): preserve the encoding of source string
10761           if it is ASCII compatible.  otherwise, add '.force_encoding()'
10762           for ugly work around.  maybe we should implement some other way
10763           to keep non ASCII encoding in dumped string.  [ruby-dev:33142]
10765 Thu Jan 17 10:30:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10767         * io.c (io_fwrite): always flush IO on tty, even without newlines.
10768           [ruby-core:15107]
10770 Wed Jan 16 22:45:27 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10772         * encoding.c (enc_register_at): make own copy.  [ruby-dev:33136]
10774 Wed Jan 16 18:03:10 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10776         * io.c (pipe_open, rb_io_s_popen): clear temporary object to release
10777           and prevent from GC.
10779 Wed Jan 16 17:55:07 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10781         * numeric.c (fix_quo): typo. a patch from Shin-ichiro HARA
10782           <sinara AT blade.nagaokaut.ac.jp> in [ruby-dev:33130]
10784 Wed Jan 16 17:36:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10786         * test/test_delegate.rb: add new test file for delegate.rb.
10788 Wed Jan 16 16:14:00 2008  Akinori MUSHA  <knu@iDaemons.org>
10790         * ruby.1: Fix grammar.
10792 Wed Jan 16 15:26:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10794         * file.c (sys_fail2): get rid of unlimited alloca.
10796         * io.c (mode_enc, pipe_open, rb_io_s_popen): ditto.
10798         * load.c (rb_feature_p): ditto.
10800         * object.c (rb_cstr_to_dbl): ditto.
10802         * io.c (mode_enc): fixed uninitialized variable.
10804 Wed Jan 16 12:51:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10806         * include/ruby/intern.h (rb_str_tmp_new, rb_str_shared_replace):
10807           prototype moved.
10809 Tue Jan 15 23:52:51 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10811         * enc/*: add ARG_UNUSED.
10813         * enc/koi8_u.c: added.
10815 Tue Jan 15 23:00:08 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10817         * enc/utf_{16,32}{be,le}.c: remove some ARG_UNUSED.  replace struct
10818           OnigEncodingST by OnigEncoding.
10820 Tue Jan 15 22:30:43 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10822         * encoding.c (ENC_REGISTER): use &OnigEncoding*.
10823           (ENCINDEX_UTF_8): renamed from ENCINDEX_UTF8.
10824           (rb_enc_init): use ENC_REGISTER.
10826         * include/ruby/oniguruma.h (OnigEncodingUTF8, ONIG_ENCODING_UTF8):
10827           removed.
10829         * enc/*.c: remove use of &encoding_*; use enc argument instead.
10831 Tue Jan 15 18:44:46 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10833         * enc/utf_8.c: remove use of ONIG_ENCODING_UTF8 altogether; use
10834           enc argument instead.
10836 Tue Jan 15 18:05:26 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10838         * enc/utf_8.c (ONIG_ENCODING_UTF8): reverted.
10840 Tue Jan 15 18:01:55 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10842         * win32/Makefile.sub (MKFILES): add dependencies.
10844 Tue Jan 15 18:00:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10846         * enc/utf_8.c (OnigEncodingDefine): encoding name should be kept
10847           unchanged.
10849 Tue Jan 15 17:53:05 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10851         * enc/utf_8.c: renamed as IANA name.
10853         * enc/Makefile.in: ditto.
10855 Tue Jan 15 16:59:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10857         * ruby.c (proc_options): encoding libraries cannot be loaded until
10858           load path is set.
10860 Tue Jan 15 15:09:28 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10862         * win32/setup.mak: strip out empty lines from CPP output.
10864 Tue Jan 15 14:57:38 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10866         * {win,bcc}32/setup.mak (-basic-vars-): expand BASERUBY to full path
10867           to get rid of ./ruby.exe.
10869         * win32/enc-setup.mak: workaround for Borland make.
10871 Tue Jan 15 14:44:53 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10873         * encoding.c (rb_locale_charmap): use ASCII-8BIT in miniruby.
10875 Tue Jan 15 13:54:41 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10877         * {bcc32,win32}/Makefile.sub (RUNRUBY): need to set archdir when
10878           invoking ruby.
10880 Tue Jan 15 13:43:18 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10882         * common.mk (us_ascii.o): add dependencies. [ruby-dev:33111]
10884 Tue Jan 15 03:41:42 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10886         * eval.c (eval): check if backtrace is empty.  [ruby-core:15040]
10888 Tue Jan 15 01:28:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10890         * common.mk: simplified dummy objects dependencies.
10892 Tue Jan 15 01:19:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
10894         * common.mk (OBJS): moved encoding.o from COMMONOBJS.
10896         * common.mk (dmyencoding.o): added.  [ruby-dev:33099]
10898         * configure.in, {win,bcc}32/Makefile.sub (MINIOBJS): added
10899           dmyencoding.o.
10901         * dmyencoding.c (rb_locale_charmap): returns nil for miniruby.
10903 Tue Jan 15 00:05:50 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10905         * io.c (appendline): specifying limit should not generate broken
10906           byte sequence.  strings should be rounded.  [ruby-dev:33088]
10908 Mon Jan 14 23:33:02 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10910         * ext/nkf/lib/kconv.rb (Kconv.tolocale): argument is str.
10912 Mon Jan 14 23:31:05 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10914         * configure.in (setup): add -I$(EXTOUT)/$(arch) to MINIRUBY.
10916         * bootstraptest/runner.rb (main): expand -I directory path.
10918 Mon Jan 14 23:28:10 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
10920         * win32/enc-setup.mak (BUILTIN_ENCOBJS): depends on enc/Makefile.in.
10922 Mon Jan 14 22:48:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10924         * re.c (rb_char_to_option_kcode): use rb_enc_find_index() instead
10925           of using fixed index value.
10927         * enc/Makefile.in (encsrcdir): make US-ASCII built-in.
10929 Mon Jan 14 22:25:02 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
10931         * golf_prelude.rb: Shorter method name completion.  Same method
10932           used for const missing. do_while and do_until added.  Enumerator
10933           gains all of Array's abilities. Ex:
10934             '123'.m{|i|i*2} #=> "112233"
10935             '123'.pe #=> '123'.perm*' ' #=> "123 132 213 231 312 321"
10936           base on a patch from Darren Smith <darrenks AT ml1.net>.
10938 Mon Jan 14 21:10:02 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10940         * enc/us_ascii.c: wrong alias name: ANSI_X3.4-1986.
10942         * rubytest.rb: add -I#{srcdir} to load encoding DLL.
10944 Mon Jan 14 18:53:58 2008  Koichi Sasada  <ko1@atdot.net>
10946         * thread.c: clear thread structure.
10947           (TODO: survey that child process should clear mutex or not).
10949         * bootstraptest/test_knownbug.rb, test_thread.rb: move a fixed test.
10951 Mon Jan 14 18:43:38 2008  Koichi Sasada  <ko1@atdot.net>
10953         * bootstraptest/runner.rb: add "flunk" method.
10955         * bootstraptest/test_knownbug.rb: fix to use flunk.
10957 Mon Jan 14 18:10:59 2008  Koichi Sasada  <ko1@atdot.net>
10959         * vm.h: remove dangerous assembler sentence.
10961 Mon Jan 14 18:06:37 2008  NARUSE, Yui  <naruse@ruby-lang.org>
10963         * encoding.c (rb_locale_encoding): return US-ASCII when charmap is
10964           nil.
10966 Mon Jan 14 16:12:58 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10968         * lib/shellwords.rb: scape should be an alias to shellescape.  a
10969           patch from Masahiro Kawato <m-kawato AT mwb.biglobe.ne.jp> in
10970           [ruby-dev:33060].
10972 Mon Jan 14 16:09:16 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
10974         * ruby.1: a patch to describe --encoding.  a patch from Yugui
10975           <yugui AT yugui.sakura.ne.jp> in [ruby-dev:33079].
10977         * ruby.c: ditto.
10979 Mon Jan 14 13:49:26 2008  Tanaka Akira  <akr@fsij.org>
10981         * re.c (rb_reg_prepare_re): initialize error message buffer.
10982           (rb_reg_search): ditto.
10983           (rb_reg_check_preprocess): ditto.
10984           (rb_reg_new_str): ditto.
10985           (rb_enc_reg_new): ditto.
10986           (rb_reg_compile): ditto.
10987           (rb_reg_initialize_m): ditto.
10988           (rb_reg_s_union_m): ditto.
10990 Mon Jan 14 12:33:07 2008  Eric Hodel  <drbrain@segment7.net>
10992         * lib/rdoc/markup*:  Renamespace from SM::SimpleMarkup to
10993           RDoc::Markup.
10995 Mon Jan 14 10:45:45 2008  Martin Duerst  <duerst@it.aoyama.ac.jp>
10997         * enc/ascii.c: Exchanged order of arguments for one ENC_ALIAS
10999 Mon Jan 14 09:19:07 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11001         * lib/time.rb: do not reference Time directly from the inside of
11002           definitions. [ruby-dev:33059]
11004 Mon Jan 14 05:44:44 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11006         * enc/*.c: add replicas and aliases.
11008         * enc/make_encdb.h: add duplicate and undefined check.
11010 Mon Jan 14 02:03:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11012         * include/ruby/oniguruma.h: remove ONIG_ENCODING_* and OnigEncoding*
11013           which are not builtin.
11015         * regenc.{c,h} (onigenc_mb2_code_to_mbclen, onigenc_mb4_code_to_mbclen):
11016           fix prototype.
11018         * enc/big5.c, enc/euc_kr.c, enc/euc_tw.c, enc/gb18030.c,
11019           enc/koi8_r.c, enc/windows_1251.c: imported from Oniguruma.
11021 Sun Jan 13 22:47:28 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11023         * enc/make_encdb.h: sort encoding names by original name.
11025         * encoding.c, enc/*.c: define replicas and aliases.
11027 Sun Jan 13 20:24:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11029         * encoding.c: add documents.
11031 Sun Jan 13 18:41:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11033         * encoding.c (Init_Encoding): moved initialization from encdb.h.
11035         * enc/make_encdb.rb (enc_name_list): constified.
11037         * enc/make_encdb.rb (enc_init_db): moved some functions to encoding.c.
11039 Sun Jan 13 13:53:00 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11041         * ruby.c (load_file): local variable was not initialized when -x flag
11042           is given.
11044         * ruby.c (load_file): script files should not be affected by locale.
11045           [ruby-dev:33054]
11047 Sun Jan 13 12:01:32 2008  Eric Hodel  <drbrain@segment7.net>
11049         * lib/rdoc/generators*: Reorganize RDoc generators.
11051 Sun Jan 13 11:41:11 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11053         * encoding.c (ENCINDEX_EUC_JP, ENCINDEX_SJIS): removed.
11054           (rb_enc_init): EUC-JP and Shift_JIS are not builtin now.
11056         * enc/Makefile.in: ditto.
11058         * common.mk: ditto.
11060         * ruby.c (proc_options): ditto.
11062         * enc/shift_jis.c, enc/euc_jp.c: fixes for remove from builtin.
11064 Sun Jan 13 10:21:40 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11066         * encoding.c (enc_table): packed all enc_table stuff.
11068 Sun Jan 13 09:58:17 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11070         * encoding.c (rb_enc_init): revert removing SJIS.
11072         * enc/sjis.c: move to enc/shift_jis.c, to make encoding name equal to
11073           filename for convenience of loading lib.
11075         * enc/shift_jis.c: moved from enc/sjis.c.
11077         * common.mk: follows enc/shift_jis.c.
11079         * enc/Makefile.in: ditto.
11081 Sun Jan 13 09:22:33 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11083         * common.mk (incs): includes encdb.h.
11085 Sun Jan 13 09:17:29 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11087         * {bcc,win}32/Makefile.sub (MV): use move instead of ren.  [ruby-Bugs-17019]
11089 Sun Jan 13 01:52:31 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11091         * enc/make_encdb.rb: should work on Ruby 1.8.  [ruby-dev:33069]
11093         * common.mk (encdb.h): pass enc dir from outside to make_encdb.rb.
11095 Sun Jan 13 00:01:07 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11097         * enc/make_encdb.rb: added. search enc/*.c and make encoding database.
11099         * regenc.h (ENC_REPLICATE, ENC_ALIAS): added for defining replica
11100           encoding and encoding alias.
11102         * encoding.c (rb_enc_init): move alias definitions to enc/*.c.
11103           (rb_enc_find_index): search original of replica and alias when no
11104           encoding library.
11105           (rb_enc_name_list, rb_enc_aliases_enc_i, rb_enc_aliases_str_i,
11106            rb_enc_aliases, Encoding.name_list, Encoding.aliases): added.
11107           (Init_Encoding): init encdb.
11109         * enc/ascii.c, enc/us_ascii.c, enc/euc_jp.c, enc/sjis.c:
11110           add replica encoding and encoding alias definition.
11112         * common.mk (dist-clean-local): add rule for remove encdb.h.
11114 Sat Jan 12 18:27:41 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11116         * eval.c (rb_define_alloc_func, rb_undef_alloc_func): should
11117           define/undef on a singleton class.  [ruby-core:09959]
11119 Sat Jan 12 12:44:36 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11121         * ext/nkf/nkf.c: rdoc update.
11123 Sat Jan 12 12:01:49 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11125         * lib/date.rb, lib/date/format.rb: tuning for performance.
11127 Sat Jan 12 11:29:45 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11129         * bootstraptest/test_proc.rb: fixed wrong expected result.  pointed
11130           out by Kornelius "murphy" Kalnbach <murphy AT rubychan.de> in
11131           [ruby-core:15022].
11133 Sat Jan 12 04:38:38 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11135         * ruby.c (process_options): -e'script' is locale encoding by default.
11136           (load_file): ruby script from stdin is locale encoding by default.
11138 Sat Jan 12 04:31:59 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11140         * ext/nkf/nkf-utf8/nkf.c: fix bug: -m was -m0.
11142 Fri Jan 11 23:22:31 2008  Tanaka Akira  <akr@fsij.org>
11144         * string.c (string.c): call rb_str_buf_append to update encoding of
11145           str1, even if str2 is empty.
11147 Fri Jan 11 20:20:16 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11149         * proc.c (proc_mark): needs to mark the receiver too.  a patch from
11150           Chris Heath <chris AT heathens.co.nz> in [ruby-core:14983].
11151           [ruby-core:14885]
11153 Fri Jan 11 18:28:49 2008  Eric Hodel  <drbrain@segment7.net>
11155         * lib/rdoc/usage.rb: Removed.
11157         * lib/getoptlong.rb: Update example to not use lib/rdoc/usage.rb.
11159 Fri Jan 11 18:17:10 2008  Eric Hodel  <drbrain@segment7.net>
11161         * lib/rdoc/ri/driver.rb (read_yaml): Follow namespace change
11162           [ruby-core:14964].
11164 Fri Jan 11 16:55:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11166         * string.c (rb_str_append): performance improvement.
11168 Fri Jan 11 12:35:56 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11170         * configure.in: moved broken syscall checks from process.c etc.
11172         * defines.h (WORDS_BIGENDIAN): honor __BIG_ENDIAN__ than the result of
11173           configure.
11175         * lib/rdoc/options.rb (check_diagram): more precise check, darwin
11176           is not Windows but mingw is on it.
11178 Fri Jan 11 09:59:05 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11180         * ext/nkf/nkf-utf8/nkf.c: update to r1.163.
11182         * ext/nkf/nkf.c: ASCII's canonical name is US-ASCII.
11184         * ext/nkf/lib/kconv.rb (Kconv.isjis): force_encoding('BINARY').
11186 Fri Jan 11 09:23:31 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11188         * encoding.c (set_base_encoding): must use rb_enc_dummy_p.
11190 Fri Jan 11 06:13:14 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11192         * encoding.c (rb_to_encoding_index, rb_to_encoding): disallow nil.
11193           [ruby-dev:33003]
11195 Fri Jan 11 01:08:01 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11197         * thread.c (rb_mutex_unlock): proper error message for unlocking
11198           mutex that is not locked.  a patch from Yusuke ENDOH
11199           <mame at tsg.ne.jp> in [ruby-dev:33010].
11201 Thu Jan 10 18:00:41 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11203         * prelude.rb (Mutex::synchronize): capture exception from unlock.
11204           [ruby-dev:32935]
11206 Thu Jan 10 10:15:03 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11208         * io.c (io_encoding_set): IO.pipe("euc-jp", nil) should work as
11209           IO.pipe("euc-jp", nil).  [ruby-dev:33000]
11211         * io.c (io_encoding_set): handle nil for v1.
11213 Thu Jan 10 02:41:22 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11215         * io.c (rb_io_binmode): should not alter encoding.  [ruby-dev:32918]
11217         * io.c (io_read_encoding): need not to return ASCII-8BIT for
11218           binary IO.
11220 Wed Jan  9 22:04:17 2008  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
11222         * lib/mathn.rb (Prime#each): returns an enumerator if no block
11223           given. [ruby-dev:32815]
11225 Wed Jan  9 22:03:26 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11227         * encoding.c (rb_enc_replicate): replica of dummy is a dummy.
11229 Wed Jan  9 20:55:38 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11231         * lib/e2mmap.rb (Exception2MessageMapper::Raise): define fail.
11232           [ruby-dev:32854]
11234 Wed Jan  9 20:35:42 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11236         * lib/webrick/httprequest.rb: support X-Forwarded-* header fields.
11237           WEBrick::HTTPRequest#{host,port,request_uri} is derived having
11238           regards to X-Forwarded-Proto and X-Forwarded-Host.
11240         * lib/webrick/httprequest.rb
11241           (WEBrick::HTTPRequest#server_name?): new method.
11242           (WEBrick::HTTPRequest#remote_ip?): new method.
11243           (WEBrick::HTTPRequest#ssl?): new method.
11245 Wed Jan  9 18:24:39 2008  WATANABE Hirofumi  <eban@ruby-lang.org>
11247         * golf_prelude.rb (Array#to_s): alias to join.
11249         * golf_prelude.rb (FalseClass#to_s): return "".
11251 Wed Jan  9 16:59:54 2008  Tanaka Akira  <akr@fsij.org>
11253         * string.c (rb_enc_cr_str_buf_cat): fix self appending.
11255 Wed Jan  9 15:54:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11257         * ruby.c (process_options): give priority command line encoding option
11258           to RUBYOPT, and enable -E option in RUBYOPT.
11260         * ruby.c (load_file): deal with encoding option in shebang line if
11261           nothing in command line and RUBYOPT.
11263 Wed Jan  9 14:55:36 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11265         * parse.y (yycompile0): remove setting parser->enc because it is set
11266           in parser_prepare() by previous change of parser_prepare().
11268 Wed Jan  9 14:52:18 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11270         * string.c (rb_enc_cr_str_buf_cat, rb_str_buf_append): deal with self
11271           appending.
11273 Wed Jan  9 14:44:57 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11275         * parse.y (parser_prepare): set parser->enc from lex_input for ripper.
11277 Wed Jan  9 13:45:52 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11279         * lib/webrick/server.rb (WEBrick::HTTPServer#start):
11280           :DoNotReverseLookup option had not been performed.
11282 Wed Jan  9 13:03:34 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11284         * string.c (rb_enc_cr_str_buf_cat): do not recalculate coderange
11285           value if it's given from outside.
11287 Wed Jan  9 08:42:01 2008  James Edward Gray II  <jeg2@ruby-lang.org>
11289         * enum.c:  Updating the documentation of Enumerable#zip to reflect
11290           the recent changes Matz made to the method.
11292 Wed Jan  9 01:35:10 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11294         * enc/Makefile.in (BUILTIN_ENCS): UTF-{16,32}{BE,LE} are not builtin.
11296 Tue Jan  8 23:55:15 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11298         * encoding.c (rb_enc_init): UTF-{16,32}{BE,LE} are not builtin.
11300 Tue Jan  8 22:33:03 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11302         * encoding.c, Makefile.in, include/ruby/oniguruma.h,
11303           enc/Makefile.in: fix rules for UTF-{16,32}{BE,LE}.
11305 Tue Jan  8 20:02:08 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11307         * win{32,ce}/Makefile.sub: merged.
11309 Tue Jan  8 19:48:15 2008  Eric Hodel  <drbrain@segment7.net>
11311         * lib/rdoc/ri/driver.rb: Speed up Marshal.load. Fix bug with nested
11312           classes' methods.
11314 Tue Jan  8 19:17:29 2008  Eric Hodel  <drbrain@segment7.net>
11316         * lib/rdoc/*: Clean up namespacing of RI's classes.
11318 Tue Jan  8 18:05:35 2008  Eric Hodel  <drbrain@segment7.net>
11320         * bin/ri, lib/rdoc/ri/*: Replace with Ryan Davis' cached ri.
11322 Tue Jan  8 17:32:07 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11324         * enum.c (enum_zip): honor length of the receiver, not the
11325           shortest length.  [ruby-core:14738]
11327         * enum.c (enum_zip): returns array not enumerator for no block
11328           form.  [ruby-core:14738]
11330         * enumerator.c (next_ii): do not ignore multiple values yielded.
11332         * array.c (rb_ary_zip): faster version without creating generators.
11334 Tue Jan  8 15:47:43 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11336         * enc/utf{16,32}_{be,le}.c: use &OnigEncodingName(*) instead of
11337           ONIG_ENCODING_*.
11339 Tue Jan  8 15:40:31 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11341         * regenc.c (onigenc_strlen_null, onigenc_str_bytelen_null): suppressed
11342           warnings.
11344         * regenc.h, enc/unicode.c (onigenc_unicode_ctype_code_range): added
11345           encoding argument.
11347         * enc/utf{16,32}_{be,le}.c: added init functions.
11349         * enc/utf{16,32}_{be,le}.c: imported from Oniguruma 5.9.1.
11351 Tue Jan  8 15:03:10 2008  Tanaka Akira  <akr@fsij.org>
11353         * string.c (str_gsub): avoid appending empty pre-match substr.
11355 Tue Jan  8 13:05:57 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11357         * compile.c (iseq_build_from_ary), iseq.c (iseq_load): fix for format change.
11359 Tue Jan  8 07:56:11 2008  Tanaka Akira  <akr@fsij.org>
11361         * string.c (rb_str_buf_append): fix append itself.
11363 Tue Jan  8 01:13:50 2008  Tanaka Akira  <akr@fsij.org>
11365         * string.c (STR_ENC_GET): defined.  same as rb_enc_get without
11366           enc_capable.
11367           (coderange_scan): ASCII-8BIT test refined.
11368           (rb_enc_cr_str_buf_cat): new internal function to accumulate
11369           strings with encoding.
11370           (rb_enc_str_buf_cat): use rb_enc_cr_str_buf_cat.
11371           (rb_str_buf_append): ditto
11372           (str_gsub): use rb_str_buf_append.
11373           (rb_str_hash): use ENCODING_GET.
11374           (rb_str_comparable): ditto.
11375           (rb_str_cmp): compare encoding index, not rb_encoding address.
11377 Mon Jan  7 20:37:55 2008  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11379         * lib/webrick/httpservlet/cgihandler.rb: external encoding of
11380           tempfiles is set to "ASCII-8BIT".
11382 Mon Jan  7 19:39:50 2008  Eric Hodel  <drbrain@segment7.net>
11384         * lib/rdoc/template.rb:  Use ERB instead of custom template language.
11386         * lib/rdoc/generators/template/html/old_html.rb:  Remove.
11388         * lib/rdoc/generators/template/*: Convert to ERB.
11390 Mon Jan  7 19:11:30 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11392         * string.c (Init_String): sym_match arity spec was wrong.  a patch
11393           from Hiroyuki Iwatsuki <don at na.rim.or.jp> in [ruby-dev:32957].
11395 Mon Jan  7 18:10:33 2008  Tanaka Akira  <akr@fsij.org>
11397         * string.c (str_gsub): move rb_enc_get(str) to out of loop.
11399 Mon Jan  7 15:52:10 2008  Tanaka Akira  <akr@fsij.org>
11401         * include/ruby/oniguruma.h (OnigEncodingType): new member
11402           ruby_encoding_index to avoid linear search in rb_enc_to_index.
11404         * include/ruby/encoding.h (rb_enc_to_index): macro defined to use
11405           ruby_encoding_index.
11407         * encoding.c (rb_enc_to_index): removed.
11408           (enc_register_at): initialize ruby_encoding_index member.
11410 Mon Jan  7 16:10:35 2008  Eric Hodel  <drbrain@segment7.net>
11412         * lib/rdoc/tokenstream.rb:  Namespace under RDoc.
11414 Mon Jan  7 16:06:09 2008  Eric Hodel  <drbrain@segment7.net>
11416         * lib/rdoc/dot.rb:  Namespace under RDoc.
11418         * lib/rdoc/diagram.rb:  Clean up formatting.
11420 Mon Jan  7 15:51:35 2008  Eric Hodel  <drbrain@segment7.net>
11422         * lib/rdoc/options.rb:  Convert to OptionParser, clean up -h output,
11423           namespace under RDoc.
11424         * lib/rdoc/*:  Namespace RDoc::Options.
11426 Mon Jan  7 15:42:46 2008  NAKAMURA Usaku  <usa@ruby-lang.org>
11428         * common.mk, Makefile.in, */Makefile.sub (distclean-local): move
11429           removing rule of ext/ripper/y.output from common.mk to Makefiles
11430           that depend on platforms.
11432 Mon Jan  7 13:54:57 2008  Tanaka Akira  <akr@fsij.org>
11434         * re.c (rb_reg_preprocess): fix fixed_enc condition.
11436 Mon Jan  7 11:51:49 2008  Eric Hodel  <drbrain@segment7.net>
11438         * lib/rdoc/generators/ri_generator.rb:  Merge documentation from the
11439           same class on output.  Fixes bug where documentation could
11440           disappear.
11442         * lib/rdoc/options.rb:  Fix typo.
11444         * lib/rdoc/generators/*: Clean up some namespacing and make RDoc
11445           consistent.
11447 Mon Jan  7 11:44:45 2008  Tanaka Akira  <akr@fsij.org>
11449         * encoding.c (rb_enc_internal_get_index): extracted from
11450           rb_enc_get_index.
11451           (rb_enc_internal_set_index): extracted from rb_enc_associate_index
11453         * include/ruby/encoding.h (ENCODING_SET): work over ENCODING_INLINE_MAX.
11454           (ENCODING_GET): ditto.
11455           (ENCODING_IS_ASCII8BIT): defined.
11456           (ENCODING_CODERANGE_SET): defined.
11458         * re.c (rb_reg_fixed_encoding_p): use ENCODING_IS_ASCII8BIT.
11460         * string.c (rb_enc_str_buf_cat): use ENCODING_IS_ASCII8BIT.
11462         * parse.y (reg_fragment_setenc_gen): use ENCODING_IS_ASCII8BIT.
11464         * marshal.c (has_ivars): use ENCODING_IS_ASCII8BIT.
11466 Mon Jan  7 02:14:07 2008  Tanaka Akira  <akr@fsij.org>
11468         * string.c (coderange_scan): avoid rb_enc_to_index.
11469           (rb_enc_str_buf_cat): ditto.
11470           (str_cat_char): use rb_enc_str_buf_cat.
11471           (rb_str_inspect): ditto.
11473 Mon Jan  7 01:36:49 2008  Tanaka Akira  <akr@fsij.org>
11475         * string.c (coderange_scan): optimize ASCII-8BIT string.
11476           (rb_enc_str_buf_cat): don't call coderange_scan if possible.
11478 Mon Jan  7 01:05:45 2008  Tanaka Akira  <akr@fsij.org>
11480         * lib/erb.rb (ERB::Revision): cut off locale dependent string in Date
11481           keyword.
11483 Mon Jan  7 00:48:02 2008  Tanaka Akira  <akr@fsij.org>
11485         * Date keyword removed to avoid inclusion of locale dependent
11486           string.  [ruby-dev:32940]
11488 Sun Jan  6 21:14:12 2008  Tanaka Akira  <akr@fsij.org>
11490         * re.c (rb_reg_initialize_str): forbid raw non ASCII character
11491           for ASCII-8BIT regexp in non ASCII-8BIT script.
11493 Sun Jan  6 18:19:12 2008  Tanaka Akira  <akr@fsij.org>
11495         * include/ruby/encoding.h (rb_enc_str_buf_cat): declared.
11497         * string.c (coderange_scan): extracted from rb_enc_str_coderange.
11498           (rb_enc_str_coderange): use coderange_scan.
11499           (rb_str_shared_replace): copy encoding and coderange.
11500           (rb_enc_str_buf_cat): new function for linear complexity string
11501           accumulation with encoding.
11502           (rb_str_sub_bang): don't conflict substituted part and replacement.
11503           (str_gsub): use rb_enc_str_buf_cat.
11504           (rb_str_clear): clear coderange.
11506         * re.c (rb_reg_regsub): use rb_enc_str_buf_cat.
11508 Sun Jan  6 17:55:44 2008  Technorama Ltd.  <oss-ruby@technorama.net>
11510         * lib/securerandom.rb: Add Win32 support.
11512 Sun Jan  6 09:32:58 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11514         * lib/date.rb, lib/date/format.rb: introduced some constants
11515           (for internal use) and aliases (minute and second).
11517         * sample/cal.rb: trivial adjustments.
11519 Sun Jan  6 01:38:07 2008  Tanaka Akira  <akr@fsij.org>
11521         * re.c (rb_reg_initialize_str): /\x80/n is not an error even if script
11522           encoding is EUC-JP.
11524 Sun Jan  6 00:48:12 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11526         * lib/resolv.rb (Resolv::DNS#each_address): get A record and then AAAA
11527           record. [ruby-dev:32925]
11529 Sat Jan  5 21:48:03 2008  Tanaka Akira  <akr@fsij.org>
11531         * vm_insnhelper.c (vm_callee_setup_arg): it is not inlinable because
11532           alloca is used.
11534 Sat Jan  5 16:50:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11536         * string.c (rb_str_resize): copy if old data is not empty
11537           [ruby-core:14785]
11539 Sat Jan  5 13:04:24 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11541         * ruby.c (proc_options): no need for intermediate object.
11543 Sat Jan  5 11:48:19 2008  Tanaka Akira  <akr@fsij.org>
11545         * encoding.c (Init_Encoding): alias csWindows31J to Windows-31J.
11546           IE6 accepts csWindows31J but Windows-31J.
11548 Sat Jan  5 02:21:10 2008  Tanaka Akira  <akr@fsij.org>
11550         * include/ruby/ruby.h (rb_intern): memorize interned ID for constant
11551           string, using gcc's __builtin_constant_p and statement expression.
11553 Sat Jan  5 02:14:45 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11555         * string.c (trnext): should enable backslash escape.
11557 Sat Jan  5 01:50:32 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11559         * eval.c (Init_eval): move instance_eval and instance_exec to
11560           BasicObject.  [ruby-core:14747]
11562         * lib/delegate.rb: should preserve new methods in BasicObject.
11564 Sat Jan  5 01:46:29 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11566         * ruby.c (proc_options): update according to the last API revert.
11568 Sat Jan  5 01:30:30 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11570         * include/ruby/intern.h, re.c (rb_reg_new): keep interface same as
11571           1.8.  [ruby-core:14583]
11573         * include/ruby/intern.h, re.c (rb_reg_new_str): renamed, and defines
11574           HAVE_RB_REG_NEW_STR macro to tell if it is available.
11576         * include/ruby/encoding.h (rb_enc_reg_new): added.
11578         * insns.def (toregexp), marshal.c (r_object0): use rb_reg_new_str().
11580         * re.c (rb_reg_regcomp, rb_reg_s_union): ditto.
11582 Fri Jan  4 23:08:48 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11584         * time.c (time_arg): use converted object.  [ruby-core:14759]
11586 Fri Jan  4 16:24:58 2008  Tanaka Akira  <akr@fsij.org>
11588         * ext/digest/lib/digest/hmac.rb (Digest::HMAC#initialize): use
11589           String#bytesize to avoid test errors on EUC-JP environment.
11591 Fri Jan  4 14:00:50 2008  Tanaka Akira  <akr@fsij.org>
11593         * re.c (rb_reg_prepare_re): check string encoding.  Oniguruma doesn't
11594           support invalid encoding.
11596 Fri Jan  4 10:22:25 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11598         * re.c (rb_reg_search): avoid inner loop for reverse search.
11600         * regexec.c: unset USE_MATCH_RANGE_MUST_BE_INSIDE_OF_SPECIFIED_RANGE
11601           which is turned on since oniguruma 5.9.1.
11603 Fri Jan  4 02:53:31 2008  Tanaka Akira  <akr@fsij.org>
11605         * enc/euc_jp.c: remove eucjp_ prefix.  breakpoint can be specified as
11606           euc_jp.c:mbc_enc_len.  avoid needless conflict by merge.
11608         * enc/sjis.c: remove sjis_ prefix.
11610         * enc/utf8.c: remove utf8_ prefix.
11612         * enc/iso_8859_1.c: remove iso_8859_1_ prefix.
11614         * enc/iso_8859_2.c: remove iso_8859_2_ prefix.
11616         * enc/iso_8859_3.c: remove iso_8859_3_ prefix.
11618         * enc/iso_8859_4.c: remove iso_8859_4_ prefix.
11620         * enc/iso_8859_5.c: remove iso_8859_5_ prefix.
11622         * enc/iso_8859_6.c: remove iso_8859_6_ prefix.
11624         * enc/iso_8859_7.c: remove iso_8859_7_ prefix.
11626         * enc/iso_8859_8.c: remove iso_8859_8_ prefix.
11628         * enc/iso_8859_9.c: remove iso_8859_9_ prefix.
11630         * enc/iso_8859_10.c: remove iso_8859_10_ prefix.
11632         * enc/iso_8859_11.c: remove iso_8859_11_ prefix.
11634         * enc/iso_8859_13.c: remove iso_8859_13_ prefix.
11636         * enc/iso_8859_14.c: remove iso_8859_14_ prefix.
11638         * enc/iso_8859_15.c: remove iso_8859_15_ prefix.
11640         * enc/iso_8859_16.c: remove iso_8859_16_ prefix.
11642 Fri Jan  4 02:47:06 2008  Tanaka Akira  <akr@fsij.org>
11644         * re.c (rb_reg_search): iterate onig_match for reverse mode.
11646 Fri Jan  4 01:20:21 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11648         * win32.h: only VC6 needs extern "C++" for math.h.  [ruby-talk:285660]
11650 Fri Jan  4 00:54:43 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11652         * include/ruby/oniguruma.h: Oniguruma 5.9.1 merged.
11654 Fri Jan  4 00:20:47 2008  Tanaka Akira  <akr@fsij.org>
11656         * io.c (io_ungetc): move data in buffer if it is required to store the
11657           argument.
11659 Thu Jan  3 21:56:07 2008  Tanaka Akira  <akr@fsij.org>
11661         * include/ruby/ruby.h (st_strcasecmp): declared for STRCASECMP.
11662           (st_strncasecmp): declared for STRNCASECMP.
11664 Thu Jan  3 20:24:48 2008  Koichi Sasada  <ko1@atdot.net>
11666         * eval_jump.c (rb_f_catch): Restore cfp if caught thrown object.
11668 Thu Jan  3 19:45:57 2008  Koichi Sasada  <ko1@atdot.net>
11670         * bootstraptest/test_eval.rb, test_knownbug.rb: move a fixed test.
11672 Thu Jan  3 18:39:12 2008  Tanaka Akira  <akr@fsij.org>
11674         * encoding.c: (rb_tolower, rb_toupper): body was exchanged.
11676 Thu Jan  3 17:54:01 2008  Tanaka Akira  <akr@fsij.org>
11678         * regenc.h (onigenc_ascii_is_code_ctype): put back.
11680 Thu Jan  3 17:33:09 2008  Tanaka Akira  <akr@fsij.org>
11682         * encoding.c (rb_isalnum): defined.
11683           (rb_isalpha): ditto.
11684           (rb_isblank): ditto.
11685           (rb_iscntrl): ditto.
11686           (rb_isdigit): ditto.
11687           (rb_isgraph): ditto.
11688           (rb_islower): ditto.
11689           (rb_isprint): ditto.
11690           (rb_ispunct): ditto.
11691           (rb_isspace): ditto.
11692           (rb_isupper): ditto.
11693           (rb_isxdigit): ditto.
11694           (rb_tolower): ditto.
11695           (rb_toupper): ditto.
11697         * include/ruby/ruby.h: don't include include/ruby/encoding.h.
11698           (rb_isascii): defined.
11699           (rb_isalnum): declared.
11700           (rb_isalpha): ditto.
11701           (rb_isblank): ditto.
11702           (rb_iscntrl): ditto.
11703           (rb_isdigit): ditto.
11704           (rb_isgraph): ditto.
11705           (rb_islower): ditto.
11706           (rb_isprint): ditto.
11707           (rb_ispunct): ditto.
11708           (rb_isspace): ditto.
11709           (rb_isupper): ditto.
11710           (rb_isxdigit): ditto.
11711           (rb_tolower): ditto.
11712           (rb_toupper): ditto.
11713           (ISASCII): simplified.
11714           (ISPRINT): ditto.
11715           (ISSPACE): ditto.
11716           (ISUPPER): ditto.
11717           (ISLOWER): ditto.
11718           (ISALNUM): ditto.
11719           (ISALPHA): ditto.
11720           (ISDIGIT): ditto.
11721           (ISXDIGIT): ditto.
11722           (TOUPPER): ditto.
11723           (TOLOWER): ditto.
11725         * include/ruby/encoding.h (rb_isascii): removed.
11726           (rb_isalnum): ditto.
11727           (rb_isalpha): ditto.
11728           (rb_isblank): ditto.
11729           (rb_iscntrl): ditto.
11730           (rb_isdigit): ditto.
11731           (rb_isgraph): ditto.
11732           (rb_islower): ditto.
11733           (rb_isprint): ditto.
11734           (rb_ispunct): ditto.
11735           (rb_isspace): ditto.
11736           (rb_isupper): ditto.
11737           (rb_isxdigit): ditto.
11738           (rb_tolower): ditto.
11739           (rb_toupper): ditto.
11741         * common.mk: dependency updated.
11743 Thu Jan  3 15:10:26 2008  Tanaka Akira  <akr@fsij.org>
11745         * include/ruby/encoding.h (rb_isascii): simplified.
11746           (rb_isalnum): call onigenc_ascii_is_code_ctype without indirect call.
11747           (rb_isalpha): ditto.
11748           (rb_isblank): ditto.
11749           (rb_iscntrl): ditto.
11750           (rb_isdigit): ditto.
11751           (rb_isgraph): ditto.
11752           (rb_islower): ditto.
11753           (rb_isprint): ditto.
11754           (rb_ispunct): ditto.
11755           (rb_isspace): ditto.
11756           (rb_isupper): ditto.
11757           (rb_isxdigit): ditto.
11759         * include/ruby/oniguruma.h (onigenc_ascii_is_code_ctype): declaration
11760           moved from regenc.h.
11762 Thu Jan  3 14:37:17 2008  Tanaka Akira  <akr@fsij.org>
11764         * parse.y (parser_magic_comment): use STRNCASECMP.
11765           (set_file_encoding): ditto.
11767 Thu Jan  3 11:44:37 2008  Tanaka Akira  <akr@fsij.org>
11769         * time.c: don't mention an obsolete library, ParseDate.
11771 Thu Jan  3 11:28:58 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11773         * io.c (fptr_finalize): clear errno first.  [ruby-talk:284492]
11775 Thu Jan  3 05:02:36 2008  Tanaka Akira  <akr@fsij.org>
11777         * enc/us_ascii.c: add us_ascii_ prefix for functions to ease
11778           setting breakpoint when debugging.
11780         * enc/euc_jp.c: add eucjp_ prefix.
11782         * enc/sjis.c: add sjis_ prefix.
11784         * enc/iso_8859_1.c: add iso_8859_1_ prefix.
11786         * enc/iso_8859_2.c: add iso_8859_2_ prefix.
11788         * enc/iso_8859_3.c: add iso_8859_3_ prefix.
11790         * enc/iso_8859_4.c: add iso_8859_4_ prefix.
11792         * enc/iso_8859_5.c: add iso_8859_5_ prefix.
11794         * enc/iso_8859_6.c: add iso_8859_6_ prefix.
11796         * enc/iso_8859_7.c: add iso_8859_7_ prefix.
11798 Thu Jan  3 02:44:34 2008  Tanaka Akira  <akr@fsij.org>
11800         * bignum.c (conv_digit): use ISDIGIT, ISLOWER and ISUPPER.
11802 Wed Jan  2 23:50:15 2008  Tanaka Akira  <akr@fsij.org>
11804         * util.c (ruby_strtoul): "0x", "+" and "-" is not a valid integer.
11805           end of integer should be just after "0", the beginning, the
11806           beginning respectively.
11808 Wed Jan  2 15:23:15 2008  Tanaka Akira  <akr@fsij.org>
11810         * util.c (ruby_strtoul): locale independent strtoul is implemented to
11811           avoid "i".to_i(36) cause 0 under tr_TR locale on Debian GNU/Linux
11812           4.0 (Etch).
11813           This is newly implemented, not a copy of missing/strtoul.c.
11815         * include/ruby/ruby.h (ruby_strtoul): declared.
11816           (STRTOUL): defined to use ruby_strtoul.
11818         * bignum.c, pack.c, ext/socket/socket.c: use STRTOUL.
11820         * configure.in (strtoul): don't check.
11822         * missing/strtoul.c: removed.
11824         * include/ruby/missing.h (strtoul): removed.
11826         * common.mk (strtoul.o): removed.
11828         * LEGAL (missing/strtoul.c): removed.
11830 Wed Jan  2 14:41:08 2008  Tanaka Akira  <akr@fsij.org>
11832         * common.mk (strcasecmp.o): removed.
11833           (strncasecmp.o): removed.
11835         * include/ruby/missing.h (strcasecmp): removed.
11836           (strncasecmp): removed.
11838 Wed Jan  2 11:34:57 2008  Tanaka Akira  <akr@fsij.org>
11840         * missing/strcasecmp.c: removed.  Ruby don't use locale dependent
11841           strcasecmp.
11843         * missing/strncasecmp.c: ditto.
11845         * configure.in: don't check strcasecmp and strncasecmp.
11847         * LEGAL: missing/strcasecmp.c and missing/strncasecmp.c removed.
11849 Wed Jan  2 10:13:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11851         * sample/time.rb: use Process.times instead of Time.times.
11853 Wed Jan  2 09:09:53 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11855         * sample/goodfriday.rb: examples for date are enough.  retired.
11857 Wed Jan  2 08:58:54 2008  Tadayoshi Funaba  <tadf@dotrb.org>
11859         * sample/cal.rb: just updated with the newest version.
11861 Wed Jan  2 01:19:31 2008  Tanaka Akira  <akr@fsij.org>
11863         * enc/depend: dependency updated.
11865 Wed Jan  2 00:14:41 2008  NARUSE, Yui  <naruse@ruby-lang.org>
11867         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: Update nkf.
11869         * ext/nkf/nkf.c: fix documents.
11871         * ext/nkf/lib/kconv.rb: fix documents.
11872           (Kconv.is*): use valid_encoding?.
11873           (Kconv.isjis): defined.
11875 Tue Jan  1 23:17:03 2008  Tanaka Akira  <akr@fsij.org>
11877         * common.mk: dependency updated.
11879 Tue Jan  1 21:11:33 2008  Tanaka Akira  <akr@fsij.org>
11881         * include/ruby/encoding.h (rb_isascii): defined.
11882           (rb_isalnum): ditto.
11883           (rb_isalpha): ditto.
11884           (rb_isblank): ditto.
11885           (rb_iscntrl): ditto.
11886           (rb_isdigit): ditto.
11887           (rb_isgraph): ditto.
11888           (rb_islower): ditto.
11889           (rb_isprint): ditto.
11890           (rb_ispunct): ditto.
11891           (rb_isspace): ditto.
11892           (rb_isupper): ditto.
11893           (rb_isxdigit): ditto.
11894           (rb_tolower): ditto.
11895           (rb_toupper): ditto.
11897         * include/ruby/st.h (st_strcasecmp): declared.
11898           (st_strncasecmp): ditto.
11900         * st.c (type_strcasehash): use st_strcasecmp instead of strcasecmp.
11901           (st_strcasecmp): defined.
11902           (st_strncasecmp): ditto.
11904         * include/ruby/ruby.h: include include/ruby/encoding.h.
11905           (ISASCII): use rb_isascii.
11906           (ISPRINT): use rb_isprint.
11907           (ISSPACE): use rb_isspace.
11908           (ISUPPER): use rb_isupper.
11909           (ISLOWER): use rb_islower.
11910           (ISALNUM): use rb_isalnum.
11911           (ISALPHA): use rb_isalpha.
11912           (ISDIGIT): use rb_isdigit.
11913           (ISXDIGIT): use rb_isxdigit.
11914           (TOUPPER): defined.
11915           (TOLOWER): ditto.
11916           (STRCASECMP): ditto.
11917           (STRNCASECMP): ditto.
11919         * dir.c, encoding.c, file.c, hash.c, process.c, ruby.c, time.c,
11920           transcode.c, ext/readline/readline.c: use locale insensitive
11921           functions.  [ruby-core:14662]
11923 Tue Jan  1 17:50:47 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11925         * io.c (rb_io_mode_enc): encoding spec is not allowed in binary mode.
11926           [ruby-dev:32913]
11928 Tue Jan  1 14:41:56 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11930         * lib/rexml: 1.9 patch from Sam Ruby mentioned in his blog:
11931           <http://intertwingly.net/blog/2007/12/31/Porting-REXML-to-Ruby-1-9>
11932           [ruby-core:14639]
11934 Tue Jan  1 14:15:04 2008  Yukihiro Matsumoto  <matz@ruby-lang.org>
11936         * string.c (rb_str_substr): offset movement bug.  a patch from
11937           Vincent Isambart <vincent.isambart at gmail.com> in
11938           [ruby-core:14647].  [ruby-core:14644]
11940 Tue Jan  1 01:29:04 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11942         * encoding.c (rb_to_encoding): raises for non-nil, non-encoding,
11943           non-string object.  [ruby-core:14634]
11945 Tue Jan  1 01:04:06 2008  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11947         * ruby.c (process_options): rejects dummy encoding.
11949 Mon Dec 31 23:53:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11951         * ruby.c (proc_options, process_options): delays finding encoding
11952           until load_path is set.
11954 Mon Dec 31 23:27:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11956         * string.c (rb_str_resize): embeds if ptr is null.  [ruby-dev:32819]
11958 Mon Dec 31 23:17:22 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
11960         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
11961           call do_XXX which correspond with request method.
11962           (WEBrick::HTTPProxyServer#do_CONNECT,do_GET,do_POST,do_HEAD): added.
11964         * test/webrick/test_httpproxy.rb: add test for WEBrick::HTTPProxyServer.
11966 Mon Dec 31 22:53:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
11968         * thread_pthread.c (native_sleep): timespec tv_sec may overflow on
11969           some platform.  a patch from zunda <zunda616e AT yahoo.co.jp> in
11970           [ruby-dev:32904].
11972 Mon Dec 31 19:35:20 2007  Tanaka Akira  <akr@fsij.org>
11974         * string.c (IS_7BIT): removed.
11975           (single_byte_optimizable): new function to test optimizationability
11976           using single byte string.
11977           (str_strlen): use single_byte_optimizable instead of
11978           is_ascii_string.
11979           (str_nth): rename argument: asc -> singlebyte.
11980           (str_offset): ditto.
11981           (rb_str_substr): use single_byte_optimizable instead of IS_7BIT.
11982           (rb_str_index): ditto.
11983           (rb_str_rindex): ditto.
11984           (rb_str_splice): ditto.
11985           (rb_str_justify): ditto.
11987 Mon Dec 31 07:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11989         * main.c, goruby.c (RUBY_MAIN_INIT): removed.
11991         * goruby.c (goruby_run_node): run after ruby_init_loadpath() so that
11992           require works, and protect the call.
11994 Mon Dec 31 06:50:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
11996         * common.mk: not use -I$(srcdir)/lib with $(MINIRUBY) for cross
11997           compiling.
11999         * configure.in, {win,bcc}32/Makefile.sub (MINIRUBY): -I$(srcdir)/lib
12000           moved.
12002 Mon Dec 31 06:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12004         * include/ruby/encoding.h (rb_enc_sprintf, rb_enc_vsprintf): prototyped.
12006         * sprintf.c (rb_enc_sprintf, rb_enc_vsprintf): new functions to format
12007           arguments with encoding.
12009 Sun Dec 30 23:48:00 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12011         * golf_prelude.rb (String#/): define / as split, as association of
12012           Array#*.
12014 Sun Dec 30 23:19:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12016         * golf_prelude.rb (@@golf_hash): for performance improvement.
12018 Sun Dec 30 22:44:50 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12020         * lib/date.rb (_valid_time?): I'm not sure to recommend such an
12021           expression.  but anyway it is acceptable now.  [ruby-core:14580]
12023 Sun Dec 30 21:54:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12025         * parse.y (program, yycompile0): too early to drop lex_lastline in
12026           rules.
12028 Sun Dec 30 19:23:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12030         * bootstraptest/test_knownbug.rb: support DOSISH.
12032 Sun Dec 30 17:43:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12034         * encoding.c (Init_Encoding): registered rb_encoding differs from
12035           ONIG_ENCODINGs.
12037 Sun Dec 30 13:56:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12039         * parse.y (program): clear input strings after all process.
12041         * parse.y (parser_nextc, parser_yylex): should not drop lex_lastline
12042           while lex_p is valid.  [ruby-dev:32896]
12044 Sun Dec 30 10:54:49 2007  NARUSE, Yui  <naruse@ruby-lang.org>
12046         * configure.in: rm largefile.h.
12048         * common.mk: clean golf, conf*, preludes, and so on.
12050         * enc/depend: silent and ignore error for rm.
12052         * enc/Makefile.in: should define prefix and exec_prefix.
12054 Sun Dec 30 06:31:11 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12056         * encoding.c (Init_encoding): register Windows-31J and its alias.
12057           [ruby-dev:32843]
12059         * ruby.c (proc_options): -Ks options means Windows-31J, not Shift_JIS.
12061 Sun Dec 30 06:27:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12063         * lib/mkmf.rb (depend_rules): need to convert `/' to `\' for windows
12064           native commands.
12066 Sun Dec 30 01:43:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12068         * enc/Makefile.in (DLDFLAGS): like as extensions.  [ruby-core:14567]
12070 Sat Dec 29 23:48:13 2007  Tanaka Akira  <akr@fsij.org>
12072         * io.c (io_fflush): don't retry when wbuf modified by other threads.
12074 Sat Dec 29 22:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12076         * re.c (rb_reg_regsub): returns the given string itself if nothing
12077           changed.
12079         * string.c (rb_str_sub_bang): keeps code-range as possible.
12081         * string.c (str_gsub): adjusts code-range.  [ruby-core:14566]
12083 Sat Dec 29 21:54:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12085         * common.mk (clean, distclean, realclean): should include clean-enc
12086           and others.  [ruby-dev:32887]
12088 Sat Dec 29 13:29:29 2007  Tanaka Akira  <akr@fsij.org>
12090         * bootstraptest/test_knownbug.rb: add a test reported by
12091           Kazuhiro NISHIYAMA.  [ruby-dev:32819].
12092           add a test reported by Frederick Cheung.  [ruby-core:14556].
12094         * test/ruby/test_m17n.rb (test_gsub): add a test reported by
12095           Sam Ruby.  [ruby-core:14566]
12097 Sat Dec 29 04:46:58 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12099         * lib/test/unit/assertions.rb (Test::Unit::Assertions#assert_throws):
12100           throw won't raise NameError nor ThreadError but ArgumentError on 1.9.
12101           (Test::Unit::Assertions#assert_not_throws): ditto.
12103         * test/testunit/test_assertions.rb: add assertions for throwing some
12104           objects other than Symbol.
12106 Sat Dec 29 03:10:12 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12108         * io.c (io_unread): fix typo.
12110 Sat Dec 29 02:18:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12112         * io.c (io_unread): adhoc workaround for non-binary mode of some DOSish
12113           platforms. this is not perfect and safety, but works with most cases.
12115 Fri Dec 28 23:53:18 2007  Tanaka Akira  <akr@fsij.org>
12117         * ext/strscan/strscan.c (str_new): new function for allocate an string
12118           with encoding propagation.
12119           (extract_range): use str_new.
12120           (extract_beg_len): ditto.
12121           (strscan_peek): ditto.
12122           (strscan_rest): ditto.
12124 Fri Dec 28 20:18:42 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12126         * golf_prelude.rb (Object.say): derived from Perl 5.10.
12128 Fri Dec 28 19:39:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12130         * encoding.c (rb_locale_encoding): should check return value from
12131           rb_locale_charmap().
12133         * ruby.c (locale_encoding): removed.
12135         * ruby.c (process_options): use rb_locale_encoding() instead of
12136           locale_encoding().
12138         * ext/readline/readline.c (readline_readline): use locale encoding
12139           instead of input IO's encoding. [ruby-dev:32872]
12141 Fri Dec 28 19:29:07 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12143         * ext/readline/readline.c (readline_readline, readline_s_set_input):
12144           use mReadline directly because self is not always same.
12146 Fri Dec 28 19:11:28 2007  Tanaka Akira  <akr@fsij.org>
12148         * encoding.c (rb_locale_encoding): defined.
12150         * include/ruby/encoding.h (rb_locale_encoding): declared.
12152 Fri Dec 28 18:45:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12154         * ext/readline/readline.c (readline_readline): set encoding to result.
12156         * ext/readline/readline.c (readline_s_set_input, Init_readline): save
12157           input IO to hidden instance variable.
12159 Fri Dec 28 01:55:04 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12161         * transcode.c (transcode_dispatch): reverted some of the changes
12162           in r14746.
12164         * transcode.c, enc/trans/single_byte.c: Added conversions to/from
12165           US-ASCII and ASCII-8BIT (using data tables).
12167         * enc/trans/single_byte.c: Some spacing/ordering changes due to
12168           automatic data file generation.
12170         * transcode_data.h, transcode.c: Preliminary code for using
12171           micro-conversion functions.
12173         * test/ruby/test_transcode.rb: Added some tests for US-ASCII and
12174           ASCII-8BIT conversions.
12176 Fri Dec 28 17:33:44 2007  Tanaka Akira  <akr@fsij.org>
12178         * time.c (make_time_t): verify mktime and timegm result.
12180 Fri Dec 28 16:36:33 2007  NARUSE, Yui  <naruse@airemix.com>
12182         * lib/resolv.rb (Resolv::DNS#each_address): now returns IPv6 address.
12184 Fri Dec 28 16:10:00 2007  Eric Hodel  <drbrain@segment7.net>
12186         * lib/rdoc/dot/dot.rb: Move to lib/rdoc/dot.rb. Fix namespacing.
12188         * lib/rdoc/diagram.rb: Update for 1.9.
12190 Fri Dec 28 15:38:29 2007  Eric Hodel  <drbrain@segment7.net>
12192         * lib/rdoc/markup/sample/: Move to sample/rdoc/markup directory.
12194 Fri Dec 28 15:15:12 2007  Akinori MUSHA  <knu@iDaemons.org>
12196         * lib/irb/completion.rb: Remove garbage ("X=1").
12198 Fri Dec 28 15:12:05 2007  Eric Hodel  <drbrain@segment7.net>
12200         * lib/rdoc, test/rdoc: Move RDoc tests out of lib/.
12202 Fri Dec 28 15:10:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12204         * encoding.c (set_base_encoding, enc_base_encoding): renamed
12205           based_encoding as base_encoding.
12207 Fri Dec 28 13:57:49 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12209         * golf_prelude.rb (Integer#each): use alias simply.
12211 Fri Dec 28 13:45:21 2007  Akinori MUSHA  <knu@iDaemons.org>
12213         * golf_prelude.rb (Object.const_missing): No need to delegate to
12214           superclass.  Just raise a NameError when none matches.
12216 Fri Dec 28 13:18:47 2007  Kouhei Sutou  <kou@cozmixng.org>
12218         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.2 -> 0.2.3.
12220         * lib/rss/parser.rb, test/rss/test_parser.rb: supported "-" in tag name.
12221           Reported by Ray Chen. Thanks.
12223 Fri Dec 28 13:07:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12225         * gc.c (os_obj_of): returns an enumerator if no block given.  based on
12226           a patch from Yugui <yugui AT yugui.sakura.ne.jp>.  [ruby-dev:32828]
12228 Fri Dec 28 11:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12230         * tool/ytab.sed: skip yydestruct hack unless yymsg exists, for bison
12231           1.8 series.  [ruby-dev:32825]
12233 Fri Dec 28 11:39:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12235         * golf_prelude.rb (Object.quine): need to join because SCRIPT_LINES__[]
12236           returns an array of lines.
12238 Fri Dec 28 11:16:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12240         * golf_prelude.rb (Object.quine): get the script itself.
12242 Fri Dec 28 10:06:54 2007  Akinori MUSHA  <knu@iDaemons.org>
12244         * golf_prelude.rb (Object.const_missing): Auto-complete constants.
12246 Fri Dec 28 01:55:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12248         * transcode.c (transcode_dispatch): allows transcoding from/to
12249           ASCII-8BIT.
12251 Fri Dec 28 01:47:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12253         * golf_prelude.rb (Integer): Integer is now enumerable on goruby.
12255 Fri Dec 28 01:27:47 2007  Tanaka Akira  <akr@fsij.org>
12257         * lib/rdoc/rdoc.rb (parse_files): don't depend on the default external
12258           encoding.
12260 Fri Dec 28 00:01:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12262         * common.mk (golf_prelude.c): use MINIRUBY instead of BASERUBY because
12263           tool/compile_prelude.rb requires rbconfig.rb.
12265 Thu Dec 27 23:56:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12267         * mkconfig.rb: should not use the libraries under the source directory
12268           at cross compiling.
12270 Thu Dec 27 23:43:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12272         * cygwin/GNUmakefile.in (EXTOBJS): uses ruby.rc always for other than
12273           rubyw.exe.
12275 Thu Dec 27 22:31:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12277         * lib/rubygems/commands/update_command.rb (do_rubygems_update): use
12278           portable and safely ENV operation. reported in
12279           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
12281 Thu Dec 27 21:47:04 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12283         * mkconfig.rb (prefix): archdir is "1.9.0", not "1.9". reported in
12284           <http://slashdot.jp/developers/comments.pl?sid=384937&cid=1273085>.
12286 Thu Dec 27 17:57:30 2007  Tanaka Akira  <akr@fsij.org>
12288         * parse.y, transcode_data.h, transcode.c, lib/weakref.rb,
12289           lib/irb/ruby-lex.rb, lib/irb/lc/error.rb, enc/trans/japanese.c:
12290           change "illegal" to "invalid" in a context which doesn't against
12291           a law.
12293 Thu Dec 27 16:37:06 2007  Tanaka Akira  <akr@fsij.org>
12295         * re.c (rb_reg_s_union): show encodings in error message.
12297 Thu Dec 27 15:25:16 2007  Tanaka Akira  <akr@fsij.org>
12299         * encoding.c (rb_enc_codelen): show codepoint in error message.
12301         * include/ruby/encoding.h (rb_enc_codelen): comment it returns
12302           positive integer.
12304         * string.c (rb_str_concat): rb_enc_codelen doesn't return 0.
12306 Thu Dec 27 15:18:44 2007  Tanaka Akira  <akr@fsij.org>
12308         * encoding.c (rb_enc_codelen): error message refined.
12310 Thu Dec 27 15:11:27 2007  Tanaka Akira  <akr@fsij.org>
12312         * encoding.c (rb_enc_check): show encodings in error message.
12314 Thu Dec 27 15:02:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12316         * string.c (rb_str_casecmp): fixed using a wrong variable.
12317           [ruby-list:44402]
12319 Thu Dec 27 14:34:38 2007  Tanaka Akira  <akr@fsij.org>
12321         * io.c (io_fflush): checks wbuf modification by other threads.
12322           not perfect.  it need locks.
12324 Thu Dec 27 10:44:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12326         * ext/socket/socket.c: a patch to support IRIX from Andrew
12327           Thompson <andrew@hijacked.us> in [ruby-core:14447].
12329 Thu Dec 27 02:25:45 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12331         * lib/mkmf.rb (create_tmpsrc): retry to create file if Errno::EACCES
12332           occurs. this is a workaround for mswin32.
12334 Wed Dec 26 22:47:31 2007  NARUSE, Yui <naruse@ruby-lang.org>
12336         * lib/resolv.rb (Resolv::DNS::Name.==): fix for other is array of
12337           Resolv::DNS::Label::Str.
12339         * lib/resolv.rb (Resolv::DNS::MessageEncoder#put_label): String#string
12340           is not defined, so replace to_s.
12342         * lib/resolv.rb (Resolv::IPv6#to_name): ip6.int is obsoleted by
12343           ip6.arpa.
12346 Wed Dec 26 21:27:02 2007  Tadayoshi Funaba  <tadf@dotrb.org>
12348         * lib/date/format.rb (_xmlschema): some improvements.
12350         * lib/date/format.rb (_parse): a new hint compfunc. [experimental]
12352 Wed Dec 26 17:31:08 2007  Tanaka Akira  <akr@fsij.org>
12354         * io.c (io_fflush): check closed fptr after rb_write_internal to avoid
12355           SEGV on MacOS X.
12357 Wed Dec 26 16:10:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12359         * string.c (Init_String): defines chars method.
12361 Wed Dec 26 14:38:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12363         * instruby.rb: install goruby if exists.
12365 Wed Dec 26 13:55:02 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12367         * lib/csv.rb:  Cleaned up some code with Ruby 1.9 idioms.
12369 Wed Dec 26 13:29:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12371         * array.c (tmpbuf): use rb_str_tmp_new().
12373 Wed Dec 26 00:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12375         * ext/json/ext/generator/generator.c (Init_generator): requires
12376           json/common.rb for GeneratorError, when static linked.  a patch from
12377           Kenta Murata <muraken AT gmail.com> in [ruby-dev:32789].
12379 Tue Dec 25 23:33:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12381         * development version 1.9.0 released.
12383 Tue Dec 25 23:25:29 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12385         * lib/rexml/node.rb (REXML::Node::indent): should initialize rv
12386           variable.  a patch from Tadayoshi Funaba <tadf AT dotrb.org> in
12387           [ruby-dev:32783].
12389 Tue Dec 25 23:16:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12391         * ruby.c (proc_options): encoding option in shebang and RUBYOPT did not
12392           work, do not store alloca()ed string in a parent scope struct.
12394 Tue Dec 25 22:56:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12396         * win32/Makefile.sub (config.status): keep this file.
12398 Tue Dec 25 22:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12400         * configure.in (TIMEZONE_VOID): typo.
12402 Tue Dec 25 22:45:10 2007  Koichi Sasada  <ko1@atdot.net>
12404         * insns2vm.rb: add encoding option to shebang.
12406 Tue Dec 25 22:13:51 2007  Koichi Sasada  <ko1@atdot.net>
12408         * bootstraptest/pending.rb: add pending issue.
12410 Tue Dec 25 22:12:40 2007  Koichi Sasada  <ko1@atdot.net>
12412         * thread.c: remove Thread.critical(=).
12414 Tue Dec 25 21:44:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12416         * tool/make-snapshot: add version number.
12418 Tue Dec 25 21:32:54 2007  Koichi Sasada  <ko1@atdot.net>
12420         * compile.c (iseq_compile_each): fix stack consistency error
12421           (break is compiled to throw instead of jump insn).
12422           these problems are reported by Yusuke ENDOH <mame AT tsg.ne.jp>
12424         * bootstraptest/test_knownbug.rb, test_syntax.rb: move fixed test.
12426 Tue Dec 25 21:32:44 2007  Tanaka Akira  <akr@fsij.org>
12428         * parse.y (struct parser_params): make parser_ruby_sourcefile common
12429           field.  it is used by node_newnode.
12430           new field parser_ruby_sourcefile_string for ripper.
12431           (parser_initialize): initialize parser_ruby_sourcefile in ripper.
12432           (ripper_initialize): initialize parser_ruby_sourcefile_string.
12434 Tue Dec 25 21:26:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12436         * common.mk (parse.c): depends on tool/ytab.sed.
12438         * tool/ytab.sed: hack for bison 2.1.
12440 Tue Dec 25 20:24:58 2007  Technorama Ltd.  <oss-ruby@technorama.net>
12442         * ext/openssl/ossl_ssl.c: Only show a warning if the default
12443           DH callback is actually used.
12445         * ext/openssl/ossl_rand.c: New method: random_add().
12447 Tue Dec 25 20:24:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12449         * tool/make-snapshot: argument check, and cleanup exported directory.
12451 Tue Dec 25 20:07:13 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12453         * tool/make-snapshot: more portable.
12455 Tue Dec 25 19:01:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12457         * encoding.h (rb_enc_mbc_to_codepoint): wrapper for
12458           ONIGENC_MBC_TO_CODE().
12460         * string.c (rb_str_succ): deal with invalid sequence as binary.
12462 Tue Dec 25 18:40:46 2007  Koichi Sasada  <ko1@atdot.net>
12464         * iseq.c: all methods need $SAFE < 1.
12466          vm.c: comment out debug functions.
12468 Tue Dec 25 18:37:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12470         * io.c (appendline): move RS comparison to rb_io_getline_1().
12472 Tue Dec 25 18:27:51 2007  Tanaka Akira  <akr@fsij.org>
12474         * string.c (rb_str_each_line): don't call rb_enc_codepoint with empty
12475           string.
12477 Tue Dec 25 18:06:04 2007  Tanaka Akira  <akr@fsij.org>
12479         * string.c (rb_str_inspect): don't call rb_enc_codepoint with empty
12480           string.  fix '#'.inspect.
12482         * encoding.c (rb_enc_codepoint): raise on empty string.
12484 Tue Dec 25 17:48:28 2007  Shugo Maeda  <shugo@ruby-lang.org>
12486         * vm.c (rb_frame_method_id_and_class): new function to get the
12487           method id and class of the current frame.
12489 Tue Dec 25 17:32:04 2007  Akinori MUSHA  <knu@iDaemons.org>
12491         * lib/mkmf.rb (create_makefile): Add a missing dependency on the
12492           target directory for each .rb file.  This will hopefully fix
12493           parallel make (-jN).  Tested on FreeBSD.
12495 Tue Dec 25 16:51:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12497         * enc/trans/japanese.c (rb_{from,to}_{SHIFT_JIS,EUC_JP}): inversed
12498           from_encoding and to_encoding.
12500 Tue Dec 25 16:41:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12502         * golf_prelude.rb (h): add new method for all golfers.
12504 Tue Dec 25 16:37:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12506         * enc/trans/japanese.c (rb_to_EUC_JP): fixed typo.
12508 Tue Dec 25 16:34:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12510         * ext/dl/depend: add dependencies. [ruby-dev:32760]
12512 Tue Dec 25 16:26:48 2007  Koichi Sasada  <ko1@atdot.net>
12514         * include/ruby/ruby.h, thread.c: rename is_ruby_native_thread() to
12515           ruby_native_thread_p().
12517         * ext/tk/tcltklib.c: apply it.
12519 Tue Dec 25 16:15:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12521         * common.mk (clean-enc): clean encoding objects.
12523 Tue Dec 25 16:04:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12525         * common.mk, goruby.c, golf_prelude.rb: for golfers.
12527         * main.c (main): hook for embedding applications.
12529         * tool/compile_prelude.rb: can change initialize function name.
12531 Tue Dec 25 15:59:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12533         * encoding.c (rb_enc_register): do not use based_encoding to check if
12534           dummy encoding.
12536 Tue Dec 25 15:55:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12538         * string.c (rb_str_succ): fix for string with non-alphanumeric chars.
12540 Tue Dec 25 15:42:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12542         * io.c (rb_io_external_encoding): should return nil for
12543           pass-through write IO.  [ruby-dev:32740]
12545 Tue Dec 25 15:24:57 2007  Tanaka Akira  <akr@fsij.org>
12547         * io.c (appendline): initialize rslen to 1 if rsptr is 0.
12548           rslen is the length of the delimiter.
12549           if only delim is given, it should be 1.
12550           [ruby-dev:32746]
12552 Tue Dec 25 15:21:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12554         * transcode.c (transcode_dispatch): fix for multistep transcode.
12556 Tue Dec 25 15:07:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12558         * enc/trans/single_byte.c (Init_single_byte): renamed.
12560 Tue Dec 25 15:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12562         * enum.c (enum_yield): when multiple values yielded from #each
12563           pack them into an array.  [ruby-dev:32708]
12565         * enum.c: all method but all?, any?, one? and none? passed packed
12566           multiple values to the block.
12568         * enum.c (collect_all): should pack all values.  [ruby-core:14410]
12570 Tue Dec 25 14:57:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12572         * common.mk (COMMONOBJS): transcode_data_*.c moved under enc/trans.
12574         * transcode_data.h (rb_transcoding, rb_transcoder): prefixed.
12576         * transcode.c (rb_register_transcoder, rb_declare_transcoder): split
12577           declaration and registration.  [ruby-dev:32704]
12579         * transcode.c (transcode_dispatch): autoload pre-declared transcoder.
12581         * transcode.c (str_transcode): use rb_define_dummy_encoding().
12583         * transcode.c (Init_transcode): initialize transcoder tables.
12585         * enc/trans/single_byte.c, enc/trans/japanese.c: moved from top.
12587 Tue Dec 25 14:20:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12589         * lib/mkmf.rb (map_dir): should generate path including $top_srcdir.
12591 Tue Dec 25 14:09:16 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12593         * lib/csv.rb:  Fixed test failures caused by changes to Ruby.
12595         * test/csv/tc_serialization, test/csv/tc_csv_parsing, test/csv/tc_features:
12596           Fixed test failures caused by changes to Ruby.
12598 Tue Dec 25 14:11:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12600         * io.c (io_encoding_set): missing return type.
12602 Tue Dec 25 14:03:48 2007  NARUSE, Yui <naruse@ruby-lang.org>
12604         * test/rinda/test_rinda.rb (MockClock#{_forward, forward, sleep}):
12605           Change default value of n as @reso from nil.  If default value is
12606           nil, n.+ is not defined.
12608 Tue Dec 25 13:54:01 2007  Tanaka Akira  <akr@fsij.org>
12610         * test/ruby/test_io_m17n.rb (test_pipe): fixed.
12611           [ruby-dev:32743]
12613 Tue Dec 25 13:44:51 2007  Koichi Sasada  <ko1@atdot.net>
12615         * thread.c (rb_thread_wait_fd_rw): should check EBADF on select().
12617 Tue Dec 25 13:30:03 2007  Koichi Sasada  <ko1@atdot.net>
12619         * thread_pthread.c, thread_pthread.h, thread_win32.c,
12620           thread_win32.c: make some functions static functions.
12621           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
12622           in [ruby-core:14407]
12624 Tue Dec 25 13:23:13 2007  Tanaka Akira  <akr@fsij.org>
12626         * test/ruby/test_io_m17n.rb (test_write_noenc): don't mix text and
12627           binary mode.  [ruby-dev:32743]
12629 Tue Dec 25 13:13:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12631         * README.EXT.ja, dir.c, eval.c, eval_intern.h, lex.c.src,
12632           lex.c.blt, keywords, load.c, thread.c: more ANSI'ize.
12633           a patch from Tadashi Saito <shiba AT mail2.accsnet.ne.jp>
12634           in [ruby-dev:32725]
12636 Tue Dec 25 13:07:56 2007  Koichi Sasada  <ko1@atdot.net>
12638         * vm_core.h, thread.c, cont.c: add RUBY_VM_SET_INTERRUPT(),
12639           RUBY_VM_SET_TIMER_INTERRUPT(), RUBY_VM_INTERRUPTED().
12641         * thread.c, thread_pthread.c, thread_win32.c: fix to ignore time slice
12642           event until sleep.
12644         * bootstraptest/test_thread.rb: add a test for time limited join test.
12646 Tue Dec 25 12:42:59 2007  Koichi Sasada  <ko1@atdot.net>
12648         * vm.c (Init_VM): remove unused code.
12649           [ruby-dev:32732]
12651 Tue Dec 25 12:32:32 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
12653         * transcode.c: Moving a static counter from inside register_transcoder()
12654           and register_functional_transcoder() to outside the functions, renaming
12655           from n to next_transcoder_position. Fixes 3) in [ruby-dev:32715].
12657 Tue Dec 25 12:22:17 2007  NARUSE, Yui <naruse@ruby-lang.org>
12659         * sample/from.rb: follow Ruby 1.9 libraries.
12661 Tue Dec 25 12:21:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12663         * proc.c (method_inspect): preserve encoding of the method name.
12665 Tue Dec 25 12:07:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12667         * configure.in (BASERUBY): delayed error until BASERUBY is used.
12669 Tue Dec 25 11:48:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12671         * sample/README: removed obsoleted files: dbmtest.rb,
12672           getopts.test, mrshtest.rb, regx.rb.
12674 Tue Dec 25 11:45:34 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12676         * lib/csv.rb:  Import the FasterCSV source as the new CSV class.
12678         * test/csv/*:  Added all applicable tests from FasterCSV.
12680 Tue Dec 25 11:33:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12682         * error.c (report_bug): uses ruby_description.
12684 Tue Dec 25 11:20:38 2007  Koichi Sasada  <ko1@atdot.net>
12686         * compile.c (iseq_compile_each): fix stack consistency error.
12687           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32720]
12689         * bootstraptest/test_syntax.rb: add 2 tests for above.
12691 Tue Dec 25 11:14:20 2007  Koichi Sasada  <ko1@atdot.net>
12693         * iseq.c, vm_core.h: comment out unused fields.
12695 Tue Dec 25 11:02:10 2007  Koichi Sasada  <ko1@atdot.net>
12697         * vm.c: check frame is FINAL when creating env.
12698           [ruby-core:14395]
12700         * bootstraptest/test_block.rb: add a test for above.
12702 Tue Dec 25 09:12:13 2007  Eric Hodel  <drbrain@segment7.net>
12704         * lib/rdoc/:  Enable RDoc debugging only with $DEBUG_RDOC.
12706 Tue Dec 25 08:37:43 2007  James Edward Gray II  <jeg2@ruby-lang.org>
12708         * lib/csv.rb, test/csv/test_csv.rb:  Removed in preparation for
12709           FasterCSV code import.
12711 Tue Dec 25 08:27:43 2007  Eric Hodel  <drbrain@segment7.net>
12713         * lib/rubygems.rb:  Fix test failures.
12715         * test/rubygems/test_gem.rb:  Fix test failure.
12717 Tue Dec 25 06:23:40 2007  Koichi Sasada  <ko1@atdot.net>
12719         * bootstraptest/test_knownbug.rb, test_literal.rb: move fixed test.
12721 Tue Dec 25 06:19:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12723         * sample/biorhythm.rb: follow Ruby 1.9 libraries.
12725 Tue Dec 25 06:15:01 2007  Koichi Sasada  <ko1@atdot.net>
12727         * vm.c: add dummy toplevel frame.
12729 Tue Dec 25 05:44:56 2007  Eric Hodel  <drbrain@segment7.net>
12731         * lib/net/http.rb:  Fix uninitialized variable warning.
12732           [ruby-talk:284582]
12734         * lib/irb/output-method.rb:  Remove unused #foo method.
12735           [ruby-talk:284582]
12737 Tue Dec 25 05:24:12 2007  Koichi Sasada  <ko1@atdot.net>
12739         * compile.c (iseq_compile): clear local table if node == 0.
12740           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>  [ruby-dev:32530]
12742         * vm.c: clear VM stack.
12744 Tue Dec 25 04:23:32 2007  Tanaka Akira  <akr@fsij.org>
12746         * parse.y (rb_id2str): fill klass of returned string as rb_cString.
12747           some strings are allocated before rb_cString is created.
12748           This prevents a "called on terminated object" error by
12749           ObjectSpace.each_object(Module) {|m| p m.name }.
12751 Tue Dec 25 03:51:55 2007  Koichi Sasada  <ko1@atdot.net>
12753         * compile.c (iseq_compile_each): fix stack consistency bug.
12754           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
12756 Tue Dec 25 03:19:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
12758         * tool/make-snapshot: must create configure and lex.c.
12760 Tue Dec 25 03:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12762         * io.c (rb_io_s_pipe): now takes up to two arguments.  allow its
12763           external/internal encoding by Encoding objects.
12765         * io.c (rb_io_set_encoding): new method to set encoding of the IO.
12767         * io.c (argf_set_encoding): ditto.
12769 Tue Dec 25 03:08:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12771         * pack.c (pack_pack): use NUM2LONG instead of NUM2INT.
12773         * numeric.c (fix_lshift, fix_aref): use SIZEOF_LONG instead of
12774           SIZEOF_VALUE.
12776         * bignum.c (big2ulong, rb_big_aref): ditto.
12778 Tue Dec 25 02:55:26 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12780         * lib/rexml/element.rb (REXML::Elements#each): yield in each
12781           should be called with one parameter. [ruby-dev:32708]
12783 Tue Dec 25 02:15:39 2007  Koichi Sasada  <ko1@atdot.net>
12785         * compile.c (iseq_compile_each): add a "pop" insn after break
12786           to fix stack consistency error.  [ruby-core:14385]
12788         * bootstraptest/test_syntax.rb: add tests for above.
12790         * bootstraptest/test_knownbug.rb: remove fixed bug.
12792 Tue Dec 25 01:54:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12794         * id.c (Init_id): remove several unused symbols. [ruby-core:14362]
12796         * compile.c (iseq_specialized_instruction): do not use
12797           VM_CALL_SEND_BANG flag any longer.
12799 Tue Dec 25 01:42:41 2007  Tanaka Akira  <akr@fsij.org>
12801         * lib/rdoc/rdoc.rb (parse_files): interpret coding cookie.
12803 Tue Dec 25 01:38:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12805         * proc.c (method_name): preserve Symbol's encoding.
12807         * numeric.c (fix_id2name): ditto.
12809 Tue Dec 25 01:19:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
12811         * include/ruby/encoding.h (rb_enc_left_char_head): new utility macro.
12813         * include/ruby/encoding.h (rb_enc_right_char_head): ditto.
12815         * io.c (appendline): does multibyte RS search in the function.
12817         * io.c (prepare_getline_args): RS may be nil.
12819         * io.c (rb_io_getc): should process character based on external
12820           encoding, when transcoding required.
12822 Tue Dec 25 01:07:57 2007  Tanaka Akira  <akr@fsij.org>
12824         * lib/irb/output-method.rb: translate a comment to English to
12825           avoid mix of EUC-JP comment and UTF-8 Date keyword.
12826           svn substitute Date keyword with UTF-8 weekday on UTF-8 locale.
12828 Tue Dec 25 00:27:28 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12830         * lib/webrick/httpservley/cgihandler.rb
12831           (WEBrick::HTTPServlet::CGIHandler#do_GET): m17nized.
12833 Mon Dec 24 23:55:29 2007  Tanaka Akira  <akr@fsij.org>
12835         * lib/cgi.rb (CGI::escape): m17nized.
12836           (CGI::unescape): ditto.
12837           (CGI::escapeHTML): ditto.
12838           (CGI::unescapeHTML): ditto.
12840 Mon Dec 24 23:32:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
12842         * transcode_data_japanese.c (select_iso_2022_mode): '\e' is not valid.
12844 Mon Dec 24 23:13:09 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12846         * lib/rdoc/diagram.rb (RDoc::Diagram#initialize): use fileuitls
12847           instead of ftools.
12849 Mon Dec 24 23:04:57 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
12851         * lib/ftools.rb: removed obsoleted lib.  use fileutils instead (by eban).
12853         * lib/rdoc/rdoc.rb, lib/rdoc/generators/*, lib/rake.rb: let it use
12854           fileutils instead of ftools.
12856         * lib/shell/command-processor.rb: removed unused references to ftools.
12858         * lib/parsedate.rb: removed.  see [ruby-core:12535], [ruby-dev:31969].
12860         * lib/README: updated.
12862 Mon Dec 24 23:01:04 2007  Tanaka Akira  <akr@fsij.org>
12864         * lib/open-uri.rb (OpenURI::Buffer): use Meta ===.  [ruby-core:14295]
12866 Mon Dec 24 22:46:42 2007  NARUSE, Yui <naruse@ruby-lang.org>
12868         * transcode.c: register_functional_transcoder() added.
12869           (init_transcoder_table(: register ISO-2022-JP.
12870           (str_transcode): add preprocessor and postprocessor.
12872         * transcode_data_japanese.c: add ISO-2022-JP support.
12874         * transcode_data.h: moved transcoder and transcoding definition from
12875           transcode.c.
12877 Mon Dec 24 20:29:28 2007  Koichi Sasada  <ko1@atdot.net>
12879         * test/io/nonblock/test_flush.rb: fix test for 1.9.
12881 Mon Dec 24 20:23:44 2007  Koichi Sasada  <ko1@atdot.net>
12883         * test/rinda/test_rinda.rb: revert last commit because this test seems
12884           to have timing problem to halt all tests.
12886 Mon Dec 24 20:18:52 2007  Koichi Sasada  <ko1@atdot.net>
12888         * test/rinda/test_rinda.rb: enable rinda test.
12890 Mon Dec 24 20:16:54 2007  Koichi Sasada  <ko1@atdot.net>
12892         * instruby.rb: fix rdoc install dir.
12894 Mon Dec 24 18:37:32 2007  Tanaka Akira  <akr@fsij.org>
12896         * re.c (rb_reg_prepare_re): show regexp encoding in the error message.
12898 Mon Dec 24 18:23:32 2007  Tanaka Akira  <akr@fsij.org>
12900         * eval.c (rb_exc_raise): ANSI style.
12901           (rb_exc_fatal): ditto.
12902           (rb_raise_jump): ditto.
12903           (rb_jump_tag): ditto.
12904           (rb_block_given_p): ditto.
12906         * variable.c (original_module): ditto.
12908 Mon Dec 24 18:05:09 2007  Koichi Sasada  <ko1@atdot.net>
12910         * iseq.c (Init_ISeq): disable ISeq.load() because there is no verifier.
12912         * iseq.c, proc.c: add ISeq.disasm(method).
12914 Mon Dec 24 18:06:03 2007  Tanaka Akira  <akr@fsij.org>
12916         * eval_method.c (Init_eval_method): extracted from Init_eval
12917           for rdoc to find rb_mod_remove_method, rb_mod_undef_method and
12918           rb_mod_alias_method.
12920         * eval.c (Init_eval): call Init_eval_method.
12922 Mon Dec 24 17:59:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12924         * load.c (load_lock): reverted.
12926         * thread.c (rb_barrier_wait): check for recursive wait.
12928 Mon Dec 24 17:50:54 2007  Tanaka Akira  <akr@fsij.org>
12930         * eval.c (function_call_may_return_twice_jmp_buf): removed.
12931           (function_call_may_return_twice_false): removed.
12932           [ruby-core:14335]
12934 Mon Dec 24 17:40:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12936         * common.mk (node_name.inc, miniprelude.c, prelude.c): nmake cannot
12937           handle target vpath in other than implicit rules.
12939 Mon Dec 24 17:20:34 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
12941         * lib/{mailread.rb,getopts.rb,parsearg.rb}: removed.
12942           see [ruby-core:12535], [ruby-dev:31969].
12944 Mon Dec 24 17:12:57 2007  Tanaka Akira  <akr@fsij.org>
12946         * include/ruby/intern.h, random.c, array.c:
12947           change exported name.
12948           genrand_int32 -> rb_genrand_int32.
12949           genrand_real -> rb_genrand_real.
12950           [ruby-core:14335]
12952 Mon Dec 24 17:06:37 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
12954         * {lib,test}/{soap,wsdl,xsd}: removed soap4r along to the discussion
12955           at ruby-core and ruby-dev.  see [ruby-core:12535], [ruby-dev:31969].
12957 Mon Dec 24 17:06:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12959         * load.c (rb_feature_p): returns loading path name too.
12961         * load.c (search_required): returns path too if feature is being
12962           loaded.  [ruby-dev:32048]  [TODO: refactoring]
12964 Mon Dec 24 16:29:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
12966         * sample/openssl: reviewed and remove dependency on getopts.rb.
12968 Mon Dec 24 16:18:57 2007  Koichi Sasada  <ko1@atdot.net>
12970         * mkconfig.rb: add teeny to CONFIG['ruby_version'].
12972 Mon Dec 24 15:55:50 2007  Koichi Sasada  <ko1@atdot.net>
12974         * tool/compile.rb, getrev.rb, runruby.rb: remove unused tools.
12976 Mon Dec 24 15:42:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12978         * configure.in, cygwin/GNUmakefile.in, */Makefile.sub,
12979           djgpp/config.hin.: version dependent directory names now contain
12980           teeny.
12982 Mon Dec 24 15:29:13 2007  Tanaka Akira  <akr@fsij.org>
12984         * tool/serb.rb: removed.
12986 Mon Dec 24 13:55:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12988         * proc.c (rb_proc_new), vm.c (invoke_block): removed u3.state magic.
12989           [ruby-core:14310]
12991         * test/ruby/test_symbol.rb (test_to_proc): a test from Frederick
12992           Cheung <frederick.cheung AT gmail.com>.
12994 Mon Dec 24 13:43:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
12996         * thread.c (rb_thread_atfork): should not leave living_threads
12997           referring freed table while allocating new table.
12999 Mon Dec 24 12:49:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13001         * Makefile.in, configure.in, lib/mkmf.rb, */Makefile.sub: specify
13002           compiled output file name explicitly.
13004         * enc/Makefile.in, enc/depend: now makes compiler to put generated
13005           files under directories corresponding to the each source.
13006           enc/trans supported.
13008         * enc/make_encmake.rb: evaluates depend file before Makefile.in so
13009           that the former can influence to CONFIG.
13011 Mon Dec 24 12:35:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13013         * win{32,ce}/Makefile.sub (MFLAGS): defaulted to -l.
13015 Mon Dec 24 12:08:10 2007  Eric Hodel  <drbrain@segment7.net>
13017         * /, ext/:  Add svn:ignore for OS X Xcode 3's conftest.dSYM
13018           directories.
13020 Mon Dec 24 11:56:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13022         * common.mk: should not pass MAKEFLAGS to recursive make.
13023           + normal make: MFLAGS are set and command line options and macros
13024             are all passed silently.
13025           + GNU make: ditto, and all options and macros in MAKEFLAGS are in
13026             effect.
13027           + nmake: MFLAGS is not set and MAKEFLAGS has only options without
13028             hyphen, no macros exist in any variables.
13029           + Borland make: ditto, and command line macros cannot override
13030             macros in makefile, so passing them is vain.
13032         * {bcc32,win{32,ce}}/Makefile.sub (SET_MAKE): set MFLAGS which is not
13033           set by default, to get rid of chaotic situation of MFLAGS/MAKEFLAGS.
13035 Mon Dec 24 11:32:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13037         * string.c (rb_str_comparable): fixed to keep transitivity.
13038           [ruby-dev:32693]
13040 Mon Dec 24 11:20:31 2007  Eric Hodel  <drbrain@segment7.net>
13042         * lib/rdoc/ri/ri_options.rb:  Fix display of GEMDIRS, make command
13043           examples match ri's name.
13045         * lib/rdoc/ri/ri_paths.rb:  Only allow latest ri dirs in ri output.
13047 Mon Dec 24 10:49:04 2007  Eric Hodel  <drbrain@segment7.net>
13049         * lib/uri/mailto.rb, lib/uri/common.rb:  Fix Regexp warnings.  Patch
13050           #16524 from Kornelius Kalnbach, [ruby-core:14302].
13052 Mon Dec 24 10:37:38 2007  Eric Hodel  <drbrain@segment7.net>
13054         * gem_prelude.rb:  Remove methods from Gem, not QuickLoader, to fix
13055           warnings.
13057 Mon Dec 24 09:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13059         * transcode.c, transcode_data_one_byte.c, transcode_data_japanese.c:
13060           added rb_ prefix to external data symbols.
13062 Mon Dec 24 05:32:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13064         * enum.c (enum_inject): updated documentation.  a patch from Keita
13065           Yamaguchi <keita.yamaguchi AT gmail.com> in [ruby-dev:32686].
13067         * README.EXT: updated.  a patch from Tadashi Saito
13068           <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14328].
13070         * array.c (rb_ary_at): updated documentation. a patch from Tadashi
13071           Saito <shiba AT mail2.accsnet.ne.jp> in [ruby-core:14330].
13073 Mon Dec 24 05:13:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13075         * string.c (tr_trans): should associate new encoding if modified.
13077 Mon Dec 24 04:04:12 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13079         * test/net/http/test_https.rb: should rescue LoadError.
13081 Mon Dec 24 03:57:28 2007  Koichi Sasada  <ko1@atdot.net>
13083         * cont.c, vm.h: fix to support sparc machine.
13084           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
13086 Mon Dec 24 03:35:19 2007  Koichi Sasada  <ko1@atdot.net>
13088         * common.mk: remove additional "-".
13090 Mon Dec 24 02:59:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13092         * io.c (rb_io_check_readable): should not fill fptr->enc always.
13093           read-write IO (e.g. socket) does not work.  [ruby-dev:32685]
13095         * io.c (io_read_encoding): retrieve reading encoding.
13097         * io.c (prepare_getline_args): convert RS to external encoding.
13099         * string.c (str_new_shared): was setting embedding flag of wrong
13100           string object.  [ruby-dev:32685]
13102         * io.c (io_enc_str): should preserve default_external encoding.
13104         * io.c (appendline): should do multibyte aware RS search.
13106 Mon Dec 24 02:06:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13108         * io.c (rb_f_open): documentation update.
13110         * io.c (rb_io_s_pipe): ditto.
13112         * io.c (io_fwrite): wrong encoding destination.
13114         * io.c (rb_io_external_encoding): should return the encoding of
13115           the file reading.
13117         * io.c (rb_io_internal_encoding): should return the encoding of
13118           read string.
13120 Mon Dec 24 01:46:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13122         * io.c (rb_io_s_pipe): allow specifying read-side encoding.
13124         * io.c (io_enc_str): wrong encoding destination.
13126 Mon Dec 24 01:03:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13128         * string.c (rb_str_comparable): comparison including broken
13129           coderange strings do not consider encoding.
13131 Mon Dec 24 00:57:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13133         * io.c (open_key_args): IO direct methods (foreach, readlines,
13134           read) now takes keyword argument: encoding, mode, open_args.
13136 Mon Dec 24 00:52:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13138         * io.c (rb_io_s_read): encoding argument reverted.
13140         * io.c (mode_enc): independent function to share code.
13142         * io.c (rb_io_internal_encoding): new method.
13144 Mon Dec 24 00:47:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13146         * test/ruby/test_beginendblock.rb (TestBeginEndBlock::test_endblockwarn):
13147           rename endblockwarn.rb to endblockwarn_rb to avoid unnecessary
13148           warning in make test.
13150 Sun Dec 23 23:03:13 2007  Tanaka Akira  <akr@fsij.org>
13152         * encoding.c (rb_enc_codepoint): implemented to raise invalid
13153           encoding.
13155         * include/ruby/encoding.h (rb_enc_codepoint): macro is replaced as a
13156           declaration.
13158 Sun Dec 23 19:45:22 2007  Tanaka Akira  <akr@fsij.org>
13160         * lib/time.rb (Time.httpdate): fix 2 digits year for 20xx.
13161           reported by Tadayoshi Funaba.  [ruby-dev:32687]
13163 Sun Dec 23 19:33:42 2007  Eric Hodel  <drbrain@segment7.net>
13165         * lib/open-uri.rb:  Fix method redefined warning.  [ruby-core:14304]
13167 Sun Dec 23 18:31:49 2007  NARUSE, Yui <naruse@ruby-lang.org>
13169         * ext/nkf/nkf.c (rb_nkf_enc_get): use rb_define_dummy_encoding.
13171         * ext/nkf/nkf.c (Init_nkf): use rb_nkf_enc_get("ASCII").
13173         * ext/nkf/nkf-utf8/nkf.c: Update 1.161.
13175         * ext/nkf/nkf-utf9/config.h: default output encoding is now UTF-8.
13177         * ext/nkf/lib/kconv.rb (Kconv.kconv): replace Encoding#name by
13178           Encoding#to_s.
13180 Sun Dec 23 18:02:52 2007  Eric Hodel  <drbrain@segment7.net>
13182         * lib/rubygems/gem_open_uri.rb:  Fix version check.
13184 Sun Dec 23 17:24:48 2007  Tanaka Akira  <akr@fsij.org>
13186         * encoding.c (rb_enc_init): add eucJP as an alias of EUC-JP.
13188 Sun Dec 23 17:00:23 2007  Tanaka Akira  <akr@fsij.org>
13190         * lib/time.rb (Time.httpdate): use Time.utc for
13191           "day-of-week, dd-mon-yy HH::MM:SS GMT" format.
13193 Sun Dec 23 16:12:40 2007  Eric Hodel  <drbrain@segment7.net>
13195         * lib/rdoc:  Fix 1.9 warnings.
13197 Sun Dec 23 15:28:37 2007  Eric Hodel  <drbrain@segment7.net>
13199         * lib/rubygems, test/rubygems:  Fix new 1.9 warnings.
13201 Sun Dec 23 14:43:10 2007  Eric Hodel  <drbrain@segment7.net>
13203         * gem_prelude.rb:  Use require to load rubygems.rb so the correct path
13204           is in $LOADED_FEATURES on RubyGems upgrade.
13206 Sun Dec 23 11:26:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13208         * string.c (sym_call): use exact argument array interface.
13209           [ruby-core:14279]
13211 Sun Dec 23 11:01:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13213         * io.c (rb_io_binmode_m): removed C99ism.
13215 Sun Dec 23 10:23:23 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13217         * transcode_data_one_byte.c: Better (and more honest) optimization.
13219         * transcode_data_japanese.c: First optimization step.
13221 Sun Dec 23 09:07:02 2007  Tanaka Akira  <akr@fsij.org>
13223         * include/ruby/encoding.h, encoding.c, re.c, io.c, parse.y, numeric.c,
13224           ruby.c, transcode.c, ext/nkf/nkf.c: rename rb_ascii_encoding to
13225           rb_ascii8bit_encoding.  rb_ascii_encoding is ambiguous with
13226           ASCII-8BIT and US-ASCII.
13228 Sun Dec 23 03:35:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13230         * version.h: use patchlevel if revision is not set.
13232         * {bcc32,win{32,ce}}/setup.mak (-version-): skip including revision.h.
13234         * common.mk (srcs): new target to generated sources.
13236         * common.mk (encs, ext/ripper/ripper.c): MAKEFLAGS needs -.
13238         * enc/depend, enc/make_encmake.rb: use erb.
13240 Sun Dec 23 01:56:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13242         * io.c (rb_io_mode_enc): do not set encoding unless explicitly
13243           specified.
13245         * io.c (rb_io_check_readable): fill fptr->enc by default_external
13246           if it's empty.
13248         * io.c (io_enc_str): fptr->enc is always set for reading IO (by
13249           rb_io_check_readable(fptr)).
13251 Sun Dec 23 01:18:06 2007  David Flanagan  <david@davidflanagan.com>
13253         * io.c, io.h: temporary patch to partially implement
13254           transcode-on-read and transcode-on-write
13256 Sun Dec 23 00:48:05 2007  Shugo Maeda  <shugo@ruby-lang.org>
13258         * test/net/imap/test_imap.rb: added tests for SSL.
13260 Sat Dec 22 21:10:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13262         * ext/syck/rubyext.c (syck_genericresolver_node_import): should
13263           not set instance variable "@kind" before initializing it.
13264           [ruby-dev:32677]
13266 Sat Dec 22 19:52:23 2007  Koichi Sasada  <ko1@atdot.net>
13268         * bootstraptest/test_objectspace.rb: fix condition.
13270 Sat Dec 22 19:17:10 2007  Koichi Sasada  <ko1@atdot.net>
13272         * ext/probeprofiler/: removed.
13274 Sat Dec 22 19:14:38 2007  Koichi Sasada  <ko1@atdot.net>
13276         * process.c (rb_f_fork): Unsupport Kernel.fork() on NetBSD.
13278 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13280         * test/ruby/test_transcode.rb: Added simple tests for
13281           EUC-JP and Shift_JIS and tests for ASCII-only range
13283 Sat Dec 22 18:20:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13285         * common.mk (version.o): add dependency. [ruby-dev:32680]
13287 Sat Dec 22 17:45:11 2007  NARUSE, Yui <naruse@ruby-lang.org>
13289         * ext/nkf/nkf.c (Init_nkf): use rb_ascii_encoding() for
13290           rb_nkf_enc_get("US-ASCII").
13291           * if use rb_nkf_enc_get("US-ASCII"), ruby will crash - this is bug?
13293 Sat Dec 22 17:39:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13295         * lib/mkmf.rb ($extmk): fixed broken condition.
13297 Sat Dec 22 17:35:59 2007  NARUSE, Yui <naruse@ruby-lang.org>
13299         * ext/nkf/nkf-utf8.c: Update nkf.c rev:1.157.
13301         * ext/nkf/nkf.c (rb_nkf_enc_get): replicate proper based encoding.
13303         * ext/nkf/kconv.c (Kconv#kconv, to*): use self.encoding as from_enc
13304           when from_enc isn't given.
13306 Sat Dec 22 17:06:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13308         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext.build): removed.
13310         * ext/openssl/lib/net/ssl.rb (OpenSSL::SSL::SSLContext#set_params):
13311           new method to set suitable SSL parameters.
13313         * lib/net/pop.rb, lib/net/http.rb, lib/net/imap.rb,
13314           test/openssl/test_ssl.rb: follow above change.
13316         * test/net/http/test_https.rb: refine error case.
13318 Sat Dec 22 16:58:49 2007  Shugo Maeda  <shugo@ruby-lang.org>
13320         * lib/net/imap.rb (encode_utf7): accept UTF-8 strings.
13322         * lib/net/imap.rb (decode_utf7): return UTF-8 strings.
13324 Sat Dec 22 15:56:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13326         * transcode_data_japanese: typo.
13328 Sat Dec 22 15:54:54 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13330         * ChangeLog: Information for last patch got lost, fixed
13332 Sat Dec 22 15:45:45 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13334         * transcode_data_one_byte: slightly optimized
13336         * transcode_data_japanese: new data file for EUC-JP and SHIFT_JIS
13337           (not yet optimized; tests to follow; data from
13338           http://nkf.sourceforge.jp/ucm/{SJIS|eucJP}-nkf.ucm)
13340         * common.mk, transcode.c: Adjusted for transcode_data_japanese
13342 Sat Dec 22 15:30:13 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13344         * */Makefile.sub (MFLAGS): define unless defined.
13346 Sat Dec 22 15:17:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13348         * lib/mkmf.rb ($extmk): set true only when under ext/ or tool/.
13350 Sat Dec 22 15:14:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13352         * common.mk (encs, ext/ripper/ripper.c): needs MFLAGS.
13354         * configure.in (STRINGIZE): stringizing macro.
13356         * include/ruby/defines.h (STRINGIZE): fallback.
13358         * tool/make-snapshot: new file.
13360         * version.c (ruby_description, ruby_copyright): string constants for
13361           -v option.
13363 Sat Dec 22 15:03:37 2007  Shugo Maeda  <shugo@ruby-lang.org>
13365         * lib/net/imap.rb (initialize): fixed documentation.
13367 Sat Dec 22 15:01:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
13369         * lib/net/pop.rb (enable_ssl): use OpenSSL::SSL::SSLContext.build
13370           instead of SSLContext.new (default verify mode is now
13371           OpenSSL::SSL::VERIFY_PEER).
13373 Sat Dec 22 14:45:21 2007  Tadayoshi Funaba  <tadf@dotrb.org>
13375         * lib/date.rb: shouldn't freeze nil. [ruby-dev:32677]
13377 Sat Dec 22 14:27:27 2007  Tanaka Akira  <akr@fsij.org>
13379         * regenc.c (onigenc_ascii_is_code_ctype): moved from enc/ascii.c.
13381         * regenc.h (onigenc_ascii_is_code_ctype): declared.
13383         * enc/ascii.c: use onigenc_ascii_is_code_ctype.
13385         * enc/us_ascii.c: new file for US-ASCII.
13387 Sat Dec 22 14:30:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13389         * parse.y (reg_named_capture_assign_iter): allows non-ascii names and
13390           get rid of reserved word IDs.
13392 Sat Dec 22 14:18:45 2007  Koichi Sasada  <ko1@atdot.net>
13394         * test/ruby/test_float.rb, test_sprintf.rb: fix test place.
13396 Sat Dec 22 14:17:02 2007  Koichi Sasada  <ko1@atdot.net>
13398         * bootstraptest/test_objectspace.rb: skip frozen string.
13400 Sat Dec 22 14:02:58 2007  Koichi Sasada  <ko1@atdot.net>
13402         * array.c (rb_ary_permutation): add volatile to avoid GC problem.
13404 Sat Dec 22 11:47:42 2007  Koichi Sasada  <ko1@atdot.net>
13406         * eval.c (rb_obj_instance_eval): use class of immediate objects.
13408         * test/ruby/test_eval.rb: fix a test.
13410 Sat Dec 22 11:37:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13412         * encoding.c (rb_locale_charmap): win32 support.
13414 Sat Dec 22 11:31:14 2007  Eric Hodel  <drbrain@segment7.net>
13416         * gem_prelude.rb:  Place bin dir before lib dir so gem bin stubs work.
13418 Sat Dec 22 11:05:44 2007  Jim Weirich  <jim@tardis.local>
13420         * lib/rake.rb (Rake): Added Rake and related libraries to the
13421           source code base.
13423 Sat Dec 22 10:30:45 2007  Koichi Sasada  <ko1@atdot.net>
13425         * tool/insns2vm.rb: moved from lib/vm/instruction.rb.
13427 Sat Dec 22 10:25:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13429         * parse.y (reg_named_capture_assign_iter): captured name should
13430           not be reserved word.  a patch from Keita Yamaguchi
13431           <keita.yamaguchi AT gmail.com> in [ruby-dev:32675].
13433         * parse.y (reg_named_capture_assign_iter): just ignore the
13434           captures that do not have valid local variable name.
13436 Sat Dec 22 10:19:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13438         * eval.c (rb_f_method_name): now __method__ and __callee__ are
13439           aliases.  [ruby-core:14244]
13441 Sat Dec 22 08:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13443         * string.c (rb_str_buf_append): improvement for non-broken coded
13444           strings.
13446 Sat Dec 22 06:30:04 2007  Koichi Sasada  <ko1@atdot.net>
13448         * bootstraptest/test_fork.rb: skip if fork is not unsupported.
13450         * bootstraptest/test_io.rb: skip if require failed.
13452 Sat Dec 22 06:09:12 2007  David Flanagan  <david@davidflanagan.com>
13454         * io.c: fix typo in rdoc comment
13456 Sat Dec 22 05:09:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13458         * parse.y (parser_str_new, rb_intern3): rb_default_encoding() renamed.
13460         * ext/nkf/nkf.c (rb_nkf_putchar): ditto.
13462 Sat Dec 22 03:54:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13464         * encoding.c (rb_ascii_encoding): renamed from previous
13465           rb_default_encoding().
13467 Sat Dec 22 02:49:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13469         * parse.y (command): block from cmd_brace_block was ignored.
13470           [ruby-dev:32644]
13472         * re.c (rb_reg_prepare_re): stop ENCODING_NONE warning if the
13473           encoding of the str is ASCII-8BIT.
13475 Sat Dec 22 01:52:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13477         * io.c (io_ungetc): avoid buffer relocation, which might cause
13478           serious problem under concurrent situation.
13480 Sat Dec 22 01:35:41 2007  Tanaka Akira  <akr@fsij.org>
13482         * re.c (ARG_ENCODING_NONE): defined for /.../n option.
13483           (REG_ENCODING_NONE): ditto.
13484           (rb_char_to_option_kcode): return ARG_ENCODING_NONE for n.
13485           (rb_reg_prepare_re): warn /ascii/n =~ "non-ascii".
13486           (rb_reg_initialize): set REG_ENCODING_NONE from ARG_ENCODING_NONE.
13488 Sat Dec 22 01:23:10 2007  Shugo Maeda  <shugo@ruby-lang.org>
13490         * test/json/test_json_addition.rb (test_core): do not use Time.now
13491           because JSON can't hold nsec.
13493 Sat Dec 22 01:10:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13495         * ext/tk/sample/tkextlib/vu/canvSticker2.rb,
13496           ext/tk/sample/demos-{en,jp}/bind.rb: fix typo. [ruby-dev:32668]
13498 Sat Dec 22 00:56:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13500         * sample/test.rb (valid_syntax): force_encoding input script.
13502 Fri Dec 21 23:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13504         * lib/mkmf.rb (depend_rules): suffixes list broken. fixed.
13506 Fri Dec 21 20:18:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13508         * bignum.c (rb_big_mul0): remove unused variable.
13510         * bignum.c (bigdivrem): ditto.
13512 Fri Dec 21 20:13:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13514         * include/ruby/ruby.h (rb_catch_obj, rb_throw_obj): prototyped.
13516         * include/ruby/intern.h (rb_fiber_alive_p): prototyped.
13518 Fri Dec 21 20:09:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13520         * string.c (rb_str_succ): retry increasing until valid char is found.
13522 Fri Dec 21 20:00:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13524         * encoding.c (rb_enc_replicate): now creates first class encoding.
13526         * encoding.c (rb_define_dummy_encoding): always based on the default
13527           encoding.
13529         * encoding.c (rb_enc_dummy_p): check if dummy.
13531         * encoding.c (enc_inspect): shows if dummy.
13533         * encoding.c (Init_Encoding): added dummy? method
13535         * include/ruby/encoding.h (ENCODING_INLINE_MAX): increased.
13537 Fri Dec 21 18:40:54 2007  Koichi Sasada  <ko1@atdot.net>
13539         * io.c: write() should be in blocking region.
13541         * bootstraptest/test_io.rb, test_knownbug.rb: move a fixed test.
13543 Fri Dec 21 17:56:30 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
13545         * ext/tk/tcltklib.c: provisional support on Ruby-VM.
13547         * ext/tk/MANUAL_tcltklib.eng, ext/tk/MANUAL_tcltklib.eucj:
13548           modify document about new functions.
13550         * ext/tk/lib/tk.rb, ext/tk/lib/tk/labelframe.rb,
13551           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/toplevel.rb,
13552           ext/tk/lib/tk/scrollbar.rb, ext/tk/lib/tk/message.rb,
13553           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/text.rb,
13554           ext/tk/lib/tk/scale.rb, ext/tk/lib/tk/entry.rb,
13555           ext/tk/lib/tk/ttk_selector.rb, ext/tk/lib/tk/menu.rb,
13556           ext/tk/lib/tk/label.rb, ext/tk/lib/tk/spinbox.rb,
13557           ext/tk/lib/tk/textmark.rb, ext/tk/lib/tk/winpkg.rb,
13558           ext/tk/lib/tk/checkbutton.rb, ext/tk/lib/tk/panedwindow.rb,
13559           ext/tk/lib/tk/texttag.rb, ext/tk/lib/tk/root.rb,
13560           ext/tk/lib/tk/textimage.rb, ext/tk/lib/tk/radiobutton.rb,
13561           ext/tk/lib/tk/package.rb, ext/tk/lib/tk/macpkg.rb,
13562           ext/tk/lib/tk/composite.rb, ext/tk/lib/tk/autoload.rb,
13563           ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/button.rb,
13564           ext/tk/lib/tk/textwindow.rb,
13565           ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb,
13566           ext/tk/lib/tkextlib/tile/style.rb,
13567           ext/tk/lib/tkextlib/tile/tscrollbar.rb,
13568           ext/tk/lib/tkextlib/tile/tpaned.rb, ext/tk/lib/tkextlib/tile.rb,
13569           ext/tk/extconf.rb: support Tcl/Tk8.5 (partial, not complete).
13571         * ext/tk/sample/demos-jp/widget,
13572           ext/tk/sample/demos-jp/pendulum.rb,
13573           ext/tk/sample/demos-jp/bind.rb,
13574           ext/tk/sample/tkextlib/vu/canvSticker2.rb,
13575           ext/tk/sample/demos-en/pendulum.rb,
13576           ext/tk/sample/demos-en/bind.rb: remove $KCODE and minor bug fix.
13578 Fri Dec 21 17:49:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13580         * transcode.c (rb_str_transcode_bang): returns self if no conversion.
13581           [ruby-dev:32662]
13583 Fri Dec 21 17:44:47 2007  Eric Hodel  <drbrain@segment7.net>
13585         * lib/rubygems*:  Update to RubyGems 1.0.1, r1581
13587 Fri Dec 21 17:32:49 2007  Koichi Sasada  <ko1@atdot.net>
13589         * bootstraptest/pending.rb: renamed from featurebug.rb.
13590           This file contains bugs which is known but will not be
13591           fixed in days.
13593 Fri Dec 21 17:31:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13595         * debug.c (dummy_gdb_enums.various): added ENCODING and CODERANGE
13596           constants.
13598         * .gdbinit: use enum constants.
13600 Fri Dec 21 17:28:17 2007  Koichi Sasada  <ko1@atdot.net>
13602         * bootstraptest/featurebug.rb: added.
13604         * bootstraptest/test_knownbug.rb: move a feature bug.
13606 Fri Dec 21 17:25:22 2007  Koichi Sasada  <ko1@atdot.net>
13608         * thread.c (rb_thread_atfork): fix to mark thread object.
13609           [ruby-dev:32404]
13611         * bootstraptest/test_knownbug.rb, test_fork.rb: move a fixed test.
13613 Fri Dec 21 17:07:13 2007  Koichi Sasada  <ko1@atdot.net>
13615         * gc.h: extern variable should not be initialized.
13617         * thread_pthread.c: add a parameter.
13619 Fri Dec 21 16:50:43 2007  Tanaka Akira  <akr@fsij.org>
13621         * encoding.c (Init_Encoding): use enc_name as to_s.
13622           (enc_inspect): renamed from enc_to_s.  add "#" at beginning.
13624 Fri Dec 21 16:37:43 2007  NARUSE, Yui <naruse@ruby-lang.org>
13626         * ext/nkf/nkf-utf8/config.h (MIME_DECODE_DEFAULT, X0201_DEFAULT):
13627          defined as FALSE.  nkf and kconv don't decode MIME encoded string
13628          and don't convert JIS X 0201 Katakana.
13630         * test/nkf/test_kconv.rb: fix tests.
13632 Fri Dec 21 16:33:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13634         * enumerator.c (enumerator_iter_i): adjusted for rb_block_call_func.
13636         * include/ruby/ruby.h (rb_block_call_func): function to be called back
13637           as block.
13639 Fri Dec 21 16:25:25 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13641         * common.mk, transcode_data_iso_8859.c: renamed to
13642           transcode_data_one_byte.c.
13644 Fri Dec 21 16:10:30 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
13646         * ext/bigdecimal/bigdecimal.c (VpMidRound): Round method bug
13647           pointed by Ryan Platte fixed(Patch to the patch from "NATORI
13648           Shin").  [ruby-talk:273360]
13650 Fri Dec 21 16:06:13 2007  Tanaka Akira  <akr@fsij.org>
13652         * re.c (append_utf8): use rb_utf8_encoding() instead of
13653           rb_enc_find("utf-8").
13655 Fri Dec 21 15:59:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13657         * encoding.c (rb_enc_init): use enc_register_at() directly.
13659         * encoding.c (rb_utf8_encoding): returns utf-8 encoding.
13661         * include/ruby/encoding.h (rb_utf8_encoding): prototyped.
13663         * parse.y (UTF8_ENC): uses rb_utf8_encoding().
13665 Fri Dec 21 15:31:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13667         * io.c (rb_io_s_read): allow specifying encoding explicitly.
13669         * io.c (rb_io_binmode): specifies encoding to ASCII-8BIT (binary).
13671         * io.c (rb_io_s_read): IO should be in binary mode when offset is
13672           specified.
13674         * encoding.c (rb_to_encoding): returns default encoding if no
13675           corresponding encoding found.
13677 Fri Dec 21 15:24:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
13679         * lib/net/imap.rb (initialize): accept service name.  changed
13680           the default value of the old style +verify+ argument to true.
13682 Fri Dec 21 15:15:44 2007  Tanaka Akira  <akr@fsij.org>
13684         * gc.c (rb_garbage_collect): new function for debugging.
13686 Fri Dec 21 15:16:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13688         * encoding.c (rb_to_encoding_index): should return error instead of
13689           exception even if type is incorrect.
13691 Fri Dec 21 14:58:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13693         * enumerator.c (enumerator_init_copy): prohibit cloning of
13694           generators since Fibers cannot be copied.
13696         * enumerator.c (enumerator_init_copy): typo fixed.
13698 Fri Dec 21 14:46:07 2007  Tanaka Akira  <akr@fsij.org>
13700         * io.c (Init_IO): define IO::BINARY even if O_BINARY is not exist.
13702 Fri Dec 21 14:01:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13704         * test/ruby/test_system.rb (TestSystem::valid_syntax): apply
13705           ASCII-8BIT encoding explicitly.
13707         * re.c (rb_reg_prepare_re): add encoding name in the message.
13709 Fri Dec 21 13:54:05 2007  Tanaka Akira  <akr@fsij.org>
13711         * re.c: change "character encodings differ" error messages.
13713 Fri Dec 21 13:46:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13715         * encoding.c (rb_enc_register): set encoding constant.
13717         * encoding.c (rb_enc_find_index): replace non-alphanumeric chars with
13718           underscores, so that initialize function can be called.
13720         * encoding.c (rb_enc_find_index): extension libraries have lower case
13721           names conventionally.
13723         * ruby.c (proc_options, process_options): finds encoding after
13724           load_path is initialized.
13726 Fri Dec 21 13:10:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13728         * io.c (rb_io_external_encoding): new method.
13730         * encoding.c (rb_enc_from_encoding): returns Qnil for NULL
13731           encoding.
13733         * io.c (rb_io_external_encoding): should fill delayed
13734           initialization for STDIN.
13736 Fri Dec 21 13:09:11 2007  Tanaka Akira  <akr@fsij.org>
13738         * encoding.c (rb_locale_charmap): return nil if no locale information.
13740 Fri Dec 21 12:55:39 2007  Tanaka Akira  <akr@fsij.org>
13742         * lib/runit, lib/rubyunit.rb, test/testunit/runit: removed.
13744 Fri Dec 21 12:45:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13746         * string.c (rb_str_chomp_bang): avoid unnecessary loop using
13747           ONIGENC_LEFT_ADJUST_CHAR_HEAD().
13749 Fri Dec 21 12:32:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13751         * file.c (Init_File): File.exists? revived.
13753         * dir.c (Init_Dir): Dir.exists? again.
13755 Fri Dec 21 12:26:36 2007  Koichi Sasada  <ko1@atdot.net>
13757         * compile.c: remove "illegal".
13759 Fri Dec 21 12:22:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13761         * keywords, parse.y (__ENCODING__): represent script encoding.
13763 Fri Dec 21 12:16:50 2007  Tanaka Akira  <akr@fsij.org>
13765         * string.c (rb_str_is_ascii_only_p): new method ascii_only?.
13767 Fri Dec 21 12:11:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13769         * io.c (rb_io_mode_enc): set default external encoding if no
13770           encoding specified explicitly.
13772 Fri Dec 21 12:00:34 2007  Tanaka Akira  <akr@fsij.org>
13774         * configure.in: check langinfo.h and locale.h.
13776         * encoding.c: use langinfo.h only if available.
13778         * main.c: use locale.h only if available.
13780 Fri Dec 21 11:47:56 2007  Tanaka Akira  <akr@fsij.org>
13782         * encoding.c: include locale.h
13783           (rb_locale_charmap): new method Encoding.locale_charmap for
13784           nl_langinfo(CODESET).
13786         * include/ruby/encoding.h (rb_locale_charmap): declared.
13788         * main.c (main): call setlocale with LC_CTYPE.
13790         * ruby.c (locale_encoding): use rb_locale_charmap.
13792 Fri Dec 21 11:35:10 2007  Koichi Sasada  <ko1@atdot.net>
13794         * vm.c, vm_dump.c: fix typo.  Reported by Yuki Mitsui.
13796 Fri Dec 21 11:28:00 2007  Tanaka Akira  <akr@fsij.org>
13798         * regerror.c, string.c, io.c, lib/getoptlong.rb, lib/net/imap.rb,
13799           compile.c, sprintf.c, parse.y, ext/win32ole/win32ole.c,
13800           ext/tk/sample/demos-en/entry3.rb, ext/tk/lib/tcltk.rb,
13801           ext/openssl/ossl_bn.c, numeric.c, vm.c,
13802           benchmark/bm_so_meteor_contest.rb, bignum.c, ruby.c: don't "illegal"
13803           for non law violation context.
13805 Fri Dec 21 11:23:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13807         * common.mk (enc.mk): depends on $(RBCONFIG) instead of rbconfig.rb.
13809         * encoding.c (Init_Encoding): ISO-8859-1 is no longer a replica.
13811         * regenc.h (OnigEncodingDefine): names of extension and encoding can
13812           differ.
13814         * enc/Makefile.in: always shared.
13816         * enc/depend (deffile): should not upcase.
13818         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: fix for Init.
13820 Fri Dec 21 09:26:48 2007  Tanaka Akira  <akr@fsij.org>
13822         * tool/compile_prelude.rb: use erb.
13824 Fri Dec 21 08:07:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13826         * enumerator.c (enumerator_next): should call next_init() if fiber
13827           is dead already. [ruby-dev:32459]
13829 Fri Dec 21 01:21:49 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13831         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
13832           enable CRL checking by default.
13834 Fri Dec 21 01:20:56 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13836         * lib/net/http.rb (Net::HTTP#connect): use
13837           OpenSSL::SSL::SSLContext.build instead of SSLContext.new (default
13838           verify mode is now OpenSSL::SSL::VERIFY_PEER).
13840         * lib/net/https.rb: SSL parameters are defined by attr_accessor.
13842         * test/net/http/test_https.rb: add test for HTTPS features.
13844 Fri Dec 21 01:11:37 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
13846         * io.c (select_internal): should return original value.
13848 Fri Dec 21 00:26:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13850         * string.c (tr_trans): wrong encoding check for tree strings.
13852         * test/ruby/test_m17n.rb (TestM17N::test_tr_s): "invalid mbstring
13853           sequence" is not an error to be tested.
13855         * test/ruby/test_m17n.rb (TestM17N::test_tr): ditto.
13857 Thu Dec 20 19:29:07 2007  Shugo Maeda  <shugo@ruby-lang.org>
13859         * lib/net/imap.rb (initialize): the second argument is an option
13860           hash now.  use SSLContext.build to specify SSL parameters.
13862 Thu Dec 20 19:11:56 2007  Koichi Sasada  <ko1@atdot.net>
13864         * thread_pthread.c (native_thread_apply_priority): check
13865           _POSIX_PRIORITY_SCHEDULING for OpenBSD.
13867 Thu Dec 20 18:33:54 2007  Koichi Sasada  <ko1@atdot.net>
13869         * configure.in: add libthr for FreeBSD.
13871 Thu Dec 20 18:17:14 2007  Koichi Sasada  <ko1@atdot.net>
13873         * common.mk, *.ci: renamed to *.c.
13875         * eval_load.c: renamed to load.c.
13877 Thu Dec 20 17:36:01 2007  Eric Hodel  <drbrain@segment7.net>
13879         * lib/rubygems*:  Import RubyGems 1.0.0, r1575.
13881 Thu Dec 20 17:18:38 2007  Koichi Sasada  <ko1@atdot.net>
13883         * proc.c: support Proc#binding.
13885         * sample/test.rb: add a test.
13887 Thu Dec 20 17:15:15 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
13889         * pack.c: Slight change to documentation ('character' ->
13890           'byte (C char)'). [ruby-core:13126], see also [ruby-core:13998].
13892 Thu Dec 20 17:07:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13894         * common.mk (enc.mk): depends on rbconfig.rb.
13896         * regenc.h (OnigEncodingDefine): external encoding definition macro.
13898         * enc/Makefile.in: fix for linking.
13900         * enc/depend, enc/make_encmake.rb: fix for Windows.
13902         * enc/{ascii,euc_jp,sjis,utf8,iso_8859_{1..16}}.c: renamed.
13904 Thu Dec 20 16:42:55 2007  Koichi Sasada  <ko1@atdot.net>
13906         * iseq.c (find_line_no): return 0 if not found.
13908 Thu Dec 20 16:04:17 2007  Koichi Sasada  <ko1@atdot.net>
13910         * insnhelper.ci, vm.c, vm_core.h: change interface of
13911           vm_invoke_block() to specify block ptr.  [ruby-talk:266422]
13913         * cont.c, eval_jump.ci, insns.def, proc.c, signal.c, thread.c:
13914           apply above change.
13916         * bootstraptest/test_knownbug.rb: move fixed bug.
13918         * bootstraptest/test_block.rb: ditto. and add a test.
13920 Thu Dec 20 15:47:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13922         * enc/iso_8859_{1..16}.c: renamed.
13924 Thu Dec 20 09:59:27 2007  Koichi Sasada  <ko1@atdot.net>
13926         * insnhelper.ci (vm_expandarray): fix sp increase place.
13927           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32581].
13929         * bootstraptest/test_massign.rb: add a test for above.
13931         * bootstraptest/test_syntax.rb: fix last committed test.
13933 Thu Dec 20 09:47:58 2007  Koichi Sasada  <ko1@atdot.net>
13935         * bootstraptest/test_syntax.rb: add a test.
13937 Thu Dec 20 09:40:51 2007  Koichi Sasada  <ko1@atdot.net>
13939         * compile.c (iseq_compile_each/NODE_RETURN): fix stack consistency.
13941 Thu Dec 20 09:42:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13943         * bignum.c (big2str_orig): access beyond memory region cause crash
13944           on interrupt.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in
13945           [ruby-dev:32651].  [ruby-dev:32641]
13947 Thu Dec 20 09:06:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13949         * string.c (rb_str_index): wrong starting position.
13951 Thu Dec 20 06:34:27 2007  Koichi Sasada  <ko1@atdot.net>
13953         * compile.c (iseq_compile_each): add pop after throw as return.
13955         * bootstraptest/test_knownbug.rb, test_syntax.rb: move resolved test.
13957         * vm_core.h, iseq.c, compile.h: add debug output code.
13959 Thu Dec 20 04:57:18 2007  Koichi Sasada  <ko1@atdot.net>
13961         * compile.c (iseq_compile_each): remove unused retry entry.
13963 Thu Dec 20 04:15:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
13965         * */Makefile.sub (DEFS, RM): output to config.status.
13967 Thu Dec 20 02:59:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
13969         * common.mk (encs): create encoding directory.
13971 Thu Dec 20 02:50:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13973         * enc/iso8859_{1..16}.c: adjust for ruby.
13975 Thu Dec 20 02:28:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13977         * enc/iso8859_{1..16}.c: imported from Onigiruma 5.9.0.
13979 Thu Dec 20 02:23:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13981         * enc/Makefile.in (RM): added.
13983         * enc/depend (encs): sort in alpha-numeric order.
13985         * enc/depend (clean, distclean): added.
13987 Thu Dec 20 01:10:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
13989         * compile.c (iseq_compile_each): should handle upper level eval iseq
13990           from break/next, and COMPILE_ERROR() breaks only one block.
13991           [ruby-dev:31372]
13993 Thu Dec 20 00:07:36 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
13995         * test/drb/drbtest.rb (test_07_public_private_protected_missing):
13996           followed current Ruby specification.
13998 Wed Dec 19 23:57:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14000         * dir.c (dir_inspect, dir_path, dir_tell): check for frozen and closed
14001           is not needed.  [ruby-dev:32640]
14003 Wed Dec 19 22:59:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14005         * string.c (str_sublen): adjust position if position is not at the
14006           head of a character.
14008         * string.c (rb_str_chomp_bang): check if match start at the head
14009           of a character.
14011         * string.c (rb_str_chomp_bang): wrong adjust condition.
14013         * string.c (rb_str_rindex): comparison length should be based on
14014           bytes, not characters.
14016         * string.c (rb_str_rindex_m): too much adjustment.
14018         * re.c (reg_match_pos): pos adjustment should be based on
14019           characters.
14021         * test/ruby/test_m17n.rb (TestM17N::test_str_insert): test updated
14022           to check negative offset behavior.
14024         * string.c (rb_str_each_line): should consider rslen.
14026         * string.c (rb_str_buf_append): should propagate encoding.
14028         * string.c (rb_str_each_line): ditto.
14030         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): should
14031           check encoding as well.
14033         * test/ruby/test_m17n.rb (TestM17N::test_str_each_line): empty
14034           array can not propagate encoding;  should not check.
14036 Wed Dec 19 21:42:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14038         * re.c (rb_reg_regsub): should set checked encoding.
14040         * string.c (rb_str_sub_bang): applied r14212 too.
14042 Wed Dec 19 20:40:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14044         * bignum.c (bigmul1): C99ism.
14046         * bignum.c (bigdivrem1): need dummy return value.
14048 Wed Dec 19 19:18:06 2007  NARUSE, Yui <naruse@ruby-lang.org>
14050         * ext/nkf/nkf-utf8/nkf.c: Updated.
14052         * ext/nkf/nkf.c (rb_nkf_enc_get): added.
14053           (find encoding or replicate default encoding)
14055         * ext/nkf/nkf.c (NKF::<ENCODING>): redefine encoding constant.
14057         * ext/nkf/lib/kconv.rb (Kconv::<ENCODING>): redefined as Encoding.
14059         * ext/nkf/lib/kconv.rb: refactoring.
14061 Wed Dec 19 19:11:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14063         * bignum.c (rb_big_mul0): blocking check for bigger numbers.
14064           a patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32632].
14066         * bignum.c (bigdivrem): ditto.
14068 Wed Dec 19 17:34:50 2007  Koichi Sasada  <ko1@atdot.net>
14070         * compile.c (iseq_compile_each): remove "retry" in block.
14071           ("iter{retry}" cause syntax error)
14072           Currently, "begin; ...; rescue; iter{retry}; end" cause
14073           syntax error too.
14075         * bootstraptest/test_jump.rb: ditto.
14077         * lib/drb/invokemethod.rb: ditto.
14079         * sample/drb/darrayc.rb: ditto.
14081         * sample/test.rb: ditto.
14083         * test/drb/drbtest.rb: ditto.
14085         * test/ruby/test_iterator.rb: ditto.
14087         * sample/test.rb: add a 'test' directory on the SYSTEM test.
14089 Wed Dec 19 17:12:59 2007  Koichi Sasada  <ko1@atdot.net>
14091         * bootstraptest/test_knownbug.rb, test_block.rb:
14092           move fixed bug.
14094         * bootstraptest/test_m17n.rb: added.
14096 Wed Dec 19 16:59:55 2007  Koichi Sasada  <ko1@atdot.net>
14098         * eval.c (errinfo_place): skip if error is Fixnum.  [ruby-dev:32608]
14100         * bootstraptest/test_exception.rb, test_known_bug.rb: move fixed bug.
14102 Wed Dec 19 16:31:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14104         * parse.y (reg_named_capture_assign_iter): remove C99 dependency.
14106         * parse.y (reg_named_capture_assign_iter): get rid of creating
14107           unnecessary ID.
14109         * parse.y (rb_enc_symname2_p): check for non-nul-terminated string.
14111 Wed Dec 19 15:37:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14113         * insnhelper.ci (vm_yield_with_cfunc): call cfunc with
14114            (argv[0], data, argc, argv) to pass all arguments.
14116         * enumerator.c (enumerator_each_i): adapted to new calling
14117           convention.
14119 Wed Dec 19 15:13:20 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14121         * string.c (rb_str_justify): should propagate encoding from pad
14122           string too.
14124 Wed Dec 19 13:57:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14126         * configure.in (TIMEZONE_VOID): check whether timezone requires zero
14127           arguments.  [ruby-dev:32631]
14129 Wed Dec 19 13:22:14 2007  NARUSE, Yui <naruse@ruby-lang.org>
14131         * ext/nkf/nkf.c (NKF::_ENCODING): removed.
14133         * ext/nkf/nkf.c (rb_nkf_kconv): renamed to rb_nkf_convert.
14135         * ext/nkf/nkf.c (rb_nkf_convert): set encoding.
14137         * ext/nkf/nkf.c (rb_nkf_guess1): removed.
14139         * ext/nkf/nkf.c (rb_nkf_guess2): renamed to rb_nkf_guess.
14141         * ext/nkf/nkf.c (rb_nkf_guess):
14142           guess method now returns encoding object.
14144         * ext/nkf/nkf-utf8/nkf.c: Update to nkf 2.0.8 2007-12-19.
14146 Wed Dec 19 10:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14148         * bignum.c (rb_cstr_to_inum): an underscore succeeding after octal
14149           prefix is allowed.  [ruby-core:14139]
14151 Wed Dec 19 00:09:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14153         * bignum.c (rb_cstr_to_inum): wrong radix check.  a patch from
14154           Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-dev:32628].
14156         * bignum.c (big2str_find_n1): ditto.
14158 Tue Dec 18 23:53:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14160         * compile.c (iseq_compile_each): fix for segfault.  [ruby-dev:31372]
14162 Tue Dec 18 23:44:32 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14164         * test/net/http/utils.rb: split TestNetHTTPUtils module from
14165           test/net/http/test_http.rb. and start HTTP server in each test case.
14167 Tue Dec 18 23:27:51 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14169         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
14170           should rescue Errno::EINVAL from TCPServer#accept. this exception
14171           might occur if the server socket is not in ready to listen.
14173         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
14174           don't call TCPServer#close if the :ShutdownSocketWithoutClose is set.
14176         * lib/webrick/config.rb (WEBrick::Config::General): add new parameter
14177           :ShutdownSocketWithoutClose.
14179 Tue Dec 18 22:51:47 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14181         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#shutdown):
14182           new method which calls TCPSocket#shutdown of the underlying socket.
14184 Tue Dec 18 22:11:50 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14186         * lib/rss/parser.rb, lib/rss/atom.rb, lib/rss/rss.rb,
14187           test/rss/rss-assertions.rb, test/rss/test_atom.rb: use
14188           pack/unpack("m") instead of base64 library.
14190         * lib/webrick/httpproxy.rb: use delete("\n") instead of chomp/chop
14191           because the result of pack("m") might be multi-line.
14193 Tue Dec 18 22:12:35 2007  Koichi Sasada  <ko1@atdot.net>
14195         * insnhelper.ci, vm.c: rewrite sp manipulation around method/block
14196           invocation.  [ruby-dev:32547]
14198 Tue Dec 18 22:11:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
14200         * ext/dl/win32/lib/win32/sspi.rb: use pack/unpack("m") instead of
14201           base64 library which was already removed.
14203 Tue Dec 18 21:09:23 2007  Koichi Sasada  <ko1@atdot.net>
14205         * vm.c (invoke_block): merge 2 stack overflow checks.
14207 Tue Dec 18 20:58:35 2007  Koichi Sasada  <ko1@atdot.net>
14209         * compile.c, insnhelper.ci, insns.def, object.c, vm.c, vm.h:
14210           optimize !@, != method invocation.
14212         * id.c, id.h: ditto.
14214         * bootstraptest/test_syntax.rb: add tests for above.
14216 Tue Dec 18 18:10:05 2007  Koichi Sasada  <ko1@atdot.net>
14218         * bootstraptest/test_knownbug.rb: add issues.
14220 Tue Dec 18 20:22:44 2007  Tanaka Akira  <akr@fsij.org>
14222         * parse.y (arg tMATCH arg): call reg_named_capture_assign_gen if regexp
14223           literal is used.
14224           (reg_named_capture_assign_gen): assign the result of named capture
14225           into local variables.
14226           [ruby-dev:32588]
14228         * re.c: document the assignment by named captures.
14230 Tue Dec 18 18:09:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14232         * string.c (rb_str_splice): propagate encoding.
14234         * string.c (rb_str_subpat_set): ditto.
14236 Tue Dec 18 17:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14238         * object.c (rb_obj_freeze): preserve frozen state of immediate
14239           values in internal hash table, a la generic_ivar.
14241         * object.c (rb_obj_frozen_p): check immediate values too.
14243         * variable.c (generic_ivar_set): add frozen check fro immediate
14244           values.
14246 Tue Dec 18 17:04:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14248         * transcode.c (rb_str_transcode_bang, rb_str_transcode): set new
14249           encoding even if no conversion is done because of 7bit only.
14250           [ruby-dev:32591]
14252 Tue Dec 18 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14254         * common.mk (encs, ext/ripper/ripper.c): other options must come
14255           before MAKEFLAGS in GNU make.
14257 Tue Dec 18 15:19:55 2007  Eric Hodel  <drbrain@segment7.net>
14259         * lib/rdoc/parsers/parse_rb.rb: Don't call private fail anymore.
14261 Tue Dec 18 15:17:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14263         * common.mk (encs, ext/ripper/ripper.c): pass MAKEFLAGS.
14265 Tue Dec 18 14:45:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14267         * parse.y (op_tbl): remove duplication to avoid symbol aliases.
14269 Tue Dec 18 14:39:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14271         * string.c (str_nth): need not to raise out-of-range exception.
14273         * test/ruby/test_m17n.rb (TestM17N::test_str_aref_len): removed
14274           debug print.
14276 Tue Dec 18 14:05:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14278         * enc/depend: get rid of target expanded as empty for nmake.
14280 Tue Dec 18 07:56:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14282         * proc.c (rb_obj_public_method): Object#public_method to retrieve
14283           public method object.
14285         * proc.c (rb_mod_public_instance_method): Module#public_instance_method
14286           to retrieve public instance method from class / module.
14288         * proc.c (mnew): visibility check added.
14290         * eval_error.ci (rb_print_undef): add rb_ prefix.
14292         * eval_error.ci (rb_print_undef): add visibility in the error
14293           message.
14295 Tue Dec 18 05:54:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14297         * lib/Env.rb, lib/base64.rb, lib/importenv.rb, lib/eregex.rb: removed.
14299         * lib/ping.rb, lib/readbytes.rb: removed
14301 Tue Dec 18 02:30:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14303         * configure.in (BUILTIN_ENCS): removed.
14305         * common.mk (enc.mk): pass BUILTIN_ENCS from command line.
14307         * enc/depend: ditto.
14309         * enc/make_encmake.rb: ditto.
14311 Tue Dec 18 01:46:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14313         * sprintf.c (rb_str_format): need to clear output buffer to avoid
14314           broken encoding compatibility check.
14316 Tue Dec 18 01:40:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14318         * lib/mkmf.rb (depend_rules): inserts ruby to only headers.
14320 Tue Dec 18 01:21:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14322         * parse.y (parser_encode_length): chomp eol style modifiers.
14324         * parse.y (parser_magic_comment): ditto.
14326         * parse.y (set_file_encoding): ditto.
14328 Tue Dec 18 01:15:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14330         * common.mk (encs): added dependencies.
14332         * enc/Makefile.in, enc/depend, enc/make_encmake.rb: moved serb code.
14334         * lib/mkmf.rb (depend_rules): now takes content string, not file name.
14336         * win32/enc-setup.mak: overrides default target.
14338 Tue Dec 18 00:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14340         * re.c (rb_reg_initialize): raise error if non-Unicode fixed
14341           encoding option is specified for regexp literals with \u{}
14342           escapes.
14344         * string.c (rb_str_squeeze_bang): should squeeze multibyte
14345           characters as well.
14347 Mon Dec 17 21:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14349         * win32/enc-setup.mak: extracts BUILTIN_ENCOBJS.
14351         * tool/compile_prelude.rb: needs srcdir.
14353 Mon Dec 17 21:24:04 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14355         * common.mk (miniprelude.c): add -I$(srcdir).
14357 Mon Dec 17 20:53:27 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14359         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ssl_version):
14360           new method OpenSSL::SSL::SSLContext#ssl_version to wrap
14361           SSL_CTX_set_ssl_version.
14363         * ext/openssl/ossl_ssl.c (ossl_ssl_get_verify_result):
14364           new method OpenSSL::SSL::SSLSocket#verify_result to wrap
14365           SSL_get_verify_result.
14367         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLContext.build):
14368           new method to build OpenSSL::SSL::SSLContext with Hash parameters.
14369           this method provides safety default parameters than SSLContext.new.
14371         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL.verify_certificate_identity):
14372           new module function: pull out identity verification process
14373           from OpenSSL::SSL::SSLSocket#post_connection_check.
14375 Mon Dec 17 18:42:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14377         * string.c (scan_once): need no encoding compatibility check.
14378           it's done inside of re_reg_search().
14380         * string.c (rb_str_split_m): ditto.
14382         * re.c (rb_reg_regsub): ditto.
14384 Mon Dec 17 17:50:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14386         * string.c (rb_str_index): check if substring is broken.
14388         * string.c (rb_str_rindex): ditto.
14390         * string.c (rb_str_succ): should carry over.
14392 Mon Dec 17 17:47:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14394         * common.mk (encs): new target to compile external encodings.
14396         * enc/Makefile.in: became a serb template.
14398         * enc/make_encmake.rb: creates enc.mk from enc/Makefile.in using serb.
14400         * lib/mkmf.rb (relative_from): moved from ext/extmk.rb.
14402         * lib/mkmf.rb ($extmk): true if under to top source directory, not
14403           only ext.
14405         * lib/mkmf.rb (depend_rules): extracted from create_makefile.
14407         * tool/serb.rb (serb): splitted from tool/compile_prelude.rb.
14409 Mon Dec 17 17:32:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14411         * configure.in (MAKEFILES): removed enc/Makefile.
14413         * configure.in (EXTERNAL_ENCOBJS, ENCSOS): removed.
14415         * enc/Makefile.in (BUILTIN_ENCS): includes .c suffix.
14417         * enc/depend: splitted from Makefile.in.
14419         * {bcc32,win32,wince}/setup.mak (-encs-): extracts BUILTIN_ENCOBJS.
14421 Mon Dec 17 17:07:53 2007  Tanaka Akira  <akr@fsij.org>
14423         * string.c (rb_enc_str_asciionly_p): use rb_enc_str_coderange.
14425 Mon Dec 17 16:39:25 2007  Tanaka Akira  <akr@fsij.org>
14427         * string.c (rb_enc_str_coderange): set ENC_CODERANGE_BROKEN using
14428           rb_enc_precise_mbclen.
14429           (rb_str_valid_encoding_p): just check coderange is
14430           ENC_CODERANGE_BROKEN or not.
14432 Mon Dec 17 16:04:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14434         * ext/openssl/lib/openssl/buffering.rb (Buffering#gets): added second
14435           optional argument to specify maximum length limit.
14437 Mon Dec 17 16:02:30 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
14439         * lib/webrick/httprequest.rb, lib/webrick/cgi.rb: Request-Line or
14440           header fields should be read with maximum length. [ruby-talk:231745]
14442 Mon Dec 17 14:03:39 2007  Tanaka Akira  <akr@fsij.org>
14444         * include/ruby/encoding.h (ENC_CODERANGE_VALID): rename from
14445           ENC_CODERANGE_8BIT.
14447         * string.c (rb_enc_str_coderange): follow the renaming.
14449 Mon Dec 17 13:56:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14451         * string.c (tr_find): wrong condition fixed.
14453         * sprintf.c (rb_str_format): check encoding based on result, not
14454           the format string.
14456         * string.c (rb_str_upto): add encoding check.
14458 Mon Dec 17 12:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14460         * Makefile.in (RUNRUBY): added RUNRUBYOPT.
14462 Mon Dec 17 11:38:59 2007  Tanaka Akira  <akr@fsij.org>
14464         * thread_win32.ci (native_thread_create): initialize
14465           th->machine_stack_maxsize as rb_gc_stack_maxsize.
14467 Sun Dec 16 17:07:35 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14469         * transcode.c (transcode_loop): removed special case (-1)
14470           for undefined conversions.
14472         * transcode_data_iso_8859.c: Changed from character constants
14473           ('\xC2') to integer constants (0xC2) for shorter files and
14474           better readability; eliminated duplicated tables; changed
14475           from -1 offset to actual UNDEF entry (not yet distinguishing
14476           UNDEF and ILLEGAL correctly).
14478         * test/ruby/test_transcode.rb: added a test for UNDEF conversion.
14480 Sun Dec 16 14:51:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14482         * configure.in (MAKEFILES): should be enc/Makefile, not GNUmakefile.
14483           [ruby-dev:32609]
14485         * configure.in (BUILTIN_ENCS): removed escapes for OpenBSD.
14487 Sat Dec 15 23:58:46 2007  Tanaka Akira  <akr@fsij.org>
14489         * test/openssl/test_pair.rb (SSLPair#ssl_pair): join the thread, even
14490           on an error.
14492 Sat Dec 15 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
14494         * test/xmlrpc/webrick_testing.rb: join webrick server thread.
14496 Sat Dec 15 22:27:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14498         * configure.in (BUILTIN_ENCS): splitted command line instead of
14499           semicolons for Solaris.
14501 Sat Dec 15 21:38:24 2007  Tanaka Akira  <akr@fsij.org>
14503         * lib/timeout.rb: join the background thread to make sure it is dead.
14505 Sat Dec 15 20:20:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14507         * configure.in (enc/Makefile): add external encoding objects list.
14509         * common.mk (BUILTIN_ENCOBJS): renamed from ENCOBJS.
14511         * configure.in (BUILTIN_ENCS): [] needs to be enclosed because of m4.
14513         * Makefile.in (BUILTIN_ENCOBJS): substituted by autoconf.
14515         * enc/Makefile.in: new file to compile external encoding sources.
14517         * encoding.c (rb_enc_find_index): auto-load external encoding objects
14518           as "ext/ENCODING_NAME".  [ruby-dev:32606]
14520 Sat Dec 15 13:04:30 2007  Tanaka Akira  <akr@fsij.org>
14522         * vm_core.h (rb_thread_t): new member machine_stack_maxsize and
14523           machine_register_stack_maxsize.
14525         * gc.c (rb_gc_stack_maxsize): new global variable for the thread size
14526           of the main thread.
14527           (STACK_LEVEL_MAX): use machine_stack_maxsize of current thread.
14528           (ruby_stack_check): check IA64 register stack.
14529           (ruby_set_stack_size): set rb_gc_stack_maxsize.
14530           (Init_stack): set rb_gc_stack_maxsize.
14532         * thread_pthread.ci (native_thread_create): initialize
14533           th->machine_stack_maxsize and th->machine_register_stack_maxsize.
14535         * vm.c (Init_BareVM): initialize th->machine_stack_maxsize and
14536           th->machine_register_stack_maxsize.
14538         * thread_win32.ci (native_thread_create): initialize
14539           th->machine_stack_maxsize.  not tested.  just a guess at all.
14541         [ruby-dev:32604]
14543 Sat Dec 15 12:58:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14545         * encoding.c (rb_enc_register, rb_enc_replicate, rb_enc_alias): check
14546           if already registered.
14548 Sat Dec 15 01:57:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14550         * lib/rdoc/options.rb (Options::parse): do not access $KCODE any
14551           longer.  [ruby-core:14079]
14553         * lib/irb/init.rb (IRB::IRB.parse_opts): ditto.
14555         * lib/cgi.rb (CGI::CGI): ditto.
14557 Fri Dec 14 18:18:31 2007  Tanaka Akira  <akr@fsij.org>
14559         * thread_pthread.ci (native_thread_create): twice the stack size.
14560           512KB is not enough to complete test-all on Debian GNU/Linux on
14561           IA64.
14563 Fri Dec 14 16:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14565         * io.c (rb_f_p): RDoc update.  a patch from murphy <murphy AT rubychan.de>.
14566           [ruby-core:14010]
14568 Fri Dec 14 16:06:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14570         * string.c (rb_str_cmp): encoding aware comparison.
14572         * string.c (rb_str_casecmp): ditto.
14574 Fri Dec 14 15:25:30 2007  Martin Duerst  <duerst@it.aoyama.ac.jp>
14576         * transcode.c (encoding_equal): new function.
14578         * transcode.c (str_transcode, transcode_dispatch): added two-step
14579           conversion logic via UTF-8.
14581         * transcode.c: some minor formatting fixes
14583         * transcode_data.h, transcode_data_iso_8859.c: Shortened
14584           extremely frequently used macros to shorten file length.
14586         * test/ruby/test_transcode.rb: Fixed name of test class;
14587           added setup method to ensure all necessary encodings exist;
14588           split tests into more test methods; added tests; fixed ordering
14589           of arguments in assert_equal to have expected result first.
14591 Fri Dec 14 13:47:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14593         * common.mk (ruby.imp): fix for circular dependency.  a patch from
14594           Yutaka Kanemoto <kinpoco AT gmail.com> in [ruby-dev:32590].
14596         * regint.h, st.c, ext/json/ext/generator/generator.c: suppress
14597           warnings on AIX.
14599 Fri Dec 14 12:36:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14601         * configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined
14602           and its type.
14604         * configure.in (timezone, altzone): check for recent cygwin.
14606         * missing/strftime.c (strftime): fix for timezone.  [ruby-dev:32536]
14608         * lib/mkmf.rb (try_var): should fail for functions.
14610         * ext/readline/extconf.rb: should use have_func for functions instead
14611           of have_var.
14613 Fri Dec 14 10:25:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14615         * lib/e2mmap.rb (Exception2MessageMapper::E2MM.Raise): $! no
14616           longer modifiable in 1.9.
14618 Fri Dec 14 08:17:24 2007  Tanaka Akira  <akr@fsij.org>
14620         * eval.c (rb_protect): restore root_jmpbuf even if proc exits by
14621           break such as dbm.delete_if { break }.
14623 Fri Dec 14 02:55:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14625         * string.c (str_nth): direct jump if string is 7bit only.  great
14626           performance boost for worst case.
14628         * string.c (str_strlen): direct size if string is 7bit only.
14630 Fri Dec 14 02:29:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14632         * encoding.c (rb_enc_compatible): 1st argument (typically the
14633           receiver) would have higher priority in encoding detection.
14635 Fri Dec 14 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14637         * io.c (rb_io_synchronized): should check if initialized.
14638           [ruby-dev:32585]
14640 Fri Dec 14 00:54:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14642         * re.c (rb_reg_initialize): embedded string may override encoding
14643           of the regular expression.
14645         * re.c (rb_reg_initialize): fix encoding of regular expression if
14646           embedded string has its own encoding specified.
14648 Thu Dec 13 22:16:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14650         * encoding.c (rb_enc_compatible): encoding should never fall back
14651           to ASCII-8BIT unless both encodings are ASCII-8BIT.
14653 Thu Dec 13 20:31:28 2007  Tanaka Akira  <akr@fsij.org>
14655         * string.c (rb_str_shared_replace): make str noembed after free.
14657 Thu Dec 13 20:09:09 2007  Tanaka Akira  <akr@fsij.org>
14659         * eval.c (rb_protect): restore root_jmpbuf to avoid SEGV by
14660           'IO.pipe; [].each.next' with gcc version 3.3.5 (Debian 1:3.3.5-13)
14661           on IA64.
14663 Thu Dec 13 17:51:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14665         * string.c (rb_str_split_m): need not to check encoding if regexp
14666           is empty.
14668         * string.c (rb_str_justify): associate encoding of original to the
14669           result.
14671         * string.c (rb_str_chomp_bang): need to check encoding of record
14672           separator.
14674         * string.c (str_gsub): should copy encoding to the result.
14676         * sprintf.c (rb_str_format): ditto.
14678         * string.c (rb_str_succ): should not enter infinite loop for
14679           non-ASCII, non-alphanumeric character at the bottom.
14681 Thu Dec 13 17:03:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14683         * encoding.c (rb_enc_compatible): should swap encoding indexes too.
14685 Thu Dec 13 16:41:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14687         * encoding.c (rb_enc_compatible): should not judge compatibility
14688           based on rb_enc_asciicompat().
14690 Thu Dec 13 13:09:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14692         * include/ruby/io.h (MakeOpenFile): fptr->enc should be
14693           initialized to zero.  [ruby-dev:32569]
14695 Thu Dec 13 08:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14697         * io.c (rb_io_getc): use default external encoding if fptr->enc is
14698           not set.  [ruby-dev:32565]
14700         * lib/rubygems/package.rb (Gem::TarReader::Entry::rewind): typo fixed.
14701           [ruby-dev:32565]
14703 Thu Dec 13 08:24:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14705         * io.c (read_all): should associate default external encoding.
14707         * io.c (io_read): should NOT associate default external encoding.
14709 Wed Dec 12 23:22:58 2007  Tanaka Akira  <akr@fsij.org>
14711         * re.c, regerror.c, string.c, parse.y, ruby.c, file.c:
14712           use capital letter for \xHH notation.  [ruby-dev:32511]
14714 Wed Dec 12 22:21:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14716         * io.c (rb_io_mode_enc): allow specifying external encoding in
14717           open mode, e.g. open(path, "r:utf-8").
14719 Wed Dec 12 21:26:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14721         * eval_method.ci (rb_alias): no need to skip aliasing when new
14722           equals to old.  [ruby-core:13990]
14724 Wed Dec 12 16:34:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14726         * io.c (rb_io_check_readable): set default external encoding to
14727           STDIN.
14729         * io.c (io_enc_str): associate encoding to output string.
14731 Wed Dec 12 12:44:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14733         * parse.y (expr): 'not' and '!' should act as conditional
14734           expression.   [ruby-dev:32548]
14736 Wed Dec 12 12:11:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14738         * re.c (rb_reg_regsub): should copy encoding.
14740         * string.c (rb_str_sub_bang, str_gsub): should check and copy encoding
14741           to be replaced.
14743 Tue Dec 11 23:04:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14745         * pack.c (pack_pack): RDoc update.  a patch from Gary Wright
14746           <radar2002 AT gmail.com>.  [ruby-core:13998]
14748         * pack.c (pack_unpack): ditto.
14750 Tue Dec 11 16:37:47 2007  Tanaka Akira  <akr@fsij.org>
14752         * encoding.c (rb_enc_ascget): renamed from rb_enc_get_ascii.
14754         * include/ruby/encoding.h: follow the renaming.
14756         * re.c: ditto.
14758 Tue Dec 11 16:19:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14760         * Makefile.in, */Makefile.sub (CP, MV): added.
14762         * common.mk (.y.c): not discard the old target until successfully
14763           created.
14765 Tue Dec 11 15:20:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14767         * object.c (Init_Object): singleton_method_{added,removed,undefined}
14768           hooks should be defined for BasicObject.  [ruby-dev:32531]
14770         * eval.c (Init_eval): method_missing should be defined for all
14771           objects; moved to BasicObject.
14773 Tue Dec 11 14:27:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14775         * transcode.c (transcode_loop): get rid of SEGV at sequence can not be
14776           converted.
14778         * transcode.c (rb_str_transcode_bang): copy encoding.  [ruby-dev:32532]
14780         * test/ruby/test_transcode.rb: added tests from Martin Duerst <duerst
14781           AT it.aoyama.ac.jp>.  [ruby-dev:32532]
14783 Tue Dec 11 12:05:51 2007  Tanaka Akira  <akr@fsij.org>
14785         * encoding.c (rb_enc_get_ascii): add an argument to provide the
14786           length of the returned character.
14788         * include/ruby/encoding.h (rb_enc_get_ascii): add the argument.
14790         * re.c (rb_reg_expr_str): modify rb_enc_get_ascii call.
14791           (rb_reg_quote): ditto.
14792           (rb_reg_regsub): ditto.
14794 Tue Dec 11 09:40:21 2007  Tanaka Akira  <akr@fsij.org>
14796         * include/ruby/oniguruma.h (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE):
14797           parenthesize an argument.
14799 Tue Dec 11 02:23:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14801         * eval.c (rb_method_missing): RDoc update patch from Hugh Sasse
14802           <hgs AT dmu.ac.uk>.  [ruby-core:12932]
14804 Tue Dec 11 01:51:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14806         * lib/net/http.rb (Net::HTTP::get): now supports gzip
14807           content-encoding.  a patch from Hugh Sasse <hgs AT dmu.ac.uk>.
14808           [ruby-core:13451]
14810 Tue Dec 11 01:21:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14812         * parse.y (shadowing_lvar_gen): no duplicate error for "_".
14814 Mon Dec 10 22:08:47 2007  Akinori MUSHA  <knu@iDaemons.org>
14816         * array.c (rb_ary_slice_bang): If an invalid range is given, do
14817           not raise an exception but return nil just like slice() does.
14819 Mon Dec 10 21:47:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14821         * transcode.c (str_transcode): allow non-registered encodings.
14822           [ruby-dev:32520]
14824 Mon Dec 10 21:00:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14826         * array.c (rb_ary_slice_bang): should return nil if position out
14827           of range.  a patch from Akinori MUSHA <knu AT iDaemons.org>.
14828           [ruby-dev:32518]
14830 Mon Dec 10 19:02:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14832         * re.c (rb_reg_match): should calculate offset by converted
14833           operand.  [ruby-cvs:21416]
14835 Mon Dec 10 18:28:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14837         * lib/uri/common.rb (URI::REGEXP::PATTERN): typo in REG_NAME
14838           regular expression.  a patch from Ueda Satoshi
14839           <s-ueda AT livedoor.jp>.  [ruby-dev:32514]
14841 Mon Dec 10 17:46:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14843         * string.c (rb_str_tmp_new): creates hidden temporary buffer.
14845         * transcode.c (transcoding): added a pointer to function to flush.
14847         * transcode.c (transcode_loop): do not use string internal.
14848           [ruby-dev:32512]
14850         * transcode.c (str_transcode): allow Encoding objects.
14852         * transcode_data.h (BYTE_LOOKUP): use actual struct name.
14854 Mon Dec 10 16:52:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14856         * string.c (rb_str_insert): should not add length in bytes to index in
14857           chars.
14859 Mon Dec 10 14:33:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14861         * eval.c (rb_f_public_send): rename invoke_method to public_send.
14862           it now invokes public method only no matter how it's called.
14864 Mon Dec 10 14:00:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14866         * transcode.c: new file to provide encoding conversion features.
14867           code contributed by Martin Duerst.
14869 Mon Dec 10 13:50:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14871         * re.c (rb_reg_search): return byte offset.  [ruby-dev:32452]
14873         * re.c (rb_reg_match, rb_reg_match2, rb_reg_match_m): convert byte
14874           offset to char index.
14876         * string.c (rb_str_index): return byte offset.  [ruby-dev:32472]
14878         * string.c (rb_str_split_m): calculate in byte offset.
14880 Mon Dec 10 09:56:29 2007  Koichi Sasada  <ko1@atdot.net>
14882         * benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: added.
14884 Mon Dec 10 07:48:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14886         * parse.y (parser_yylex): wrong token was generated.  [ruby-dev:32498]
14888         * object.c (rb_obj_not_match): wrong test.
14890 Mon Dec 10 06:44:47 2007  Tanaka Akira  <akr@fsij.org>
14892         * re.c (rb_reg_expr_str): use \xHH instead of \OOO.
14894         * regerror.c (to_ascii): ditto.
14895           (onig_snprintf_with_pattern): ditto.
14896           (onig_snprintf_with_pattern): ditto.
14898         * string.c (rb_str_inspect): ditto.
14899           (rb_str_dump): ditto.
14901         * parse.y (parser_yylex): ditto.
14903         * ruby.c (proc_options): ditto.
14905         * file.c (rb_f_test): ditto.
14907         [ruby-dev:32495]
14909 Mon Dec 10 06:41:00 2007  Tanaka Akira  <akr@fsij.org>
14911         * re.c (rb_reg_names): new method Regexp#names.
14912           (rb_reg_named_captures): new method Regexp#named_captures
14913           (match_regexp): new method MatchData#regexp.
14914           (match_names): new method MatchData#names.
14916         * lib/pp.rb (MatchData#pretty_print): show names of named captures.
14918         [ruby-dev:32493]
14920 Mon Dec 10 01:35:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
14922         * parse.y (expr): redefinable not (!) operator.
14924         * parse.y (arg): ditto.
14926         * object.c (rb_obj_not): new method "!".
14928         * object.c (rb_obj_not_equal): new method "!=".
14930         * object.c (rb_obj_not_match): new method "!~".
14932 Sun Dec  9 22:31:36 2007  Tanaka Akira  <akr@fsij.org>
14934         * re.c (rb_reg_s_last_match): accept named capture's name.
14936 Sun Dec  9 15:57:53 2007  Tanaka Akira  <akr@fsij.org>
14938         * re.c (match_backref_number): new function for converting a backref
14939           name/number to an integer.
14940           (match_offset): use match_backref_number.
14941           (match_begin): ditto.
14942           (match_end): ditto.
14943           (name_to_backref_number): raise IndexError instead of RuntimeError.
14944           (match_inspect): show capture index.
14946 Sun Dec  9 14:59:15 2007  Koichi Sasada  <ko1@atdot.net>
14948         * eval_intern.h (CHECK_STACK_OVERFLOW): reserve frame size.
14949           [ruby-dev:32485]
14951 Sun Dec  9 14:38:25 2007  Koichi Sasada  <ko1@atdot.net>
14953         * vm.c (rb_thread_mark): use rb_gc_mark_maybe() for
14954           VM stack specified by mark_stack_len.  [ruby-dev:32462]
14956         * insnhelper.ci: clear vm stack extended by opt value.
14958 Sun Dec  9 14:08:47 2007  Tanaka Akira  <akr@fsij.org>
14960         * include/ruby/ruby.h (FilePathStringValue): defined.  similar to
14961           FilePathValue but no taint check.
14963         * file.c (rb_get_path_no_checksafe): implementation of
14964           FilePathStringValue.
14965           (rb_file_s_basename): use FilePathStringValue.
14966           (rb_file_s_dirname): ditto.
14967           (rb_file_s_extname): ditto.
14968           (rb_file_s_split): ditto.
14969           (rb_file_join): ditto.
14971         * dir.c (file_s_fnmatch): ditto.
14973 Sun Dec  9 12:49:34 2007  Tanaka Akira  <akr@fsij.org>
14975         * re.c (append_utf8): check unicode range.
14977 Sun Dec  9 12:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14979         * lib/cgi.rb (read_multipart): exclude blanks from header values.
14980           [ruby-list:44327]
14982 Sun Dec  9 12:18:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14984         * file.c (rb_get_path): use the original object if to_path method is
14985           not defined.  [ruby-dev:32473]
14987         * io.c (rb_f_open): call to_open on non-string objects, instead of
14988           to_str.  [ruby-dev:32473]
14990 Sun Dec  9 12:12:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14992         * string.c (tr_find): returns true if no characters to be removed is
14993           specified.
14995 Sun Dec  9 12:03:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
14997         * parse.y (parser_magic_comment): delimits with a semicolon.
14999 Sun Dec  9 11:29:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15001         * string.c (tr_trans): get rid of segfaults when has multibytes but
15002           source sets have no multibytes.
15004 Sun Dec  9 04:01:28 2007  Tanaka Akira  <akr@fsij.org>
15006         * encoding.c (rb_enc_mbclen): return 1 if underlying implementation
15007           returns a length longer than e-p.
15008           (rb_enc_precise_mbclen): return needmore if underlying
15009           implementation returns a length longer than e-p.
15011 Sat Dec  8 17:59:40 2007  Tanaka Akira  <akr@fsij.org>
15013         * signal.c (posix_signal): return value.
15015 Sat Dec  8 17:22:16 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
15017         * test/openssl/test_pkcs7.rb: Remove redundant module namespace.
15019 Sat Dec  8 17:07:10 2007  Tanaka Akira  <akr@fsij.org>
15021         * ruby.c (proc_options): make rb_raise format as a string literal to
15022           avoid warning.
15024 Sat Dec  8 16:18:16 2007  Tanaka Akira  <akr@fsij.org>
15026         * re.c (rb_reg_check_preprocess): new function for validating regexp
15027           fragment.
15029         * parse.y (regexp): invoke reg_fragment_check.
15030           (reg_fragment_check): defined.
15031           (reg_fragment_check_gen): defined.
15033 Sat Dec  8 11:06:29 2007  Tanaka Akira  <akr@fsij.org>
15035         * encoding.c (rb_enc_mbclen): make it never fail.
15036           (rb_enc_nth): don't check the return value of rb_enc_mbclen.
15037           (rb_enc_strlen): ditto.
15038           (rb_enc_precise_mbclen): return needmore(1) if e <= p.
15039           (rb_enc_get_ascii): new function for extracting ASCII character.
15041         * include/ruby/encoding.h (rb_enc_get_ascii): declared.
15043         * include/ruby/regex.h (ismbchar): removed.
15045         * re.c (rb_reg_expr_str): use rb_enc_get_ascii.
15046           (unescape_escaped_nonascii): use rb_enc_precise_mbclen to determine
15047           the termination of escaped non-ASCII character.
15048           (unescape_nonascii): use rb_enc_precise_mbclen.
15049           (rb_reg_quote): use rb_enc_get_ascii.
15050           (rb_reg_regsub): use rb_enc_get_ascii.
15052         * string.c (rb_str_reverse) don't check the return value of
15053           rb_enc_mbclen.
15054           (rb_str_split_m): don't call rb_enc_mbclen with e <= p.
15056         * parse.y (is_identchar): use ISASCII.
15057           (parser_ismbchar): removed.
15058           (parser_precise_mbclen): new macro.
15059           (parser_isascii): new macro.
15060           (parser_tokadd_mbchar): use parser_precise_mbclen to check invalid
15061           character precisely.
15062           (parser_tokadd_string): use parser_isascii.
15063           (parser_yylex): ditto.
15064           (is_special_global_name): don't call is_identchar with e <= p.
15065           (rb_enc_symname_p): ditto.
15067           [ruby-dev:32455]
15069         * ext/tk/sample/tkextlib/vu/canvSticker2.rb: remove coding cookie
15070           because the encoding is not UTF-8.  [ruby-dev:32475]
15072 Fri Dec  7 20:21:35 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
15074         * ext/openssl/lib/net/ftptls.rb, ext/openssl/lib/net/telnets.rb:
15075           half-finished libraries are discontinued.
15077 Fri Dec  7 15:44:40 2007  Tanaka Akira  <akr@fsij.org>
15079         * lib/pp.rb: use Hash for recursion check as inspect.
15081 Fri Dec  7 15:04:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15083         * array.c (flatten): some performance improvements, based on a patch
15084           from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13877].
15085           [ruby-core:13851]
15087         * thread.c (rb_exec_recursive): use Hash instead of Array for
15088           performance improvement.  [ruby-core:13898]
15090         * thread.c (recursive_pop): use object ID.
15092 Thu Dec  6 19:52:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15094         * parse.y (arg): typo fixed ("!" -> "|") in the ripper code.
15096 Thu Dec  6 19:48:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15098         * parse.y (arg): tUPLUS no longer works as identity operation any
15099           more.  inspired by [ruby-talk:265532].
15101 Thu Dec  6 18:22:11 2007  Tanaka Akira  <akr@fsij.org>
15103         * encoding.c (rb_enc_precise_mbclen): new function for mbclen with
15104           validation.
15106         * include/ruby/encoding.h (rb_enc_precise_mbclen): declared.
15107           (MBCLEN_CHARFOUND): new macro.
15108           (MBCLEN_INVALID): new macro.
15109           (MBCLEN_NEEDMORE): new macro.
15111         * include/ruby/oniguruma.h (OnigEncodingTypeST): replace mbc_enc_len
15112           by precise_mbc_enc_len.
15113           (ONIGENC_PRECISE_MBC_ENC_LEN): new macro.
15114           (ONIGENC_CONSTRUCT_MBCLEN_CHARFOUND): new macro.
15115           (ONIGENC_CONSTRUCT_MBCLEN_INVALID): new macro.
15116           (ONIGENC_CONSTRUCT_MBCLEN_NEEDMORE): new macro.
15117           (ONIGENC_MBCLEN_CHARFOUND): new macro.
15118           (ONIGENC_MBCLEN_INVALID): new macro.
15119           (ONIGENC_MBCLEN_NEEDMORE): new macro.
15120           (ONIGENC_MBC_ENC_LEN): use ONIGENC_PRECISE_MBC_ENC_LEN.
15122         * enc/euc_jp.c: validation implemented.
15124         * enc/sjis.c: ditto.
15126         * enc/utf8.c: ditto.
15128         * string.c (rb_str_inspect): use rb_enc_precise_mbclen for invalid
15129           encoding.
15130           (rb_str_valid_encoding_p): new method String#valid_encoding?.
15132         * io.c (rb_io_getc): use rb_enc_precise_mbclen.
15134         [ruby-dev:32438]
15136 Thu Dec  6 01:37:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15138         * regparse.c (i_apply_case_fold): fix for negative character class.  a
15139           patch from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13884].
15141 Thu Dec  6 01:00:38 2007  NARUSE, Yui <naruse@ruby-lang.org>
15143         * ext/iconv/iconv.c (iconv_s_list): support NetBSD/Citrus iconv.
15145 Wed Dec  5 16:18:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15147         * proc.c (rb_proc_s_new): call initialize.  [ruby-core:13824]
15149         * proc.c (rb_proc_location): return file name and line number where
15150           the proc is defined.
15152         * thread.c (thread_s_new): call initialize.  [ruby-core:13835]
15154         * thread.c (thread_initialize): split initialize method.
15156 Wed Dec  5 15:25:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15158         * parse.y (rb_intern3): fix to changing encoding to default, and
15159           uncommented r13835, which is rare but not impossible.
15161 Wed Dec  5 15:15:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15163         * range.c (step_i, range_step): support non-fixnum steps.
15164           [ruby-talk:282100]
15166 Wed Dec  5 14:25:11 2007  Koichi Sasada  <ko1@atdot.net>
15168         * compile.c (iseq_compile_each): fix typo.
15170 Wed Dec  5 13:41:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15172         * parse.y (yycompile): get rid of tracing while parsing.
15173           [ruby-dev:31351]
15175         * thread.c (ruby_suppress_tracing): added a new parameter, which
15176           directs to call func always.
15178 Tue Dec  4 19:56:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15180         * ext/iconv/iconv.c (iconv_convert): should not set encoding unless
15181           the target encoding is supported.  [ruby-dev:32451]
15183 Tue Dec  4 17:34:17 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15185         * ext/nkf/lib/kconv.rb (tojis, tosjis, toeuc, toutf8):
15186           set encoding. [ruby-dev:32447]
15188 Tue Dec  4 17:07:25 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15190         * lib/json.rb, lib/json/*: moved to ext/json/lib.
15192 Tue Dec  4 16:34:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15194         * ext/iconv/iconv.c (iconv_create): achieve target encoding.
15196         * ext/iconv/iconv.c (iconv_convert, iconv_finish, iconv_iconv,
15197           iconv_conv): set result string encoding.  [ruby-dev:32446]
15199         * ext/iconv/iconv.c (iconv_initialize, iconv_s_open): set encoding to
15200           Iconv instance.
15202 Tue Dec  4 14:34:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15204         * ruby.c (process_options): reverted c flag.
15206 Tue Dec  4 11:23:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15208         * bignum.c (rb_cstr_to_inum): trailing spaces may exist at squeezing
15209           preceding 0s.  [ruby-core:13873]
15211 Mon Dec  3 11:51:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15213         * ext/Win32API/*: removed or moved to ext/dl/win32.
15215         * ext/dl/win32/*: new. [ruby-dev:32387]
15217 Sun Dec  2 22:08:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15219         * parse.y (parser_tokadd_mbchar): fix for ASCII chars.  [ruby-dev:32432]
15221         * parse.y (parser_parse_string, parser_here_document): prevent false
15222           error messages.
15224 Sun Dec  2 20:43:22 2007  Tanaka Akira  <akr@fsij.org>
15226         * re.c (unescape_escaped_nonascii): fix mbclen argument.
15228 Sun Dec  2 15:47:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15230         * parse.y (parser_tokadd_mbchar): check insufficient multibyte char.
15231           [ruby-dev:32429]
15233 Sun Dec  2 15:42:16 2007  Kouhei Sutou  <kou@cozmixng.org>
15235         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.1 -> 0.2.2.
15237         * lib/rss/maker/itunes.rb: fixed new_itunes_category.
15238         * lib/rss/maker/taxonomy.rb: new_taxo_topic -> new_topic because
15239           of consistency.
15241         * test/rss/test_maker_itunes.rb, test/rss/test_itunes.rb: removed
15242           needless UTF-8 characters.
15244 Sun Dec  2 15:18:37 2007  Koichi Sasada  <ko1@atdot.net>
15246         * insnhelper.ci (vm_callee_setup_arg): fix error message.
15247           [ruby-dev:32430]
15249 Sun Dec  2 09:12:48 2007  Tanaka Akira  <akr@fsij.org>
15251         * parse.y (regexp): fix /#{}\xa1\xa2/e to be EUC-JP.
15252           (reg_fragment_setenc_gen): extracted from reg_compile_gen.
15254 Sun Dec  2 01:39:51 2007  Tanaka Akira  <akr@fsij.org>
15256         * include/ruby/intern.h (rb_uv_to_utf8): declared.
15258         * re.c (rb_reg_preprocess): new function for dynamic regexp with
15259           \u{} such as Regexp.new("\\u{6666}").
15260           (rb_reg_prepare_re): preprocess regexp for recompiling.
15261           (read_escaped_byte): new function.
15262           (unescape_escaped_nonascii): new function.
15263           (append_utf8): new function.
15264           (unescape_unicode_list): new function.
15265           (unescape_unicode_bmp): new function.
15266           (unescape_nonascii): new function.
15267           (rb_reg_initialize): preprocess regexp.
15269         * pack.c (rb_uv_to_utf8): renamed from uv_to_utf8.
15271         * parse.y (STR_NEW3): take func instead of has8 and hasmb.
15272           (parser_str_new): use default coderange mechanism except for regexp.
15273           (parser_tokadd_utf8): copy regexp source as-is.
15274           (parser_read_escape): UTF-8 stuff removed.
15275           (parser_tokadd_escape): has8bit and hasmb removed.
15276           (parser_tokadd_string): fix 8-bit single byte character with \u.
15277           (parser_parse_string): has8bit and hasmb removed.
15278           (parser_here_document): has8bit and hasmb removed.
15279           (parser_yylex): call parser_tokadd_utf8 instead of read_escape for
15280           UTF-8 character.
15282 Wed Dec  2 01:00:07 2007  James Edward Gray II  <jeg2@ruby-lang.org>
15284         * lib/xmlrpc/server.rb (XMLRPC::Server#server): Improve signal handling so
15285           pressing control-c in the controlling terminal or sending SIGTERM stops
15286           the XML-RPC server.
15288 Sat Dec  1 23:04:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15290         * encoding.c: rename primary_encoding -> default_external (encoding).
15292 Sat Dec  1 19:52:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
15294         * lib/date.rb (Time#to_datetime): use nsec instead of usec.
15296         * lib/date.rb (DateTime#to_time): second minute as an argument to
15297           Time::utc contains fractional part in rational; hence Time
15298           object may keep resolution at most nanosecond.
15300 Sat Dec  1 14:36:05 2007  Koichi Sasada  <ko1@atdot.net>
15302         * bootstraptest/test_knownbug.rb: move fixed bugs.
15304         * test/ruby/test_sprintf.rb: ditto.
15306         * test/yaml/test_yaml.rb: ditto.
15308 Sat Dec  1 13:24:47 2007  Koichi Sasada  <ko1@atdot.net>
15310         * insnhelper.ci (vm_yield_with_cfunc): fix to passing argc on third
15311           parameter of IFUNC.  [ruby-dev:32329]
15313         * enumerator.c: fix to pass exact number of argument.
15315         * eval.c (rb_yield_values2): added.
15317         * include/ruby/ruby.h: ditto.
15319         * bootstraptest/test_knownbug.rb: move a fixed test.
15321         * bootstraptest/test_block.rb: ditto.
15323 Sat Dec  1 10:45:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15325         * io.c (rb_f_open): use to_open for every non-string object.  path
15326           object may use method_missing.
15328 Sat Dec  1 09:44:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15330         * insns.def (concatarray, splatarray): use to_a instead of
15331           to_splat.
15333         * insnhelper.ci (caller_setup_args): ditto.
15335 Sat Dec  1 03:34:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15337         * parse.y (newline_node): always remove NODE_BEGIN.
15339 Fri Nov 30 23:48:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15341         * signal.c (ruby_signal): use SA_SIGINFO if available.
15342           [ ruby-Patches-6418 ]
15344 Fri Nov 30 22:52:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15346         * signal.c (trap_signm): SIGVTALRM no longer used for green
15347           thread.  [ruby-talk:281318]
15349         * signal.c (ruby_sig_finalize): do not install SIG_DFL handler if
15350           previous handler is sighandler().
15352 Fri Nov 30 21:02:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15354         * lib/json.rb, lib/json/add/{core.rb, rails.rb},
15355           test/json/test_json_rails.rb: additional files of JSON 1.1.2.
15356           [ruby-dev:32405]
15358 Fri Nov 30 19:33:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15360         * ext/syck/rubyext.c (rb_syck_mktime): avoid segmentation fault.
15361           [ruby-core:13735]
15363 Fri Nov 30 19:05:55 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15365         * enum.c (enum_count): precise argument number check.
15367         * enum.c (enum_count): return Enumerator if no block given.
15369 Fri Nov 30 16:42:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15371         * enum.c (enum_take_while): returns Enumerator if no block given.
15373         * enum.c (enum_drop_while): ditto.
15375 Thu Nov 29 16:59:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15377         * parse.y (stmt): remove unnecessary NODE_BEGIN.  [ruby-core:13814]
15379 Thu Nov 29 06:45:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15381         * hash.c (rb_hash_eql): recursive comparison should be based on
15382           eql?  [ruby-core:13803]
15384 Wed Nov 28 18:08:00 2007  NARUSE, Yui  <naruse@ruby-lang.org>
15386         * ext/json, lib/json, test/json: Update to JSON 1.1.2.
15387           (RubyForge#15447)
15389         * math.c: fix typo.
15391 Wed Nov 28 16:29:35 2007  Koichi Sasada  <ko1@atdot.net>
15393         * insnhelper.ci (vm_invoke_block): should splat args.
15394           [ruby-dev:32392]
15396         * test/ruby/test_yield.rb: add tests for above.
15398 Wed Nov 28 14:43:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15400         * ext/extmk.rb (extract_makefile): use dldflags instead of DLDFLAGS to
15401           get rid of mixing $LDFLAGS and $ARCH_FLAG.
15403         * lib/mkmf.rb (configuration): ditto.
15405         * lib/mkmf.rb (create_makefile): support for extensions which has no
15406           shared object.
15408 Wed Nov 28 02:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15410         * bignum.c (big2str_find_n1): removed extraneous element.
15411           [ruby-dev:32351], [ruby-dev:32365]
15413         * bignum.c (big2str_find_n1): returns necessary digits now.
15415         * sprintf.c (remove_sign_bits): extends sign bit first.
15417 Tue Nov 27 15:53:43 2007  Koichi Sasada  <ko1@atdot.net>
15419         * compile.c (iseq_compile_each): "when *[],1" dumps core.
15420           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32350]
15422         * bootstraptest/test_syntax.rb: add a test for above.
15424 Tue Nov 27 15:40:05 2007  Koichi Sasada  <ko1@atdot.net>
15426         * compile.c (iseq_compile_each): "a[*b] += 1" dumps core.
15427           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32354]
15429         * bootstraptest/test_syntax.rb: add a test for above.
15431 Tue Nov 27 12:47:23 2007  Koichi Sasada  <ko1@atdot.net>
15433         * compile.c, insns.def: change return value of "defined?"
15434           for $&, $1, ... .  If such variables are defined,
15435           return "global-variable".
15437         * test/ruby/test_defined.rb: add tests.
15439         * bootstraptest/test_syntax.rb: fix a test.
15441 Tue Nov 27 11:54:46 2007  Koichi Sasada  <ko1@atdot.net>
15443         * insns.def: fix typo.
15445 Tue Nov 27 11:23:20 2007  Koichi Sasada  <ko1@atdot.net>
15447         * test_beginendblock.rb: add loop to wait signal.
15448           [ruby-dev:32332]
15450 Tue Nov 27 11:14:57 2007  Tanaka Akira  <akr@fsij.org>
15452         * include/ruby/encoding.h, encoding.c, re.c, string.c, parse.y:
15453           rename ENC_CODERANGE_SINGLE to ENC_CODERANGE_7BIT.
15454           rename ENC_CODERANGE_MULTI to ENC_CODERANGE_8BIT.
15455           Because single byte 8bit character, such as Shift_JIS 1byte katakana,
15456           is represented by ENC_CODERANGE_MULTI even if it is not multi byte.
15458 Tue Nov 27 10:45:45 2007  Koichi Sasada  <ko1@atdot.net>
15460         * eval.c (rb_method_missing): fix stack trace.
15462         * bootstraptest/test_knownbug.rb: move solved tests.
15464         * bootstraptest/test_method.rb, test/ruby/test_regexp.rb: ditto.
15466 Tue Nov 27 09:57:42 2007  Koichi Sasada  <ko1@atdot.net>
15468         * insns.def, compile.c: fix to allow dsym for alias/undef.
15469           [ruby-dev:32355]
15471         * bootstraptest/test_method.rb: add tests for above.
15473 Mon Nov 26 23:18:46 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
15475         * lib/drb/extserv.rb (initialize, stop_service): synchronize with
15476           ExtServManager.
15478         * test/drb/test_drb.rb (TestDRbEval): ignored.
15480 Mon Nov 26 17:32:16 2007  Tanaka Akira  <akr@fsij.org>
15482         * re.c (Init_Regexp): new method Regexp#fixed_encoding?
15483           [ruby-dev:32361]
15485 Mon Nov 26 13:28:14 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
15487         * lib/complex.rb: be able to create Complex(0, -0.0). [ruby-list:44268]
15489 Mon Nov 26 11:24:04 2007  Tanaka Akira  <akr@fsij.org>
15491         * re.c (rb_reg_fixed_encoding_p): extracted from rb_reg_prepare_re and
15492           rb_reg_s_union.
15493           (rb_reg_s_union): refactored.
15495 Mon Nov 26 10:44:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15497         * io.c (rb_read_internal, rb_sysopen_internal): remove C99 dependency.
15499 Sun Nov 25 22:21:35 2007  Tanaka Akira  <akr@fsij.org>
15501         * include/ruby/encoding.h (rb_enc_str_asciionly_p): declared.
15502           (rb_enc_str_asciicompat_p): defined.
15504         * re.c (rb_reg_initialize_str): use rb_enc_str_asciionly_p.
15505           (rb_reg_quote): return ascii-8bit string if the argument is
15506           ascii-only to generate encoding generic regexp if possible.
15507           (rb_reg_s_union): fix encoding handling.  [ruby-dev:32094]
15509         * string.c (rb_enc_str_asciionly_p): defined.
15511 Sun Nov 25 12:12:03 2007  Eric Hodel  <drbrain@segment7.net>
15513         * gem_prelude.rb: Import fast-loading gem_prelude.rb from RubyGems.
15515         * lib/rubygems*: Import RubyGems r1516.
15517 Sat Nov 24 23:25:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15519         * test/ruby/test_eval.rb (TestEval::test_instance_eval_cvar):
15520           updated not to modify class variable of Object class.
15522 Fri Nov 23 17:34:24 2007  Koichi Sasada  <ko1@atdot.net>
15524         * io.c: add rb_read_internal() as blocking function.
15526 Fri Nov 23 17:33:39 2007  Koichi Sasada  <ko1@atdot.net>
15528         * vm.c: fix comment.
15530 Fri Nov 23 17:26:11 2007  Koichi Sasada  <ko1@atdot.net>
15532         * bootstraptest/test_knownbug.rb: move solved tests.
15534         * bootstraptest/test_io.rb, test_marshal.rb, test_objectspace.rb:
15535           ditto.
15537         * test/ruby/test_integer.rb, test_regexp.rb: ditto.
15539 Fri Nov 23 15:59:04 2007  Tanaka Akira  <akr@fsij.org>
15541         * struct.c (rb_struct_alloc_noinit): new function.
15542           (rb_struct_define_without_accessor): add allocator to the arguments.
15544         * range.c (range_alloc): re-introduced using rb_struct_alloc_noinit.
15546 Fri Nov 23 15:27:43 2007  Tanaka Akira  <akr@fsij.org>
15548         * re.c (REG_CASESTATE): unused macro removed.
15549           (rb_reg_prepare_re): check encoding difference.
15550           (rb_reg_initialize): check 8bit byte.
15552         * parse.y (parser_tokadd_escape): fix has8bit.
15554           [ruby-dev:32113]
15556 Fri Nov 23 15:16:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15558         * variable.c (rb_f_global_variables): variable names should not
15559           duplicate.  [ruby-dev:32344]
15561 Fri Nov 23 13:34:08 2007  Tanaka Akira  <akr@fsij.org>
15563         * struct.c (rb_struct_define_without_accessor): new function.
15565         * range.c (range_alloc): removed.
15566           (Init_Range): use rb_struct_define_without_accessor.
15568           based on [ruby-dev:32327].
15570 Fri Nov 23 11:01:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15572         * re.c (match_begin): should return offset by character.
15573           [ruby-dev:32331]
15575         * re.c (match_end): ditto.
15577         * re.c (rb_reg_search): ditto.
15579 Fri Nov 23 10:44:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15581         * compile.c (defined_expr): defined(method(x)) dumped core.  a
15582           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32335]
15584 Wed Nov 21 18:03:49 2007  Koichi Sasada  <ko1@atdot.net>
15586         * vm.c: fix to recycle thread data (VM stack).
15588         * thread.c: ditto.
15590         * benchmark/bm_vm3_thread_create_join.rb: add loop count.
15592 Wed Nov 21 18:02:10 2007  Koichi Sasada  <ko1@atdot.net>
15594         * benchmark/driver.rb: add path to trunk/lib if driver runner is
15595           in build directory.
15597 Wed Nov 21 16:39:21 2007  Tanaka Akira  <akr@fsij.org>
15599         * test/fileutils/fileasserts.rb (assert_equal_timestamp): new assert
15600           to test tv_sec only for filestamp resolution portability.
15601           (assert_same_entry): use assert_same_entry for mtime comparison.
15603 Wed Nov 21 14:55:13 2007  Koichi Sasada  <ko1@atdot.net>
15605         * array.c (rb_ary_permutation): add gc guard codes.
15607 Wed Nov 21 11:16:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15609         * insnhelper.ci (vm_search_normal_superclass): rename function.
15611         * insnhelper.ci (vm_search_superclass): ditto.
15613         * proc.c (struct METHOD): rename rklass -> rclass.
15615 Wed Nov 21 03:12:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15617         * process.c (rb_f_system): returns nil on execution failure.
15618           [ruby-core:13715]
15620 Wed Nov 21 01:04:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15622         * object.c (nil_plus): remove unused function.  [ruby-core:13737]
15624 Tue Nov 20 21:46:46 2007  Tanaka Akira  <akr@fsij.org>
15626         * time.c (time_mload): ignore invalid digits in submicro.
15628 Tue Nov 20 20:33:32 2007  Koichi Sasada  <ko1@atdot.net>
15630         * include/ruby/ruby.h: rename RFloat#double_value -> float_value.
15632         * numeric.c, parse.y: ditto.
15634 Tue Nov 20 19:36:21 2007  Koichi Sasada  <ko1@atdot.net>
15636         * gc.h, vm_core.h: decl of rb_gc_save_machine_context()
15637           should be at vm_core.h.
15639         * include/ruby/ruby.h, intern.h: remove type rb_thread_t.
15641         * include/ruby/intern.h: change rb_unblock_function_t,
15642           rb_unblock_function_t.
15644         * file.c, process.c: apply above changes.
15646         * thread.c, thread_pthread.ci, thread_win32.ci: ditto.
15648         * io.c: support blocking open (2). [ruby-core:13614]
15650 Tue Nov 20 17:10:11 2007  Tanaka Akira  <akr@fsij.org>
15652         * io.c (rb_io_close_on_exec_p): new method IO#close_on_exec?.
15653           (rb_io_set_close_on_exec): new method IO#close_on_exec=.
15654           [ruby-dev:32323]
15656 Tue Nov 20 16:24:31 2007  Tanaka Akira  <akr@fsij.org>
15658         * gc.c (gc_mark_children): obj->as.file.fptr may be 0 for T_FILE.
15660 Tue Nov 20 15:09:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15662         * parse.y (parser_read_escape): has8bit flag may be set with control
15663           escape.  [ruby-core:13722]
15665         * parse.y (parser_prepare): set begging after BOM if exists.
15666           [ruby-core:13718]
15668 Tue Nov 20 14:55:37 2007  Eric Hodel  <drbrain@segment7.net>
15670         * lib/rubygems*: Update to RubyGems 0.9.5.
15672 Tue Nov 20 13:00:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15674         * include/ruby/win32.h win32/win32.c (rb_w32_pipe_exec): use dual fd
15675           instead of socketpair when mode is RDWR.
15677         * io.c (pipe_open): pass &write_fd to rb_w32_pipe_exec().
15679         * io.c (popen_redirect): define only when HAVE_FORK.
15681 Tue Nov 20 12:12:04 2007  Tanaka Akira  <akr@fsij.org>
15683         * include/ruby/io.h (rb_io_t): add tied_io_for_writing member.
15685         * io.c: use tied_io_for_writing for duplex popen.
15687         * gc.c: mark tied_io_for_writing.
15689         * common.mk: gc.o depends io.h.
15691           [ruby-dev:32205]
15693 Tue Nov 20 11:59:33 2007  Tanaka Akira  <akr@fsij.org>
15695         * test/drb/test_drb.rb: rename TestRubyYield to TestDRbRubyYield to
15696           avoid name crash with test/ruby/test_yield.rb.
15697           TestRuby18Yield is renamed to TestDRbRuby18Yield too.
15699 Tue Nov 20 03:24:42 2007  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
15701         * lib/drb/extservm.rb: merged from ruby_1_8 branch.
15703         * lib/drb/acl.rb: ditto.
15705         * lib/drb/ssl.rb: ditto.
15707         * lib/drb/unix.rb: ditto.
15709         * lib/drb/drb.rb: ditto.
15711         * lib/drb/observer.rb: ditto.
15713         * lib/drb/invokemethod.rb: ditto.
15715         * test/drb/test_drbssl.rb: ditto.
15717         * test/drb/test_drb.rb: ditto.
15719         * test/drb/drbtest.rb: ditto.
15721         * test/drb/test_drbunix.rb: ditto.
15723 Tue Nov 20 00:52:46 2007  Tanaka Akira  <akr@fsij.org>
15725         * test/fileutils/fileasserts.rb (assert_equal_time): show nsec if
15726           assertion fails but time.to_s equals.
15727           (assert_same_entry): use assert_equal_time.
15729         * test/fileutils/test_fileutils.rb (test_install): use
15730           assert_equal_time.
15732 Mon Nov 19 18:46:49 2007  Tanaka Akira  <akr@fsij.org>
15734         * file.c (utime_internal): fallback utimensat to utimes.
15736 Mon Nov 19 17:51:27 2007  Tanaka Akira  <akr@fsij.org>
15738         * configure.in: check struct timespec, clock_gettime, utimensat,
15739           struct stat.st_atim,
15740           struct stat.st_atimespec,
15741           struct stat.st_atimensec,
15742           struct stat.st_mtim,
15743           struct stat.st_mtimespec,
15744           struct stat.st_mtimensec,
15745           struct stat.st_ctim,
15746           struct stat.st_ctimespec,
15747           struct stat.st_ctimensec.
15749         * include/ruby/missing.h: provide struct timespec if not available.
15751         * time.c: support nanosecond-resolution using struct timespec.
15752           (time_nsec): new method: Time#nsec and Time#tv_nsec.
15754         * include/ruby/intern.h: provide rb_time_nano_new.
15756         * file.c (utime_internal): use utimensat if available.
15757           (rb_file_s_utime): refactored.
15758           (rb_f_test): use stat_atime, stat_mtime, stat_ctime.
15759           (rb_stat_cmp): check tv_nsec.
15760           (stat_atimespec): new function.
15761           (stat_atime): ditto.
15762           (stat_mtimespec): ditto.
15763           (stat_mtime): ditto.
15764           (stat_ctimespec): ditto.
15765           (stat_ctime): ditto.
15766           (rb_stat_atime): use stat_atime.
15767           (rb_file_s_atime): ditto.
15768           (rb_file_atime): ditto.
15769           (rb_stat_mtime): use stat_mtime.
15770           (rb_file_s_mtime): ditto.
15771           (rb_file_mtime): ditto.
15772           (rb_file_ctime): use stat_ctime.
15773           (rb_file_s_ctime): ditto.
15774           (rb_stat_ctime): ditto.
15776         * variable.c (rb_copy_generic_ivar): clear clone's instance variables
15777           if obj has no instance variable.
15779         * marshal.c (w_object): dump instance variables of generated string
15780           for TYPE_USERDEF, even if original object has instance variables.
15782         * lib/time.rb (Time#xmlschema): use nsec instead of usec.
15784         [ruby-dev:32306]
15786 Mon Nov 19 17:48:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15788         * object.c (rb_class_superclass): should not raise exception for
15789           BasicObject.  [ruby-Bugs-15668]
15791 Mon Nov 19 16:04:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15793         * array.c (rb_ary_permutation): gives all permutations of elements
15794           if no argument given.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
15795           [ruby-dev:32309]
15797 Mon Nov 19 02:44:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15799         * compile.c (iseq_compile_each): alias and undef accept dsyms as well
15800           as literals.  [ruby-dev:32308]
15802 Mon Nov 19 02:31:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15804         * eval_method.ci (rb_add_method): no redefinition warning for undef.
15806 Mon Nov 19 01:53:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15808         * parse.y (parser_read_escape): disallow control and meta modifiers
15809           for non-ASCII characters.  [ruby-core:13685]
15811 Sun Nov 18 20:47:41 2007  Tanaka Akira  <akr@fsij.org>
15813         * marshal.c (mark_dump_arg): it may be called after dump_ensure.
15815 Sun Nov 18 18:27:47 2007  Tanaka Akira  <akr@fsij.org>
15817         * time.c (time_minus): fix Time.at(2**60+1) - Time.at(2**60).
15819 Sun Nov 18 17:28:49 2007  Tanaka Akira  <akr@fsij.org>
15821         * time.c (time_arg): show actual year in 2-3 digits year warning.
15822           (time_mdump): show actual year in "year too big to marshal" error.
15824 Sun Nov 18 14:03:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15826         * eval_method.ci (rb_alias): do not call hook functions until
15827           initialization finishes.  [ruby-talk:279538]
15829 Sun Nov 18 09:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15831         * lib/mkmf.rb (String#tr_cpp): make preprocessor identifiers.
15833 Sun Nov 18 05:19:46 2007  Tanaka Akira  <akr@fsij.org>
15835         * lib/mkmf.rb (have_struct_member): define HAVE_type_member.
15837 Sat Nov 17 23:51:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
15839         * ext/win32ole/win32ole.c (ole_invoke): bug fix. [ruby-talk:279100]
15841 Sat Nov 17 23:21:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15843         * parse.y (parser_yylex): should clear parser->tokp as well.
15844           [ruby-dev:32250]
15846         * parse.y: remove NEED_ASSOC that break test_parser_events.
15848         * parse.y (parser_yylex): should not decrement line numbers at the
15849           end of file.
15851         * file.c (rb_find_file_ext): search .rb files first through in the
15852           loadpath.
15854 Fri Nov 16 23:31:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15856         * bignum.c (rb_big_odd_p): new method added.  a patch from Tadashi
15857           Saito <shiba AT mail2.accsnet.ne.jp>.  [ruby-dev:32305]
15859         * bignum.c (rb_big_even_p): ditto.
15861 Fri Nov 16 17:41:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15863         * ext/iconv/iconv.c (Document-class): moved the simplest example to
15864           the top.
15866         * ext/iconv/iconv.c (iconv_s_iconv): Document-method: needs class
15867           prefix for class method.  [ruby-core:13542]
15869         * ext/iconv/iconv.c (iconv_iconv): also instance method needs to be
15870           qualified.
15872 Fri Nov 16 16:26:57 2007  Shugo Maeda  <shugo@ruby-lang.org>
15874         * include/ruby/ruby.h: added some declarations for event hooks.
15876         * lib/profile.rb: set VM::InstructionSequence.compile_option.
15878 Fri Nov 16 11:16:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15880         * lib/yaml/rubytypes.rb (String#is_binary_data?): use Integer#fdiv.
15882 Fri Nov 16 03:36:01 2007  why the lucky stiff  <why@ruby-lang.org>
15884         * ext/syck/rubyext.c: Node#value defined twice.
15886         * lib/yaml/: several method redefinitions causing warnings.
15888 Fri Nov 16 03:01:00 2007  why the lucky stiff  <why@ruby-lang.org>
15890         * lib/yaml/types.rb: Likewise, pass self to YAML::quick_emit.
15892 Fri Nov 16 02:51:59 2007  why the lucky stiff  <why@ruby-lang.org>
15894         * lib/yaml.rb (quick_emit): use combination of object_id and hash to
15895           identify repeated object references, since GC will reuse memory of
15896           objects during output of YAML. [ruby-Bugs-8548] [ruby-Bugs-3698]
15898 Thu Nov 15 19:49:03 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
15900         * ext/curses/extconf.rb: check macro if cannot find func.
15901           [ruby-list:44224]
15903 Thu Nov 15 18:04:06 2007  Tanaka Akira  <akr@fsij.org>
15905         * tool/compile_prelude.rb: fix TMP_RUBY_PREFIX for relative load path
15906           environment.
15908 Thu Nov 15 17:28:21 2007  Tanaka Akira  <akr@fsij.org>
15910         * tool/compile_prelude.rb: absolute path may not start with a slash.
15911           pointed by usa.
15913 Thu Nov 15 17:07:54 2007  Tanaka Akira  <akr@fsij.org>
15915         * tool/compile_prelude.rb: fix first substitution.
15916           use constant for prefix.
15917           pointed by Richard Kilmer.
15919 Thu Nov 15 14:29:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15921         * common.mk (prereq): added auto generated sources.  [ruby-dev:32280]
15923 Thu Nov 15 12:31:13 2007  Tanaka Akira  <akr@fsij.org>
15925         * tool/compile_prelude.rb: use constant for prefix.
15927 Thu Nov 15 12:24:39 2007  Tanaka Akira  <akr@fsij.org>
15929         * tool/compile_prelude.rb: use simple template system for source
15930           code generation.
15932 Thu Nov 15 12:19:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15934         * lib/cgi/session.rb (CGI::Session::FileStore::restore): use
15935           lockfile for exclusive locks.  a patch from <tommy AT tmtm.org>.
15936           [ruby-dev:32296]
15938 Thu Nov 15 12:14:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15940         * tool/compile_prelude.rb (c_esc): need to escape closing brace.
15942 Thu Nov 15 11:52:16 2007  Tanaka Akira  <akr@fsij.org>
15944         * tool/compile_prelude.rb: adjust RbConfig::CONFIG paths relative
15945           to the installation path.
15947 Thu Nov 15 11:25:20 2007  Tanaka Akira  <akr@fsij.org>
15949         * ruby.c (usage): fix typo on --disable-gems option.
15950           pointed by Richard Kilmer.
15952 Wed Nov 14 16:16:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15954         * test/net/http/test_https_proxy.rb
15955           (HTTPSProxyTest::test_https_proxy_authentication): initialize
15956           local variable 't' first.  [ruby-dev:32253]
15958 Wed Nov 14 15:39:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
15960         * test/socket/test_socket.rb: update not to use 1.8 assignment to
15961           external local variable in the block parameters.  [ruby-dev:32251]
15963         * test/strscan/test_stringscanner.rb: avoid $KCODE, and use
15964           String#force_encoding().  [ruby-dev:32251]
15966 Wed Nov 14 14:04:42 2007  Tanaka Akira  <akr@fsij.org>
15968         * common.mk, Makefile.in: rename prelude.c to miniprelude.c.
15969           rename ext_prelude.c to prelude.c
15971         * win32/Makefile.sub: ditto.
15973         * bcc32/Makefile.sub: ditto.
15975 Wed Nov 14 07:09:48 2007  Koichi Sasada  <ko1@atdot.net>
15977         * blockinlining.c, compile.c, compile.h, debug.c, debug.h,
15978           id.c, insnhelper.h, insns.def, thread.c, thread_pthread.ci,
15979           thread_pthread.h, thread_win32.ci, thread_win32.h, vm.h,
15980           vm_dump.c, vm_evalbody.ci, vm_opts.h: fix comments and
15981           copyright year.
15983 Wed Nov 14 07:07:51 2007  Koichi Sasada  <ko1@atdot.net>
15985         * tool/makedocs.rb, template/insnstbl.html: removed.
15987 Wed Nov 14 02:50:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
15989         * common.mk (parse.c): dependency also needs vpath.
15991         * common.mk (node_name.inc, prelude.c): VPATH in nmake does not
15992           work for targets of explicit rules.
15994 Wed Nov 14 02:11:38 2007  Tanaka Akira  <akr@fsij.org>
15996         * missing/isinf.c (isinf): don't define if the macro is defined.
15998         * configure.in: no need to set ac_cv_func_isinf=yes on non-gcc
15999           solaris.
16001 Wed Nov 14 01:34:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16003         * numeric.c (round): fallback definition.
16005         * numeric.c (flo_divmod, flo_round): use round() always.
16006           [ruby-dev:32269]
16008 Wed Nov 14 00:33:49 2007  Koichi Sasada  <ko1@atdot.net>
16010         * include/ruby/ruby.h: introduce 2 macros:
16011           RFLOAT_VALUE(v), DOUBLE2NUM(dbl).
16012           Rename RFloat#value -> RFloat#double_value.
16013           Do not touch RFloat#double_value directly.
16015         * bignum.c, insns.def, marshal.c, math.c, numeric.c, object.c,
16016           pack.c, parse.y, process.c, random.c, sprintf.c, string.c,
16017           time.c: apply above changes.
16019         * ext/dl/mkcallback.rb, ext/json/ext/generator/generator.c:
16020           ditto.
16022 Wed Nov 14 00:15:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16024         * tool/ytab.sed: get rid of GNU sed feature.  a patch from Laurent
16025           Sansonetti <laurent.sansonetti AT gmail.com> in [ruby-core:13470].
16027 Tue Nov 13 21:41:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16029         * common.mk (parse.c), ext/ripper/depend (ripper.c): process after
16030           bison with sed.  [ruby-dev:32204]
16032         * ruby.c (proc_options): use yydebug in cmdline_options.
16034         * ruby.c (process_options): set yydebug flag of parser.
16036         * parse.y (yydebug): moved into struct parser_params.
16038         * parse.y (rb_parser_get_yydebug, rb_parser_set_yydebug): parser
16039           generic methods.
16041         * */Makefile.sub (parse.c): moved to common.mk.
16043         * tool/ytab.sed: comment out yydebug definition, and substitute
16044           yyerror with parser_yyerror.
16046 Tue Nov 13 16:33:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16048         * numeric.c (flodivmod): work around for infinity.
16050         * numeric.c (flo_divmod): work around for platforms have no round().
16051           [ruby-dev:32247]
16053 Tue Nov 13 15:26:33 2007  Tanaka Akira  <akr@fsij.org>
16055         * lex.c.blt: moved from lex.c.
16057         * lex.c.src: copied from keywords.  This is the source of lex.c.blt.
16059         * Makefile.in (lex.c): use lex.c.blt if keywords is same as lex.c.src.
16061         * win32/Makefile.sub (lex.c): re-introduce copy rule.
16063         * bcc32/Makefile.sub (lex.c): ditto.
16065         * wince/Makefile.sub (lex.c): ditto.
16067 Tue Nov 13 15:21:52 2007  Koichi Sasada  <ko1@atdot.net>
16069         * compile.c (iseq_specialized_instruction): check argc.
16071 Tue Nov 13 14:44:32 2007  why the lucky stiff  <why@ruby-lang.org>
16073         * test/yaml/test_yaml.rb: fixed the failing YAML Struct test
16074           at ko1's request.
16076 Tue Nov 13 02:57:04 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
16078         * numeric.c (flo_divmod): round to the nearest integer.
16079           [ ruby-Bugs-14540 ]
16081 Tue Nov 13 00:36:16 2007  Shugo Maeda  <shugo@ruby-lang.org>
16083         * test/ruby/test_settracefunc.rb: fixed tests for set_trace_func.
16085 Mon Nov 12 19:47:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16087         * thread.c (call_trace_proc): should return value.
16089 Mon Nov 12 19:45:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16091         * {bcc,win}32/Makefile.sub (miniruby): use $(COMMONOBJS) and $(DMYEXT)
16092           instead of $(LIBRUBY_A).
16094 Mon Nov 12 18:32:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16096         * {bcc,win}32/Makefile.sub (MINIOBJS): added prelude.$(OBJEXT).
16098 Mon Nov 12 17:13:23 2007  Tanaka Akira  <akr@fsij.org>
16100         * Makefile.in, common.mk: add prelude.o to MINIOBJS.
16102 Mon Nov 12 16:52:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16104         * lib/mkmf.rb (create_makefile): rdoc about srcprefix.  a patch from
16105           Daniel Berger <djberg96 AT gmail.com> in [ruby-core:13378].
16107 Mon Nov 12 16:48:09 2007  Tanaka Akira  <akr@fsij.org>
16109         * Makefile.in, common.mk: add ext_prelude.o to OBJS.
16111 Mon Nov 12 13:57:39 2007  Tanaka Akira  <akr@fsij.org>
16113         * configure.in (MINIDLNOBJS): removed.
16114           (MINIOBJS): set to dln.o if dmydln.o is not used.
16116         * Makefile.in (miniruby): use MINIOBJS instead of MINIDLNOBJS.
16118 Mon Nov 12 13:53:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16120         * misc/ruby-mode.el (ruby-parse-partial): handle stringified
16121           symbols properly using ruby-forward-string.
16123 Mon Nov 12 12:17:59 2007  Tanaka Akira  <akr@fsij.org>
16125         * configure.in (MINIDLNOBJS): defined.
16127         * Makefile.in (miniruby): use MINIDLNOBJS and COMMONOBJS instead of
16128           MINIOBJS and OBJS to avoid linking both dmydln.o and dln.o.
16130 Sun Nov 11 20:32:45 2007  Tanaka Akira  <akr@fsij.org>
16132         * {win32,wince,bcc32}/Makefile.sub: delete lex.c rule.
16134 Sun Nov 11 19:40:52 2007  Tanaka Akira  <akr@fsij.org>
16136         * Makefile.in (lex.c): simplified.
16138 Sun Nov 11 18:31:48 2007  Tanaka Akira  <akr@fsij.org>
16140         * Makefile.in (lex.c): touch lex.c if gperf failed but lex.c exists.
16141           Although this may cause non-updated lex.c,
16142           svn co may generate keywords newer than lex.c especially on
16143           a file system which can record fractional mtime such as XFS.
16145 Sun Nov 11 17:32:46 2007  Shugo Maeda  <shugo@ruby-lang.org>
16147         * insnhelper.ci (vm_call_method): pass mn->nd_clss to
16148           vm_call_cfunc() instead of klass.
16150         * vm.c (rb_thread_method_id_and_klass): traverse parent_iseq.
16152         * thread.c (call_trace_proc): use rb_thread_method_id_and_klass().
16154 Sun Nov 11 16:54:25 2007  Tanaka Akira  <akr@fsij.org>
16156         * lex.c: renamed from lex.c.blt.
16158         * Makefile.in (lex.c): use find command to check mtime.
16160 Sun Nov 11 05:34:13 2007  Eric Hodel  <drbrain@segment7.net>
16162         * bin/gem: Add forgotten gem command.
16164 Sat Nov 10 23:50:31 2007  Tanaka Akira  <akr@fsij.org>
16166         * string.c (tr_trans): cast to unsigned char after dereference
16167           a pointer to a char to avoid SEGV with "\377".tr("a", "b").
16168           on FreeBSD/amd64.
16170 Sat Nov 10 23:08:53 2007  Tanaka Akira  <akr@fsij.org>
16172         * configure.in, common.mk, Makefile.in: don't generate
16173           libminiruby-static.a.
16175 Sat Nov 10 19:46:54 2007  Tanaka Akira  <akr@fsij.org>
16177         * configure.in, common.mk, Makefile.in: generate libminiruby-static.a
16178           which contains prelude.o for miniruby.
16180 Sat Nov 10 18:10:07 2007  Tanaka Akira  <akr@fsij.org>
16182         * gem_prelude.rb: new file for gem libraries.  currently empty.
16184         * common.mk: generate ext_prelude.c by prelude.rb and gem_prelude.rb.
16185           ruby (not miniruby) is linked with ext_prelude.o instead of
16186           prelude.o.
16188         * inits.c (rb_call_inits): don't call Init_prelude.
16190         * ruby.c: support --disable-gems option.
16191           (ruby_init_gems): new function to define Gem::Enable and
16192           invoke Init_prelude.
16193           (process_options): call ruby_init_gems just after
16194           ruby_init_loadpath.
16196         * tool/compile_prelude.rb: support multiple files.
16198 Sat Nov 10 17:27:55 2007  Shugo Maeda  <shugo@ruby-lang.org>
16200         * thread.c (call_trace_proc): don't call ID2SYM() for ID_ALLOCATOR
16201           to avoid SEGV.
16203 Sat Nov 10 16:37:07 2007  Eric Hodel  <drbrain@segment7.net>
16205         * lib/rubygems: Import RubyGems revision 1493.
16207         * lib/rubygems.rb: ditto.
16209         * lib/ubygems.rb: ditto.
16211         * lib/rbconfig/datadir.rb: ditto.
16213         * test/rubygems: ditto.
16215 Sat Nov 10 16:34:21 2007  Eric Hodel  <drbrain@segment7.net>
16217         * lib/soap/property.rb: Don't override Enumerable#inject for 1.9.
16219 Sat Nov 10 14:43:30 2007  David Flanagan  <davidflanagan@ruby-lang.org>
16221         * parse.y: use ASCII encoding for string literals that are
16222           7-bit clean, fixing regression from my previous patch
16224 Sat Nov 10 13:18:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16226         * {bcc32,win32}/Makefile.sub: vendor_ruby support.
16228 Fri Nov  9 23:33:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16230         * parse.y (parser_nextc): added single line read forward buffer.
16232         * parse.y (parser_yylex): adjust line number for fluent interface.
16234 Fri Nov  9 22:04:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16236         * vm.h (FRAME_MAGIC_MASK_BITS): bits of FRAME_MAGIC_MASK.
16238         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): use shift operations.
16240 Fri Nov  9 21:46:28 2007  Koichi Sasada  <ko1@atdot.net>
16242         * eval.c (eval): should be volatile value for GC.
16244 Fri Nov  9 17:48:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16246         * ruby.c (locale_encoding): guesstimate encoding from environment
16247           variables.  [ruby-core:13315]
16249         * ruby.c (process_options): set primary encoding from environment.
16251 Fri Nov  9 16:51:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16253         * io.c (rb_io_each_byte): should update rbuf_off and rbuf_len for
16254           each iteration.  [ruby-dev:31659][ruby-dev:32192]
16256         * variable.c (rb_cvar_set): cvar assignment obey same rule to cvar
16257           reference.  [ruby-dev:32192]
16259 Fri Nov  9 15:52:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16261         * encoding.c (enc_check_encoding, rb_set_primary_encoding): ENCODING
16262           is no longer in FL_USERS flags.
16264 Fri Nov  9 15:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16266         * string.c (rb_str_squeeze_bang): initialize squeezing table if no
16267           arguments given.
16269 Fri Nov  9 13:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16271         * enum.c (each_with_index_i): use rb_yield_values() for
16272           compatibility with Enumerator#with_index().  a patch from Yusuke
16273           ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32195]
16275 Fri Nov  9 13:45:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16277         * test/ruby/test_iterator.rb (TestIterator::IterTest::each):
16278           #each_pair is now alias to #each.  [ruby-dev:32192]
16280         * test/ruby/test_iterator.rb (TestIterator::test_assoc_yield):
16281           ditto
16283 Fri Nov  9 12:56:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16285         * eval_load.c (loaded_feature_path): check with type of given feature.
16287 Fri Nov  9 12:43:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16289         * test/ruby/test_basicinstructions.rb: updated for new class
16290           behavior.  [ruby-dev:32192]
16292         * encoding.c (enc_name): Encoding should not rely on ENCODING in
16293           the FL_USERS flags.
16295         * encoding.c (rb_enc_from_encoding): do not call rb_enc_associate
16296           for encoding itself.
16298         * encoding.c (enc_register_at): ditto.
16300         * marshal.c (r_ivar): do not set real instance variable for
16301           encoding data associated.
16303 Fri Nov  9 10:43:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16305         * eval.c (send_internal): use self in the previous frame to check for
16306           protected methods.  [ruby-core:13254]
16308         * insnhelper.ci (vm_call_method): send! method has gone.
16310 Fri Nov  9 10:38:13 2007  Koichi Sasada  <ko1@atdot.net>
16312         * marshal.c (w_object): should be SPECIAL_CONST_P() instead of
16313           IMMEDIATE_P().
16315 Fri Nov  9 10:29:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16317         * eval.c (rb_invoke_method): check if invoked in function style.
16318           [ruby-core:13245]
16320         * insnhelper.ci (vm_call_cfunc, vm_cfunc_flags): stores and returns VM
16321           calling flags.
16323         * vm.c (rb_vm_cfunc_funcall_p): returns if the current method is
16324           invoked in function style.
16326 Fri Nov  9 10:10:21 2007  Koichi Sasada  <ko1@atdot.net>
16328         * cont.c: add rb_context_t#type.
16330 Fri Nov  9 10:05:54 2007  Koichi Sasada  <ko1@atdot.net>
16332         * ruby.c (set_arg0): fix breaking environ bugs.
16334 Fri Nov  9 07:26:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16336         * random.c: update MT URL.[ruby-core:13305].
16338 Thu Nov  8 17:09:55 2007  David Flanagan  <davidflanagan@ruby-lang.org>
16340         * object.c: improve docs for Object.tap
16342         * ChangeLog: fix bogus dates on my previous entries
16344 Thu Nov  8 15:13:56 2007 David Flanagan <davidflanagan@ruby-lang.org>
16346         * parse.y: fix segfault with \x escapes in regexps
16347           delete unused #if 0 code regions from previous patch
16349 Thu Nov  8 12:12:10 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16351         * parse.y (parser_read_escape): remove C99/gcc-ism.
16353 Thu Nov  8 07:54:22 2007 David Flanagan <davidflanagan@ruby-lang.org>
16355         * parse.y: patch, based on Nobu's, work to support \u escapes
16356                    also modifications for better coderange detection
16358         * test/ruby/test_unicode_escapes.rb: test cases
16360         * test/ruby/test_mixed_unicode_escapes.rb: mixed encoding test cases
16362 Thu Nov  8 07:14:37 2007 David Flanagan <davidflanagan@ruby-lang.org>
16364         * parse.y (rb_intern3): commented out broken code that prevented
16365           correct interning of multi-byte symbols.  Without this patch
16366           :x==:x is false when x is a multi-byte character.
16368 Thu Nov  8 07:04:31 2007 David Flanagan <davidflanagan@ruby-lang.org>
16370         * string.c (tr_setup_table, tr_trans): fix test failures
16371           in test/ruby/test_string.rb
16373 Wed Nov  7 15:07:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16375         * enum.c (enum_each_with_index): make different arrays at each
16376           iteration.  [ruby-dev:32181]
16378 Wed Nov  7 05:17:24 2007  David Flanagan <davidflanagan@ruby-lang.org>
16380         * eval.c: fix typo in invoke_method documentation
16382 Wed Nov  7 03:52:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16384         * array.c (rb_ary_product): core dumped with non array arguments.
16385           a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:32180]
16387 Wed Nov  7 03:32:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16389         * lib/rexml/encodings/SHIFT-JIS.rb (REXML::Encoding): place -x for
16390           nkf conversion.  a patch from <moonwolf AT moonwolf.com>.
16391           [ruby-dev:32183]
16393 Wed Nov  7 02:59:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16395         * array.c (rb_ary_each_index): should return meaningful value.
16397 Tue Nov  6 16:37:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16399         * eval_load.c (loaded_feature_path): need to expand relative paths.
16401         * eval_load.c (rb_feature_p): check if the feature is loading with
16402           load path.  [ruby-dev:31932]
16404         * eval_load.c (load_lock): check the result of barrier waiting.
16406         * thread.c (rb_barrier_wait): check if owned by the current thread.
16408         * thread.c (rb_barrier_release): ditto.
16410 Mon Nov  5 08:01:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16412         * eval.c (Init_eval): move #send to Kernel module from BasicObject.
16414 Mon Nov  5 05:17:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16416         * lib/optparse.rb (OptionParser::Switch::summarize): fix for long form
16417           option with very long argument.  a patch from Kobayashi Noritada
16418           <nori1 AT dolphin.c.u-tokyo.ac.jp> in [ruby-list:44179].
16420 Mon Nov  5 01:20:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16422         * parse.y (call_args): remove "parenthesize argument(s) for future
16423           version" warning.  when I added this warning, I had a plan to
16424           reimplement the parser that is simpler than the current one.
16425           since we abandoned the plan, warning no longer required.
16427 Mon Nov  5 01:02:56 2007  Minero Aoki  <aamine@loveruby.net>
16429         * lib/net/http.rb (HTTPHeader#initialize): provide default
16430           User-Agent to fix 500 error on some corrupted HTTP servers.
16431           [ruby-core:13135]
16433 Mon Nov  5 00:32:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16435         * eval.c (rb_f_send): allow send/__send__ to call methods of all
16436           visibility again.  we no longer provide __send, __send!.
16438         * eval.c (rb_invoke_method): new method to honor private
16439           visibility.  if it's invoked in a function call style, it calls
16440           private methods as well (previous 1.9 send behavior).
16442 Mon Nov  5 00:24:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16444         * win32/Makefile.sub: vendor_ruby support.
16446         * configure.in (RUBY_LIB): duplicated.
16448 Mon Nov  5 00:01:33 2007  Tanaka Akira  <akr@fsij.org>
16450         * re.c (rb_reg_quote): quote \v as well.
16452 Sun Nov  4 23:51:59 2007  Tanaka Akira  <akr@fsij.org>
16454         * re.c (rb_reg_initialize_m): use StringValuePtr instead of
16455           StringValueCStr because \0 exists when Regexp.new("\0").
16457 Sun Nov  4 08:11:19 2007  Tanaka Akira  <akr@fsij.org>
16459         * gc.c (count_objects): count TOTAL.
16461 Sun Nov  4 03:58:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16463         * string.c (tr_setup_table): use C array for characters that fit
16464           in a byte to gain performance.
16466         * string.c (rb_str_delete_bang): ditto.
16468         * string.c (rb_str_squeeze_bang): ditto.
16470         * string.c (rb_str_count): ditto.
16472         * string.c (tr_trans): ditto.
16474 Sun Nov  4 00:06:40 2007  Tanaka Akira  <akr@fsij.org>
16476         * gc.c (count_objects): ObjectSpace.count_objects implemented.
16477           [ruby-core:12301]
16479 Sat Nov  3 22:49:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16481         * hash.c (rb_hash_each_pair): make Hash#each to be alias to
16482           Hash#each_pair for compatibility and clarity.
16484         * hash.c (env_each_pair): ditto.
16486 Sat Nov  3 22:41:05 2007  Tanaka Akira  <akr@fsij.org>
16488         * configure.in: --with-vendor-hdrdir implemented.
16490         * lib/mkmf.rb: check --vendor argument.
16492         * README.EXT: explain --vendor option for extconf.rb
16494         * README.EXT.ja: ditto.
16496 Sat Nov  3 20:30:48 2007  Tanaka Akira  <akr@fsij.org>
16498         * configure.in: --with-vendordir implemented.
16500         * mkconfig.rb: add config to vendorlibdir and vendorarchdir.
16502         * instruby.rb: make vendor library directories.
16504         * ruby.c: insert vendor library directories into load path.
16506 Fri Nov  2 20:55:49 2007  Kouhei Sutou  <kou@cozmixng.org>
16508         * lib/rss/content.rb, lib/rss/content/, lib/rss/maker/content.rb,
16509           test/rss/test_content.rb, test/rss/test_maker_content.rb,
16510           test/rss/rss-testcase.rb (RSS::TestCase): supported
16511           content:encoded with RSS 2.0.
16512           Suggested by Sam Lown. Thanks.
16514 Fri Nov  2 20:47:04 2007  Kouhei Sutou  <kou@cozmixng.org>
16516         * lib/rss/rss.rb, test/rss/test_version.rb: 0.2.0 -> 0.2.1.
16518 Thu Nov  1 21:56:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16520         * error.c (Init_Exception): make NameError to be subclass of
16521           StandardError again.
16523         * error.c (Init_Exception): make SecurityError to be subclass of
16524           Exception, since it's too important to be handled implicitly.
16526 Thu Nov  1 14:51:39 2007 David Flanagan <davidflanagan@ruby-lang.org>
16527         * enum.c (take_while_i, drop_while_i) add RTEST to handle nil return
16529 Thu Nov  1 02:12:50 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16531         * common.mk (prereq): update the path of prelude.c.
16533         * common.mk (prelude.c): rollback a part of r13675, because it is not
16534           documented and causes build error.
16536 Thu Nov  1 01:52:23 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16538         * enum.c (enum_drop): fix typo.
16540 Thu Nov  1 01:51:01 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16542         * vm_core.h (ruby_current_thread): RUBY_EXTERN'ed for probeprofiler.
16544 Thu Nov  1 00:46:30 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
16546         * win32/configure.bat, setup.mak: now can recognize OS even if
16547           the ``--target'' option of configure is omitted.
16549         * win32/README.win32: update the descriptions about compiler.
16551 Wed Oct 31 03:13:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16553         * enum.c (enum_take_while): separate with-block form.
16555         * enum.c (drop_while_i): ditto.
16557         * enum.c (enum_butfirst): abandon butfirst method.  reverted.
16559 Tue Oct 30 10:03:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16561         * enum.c (enum_butfirst): add a new method to iterates over
16562           elements but first n.  RDoc need to be updated.
16564         * enumerator.c (Init_Enumerator): remove unnecessary symbol
16565           initialization.
16567 Mon Oct 29 18:42:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16569         * parse.y (bvar): block-local variable can shadow outer variable.
16570           [ruby-core:13036]
16572 Mon Oct 29 17:58:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16574         * string.c (rb_str_substr): performance improvement.  [ruby-dev:31806]
16576 Mon Oct 29 17:20:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16578         * encoding.c (rb_enc_replicate): new function to replicate encoding.
16580         * encoding.c (enc_based_encoding): Encoding#base_encoding returns
16581           based encoding of replica.
16583 Mon Oct 29 17:18:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16585         * encoding.c (rb_enc_compatible): ASCII encoding is compatible with
16586           ASCII-compatible encoding, even for non-string objects.
16588 Sun Oct 28 21:50:02 2007  Tanaka Akira  <akr@fsij.org>
16590         * lib/open-uri.rb: :redirect option implemented to disable redirects.
16591           (OpenURI::HTTPRedirect): new exception class for redirection.
16593 Fri Oct 26 17:38:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16595         * numeric.c (int_chr): take an optional encoding parameter.
16596           [ruby-core:12816]
16598 Fri Oct 26 17:14:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16600         * numeric.c (fix_pow): returns 1.0 for 0**0.0.
16602         * numeric.c (fix_pow): returns infinity for 0**-1.  [ruby-dev:32084]
16604 Fri Oct 26 15:00:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16606         * misc/ruby-style.el (ruby-style-{case,label}-indent): adjust for
16607           labels inside switch block.
16609 Fri Oct 26 05:48:57 2007  David Flanagan <davidflanagan@ruby-lang.org>
16610         * array.c: raise IndexError for negative length in rb_ary_fill
16612 Wed Oct 25 07:12:03 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16614         * lib/net/telnet.rb (Net::Telnet#login): Allowing "passphrase" in
16615           addition to "password" for Telnet login prompts. [ruby-Bugs-10746]
16617 Wed Oct 25 06:34:11 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16619         * lib/net/telnet.rb (Net::Telnet#login): Making the password prompt
16620           pattern case insensitive. [ruby-Bugs-10746]
16622 Fri Oct 26 04:21:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16624         * lib/net/pop.rb (Net::POP3::do_start): type fixed.  a patch from
16625           Dan Zwell <dzwell AT zwell.net> in [ruby-core:12941].
16627 Fri Oct 26 01:48:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16629         * array.c (rb_ary_assoc): check and convert inner arrays (assocs)
16630           using #to_ary.
16632         * hash.c (rb_hash_s_create): check and convert argument hash
16633           using #to_hash.
16635         * hash.c (rb_hash_s_create): Hash#[] now takes assocs as source of
16636           hash conversion.
16638 Thu Oct 25 16:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16640         * parse.y (parser_yylex): dot at the head of the line denote line
16641           continuation from previous one to support fluent interface.
16642           [experimental]
16644         * misc/ruby-mode.el (ruby-calculate-indent): support fluent dot.
16646 Thu Oct 25 14:19:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16648         * io.c (rb_io_tell, rb_io_seek): check errno too.  [ruby-dev:32093]
16650 Thu Oct 25 13:59:53 2007 David Flanagan <davidflanagan@ruby-lang.org>
16652         * parse.y (parser_tokspace): increment tokidx
16653           fixes test failure at [test/ruby/test_stringchar.rb:72]
16655 Thu Oct 25 09:49:49 2007  akira yamada  <akira@ruby-lang.org>
16657         * lib/uri.rb, lib/uri/ldaps.rb: added LDAPS
16658           scheme. [ruby-dev:31896]
16660 Wed Oct 25 06:23:14 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16662         * lib/xmlrpc/parser.rb (XMLRPC::Convert::dateTime): Fixing a bug that
16663           caused time zone conversion to fail for some ISO 8601 date formats.
16664           [ruby-Bugs-12677]
16666 Wed Oct 25 04:59:28 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16668         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Explicitly start
16669           the HTTP connection to support keepalive requests. [ruby-Bugs-9353]
16671 Wed Oct 25 04:46:53 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16673         * lib/xmlrpc/client.rb (XMLRPC::Client#do_rpc): Improving the error
16674           message for Content-Type check failures. [ruby-core:12163]
16676 Wed Oct 25 03:45:08 2007  James Edward Gray II  <jeg2@ruby-lang.org>
16678         * lib/xmlrpc/utils.rb (XMLRPC::ParseContentType#parse_content_type):
16679           Making Content-Type checks case insensitive. [ruby-Bugs-3367]
16681 Wed Oct 24 17:09:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16683         * parse.y (parser_tokspace): make space in token buffer.
16685         * parse.y (parser_yylex): fix encoding of single character literal.
16687 Tue Oct 23 13:44:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16689         * parse.y (call_args2): nd_head of NODE_BLOCK_PASS should be a list.
16690           [ruby-core:12850]
16692 Tue Oct 23 10:42:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16694         * ruby.c (process_options): encoding set by command line option takes
16695           priority over the encoding in the source, as the primary encoding.
16697 Mon Oct 22 19:24:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16699         * ruby.c (proc_options): allow space after -E (encoding) option.
16701 Mon Oct 22 11:03:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16703         * encoding.c (enc_check_encoding): returns index now.
16705         * encoding.c (rb_enc_compatible): check if two objects have compatible
16706           encodings.
16708         * encoding.c (enc_compatible_p): added Encoding.compatible?.
16710         * include/ruby/encoding.h (rb_enc_compatible): prototype.
16712 Sun Oct 21 18:29:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16714         * encoding.c (rb_enc_default, rb_enc_primary): return pointers to
16715           rb_encoding of default and primary respectively.  [ruby-core:12795]
16717         * encoding.c (set_primary_encoding): removed primary_encoding setter.
16719 Sat Oct 20 13:17:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16721         * enum.c (enum_cycle): hide temporary array from ObjectSpace.
16722           [ruby-core:12762]
16724 Sat Oct 20 11:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16726         * file.c (rb_get_path): returns frozen string.
16728         * file.c (rb_file_s_chown, rb_file_s_lchown): use uid_t and gid_t.
16730 Fri Oct 19 20:08:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16732         * encoding.c (rb_id_encoding): returns ID "encoding".
16734         * marshal.c (w_encoding): dump encoding name.
16736         * marshal.c (r_ivar): load encoding.
16738 Fri Oct 19 16:41:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16740         * parse.y (parser_regx_options, reg_compile_gen): relaxened encoding
16741           matching rule.
16743         * re.c (rb_reg_initialize): always set encoding of Regexp.
16745         * re.c (rb_reg_initialize_str): fix encoding for non 7bit-clean
16746           strings.
16748         * re.c (rb_reg_initialize_m): use ascii encoding for 'n' option.
16750 Fri Oct 19 11:09:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16752         * ruby.c (process_options): set primary encoding from the parser
16753           always.  [ruby-core:12758]
16755         * ruby.c (load_file): should not discard the parser parameter.
16757 Fri Oct 19 10:55:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16759         * range.c (range_last): removed unused variables.
16761 Thu Oct 18 17:08:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16763         * enum.c (enum_find_index): update RDoc.  a patch from David Flanagan
16764           <david AT davidflanagan.com> in [ruby-core:12710].
16766         * enum.c (enum_take, enum_drop): ditto.
16768         * enum.c (enum_cycle): should not cause infinite loop for empty
16769           arrays.  [ruby-core:12710]
16771         * range.c (Init_Range): typo fixed.
16773 Thu Oct 18 16:39:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16775         * lib/rexml/source.rb (REXML::SourceFactory::SourceFactory): more
16776           duck typed.  better performance on JRuby.
16777           http://headius.blogspot.com/2007/10/another-performance-discovery-rexml.html
16779 Thu Oct 18 09:33:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16781         * range.c (range_first): takes first n element if argument is
16782           given.  [ruby-core:12697]
16784         * range.c (range_last): returns last n elements if argument is
16785           given.
16787         * array.c (rb_ary_subseq, rb_ary_last): export.
16789 Wed Oct 17 17:39:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16791         * ruby.c (proc_options): fixed reversed condition.  [ruby-core:12722]
16793 Wed Oct 17 13:54:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16795         * re.c (rb_reg_s_union): the last check was not complete.
16797 Wed Oct 17 11:30:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16799         * encoding.c (rb_enc_from_encoding, rb_enc_register): associate index
16800           to self.
16802         * encoding.c (enc_capable): Encoding objects are encoding capable.
16804         * re.c (rb_reg_s_union): check if encoding matching by exact encoding
16805           objects.
16807 Wed Oct 17 06:18:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16809         * encoding.c (rb_enc_alias, rb_enc_find_index): changed
16810           enc_table_alias to a name-to-index hash.
16812         * encoding.c (rb_enc_init): use upper case names for aliases to use as
16813           constant names.
16815         * encoding.c (enc_find): allow symbols.
16817         * encoding.c (Init_Encoding): define encoding constants.
16819         * st.c (strcasehash): fix wrong code range condition.
16821 Wed Oct 17 05:07:18 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16823         * encoding.c (rb_primary_encoding): added Encoding.primary_encoding.
16825         * parse.y (rb_parser_encoding): added.
16827         * ruby.c (proc_options): added -E and --encoding options.
16829         * ruby.c (process_options): set primary encoding from command line
16830           option if set, or source encoding.
16832         * include/ruby/encoding.h (rb_enc_from_encoding,
16833           rb_get_primary_encoding, rb_set_primary_encoding): prototypes.
16835         * include/ruby/node.h (rb_parser_encoding): prototype.
16837 Wed Oct 17 03:37:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16839         * re.c (rb_reg_desc): set encoding.
16841         * re.c (rb_reg_s_union): check encodings.
16843         * enc/utf8.c (utf8_code_to_mbclen): 0xfe and 0xff are valid Unicode to
16844           be encoded to 2bytes in UTF-8.  [ruby-core:12700]
16846 Wed Oct 17 02:50:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16848         * string.c (rb_str_ord): use encoding.
16850 Wed Oct 17 01:57:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16852         * re.c (rb_reg_initialize_m): allow binary encoding option.
16853           [ruby-dev:32083]
16855 Tue Oct 16 19:48:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16857         * re.c (rb_reg_s_union): check for encoding of original object.
16859 Tue Oct 16 18:28:51 2007  Tanaka Akira  <akr@fsij.org>
16861         * debug.c: use enum for constants for gdb if possible.
16863 Tue Oct 16 18:20:10 2007  Tanaka Akira  <akr@fsij.org>
16865         * ruby.c, debug.c: move debug enum and constants to debug.c.
16867 Tue Oct 16 18:16:15 2007  Tanaka Akira  <akr@fsij.org>
16869         * ruby.c (RUBY_ENCODING_SHIFT): added as enum.
16871         * .gdbinit (rp): show encoding and coderange for strings.
16873 Tue Oct 16 14:48:38 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16875         * parse.y (parser_regx_options): check if regexp encoding option
16876           matches to current encoding.
16878         * re.c (char_to_option, rb_char_to_option_kcode): 'n' is not kcode
16879           option now.
16881         * re.c (rb_reg_to_s, rb_reg_error_desc): copy encoding rather than
16882           append as an option.
16884         * re.c (make_regexp, rb_reg_prepare_re): use encoding of Regexp and
16885           String instead of kcode.
16887         * re.c (rb_reg_initialize): set fixed option if none is set.
16889         * re.c (rb_reg_regcomp): ditto.
16891         * re.c (rb_reg_equal): check if encodings are equal.
16893         * re.c (rb_reg_initialize_m): encoding option is obsolete.
16895         * re.c (rb_kcode, rb_get_kcode, rb_set_kcode): removed.
16897         * re.c (Init_Regexp): removed Regexp#kcode method.
16899         * ruby.c (proc_options): allow long encoding name.
16901 Tue Oct 16 14:03:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16903         * re.c (rb_reg_s_union): encoding of all regexp objects should
16904           match.  [ruby-dev:32076]
16906 Tue Oct 16 13:49:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16908         * encoding.c (enc_to_s): rename function.
16910 Tue Oct 16 13:25:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16912         * string.c (rb_str_new4): should copy encoding.  a patch from NARUSE,
16913           Yui <naruse AT airemix.com>.  [ruby-dev:32076]
16915 Tue Oct 16 01:31:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16917         * enum.c (enum_inject): RDoc update.  a patch from David Flanagan
16918           <david AT davidflanagan.com> in [ruby-core:12710].
16920 Tue Oct 16 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
16922         * encoding.c (Init_Encoding): define #to_s to show encoding name
16923           in to_s representation as well as #inspect.
16925 Mon Oct 15 13:24:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16927         * numeric.c (flo_round): should be number but not rounding factor.
16928           [ruby-dev:32060]
16930 Mon Oct 15 11:45:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16932         * marshal.c (r_bytes0): refined length check.  [ruby-dev:32059]
16934 Mon Oct 15 10:24:19 2007  Tanaka Akira  <akr@fsij.org>
16936         * process.c (pst_to_s): returns a string such as "pid 10220 exit 1"
16937           instead of "256".  [ruby-dev:32053]
16938           (pst_inspect): change format
16939           "#<Process::Status: pid=10220,exited(1)>" to
16940           "#<Process::Status: pid 10220 exit 1>".
16942 Mon Oct 15 09:58:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16944         * marshal.c (r_bytes0): check if source has enough data.
16945           [ruby-dev:32054]
16947 Mon Oct 15 01:15:09 2007  Tanaka Akira  <akr@fsij.org>
16949         * ext/socket/socket.c (s_accept_nonblock): make accepted fd
16950           nonblocking.  [ruby-talk:274079]
16952 Sun Oct 14 17:31:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16954         * encoding.c (rb_obj_encoding): rdoc update.  a patch from David
16955           Flanagan <david AT davidflanagan.com>.  [ruby-core:12664]
16957         * encoding.c (enc_dump, enc_load): marshaling feature.  a patch from
16958           David Flanagan.  [ruby-core:12665]
16960         * encoding.c (Init_Encoding): undefine allocator of Encoding.
16961           [ruby-core:12665], [ruby-core:12666]
16963         * test/ruby/test_encoding.rb: tests for Encoding from David Flanagan
16964           [ruby-core:12665]
16966 Sun Oct 14 11:09:09 2007  Tanaka Akira  <akr@fsij.org>
16968         * lib/pp.rb (PP::PPMethods#pp_hash): don't sort keys because hash is
16969           ordered.
16970           (ENV.pretty_print): call pp_hash with sorted hash.
16972 Sun Oct 14 04:08:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16974         * configure.in (AC_SYS_LARGEFILE): keep results also in command
16975           options, to vail out of mismatch.  [ruby-list:44114]
16977         * mkconfig.rb, lib/mkmf.rb (configuration): add DEFS.
16979 Sun Oct 14 03:55:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16981         * win32/mkexports.rb: deal with __fastcall name decorations.
16982           [ruby-list:44111]
16984 Sun Oct 14 02:20:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
16986         * encoding.c (rb_cEncoding): new Encoding class.
16988         * encoding.c (rb_to_encoding, rb_to_encoding_index): helper functions.
16990         * encoding.c (rb_obj_encoding): return Encoding object now.
16992         * gc.c (garbage_collect): mark Encoding objects.
16994         * inits.c (rb_call_inits): call Init_Encoding.
16996         * string.c (rb_str_force_encoding): accept Encoding object as well as
16997           encoding name.
16999         * include/ruby/encoding.h (rb_to_encoding_index, rb_to_encoding):
17000           prototypes.
17002 Sun Oct 14 01:03:30 2007  Tanaka Akira  <akr@fsij.org>
17004         * lib/open-uri.rb (OpenURI.open_http): fix :ssl_ca_cert option.
17006 Sat Oct 13 21:23:21 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17008         * ext/win32ole/win32ole.c (foletype_s_ole_classes,
17009           foletype_s_typelibs): refactoring.
17011         * test/win32ole/test_win32ole_type.rb: add some test.
17013         * ext/win32ole/win32ole.c (Init_win32ole): change method name
17014           WIN32OLE_TYPELIB.ole_types from WIN32OLE_TYPELIB.ole_classes.
17016         * test/win32ole/test_win32ole_typelib.rb: ditto.
17018         * test/win32ole/test_folderitem2_invokeverb.rb: check create
17019           shortcut string more strictly (This test is invoked in Japanese
17020           Windows environment).
17022 Sat Oct 13 09:11:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17024         * parse.y (set_file_encoding): case-insensitive search, a patch from
17025           David Flanagan <david AT davidflanagan.com> [ruby-core:12629]
17027 Sat Oct 13 09:02:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17029         * {bcc,win}32/mkexports.rb: explicit data.  [ruby-list:44108]
17031 Sat Oct 13 00:17:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17033         * lib/rexml/document.rb (REXML::Document::write): leaky
17034           modification trans -> transitive.  [ruby-dev:32040]
17036 Sat Oct 13 00:00:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17038         * parse.y: encoding specifier should work if the line matches
17039           /coding[:=] ?/, a la Python PEP-263, so that VIM comments like
17040           "# vim: set fileencoding=<encoding name>" should be recognized.
17042 Fri Oct 12 15:04:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17044         * parse.y (magic_comments): add "encoding" as same as "coding".
17046         * parse.y (set_file_encoding): special file encoding handling.
17048         * parse.y (parser_yylex): ditto.
17050 Fri Oct 12 12:44:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17052         * array.c (rb_ary_combination): fixed memory corruption due to too
17053           small memory allocation
17055         * array.c (rb_ary_product): accessing out of memory bounds.
17056           condition fixed.
17058 Fri Oct 12 11:22:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17060         * re.c (match_values_at): make #select to be alias to #values_at
17061           to adapt RDoc description.  [ruby-core:12588]
17063 Thu Oct 11 21:10:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17065         * include/ruby/node.h (NOEX_LOCAL): remove unused local visibility.
17067         * class.c (ins_methods_push): ditto.
17069         * class.c (rb_class_local_methods): method removed.
17071 Thu Oct 11 14:29:31 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17073         * */Makefile.sub (COMMON_MACROS): workaround for old SDK's bug.
17074           [ruby-core:12584]
17076 Thu Oct 11 06:35:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17078         * Makefile.in, */Makefile.sub (VPATH): add enc directory.
17080         * common.mk (ENCOBJS): encoding objects.
17082         * enc: directory for encodings.
17084 Thu Oct 11 00:04:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17086         * include/ruby/oniguruma.h (OnigEncodingTypeST): add OnigEncoding
17087           parameter to every function members.
17089         * include/ruby/oniguruma.h (OnigEncodingTypeST): add auxiliary
17090           data member to provide user defined data for an encoding.
17092 Wed Oct 10 23:32:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17094         * re.c (rb_reg_s_quote): no longer takes optional second argument
17095           that has never been documented.
17097 Wed Oct 10 15:39:04 2007  Tanaka Akira  <akr@fsij.org>
17099         * encoding.c (rb_enc_init): don't alias iso-8859-1 to ascii.
17101         * ascii.c (OnigEncodingASCII): change the name US-ASCII to ASCII-8BIT.
17103 Wed Oct 10 14:31:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17105         * string.c (rb_enc_str_coderange): fixed check for non-ascii.
17107 Tue Oct  9 21:35:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17109         * array.c (rb_ary_permutation, rb_ary_combination): missing type
17110           names.
17112         * array.c (rb_ary_permutation): used buffer should be t1.
17114         * array.c (rb_ary_permutation): use frozen shared hidden array.
17115           [ruby-dev:31985]
17117 Tue Oct  9 16:58:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17119         * array.c: remove to_a completely.
17121         * array.c (tmpbuf): keep DRY to clear klass of temporary objects.
17123 Tue Oct  9 16:33:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17125         * array.c (rb_ary_permutation, rb_ary_combination, rb_ary_product):
17126           hide internal buffer objects.  [ruby-dev:31982]
17128 Tue Oct  9 16:00:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17130         * parse.y (parser_read_escape, parser_tokadd_escape): check code range.
17131           [ruby-dev:31980]
17133 Tue Oct  9 15:40:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17135         * parse.y (STR_NEW3): check for if single byte sequence.
17137 Mon Oct  8 20:06:29 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17139         * lib/net/imap.rb, lib/net/smtp.rb, lib/net/pop.rb: hostname should
17140           be verified against server's identity as presented in the server's
17141           certificate. [ruby-dev:31960]
17143         * ext/openssl/lib/net/telnets.rb, ext/openssl/lib/net/ftptls.rb: ditto.
17145 Sun Oct  7 22:37:47 2007  Kouhei Sutou  <kou@cozmixng.org>
17147         * test/rss/test_taxonomy.rb, test/rss/test_parser_1.0.rb,
17148           test/rss/test_image.rb, test/rss/rss-testcase.rb: ensured
17149           declaring XML namespaces.
17151 Sun Oct  7 22:00:01 2007  Tanaka Akira  <akr@fsij.org>
17153         * include/ruby/node.h: make node flags as VALUE type.
17154           enum ruby_node_flags removed.
17156         * ruby.c: define RUBY_NODE_* as const for gdb.
17158 Sun Oct  7 18:57:12 2007  Tanaka Akira  <akr@fsij.org>
17160         * include/ruby/ruby.h: enum ruby_value_flags removed.  [ruby-dev:31959]
17162         * ruby.c: define RUBY_FL_* as const VALUE for gdb.
17164 Sun Oct  7 17:50:14 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17166         * lib/net/http.rb: remove enable_post_connection_check flag.
17168         * lib/open-uri.rb: ditto.
17170 Sun Oct  7 15:48:40 2007  Koichi Sasada  <ko1@atdot.net>
17172         * insns.def (opt_eq): fix to use rb_str_equal().
17174 Sat Oct  6 23:14:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17176         * string.c (rb_str_to_i): update RDoc since base can be any value
17177           between 2 and 36.  [ruby-talk:272879]
17179 Sat Oct  6 16:24:02 2007  Koichi Sasada  <ko1@atdot.net>
17181         * cont.c (cont_free): check Fiber or Continuation.
17183         * bootstraptest/test_knownbug.rb: remove a fixed test.
17185 Sat Oct  6 14:56:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17187         * encoding.c (rb_enc_register): returns new index or -1 if failed.
17189         * encoding.c (rb_enc_alias): check if original name is registered.
17191         * encoding.c (rb_enc_init): register in same order as kcode options in
17192           re.c.  added new aliases.
17194         * string.c (rb_str_force_encoding): check if valid encoding name.
17196 Sat Oct  6 14:32:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17198         * insns.def (opt_eq): get rid of gcc bug.
17200 Sat Oct  6 02:34:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17202         * include/ruby/defines.h: no longer provide DEFAULT_KCODE.
17204 Fri Oct  5 21:24:59 2007  Tanaka Akira  <akr@fsij.org>
17206         * re.c (rb_reg_s_union_m): Regexp.union accepts single argument which
17207           is an array of patterns.  [ruby-list:44084]
17209 Fri Oct  5 16:42:27 2007  Tanaka Akira  <akr@fsij.org>
17211         * bootstraptest/runner.rb (assert_not_match): new method.
17213 Fri Oct  5 16:15:52 2007  Akinori MUSHA  <knu@iDaemons.org>
17215         * configure.in: Turn on --enable-pthread by default for FreeBSD
17216           5.2.1-RELEASE and later, and remove pthread support for older
17217           versions which has never worked perfectly.
17219 Fri Oct  5 16:11:50 2007  Akinori MUSHA  <knu@iDaemons.org>
17221         * time.c (time_to_s): Fix documentation.  Time format changed.
17223 Fri Oct  5 04:02:39 2007  Akinori MUSHA  <knu@iDaemons.org>
17225         * lib/ipaddr.rb (in_addr, in6_addr, addr_mask): Make some minor
17226           code optimization.
17228 Fri Oct  5 03:25:51 2007  Akinori MUSHA  <knu@iDaemons.org>
17230         * lib/ipaddr.rb (<=>): Implement IPAddr#<=> and make IPAddr
17231           comparable.
17233         * lib/ipaddr.rb (succ): Implement IPAddr#succ.  You can now create
17234           a range between two IPAddr's, which (Range) object is
17235           enumerable.
17237         * lib/ipaddr.rb (to_range): A new method to create a Range object
17238           for the (network) address.
17240 Fri Oct  5 03:14:45 2007  Akinori MUSHA  <knu@iDaemons.org>
17242         * lib/ipaddr.rb (coerce_other): Support type coercion and make &,
17243           |, == and include? accept a string or an integer instead of an
17244           IPAddr object as the argument.
17246         * lib/ipaddr.rb (initialize): Give better error messages.
17248         * lib/ipaddr.rb: Improve documentation.
17250 Thu Oct  4 20:45:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17252         * process.c (Init_process): win32 has our own WNOHANG definition, so
17253           remove unnecessary #ifdef guard.
17255 Thu Oct  4 20:17:19 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17257         * array.c (rb_ary_permutation, rb_ary_product): support non C99
17258           compilers.
17260 Thu Oct  4 17:33:18 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17262         * re.c (kcode_setter): Perl-ish global variable `$=' no longer
17263           effective.
17265         * io.c (Init_IO): remove obsolete variables: $defout, $deferr.
17267         * re.c (Init_Regexp): remove obsolete const alias: MatchingData.
17269         * time.c (Init_Time): remove obsolete Time::times.
17271         * re.c (ignorecase_setter): change warning message.
17273         * re.c (ignorecase_getter): now gives warning.
17275         * string.c (rb_str_cmp_m): update RDoc document.
17277         * re.c (kcode_setter): restore erroneously removed setter.
17279 Thu Oct  4 16:28:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17281         * encoding.c (rb_obj_encoding): returns encoding of the given object.
17283         * parse.y (reg_compile_gen): copy encoding from source string if
17284           non-empty.
17286         * re.c (Init_Regexp): new method Regexp#encoding.
17288         * string.c (str_encoding): moved to encoding.c
17290 Thu Oct  4 15:49:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17292         * array.c (rb_ary_permutation): remove C99 dependency.
17293           [ruby-dev:31934]
17295         * array.c (rb_ary_product): ditto.
17297 Wed Oct  3 23:37:17 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17299         * ext/nkf/nkf.c, bin/ri, bin/irb: fixed typos in doc and comments.
17300           a patch from Eugene Ossintsev  <eugoss AT gmail.com>.
17301           [ruby-core:12375]
17303 Wed Oct  3 17:56:22 2007  Koichi Sasada  <ko1@atdot.net>
17305         * benchmark/driver.rb: enable specify label to executable.
17306           (-e "ruby1::/path/to/ruby1; ruby2::/path/to/ruby2; ...")
17308 Wed Oct  3 16:58:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17310         * parse.y (parser_str_new, parser_yylex, rb_intern3): set code-range
17311           bits.
17313         * parse.y (parser_tokadd_string): check code-range.
17315         * parse.y (parser_parse_string, parser_here_document): ditto.
17317         * parse.y (parser_set_encode): check if valid encoding.
17319 Wed Oct  3 15:43:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17321         * variable.c (rb_cvar_set): check whether class variable is
17322           defined in superclasses.  root classes have higher priority.
17323           removes lower class variable entry from IV_TBL (if it's defined
17324           in classes, not modules).
17326         * variable.c (rb_cvar_get): ditto.
17328 Wed Oct  3 10:06:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17330         * ruby.c (ruby_process_options): push frame with program name.
17331           [ruby-core:12351]
17333 Tue Oct  2 20:16:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17335         * win32/win32.c (init_env): refactoring. remove unused code.
17337 Tue Oct  2 12:30:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17339         * array.c (rb_ary_product): generalized product, now takes
17340           arbitrary number of arrays.  a patch from David Flanagan
17341           <david AT davidflanagan.com>.  [ruby-core:12346]
17343 Tue Oct  2 08:25:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17345         * array.c (rb_ary_permutation): implementation contributed from
17346           David Flanagan.  [ruby-core:12344]
17348         * array.c (rb_ary_combination): RDoc update to clarify.  a patch
17349           from David Flanagan.  [ruby-core:12344]
17351         * array.c (rb_ary_permutation): small dirty hack by Matz to avoid
17352           arrays on stack.
17354 Tue Oct  2 07:01:05 2007  Koichi Sasada  <ko1@atdot.net>
17356         * proc.c (proc_dup): proc->block.proc should be self.
17358         * bootstraptest/test_knownbug.rb, test_method.rb:
17359           move a fixed test.
17361 Mon Oct  1 16:17:44 2007  Tanaka Akira  <akr@fsij.org>
17363         * bootstraptest/test_method.rb: use assert_normal_exit to test
17364           [ruby-dev:31818].
17366 Mon Oct  1 15:57:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17368         * gc.c (id2ref): skip ICLASS.
17370 Mon Oct  1 15:29:35 2007  Tanaka Akira  <akr@fsij.org>
17372         * bootstraptest/runner.rb (assert_normal_exit): use `` instead of
17373           system.
17375 Mon Oct  1 15:17:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17377         * gc.c (id2ref): T_VALUES is less than T_BLOCK.  [ruby-dev:31911]
17379 Mon Oct  1 10:58:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17381         * ruby.c (require_libraries): use require method instead of calling
17382           rb_require directly.  [ruby-dev:31322]
17384 Mon Oct  1 10:52:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17386         * eval.c (ruby_options), ruby.c (proc_options, process_options): not
17387           call exit(2) directly.  [ruby-dev:31912]
17389         * eval.c (ruby_run_node): deal with direct exit code.
17391 Sun Sep 30 17:12:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17393         * string.c (rb_str_append): always set encoding, and coderange
17394           cache bits.
17396         * include/ruby/encoding.h (ENC_CODERANGE_SET): fixed a bug not to
17397           set cache bits.
17399 Sun Sep 30 11:52:11 2007  Tanaka Akira  <akr@fsij.org>
17401         * bootstraptest/runner.rb (pretty): don't show beginning empty line.
17403 Sun Sep 30 11:32:34 2007  Tanaka Akira  <akr@fsij.org>
17405         * numeric.c: use #ifdef for test LONG_LONG_VALUE.
17407 Sun Sep 30 04:30:55 2007  Tanaka Akira  <akr@fsij.org>
17409         * bignum.c: use SIZEOF_LONG instead of SIZEOF_ULONG which is not
17410           defined.
17412 Sun Sep 30 04:03:43 2007  Tanaka Akira  <akr@fsij.org>
17414         * re.c (Init_Regexp): test DEFAULT_KCODE in C code because
17415           KCODE_EUC, etc. are enum.
17417 Sun Sep 30 00:55:40 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17419         * variable.c (obj_ivar_each): get rid of warning.
17421 Sat Sep 29 17:45:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17423         * main.c (main): use platform-independent per-process initialization.
17424           [ruby-dev:31900]
17426         * ruby.c (ruby_sysinit): new function for per-process initialization.
17428         * include/ruby/ruby.h (RUBY_GLOBAL_SETUP): toplevel setup declaration.
17430         * include/ruby/win32.h, win32/mkexports.rb: alias NtInitialize
17431           ruby_sysinit.
17433         * win32/win32.c (rb_w32_sysinit): renamed from NtInitialize.
17435 Sat Sep 29 17:31:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17437         * array.c (rb_ary_combination): new method to give all combination
17438           of elements from an array.  [ruby-list:42671]
17440         * array.c (rb_ary_product): a new method to get all combinations
17441           of elements from two arrays.  can be extended to combinations of
17442           n-arrays, e.g. a.product(b,c,d).  anyone volunteer?
17444         * array.c (rb_ary_permutation): empty function body to calculate
17445           permutations of array elements.  need volunteer.
17447 Sat Sep 29 17:14:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17449         * marshal.c (r_leave): move proc invocation from r_entry() to
17450           avoid potential crash.
17452 Sat Sep 29 12:28:08 2007  Tanaka Akira  <akr@fsij.org>
17454         * bootstraptest/runner.rb (assert_normal_exit): new method.
17456         * bootstraptest/test_knownbug.rb: add test for Marshal.load.
17458 Sat Sep 29 10:12:20 2007  Tanaka Akira  <akr@fsij.org>
17460         * variable.c (rb_ivar_set): fix class instance variable.
17462         * object.c (rb_class_real): cl argument may be 0.
17464 Sat Sep 29 09:12:02 2007  Tanaka Akira  <akr@fsij.org>
17466         * object.c (rb_class_real): use BUILTIN_TYPE instead of TYPE.
17467           access flags directly instead of FL_TEST.
17468           they are enough because cl argument is a class.
17470 Sat Sep 29 08:57:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17472         * include/ruby/win32.h (strcasecmp): needed for type_strcasehash.
17474 Sat Sep 29 06:47:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17476         * ruby.c (struct cmdline_options): static variables packed.
17478 Sat Sep 29 05:29:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17480         * io.c (rb_io_fdopen): create IO object from fd.
17482         * parse.y (yycompile): use encoding of the source as default.
17484         * ruby.c (proc_options, load_file): ditto.
17486 Sat Sep 29 04:27:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17488         * encoding.c (rb_enc_alias): allow encodings multiple aliases.
17490         * encoding.c (rb_enc_find_index): search the encoding which has the
17491           given name and return its index if found, or -1.
17493         * st.c (type_strcasehash): case-insensitive string hash type.
17495         * string.c (rb_str_force_encoding): force encoding of self.  this name
17496           comes from [ruby-dev:31894] by Martin Duerst.  [ruby-dev:31744]
17498         * include/ruby/encoding.h (rb_enc_find_index, rb_enc_associate_index):
17499           prototyped.
17501         * include/ruby/encoding.h (rb_enc_isctype): direct interface to ctype.
17503         * include/ruby/st.h (st_init_strcasetable): prototyped.
17505 Sat Sep 29 03:53:26 2007  Koichi Sasada  <ko1@atdot.net>
17507         * cont.c: Thread local storage should be fiber local.
17509         * bootstraptest/test_knownbug.rb, test/ruby/test_fiber.rb:
17510           move a fixed test.
17512 Fri Sep 28 23:15:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17514         * insnhelper.ci (vm_call_method): allow send! to call protected
17515           methods as well.  [ruby-core:12280]
17517 Fri Sep 28 22:33:47 2007  Koichi Sasada  <ko1@atdot.net>
17519         * benchmark/bm_so_fasta.rb: added.
17521         * benchmark/bm_so_k_nucleotide.rb: added.
17523         * benchmark/bm_so_reverse_complement.rb: added.
17525         * benchmark/make_fasta_output.rb: added.
17527         * benchmark/prepare_so_k_nucleotide.rb: added.
17529         * benchmark/prepare_so_reverse_complement.rb: added.
17531 Fri Sep 28 19:14:51 2007  Koichi Sasada  <ko1@atdot.net>
17533         * benchmark/driver.rb: fix notations.
17535         * benchmark/bm_loop_whileloop.rb: ditto.
17537         * benchmark/bm_loop_whileloop2.rb: ditto.
17539         * benchmark/bm_app_uri.rb: added.
17541         * benchmark/bm_vm1_ivar_set.rb: ditto.
17543         * benchmark/bm_so_binary_trees.rb: added from Computer Language
17544           Benchmarks Game (http://shootout.alioth.debian.org/).
17546         * benchmark/bm_so_fannkuch.rb: ditto.
17548         * benchmark/bm_so_mandelbrot.rb: ditto.
17550         * benchmark/bm_so_meteor_contest.rb: ditto.
17552         * benchmark/bm_so_nbody.rb: ditto.
17554         * benchmark/bm_so_nsieve.rb: ditto.
17556         * benchmark/bm_so_nsieve_bits.rb: ditto.
17558         * benchmark/bm_so_partial_sums.rb: ditto.
17560         * benchmark/bm_so_pidigits.rb: ditto.
17562         * benchmark/bm_so_spectralnorm.rb: ditto.
17564 Fri Sep 28 16:22:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17566         * vm_core.h (rb_vm_struct): fix typo: bufferd -> buffered.
17568 Fri Sep 28 15:47:48 2007  Koichi Sasada  <ko1@atdot.net>
17570         * benchmark/driver.rb: fix to output benchmark results
17571           to file "bmlog-#{Time.now.strftime('%Y%m%d-%H%M%S')}.#{$$}".
17573         * benchmark/bm_io_file_create.rb: remove useless codes.
17575         * benchmark/bm_vm2_eval.rb: added.
17577 Fri Sep 28 15:05:24 2007  Tanaka Akira  <akr@fsij.org>
17579         * include/ruby/intern.h: export rb_ivar_foreach.
17581         * include/ruby/ruby.h: modify struct RObject and RClass for optimizing
17582           T_OBJECT space.  [ruby-dev:31853]
17583           (ROBJECT_LEN, ROBJECT_PTR)
17584           (RCLASS_IV_TBL, RCLASS_M_TBL, RCLASS_SUPER, RCLASS_IV_INDEX_TBL)
17585           (RMODULE_IV_TBL, RMODULE_M_TBL, RMODULE_SUPER): abstract accessor
17586           defined.
17588         * variable.c: support the modified RObject and RClass.
17590         * object.c: ditto.
17592         * class.c: ditto.
17594         * gc.c: ditto.
17596         * marshal.c: ditto.
17598         * eval_method.ci: use the abstract accessor.
17600         * insns.def: ditto.
17602         * proc.c: ditto.
17604         * struct.c: ditto.
17606         * eval.c: ditto.
17608         * error.c: ditto.
17610         * vm.c: ditto.
17612         * insnhelper.ci: ditto.
17614         * ext/digest/digest.c: ditto.
17616 Fri Sep 28 13:20:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17618         * io.c (rb_io_getline_fast, rb_io_getline_1): set encoding to the
17619           result string, as well as getc.
17621 Fri Sep 28 12:51:42 2007  Koichi Sasada  <ko1@atdot.net>
17623         * benchmark/bm_app_erb.rb: added.
17625         * benchmark/bm_io_file_(create|read|write).rb: added.
17627 Fri Sep 28 12:49:05 2007  Koichi Sasada  <ko1@atdot.net>
17629         * benchmark/driver.rb: fix file selection algorithm.
17631 Fri Sep 28 02:05:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17633         * string.c (rb_str_comparable): need not to check asciicompat here.
17635         * encoding.c (rb_enc_check): ditto.
17637         * string.c (rb_enc_str_coderange): tuned a bit; no broken check.
17639         * encoding.c (rb_enc_check): new encoding comparison criteria.
17641 Thu Sep 27 17:36:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
17643         * win32/REAMDE.win32: follow recent changes.
17645 Thu Sep 27 16:01:53 2007  Koichi Sasada  <ko1@atdot.net>
17647         * benchmark/driver.rb: fix to output some helpful messages.
17649 Thu Sep 27 15:44:51 2007  Koichi Sasada  <ko1@atdot.net>
17651         * benchmark/driver.rb: added.
17653         * common.mk: fix to use above driver.
17655         * benchmark/prepare_so_count_words.rb: added.
17657         * benchmark/bm_so_count_words.rb: fix benchmark process.
17659 Thu Sep 27 15:42:34 2007  Koichi Sasada  <ko1@atdot.net>
17661         * ext/fiber/fiber.c: modify prototype declaration.
17662           [ruby-core:12247]
17664 Thu Sep 27 09:42:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17666         * parse.y (strings, xstring, regexp, dsym): empty strings have
17667           US-ASCII encoding.
17669 Thu Sep 27 07:39:13 2007  Tanaka Akira  <akr@fsij.org>
17671         * bootstraptest/runner.rb (assert_finish): new method.
17673         * bootstraptest/test_knownbug.rb: add test for [ruby-dev:31866] using
17674           assert_finish.
17676 Thu Sep 27 04:46:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17678         * encoding.c (rb_enc_associate_index): deal with ASCII compatible
17679           flags.
17681         * encoding.c (rb_enc_check): allow ASCII compatible strings.
17683         * parse.y (rb_intern_str): use ASCII encoding for ASCII string.
17685         * string.c (rb_enc_str_coderange): check for code-range.
17687         * string.c (rb_str_modify): clear code-range flags.
17689         * string.c (rb_str_hash, rb_str_eql): ASCII compatible strings are
17690           comparable.
17692         * include/ruby/encoding.h: added code-range flags.
17694 Thu Sep 27 04:40:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17696         * gc.c (rb_mark_set): new function to mark keys.
17698         * marshal.c (struct dump_arg, struct load_arg): added wrappers to mark
17699           data and compat_tbl entries.  [ruby-dev:31870]
17701 Thu Sep 27 03:17:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17703         * process.c (rb_waitpid): no needs to poll.  [ruby-dev:31871]
17705 Wed Sep 26 20:11:46 2007  Koichi Sasada  <ko1@atdot.net>
17707         * bootstraptest/test_knownbug.rb: remove a fixed test.
17709 Wed Sep 26 20:00:12 2007  Koichi Sasada  <ko1@atdot.net>
17711         * bootstraptest/test_knownbug.rb: move fixed tests.
17713         * bootstraptest/test_method.rb: ditto.
17715         * test/ruby/test_io.rb: ditto.
17717 Wed Sep 26 19:36:26 2007  Koichi Sasada  <ko1@atdot.net>
17719         * eval.c (eval): fix to check stack overflow.
17720           [ruby-dev:31850]
17722         * eval_intern.h, vm.h: move CHECK_STACK_OVERFLOW() macro.
17724 Wed Sep 26 19:27:11 2007  Koichi Sasada  <ko1@atdot.net>
17726         * insnhelper.ci (vm_throw): fix to move increment point.
17727           [ruby-dev:31840]
17729 Wed Sep 26 19:23:56 2007  Koichi Sasada  <ko1@atdot.net>
17731         * cont.c: Fiber as SemiCoroutine on default. [ruby-core:12146]
17733         * ext/fiber/fiber.c: enable Fiber#transfer.
17735 Wed Sep 26 18:38:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17737         * encoding.c (rb_enc_check): check for ASCII-compatibilities.
17739         * parse.y (parser_tokadd_string, parser_parse_string,
17740           parser_here_document, parser_yylex): set encoding to US-ASCII.
17742         * parse.y (rb_enc_symname_p): check if valid with encoding.
17744         * parse.y (rb_intern3): let symbols have encoding.
17746         * string.c (rb_str_hash): add encoding index.
17748         * string.c (rb_str_comparable, rb_str_equal, rb_str_eql): check if
17749           compatible encoding.
17751         * string.c (sym_inspect): made encoding aware.
17753         * insns.def (opt_eq): compare with encoding.
17755         * include/ruby/encoding.h (rb_enc_asciicompat): check if ASCII
17756           compatible.
17758         * include/ruby/encoding.h (rb_enc_get_index): added prototype.
17760         * include/ruby/intern.h (rb_str_comparable, rb_str_equal): ditto.
17762 Wed Sep 26 15:01:16 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17764         * eval_method.ci (rb_get_alloc_func): cast to suppress a warning.
17766         * eval_method.ci (remove_method): local variable to be initialized.
17768 Wed Sep 26 08:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17770         * Makefile.in (ext/extinit.o): use $(OUTFLAG) as well as other
17771           objects.  [ruby-Bugs-14228]
17773 Wed Sep 26 05:12:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17775         * parse.y (parser_yyerror): limit error message length.
17776           [ruby-dev:31848]
17778 Tue Sep 25 15:11:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17780         * io.c (io_ungetc): reallocate internal buffer if pushing data
17781           excess capacity.  [ruby-dev:31650]
17783 Tue Sep 25 13:43:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17785         * eval_method.ci (remove_method): should not remove undef place
17786           holder.  [ruby-dev:31816], [ruby-dev:31817]
17788 Tue Sep 25 09:51:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17790         * eval.c (rb_longjmp): source file information may be NULL.
17791           [ruby-dev:31849]
17793         * eval.c (ruby_finalize_0): clear trace_func before finalization.
17795 Mon Sep 24 22:36:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17797         * array.c (rb_ary_equal): should handle recursive array.
17799         * hash.c (hash_equal): should handle recursive hash.
17801 Mon Sep 24 22:14:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17803         * lib/weakref.rb (WeakRef): remove debug print.  [ruby-dev:31799]
17805         * hash.c (hash_i): avoid too frequent hash conflict where key and
17806           value are same.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
17807           [ruby-dev:31802]
17809 Mon Sep 24 17:56:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17811         * ext/strscan/strscan.c (strscan_initialize, strscan_getch): use the
17812           encoding of the target string instead of setting to StringScanner
17813           instance.  [ruby-dev:31831]
17815 Mon Sep 24 16:52:11 2007  Urabe Shyouhei  <shyouhei@ruby-lang.org>
17817         * lib/net/http.rb: fix typo.
17819 Mon Sep 24 06:49:15 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
17821         * lib/net/http.rb: an SSL verification (the server hostname should
17822           be matched with its certificate's commonName) is added.
17823           this verification can be skipped by
17824           "Net::HTTP#enable_post_connection_check=(false)".
17825           suggested by Chris Clark <cclark at isecpartners.com>
17827         * lib/net/open-uri.rb: use Net::HTTP#enable_post_connection_check to
17828           perform SSL post connection check.
17830         * ext/openssl/lib/openssl/ssl.c
17831           (OpenSSL::SSL::SSLSocket#post_connection_check): refine error message.
17833 Sun Sep 23 09:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17835         * gc.c (os_obj_of, os_each_obj): hide objects to be finalized.
17836           [ruby-dev:31810]
17838 Sun Sep 23 08:58:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17840         * eval_method.ci (rb_attr): should not use alloca for unknown size
17841           input.  [ruby-dev:31818]
17843         * parse.y (rb_intern_str): prevent str from optimization.
17845 Sun Sep 23 06:16:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17847         * eval_method.ci (remove_method): check for undefined method.
17848           [ruby-dev:31816]
17850 Sun Sep 23 05:42:35 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
17852         * lib/rdoc/options.rb (Options::check_diagram): dot -V output
17853           changed. [ ruby-Bugs-11978 ], Thanks Florian Frank.
17855 Sat Sep 22 06:02:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17857         * lib/optparse.rb (OptionParser::List::summarize): use each_line if
17858           defined rather than each.  [ruby-Patches-14096]
17860 Sat Sep 22 05:19:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17862         * ext/stringio/stringio.c (strio_init): separate from strio_initialize
17863           to share with strio_reopen properly.  [ruby-Bugs-13919]
17865 Fri Sep 21 14:51:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17867         * gc.c (gc_mark_rest): copy just used part.
17869         * gc.c (gc_mark_children): mark u1 and u2 of NODE_ARGSCAT.
17871         * gc.c (os_obj_of): hide T_VALUES too.  [ruby-dev:31804]
17873         * gc.c (run_final): freeze temporary argument array.
17875 Fri Sep 21 04:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17877         * misc/ruby-style.el (ruby-style-label-indent): fix for function top
17878           level labels.
17880 Fri Sep 21 02:11:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17882         * re.c (rb_reg_match_m): evaluate a block if match.  it would make
17883           condition statement much shorter, if no else clause is needed.
17885         * string.c (rb_str_match_m): ditto.
17887 Fri Sep 21 02:02:34 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
17889         * hash.c (hash_equal): should call rb_eql when argument eql is set.
17891 Thu Sep 20 17:28:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17893         * io.c (popen_exec), process.c (rb_spawn): stop other threads before
17894           exec.  [ruby-core:08262]
17896 Tue Sep 18 22:08:42 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
17898         * lib/matrix.rb: fix a coerce bug of Vector. [ruby-core: 12190]
17900 Mon Sep 17 21:06:03 2007  Minero Aoki  <aamine@loveruby.net>
17902         * lib/net/http.rb (HTTP::GenericRequest#initialize): check path is
17903           not nil. [ruby-dev:31149]
17905 Mon Sep 17 21:00:51 2007  Minero Aoki  <aamine@loveruby.net>
17907         * parse.y (ripper): rename event: arglist_* -> args_*.
17909         * parse.y (ripper): rename event: restparam -> rest_param.
17911         * parse.y (ripper): rename event: constpath_* -> const_path_*.
17913         * parse.y (ripper): rename event: topconst_* -> top_const_*.
17915         * parse.y (ripper): rename event: iter_block -> method_add_block.
17917         * parse.y (ripper): support block local parameter declaration.
17919         * parse.y (ripper): introduce new macro params_new.
17921         * ext/ripper/lib/ripper/sexp.rb: should not dispose event
17922           arguments whose name ends with "_new" but arity != 0.
17924 Sat Sep 15 23:36:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17926         * parse.y (struct parser_params): common members in the parser and
17927           ripper must be placed at each same location.
17929 Sat Sep 15 18:25:15 2007  Kouhei Sutou  <kou@cozmixng.org>
17931         * string.c (rb_str_rstrip_bang): fixed too much rstrip. [ruby-dev:31786]
17933 Sat Sep 15 17:32:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17935         * parse.y (parser_initialize): set default encoding.  [ruby-dev:31787]
17937         * ruby.c (load_file): make new parse instance after processing shebang
17938           line options.
17940 Sat Sep 15 17:04:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17942         * encoding.c (rb_enc_associate_index, rb_enc_get_index): check if
17943           object is encoding capable.  [ruby-dev:31780]
17945         * string.c (rb_str_subpat_set): check for if the argument is a String.
17947 Sat Sep 15 13:31:21 2007  Kouhei Sutou  <kou@cozmixng.org>
17949         * lib/rss.rb, lib/rss/, test/rss/:
17950           - 0.1.9 -> 0.2.0.
17951           - supported Slash module.
17953 Fri Sep 14 22:20:01 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
17955         * ext/win32ole/win32ole.c (fev_unadvise): no needs to reset
17956           event handlers.
17958 Fri Sep 14 17:28:32 2007  Koichi Sasada  <ko1@atdot.net>
17960         * test/ruby/test_io.rb: tests which cause SEGV should not be
17961           added.
17963         * bootstraptest/test_knownbug.rb: add above test to known bug.
17965 Fri Sep 14 16:24:04 2007  Koichi Sasada  <ko1@atdot.net>
17967         * insnhelper.ci (vm_expandarray): assignment should be placed
17968           after creating new array.
17970 Fri Sep 14 16:17:30 2007  Koichi Sasada  <ko1@atdot.net>
17972         * bootstraptest/runner.rb: add a stress test (-s).
17974 Fri Sep 14 16:14:28 2007  Koichi Sasada  <ko1@atdot.net>
17976         * vm.h, eval_intern.h: move some macros to eval_intern.h.
17978         * eval_jump.ci (rb_f_throw): fix to use NEW_THROW_OBJECT().
17980         * eval.c (rb_f_loop): remove additional macro.
17982 Fri Sep 14 16:12:10 2007  Koichi Sasada  <ko1@atdot.net>
17984         * insnhelper.ci (vm_expandarray): should be volatile value for GC.
17986 Thu Sep 13 15:42:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17988         * compile.c (iseq_compile_each): inline cache entries are overwritten
17989           in iseq_build_body().
17991 Thu Sep 13 14:00:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17993         * parse.y (brace_block): should use compstmt.  patch submitted by
17994           Kirill A. Shutemov <k.shutemov AT gmail.com>  [ruby-core:12154].
17996 Thu Sep 13 13:47:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
17998         * parse.y (rb_id2str): fixed typo.
18000 Wed Sep 12 23:12:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18002         * ruby.c (proc_options): -W should be allowed in RUBYOPT
18003           environment variable.  [ruby-core:12118]
18005 Wed Sep 12 15:19:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18007         * io.c (rb_io_s_sysopen): should not use alloca for unknown size
18008           input.  [ruby-dev:31775]
18010         * parse.y (rb_id2str): ditto.
18012         * marshal.c (w_float): use snprintf instead of sprintf.
18014 Tue Sep 11 17:28:00 2007  Akinori MUSHA  <knu@iDaemons.org>
18016         * lib/tempfile.rb (Tempfile::make_tmpname): Allow to specify a
18017           suffix for a temporary file name.
18019         * lib/tempfile.rb (Tempfile::make_tmpname): Make temporary file
18020           names less predictable by including a random string.
18021           [inspired by: akr]
18023 Tue Sep 11 17:25:59 2007  Akinori MUSHA  <knu@iDaemons.org>
18025         * lib/shellwords.rb: Add shellescape() and shelljoin().
18027         * lib/shellwords.rb: Rename shellwords() to shellsplit() and make
18028           the former an alias to the latter.
18030         * lib/shellwords.rb: Add escape(), split(), join() as class
18031           methods, which are aliases to their respective long names
18032           prefixed with `shell'.
18034         * lib/shellwords.rb: Add String#shellescape(), String#shellsplit()
18035           and Array#shelljoin() for convenience.
18037 Mon Sep 10 15:48:31 2007  Tanaka Akira  <akr@fsij.org>
18039         * range.c: represent initialized state using EXCL instead of FL_USER3.
18041         * range.c (range_dumper): make uninitialized range dumpable.
18042           (range_loader): make uninitialized range loadable.
18044 Mon Sep 10 13:44:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18046         * array.c (rb_ary_cycle): avoid infinite loop for empty array.
18047           based on a patch from David Flanagan.  [ruby-core:12085]
18049 Mon Sep 10 01:21:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18051         * marshal.c (r_object0): struct allocation first to check if a
18052           class is a struct.  compatibility check should come next.
18054 Mon Sep 10 01:05:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18056         * range.c (range_step): fixed integer overflow.  [ruby-dev:31763]
18058 Sun Sep  9 08:57:27 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18060         * lib/date/format.rb (_strptime): now also attaches an element
18061           which denotes leftover substring if exists.
18063 Sun Sep  9 01:59:08 2007  Tanaka Akira  <akr@fsij.org>
18065         * marshal.c (r_object0): check T_STRUCT type for structs.
18067 Sun Sep  9 01:17:05 2007  Tanaka Akira  <akr@fsij.org>
18069         * marshal.c (r_object0): don't call user-defined initialize for
18070           T_STRUCT objects.
18072         * include/ruby/intern.h (rb_struct_initialize): declared.
18074         * struct.c (rb_struct_initialize): export.
18076 Sat Sep  8 23:55:56 2007  Tanaka Akira  <akr@fsij.org>
18078         * eval_method.ci (rb_get_alloc_func): new function to get allocation
18079           function.
18081         * include/ruby/intern.h (rb_alloc_func_t): declared.
18082           (rb_define_alloc_func): declared.
18083           (rb_marshal_define_compat): declared.
18085         * range.c: use T_STRUCT for Range.
18087         * inits.c: move Init_marshal() prior to Init_Range() because
18088           Init_Range calls rb_marshal_define_compat which needs
18089           marshal's compat_allocator_tbl initialized.
18091         * marshal.c: support marshal format compatibility layer designed for
18092           marshaling T_STRUCT Range using T_OBJECT format.
18093           (rb_marshal_define_compat): defined.
18095         [ruby-dev:31710]
18097 Sat Sep  8 10:05:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18099         * struct.c (rb_struct_s_members): check if __members__ is an
18100           array to prevent segmentation fault.  [ruby-dev:31759]
18102 Sat Sep  8 09:33:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18104         * lib/date/format.rb (str[fp]time): now check specifications more
18105           strictly.
18107 Sat Sep  8 02:56:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18109         * test/ruby/test_fiber.rb (TestFiber::test_throw): uncaught throw
18110           now raise ArgumentError exception.
18112 Sat Sep  8 02:45:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18114         * struct.c (rb_struct_s_members): should raise TypeError instead
18115           of call rb_bug().  [ruby-dev:31709]
18117         * marshal.c (r_object0): no nil check require any more.
18119 Sat Sep  8 01:46:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18121         * regenc.c, regenc.h (onigenc_single_byte_mbc_enc_len): should take
18122           two arguments. [ruby-dev:31754]
18124 Fri Sep  7 00:58:16 2007  Koichi Sasada  <ko1@atdot.net>
18126         * common.mk: fix typo.
18128 Fri Sep  7 00:28:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18130         * io.c (rb_io_getc): forgot to commit rb_enc_mbclen() fix.
18132         * ext/stringio/stringio.c (strio_getc): rb_enc_mbclen() fix.
18134         * ext/stringio/stringio.c (strio_ungetc): ditto.
18136 Thu Sep  6 22:57:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18138         * lib/fileutils.rb (FileUtils::Entry_::copy): prevent self copy of
18139           directories.
18141         * lib/fileutils.rb (FileUtils::fu_each_src_dest0): use try_convert.
18143         * lib/fileutils.rb (FileUtils::fu_update_option): ditto.
18145 Thu Sep  6 21:36:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18147         * include/ruby/oniguruma.h (OnigEncodingTypeST): add end parameter
18148           to mbc_enc_len.
18150         * euc_jp.c (mbc_enc_len), sjis.c (mbc_enc_len),
18151           utf8.c (utf8_mbc_enc_len): ditto.
18153         * encoding.c (rb_enc_mbclen): add end parameter.
18155 Thu Sep  6 21:31:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18157         * array.c (rb_ary_cycle): typo in rdoc.  a patch from Yugui
18158           <yugui@yugui.sakura.ne.jp>.  [ruby-dev:31748]
18160 Thu Sep  6 12:42:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18162         * string.c (rb_str_succ, rb_str_chop_bang, rb_str_chop): m17n support.
18163           [ruby-dev:31734]
18165 Wed Sep  5 22:02:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18167         * array.c (rb_ary_subseq): need integer overflow check.
18168           [ruby-dev:31736]
18170         * array.c (rb_ary_splice): ditto.  [ruby-dev:31737]
18172         * array.c (rb_ary_fill): ditto.  [ruby-dev:31738]
18174         * string.c (rb_str_splice): integer overflow for length.
18175           [ruby-dev:31739]
18177 Tue Sep  4 20:43:44 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18179         * ext/win32ole/win32ole.c: add WIN32OLE_EVENT#unadvise.
18181         * test/win32ole/test_win32ole_event.rb: ditto.
18183 Mon Sep  3 15:37:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18185         * common.mk (vm.o): depends on st.h too.
18187 Sun Sep  2 23:38:29 2007  Tanaka Akira  <akr@fsij.org>
18189         * include/ruby/st.h (struct st_table): make num_entries bitfield
18190           instead of num_bins for speed.  num_entries has less access.
18192 Sun Sep  2 00:37:57 2007  Tadayoshi Funaba  <tadf@dotrb.org>
18194         * lib/date/format.rb (_parse): improved parsing of ordinal dates.
18196         * lib/date/format.rb (_parse): use named character classes in some
18197           regular expressions.
18199 Sat Sep  1 23:44:26 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18201         * eval_jump.ci (rb_f_throw): wrap tag and TAG_THROW in a NODE_MEMO
18202           node to make throw instruction to work well.
18204 Sat Sep  1 20:56:07 2007  Tanaka Akira  <akr@fsij.org>
18206         * include/ruby/ruby.h (struct RBignum): embed digits in RBignum for
18207           small bignums.
18209         * bignum.c: RBignum embedded digits implemented.
18211         * include/ruby/intern.h: declare rb_big_resize.
18213         * gc.c: don't free embedded digits.
18215         * numeric.c: replace direct bignum field accessor by abstract field
18216           accessor such as RBIGNUM(val)->sign to RBIGNUM_SIGN(val).
18218         * sprintf.c: ditto.
18220         * compar.c: ditto.
18222         * marshal.c: ditto.
18224         * random.c: ditto.
18226         * .gdbinit: support embedded small bignums.
18228         [ruby-dev:31689]
18230 Sat Sep  1 19:59:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18232         * ext/win32ole/win32ole.c (ole_event_free): IConnectionPoint should be
18233           released.
18235         * ext/win32ole/win32ole.c (EVENTSINK_Destructor): ITypeInfo should be
18236           released.
18238         * ext/win32ole/win32ole.c (fev_initialize): refactoring.
18240 Sat Sep  1 16:26:09 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18242         * test/socket/test_tcp.rb (test_recvfrom): same as mswin32 on mswin64.
18244 Sat Sep  1 14:24:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18246         * st.c (st_numcmp, st_numhash): use st_data_t instead of long, because
18247           the former may be larger than the latter.
18249         * include/ruby/st.h (CHAR_BIT): get rid of magic number.
18251         * include/ruby/st.h (rb_index_t): use st_data_t for the platforms it
18252           is larger than int.
18254 Sat Sep  1 10:43:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18256         * eval_jump.ci (rb_f_catch): generate new tag object if no argument is
18257           given.  backported from MatzRuby.  [ruby-dev:31609]
18259         * eval_jump.ci (rb_catch): call #catch without arguments if tag
18260           string is NULL.
18262         * eval_jump.ci (rb_f_throw): allow throwing non-symbol object.
18264         * eval_jump.ci (rb_catch_obj): new function to wait throw with arbitrary
18265           object.
18267         * eval_jump.ci (rb_throw_obj): new function to throw arbitrary object.
18269         * variable.c (check_autoload_table): prevent multiple calls from
18270           RSTRING_PTR().
18272 Fri Aug 31 07:12:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18274         * numeric.c (SQRT_LONG_MAX): use SIZEOF_LONG instead of SIZEOF_VALUE
18275           because SIZEOF_VALUE > SIZEOF_LONG on some platforms.
18277 Fri Aug 31 04:18:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18279         * parse.y (f_norm_arg, f_arg_item): not croak already erred names.
18280           [ruby-dev:31687]
18282         * parse.y (assignable_gen): ignore already erred names.
18284         * parse.y (shadowing_lvar_gen): always make new block local variable
18285           when shadowing outer local variable.  [ruby-dev:31507]
18287 Thu Aug 30 19:40:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
18289         * regenc.h: check RUBY_EXTERN before including config.h and defines.h
18291         * common.mk: update header dependency.
18293 Thu Aug 30 14:06:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18295         * proc.c (rb_obj_define_method): reverted.  [ruby-talk:266637]
18297 Thu Aug 30 13:49:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18299         * lib/mkmf.rb: initialize $top_srcdir always.  [ruby-dev:31682]
18301         * lib/mkmf.rb (try_const, have_const): check for a const is defined.
18302           [ruby-core:04422]
18304 Thu Aug 30 08:00:12 2007  Tanaka Akira  <akr@fsij.org>
18306         * include/ruby/intern.h: declare rb_hash_tbl.
18308         * include/ruby/ruby.h (RHash): delay st_table allocation.
18309           rename tbl field to ntbl to detect direct reference to the st_table
18310           as a compile error.
18311           (RHASH_TBL): abstract accessor defined.
18312           (RHASH_ITER_LEV): ditto.
18313           (RHASH_IFNONE): ditto.
18314           (RHASH_SIZE): ditto.
18315           (RHASH_EMPTY_P): ditto.
18316           (hash_alloc0, hash_alloc): unified because hash_alloc doesn't
18317           allocate st_table now.
18319         * hash.c: delay st_table allocation.
18321         * gc.c: replace tbl by ntbl.
18323         * array.c: replace direct field accessor by abstract field accessor
18324           such as RHASH(hash)->tbl to RHASH_TBL(hash).
18326         * marshal.c: ditto.
18328         * insns.def: ditto.
18330         * ext/iconv/iconv.c: ditto.
18332         * ext/json/ext/generator/generator.c: ditto.
18334         * ext/json/ext/parser/parser.c: ditto.
18336         * ext/json/ext/parser/parser.rl: ditto.
18338         * ext/syck/rubyext.c: ditto.
18340         * ext/tk/tkutil/tkutil.c: ditto.
18342         [ruby-dev:31678]
18344 Wed Aug 29 18:36:06 2007  Tanaka Akira  <akr@fsij.org>
18346         * lib/open-uri.rb: add :ftp_active_mode option.  [ruby-dev:31677]
18348 Wed Aug 29 14:55:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18350         * string.c (str_gsub): should not use mbclen2() which has broken API.
18352         * re.c: remove rb_reg_mbclen2().
18354 Wed Aug 29 12:48:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18356         * parse.y (aref_args): args may not be a list.  [ruby-dev:31592]
18358 Wed Aug 29 11:30:10 2007  Tanaka Akira  <akr@fsij.org>
18360         * include/ruby/st.h (struct st_table): add entries_packed 1-bit
18361           bitfield.  decrease num_bins 1-bit.
18363         * st.c: pack numhash which have 5 or less entries in bins.
18364           (st_init_table_with_size): setup entries_packed flag.
18365           (st_clear): support packed mode.
18366           (st_lookup): ditto.
18367           (st_insert): ditto.
18368           (st_add_direct): ditto.
18369           (st_copy): ditto.
18370           (st_delete): ditto.
18371           (st_foreach): ditto.
18372           (st_reverse_foreach): ditto.
18373           (unpack_entries): new function for converting to unpacked mode.
18375         [ruby-list:43954]
18377 Wed Aug 29 10:46:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18379         * include/ruby/defines.h (flush_register_windows): call "ta 0x03"
18380           even on Linux/Sparc.  [ruby-dev:31674]
18382 Tue Aug 28 19:16:00 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18384         * ext/win32ole/win32ole.c (ole_type_progid): progid getted by
18385           ProgIDFromCLSID should be freed by CoTaskMemFree. Thanks, arton.
18387         * test/win32ole/test_win32ole.rb (test_raise_message): set negative
18388           compareMode value to raise WIN32OLERuntimeError.
18390         * test/win32ole/test_win32ole_type.rb (test_implemented_ole_types):
18391           support some environment which returns IShellDispatch5 instead
18392           of IShellDispatch.
18394 Tue Aug 28 15:42:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18396         * string.c (rb_str_subseq): retrieve substring based on byte offset.
18398         * string.c (rb_str_rindex_m): was confusing character offset and
18399           byte offset.
18401 Tue Aug 28 14:23:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18403         * string.c (rb_str_splice_0): should check to modify.  [ruby-dev:31665]
18405 Tue Aug 28 14:21:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18407         * parse.y (parser_prepare): set parser encode too when BOM exists.
18409 Tue Aug 28 00:51:22 2007  Koichi Sasada  <ko1@atdot.net>
18411         * thread.c: fix Mutex to be interruptable lock.
18413         * thread_win32.ci, thread_win32.h, thread_pthread.ci, thread_pthread.h:
18414           prepare native_cond_*() which are based on pthread_cond_*() spec.
18416         * prelude.rb: fix Mutex#synchronize method.
18418         * vm_core.h, include/ruby/intern.h: change unblock function interface
18419           (to pass some user data).
18421         * file.c, process.c: ditto.
18423         * benchmark/bm_vm2_mutex.rb: add a benchmark for mutex.
18425         * benchmark/bm_vm3_thread_mutex.rb: add a benchmark for mutex
18426           with contention.
18428         * benchmark/run.rb: fix to remove ENV['RUBYLIB'] for matzruby.
18430         * test/ruby/test_thread.rb: add a test.
18432         * common.mk: fix benchmark options.
18434 Mon Aug 27 23:14:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18436         * string.c (rb_str_rstrip_bang): wrong strip point.  [ruby-dev:31652]
18438         * string.c (rb_str_each_line): should swallow sequence of newlines
18439           if rs (optional argument) is an empty string.  [ruby-dev:31652]
18441 Mon Aug 27 22:39:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18443         * encoding.c (rb_enc_codelen): raises invalid sequence exception
18444           if ONIGENC_CODE_TO_MBCLEN() returns zero.  [ruby-dev:31661]
18446         * encoding.c (rb_enc_mbclen): check invalid sequence.
18448 Mon Aug 27 20:27:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18450         * ext/win32ole/win32ole.c (ole_type_progid): fix the bug.
18451           [ruby-dev:31576]
18453         * test/win32ole/test_win32ole_type.rb (test_initialize):
18454           remove duplicate assertions.
18456 Mon Aug 27 19:10:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18458         * ext/etc/etc.c (etc_getlogin): update documentation to note
18459           security issue.  [ruby-Bugs-11821]
18461 Mon Aug 27 15:56:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18463         * string.c (sym_encoding): return the encoding of a Symbol.
18465 Mon Aug 27 15:33:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18467         * util.c (IEEE_BIG_ENDIAN): use configured value.  [ruby-dev:31623]
18469         * util.c (Llong): set to LONG_LONG if available.
18471 Mon Aug 27 13:11:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18473         * string.c (tr_trans): wrong condition for mbmaxlen==1 strings.
18474           [ruby-dev:31652]
18476 Mon Aug 27 00:41:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18478         * io.c (rb_io_each_byte): caused infinite loop.  [ruby-dev:31652]
18480         * io.c (rb_io_getc): should return nil at EOF, not EOFError.
18482         * lib/delegate.rb (SimpleDelegator::__setobj__): use raise
18483           argument to specify backtrace.
18485         * test/ruby/test_fnmatch.rb (TestFnmatch::bracket_test):
18486           String#include? no longer works for Fixnum.  use #chr.
18487           [ruby-dev:31652]
18489 Sun Aug 26 12:27:14 2007  Koichi Sasada  <ko1@atdot.net>
18491         * cont.c: fix to remove Fiber.new until fiber.so is not loaded.
18493         * test/ruby/test_continuation.rb: fix to use resume.
18495 Sun Aug 26 06:51:46 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18497         * ext/win32ole/win32ole.c (ole_wc2mb, reg_enum_key): allocate
18498           buffer should be NULL terminated.
18500 Sun Aug 26 06:04:13 2007  Koichi Sasada  <ko1@atdot.net>
18502         * insnhelper.ci (vm_setup_method): reorder code for branch prediction.
18504 Sun Aug 26 05:54:49 2007  Koichi Sasada  <ko1@atdot.net>
18506         * insnhelper.ci (vm_call_method): fix to relaxant safe level check
18507           ($SAFE > 2).  [ruby-core:11998]
18509         * bootstraptest/test_method.rb: add tests for above.
18511 Sun Aug 26 05:52:08 2007  Koichi Sasada  <ko1@atdot.net>
18513         * test/ruby/test_fiber.rb: fix to require 'continuation'.
18515 Sat Aug 25 23:52:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18517         * enumerator.c (enumerator_next): message changed.
18519 Sat Aug 25 23:22:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18521         * include/ruby/encoding.h: remove unused rb_enc_ismbchar().
18523 Sat Aug 25 22:50:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18525         * ext/win32ole/win32ole.c (ole_event_free, EVENTSINK_Destructor,
18526           fev_initialize): remove the connection ole_event_free and
18527           EVENTSINK_Destructor.
18529 Sat Aug 25 17:52:06 2007  Koichi Sasada  <ko1@atdot.net>
18531         * string.c, include/ruby/intern.h: export rb_str_length().
18533         * insns.def: use rb_str_length() in opt_length.
18535 Sat Aug 25 17:48:51 2007  Koichi Sasada  <ko1@atdot.net>
18537         * cont.c: rename FIBER_STACK_SIZE to FIBER_VM_STACK_SIZE.
18539 Sat Aug 25 17:05:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18541         * io.c (swallow): removed condition using an unset variable.
18543         * parse.y, re.c: re-applied revision 13092.
18545         * string.c (rb_str_splice): return from void function.
18547         * include/ruby/encoding.h (rb_enc_str_new): prototype added.
18549 Sat Aug 25 11:45:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18551         * encoding.c: provide basic features for M17N.
18553         * parse.y: encoding aware parsing.
18555         * parse.y (pragma_encoding): encoding specification pragma.
18557         * parse.y (rb_intern3): encoding specified symbols.
18559         * string.c (rb_str_length): length based on characters.
18560           for older behavior, bytesize method added.
18562         * string.c (rb_str_index_m): index based on characters.  rindex as
18563           well.
18565         * string.c (succ_char): encoding aware succeeding string.
18567         * string.c (rb_str_reverse): reverse based on characters.
18569         * string.c (rb_str_inspect): encoding aware string description.
18571         * string.c (rb_str_upcase_bang): encoding aware case conversion.
18572           downcase, capitalize, swapcase as well.
18574         * string.c (rb_str_tr_bang): tr based on characters.  delete,
18575           squeeze, tr_s, count as well.
18577         * string.c (rb_str_split_m): split based on characters.
18579         * string.c (rb_str_each_line): encoding aware each_line.
18581         * string.c (rb_str_each_char): added.  iteration based on
18582           characters.
18584         * string.c (rb_str_strip_bang): encoding aware whitespace
18585           stripping.  lstrip, rstrip as well.
18587         * string.c (rb_str_justify): encoding aware justifying (ljust,
18588           rjust, center).
18590         * string.c (str_encoding): get encoding attribute from a string.
18592         * re.c (rb_reg_initialize): encoding aware regular expression
18594         * sprintf.c (rb_str_format): formatting (i.e. length count) based
18595           on characters.
18597         * io.c (rb_io_getc): getc to return one-character string.
18598           for older behavior, getbyte method added.
18600         * ext/stringio/stringio.c (strio_getc): ditto.
18602         * io.c (rb_io_ungetc): allow pushing arbitrary string at the
18603           current reading point.
18605         * ext/stringio/stringio.c (strio_ungetc): ditto.
18607         * ext/strscan/strscan.c: encoding support.
18609 Sat Aug 25 10:59:19 2007  Koichi Sasada  <ko1@atdot.net>
18611         * cont.c: separate Continuation and Fiber from core.
18613         * ext/continuation/*, ext/fiber/*: ditto.
18615         * include/ruby/ruby.h: remove rb_cFiber.
18617         * include/ruby/intern.h: add the rb_fiber_new() declaration.
18619         * enumerator.c (next_init): fix to use rb_fiber_new().
18621         * test/ruby/test_enumerator.rb: remove next? tests.
18623         * test/ruby/test_continuation.rb: add a require 'continuation'.
18625         * test/ruby/test_fiber.rb: add a require 'fiber'.
18627 Sat Aug 25 10:20:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18629         * common.mk (prelude.o): depends on vm_core.h now.
18631         * common.mk (prelude.c): depends on tool/compile_prelude.rb too.
18633         * common.mk (prereq): updates all auto-generated sources.
18635         * tool/compile_prelude.rb: separated dynamic and static portions.
18637 Sat Aug 25 10:05:17 2007  Koichi Sasada  <ko1@atdot.net>
18639         * prelude.rb: add Thread.exclusive.  This class method
18640           is different from 1.8's.  Thread.exclusive only does
18641           synchronize with VM global mutex.
18643 Sat Aug 25 09:39:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18645         * array.c (rb_ary_s_try_convert): more document description.
18647         * re.c (rb_reg_s_try_convert): typo fixed.
18649 Sat Aug 25 08:54:12 2007  Koichi Sasada  <ko1@atdot.net>
18651         * id.h, id.c: remove idFuncall.
18653         * compile.c (iseq_specialized_instruction): ditto.
18655 Sat Aug 25 08:47:28 2007  Koichi Sasada  <ko1@atdot.net>
18657         * tool/compile_prelude.rb: fix to include "vm_core.h".
18659 Sat Aug 25 03:49:14 2007  Tanaka Akira  <akr@fsij.org>
18661         * test/ruby/sentence.rb (Sentence): include Enumerable.
18662           (Sentence#each): defined.
18664         * test/ruby/test_assignment.rb: use Sentence#expand.
18666 Sat Aug 25 03:08:57 2007  Koichi Sasada  <ko1@atdot.net>
18668         * prelude.rb: fix Mutex#synchronize definition.
18670 Sat Aug 25 02:08:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18672         * array.c (rb_ary_s_try_convert): a new class method to convert
18673           object or nil if it's not target-type.  this mechanism is used
18674           to convert types in the C implemented methods.
18676         * hash.c (rb_hash_s_try_convert): ditto.
18678         * io.c (rb_io_s_try_convert): ditto.
18680         * re.c (rb_reg_s_try_convert): ditto.
18682         * string.c (rb_str_s_try_convert): ditto.
18684 Sat Aug 25 00:49:44 2007  Koichi Sasada  <ko1@atdot.net>
18686         * benchmark/bm_loop_generator.rb: added.
18688 Sat Aug 25 00:22:31 2007  Koichi Sasada  <ko1@atdot.net>
18690         * prelude.rb: added.  run this script on startup.
18692         * tool/compile_prelude.rb: compile prelude.rb to C string.
18693           (prelude.rb -> prelude.c)
18695         * common.mk: fix to build with prelude.c.
18697         * inits.c (rb_call_inits): ditto.
18699         * thread.c (Init_Thread): move definition of Mutex#synchronize
18700           to prelude.rb.
18702 Sat Aug 25 00:08:43 2007  Koichi Sasada  <ko1@atdot.net>
18704         * compile.c (compile_massign_opt): fix to skip massign optimization
18705           with global variables.
18707         * bootstraptest/test_massign.rb: add some tests for above.
18709 Fri Aug 24 18:42:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18711         * test/ruby/test_dir.rb (TestDir::setup): ?c now makes a string.
18713         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::initialize):
18714           initialize @workdir to stop warning.
18716 Fri Aug 24 18:30:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18718         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform_without_block):
18719           replace funcall by send!.  other files in the distribution as well.
18721 Fri Aug 24 17:06:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18723         * eval.c (rb_f_send_bang): abandon the name funcall for private
18724           aware method call.
18726 Fri Aug 24 15:27:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18728         * enumerator.c (enumerator_next): stop pre-fetching.
18730         * enumerator.c (Init_Enumerator): remove next? method.
18732 Fri Aug 24 15:14:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18734         * eval.c (rb_f_loop): now handles StopIteration exception.
18736 Thu Aug 23 20:31:31 2007  Koichi Sasada  <ko1@atdot.net>
18738         * compile.c: optimize simple massign.
18740 Thu Aug 23 20:02:25 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
18742         * ext/win32ole/win32ole.c (reg_get_value): use RegQueryValueEx instead
18743           of RegQueryValueEx.
18745         * ext/win32ole/win32ole.c (typelib_file_from_clsid): fix the bug
18746           that the function always returns Qnil.
18748         * test/win32ole/test_win32ole_type.rb (test_initialize): add some test.
18750 Thu Aug 23 17:25:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18752         * configure.in (group_member): check if presents.
18754         * configure.in (XCFLAGS): add _GNU_SOURCE on linux.
18756         * file.c (group_member): use system routine if available.
18758         * process.c: moved _GNU_SOURCE macro to Makefile.
18760 Thu Aug 23 16:59:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18762         * compile.c (compile_massign), insnhelper.ci (vm_throw): not use C99
18763           comment.
18765         * cont.c (rb_cont_call, fiber_switch, rb_fiber_resume, rb_fiber_yield):
18766           suppress warnings.
18768         * cont.c (rb_fiber_start): change on non-volatile variable between
18769           setjmp and longjmp may not has an effect.
18771         * enumerator.c (sym_call): initialize first.
18773         * enumerator.c (enum_iter): typedefed.
18775         * enumerator.c (next_i): suppress a warning.
18777 Thu Aug 23 16:04:11 2007  Koichi Sasada  <ko1@atdot.net>
18779         * compile.c, insns.def, parse.y: fix massign order.  This change
18780           causes performance problem.  Try vm1_swap benchmark.
18781           [ruby-dev:31522]
18783         * insns.def, insnhelper.ci: move process body of expandarray insn to
18784           vm_expandarray().
18786         * bootstraptest/test_knownbug.rb, bootstraptest/test_massign.rb:
18787           move a solved test.
18789 Thu Aug 23 15:51:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18791         * parse.y (f_norm_arg): ripper has no shadowing check.
18793         * parse.y (f_block_arg): dispatch blkarg_mark.
18795 Thu Aug 23 15:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18797         * compile.c (make_masgn_lhs, iseq_compile_each): fixed indent.
18799         * compile.c (iseq_translate_threaded_code),
18800           vm_evalbody.ci (get_insns_address_table),
18801           template/vmtc.inc.tmpl (insns_address_table): constified.
18803         * vm_evalbody.ci (vm_eval),
18804           template/insns_info.inc.tmpl (insn_stack_increase, insn_ret_num):
18805           suppress warnings.
18807 Thu Aug 23 13:19:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18809         * parse.y (f_norm_arg): check also nested arguments.  [ruby-dev:31502]
18811 Thu Aug 23 00:06:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18813         * util.c: updated for ANSI C only.  applied a patch from
18814           <snakagawa AT infoteria.co.jp>.  [ruby-dev:31591]
18816 Thu Aug 23 00:04:45 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18818         * missing/strtod.c: removed.  [ruby-dev:31588]
18820         * LEGAL: updated.
18822 Wed Aug 22 15:59:44 2007  Koichi Sasada  <ko1@atdot.net>
18824         * bootstraptest/test_knownbug.rb:
18825           fix typo of filename (test_knwonbug.rb).
18827 Wed Aug 22 14:04:53 2007  Koichi Sasada  <ko1@atdot.net>
18829         * bootstraptest/test_knwonbug.rb: added.  This file will contain
18830           test cases which point out known bug.  If bug is fixed, tests
18831           should move to the suitable place.
18833         * bootstraptest/test_massign.rb: move a test which show known bug
18834           to test_knownbug.rb.
18836 Wed Aug 22 13:02:26 2007  Tanaka Akira  <akr@fsij.org>
18838         * bootstraptest/runner.rb (in_temporary_working_directory):
18839           don't remove the directory specified by --dir.
18841 Wed Aug 22 05:51:23 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18843         * util.c (ruby_strtod): replaced by the implementation by David
18844           M. Gay inspired by William D. Clinger's paper "How to Read Floating
18845           Point Numbers Accurately" [Proc. ACM SIGPLAN '90, pp. 92-101].
18846           a patch from Satoshi Nakagawa <snakagawa AT infoteria.co.jp>.
18847           [ruby-dev:31582]
18849         * test/ruby/test_float.rb (TestFloat::test_float): add test for
18850           precision.
18852 Wed Aug 22 03:51:07 2007  Koichi Sasada  <ko1@atdot.net>
18854         * cont.c: add Fiber#resume and Fiber.yield.
18855           and Fiber::Core class to realize Coroutine.
18857         * include/ruby/intern.h: declare rb_fiber_yield(), rb_fiber_resume().
18859         * enumerator.c: use above api.
18861         * test/ruby/test_fiber.rb: fix and add tests for above changes.
18863 Tue Aug 21 21:09:48 2007  Tanaka Akira  <akr@fsij.org>
18865         * lib/tmpdir.rb (Dir.mktmpdir): make directory suffix specifiable.
18866           suggested by knu.  [ruby-dev:31568]
18868 Tue Aug 21 15:00:23 2007  Koichi Sasada  <ko1@atdot.net>
18870         * st.c (st_clear): reset num_entries too.
18872 Tue Aug 21 13:57:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18874         * hash.c (st_foreach_func, rb_foreach_func): typedefed.
18876         * hash.c (rb_hash_clear): use st_clear() unless iterating.
18878         * st.c (struct st_table_entry): add new members, fore and back, to
18879           iterate in inserted order.
18881         * include/ruby/st.h (struct st_table): ditto.
18883 Tue Aug 21 04:09:06 2007  Koichi Sasada  <ko1@atdot.net>
18885         * benchmark/bm_vm2_case.rb: add a new benchmark.
18886           YARV optimize case/when syntax.  If every conditions
18887           are literal (such as Symbol, Fixnum, String), dispatch
18888           calc order will be O(1).
18890 Tue Aug 21 04:08:07 2007  Koichi Sasada  <ko1@atdot.net>
18892         * test/ruby/test_enumerator.rb: fix last commit.
18894 Tue Aug 21 03:59:32 2007  Koichi Sasada  <ko1@atdot.net>
18896         * test_enumerator.rb (enum_test): fix to return sorted
18897           array (for Hash test).
18899 Tue Aug 21 03:55:20 2007  Koichi Sasada  <ko1@atdot.net>
18901         * enumerator.c (next_i): fix to return with Fiber#yield at
18902           the end of each block.  [ruby-dev:31470]
18904         * enumerator.c (enumerator_next_p): call init_next if not
18905           initialized.  [ruby-dev:31514]
18907         * test/ruby/test_enumerator.rb: add tests for Enumerator.
18909 Mon Aug 20 23:28:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
18911         * string.c (Init_String): remove Symbol.intern and Symbol#dump.
18912           [ruby-dev:31525]
18914         * dir.c (dir_foreach): return Enumerator if no block given.
18915           [ruby-dev:31525]
18917         * io.c (rb_io_s_foreach): argument count check before making
18918           Enumerator.  [ruby-dev:31525]
18920 Mon Aug 20 23:17:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18922         * vm_core.h (struct rb_thread_struct): removed first_func_arg and
18923           reuse first_args instead.
18925 Sun Aug 19 13:31:40 2007  Tanaka Akira  <akr@fsij.org>
18927         * gc.c: use VALGRIND_MAKE_MEM_UNDEFINED to detect use of collected
18928           objects if valgrind is available.  It cannot detect first 2 words
18929           because they are used as the free list.
18931 Sun Aug 19 13:13:52 2007  Koichi Sasada  <ko1@atdot.net>
18933         * compile.c (iseq_compile_each/NODE_RESBODY): fix to add
18934           additional nop to prevent tailcall optimization.
18936         * vm_opts.h: clean up comments.
18938 Sun Aug 19 12:58:39 2007  Koichi Sasada  <ko1@atdot.net>
18940         * insnhelper.ci (vm_call_bmethod): fix to propagate information
18941           that this proc is "from Method".  [ruby-dev:31490]
18943         * proc.c (method_proc, rb_mod_define_method): ditto.
18945         * vm.c (vm_invoke_proc_core): removed.
18947         * vm_core.h: ditto.
18949 Sun Aug 19 12:36:11 2007  Tanaka Akira  <akr@fsij.org>
18951         * test/ruby/sentence.rb: new method Sentence().
18953 Sun Aug 19 12:32:39 2007  Koichi Sasada  <ko1@atdot.net>
18955         * insnhelper.ci (vm_callee_setup_arg): fix to mark enough VM stack.
18956           [ruby-dev:31492]
18958 Sat Aug 18 19:02:34 2007  Tanaka Akira  <akr@fsij.org>
18960         * test/ruby/test_yield.rb (TestYieldGen): relax array size check
18961           in nested parameters.
18962           [ruby-dev:31485]
18964 Sat Aug 18 17:44:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18966         * ext/tk/tcltklib.c (Init_tcltklib): use rb_set_end_proc().
18968 Sat Aug 18 17:40:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18970         * thread.c (is_ruby_native_thread): check properly.  [ruby-dev:31166]
18972 Sat Aug 18 16:44:15 2007  Koichi Sasada  <ko1@atdot.net>
18974         * insnhelper.ci (vm_call_bmethod),
18975           vm.c (vm_invoke_proc_core): fix to do not restore
18976           $SAFE when proc invoked by bmethod.
18978         * vm_core.h: ditto.
18980 Sat Aug 18 16:44:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18982         * eval_error.ci (ruby_error_print): call error_print.
18984         * eval_jump.ci, process.c (rb_exit, rb_f_exit, rb_f_abort): moved.
18986 Sat Aug 18 15:59:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18988         * process.c (detach_process_watcher): should not pass the pointer
18989           to an auto variable to the thread to be created.  pointed and
18990           fix by KUBO Takehiro <kubo at jiubao.org>  [ruby-dev:30618]
18992 Sat Aug 18 15:52:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18994         * insnhelper.ci (vm_send_optimize): use MEMMOVE to shift values inside
18995           an array.
18997 Sat Aug 18 15:45:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
18999         * insnhelper.ci (vm_yield_setup_args): rsize and psize should not be
19000           negative.
19002 Sat Aug 18 14:35:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19004         * insnhelper.ci (vm_callee_setup_arg, vm_send_optimize,
19005           vm_yield_setup_args): bulk copy for arguments.
19007 Sat Aug 18 13:55:58 2007  Koichi Sasada  <ko1@atdot.net>
19009         * compile.c (iseq_compile_each): fix to allow self.x=
19010           if x= is private.
19012         * bootstraptest/test_method.rb: add a test for above.
19014 Sat Aug 18 14:05:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19016         * parse.y (reg_compile_gen): obtain error info from errinfo.
19018         * re.c (rb_reg_error_desc): make RegexpError for initialization error.
19020         * re.c (rb_reg_compile): return nil and set errinfo if error.
19022 Sat Aug 18 13:23:01 2007  Koichi Sasada  <ko1@atdot.net>
19024         * eval.c: $! should not be writable.
19026         * eval.c (rb_rubylevel_errinfo): added.  rb_errinfo() returns
19027           rb_thread_t#errinfo.  rb_rubylevel_errinfo() returns $! value.
19029 Sat Aug 18 13:14:40 2007  Koichi Sasada  <ko1@atdot.net>
19031         * insnhelper.ci (vm_callee_setup_arg): fix to check arguments
19032           correctly. [ruby-dev:31472]
19034 Sat Aug 18 13:13:06 2007  Koichi Sasada  <ko1@atdot.net>
19036         * bootstraptest/test_exception.rb: add escape character ("\") for
19037           editors.
19039 Sat Aug 18 12:42:50 2007  Tanaka Akira  <akr@fsij.org>
19041         * test/ruby/test_yield.rb (TestYieldGen): add test for yielding to
19042           lambda using lambda parameter passing emulator.
19044 Sat Aug 18 12:24:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19046         * sample/test.rb, test/ruby/test_system.rb(valid_syntax?): keep
19047           comment lines first.
19049 Sat Aug 18 11:44:59 2007  Koichi Sasada  <ko1@atdot.net>
19051         * compile.c (iseq_set_arguments), insnhelper.ci
19052           (vm_callee_setup_arg, vm_yield_setup_args):
19053           fix to cause raise on "lambda{|a|}.call(1, 2)".
19054           [ruby-dev:31464]
19056         * bootstraptest/test_block.rb: add tests for above.
19058 Sat Aug 18 01:12:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19060         * eval.c (frame_func_id): return proper method ID.
19062 Fri Aug 17 22:43:11 2007  Koichi Sasada  <ko1@atdot.net>
19064         * compile.c (iseq_compile_each): massign should return rvalue(s).
19066 Fri Aug 17 22:10:19 2007  Koichi Sasada  <ko1@atdot.net>
19068         * test/ruby/test_basicinstructions.rb: fix old tests.
19069           class variables should be inherited.
19071 Fri Aug 17 21:20:44 2007  Koichi Sasada  <ko1@atdot.net>
19073         * eval.c (rb_call), eval_method.ci (rb_add_method, rb_alias),
19074           insnhelper.ci (vm_call_method): fix to save safelevel for
19075           method node.
19077         * include/ruby/node.h: ditto.
19079         * bootstraptest/test_method.rb: add a test for above.
19081 Fri Aug 17 16:02:50 2007  Koichi Sasada  <ko1@atdot.net>
19083         * thread.c (rb_thread_terminate_all): fix to ignore
19084           exceptions.
19086         * thread.c (thread_start_func_2): fix
19087           abort_on_exception process.  [ruby-dev:31394]
19089 Fri Aug 17 14:38:36 2007  Tanaka Akira  <akr@fsij.org>
19091         * bootstraptest/runner.rb (in_temporary_working_directory): use
19092           Dir.mktmpdir to create and remove temporary directory.
19093           (Dir.mktmpdir): define if not available.
19094           [ruby-dev:31431]
19096 Fri Aug 17 03:07:37 2007  Koichi Sasada  <ko1@atdot.net>
19098         * compile.c (iseq_compile_each): fix throw insn option of next.
19100 Fri Aug 17 01:25:23 2007  Koichi Sasada  <ko1@atdot.net>
19102         * compile.c (iseq_set_arguments), insnhelper.ci
19103           (vm_callee_setup_arg, vm_yield_setup_args): fix
19104           block parameter problems. [ruby-dev:31437], [ruby-dev:31440]
19106         * bootstraptest/test_block.rb: add a test of [ruby-dev:31440].
19108 Fri Aug 17 01:24:12 2007  Koichi Sasada  <ko1@atdot.net>
19110         * iseq.c (ruby_iseq_disasm): fix to show arg_simple value.
19112 Fri Aug 17 01:21:29 2007  Koichi Sasada  <ko1@atdot.net>
19114         * insns.def (throw): insert a RUBY_VM_CHECK_INTS(). [ruby-dev:31361]
19116 Thu Aug 16 20:40:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19118         * bignum.c (bigtrunc): RBIGNUM(x)->len may be zero.  out of bound
19119           access.  [ruby-dev:31404]
19121         * sprintf.c (rb_str_format): small float should not call
19122           rb_dbl2big().
19124 Thu Aug 16 22:10:06 2007  Koichi Sasada  <ko1@atdot.net>
19126         * compile.c (iseq_compile_each): fix next/redo stack consistency.
19127           [ruby-dev:31373]
19129         * bootstraptest/test_syntax.rb: add tests for above.
19131         * sample/test.rb: fix to use __FILE__ instead of $0 to know basedir.
19133 Thu Aug 16 21:14:06 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
19135         * configure.in (BASERUBY): need AC_SUBST.  [ruby-dev:31438]
19137 Thu Aug 16 19:18:26 2007  Tanaka Akira  <akr@fsij.org>
19139         * test/ruby/sentence.rb: Sentence class implemented
19140           based on sentgen.rb
19142         * test/ruby/sentgen.rb: removed.
19144         * test/ruby/test_assignment.rb: use sentence.rb.
19146         * test/ruby/test_yield.rb: block parameter passing emulator
19147           implemented.
19149 Thu Aug 16 16:48:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19151         * configure.in (BASERUBY): check if base ruby is runnable first.
19152           [ruby-core:11900]
19154 Thu Aug 16 16:46:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19156         * configure.in (aix): enable shared by default.
19158         * configure.in (aix): for 64bit-mode AIX.  [ruby-dev:31401]
19159           + use CC for LDSHARED if non-gcc,
19160           + moved -G option from *LDFLAGS to LDSHARED,
19161           + set -brtl only in XLDFLAGS.
19163 Thu Aug 16 13:06:08 2007  Tanaka Akira  <akr@fsij.org>
19165         * bignum.c (big_lshift): make shift offset long type.
19166           (big_rshift): ditto.
19167           (rb_big_lshift): ditto.
19168           (big_rshift): ditto.
19169           [ruby-dev:31434]
19171 Thu Aug 16 06:29:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19173         * io.c (argf_readpartial): argf_forward needs argc and argv.
19175 Thu Aug 16 02:47:39 2007  Koichi Sasada  <ko1@atdot.net>
19177         * cont.c (rb_fiber_m_yield): added.  use this function
19178           for Fiber#yield instead of rb_fiber_yield.
19180 Thu Aug 16 00:36:52 2007  Tanaka Akira  <akr@fsij.org>
19182         * lib/tmpdir.rb (Dir.mktmpdir): new method.  [ruby-dev:31416]
19184 Wed Aug 15 18:57:30 2007  Koichi Sasada  <ko1@atdot.net>
19186         * gc.c (os_live_obj): fix to skip T_VALUES.
19188         * sample/test.rb: add an ObjectSpace test.
19190 Wed Aug 15 16:49:04 2007  Koichi Sasada  <ko1@atdot.net>
19192         * inits.c (rb_call_inits): change initializing order.
19193           [ruby-dev:31420]
19195 Wed Aug 15 16:44:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19197         * io.c (ARGF_FORWARD): wrongly compares with current_file with
19198           rb_stdout.  should be rb_stdin.  [ruby-cvs:20177]
19200 Wed Aug 15 14:59:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19202         * io.c (rb_io_initialize, argf_each_line, argf_each_byte): suppress
19203           warnings.
19205 Wed Aug 15 14:22:05 2007  Koichi Sasada  <ko1@atdot.net>
19207         * parse.y: remove "//" type comment.
19209 Wed Aug 15 13:42:15 2007  Koichi Sasada  <ko1@atdot.net>
19211         * parse.y: fix rules around f_margs.  "make test" passes all tests.
19213         * bootstraptest/test_block.rb: add some tests for above.
19215 Wed Aug 15 13:50:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19217         * hash.c (rb_hash_delete_key): delete the entry without calling block.
19219         * hash.c (rb_hash_shift): should consider iter_lev too.
19221         * hash.c (delete_if_i): use rb_hash_delete_key() so that the block
19222           isn't called twice.  [ruby-core:11556]
19224 Wed Aug 15 13:39:25 2007  Koichi Sasada  <ko1@atdot.net>
19226         * process.c (proc_geteuid): fix strange conversion.  [ruby-dev:31417]
19228 Wed Aug 15 01:05:55 2007  Tanaka Akira  <akr@fsij.org>
19230         * bootstraptest/runner.rb (assert_check): don't call newtest.
19231           (assert_equal): call newtest.
19232           (assert_match): ditto.
19234 Tue Aug 14 21:43:39 2007  Tanaka Akira  <akr@fsij.org>
19236         * bootstraptest/runner.rb (assert_check): new method.
19237           (assert_match): new method.
19238           (assert_equal): use assert_check.
19239           (pretty): give failure description as an argument.
19241         * bootstraptest/test_exception.rb: use assert_match to describe the
19242           test for [ruby-dev:31407].  [ruby-dev:31412]
19244 Tue Aug 14 19:53:15 2007  Koichi Sasada  <ko1@atdot.net>
19246         * proc.c (Init_Proc), eval.c (Init_eval), eval_intern.h: move
19247           init place of exception_error.
19249         * inits.c: ditto.
19251         * eval.c (Init_eval): set exception_error#throwed_state as TAG_FATAL.
19252           [ruby-dev:31407]
19254         * bootstraptest/test_exception.rb: add a test for above.
19256 Tue Aug 14 19:51:20 2007  Koichi Sasada  <ko1@atdot.net>
19258         * common.mk: change test order (test -> btest).
19260 Tue Aug 14 00:04:27 2007  Kouhei Sutou  <kou@cozmixng.org>
19262         * lib/rss/rss.rb: 0.1.8 -> 0.1.9.
19264         * test/rss/test_version.rb: followed the above change.
19266         * lib/rss/parser.rb: fixed a bug that handles unintended elements.
19267           Thanks to Takuo Yonezawa. [ruby-list:43841]
19269 Mon Aug 13 17:23:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19271         * eval.c (rb_clear_trace_func, rb_thread_stop_timer_thread):
19272           declarations for forward references.
19274         * eval.c (rb_longjmp, eval): use local variable.
19276         * eval.c (rb_longjmp): string object not to be optimized.
19278 Mon Aug 13 13:21:58 2007  Tanaka Akira  <akr@fsij.org>
19280         * lib/open-uri.rb: make ftp passive mode to avoid NAT problem.
19281           [ruby-dev:31377]
19283 Mon Aug 13 09:18:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19285         * ext/stringio/stringio.c (strio_getc): should returns
19286           one-character string.
19288         * ext/stringio/stringio.c: remove unnecessary prototypes.
19290         * ext/stringio/stringio.c (strio_getbyte): new method.
19292         * ext/stringio/stringio.c (strio_readbyte): new method.
19294         * ext/stringio/stringio.c (strio_ungetc): should take a string as
19295           an input.
19297 Mon Aug 13 08:19:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19299         * io.c (argf_close): always close via method.
19301         * io.c (Init_IO): remove obsolete Kernel#getc.
19303 Mon Aug 13 05:03:53 2007  Koichi Sasada  <ko1@atdot.net>
19305         * thread.c (rb_thread_raise): check if target thread is
19306           thrown by another thread or not.  [ruby-dev:31371]
19308         * bootstraptest/test_thread.rb: add a test for above.
19310 Mon Aug 13 04:35:30 2007  Koichi Sasada  <ko1@atdot.net>
19312         * compile.c (iseq_peephole_optimize): fix peephole optimization
19313           bug. [ruby-dev:31360]
19315         * bootstraptest/test_syntax.rb: add a test for above.
19317 Mon Aug 13 04:02:29 2007  Koichi Sasada  <ko1@atdot.net>
19319         * vm_dump.c (debug_print_pre): fix to show control frame count.
19321         * insns.def (opt_call_c_function): fix operand type.
19323         * lib/vm/instruction.rb: ditto.
19325         * insnhelper.ci (vm_push_frame, vm_pop_frame): fix to show
19326           control stack status on if VMDEBUG == 2.
19328         * vm.h: add a comment about VMDEBUG.
19330         * iseq.c (find_prev_line_no): fix to skip bug report if
19331           line is not found.
19333         * lib/vm/instruction.rb: fix to use build_string() on
19334           source code generators.
19336 Mon Aug 13 03:57:32 2007  Koichi Sasada  <ko1@atdot.net>
19338         * template/yasmdata.rb.tmpl: fix type and name.
19340 Sat Aug 11 23:27:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19342         * io.c (argf_each_line): should use #each_line, not #each.
19344         * io.c (argf_each_line): simplified.
19346         * io.c (argf_getline): should handle non T_FILE object in ARGV.
19348         * io.c (argf_each_byte): each_byte should yield bytes not
19349           one-character strings.  [ruby-dev:31374]
19351 Sat Aug 11 07:24:55 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19353         * lib/date/format.rb: reverted some wrongly erased "o" options
19354           (pointed out by nobu).
19356 Sat Aug 11 00:01:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19358         * thread.c (thread_start_func_2): not re-raise to main thread if it is
19359           joining the current thread.
19361 Fri Aug 10 23:54:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19363         * thread.c (thread_create_core): inherit the priority of creating
19364           thread.  submitted at [ruby-core:11873] by David Flanagan <david AT
19365           davidflanagan.com>.  [ruby-core:11876]
19367 Fri Aug 10 05:12:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19369         * thread.c (thread_start_func_2): let abort_on_exception work.
19370           [ruby-core:11873]
19372 Fri Aug 10 04:47:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19374         * parse.y (internal_id_gen): internal ID must be bigger than
19375           tLAST_TOKEN.
19377 Thu Aug  9 16:04:55 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19379         * parse.y (stmt): check if rhs has value before assignment instead
19380           inside node_assign_gen().  [ruby-dev:31293]
19382         * parse.y (call_bin_op_gen, call_uni_op_gen): split call_op_gen.
19384 Thu Aug  9 14:01:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19386         * parse.y (f_marg_list): renamed from f_marg_head.
19388         * parse.y (f_margs): allow multiple mandatory arguments after a splat.
19389           [ruby-dev:31153]
19391 Thu Aug  9 02:02:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19393         * enum.c (enum_cycle): typo fixed.  a patch from Kazuhiro
19394           NISHIYAMA <zn AT mbf.nifty.com>.  [ruby-dev:31362]
19396 Wed Aug  8 19:17:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19398         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): no longer check
19399           HAVE_RB_IO_STDIO_FILE.
19401 Wed Aug  8 15:52:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19403         * enumerator.c (enumerator_next_p): should check correctly even when
19404           e.next has not been called before.
19406         * enumerator.c (enumerator_next): raise StopIteration (name taken
19407           from Python) instead of IndexError.
19409         * enum.c (enum_zip): catch StopIteration exception.
19411         * enumerator.c (enumerator_with_index): return Enumerator if no
19412           block is given.
19414         * test/ruby/test_iterator.rb (TestIterator::test_enumerator): add
19415           test for enumerators.
19417 Wed Aug  8 11:48:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19419         * bignum.c (rb_big2str0): should not use RTEST for non-VALUE.
19421 Wed Aug  8 11:25:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
19423         * bignum.c (rb_big2str0): should preserve sign mark.
19425 Wed Aug  8 11:02:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19427         * common.mk (btest-miniruby, test-sample): split the test target
19428           so that -k option works.
19430 Tue Aug  7 14:58:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19432         * ext/pty/pty.c (establishShell): handshaking before close slave
19433           device.  [ruby-talk:263410]
19435         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): constified.
19437         * ext/pty/pty.c (SlaveName): removed static buffer.
19439         * ext/pty/expect_sample.rb: support for autologin.
19441 Tue Aug  7 13:58:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19443         * include/ruby/ruby.h (ruby_special_consts): added RUBY_SPECIAL_SHIFT.
19445         * .gdbinit: some improvements.
19447 Tue Aug  7 13:28:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19449         * common.mk (node_name.inc): use $? instead of $< for nmake.
19450           [ruby-dev:31356]
19452 Tue Aug  7 12:45:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19454         * configure.in (ac_cv_func_isinf): set yes also on OpenSolaris.
19455           [ruby-Bugs-12859]
19457 Tue Aug  7 12:31:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19459         * io.c (pipe_open): fix for win32 platforms.
19461 Tue Aug  7 02:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19463         * bignum.c (rb_big2str0): make Bignum#to_s even faster.  a patch
19464           from Kenta Murata <muraken AT gmail.com>.  [ruby-dev:31354]
19466 Tue Aug  7 01:42:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19468         * enum.c (enum_zip): zip no longer converts arguments into
19469           arrays, uses enumerators.
19471 Tue Aug  7 01:27:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19473         * cont.c (rb_fiber_yield): change argument ordering.  export.
19475         * cont.c (rb_fiber_current): export
19477         * include/ruby/intern.h: export several functions from cont.c.
19479         * enumerator.c (enumerator_next): new method to implement external
19480           iterator (generator) using fiber.
19482         * enumerator.c (enumerator_next_p): new method to check whether
19483           any element is left in the generator sequence.
19485         * enumerator.c (enumerator_rewind): a new method to rewind the
19486           generator sequence.
19488 Tue Aug  7 01:15:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19490         * enum.c (enum_cycle): new method to cycle enumerable forever.
19492 Tue Aug  7 00:05:38 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
19494         * irb/ruby-lex.rb: support for '\c'. [ruby-talk:263508]
19496 Mon Aug  6 20:29:22 2007  Koichi Sasada  <ko1@atdot.net>
19498         * insnhelper.ci, insns.def: move some statements to functions.
19500         * vm.c, vm.h, vm_evalbody.ci: fix include/typedef places.
19502 Mon Aug  6 18:41:12 2007  Koichi Sasada  <ko1@atdot.net>
19504         * lib/vm/instruction.rb (make_header_analysys): fix last commit.
19506 Mon Aug  6 18:33:22 2007  Koichi Sasada  <ko1@atdot.net>
19508         * lib/vm/instruction.rb (make_header_analysys): add to separate
19509           header addition process.
19511 Mon Aug  6 17:36:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19513         * lib/rexml/encodings/{ISO-8859-15,CP-1252}.rb: fixed invalid syntax.
19515 Mon Aug  6 16:57:08 2007  Koichi Sasada  <ko1@atdot.net>
19517         * sample/test.rb: fix to output file name if it contains
19518           invalid syntax.
19520 Mon Aug  6 16:41:22 2007  Koichi Sasada  <ko1@atdot.net>
19522         * parse.y (value_expr_gen): fix to cause "void value expression"
19523           when jump expression such as "next" are shown on value_expr().
19524           [ruby-dev:31119]
19526         * bootstraptest/test_syntax.rb: fix to above change.
19528 Mon Aug  6 14:36:30 2007  Koichi Sasada  <ko1@atdot.net>
19530         * parse.y: fix a f_marg rule. [ruby-dev:31160]
19532 Mon Aug  6 14:29:30 2007  Koichi Sasada  <ko1@atdot.net>
19534         * bootstraptest/runner.rb (assert_equal): add additional
19535           message parameter.
19537 Mon Aug  6 13:34:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19539         * common.mk (INSNS): not chdir to srcdir.
19541         * common.mk (node_name.inc): auto-generate node name list.
19543         * iseq.c (ruby_node_name): ditto.
19545         * iseq.c (iseq_s_compile_option_get, Init_ISeq): added a new
19546           method VM::InstructionSequence::compile_option.
19548         * lib/vm/instruction.rb (RubyVM::SourceCodeGenerator): --destdir
19549           option.
19551         * tool/node_name.rb: to auto-generate node name list.
19553 Sun Aug  5 11:51:39 2007  Kouhei Sutou  <kou@cozmixng.org>
19555         * lib/rss, sample/rss, test/rss:
19556         - 0.1.7 -> 0.1.8.
19557         - supported <itunes:XXX>.
19558         - reverted backward incompatibility API changes introduced 0.1.7.
19560 Sun Aug  5 04:56:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19562         * io.c (pipe_open_v, pipe_open_s): separate array and string
19563           cases.  [ruby-dev:31344]
19565 Fri Aug  3 11:05:54 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19567         * ext/extmk.rb (extmake): save all CONFIG values.
19569         * ext/extmk.rb (extmake): remove mkmf.log at clean, and extconf.h at
19570           distclean, respectively.
19572         * ext/extmk.rb: remove rdoc at clean, and installed list file at
19573           distclean, respectively.
19575 Fri Aug  3 07:09:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19577         * lib/mkmf.rb: more verbose message.  [ruby-Bugs-12766]
19579         * lib/mkmf.rb (have_type): suppress a warning with -Wall.
19581         * lib/mkmf.rb (find_type): new method.
19583 Fri Aug  3 00:00:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19585         * bignum.c (big2str_table): base cannot be 0 or 1.
19587 Thu Aug  2 23:42:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19589         * parse.y (reg_compile_gen): set error if failed to compile regexp
19590           literal.  [ruby-dev:31336]
19592         * re.c (option_to_str, arg_kcode, opt_kcode): options conversion
19593           between int and string.
19595         * re.c (rb_reg_compile): should not use regexp which could not get
19596           initialized.  [ruby-dev:31333]
19597           return error message to let the parser know it.
19599         * re.c (rb_reg_compile): append regexp options to error message.
19600           [ruby-dev:31334]
19602 Thu Aug  2 22:05:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19604         * bignum.c (rb_big2str0): faster Bignum#to_s using Karatsuba
19605           algorithm.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>
19606           in [ruby-dev:31312], slightly modified by Kenta Murata
19607           <muraken AT gmail.com> in [ruby-dev:31339].
19609 Thu Aug  2 13:46:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19611         * sprintf.c (rb_f_sprintf): should not check positional number as
19612           width.  [ruby-core:11838]
19614 Wed Aug  1 12:40:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19616         * generic.rb (URI::Generic::merge_path): behave as RFC 3986.
19617           [ruby-talk:252052]
19619 Tue Jul 31 23:38:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19621         * lib/date/format.rb (_parse): now interprets slashed numerical
19622           dates as a big endian (except dd/mm/yyyy). [experimental]
19624 Mon Jul 30 11:16:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19626         * bignum.c (rb_big_aref): check for Bignum index range.
19627           [ruby-dev:31271]
19629 Sat Jul 28 09:35:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19631         * ext/digest/lib/digest.rb (Digest::self.const_missing): avoid
19632           infinite recursive const_missing call.  [ruby-talk:262193]
19634 Thu Jul 26 20:40:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19636         * range.c (range_eqq): call_super() in === does not work well
19637           since Enumerable#=== has different behavior.  [ruby-dev:31296]
19639 Thu Jul 26 13:57:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19641         * dln.c (load_1, dln_find_1): constified.
19643         * dln.c (conv_to_posix_path): removed.
19645         * ruby.c (usage): constified.
19647         * ruby.c (rubylib_mangled_path, rubylib_mangled_path2): return
19648           VALUE instead of a pointer to static buffer.
19650         * ruby.c (push_include_cygwin): fixed buffer overflow.
19651           [ruby-dev:31297]
19653         * ruby.c (ruby_init_loadpath): not convert built-in paths.
19655 Tue Jul 24 10:37:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19657         * io.c (rb_f_p): return nil if no argument.  [ruby-dev:31285]
19659 Tue Jul 24 01:05:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19661         * regint.h (USE_MATCH_RANGE_IS_COMPLETE_RANGE): undef to achieve old
19662           rindex behavior.  [ruby-dev:31265]
19664 Mon Jul 23 18:37:14 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19666         * include/ruby/oniguruma.h: upgrade to Oniguruma 5.9.0.  fixes
19667           some memory violation.  [ruby-dev:31070]
19669 Sun Jul 22 20:09:49 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19671         * lib/date/format.rb (Date._parse): now accepts some new
19672           hints. [experimental]
19674         * lib/parsedate.rb: followed the changes on
19675           lib/date/format.rb. [experimental]
19677 Sun Jul 22 16:06:56 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19679         * thread.c (is_ruby_native_thread): made an int function as
19680           well as version 1.8.
19682         * include/ruby/ruby.h (is_ruby_native_thread): moved prototype
19683           from intern.h as well as version 1.8.
19685 Sun Jul 22 14:33:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19687         * file.c (rb_file_s_rename): deleted code to get rid of a bug of
19688           old Cygwin.
19690         * file.c (rb_file_truncate): added prototype of GetLastError()
19691           on cygwin.  [ruby-dev:31239]
19693         * include/ruby/intern.h (is_ruby_native_thread): prototype.
19695         * missing/strftime.c (strftime): fix printf format and actual
19696           arguments.
19698         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
19700         * ext/tk/tcltklib.c (ip_finalize): ditto.
19702         * ext/win32ole/win32ole.c (lcid_installed): ditto.
19704         * ext/socket/getnameinfo.c: include stdio.h always.
19706 Sat Jul 21 21:39:12 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19708         * lib/date.rb, lib/date/format.rb (Date._parse): now can take some
19709           hints (its aim must be mainly determination of endianness of
19710           date). [experimental]
19712         * lib/date.rb, lib/date/format.rb (Date._parse): now completes
19713           truncated year as default action. [experimental]
19715         * lib/date.rb, lib/date/format.rb: added ::iso8601, ::rfc3339,
19716           ::xmlschema, ::rfc2822, ::httpdate, ::jisx0301, #xmlschema,
19717           #httpdate. [experimental]
19719 Sat Jul 21 17:48:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19721         * common.mk: inverted rules order.
19723         * thread_win32.ci (w32_create_thread): bcc does not have
19724           _beginthreadex().
19726         * lib/mkmf.rb (create_makefile): make OBJS depend on RUBY_EXTCONF_H
19727           only if extconf.h is created.
19729         * bcc32/Makefile.sub: headers have moved.
19731         * bcc32/{Makefile.sub,configure.bat,setup.mak: configure_args
19732           support.
19734         * bcc32/setup.mak: check runtime version.
19736         * win32/win32.c (rb_w32_open_osfhandle): prototype has changed
19737           in bcc 5.82.
19739         * {win32,wince,bcc32}/setup.mak (-version-): no RUBY_EXTERN magic.
19741         * win32/resource.rb: include patchlevel number.
19743 Sat Jul 21 12:06:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19745         * lib/mkmf.rb (init_mkmf): should remove mkmf.log too.
19747 Sat Jul 21 01:45:03 2007  Tadayoshi Funaba  <tadf@dotrb.org>
19749         * lib/date/format.rb (Date._parse): completes calendar week based year.
19751         * lib/date/format.rb (Date._parse): detects year of ordinal date in
19752           extended format.
19754 Fri Jul 20 16:30:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19756         * compile.c (iseq_set_sequence): raise SyntaxError instead of rb_bug
19757           since this function can be called from VM::InstructionSequence.load.
19759         * compile.c (insn_set_sc_state, iseq_set_sequence_stackcaching): ditto.
19761 Fri Jul 20 16:11:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19763         * compile.c, compile.h (DECL_ANCHOR, INIT_ANCHOR): split not to
19764           initialize aggregations with dynamic values.  [ruby-talk:259306]
19766         * eval.c (rb_protect): not to initialize aggregations with dynamic
19767           values.  [ruby-talk:259306]
19769         * gc.c (mark_current_machine_context): ditto.
19771         * thread.c (thgroup_list, call_trace_func): ditto.
19773         * vm.c (vm_init_redefined_flag): ditto.
19775 Fri Jul 20 15:22:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19777         * ext/openssl/ossl_config.c (ossl_config_set_section): do not
19778           initialize aggregations with dynamic values.  [ruby-talk:259306]
19780 Fri Jul 20 10:39:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19782         * parse.y (stmt, mlhs_node, lhs, arg, var_ref): return dummy
19783           NODE_BEGIN after errors.  [ruby-dev:31100], [ruby-dev:31118]
19785         * parse.y (remove_begin): keep empty NODE_BEGIN, instead of null.
19786           [ruby-dev:31252], [ruby-dev:31263]
19788 Fri Jul 20 09:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19790         * bootstraptest/runner.rb (get_result_string): check $?.coredump?
19791           first.
19793         * bootstraptest/runner.rb (cleanup_coredump, check_coredump): see
19794           stackdump file too.
19796 Thu Jul 19 20:39:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19798         * parse.y (value_expr_gen): warn for empty expression ().
19799           [ruby-dev:31252]
19801 Thu Jul 19 19:24:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19803         * eval_error.ci (get_backtrace): check the result more.
19804           [ruby-dev:31261] [ruby-bugs-12398]
19806 Thu Jul 19 14:38:45 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19808         * bignum.c (rb_big_lshift, rb_big_rshift): separated functions
19809           to get rid of infinite recursion.  fixed calculation in edge
19810           cases.  [ruby-dev:31244]
19812         * numeric.c (rb_fix_lshift, rb_fix_rshift): ditto.
19814 Wed Jul 18 16:57:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19816         * bignum.c (rb_big_pow): refine overflow check.  [ruby-dev:31242]
19818 Wed Jul 18 09:19:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19820         * parse.y (rb_parser_append_print, rb_parser_while_loop): moved check
19821           for node to the head.
19823         * ruby.c (proc_options): do nothing for -p/-n options if tree is null.
19824           submitted by Yusuke ENDOH <mame AT tsg.ne.jp> at [ruby-dev:31243].
19826 Wed Jul 18 08:47:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19828         * time.c (time_succ): Time#succ should return a time object in the
19829           same timezone mode to the original.  [ruby-talk:260256]
19831 Mon Jul 16 23:07:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19833         * lib/base64.rb (Base64::b64encode): should not specify /o option
19834           for regular expression.  [ruby-dev:31221]
19836 Mon Jul 16 22:57:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19838         * sprintf.c (rb_str_format): make %u behave like %d for negative
19839           values, since decimal format does not work with preceding dots.
19840           [ruby-core:11575]
19842 Mon Jul 16 18:29:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19844         * string.c (rb_str_rindex_m): accept string-like object convertible
19845           with #to_str method, as well as rb_str_index_m.  [ruby-core:11692]
19847 Mon Jul 16 07:17:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19849         * insns.def (getspecial): lfp_svar_get() requires int for special
19850           global variables.
19852 Mon Jul 16 05:45:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19854         * sprintf.c (rb_f_sprintf): more checks for format argument.
19855           [ruby-core:11569], [ruby-core:11570], [ruby-core:11571],
19856           [ruby-core:11573]
19858 Mon Jul 16 00:26:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19860         * bignum.c (rb_big_pow): removed invariant variable.  [ruby-dev:31236]
19862 Sun Jul 15 22:24:37 2007  pegacorn  <subscriber.jp AT gmail.com>
19864         * ext/dl/cfunc.c (rb_dlcfunc_call): adjust format.  [ruby-dev:31222]
19866         * ext/digest/digest.c (rb_digest_instance_update,
19867           rb_digest_instance_finish, rb_digest_instance_reset,
19868           rb_digest_instance_block_length): %s in rb_raise() expects char*.
19869           [ruby-dev:31222]
19871         * ext/openssl/ossl.h: include ossl_pkcs5.h.  [ruby-dev:31231]
19873         * ext/openssl/ossl_pkcs5.h: new file for PKCS5.  [ruby-dev:31231]
19875         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): use ossl_raise()
19876           instead of rb_raise().  [ruby-dev:31222]
19878         * ext/sdbm/_sdbm.c: DOSISH platforms need io.h.  [ruby-dev:31232]
19880         * ext/syck/syck.h: include stdlib.h for malloc() and free().
19881           [ruby-dev:31232]
19883         * ext/syck/syck.h (syck_parser_set_input_type): prototype added.
19884           [ruby-dev:31231]
19886         * win32/win32.c: include mbstring.h for _mbspbrk().  [ruby-dev:31232]
19888         * include/ruby/win32.h (rb_w32_getcwd): prototype added.
19889           [ruby-dev:31232]
19891 Sun Jul 15 21:07:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19893         * bignum.c (bigtrunc): do not empty Bignum.  [ruby-dev:31229]
19895 Sun Jul 15 19:05:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19897         * bignum.c (rb_cstr_to_inum): check leading non-digits.
19898           [ruby-core:11691]
19900 Sun Jul 15 04:42:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19902         * bignum.c (get2comp): do nothing for empty Bignum.  [ruby-dev:31225]
19904 Sat Jul 14 22:49:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19906         * numeric.c (fix_pow): integer power calculation: 0**n => 0,
19907           1**n => 1, -1**n => 1 (n: even) / -1 (n: odd).
19909         * test/ruby/test_fixnum.rb (TestFixnum::test_pow): update test
19910           suite.  pow(-3, 2^64) gives NaN when pow(3, 2^64) gives Inf.
19912 Sat Jul 14 18:46:35 2007  Tanaka Akira  <akr@fsij.org>
19914         * configure.in: add --with-valgrind.
19916         * gc.h (SET_MACHINE_STACK_END): new macro to replace
19917           rb_gc_set_stack_end.  it find out accurate stack boundary by
19918           asm using gcc on x86.
19920         * thread.c (rb_gc_set_stack_end): don't define if asm-version
19921           SET_MACHINE_STACK_END is available.
19923         * gc.c (mark_current_machine_context): extracted from garbage_collect.
19924           it use SET_MACHINE_STACK_END to not scan out of stack area.
19925           it notify conservative GC information to valgrind if
19926           --with-valgrind.
19928 Sat Jul 14 14:04:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19930         * enum.c (sort_by_cmp): check if reentered.  [ruby-dev:24291]
19932 Sat Jul 14 11:08:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19934         * ext/json/ext/generator/generator.c (check_max_nesting): wrong
19935           format specifier.  a patch from pegacorn <subscriber.jp AT gmail.com>.
19936           [ruby-dev:31217]
19938 Sat Jul 14 02:27:43 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19940         * numeric.c (int_pow): overflow detection using FIT_SQRT_LONG().
19941           [ruby-dev:31215]
19943 Sat Jul 14 02:05:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19945         * insns.def (opt_div): LONG2FIX() may not work for corner cases,
19946           use LONG2NUM() instead.  [ruby-dev:31210]
19948 Sat Jul 14 00:34:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19950         * numeric.c (int_round): should not return false, but self.
19951           [ruby-dev:31212]
19953 Fri Jul 13 18:31:27 2007  Koichi Sasada  <ko1@atdot.net>
19955         * include/ruby/intern.h: remove unused function declarations.
19957         * include/ruby/ruby.h: ditto.
19959 Fri Jul 13 17:32:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19961         * vm.c (vm_free): clear free'ed living_threads field.
19962           [ruby-dev:31163]
19964         * insns.def (opt_succ): use cast to shut a warning up.
19966 Fri Jul 13 16:10:00 2007  Tanaka Akira  <akr@fsij.org>
19968         * lib/open-uri.rb (URI::Generic#find_proxy): use ENV.to_hash to access
19969           http_proxy environment variable to avoid case insensitive
19970           environment search.
19972 Fri Jul 13 15:02:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19974         * win32/win32.c (CreateChild): enclose command line except for
19975           command.com which can not handle quotes.  [ruby-talk:258939]
19977 Fri Jul 13 11:33:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19979         * range.c (range_max, range_min): return nil for empty set as well as
19980           1.8 and Enumerable.  [ruby-dev:31198]
19982 Fri Jul 13 11:28:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
19984         * parse.y (bvar): semicolon was lost for ripper description.
19985           [ruby-dev:31140]
19987 Fri Jul 13 11:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
19989         * parse.y (program, stmt, primary): reduced duplicated code.
19991         * parse.y (dsym): convert also literals containing NUL to
19992           symbol.
19994         * parse.y (debug_lines): use rb_hash_lookup() to get rid of
19995           call of Hash#default.
19997         * parse.y (ripper_warningS): unused in ripper right now.
19999 Fri Jul 13 10:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20001         * array.c (rb_ary_flatten_bang): check argument if valid
20002           integer.  [ruby-dev:31197]
20004 Fri Jul 13 10:10:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20006         * lib/mkmf.rb (link_command, cc_command, cpp_command): do not expand
20007           ::CONFIG which is an alias of MAKEFILE_CONFIG.
20009 Thu Jul 12 21:38:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20011         * insns.def (opt_succ): use LONG_MAX as maximum Fixnum VALUE.
20012           [ruby-dev:31199]
20014 Thu Jul 12 18:42:18 2007  Tanaka Akira  <akr@fsij.org>
20016         * range.c (range_max): use FIX2LONG instead of FIX2INT to avoid
20017           RangeError by ((-0x80000001)...(-0x80000001)).max on LP64.
20019         * insns.def (opt_plus): use FIX2LONG instead of FIX2INT to avoid
20020           RangeError by 0x3fffffffffffffff+1 on LP64.
20022         * insns.def (opt_succ): don't use 0x80000000 which assumes 32bit VALUE.
20023           use FIX2LONG instead of FIX2INT.
20024           [ruby-dev:31190]
20026 Thu Jul 12 17:03:15 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20028         * struct.c (rb_struct_init_copy): disallow changing the size.
20029           [ruby-dev:31168]
20031 Thu Jul 12 12:58:21 2007  Koichi Sasada  <ko1@atdot.net>
20033         * blockinlining.c: remove "yarv" prefix.
20035         * array.c, numeric.c: ditto.
20037         * insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
20039         * yarvcore.c: removed.
20041         * yarvcore.h: renamed to core.h.
20043         * cont.c, debug.c, error.c, process.c, signal.c : ditto.
20045         * ext/probeprofiler/probeprofiler.c: ditto.
20047         * id.c, id.h: added.
20049         * inits.c: ditto.
20051         * compile.c: rename internal functions.
20053         * compile.h: fix debug flag.
20055         * eval.c, object.c, vm.c: remove ruby_top_self.
20056           use rb_vm_top_self() instead.
20058         * eval_intern.h, eval_load: ditto.
20060         * gc.c: rename yarv_machine_stack_mark() to
20061           rb_gc_mark_machine_stack().
20063         * insnhelper.h: remove unused macros.
20065         * iseq.c: add iseq_compile() to create iseq object
20066           from source string.
20068         * proc.c: rename a internal function.
20070         * template/insns.inc.tmpl: remove YARV prefix.
20072         * thread.c: use rb_iseq_eval() and rb_str_new2().
20074         * vm.c (rb_iseq_eval): added.
20076         * vm.c: move some functions from yarvcore.c.
20078         * vm_dump.c: fix to remove compiler warning.
20080 Thu Jul 12 12:24:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20082         * insns.def (opt_succ): fixed typo.  [ruby-dev:31189]
20084 Thu Jul 12 10:30:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20086         * thread.c (thread_start_func_2): moved prototye from thread_*.ci.
20088         * thread_pthread.ci (thread_start_func_2): not use a directive
20089           inside a macro argument.  [ruby-talk:258763]
20091         * thread.c (thread_join): pthread_t may not be pointer.
20093         * thread_pthread.ci (ubf_select_each): ditto.
20095 Thu Jul 12 05:32:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20097         * include/ruby/ruby.h (FIX2ULONG): drop sign bit for LLP64 platform.
20099 Tue Jul 10 19:34:45 2007  Koichi Sasada  <ko1@atdot.net>
20101         * hash.c (rb_hash_lookup): added.  this function is similar to
20102           rb_hash_aref(), but doesn't call Hash#default when no entry
20103           exists.
20105         * include/ruby/intern.h: ditto.
20107         * insnhelper.ci (lfp_svar_get): use rb_hash_lookup().
20109 Tue Jul 10 19:16:28 2007  Koichi Sasada  <ko1@atdot.net>
20111         * eval.c, insnhelper.ci, vm.c: change cref index (-1 -> 2).
20113 Tue Jul 10 18:49:56 2007  Koichi Sasada  <ko1@atdot.net>
20115         * eval.c (exec_under): add proper casts.
20117 Tue Jul 10 16:58:16 2007  Koichi Sasada  <ko1@atdot.net>
20119         * vm.c, insnhelper.ci: fix svar interface.
20121         * compile.c (iseq_compile_each), yarvcore.h: fix to use new
20122           svar interface for flip flop.
20124         * eval.c: ditto.
20126         * insns.def: ditto.
20128         * include/ruby/intern.h: remove "rb_svar()" declaration.
20130 Tue Jul 10 16:52:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20132         * compile.c (rb_iseq_compile): formatted if/else to switch statement.
20134 Tue Jul 10 15:57:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20136         * bootstraptest/test_flip.rb: new test for flip-flop operator.
20138 Tue Jul 10 14:50:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20140         * bcc32/{Makefile.sub,setup.mak}: remove surplus slash from srcdir.
20142 Mon Jul  9 02:17:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20144         * cont.c (cont_restore_1): workaround for x64-mswin64's SEH.
20146 Sun Jul  8 02:08:53 2007  NARUSE, Yui  <naruse@ruby-lang.org>
20148         * lib/json.rb, lib/json/, ext/json/: import JSON 1.1.1
20150 Sat Jul  7 21:59:29 2007  Tanaka Akira  <akr@fsij.org>
20152         * lib/pp.rb (PP::PPMethods#pp_hash): sort condition changed:
20153           all keys have a same class which is kind of Comparable.
20155 Sat Jul  7 17:12:37 2007  Koichi Sasada  <ko1@atdot.net>
20157         * compile.c: use rb_bug() instead of rb_compile_error().
20159 Sat Jul  7 16:12:48 2007  Koichi Sasada  <ko1@atdot.net>
20161         * parse.y: fix node construction (around f_margs).
20162           [ruby-dev:31143]
20164         * bootstraptest/test_block.rb: add a test for above.
20166         * insnhelper.ci: fix indent.
20168 Sat Jul  7 15:36:50 2007  Tanaka Akira  <akr@fsij.org>
20170         * lib/pp.rb (PP::PPMethods#pp_hash): sort if
20171           all keys are strings, symbols or integers.
20173 Sat Jul  7 15:30:05 2007  Koichi Sasada  <ko1@atdot.net>
20175         * insnhelper.ci (vm_yield_setup_args), vm.c, insns.def:
20176           fix to pass nil as block parameter to yielded block.
20177           [ruby-dev:31147]
20179         * bootstraptest/test_block.rb: add a test for above.
20181 Fri Jul  6 19:55:10 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
20183         * lib/irb.rb: typo. Thanks, Giles Bowkett.
20185         * lib/irb/completion.rb: support Ruby1.9 changing return value
20186           String to Symbol for Object#methods, etc. [ruby-dev:31148].
20188 Fri Jul  6 18:20:50 2007  Koichi Sasada  <ko1@atdot.net>
20190         * bootstraptest/runner.rb: fix load path.
20192         * common.mk: fix "test" rule to run with "btest".
20194         * rubytest.rb, sample/test.rb: fix to show tests progress.
20196 Fri Jul  6 15:37:48 2007  Koichi Sasada  <ko1@atdot.net>
20198         * test/ruby/test_iterator.rb: fix test to 1.9 spec.
20200 Fri Jul  6 15:21:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20202         * eval.c (rb_interrupt): suppress a gcc's officious warning.
20204 Fri Jul  6 14:57:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20206         * parse.y (keyword_to_name): constified.
20208         * ext/ripper/eventids2.c (token_to_eventid): ditto.
20210 Fri Jul  6 14:50:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20212         * bootstraptest/runner.rb: added --quiet option.
20214 Fri Jul  6 14:35:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20216         * parse.y (f_marg): wrap f_norm_arg assignment node with NODE_LIST.
20217           [ruby-dev:31141]
20219 Fri Jul  6 12:15:01 2007  Tanaka Akira  <akr@fsij.org>
20221         * test/ruby/sentgen.rb: new file.
20223         * test/ruby/test_assignment.rb: tests implemented using assignment
20224           generator and emulator.
20226 Fri Jul  6 03:06:58 2007  Koichi Sasada  <ko1@atdot.net>
20228         * insns.def: remove unused code.
20230         * compile.c (compile_massign): fix to invoke to_splat on
20231           splat rhs (example: *a = *nil). [ruby-dev:31136]
20233         * bootstraptest/test_massign.rb: add tests for above.
20235         * compile.c (iseq_compile_each): disable excess optimization.
20236           [ruby-dev:31126]
20238 Fri Jul  6 02:08:25 2007  Koichi Sasada  <ko1@atdot.net>
20240         * insns.def: fix to invoke nil.to_splat on NODE_ARGSCAT.
20241           [ruby-dev:31138].
20243         * bootstraptest/test_literal.rb: add tests for above.
20245 Thu Jul  5 19:45:55 2007  Koichi Sasada  <ko1@atdot.net>
20247         * yarvcore.h: rename rb_control_frame_t#magic to flag.
20249         * vm.h: add VM_FRAME_TYPE() and VM_FRAME_FLAG().
20251         * cont.c, insnhelper.ci, insns.def, vm.c, vm_dump.c,
20252           vm_evalbody.ci, yarvcore.c: apply above changes.
20254 Thu Jul  5 19:16:14 2007  Koichi Sasada  <ko1@atdot.net>
20256         * test/ruby/test_basicinstructions.rb: remove an assertion using
20257           unsupported hash literal (such as {1, 2}).
20259         * test/ruby/test_hash.rb: ditto.
20261 Thu Jul  5 19:12:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20263         * ruby.c: Qfalse is VALUE, not pointer.
20265 Thu Jul  5 18:42:01 2007  Koichi Sasada  <ko1@atdot.net>
20267         * compile.c (iseq_compile_each): add break catch point.
20269         * insns.def (throw): support correct "break" and "return".
20270           this commit achieve that "make test" passes all tests.
20272         * vm.c: ditto.
20274 Thu Jul  5 18:44:12 2007  Tanaka Akira  <akr@fsij.org>
20276         * parse.y (mlhs_basic): use mlhs_post after tSTAR.
20277           [ruby-dev:31109]
20279 Thu Jul  5 18:27:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20281         * include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
20282           eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
20283           yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
20284           ruby_nerrs): purge global variables.
20286         * ruby.c (proc_options): moved do_print and do_loop options
20287           handling from ruby_process_options().
20289 Thu Jul  5 16:37:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20291         * numeric.c (int_pow): fix previous nubu's commit.
20293         * test/ruby/test_fixnum.rb: new test.
20295 Thu Jul  5 15:56:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20297         * numeric.c (int_pow): even number multiplication never be negative.
20299 Thu Jul  5 10:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20301         * include/ruby/{node,ruby}.h, ruby.c: added enum constants for gdb
20302           support.  [ruby-dev:31066]
20304         * .gdbinit: some improvements.
20306 Thu Jul  5 10:13:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20308         * parse.y (global_symbols.last_id): reduce unused ID numbers.
20310         * include/ruby/st.h, st.c (st_init_table, st_init_table_with_size):
20311           constified.
20313 Wed Jul  4 23:36:27 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
20315         * lib/webrick/httpauth/authenticator.rb
20316           (WEBrick::HTTPAuth::Authenticator#check_scheme): auth-scheme must be
20317           treated as a case-insensitive token according to RFC 2617 section 1.2.
20319 Wed Jul  4 18:30:04 2007  Tanaka Akira  <akr@fsij.org>
20321         * parse.y (mlhs_inner): new rule.  [ruby-dev:31132]
20323 Wed Jul  4 05:11:57 2007  Koichi Sasada  <ko1@atdot.net>
20325         * iseq.c (set_relation): added.
20327 Wed Jul  4 04:58:30 2007  Koichi Sasada  <ko1@atdot.net>
20329         * insnhelper.ci (caller_setup_args): fix to show correct class
20330           on an error message (ex: m(&1)). [ruby-dev:31101]
20332 Wed Jul  4 04:30:32 2007  Koichi Sasada  <ko1@atdot.net>
20334         * compile.c (compile_array, iseq_compile_each): fix about array
20335           generation in void context. [ruby-dev:31102]
20337         * bootstraptest/test_literal.rb: add a test for above.
20339 Wed Jul  4 04:07:00 2007  Koichi Sasada  <ko1@atdot.net>
20341         * compile.c (compile_array): ignore NODE_ZARRAY.
20342           [ruby-dev:31110]
20344         * bootstraptest/test_method.rb: add a test for above.
20346 Wed Jul  4 04:04:02 2007  Koichi Sasada  <ko1@atdot.net>
20348         * compile.h: fix debug print level.
20350 Wed Jul  4 03:52:55 2007  Koichi Sasada  <ko1@atdot.net>
20352         * compile.c (iseq_compile_each): support v[&b]= type method call.
20353           [ruby-dev:31094]
20355         * bootstraptest/test_method.rb: add a test for above.
20357 Wed Jul  4 03:43:29 2007  Koichi Sasada  <ko1@atdot.net>
20359         * compile.c (compile_massign): fix massign compilation
20360           (example: a, *v, (*x) = ...).  [ruby-dev:31107]
20362         * bootstraptest/test_massign.rb: add tests for above.
20364 Tue Jul  3 23:12:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20366         * include/ruby/onigiruma.h (ONIG_EXTERN): use RUBY_EXTERN if defined.
20368         * regenc.h: include ruby/defines.h.
20370         * regint.h: x64-mswin64 support.
20372 Tue Jul  3 13:47:44 2007  Koichi Sasada  <ko1@atdot.net>
20374         * cont.c (cont_save_machine_stack): clear saved_thread.machine_stack*.
20376 Mon Jul  2 21:45:53 2007  Koichi Sasada  <ko1@atdot.net>
20378         * compile.c: rename iseq_translate_direct_threaded_code()
20379           to iseq_translate_threaded_code().
20381         * eval_intern.h, yarvcore.h: mv EXEC_EVENT_HOOK() and
20382           exec_event_hooks() to yarvcore.h.
20384         * insnhelper.ci, vm.c: mv yarv_finish_insn_seq to vm.c.
20386         * insns.def (opt_call_c_function): fix to use RESTORE_REGS().
20388         * iseq.c (rb_iseq_build_for_ruby2cext): fix to allocate iseq.
20390 Mon Jul  2 11:59:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20392         * insns.def (defineclass): suppress a warning.
20394         * insns.def (opt_call_c_function): should raise the thrown exception
20395           instead of returning it.
20397 Mon Jul  2 08:53:47 2007  Koichi Sasada  <ko1@atdot.net>
20399         * eval_intern.h, yarvcore.h: move declaration of sysstack_error
20400           to yarvcore.h.
20402         * iseq.c: fix symbol name (:toplevel -> :top).
20404         * lib/vm/instruction.rb, template/vm.inc.tmpl: replaceable
20405           current file name.
20407 Mon Jul  2 05:29:07 2007  Koichi Sasada  <ko1@atdot.net>
20409         * compile.c, iseq.c: fix iseq some of load/store process.
20411 Mon Jul  2 03:09:36 2007  Koichi Sasada  <ko1@atdot.net>
20413         * yarvcore.h, compile.c, insnhelper.ci, iseq.c, vm.c:
20414           rename structure names and field names.
20416         * insnhelper.h, insns.def: add GET_CONST_INLINE_CACHE().
20418         * iseq.c: add rb_iseq_build_for_ruby2cext().
20420         * yarvcore.h, vm.h: move declaration of rb_insn_func_t
20421           to yarvcore.h.
20423 Sun Jul  1 03:25:53 2007  Koichi Sasada  <ko1@atdot.net>
20425         * insnhelper.h, vm.h: some refactoring.
20426           remove useless comments, etc.
20428 Sun Jul  1 03:02:29 2007  Koichi Sasada  <ko1@atdot.net>
20430         * yarvcore.h: some refactoring on rb_iseq_t.
20431           rename some variable names, add comments, etc.
20433         * compile.c, iseq.c, proc.c, vm.c: ditto.
20435 Sun Jul  1 02:57:57 2007  Koichi Sasada  <ko1@atdot.net>
20437         * vm.h: rename insn_func_type to rb_insn_func_type.
20439         * vm_evalbody.ci: ditto.
20441         * insns.def: add opt_call_native_compiled instruction
20442           instead of opt_call_native_compiled.
20444 Sat Jun 30 00:17:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20446         * parse.y (parser_yylex): return non-valid token for an invalid
20447           instance/class variable name.  a patch from Yusuke ENDOH
20448           <mame AT tsg.ne.jp>.  [ruby-dev:31095]
20450 Fri Jun 29 23:38:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20452         * parse.y (stmts): fix for ripper.
20454 Fri Jun 29 21:55:48 2007  Koichi Sasada  <ko1@atdot.net>
20456         * parse.y: fix to show line number of blank block.
20457           [ruby-dev:31093]
20459 Fri Jun 29 20:51:04 2007  Tanaka Akira  <akr@fsij.org>
20461         * lib/cgi/session.rb (create_new_id): don't cut off md5.hexdigest to
20462           follow Ruby 1.8.
20464 Fri Jun 29 17:10:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20466         * debug.h: constified.
20468         * debug.c (ruby_set_debug_option): separated from main.c.
20470         * gc.c (ruby_gc_stress), signal.c (ruby_enable_coredump): prefixed.
20472 Fri Jun 29 16:39:06 2007  Koichi Sasada  <ko1@atdot.net>
20474         * proc.c (proc_new): fix to return a proc object
20475           which block is contained ([ruby-dev:31056]).
20477 Fri Jun 29 15:43:59 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20479         * numeric.c (fix_pow): get rid of division by zero.  reported by
20480           Yusuke ENDOH <mame AT tsg.ne.jp> [ruby-dev:31040]
20482         * numeric.c (int_round): do nothing when rounding by zeroth digit.
20483           check underflow.  [ruby-dev:31043]
20485 Fri Jun 29 15:32:00 2007  Koichi Sasada  <ko1@atdot.net>
20487         * configure.in: add fastcall attribute check.
20489 Fri Jun 29 14:51:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20491         * parse.y (assoc_list): remove expanded hash literal (no splat).
20493         * lib/webrick/httpstatus.rb (WEBrick::HTTPStatus::EOFError): adapt
20494           to new syntax.
20496 Fri Jun 29 14:48:18 2007  Koichi Sasada  <ko1@atdot.net>
20498         * tool/insns2vm.rb, lib/vm/instruction.rb: move process body
20499           to lib/vm/instruction.rb.
20501         * common.mk: fix aotc rule.
20502           experimental. bin/ruby2cext is not added yet.
20504 Fri Jun 29 11:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20506         * parse.y (dsym): return non-null NODE even if yyerror().  based on a
20507           patch from Yusuke ENDOH <mame AT tsg.ne.jp>.  [ruby-dev:31085]
20509 Thu Jun 28 23:29:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20511         * parse.y (assoc_list): odd number check only for NODE_ARRAY.
20512           [ruby-dev:31082]
20514 Thu Jun 28 22:24:33 2007  Koichi Sasada  <ko1@atdot.net>
20516         * win32/Makefile.sub: define FUNC_FASTCALL macro.
20518         * vm.h: fix to use FUNC_FASTCALL macro.
20519           TODO: add FUNC_FASTCALL macro by configure.
20521 Thu Jun 28 19:38:53 2007  Koichi Sasada  <ko1@atdot.net>
20523         * compile.c: fix to remove -Wall warnings on gcc.
20525         * compile.c (make_name_with_str): removed. use rb_sprintf() instead.
20527 Thu Jun 28 18:53:01 2007  Tanaka Akira  <akr@fsij.org>
20529         * bignum.c (rb_big_hash): fix hash area.
20531 Thu Jun 28 15:00:06 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20533         * ext/stringio/stringio.c (strio_getline): local variable to be
20534           initialized.  [ruby-dev:31077]
20536 Thu Jun 28 11:30:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20538         * gc.c (rb_obj_id): use SIGNED_VALUE instead of long.
20540 Thu Jun 28 05:01:56 2007  Koichi Sasada  <ko1@atdot.net>
20542         * common.mk (run.gdb): fix to load $(srcdir)/.gdbinit
20544         * vm.c (rb_vm_set_finish_env): add a cast.
20546         * vm.h: support __fastcall for MSVC.
20548 Thu Jun 28 02:12:08 2007  Koichi Sasada  <ko1@atdot.net>
20550         * bootstraptest/runner.rb: fix to untouch $:.
20552 Thu Jun 28 02:03:07 2007  Koichi Sasada  <ko1@atdot.net>
20554         * compile.c (setup_args): change parameter type.
20556 Thu Jun 28 02:03:39 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20558         * parse.y (rb_intern2): unconstify cast.
20560 Thu Jun 28 01:44:31 2007  Tanaka Akira  <akr@fsij.org>
20562         * parse.y (rb_intern2): don't allocate a string object at first.
20563           [ruby-dev:31064]
20565 Thu Jun 28 01:24:02 2007  Koichi Sasada  <ko1@atdot.net>
20567         * bootstraptest/runner.rb: fix to show file name.
20569         * bootstraptest/test_*.rb: add bootstrap tests.
20571 Thu Jun 28 01:22:15 2007  Koichi Sasada  <ko1@atdot.net>
20573         * include/ruby/node.h, parse.y, gc.c, iseq.c: remove NODE_CREF.
20575 Thu Jun 28 01:19:43 2007  Koichi Sasada  <ko1@atdot.net>
20577         * compile.c (iseq_compile_each): fix popped backref and others.
20578           ([ruby-dev:31068]).
20580         * compile.c (iseq_compile_each): remove needless statements.
20582 Wed Jun 27 23:51:33 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20584         * win32/win32.c: remove unused functions.
20586 Wed Jun 27 20:46:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20588         * include/ruby/win32.h, win32/Makefile.sub, win32/configure.bat,
20589           win32/mkexports.rb, win32/setup.mak, win32/win32.c: import
20590           x64-mswin64 port.
20592 Wed Jun 27 20:31:07 2007  Koichi Sasada  <ko1@atdot.net>
20594         * compile.c (iseq_translate_direct_threaded_code): fix prototype
20595           function name.
20597         * vm.h: add correct cast.
20599 Wed Jun 27 17:08:42 2007  Koichi Sasada  <ko1@atdot.net>
20601         * vm_evalbody.ci: support OPT_CALL_THREADED_CODE.
20603         * insns.def, vm.c, vm.h: ditto.
20605         * vm.h: add VM_CFP_CNT() and VM_SP_CNT().
20607 Wed Jun 27 04:23:47 2007  Koichi Sasada  <ko1@atdot.net>
20609         * compile.c (iseq_compile_each): fix type error.
20611 Wed Jun 27 03:26:15 2007  Koichi Sasada  <ko1@atdot.net>
20613         * compile.c (compile_massign), insns.def (expandarray): support
20614           postarg with massign (a, *b, c = ...).
20616         * bootstraptest/test_massign.rb: add tests for above.
20618         * compile.h: fix debug macro names.
20620 Wed Jun 27 00:18:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20622         * string.c (rb_str_clear): need to check STR_EMBED_P() before
20623           free()ing memory.  a patch from Yusuke ENDOH <mame AT tsg.ne.jp>.
20624           [ruby-dev:31062]
20626 Tue Jun 26 16:39:01 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20628         * process.c (proc_getgroups): use GIDT2NUM for rb_gid_t.
20630 Tue Jun 26 16:28:24 2007  Koichi Sasada  <ko1@atdot.net>
20632         * thread.c (rb_thread_wait_fd_rw): terminate fdset.
20634 Tue Jun 26 16:26:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20636         * regint.h: IL32LLP64 support.
20638 Tue Jun 26 16:22:45 2007  Koichi Sasada  <ko1@atdot.net>
20640         * iseq.c (ruby_node_name): update node names.
20642 Tue Jun 26 15:21:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20644         * include/ruby/ruby.h: IL32LLP64 support.
20646         * bignum.c (bigfixize, rb_cstr_to_inum): ditto.
20648         * insns.def (opt_plus, opt_minus, opt_mult): ditto.
20650 Tue Jun 26 15:04:06 2007  Koichi Sasada  <ko1@atdot.net>
20652         * cont.c (rb_fiber_s_new): revert initializing VM stack.
20654         * yarvcore.c (th_init2): ditto.
20656         * vm.c, vm.h: fix to stop using Qundef on VM stack.  According to
20657           this change, VM stack should not include Qundef value.
20659         * insns.def (putundef): removed.
20661         * compile.c (iseq_compile_each): ditto.
20663         * eval.c (eval): fix spacing.
20665 Tue Jun 26 04:03:50 2007  Koichi Sasada  <ko1@atdot.net>
20667         * insnhelper.ci (vm_yield_with_cfunc), proc.c: fix Method#to_proc
20668           to return lambda Proc ([ruby-dev:31021], [ruby-dev:31037]).
20670 Tue Jun 26 03:46:08 2007  Koichi Sasada  <ko1@atdot.net>
20672         * cont.c (rb_fiber_s_new): fix to clear rb_thread_t#tag.
20673           [ruby-dev:30995]
20675 Tue Jun 26 03:38:31 2007  Koichi Sasada  <ko1@atdot.net>
20677         * cont.c (rb_fiber_s_new), yarvcore.c (th_init2): fix to clear
20678           VM stack ([ruby-dev:31046]).
20680 Tue Jun 26 03:15:27 2007  Koichi Sasada  <ko1@atdot.net>
20682         * compile.c: rename setup_arg() to setup_args().
20683           fix to use setup_args() at processing NODE_YIELD.
20685 Tue Jun 26 02:50:24 2007  Koichi Sasada  <ko1@atdot.net>
20687         * compile.c (setup_arg): support kind of "m(*ary, x)" method call.
20688           ([ruby-dev:31048]).
20690 Tue Jun 26 00:28:44 2007  Koichi Sasada  <ko1@atdot.net>
20692         * insnhelper.ci, vm.c: complete block parameter support.
20693           post arguments, optional arguments, block argument.
20695         * compile.c, parse.y: fix {|a|} parameter.
20697         * insnshelper.ci, insns.def: revert caller_setup_args() option
20698           (need_block_check) parameter.
20700 Mon Jun 25 20:18:44 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20702         * gc.c (RVALUE): in RVALUE and RBasic, flags must be the same type.
20704 Mon Jun 25 18:02:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20706         * ext/pty/extconf.rb: skip wince and win64.
20708 Mon Jun 25 17:59:32 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
20710         * include/ruby/node.h (NODE_LMASK, nd_line): shouldn't use int and/or
20711           long carelessly.
20713 Mon Jun 25 11:36:35 2007  Koichi Sasada  <ko1@atdot.net>
20715         * gc.h: add RUBY_ prefix to debug macros.
20717         * cont.c, proc.c, yarvcore.c,
20719         * gc.c: define ruby_gc_debug_indent variable to debug mark/free.
20721         * vm.c, insnhelper.ci: rename some functions to vm_* or rb_vm_*.
20722           move some functions, definitions, declarations to suitable files.
20724         * eval.c, yarvcore.h, eval_error.ci, insnhelper.ci: ditto.
20726 Mon Jun 25 09:45:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20728         * eval_error.ci, eval_jump.ci, eval_method.ci, eval_safe.ci: c-mode.
20730 Mon Jun 25 05:27:54 2007  Koichi Sasada  <ko1@atdot.net>
20732         * eval.c: remove ruby_current_node and change eval() prototype.
20733           fix to use rb_sourcefile/line() instead of ruby_sourcefile/line.
20735         * error.c, eval_error.ci, eval_load.c, eval_safe.ci, gc.c,
20736           include/ruby/intern.h, parse.y, process.c, ruby.c: ditto.
20738         * vm.c: fix spaces.
20740 Mon Jun 25 04:20:14 2007  Koichi Sasada  <ko1@atdot.net>
20742         * eval_*.h: rename to eval_*.ci.
20744         * common.mk: ditto.
20746         * eval_error.ci: remove ruby_set_current_source().
20748         * error.c, eval.c, ruby.c: ditto.
20750         * eval_safe.c, proc.c: remove unused macros.
20752 Mon Jun 25 03:37:20 2007  Koichi Sasada  <ko1@atdot.net>
20754         * insnhelper.ci (caller_setup_args): add need_block_check option.
20756         * insns.def: ditto.
20758         * yarvcore.h: add GetCoreDataFromValue().
20760 Mon Jun 25 02:14:30 2007  Koichi Sasada  <ko1@atdot.net>
20762         * call_cfunc.ci: removed.
20764         * insnhelper.ci: added. this function includes all functions that
20765           vm insns need.
20767         * common.mk: ditto.
20769         * insnhelper.h, vm.h, vm.c: move some declaration.
20771         * gc.h: remove GC_CHECK() macro because GC.stress is more useful.
20773         * compile.c, iseq.c, vm_dump: ditto.
20775         * gc.h, thread.c: move a prototype declaration.
20777         * debug.c, debug.h: rename some functions.
20779         * compile.h: ditto.
20781 Mon Jun 25 00:45:02 2007  Koichi Sasada  <ko1@atdot.net>
20783         * insns.def (invokesuper): fix error message.
20785 Mon Jun 25 00:14:13 2007  Koichi Sasada  <ko1@atdot.net>
20787         * vm.c: some refactoring.
20788           * rename th_* to vm_*.
20789           * remove unused variables functions.
20790           * add prototypes.
20792         * blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
20793           eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
20794           proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
20795           vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
20797 Sun Jun 24 22:32:00 2007  Koichi Sasada  <ko1@atdot.net>
20799         * eval_method.h (rb_add_method): fix to check 0.
20801 Sun Jun 24 22:00:17 2007  Koichi Sasada  <ko1@atdot.net>
20803         * insn_send.ci: removed.
20805         * common.mk: ditto.
20807         * vm.c (vm_call_bmethod), isnsn.def: added.  fix to use this
20808           function instead of using goto.
20810         * vm.c (vm_call_bmethod): renamed from th_invoke_bmethod().
20812         * vm.c (vm_method_missing): renamed from eval_method_missing().
20814         * vm_evalbody.ci: remove tmp_* variables.
20816         * insnhelper.h: add some macros.
20818         * insns.def: forbid zsuper from method defined by define_method().
20820         * test/ruby/test_super.rb: ditto.
20822 Sun Jun 24 20:01:08 2007  Koichi Sasada  <ko1@atdot.net>
20824         * vm_macro.def: removed.
20826         * insn_send.ci: added.  this file includes send instruction body.
20828         * common.mk: ditto.
20830         * insns.def: ditto.
20832         * tool/insns2vm.rb: ditto.
20834         * vm.c: ditto.
20836 Sun Jun 24 19:30:37 2007  Koichi Sasada  <ko1@atdot.net>
20838         * insnhelper.h (RESTORE_REGS): add do/while(0) around macro.
20840         * vm.c, vm_macro.def: remove macro_eval_invoke_func() and
20841           add vm_setup_method().  use it instead.
20843 Sun Jun 24 19:02:33 2007  Koichi Sasada  <ko1@atdot.net>
20845         * vm.c, vm_macro.def : remove macro_eval_invoke_cfunc() and
20846           add vm_call_cfunc().
20848 Sun Jun 24 17:54:13 2007  Koichi Sasada  <ko1@atdot.net>
20850         * insns.def, vm.c: add/fix stack overflow check.
20852 Sun Jun 24 17:28:52 2007  Koichi Sasada  <ko1@atdot.net>
20854         * insnhelper.h: change CHECK_STACK_OVERFLOW() to throw exception.
20856         * vm.c (caller_setup_arg), vm_macro.def: remove
20857           macro_eval_setup_send_arguments and add caller_setup_arg().
20859         * insns.def: ditto.
20861         * bootstraptest/test_method.rb: add splat arg tests.
20863 Sun Jun 24 16:35:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20865         * proc.c (proc_to_s): used a variable before initialized.
20867 Sun Jun 24 16:05:45 2007  Koichi Sasada  <ko1@atdot.net>
20869         * vm.c (callee_setup_arg): added.  support correct post arg.
20871         * vm_macro.def (macro_eval_invoke_func): fix to use
20872           callee_setup_arg.
20874         * compile.c (set_arguments): adjust for above changes.
20876         * compile.c (iseq_compile_each): ditto.
20878         * iseq.c (ruby_iseq_disasm): ditto.
20880         * yarvcore.h: add rb_iseq_t#post_arg_start and arg_size.
20882         * bootstraptest/test_method.rb: add post arg tests.
20884 Sun Jun 24 16:10:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20886         * proc.c (proc_to_s): suppress warning, and reduced duplicated code.
20888 Sun Jun 24 15:33:47 2007  Koichi Sasada  <ko1@atdot.net>
20890         * bootstraptest/runner.rb: set default directory to
20891           '/tmp/bootstraptest.tmpwd' and add --dir option.
20892           fix to output driver and target information.
20894         * common.mk: fix to run btest on BASERUBY and
20895           add OPTS to pass option ("make btest OPTS=...").
20897 Sun Jun 24 03:05:00 2007  Tanaka Akira  <akr@fsij.org>
20899         * enum.c (enum_minmax): fix SEGV by [].minmax.
20901 Sat Jun 23 17:18:19 2007  Tanaka Akira  <akr@fsij.org>
20903         * re.c (match_inspect): MatchData#inspect implemented.
20905 Sat Jun 23 15:00:16 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20907         * enum.c (enum_minmax): new method to get the minimum and maximum
20908           values from the enumerable at once.
20910         * enum.c (enum_minmax_by): ditto.
20912 Sat Jun 23 01:25:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20914         * hash.c (rb_hash_assoc): new method.
20916         * hash.c (rb_hash_rassoc): ditto.
20918         * hash.c (rb_hash_flatten): ditto.
20920 Fri Jun 22 23:55:59 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20922         * string.c (rb_str_upto): add optional argument to specify
20923           exclusiveness.
20925         * range.c (range_step): use String#upto with optional argument.
20927         * range.c (range_each): ditto.
20929 Fri Jun 22 19:55:51 2007  Tanaka Akira  <akr@fsij.org>
20931         * proc.c (proc_to_s): revert the change from %p to %lx at YARV
20932           merge time.
20934 Fri Jun 22 19:33:49 2007  Tanaka Akira  <akr@fsij.org>
20936         * proc.c (proc_to_s): show is_lambda.
20938 Thu Jun 21 20:36:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20940         * hash.c (rb_hash_sort): remove hash specific implementation.
20942 Thu Jun 21 20:28:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20944         * hash.c (rb_hash_select): returns new hash, not assoc array.
20945           [ruby-core:11504]
20947         * hash.c (env_select): ditto.
20949 Thu Jun 21 23:08:19 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
20951         * parse.y (rb_intern2): ID_JUNK test based on len, not by NUL.
20953 Thu Jun 21 19:42:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20955         * yarvcore.c (rb_thread_mark): mark also thrown_errinfo.
20957 Thu Jun 21 17:13:44 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20959         * parse.y (rb_intern2): name may not be NUL-terminated.
20961 Wed Jun 20 08:27:57 2007  Tanaka Akira  <akr@fsij.org>
20963         * eval_error.h (error_print): show full stacktrace on
20964           non-SystemStackError.
20966 Wed Jun 20 04:45:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20968         * parse.y (rb_intern2): use rb_intern2 to intern without trailing
20969           equal sign.
20971         * parse.y (rb_intern2, ripper_id2sym): fixed indent.
20973 Tue Jun 19 10:55:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20975         * eval_load.c (load_ext, rb_require_safe): pass VALUE instead of
20976           pointer.  [ruby-Bugs-11659]
20978 Mon Jun 18 08:47:54 2007  Technorama Ltd.  <oss-ruby@technorama.net>
20980         * ext/openssl/{extconf.rb,ossl_ssl_session.c}:
20981           Fix ruby-Bugs-11513.
20983         * ext/openssl/ossl_pkey_ec.c
20984           New methods EC::Point.[eql,make_affine!,invert!,on_curve?,infinity?]
20985           By default output the same key form as the openssl command.
20987         * ext/openssl/ossl_rand.c
20988           New method Random.status?
20990         * test/openssl/test_ec.rb
20991           New tests.
20993 Mon Jun 18 17:04:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
20995         * eval_load.c (rb_require_safe, ruby_init_ext): load with ruby level
20996           cfp.  [ruby-core:10779]
20998         * eval_intern.h, vm.c (rb_vm_call_cfunc): new function to call a
20999           function with ruby level cfp.
21001 Mon Jun 18 16:57:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21003         * parse.y (yycompile): disable trace while creating ruby_debug_lines.
21004           [ruby-talk:253586]
21006         * thread.c (ruby_suppress_tracing): new function to call a function
21007           with suppressing trace.
21009         * lib/debug.rb, lib/tracer.rb: for YARV.
21011 Mon Jun 18 13:54:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21013         * eval.c (ruby_cleanup): return EXIT_FAILURE if any exceptions occurred
21014           in at_exit blocks.  [ruby-core:11263]
21016 Mon Jun 18 02:49:16 2007  Koichi Sasada  <ko1@atdot.net>
21018         * vm.c (env_mark): fix to mark block.proc.
21020         * vm.c (th_make_proc_from_block): set created proc to block->proc.
21022 Mon Jun 18 02:48:12 2007  Koichi Sasada  <ko1@atdot.net>
21024         * vm_dump.c (vm_stack_dump_raw): hide VM stack trace.
21026 Mon Jun 18 02:43:53 2007  Koichi Sasada  <ko1@atdot.net>
21028         * signal.c (sigsegv): clear gc_stress flag on SEGV.
21030 Mon Jun 18 01:14:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21032         * variable.c (rb_path2class): get rid of dangling pointer caused by
21033           optimized out value.
21035         * variable.c (rb_global_entry, rb_f_untrace_var, rb_alias_variable,
21036           rb_generic_ivar_table, generic_ivar_get, generic_ivar_set,
21037           generic_ivar_defined, generic_ivar_remove, rb_mark_generic_ivar,
21038           rb_free_generic_ivar, rb_copy_generic_ivar,
21039           rb_obj_instance_variables): suppress warnings.
21041 Sun Jun 17 11:11:07 2007  Tanaka Akira  <akr@fsij.org>
21043         * eval.c (rb_method_missing): avoid a warning "too many arguments
21044           for format string" on "./ruby -ve 'def m() super end; m'".
21046 Sat Jun 16 22:24:17 2007  Tanaka Akira  <akr@fsij.org>
21048         * gc.c (garbage_collect): re-introduce ruby_current_node marking code.
21049           [ruby-dev:31005]
21051 Sat Jun 16 21:37:43 2007  Tanaka Akira  <akr@fsij.org>
21053         * gc.c (gc_sweep): re-introduce heap extension strategy change.
21054           [ruby-dev:31005]
21056 Fri Jun 15 22:59:37 2007  Tanaka Akira  <akr@fsij.org>
21058         * .gdbinit: new file to ease debugging using gdb.
21060 Fri Jun 15 22:33:55 2007  Tanaka Akira  <akr@fsij.org>
21062         * signal.c (default_handler): func argument removed.
21063           (trap_handler): support SYSTEM_DEFAULT.  call default_handler
21064           internally.
21065           (sig_trap): don't call default_handler.
21066           [ruby-dev:30999]
21068 Fri Jun 15 22:33:29 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21070         * common.mk (realclean): separate local and ext.
21072         * ext/extmk.rb: not remove unrelated directories.
21074 Fri Jun 15 20:50:02 2007  Tanaka Akira  <akr@fsij.org>
21076         * keywords: enclose C code in declaration section by %{ and %} to
21077           avoid extra semicolon after #ifdef RIPPER.
21078           pointed by eban.
21080 Fri Jun 15 18:56:52 2007  Tanaka Akira  <akr@fsij.org>
21082         * signal.c (trap_handler): trap("SIGSEGV", "DEFAULT") may cause wrong
21083           trap error because SIG_DFL may be zero.
21085 Fri Jun 15 15:55:55 2007  Koichi Sasada  <ko1@atdot.net>
21087         * insns.def (setconstant, toregexp): fix to mark object correctly.
21089 Fri Jun 15 13:24:18 2007  Koichi Sasada  <ko1@atdot.net>
21091         * hash.c: exchange semantics of Hash#each and Hash#each_pair.
21092           pointed out by [ruby-dev:30997].
21094         * test/ruby/test_iterator.rb: ditto.
21096         * test/ruby/test_yield.rb: ditto.
21098 Fri Jun 15 12:38:29 2007  Koichi Sasada  <ko1@atdot.net>
21100         * test/ruby/test_iterator.rb: remove debug code (GC.stress=true).
21102 Fri Jun 15 12:25:33 2007  Koichi Sasada  <ko1@atdot.net>
21104         * vm.c (th_yield_setup_args): |v| should work as |v,|.
21105           ex) def m;yield 1, 2; end; m{|v| p v} #=> 1
21107         * parse.y: apply above change for "for" statement.
21109         * test/ruby/test_assignment.rb: ditto
21111         * test/ruby/test_basicinstructions.rb: ditto.
21113         * test/ruby/test_iterator.rb: ditto.
21115         * test/ruby/test_yield.rb: ditto.
21117         * compile.c (iseq_compile_each): fix debug.
21119 Fri Jun 15 12:22:10 2007  Koichi Sasada  <ko1@atdot.net>
21121         * eval.c (ruby_finalize_1): rb_thread_t#errinfo should be clear with
21122           Qnil.
21124 Fri Jun 15 12:20:11 2007  Koichi Sasada  <ko1@atdot.net>
21126         * cont.c (rb_cont_call): forbid cross fiber continuation call.
21128         * test/ruby/test_fiber.rb: ditto.
21130 Fri Jun 15 12:14:07 2007  Koichi Sasada  <ko1@atdot.net>
21132         * sample/test.rb: fix to show line information whether test succeeds.
21134 Thu Jun 14 17:16:05 2007  Tanaka Akira  <akr@fsij.org>
21136         * eval_load.c (Init_load): delay allocating an array for rb_load_path
21137           to avoid GC problem in very early stage.
21138           (RUBY_GC_STRESS causes GC in such stage.)
21140         * variable.c (rb_gc_mark_global_tbl): rb_global_tbl may be 0 in
21141           very early stage.
21143         * thread.c (thread_cleanup_func) [IA64]: clear register stack position.
21144           (thread_start_func_2) [IA64]: record the beginning of register
21145           stack using extra argument.
21146           (rb_gc_save_machine_context) [IA64]: record the end of register
21147           stack.
21149         * gc.c [IA64] (SET_STACK_END): record the end of register stack.
21150           (garbage_collect) [IA64]: use recorded register stack area for
21151           GC marking.
21152           (yarv_machine_stack_mark) [IA64]: GC mark from the register stack
21153           area.
21155         * yarvcore.c [IA64] (rb_gc_register_stack_start): defined.
21156           (Init_VM): store th->self on stack to fix GC problem.
21157           (Init_yarv) [IA64]: initialize the beginning of register stack.
21159         * yarvcore.h (struct rb_thread_struct) [IA64]: new members for
21160           register stack area.
21162         * thread_pthread.ci (thread_start_func_1) [IA64]: call
21163           thread_start_func_2 with the end of register stack.
21165         * cont.c (struct rb_context_struct) [IA64]: new members for register
21166           stack area.
21167           (cont_mark) [IA64]: GC mark from register stack area.
21168           (cont_free) [IA64]: free saved register stack.
21169           (cont_save_machine_stack) [IA64]: record the position and contents
21170           of the register stack.
21171           (cont_capture): store cont->self on stack to fix GC problem.
21172           (cont_restore_1) [IA64]: restore the register stack.
21173           [IA64] (register_stack_extend): new function.
21174           (cont_restore_0) [IA64]: call register_stack_extend instead of
21175           cont_restore_1.
21177         [ruby-dev:30982]
21179 Thu Jun 14 17:09:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21181         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser): handle more
21182           extensions.  [ruby-dev:30972]
21184 Thu Jun 14 14:40:42 2007  Tanaka Akira  <akr@fsij.org>
21186         * lib/securerandom.rb: document updated.
21187           suggested by NaHi.  [ruby-dev:30966]
21189 Wed Jun 13 22:42:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21191         * gc.c (garbage_collect): update IA64 register stack code.
21192           [ruby-dev:30971]
21194 Wed Jun 13 06:05:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21196         * configure.in (darwin): prohibit loading extension libraries to
21197           miniruby.
21199 Tue Jun 12 21:50:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21201         * parse.y (call_args): no allow splat after assocs.  takes
21202           consistency over compatibility.
21204         * parse.y (call_args2): ditto
21206 Tue Jun 12 14:53:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21208         * lib/mkmf.rb (Logging.quiet, Logging.message): added quiet flag and
21209           use it.  [ruby-core:10909]
21211         * lib/mkmf.rb (find_header): use header names in the message.
21213 Sun Jun 10 18:37:13 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21215         * ext/probeprofiler/probeprofiler.c: clean warnings.
21217 Sun Jun 10 18:32:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21219         * missing/isinf.c, missing/dup2.c, missing/strtod.c, missing/x68.c,
21220           missing/alloca.c: use "ruby/config.h".
21222 Sun Jun 10 17:49:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21224         * instruby.rb (install_recursive): should check parent directories of
21225           the destination.  [ruby-dev:30947]
21227 Sun Jun 10 16:59:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21229         * parse.y (do_block, brace_block): fix line numbers.  [ruby-dev:30831]
21231 Sun Jun 10 16:57:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21233         * instruby.rb (install_recursive): add :glob option rather than
21234           using FNM_DOTMACH.
21236         * instruby.rb (ext-comm): make header directory first.
21238 Sun Jun 10 16:10:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21240         * test/ruby/test_beginendblock.rb: typo.
21242 Sun Jun 10 16:07:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21244         * instruby.rb (install_recursive): skip .svn directories.
21246 Sun Jun 10 15:44:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21248         * win32/Makefile.sub (config.status): rubyhdrdir was missing.
21250 Sun Jun 10 15:26:36 2007  Tanaka Akira  <akr@fsij.org>
21252         * Makefile.in: use --output-file for gperf to not leave lex.c.tmp.
21254 Sun Jun 10 15:11:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21256         * Makefile.in, win32/Makefile.sub (XCFLAGS): -I. is needed for *.inc.
21258         * ext/extmk.rb: prepend also topdir to mflags at last.
21260 Sun Jun 10 13:47:36 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21262         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
21263           get rid of invoking shell.  [ruby-dev:30942]
21265 Sun Jun 10 12:56:46 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21267         * include/ruby: moved public headers.
21269         * instruby.rb (install_recursive): skip backup files.
21271         * instruby.rb (ext-comm): install only current platform headers.
21273 Sun Jun 10 10:42:04 2007  Tanaka Akira  <akr@fsij.org>
21275         * lib/securerandom.rb: renamed from lib/secrand.rb.
21276           suggested by NaHi.  [ruby-dev:30934]
21278 Sat Jun  9 06:40:05 2007  Tanaka Akira  <akr@fsij.org>
21280         * lib/secrand.rb: rename SecRand() to SecRand.random_number.
21281           suggested by NaHi.  [ruby-dev:30934]
21283 Fri Jun  8 16:34:20 2007  Tanaka Akira  <akr@fsij.org>
21285         * ext/zlib/zlib.c (gzfile_s_open): use FilePathValue to support
21286           to_path.
21288 Fri Jun  8 16:11:00 2007  Koichi Sasada  <ko1@atdot.net>
21290         * eval_jump.h: th->errinfo should clear with nil.
21292 Fri Jun  8 14:53:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21294         * parse.y (call_args): allow splat argument after unpacked
21295           assocs like 1.8 does.
21297         * parse.y (call_args): ditto.
21299 Fri Jun  8 14:26:18 2007  Tanaka Akira  <akr@fsij.org>
21301         * lib/secrand.rb: new file for secure random interface.
21303         * lib/cgi/session.rb: use secrand for generating cookies.
21305 Fri Jun  8 12:44:37 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21307         * {win32,wince}/Makefile.sub: add lex.c rule.
21309 Fri Jun  8 11:54:18 2007  Tanaka Akira  <akr@fsij.org>
21311         * lex.c.blt: moved from lex.c.
21313         * Makefile.in: use lex.c.blt if gperf is not available.
21314           [ruby-list:8212], [ruby-list:8214], [ruby-list:24667],
21315           [ruby-talk:120857], [ruby-dev:28102]
21317 Thu Jun  7 21:38:39 2007  Koichi Sasada  <ko1@atdot.net>
21319         * thread.c (rb_thread_execute_interrupts): invoke ensure when
21320           main thread exits.
21322 Thu Jun  7 19:02:48 2007  Tanaka Akira  <akr@fsij.org>
21324         * lib/pp.rb: call original "method" method instead of redefined one.
21326 Thu Jun  7 17:20:57 2007  Koichi Sasada  <ko1@atdot.net>
21328         * iseq.c (prepare_iseq_build): freeze filename and name string.
21330         * variable.c: freeze class name string.
21332 Thu Jun  7 12:48:33 2007  Koichi Sasada  <ko1@atdot.net>
21334         * cont.c (cont_restore_1): fix to check root fiber [ruby-dev:30911].
21336         * test/ruby/test_fiber.rb: add a test.
21338 Thu Jun  7 07:24:36 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21340         * lib/json/common.rb: Ponder offering parse! method.
21342         * lib/json/editor.rb: be a bit more robust while loading data.
21344         * ext/json/ext/{generator,parser}/extconf.rb:
21345           add a have_header directive for st.h
21347         * test/json: fix some tests.
21349 Thu Jun  7 03:29:18 2007  Koichi Sasada  <ko1@atdot.net>
21351         * test_fiber.rb: add a test (Continuation and Fiber).
21353 Thu Jun  7 03:17:24 2007  Koichi Sasada  <ko1@atdot.net>
21355         * cont.c (cont_new): add debug message.
21357         * cont.c (cont_restore_1): copy stack information from fiber.
21359         * cont.c (rb_fiber_s_new): fix to mark created fiber.
21361         * test/ruby/test_fiber.rb: add some tests around Thread and Fiber.
21363         * yarvcore.c (thread_free): fix to skip freeing stack if root fiber
21364           is available.
21366 Thu Jun  7 01:03:20 2007  Koichi Sasada  <ko1@atdot.net>
21368         * eval_intern.h, eval.c (ruby_init): remove POP_TAG_INIT().
21370         * cont.c (rb_fiber_start): remove zero-clearing tag.
21372 Wed Jun  6 20:23:46 2007  Koichi Sasada  <ko1@atdot.net>
21374         * insns.def (invokeblock): fix of splat argument.
21375           (splat same as normal method dispatch)
21377 Wed Jun  6 16:27:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21379         * insns.def: fixed indentation.
21381 Wed Jun  6 10:58:23 2007  Koichi Sasada  <ko1@atdot.net>
21383         * eval.c (rb_yield): fix to check Qundef.
21385 Wed Jun  6 10:57:45 2007  Koichi Sasada  <ko1@atdot.net>
21387         * test/ruby/test_continuation.rb: add a test for last commit.
21389 Wed Jun  6 10:55:42 2007  Koichi Sasada  <ko1@atdot.net>
21391         * cont.c (rb_cont_call): forbid calling dead fiber with
21392           Continuation#call.
21394 Wed Jun  6 10:50:01 2007  Koichi Sasada  <ko1@atdot.net>
21396         * compile.c (iseq_compile_each): fix around yield arguments
21397           (with NODE_ARGSCAT).
21399 Wed Jun  6 02:50:53 2007  Koichi Sasada  <ko1@atdot.net>
21401         * cont.c (rb_fiber_start): clear th->tag and check error to fix
21402           [ruby-dev:30888] and [ruby-dev:30889].
21404         * eval_intern.h: fix rb_fiber_start() prototype.
21406         * test/ruby/test_fiber.rb: add tests for above.
21408 Wed Jun  6 02:40:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21410         * insnhelper.h, insns.def (DEC_SP): shouldn't use unary minus operator
21411           in pointer operation. some compilers (such as VC++8 x64) cannot deal
21412           it with expected way.
21414 Wed Jun  6 02:19:48 2007  Koichi Sasada  <ko1@atdot.net>
21416         * parse.y (new_yield), compile.c (iseq_compile_each): fix
21417           passing parameter.
21419         * eval.c, eval_jump.h: simplify rb_yield*.
21421         * proc.c (proc_mark): fix to mark proc->block.proc.
21423         * proc.c (Init_Proc): add Proc#lambda?
21425         * test/ruby/test_lambda.rb: add some tests.
21427         * vm.c (invoke_block): fix to check lambda block or not.
21429         * vm.c (th_yield_setup_args): fix to check arguments size
21430           when lambda block.
21432 Tue Jun  5 16:30:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21434         * io.c (rb_f_p): returns arguments to intervene.  [ruby-dev:29736]
21436 Tue Jun  5 14:07:55 2007  Koichi Sasada  <ko1@atdot.net>
21438         * insns.def (invokeblock): check block is created by lambda
21439           or Proc.new.
21441         * vm.c (block_proc_is_lambda): added.
21443 Tue Jun  5 14:47:52 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21445         * lib/pp.rb (PP::PPMethods::seplist): revert last change to work
21446           around wrapper bug.  [ruby-dev:30840]
21448 Tue Jun  5 14:11:15 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21450         * ext/nkf/nkf-utf8/nkf.c (kanji_convert): Fix guess fallback.
21452 Tue Jun  5 13:32:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21454         * compile.c, dir.c, eval.c, eval_jump.h, eval_method.h, numeric.c,
21455           pack.c, parse.y, re.c, thread.c, vm.c, vm_dump.c, call_cfunc.ci,
21456           thread_pthread.ci, thread_win32.ci: fixed indentation.
21458         * call_cfunc.ci: protoized.
21460         * thread_win32.ci: fixed typo.
21462 Tue Jun  5 13:17:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21464         * call_cfunc.ci, compile.c, dir.c, eval.c, eval_jump.h, numeric.c,
21465           pack.c, re.c, thread.c, thread_win32.ci, vm.c, vm_dump.c: fixed
21466           indentation.
21468 Mon Jun  4 21:15:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
21470         * lib/json.rb, lib/json, ext/json, test/json:
21471           import JSON library.
21473         * ext/nkf: import nkf.c rev:1.124
21474           Support CP10001.
21476 Mon Jun  4 20:52:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21478         * numeric.c (int_round): should not just truncate.
21480 Sat Jun  2 16:48:55 2007  Koichi Sasada  <ko1@atdot.net>
21482         * cont.c (Fiber#pass): rename to Fiber#yield.  Block parameter
21483           of fiber body receive first yield values.
21484           e.g.: Fiber.new{|x| p x}.yield(:ok) #=> :ok
21486         * cont.c: rename rb_context_t#retval to rb_context_t#value.
21488         * test/ruby/test_fiber.rb: ditto.
21490 Sat Jun  2 16:45:21 2007  Koichi Sasada  <ko1@atdot.net>
21492         * proc.c (Init_Proc): remove a line break.
21494 Sat Jun  2 01:27:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21496         * numeric.c (int_round): small optimization to handle bignums.
21498 Fri Jun  1 13:02:35 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21500         * insnhelper.h (INC_SP): shouldn't cast ``x'' to unsigned type because
21501           it might be a negative value.
21503         * insnhelper.h, insns.def: shouldn't use unary minus operator in index
21504           operator. some compilers (such as VC++8 x64) cannot deal it with
21505           expected way.
21507 Fri Jun  1 11:33:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21509         * numeric.c (num_round): should convert self to Float.
21510           [ruby-dev:30860]
21512 Fri Jun  1 02:01:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21514         * numeric.c (flo_round): now takes optional argument to specify
21515           number of digits, like round() in Python/PHP.
21517         * numeric.c (num_round): ditto.
21519 Fri Jun  1 01:58:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21521         * enum.c (each_with_index_i): should work well with continuation.
21522           a patch from sheepman <sheepman AT sheepman.sakura.ne.jp>.
21523           [ruby-dev:30846]
21525 Thu May 31 17:27:53 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21527         * lib/benchmark.rb (Benchmark::Job::item): avoid modifying the
21528           argument unintentionally.  [ruby-talk:253676]
21530 Wed May 30 14:43:00 2007  Koichi Sasada  <ko1@atdot.net>
21532         * cont.c (cont_capture): store all local variables in heap
21533           ([ruby-dev:30832]).
21535         * vm.c (th_stack_to_heap): added.
21537         * test/ruby/test_continuation.rb: add a test for above.
21539         * eval_intern.h (th_get_ruby_level_cfp): fix to clean code.
21541 Wed May 30 13:32:34 2007  Shugo Maeda  <shugo@ruby-lang.org>
21543         * lib/net/imap.rb (ResponseParser#next_token): fixed
21544           error message.
21546         * lib/net/imap.rb (ResponseParser#parse_error): fixed
21547           the condition not to refer @token.symbol unexpectedly.
21548           Thanks, Dick Monahan.
21550 Wed May 30 13:24:33 2007  Shugo Maeda  <shugo@ruby-lang.org>
21552         * lib/net/ftp.rb (Net::FTP#transfercmd): skip 2XX
21553           responses for some FTP servers.
21555 Wed May 30 04:18:37 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21557         * eval.c (rb_eval_cmd): just return if no exceptions.
21558           [ruby-dev:30820]
21560 Wed May 30 02:14:25 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21562         * signal.c (interrupt_init): needs to pass nil for Interrupt.
21563           [ruby-core:11038]
21565         * signal.c (trap): fixed segfaults.  [ruby-dev:30830]
21567 Wed May 30 00:50:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21569         * gc.c (rb_source_filename, obj_free): suppress warnings.
21571         * gc.c (garbage_collect, yarv_machine_stack_mark): fixed typo.
21572           http://bugs.debian.org/426267
21574 Wed May 30 00:24:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21576         * parse.y (open_args, arg_ambiguous, parser_warning): should not use
21577           rb_warning in the parser.
21579 Tue May 29 12:31:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21581         * win32/win32.c (rb_w32_opendir): removed duplicated code.
21583 Tue May 29 10:55:24 2007  Koichi Sasada  <ko1@atdot.net>
21585         * cont.c: fix bug around Continuation and Fiber.
21587         * test/ruby/test_continuation.rb: add tests for Continuation.
21589 Tue May 29 10:54:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21591         * win32/win32.c (rb_w32_opendir, rb_w32_readdir): eliminate magic
21592           numbers.
21594 Mon May 28 10:27:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21596         * cont.c: fixed a function name.
21598 Mon May 28 03:56:44 2007  Koichi Sasada  <ko1@atdot.net>
21600         * cont.c: support Fiber.  Check test/ruby/test_fiber.rb for detail.
21601           Fiber is known as "Micro Thread", "Coroutine", and other terms.
21602           At this time, only Fiber#pass is supported to change context.
21603           I want to know more suitable method name/API for Fiber (... do you
21604           know more suitable class name instead of Fiber?) as "suspend/resume",
21605           "call", "yield", "start/kick/stop/restart", ....
21607         * eval.c, eval_intern.h, thread.c, yarvcore.c, yarvcore.h: ditto.
21609 Sat May 26 00:38:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21611         * eval.c (ruby_exec_internal): do nothing if no code.
21613         * compile.c (rb_iseq_compile): check node if NULL before check
21614           nd_type.  [ruby-talk:252956]
21616 Sat May 26 00:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21618         * test/ruby/test_beginendblock.rb (test_should_propagate_signaled):
21619           skip tests for exitstatus and termsig on the platforms where
21620           signals not supported.
21622 Fri May 25 16:04:47 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21624         * yarvcore.c (Init_VM): wrap already initialized structs to use
21625           it directly.
21627 Fri May 25 11:09:47 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21629         * regint.h (include): on some platform, defines.h redefines
21630           SIZE_OF_LONG_LONG so shouldn't re-include config.h after included
21631           defines.h.
21633         * regint.h (vsnprintf): ruby on windows already have vsnprintf macro.
21635 Thu May 24 12:07:27 2007  Koichi Sasada  <ko1@atdot.net>
21637         * cont.c: check across trap violation.
21639         * eval.c, yarvcore.h: ditto.
21641 Thu May 24 11:46:55 2007  Koichi Sasada  <ko1@atdot.net>
21643         * gc.c, yarvcore.c: fix to mark VM structure on startup.
21645         * yarvcore.h: disable USE_CACHED_VALUE.
21647 Thu May 24 01:54:53 2007  Koichi Sasada  <ko1@atdot.net>
21649         * cont.c: support callcc which everyone love.
21650           incomplete. please give me bug reports.
21652         * common.mk, inits.c, thread.c: ditto.
21654         * yarvcore.c: export thread_mark().
21656         * yarvcore.h: disable value cache option.
21658         * eval_intern.h: set th_get_ruby_level_cfp to inline.
21660 Wed May 23 15:39:02 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21662         * common.mk: add a rule for regsyntax.c.
21664 Wed May 23 10:31:53 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21666         * oniguruma.h: updated to Oniguruma 5.7.0.
21668         * regsyntax.c, unicode.c: new files along with Oniguruma 5.x.
21670 Wed May 23 06:51:46 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
21672         * lib/cgi.rb (CGI#[]): get rid of exceptions being raised.
21673           [ruby-dev:30740], Thanks Kentaro KAWAMOTO.
21675 Wed May 23 05:49:49 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21677         * ext/extmk.rb, ext/purelib.rb, lib/mkmf.rb, runruby.rb: clear default
21678           load path to get rid of load pre-installed extensions/libraries.
21679           [ruby-core:11017]
21681 Tue May 22 16:37:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21683         * ruby.c (set_arg0): support RSTRING_LEN on HP-UX.  a patch from
21684           WATANABE Tetsuya <Tetsuya.WATANABE AT nifty.com>.  [ruby-dev:30806]
21686 Mon May 21 13:40:00 2007  Koichi Sasada  <ko1@atdot.net>
21688         * compile.c, vm_macro.def: support tail call optimization
21689           (on default, this feature is not enabled).
21691         * iseq.c, compile.c, vm_opts.h: add "tailcall_optimization"
21692           option.
21694         * sample/test.rb (test_ok): fix to adjust tailcall stack layout.
21696         * insns.def, vm.c, compile.c, yarvcore.c, yarvcore.h:
21697           add opt_gt, opt_le instructions.
21699 Mon May 21 03:34:06 2007  Minero Aoki  <aamine@loveruby.net>
21701         * lib/net/smtp.rb: CRAM-MD5 authentication did not work.
21702           [ruby-dev:30770]
21704 Sat May 19 10:26:01 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21706         * lib/date/format.rb (Date._parse): detects some OFX dates
21707           (Of course not fully).
21709 Sat May 19 03:08:05 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21711         * enum.c (enum_inject): minor improvement.  [ruby-dev:30792]
21713         * enum.c (one_i): no needs to iterate once the result became false.
21715         * enum.c (enum_one): fix for an example.
21717         * enum.c (one_iter_i, none_iter_i): DRY.;
21719 Sat May 19 01:07:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21721         * enum.c (enum_inject): it is now can work without block.  you
21722           have to specify two argument method name as the first argument.
21724         * enum.c (Init_Enumerable): reduce is new alias to inject.
21726 Sat May 19 01:05:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21728         * file.c (Init_File): method definition mismatch.
21730 Fri May 18 16:44:04 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21732         * file.c (Init_File): add to_path method to File objects.
21734 Fri May 18 11:12:39 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21736         * ruby.c (DllMain, ruby_init_loadpath): use DLL instance handle given
21737           to DllMain instead of VirtualQuery so that loadpath becomes relative
21738           from the DLL on WinCE too.
21740 Thu May 17 17:03:11 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21742         * misc/ruby-style.el (ruby-style-label-indent): for yacc rules.
21744 Thu May 17 13:30:27 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21746         * parse.y (f_arg): remove typo from ripper description.
21748 Thu May 17 13:23:38 2007  Koichi Sasada  <ko1@atdot.net>
21750         * parse.y, compile.c (set_arguments): fix to support in-paren
21751           parameter (ex: def foo((a, b))).
21753 Thu May 17 13:01:52 2007  Koichi Sasada  <ko1@atdot.net>
21755         * iseq.c (ruby_iseq_disasm): fix to show post arg info.
21757 Thu May 17 12:56:52 2007  Koichi Sasada  <ko1@atdot.net>
21759         * debug.c (ruby_debug_node): fix to show node line.
21761 Wed May 16 21:48:44 2007  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
21763         * lib/logger.rb (Logger::Application): remove meaningless logdev
21764           attribute and added logger attribute instead.  [ruby-core:11143]
21765           also added Logger#formatter rdoc comment.
21767 Tue May 15 16:40:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21769         * test/ruby/test_beginendblock.rb (test_endblockwarn): now parser
21770           warnings emit source names and line numbers.
21772 Tue May 15 15:01:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21774         * win32/win32.c (init_stdhandle): stderr should be without buffering,
21775           but mswin32 use buffering when stderr is not connected to tty.
21777 Mon May 14 02:12:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21779         * array.c (rb_ary_zip): a.zip(b,c) should return an array, not
21780           enumerator.
21782         * array.c (rb_ary_zip): a.zip(b,c) should return array with size
21783           truncated to the size of its shortest argument array.
21784           [incompatible]
21786 Mon May 14 01:54:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21788         * array.c (rb_ary_choice): should return nil when the array is
21789           empty.
21791 Sat May 12 18:26:36 2007  Minero Aoki  <aamine@loveruby.net>
21793         * lib/net/http.rb (tokens): forgot to add strip. [ruby-core:11120]
21795         * test/net/http/test_http.rb: test Net::HTTP.post_form.
21797 Fri May 11 15:27:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21799         * iseq.c (iseq_data_to_ary): internal IDs must not be exposed.
21800           [ruby-core:11073]
21802         * parse.y (internal_id_gen): now returns scope local ID instead of
21803           global one.
21805 Thu May 10 15:15:53 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21807         * test/ruby/test_super.rb: add tests.
21809 Thu May 10 15:14:05 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21811         * ext/iconv/iconv.c (iconv_s_conv): rdoc fix.
21813 Thu May 10 15:09:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21815         * parse.y (POINTER_P): pointer may be larger than long.
21817         * parse.y (vtable_size, vtable_included, vtable_tblcpy,
21818           vtable_to_tbl): constified.
21820 Thu May 10 10:13:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21822         * thread.c (rb_thread_priority): rdoc fix; the initial value is
21823           inherited from the creating thread.  [ruby-core:10607]
21825 Wed May  9 12:28:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21827         * bignum.c (Init_Bignum), numeric.c (Init_Numeric): added fdiv as
21828           aliases of quo.  [ruby-dev:30771]
21830 Tue May  8 23:39:09 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21832         * lib/date/format.rb (Date._parse): revised treatment of
21833           hyphened/separatorless dates.
21835         * lib/date/format.rb: some trivial adjustments.
21837 Tue May  8 20:23:07 2007  Tadayoshi Funaba  <tadf@dotrb.org>
21839         * lib/date/format.rb: reverted.
21841 Tue May  8 19:32:18 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
21843         * lib/rational.rb: fix high-precision Rationals cannot be
21844           converted to Floats. [ruby-Bugs:10502], [ruby-core:11069],
21845           [ruby-dev:30743]
21847 Mon May  7 10:59:55 2007  Kouhei Sutou  <kou@cozmixng.org>
21849         * lib/rss/image.rb, test/rss/test_image.rb: fixed Image module
21850           namespace URI. reported by Dmitry Borodaenko. Thanks.
21852 Sun May  6 18:44:11 2007  Minero Aoki  <aamine@loveruby.net>
21854         * lib/net/http.rb (Net::HTTP.post_form): allow an Array of String
21855           for pairs argument. [ruby-Bugs:10340]
21857         * lib/net/http.rb (Net::HTTP#set_form_data): ditto.
21859 Sun May  6 17:54:36 2007  Minero Aoki  <aamine@loveruby.net>
21861         * lib/net/http.rb: Connection header field might include both of
21862           "keep-alive" token and "close" token. [ruby-core:10818]
21864 Sat May  5 16:26:33 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21866         * lib/date/format.rb (Format::Bag#method_missing): get rid of
21867           modifying original argument.  [ruby-core:11090]
21869 Thu May  3 22:20:08 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21871         * configure.in, defines.h, eval_load.c (rb_feature_p, rb_provided,
21872           search_required, rb_require_safe), ext/extmk.rb: Fix
21873           a bug where a statically linked extension cannot be autoloaded.
21874           [ruby-dev:30023] / [ruby-dev:30239]
21876         * thread.c: added an internal class, Barrier.
21878         * thread.c: copied rdocs from fastthread.
21880         * yarvcore.h (struct rb_vm_struct): moved loading_table from global.
21882 Thu May  3 18:10:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21884         * vm_evalbody.ci, insns.def, vm.c, tool/insns2vm.rb (rb_num_t):
21885           renamed to get rid of name clash.  [ruby-dev:30504]
21887         * yarvcore.c (ruby_thread_init): ditto.
21889 Wed May  2 18:52:58 2007  Koichi Sasada  <ko1@atdot.net>
21891         * vm.c, yarvcore.h, yarvcore.c, insns.def: fix to mark VM stack
21892           in correct range.
21894 Wed May  2 17:13:26 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21896         * bignum.c (rb_big_quo): now calculate in integer.  [ruby-dev:30753]
21898 Wed May  2 15:14:56 2007  Koichi Sasada  <ko1@atdot.net>
21900         * eval_method.h: add redefine checks ([ruby-dev:30751]).
21902 Wed May  2 11:22:52 2007  Koichi Sasada  <ko1@atdot.net>
21904         * compile.c: use Qtrue instead of 2.
21906         * vm.c, insns.def: support "lambda" calling convention.
21908 Wed May  2 06:46:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21910         * error.c, parse.y, ruby.h (rb_compile_warn, rb_compile_warning): warn
21911           for compilation.  the parser should no longer use rb_warn() and
21912           rb_warning().  [ruby-dev:30121]
21914 Wed May  2 05:45:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21916         * parse.y (assoc): result of assoc_new needs to be an assoc.
21918 Wed May  2 05:40:43 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21920         * bignum.c (rb_big_pow): improvement by calculating from MSB and using
21921           factorization.  <http://yowaken.dip.jp/tdiary/20070426.html#p01>
21923 Tue May  1 18:45:45 2007  Koichi Sasada  <ko1@atdot.net>
21925         * sample/test.rb: import matzruby's sample/test.rb.
21927 Tue May  1 17:46:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
21929         * array.c (rb_ary_choice): a new method to choose an element
21930           randomly from an array.
21932         * array.c (rb_ary_choice): fixed mistake from RDoc.
21934 Tue May  1 13:59:18 2007  Koichi Sasada  <ko1@atdot.net>
21936         * proc.c (proc_arity): fix an arity bug ([ruby-core:11060]).
21938 Tue May  1 13:12:49 2007  Koichi Sasada  <ko1@atdot.net>
21940         * yarvcore.h, compile.c (set_arguments): support post arguments.
21942         * test/ruby/test_method.rb: add tests for above.
21944         * test/ruby/test_proc.rb: ditto.
21946         * proc.c: fix an arity bug ([ruby-core:11029]).
21948         * vm.c, vm.h, insns.def, vm_dump.h: fix bmethod process.
21950         * vm.c: support block argument on block parameter.
21952 Fri Apr 27 17:05:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21954         * numeric.c (int_pow): bugfix of overflow detection.
21956         * numeric.c (int_pow): rb_big_pow() may return other than Bignum.
21958 Fri Apr 27 01:51:50 2007  Koichi Sasada  <ko1@atdot.net>
21960         * compile.c: support multiple splat (e.g, [a, *b, *c, e, *f]).
21962 Fri Apr 27 00:03:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21964         * bignum.c (rb_big_pow): truncate all zero BDIGITs. [ruby-dev:30733]
21966 Thu Apr 26 17:31:00 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21968         * bignum.c (rb_big_pow): reduce multiplying for even number.
21970         * numeric.c (int_pow): calculate power in Fixnum as possible.
21971           [ruby-dev:30726]
21973 Thu Apr 26 17:18:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21975         * parse.y: fixes for ripper.
21977         * parse.y (primary): reduced duplicated code.
21979         * parse.y (f_arg_item): should not override by meaningless value.
21981         * parse.y (f_arg, assocs): should not use $$ before assigned.
21983         * parse.y (assoc_list): dispatch assoclist_from_args for assocs as
21984           well as args.
21986         * parse.y (assoc): return assoc if dispatched result is $1.
21988 Thu Apr 26 13:54:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
21990         * misc/ruby-style.el: new file.  C/C++ style for ruby source code.
21992 Wed Apr 25 19:49:16 2007  Tanaka Akira  <akr@fsij.org>
21994         * ext/socket/socket.c (unix_send_io, unix_recv_io): use CMSG_DATA to
21995           align file descriptor appropriately.
21997 Wed Apr 25 15:23:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
21999         * win32/win32.c (NtInitialize, exit_handler): add initializing and
22000           cleanup of critical section object for select.
22002         * win32/win32.c (do_select): block reentrance.
22004         * win32/win32.c (rb_w32_select): 0 sec polling of socket. this is
22005           workaround because winsock cannot do select at same socket at the
22006           same time by two or more threads.
22008 Wed Apr 25 14:10:47 2007  Koichi Sasada  <ko1@atdot.net>
22010         * ext/probeprofiler/probeprofiler.c: fix function name and
22011           return value.
22013 Wed Apr 25 12:42:40 2007  Koichi Sasada  <ko1@atdot.net>
22015         * yarvcore.h: remove rb_control_frame_t#callee_id.
22017         * vm_macro.def: ditto.
22019         * eval_intern.h (exec_event_hooks): fix to check event flags
22021         * eval_intern.h (EXEC_EVENT_HOOK): fix to re-check event flags.
22023         * ext/probeprofiler : added.  this profiler is sampling based
22024           profiler.
22026         * vm.c: add rb_thread_current_status() API for probeprofiler.
22028         * thread.c (rb_thread_execute_interrupts): add comments.
22030 Wed Apr 25 10:36:03 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22032         * eval_intern.h (PUSH_TAG): no argument now.
22034         * eval.c, eval_error.h, eval_jump.h, eval_load.c, proc.c, thread.c:
22035           ditto.
22037         * thread.c (alloc_event_hook, rb_thread_remove_event_hook): should
22038           return value.
22040 Tue Apr 24 09:33:57 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22042         * dir.c (do_stat, do_lstat, do_opendir): should not warn ENOTDIR.
22043           [ruby-talk:248288]
22045 Mon Apr 23 22:14:42 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22047         * ext/extmk.rb ($ruby): add extout directory to include path.
22048           [ruby-core:11003]
22050         * lib/mkmf.rb (libpathflag): not to append RPATHFLAG to current
22051           directory.
22053         * lib/mkmf.rb (init_mkmf): add current directory to default
22054           library path with highest priority.  [ruby-core:10960]
22056         * lib/mkmf.rb (LINK_SO): LIBPATH to be placed before DLDFLAGS.
22058 Fri Apr 20 16:05:22 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22060         * configure.in (LIBPATHFLAG, RPATHFLAG): no needs to be quoted,
22061           it is done by libpathflag in mkmf.rb.
22063 Fri Apr 20 12:27:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22065         * lib/optparse.rb: fix to override conv proc.
22067 Fri Apr 20 12:21:28 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22069         * eval.c (ruby_cleanup): fixed access to out of bound, and inverted
22070           the order of errinfos.
22072 Fri Apr 20 10:33:23 2007  Koichi Sasada  <ko1@atdot.net>
22074         * eval_intern.h: add prototypes of rb_sourceline() and
22075           rb_sourcefile().
22077 Fri Apr 20 02:37:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22079         * eval.c (ruby_cleanup): re-send signal.  [ruby-dev:30516]
22081         * eval_error.h (error_handle): no message when exiting by signal.
22083         * intern.h (rb_thread_signal_raise, ruby_default_signal): prototypes.
22085         * signal.c (esignal_init): takes a signal number and an optional
22086           signal name.
22088         * signal.c (interrupt_init): pass SIGINT always.
22090         * signal.c (ruby_default_signal): invoke system default signal
22091           handler.
22093         * signal.c (rb_f_kill): use NUM2PIDT instead of NUM2INT.
22095         * signal.c (rb_signal_exec, trap): handle SIGTERM.  [ruby-dev:30505]
22097         * thread.c (rb_thread_signal_raise): now takes signal number instead
22098           of signal name.
22100         * thread.c (rb_thread_signal_exit): since rb_make_exception() calls
22101           #exception method, rb_class_new_instance() is not needed here.
22103         * yarvcore.h (struct rb_vm_struct), eval_jump.h (terminate_process):
22104           exit_code is no longer stored in VM.
22106 Thu Apr 19 18:37:49 2007  Koichi Sasada  <ko1@atdot.net>
22108         * eval.c, node.h, thread.c, yarvcore.[ch], eval_intern.h:
22109           support set_trace_func (incomplete.  id and klass
22110           don't be passed).  And support Thread#set_trace_func
22111           which hook only specified thread and Thread#add_trace_func
22112           which add new trace func instead of replace old one.
22113           C level API was modified.  See thread.c (logic) and
22114           yarvcore.h (data structures).
22116         * vm.c, vm_macro.def: add hook points.
22118         * compile.c, insns.def: fix "trace" instruction.
22120         * iseq.c, vm_macro.h: add compile option "trace_instruction".
22122         * test/ruby/test_settracefunc.rb: hook "c-return" of set_trace_func.
22124 Thu Apr 19 20:57:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22126         * parse.y (symbol): symbols should be followed by EXPR_ENDARG.
22128         * parse.y (dsym): ditto.
22130         * parse.y (parser_yylex): strings should be followed by
22131           EXPR_ENDARG.
22133         * parse.y (parser_yylex): ditto for numbers.
22135         * parse.y (parser_yylex): EXPR_ENDARG after ']' and '}'.
22137 Thu Apr 19 17:46:36 2007  Koichi Sasada  <ko1@atdot.net>
22139         * lib/optparse.rb: fix to override conv proc.
22141 Wed Apr 18 10:41:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22143         * util.c (ruby_strtod): exponent is radix 10.  [ruby-talk:248272]
22145 Wed Apr 18 02:50:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22147         * yarvcore.c (th_init2): push initial blockptr value for
22148           rb_block_given_p() outside ruby_exec().  [ruby-core:10923]
22150 Wed Apr 18 02:30:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22152         * configure.in (LDFLAGS): prepend -L. instead appending it to
22153           XLDFLAGS.  [ruby-core:10933]
22155         * configure.in (Makefile): remove $U for automake from MISSING.
22156           [ruby-talk:248171]
22158 Mon Apr 16 22:56:01 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22160         * ext/pty/expect_sample.rb: avoid symbolic link representation for
22161           expect.  a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
22162           [ruby-dev:30714]
22164 Mon Apr 16 22:51:11 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22166         * sample: replace TRUE, FALSE with true, false respectively.
22167           a patch from Kazuhiro NISHIYAMA <zn at mbf.nifty.com>.
22168           [ruby-dev:30713]
22170 Mon Apr 16 17:08:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22172         * lib/optparse.rb (make_switch): do not clobber converter if pattern
22173           has no convert method.  reported by sheepman in [ruby-dev:30709].
22175 Mon Apr 16 16:49:32 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22177         * ext/stringio/stringio.c (strio_seek): consistent behavior with
22178           IO#seek.  patch by sheepman in [ruby-dev:30710].
22180 Mon Apr 16 16:34:08 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22182         * parse.y (parser_yylex): should set command_start after block
22183           starting "do"s and braces.  [ruby-core:10916]
22185 Mon Apr 16 10:51:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22187         * enum.c (enum_each_with_index): each_with_index to forward
22188           arguments to each.  [ruby-core:10921]
22190 Mon Apr 16 10:43:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22192         * time.c (time_arg): should allow to specify 24:00.
22193           [ruby-core:10915]
22195 Sun Apr 15 09:12:54 2007  Tadayoshi Funaba  <tadf@dotrb.org>
22197         * lib/date/format.rb: added some zone names.
22199         * lib/date/format.rb (_parse): now interprets doted numerical
22200           dates as a big endian (except dd.mm.yyyy).
22202 Thu Apr 12 17:13:22 2007  Koichi Sasada  <ko1@atdot.net>
22204         * thread.c (mutex_try_lock): check and set owner thread.
22206         * thread_pthread.ci: fix to show error code in error message.
22208 Thu Apr 12 17:11:54 2007  Koichi Sasada  <ko1@atdot.net>
22210         * eval.c (rb_rescue2): restore cfp ([ruby-dev:30582]).
22212 Thu Apr 12 16:06:48 2007  Koichi Sasada  <ko1@atdot.net>
22214         * eval.c (rb_protect): restore cfp ([ruby-dev:30671]).
22216 Thu Apr 12 16:04:31 2007  Koichi Sasada  <ko1@atdot.net>
22218         * compile.c (iseq_compile_each): check node->nd_state == 1, not !0.
22220 Wed Apr 11 16:35:16 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22222         * win32/win32.[ch] (rb_w32_enter_critical, rb_w32_leave_critical): no
22223           need to reject reentrance. removed.
22225         * rubysig.h (RUBY_CRITICAL): follow above changes.
22227         * rubysig.h (TRAP_BEG, TRAP_END): no need to save errno.
22229 Tue Apr 10 17:02:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22231         * win32/win32.c (rb_w32_fclose, rb_w32_close): need to save errno
22232           before calling original fclose()/close().
22234 Tue Apr 10 16:14:22 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22236         * thread_win32.ci (w32_wait_events): check whether interrupt_event is
22237           valid handle or not.
22239         * thread_win32.ci (native_thread_destroy): clear interrupt_event when
22240           close it.
22242 Tue Apr 10 15:53:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22244         * thread_pthread.ci (native_thread_create): initialize sleep_cond.
22245           fixed: [ruby-dev:30675]
22247 Mon Apr  9 18:48:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22249         * thread.c (do_select): ubf_select() is not necessary. interrupt is
22250           checked in the loop.
22252 Mon Apr  9 18:27:26 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22254         * thread.c (do_select): use ubf_select() as UBF on windows.
22256         * win32/win32.c (do_select): shouldn't call catch_interrupt() here.
22257           fixed: [ruby-dev:30674], reported by wanabe.
22259 Mon Apr  9 09:24:32 2007  Shugo Maeda  <shugo@ruby-lang.org>
22261         * lib/net/imap.rb (disconnect): call shutdown for
22262           SSLSocket. Thanks, Technorama Ltd.
22264 Sun Apr  8 13:28:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22266         * compile.c (defined_expr): test arguments of NODE_CALL and so
22267           on as well as NODE_ATTRASGN.  [ruby-core:10886]
22269 Fri Apr  6 10:56:29 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22271         * ext/openssl/ossl_pkey_ec.c (ossl_ec_key_get_group): get rid of
22272           warning. we are aware of it.
22274 Fri Apr  6 04:00:24 2007  Technorama Ltd.  <oss-ruby@technorama.net>
22276         * ext/openssl/ossl_{bn,x509{attr,cert,name,store}}.c:
22277           Add documentation.
22279 Thu Apr  5 17:59:19 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22281         * compile.c (defined_expr): support for assignment.
22282           [ruby-core:10867]
22284         * compile.h (ADD_CATCH_ENTRY): removed temporary variable.
22286 Thu Apr  5 15:13:34 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22288         * ext/openssl/ossl_ssl_session.c (ossl_ssl_session_alloc): should
22289           return value.
22291 Thu Apr  5 14:58:49 2007  Technorama Ltd. <oss-ruby@technorama.net>
22293         * ext/openssl/ossl_pkcs5.c: New module.
22295         * ext/openssl/ossl_{cipher,digest,pkcs7,pkcs12}.c:
22296           Remove redundant module namespace.
22298         * ext/openssl/lib/openssl/{cipher,digest}.rb
22299           Add backwards compatible classes for rearranged classes.
22301         * ext/openssl/ossl_{pkcs7,pkcs12}.c: Add documentation.
22303 Thu Apr  5 00:42:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22305         * error.c (rb_notimplement), io.c (pipe_open): removed definite
22306           articles and UNIX manual section from messages.  [ruby-dev:30690]
22308 Wed Apr  4 17:09:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22310         * io.c (pipe_open): refined the message of NotImplementedError.
22311           [ruby-dev:30685]
22313 Wed Apr  4 12:29:02 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22315         * error.c (rb_notimplement): should show the name of this func,
22316           not callee.
22318 Wed Apr  4 10:18:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22320         * io.c (popen_exec): should not close close-on-exec FDs.
22321           [ruby-dev:30679]
22323         * io.c (pipe_open): raise NotImplementedError for command "-" on
22324           platforms where fork(2) is not available.  [ruby-dev:30681]
22326 Tue Apr  4 04:17:18 2007  Technorama Ltd. <oss-ruby@technorama.net>
22328         * ext/openssl/ossl_ssl.c: Add documentation.
22330 Tue Apr  3 16:22:24 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22332         * ext/openssl/extconf.rb: check for functions added in 1.9.
22334         * ext/openssl/ruby_missing.h: check per features instead by
22335           checking version code.  [ruby-core:10845]
22337 Tue Apr  3 16:02:44 2007  Technorama Ltd. <oss-ruby@technorama.net>
22339         * ext/openssl/ossl_bn.c: More documentation.
22341         * ext/openssl/lib/ossl_{pkey,pkey_ec}.[ch]: Add elliptic curves.
22343 Tue Apr  3 15:50:41 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22345         * ext/socket/socket.c (s_recv, s_recvfrom): some systems (such as
22346           windows) doesn't set fromlen if the socket is connection-oriented.
22347           reported by Bram Whillock in [ruby-core:10512] [ruby-Bugs#9061]
22349 Tue Apr  3 09:36:55 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22351         * ext/openssl/ruby_missing.h: need to include version.h to check
22352           RUBY_VERSION_CODE.
22354 Mon Apr  3 07:10:12 2007  Technorama Ltd. <oss-ruby@technorama.net>
22356         * ext/openssl/ossl_{ssl.[ch],ssl_session.c},
22357           ext/openssl/lib/openssl/lib/openssl/ssl.rb:
22358           New SSL::Session class.  Add session cb's, getter/setters,
22359           config, and statistics methods.
22361 Mon Apr  3 04:00:23 2007  Technorama Ltd. <oss-ruby@technorama.net>
22363         * ext/openssl/{ossl.[ch],ossl_pkey.c} Add documentation.
22365         * ext/openssl/ossl_hmac.c Add reset method.
22367         * ext/openssl/ossl_cipher.c (Cipher#update) Take additional
22368           buffer argument.
22370         * ext/openssl/{ossl_bio.c,ossl_ssl.c,ruby_missing.h}
22371           compatibility with 1.8.
22373 Mon Apr  2 21:55:12 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22375         * insns.def (throw), thread.c, yarvcore.h (throwed_errinfo): fixed
22376           typo.
22378 Fri Mar 30 11:46:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22380         * win32/win32.c (rb_w32_cmdvector): fixed buffer size. reported by
22381           wanabe [ruby-dev:30672]
22383         * win32/win32.c (init_env, insert, rb_w32_get_environ): use strdup
22384           instead of malloc + strlcpy. suggested by nobu [ruby-dev:30673]
22386 Fri Mar 30 02:29:04 2007  Technorama  <oss-ruby@technorama.net>
22388         * ext/openssl/ossl_{bn,cipher,digest,hmac,rand,pkey_{dh,dsa,rsa}}.c:
22389           Add Documentation for various methods.
22391         * ext/openssl/lib/openssl/cipher.rb: Ditto
22393         * ext/openssl/ossl_bn.c: add lshift! and rshift! methods.
22395         * ext/openssl/ossl_digest.c: GetDigestPtr() also accept a string.
22397 Fri Mar 23 11:28:24 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22399         * win32/win32.c (init_env, insert, cmdglob, rb_w32_cmdvector,
22400           rb_w32_opendir, rb_w32_readdir, rb_w32_strerror, rb_w32_stati64,
22401           rb_w32_get_environ): use strlcpy() and strlcat().
22403         * win32/win32.c (rb_w32_opendir): use realloc() instead of xrealloc().
22405         * win32/win32.c (rb_w32_closedir): check NULL before free pointers.
22407 Fri Mar 23 00:24:52 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22409         * lib/shell: commit miss(support for ruby 1.9(YARV) thread model).
22411 Thu Mar 22 13:32:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22413         * win32/Makefile.sub (LIBS): remove an unnecessary library.
22415 Thu Mar 22 10:27:58 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22417         * test/ruby/test_bignum.rb (test_to_s): add tests for Bignum#to_s.
22419 Wed Mar 21 20:38:06 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22421         * marshal.c (w_short, w_long, w_object): get rid of VC++ warnings.
22423 Wed Mar 21 20:05:07 2007  Koichi Sasada  <ko1@atdot.net>
22425         * compile.c, parse.y, eval.c, intern.h, iseq.c, lex.c, node.h,
22426           proc.c, vm.c, vm_macro.def, vm_macro.def, yarvcore.c, yarvcore.h,
22427           debug.c, debug.h: merge half-baked-1.9 changes.  The biggest change
22428           is to change node structure around NODE_SCOPE, NODE_ARGS.  Every
22429           scope (method/class/block) has own NODE_SCOPE node and NODE_ARGS
22430           represents more details of arguments information.  I'll write a
22431           document about detail of node structure.
22433 Wed Mar 21 17:04:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22435         * bignum.c (rb_big2str0): round up for the most significant digit.
22436           [ruby-core:10686]
22438 Tue Mar 21 08:20:00 2007  Nathaniel Talbott  <ntalbott@ruby-lang.org>
22440         * test/testunit/collector/test_dir.rb: Fixed test/unit tests that
22441           were breaking due to Module#public_instance_methods now
22442           returning a Symbol instead of a String.
22444         * test/testunit/collector/test_objectspace.rb: Ditto.
22446 Tue Mar 20 22:54:50 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22448         * marshal.c (w_extended): erroneous check condition when dump
22449           method is defined.  [ruby-core:10646]
22451 Tue Mar 20 21:36:47 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22453         * lib/shell.rb, lib/shell: support for ruby 1.9(YARV) thread model.
22455 Tue Mar 20 16:36:08 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22457         * distruby.rb: Add zip generation.
22459 Tue Mar 20 16:20:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22461         * eval.c (rb_f_callee_name): add __method__ and __callee__ again.
22462           __callee__ need to rework to adopt YARV.  [ruby-core:10671]
22464 Tue Mar 20 11:09:00 2007  Akinori MUSHA  <knu@iDaemons.org>
22466         * lib/set.rb: Revise rdoc.
22468         * lib/set.rb (Set#freeze, Set#taint, Set#untaint): Implement
22469           Set#freeze, Set#taint, and Set#untaint; requested by: Dan
22470           Hutchings <dan AT moltoagitato.com> in [ruby-bugs:PR#9359].
22472 Tue Mar 20 09:13:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22474         * process.c (rb_fork): flush stdouts always before fork(2).
22475           fixed: [ruby-dev:30612]
22477 Tue Mar 20 01:38:48 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22479         * thread.c (thread_start_func_2): store the result of first_func
22480           as well as first_proc.
22482         * thread.c (thread_create_core): block is not used if first_func
22483           is given.
22485 Mon Mar 19 16:58:52 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22487         * missing/{strlcat,strlcpy}.c, missing.h: new functions.
22489         * LEGAL: add copyright notice about above files.
22491         * configure.in: check whether strlcat and strlcpy are exist or not.
22493         * {bcc32,win32,wince}/Makefile.sub: use above files.
22495 Mon Mar 19 14:12:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22497         * lib/matrix.rb (Matrix::inverse_from): adding partial pivoting to
22498           the Gauss-Jordan algorithm, making it stable.  a patch from
22499           Peter Vanbroekhoven.  [ruby-core:10641]
22501 Mon Mar 19 12:13:36 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22503         * regparse.c, etc.: K&R to ANSI code cleanup patch from Stefan
22504           Huehner <stefan at huehner.org>.  [ruby-core:10543]
22506 Mon Mar 19 11:27:13 2007  Minero Aoki  <aamine@loveruby.net>
22508         * lib/net/protocol.rb (rbuf_read): extend buffer size for speed.
22510 Sun Mar 18 08:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22512         * win32/dir.h, win32/win32.c (rb_w32_opendir, rb_w32_readdir,
22513           rb_w32_closedir): get rid of possible buffer-overflows.
22515 Sat Mar 17 19:10:39 2007  Kouhei Sutou  <kou@cozmixng.org>
22517         * lib/rss, test/rss:
22518         - supported Atom.
22519         - bumped version 0.1.6 to 0.1.7.
22520         * sample/rss/convert.rb: added new sample.
22522 Fri Mar 16 22:32:20 2007  Minero Aoki  <aamine@loveruby.net>
22524         * lib/net/pop.rb: change default verification mode from
22525           VERIFY_PEER to VERIFY_NONE because most POPS server does not have
22526           true certification.
22528 Fri Mar 16 22:19:24 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22530         * ext/win32ole/win32ole.c: add WIN32OLE#ole_activex_initialize,
22531           a little bit supporting ActiveX control. [ruby-talk:241188]
22533 Fri Mar 16 22:16:58 2007  Minero Aoki  <aamine@loveruby.net>
22535         * lib/net/http.rb: merge Ruby-SSPI patch contributed by Justin
22536           Bailey.
22538         * ext/Win32API/lib/win32/sspi.rb: new file.
22540 Wed Mar 14 12:30:00 2007  Shigeo Kobayashi  <shigeo@tinyforest.jp>
22542         * ext/bigdecimal/bigdecimal.c: BigDecimal("-.31") is now
22543           treated as ("-0.31") not as ("0.31").
22545 Tue Mar 13 19:04:30 2007  Keiju Ishitsuka <keiju@ruby-lang.org>
22547         * lib/sync.rb: support for ruby 1.9(YARV) thread model.
22549 Tue Mar 13 09:25:10 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22551         * common.mk (clear-installed-list): separated from install-prereq.
22553 Tue Mar 13 07:23:20 2007  Shugo Maeda  <shugo@ruby-lang.org>
22555         * lib/monitor.rb (mon_try_enter): call @mon_muetx.try_lock.
22556           Thanks, Keiju ISHITSUKA. [ruby-dev:30507]
22558 Tue Mar 13 02:42:58 2007  Akinori MUSHA  <knu@iDaemons.org>
22560         * lib/cgi.rb (CGI::header): IIS >= 5.0 does not need the nph
22561           assumption any more; submitted by MIYASAKA Masaru <alkaid AT
22562           coral.ocn.ne.jp> in [ruby-dev:30537].
22564 Mon Mar 12 10:53:28 2007  Akinori MUSHA  <knu@iDaemons.org>
22566         * ext/openssl/ossl_asn1.c (Init_ossl_asn1): Let rdoc know about
22567           externally defined modules; submitted by Technorama
22568           Ltd. <oss-ruby AT technorama.net> in [ruby-bugs:PR#4704].
22570         * ext/openssl/ossl_bn.c (Init_ossl_bn): Ditto.
22572         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Ditto.
22574         * ext/openssl/ossl_digest.c (Init_ossl_digest): Ditto.
22576         * ext/openssl/ossl_hmac.c (Init_ossl_hmac): Ditto.
22578         * ext/openssl/ossl_pkey.c (Init_ossl_pkey): Ditto.
22580         * ext/openssl/ossl_pkey_dh.c (Init_ossl_dh): Ditto.
22582         * ext/openssl/ossl_pkey_dsa.c (Init_ossl_dsa): Ditto.
22584         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): Ditto.
22586         * ext/openssl/ossl_rand.c (Init_ossl_rand): Ditto.
22588         * ext/openssl/ossl_ssl.c (Init_ossl_ssl): Ditto.
22590 Sun Mar 11 18:42:01 2007  Akinori MUSHA  <knu@iDaemons.org>
22592         * misc/ruby-mode.el (ruby-block-end-re): Support for the
22593           experimental ';;' terminator had been dropped.
22595 Sun Mar 11 05:45:46 2007  Akinori MUSHA  <knu@iDaemons.org>
22597         * misc/README, misc/rdebug.el: Add rdebug.el, Emacs ruby-debug
22598           interface based on rubydb3x.el; submitted by Martin Nordholts
22599           <enselic AT gmail.com> in [ruby-bugs:PR#9023].
22601 Sat Mar 10 07:20:28 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22603         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB#library_name,
22604           WIN32OLE_TYPELIB#visible?.
22606         * test/win32ole/test_win32ole_typelib.rb: ditto.
22608 Thu Mar  8 09:17:59 2007  Minero Aoki  <aamine@loveruby.net>
22610         * compile.c: iseq_compile -> rb_iseq_compile.
22612         * iseq.c: ditto.
22614         * intern.h: provide function prototype of Init_jump.
22616         * eval_jump.h (Init_jump): declare function type.
22618         * thread.c: platform-dependent functions should be surrounded by #ifdef.
22620         * iseq.c (iseq_data_to_ary): remove unused variable.
22622         * compile.c (set_arguments): ditto.
22624         * thread.c (set_unblock_function): ditto.
22626         * thread_pthread.ci: reduce printf warning.
22628         * vm_dump.c: ditto.
22630 Tue Mar  6 16:35:04 2007  Keiju Ishitsuka  <keiju@ruby-lang.org>
22632         * lib/shell/process-controller.rb: fix thread synchronization problem for [ruby-dev:30477].
22634 Tue Mar  6 11:53:25 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
22636         * ext/tk/sample/irbtkw.rbw: fails to exit process.
22638 Tue Mar  6 10:23:09 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22640         * runruby.rb: added --pure (turned on by default) and --debugger
22641           options.
22643 Mon Mar  5 09:19:33 2007  Minero Aoki  <aamine@loveruby.net>
22645         * lib/timeout.rb (Timeout.timeout): should return the block value
22646           always.
22648         * lib/timeout.rb (Timeout.timeout): should yield sec argument
22649           always.
22651         * lib/timeout.rb (Timeout.timeout): fix document.
22653 Mon Mar  5 09:16:40 2007  Minero Aoki  <aamine@loveruby.net>
22655         * lib/net/smtp.rb: support automatic STARTTLS.
22657         * lib/net/smtp.rb: check server advertisement.
22659         * lib/net/smtp.rb: introduce new class SMTP::Response.
22661         * lib/net/smtp.rb (getok): should not use sprintf.
22663         * lib/net/smtp.rb (get_response): ditto.
22665         * lib/net/protocol.rb: reduce syntax warning on 1.9.
22667 Mon Mar  5 07:13:28 2007  Minero Aoki  <aamine@loveruby.net>
22669         * lib/net/smtp.rb: reconstruct SMTPS/STARTTLS interface.  New
22670           interface is incompatible from current 1.9 interface at all.
22672         * lib/net/smtp.rb: All SSL-related class methods are removed; use
22673           instance methods instead.
22675         * lib/net/smtp.rb: rename methods: *ssl -> *tls (with alias
22676           "ssl").
22678         * lib/net/smtp.rb: rename methods: *tls -> *starttls.
22680 Mon Mar  5 01:36:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22682         * parse.y (parser_yylex), win32/win32.c (rb_w32_utime): fixed
22683           indentation broken at YARV merger.
22685 Sun Mar  4 23:41:14 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22687         * file.c (rb_stat_uid, rb_stat_gid, eaccess): use rb_uid_t and
22688           rb_gid_t instead of int.
22690         * file.c (rb_stat_s_utime): fixed a commit miss for the platforms
22691           where utimes() does not exist.
22693         * lib/fileutils.rb (touch): ditto.
22695 Sun Mar  4 14:46:56 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22697         * util.c (push_element): should return a int value.
22699 Sun Mar  4 01:01:25 2007  Akinori MUSHA  <knu@iDaemons.org>
22701         * lib/set.rb (Set#^, Set#&): Correct documentation.  Those methods
22702           return sets, not arrays; noted by Oliver Frank Wittich <nietz AT
22703           mangabrain.de>.
22705 Sat Mar  3 22:54:33 2007  Minero Aoki  <aamine@loveruby.net>
22707         * lib/fileutils.rb (touch): last #touch change causes error when
22708           :mtime option was not given.
22710 Sat Mar  3 22:51:29 2007  Minero Aoki  <aamine@loveruby.net>
22712         * lib/fileutils.rb (mv): could not move directory between
22713           different file systems. [ruby-dev:30411]
22715 Sat Mar  3 22:37:02 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22717         * file.c (rb_file_s_utime): allow nil to set the current time.
22719         * lib/fileutils.rb (touch): ditto, and added :mtime and :nocreate
22720           options.  fixed: [ruby-talk:219037]
22722 Sat Mar  3 15:52:26 2007  Akinori MUSHA  <knu@iDaemons.org>
22724         * object.c (instance_variable_get): Restore rdoc markups lost in
22725           the last commit.
22727 Fri Mar  2 21:17:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
22729         * ext/win32ole/win32ole.c (get_ptr_of_variant, ole_set_safe_array,
22730           ole_val2ptr_variant, ole_val2olevariantdata, ole_variant2val,
22731           ): fix some bugs of WIN32OLE_VARIANT.new when variant type is
22732           VT_ARRAY|VT_BSTR or VT_BYREF.
22734         * ext/win32ole/win32ole.c (folevariant_s_array, folevariant_initialize):
22735           WIN32OLE_VARIANT#[], WIN32OLE_VARIANT#[]=, WIN32OLE_VARIANT#value=
22736           is defined as instance method of WIN32OLE_VARIANT.
22738         * test/win32ole/test_win32ole_variant.rb: add some test for
22739           VT_ARRAY, VT_BYREF variant type.
22741 Fri Mar  2 07:58:24 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22743         * object.c (rb_obj_ivar_set): RDoc updated according to a
22744           suggestion from Brian Candler <B.Candler AT pobox.com>.
22745           [ruby-core:10469]
22747 Thu Mar  1 21:38:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22749         * parse.y (stmt, arg): should not omit lhs of OP_ASGN1 even if
22750           empty.  [ruby-dev:30455]
22752 Thu Mar  1 02:55:25 2007  Akinori MUSHA  <knu@iDaemons.org>
22754         * ext/digest/digest.c (get_digest_base_metadata): Allow inheriting
22755           Digest::Base subclasses, which was unintentionally made
22756           impossible while restructuring Digest classes.
22758 Thu Mar  1 02:05:17 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22760         * mkconfig.rb (patchlevel): read from version.h.
22762 Wed Feb 28 21:15:00 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22764         * configure.in (ac_cv_func_fcntl): fcntl support for MinGW.
22766         * missing/flock.c: workaround for MinGW.
22768 Wed Feb 28 20:51:32 2007  URABE Shyouhei  <shyouhei@ruby-lang.org>
22770         * pack.c (pack_unpack): properly ignore non-base64 octets such as
22771           UTF-8 encoded BOMs; submitted by SOUMA Yutaka <holon@radastery.jp>
22772           to fix [ruby-core:10437]
22774 Wed Feb 28 18:31:51 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22776         * ext/openssl/extconf.rb: no need to check unistd.h and sys/time.h.
22777           they are already checked at configure.
22778           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22780 Wed Feb 28 18:23:43 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22782         * lib/mkmf.rb ($DEFLIBPATH): default library paths ($(topdir), etc)
22783           should be the first elements of library paths list.
22784           reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22786 Wed Feb 28 10:33:58 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22788         * Makefile.in, configure.in, */Makefile.sub (THREAD_MODEL): system
22789           specific thread model.
22791         * compile.h, regint.h, vm.h, array.c: removed unnecessary #include.
22793 Wed Feb 28 04:03:03 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22795         * enum.c (take_i): small cosmetic / documentation patch from
22796           Tadashi Saito <shiba AT mail2.accsnet.ne.jp>. [ruby-dev:30446]
22798 Wed Feb 28 01:20:18 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22800         * test/{dbm,gdbm}/test_{dbm,gdbm}.rb: shouldn't use host_os. use
22801           target_os instead. reported by KOBAYASHI Yasuhiro [ruby-list:43225]
22803 Wed Feb 28 00:08:11 2007  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
22805         * mkconfig.rb (RbConfig): add CONFIG['PATCHLEVEL']
22807         * common.mk: new target dist
22809         * distruby.rb: new file
22811 Tue Feb 27 22:18:45 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22813         * configure.in (--enable-auto-image-base): avoid the necessity to
22814           rebase the shared libs as much as possible;
22815           submitted by Corinna Vinschen <spam at vinschen.de> in
22816           [ruby-talk:240964].
22818 Tue Feb 27 21:36:47 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22820         * util.c (__crt0_glob_function): use ruby_glob() instead of rb_globi().
22822 Tue Feb 27 21:33:04 2007  WATANABE Hirofumi  <eban@ruby-lang.org>
22824         * configure.in (ac_cv_func_setrlimit): workaround for djgpp.
22826 Tue Feb 27 20:35:28 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
22828         * common.mk (error.c, process.c): depend on yarvcore.h and rubysig.h.
22830 Tue Feb 27 19:26:31 2007  Akinori MUSHA  <knu@iDaemons.org>
22832         * ext/nkf/nkf.c (rb_str_resize, rb_nkf_kconv, rb_nkf_guess1,
22833           rb_nkf_guess2): Silence warnings regarding char * vs. unsigned
22834           char * mismatch; submitted by Lyle Johnson
22835           <lyle.johnson@gmail.com> in [ruby-core:10416].
22837 Tue Feb 27 19:15:01 2007  Akinori MUSHA  <knu@iDaemons.org>
22839         * lib/base64.rb (Base64::b64encode): Fix documentation; submitted
22840           by David Symonds <dsymonds@gmail.com> in [ruby-core:10432].
22842 Tue Feb 27 18:59:42 2007  Akinori MUSHA  <knu@iDaemons.org>
22844         * ext/bigdecimal/bigdecimal.c (BigDecimal_load): Silence warnings
22845           regarding char * vs. unsigned char * mismatch; submitted by Lyle
22846           Johnson <lyle.johnson@gmail.com> in [ruby-core:10416].
22848         * ext/digest/sha1/sha1ossl.c (SHA1_Finish): Ditto.
22850         * ext/digest/rmd160/rmd160ossl.c (RMD160_Finish): Ditto.
22852         * ext/digest/digest.c (rb_digest_base_finish,
22853           rb_digest_base_update): Ditto.
22855 Tue Feb 27 18:12:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
22857         * enum.c (enum_take): new method.  [ruby-dev:30407]
22859         * enum.c (enum_drop): ditto.
22861 Tue Feb 27 07:47:24 2007  Koichi Sasada  <ko1@atdot.net>
22863         * yarvcore.h, vm.h: rename th_invoke_yield() to th_yield().
22865         * blockinlining.c: ditto.
22867         * eval.c: ditto.
22869         * vm.c, insns.def: rename th_invoke_yield_cfunc()
22870           to th_yield_with_cfunc().
22872         * yarvcore.h, yarvcore.c: rename theYarvVM to ruby_current_vm and
22873           yarvCurrentThread to ruby_current_thread.  remove yarvVMArray.
22875 Tue Feb 27 00:45:23 2007  Minero Aoki  <aamine@loveruby.net>
22877         * test/ruby/test_optimization.rb: restore method before calling
22878           assert_equal.
22880 Mon Feb 26 00:58:39 2007  Koichi Sasada  <ko1@atdot.net>
22882         * yarvcore.h: add rb_thread_t#top_wrapper, top_self.
22884         * eval_load.c (rb_load): support eval in wrapper module
22885           (load(file, true)).
22887         * eval.c: ditto.
22889         * eval_jump.h: ditto.
22891         * iseq.c: ditto.
22893         * vm.c: ditto.
22895         * yarvcore.c: ditto.
22897         * insns.def: add a empty line.
22899 Mon Feb 26 00:54:36 2007  Koichi Sasada  <ko1@atdot.net>
22901         * common.mk: change "gdb" rule.  You can debug miniruby with
22902           $(srcdir)/test.rb on gdb by this rule (type "make gdb").
22903           If you write break points to "breakpoints.gdb" on $srcdir,
22904           gdb runs with this file.
22906 Sun Feb 25 11:46:58 2007  Koichi Sasada  <ko1@atdot.net>
22908         * win32/Makefile.sub: enable -Zi (debug) option.
22910 Sun Feb 25 11:38:40 2007  Koichi Sasada  <ko1@atdot.net>
22912         * ruby.h: define RUBY_VM macro and remove NATIVETHREAD* macros.
22914         * intern.h: ditto.
22916         * signal.c (posix_signal): remove unused function
22917           posix_nativethread_signal().
22919 Sun Feb 25 11:31:13 2007  Koichi Sasada  <ko1@atdot.net>
22921         * thread.c (rb_thread_run): fix to ANSI style.
22923 Sun Feb 25 11:09:16 2007  Minero Aoki  <aamine@loveruby.net>
22925         * bootstraptest/runner.rb: show source code in error message.
22927 Sun Feb 25 09:39:50 2007  Koichi Sasada  <ko1@atdot.net>
22929         * yarvcore.h:
22930           rename:
22931             rb_iseq_t#file_name -> filename
22932             rb_iseq_t#local_tbl -> local_table
22933           add:
22934             rb_iseq_t#local_table_size
22936         * compile.c: separate local_table_size and local_size
22937           (local variable size)
22939         * blockinlining.c: apply above rename.
22941         * compile.h: ditto.
22943         * eval.c: ditto.
22945         * iseq.c: ditto.
22947         * proc.c: ditto.
22949         * vm.c: ditto.
22951         * vm_dump.c: ditto.
22953 Sun Feb 25 10:27:17 2007  Minero Aoki  <aamine@loveruby.net>
22955         * bootstraptest/runner.rb: add lib/ to load path.
22957 Sat Feb 25 10:16:50 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22959         * rubyio.h (HAVE_RB_IO_T): macro to tell if rb_io_t is defined.
22961 Sat Feb 24 19:39:16 2007  Minero Aoki  <aamine@loveruby.net>
22963         * common.mk: new target "btest", to run bootstraptests.
22965 Sat Feb 24 19:30:40 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22967         * file.c, gc.c, io.c, ruby.h, rubyio.h, win32/win32.h (rb_io_t):
22968           renamed from OpenFile.
22970         * ext/dl/cptr.c, ext/io/wait/wait.c, ext/openssl/ossl.h,
22971           ext/openssl/ossl_bio.c, ext/openssl/ossl_ssl.c, ext/pty/pty.c,
22972           ext/readline/readline.c, ext/socket/socket.c: ditto.
22974 Sat Feb 24 19:28:23 2007  Minero Aoki  <aamine@loveruby.net>
22976         * bootstraptest/runner.rb: new option -v,--verbose.
22978 Sat Feb 24 18:55:50 2007  Minero Aoki  <aamine@loveruby.net>
22980         * yarvtest/test_method.rb: removed (merged to bootstraptest).
22982         * yarvtest/test_class.rb: ditto.
22984 Sat Feb 24 18:44:39 2007  Minero Aoki  <aamine@loveruby.net>
22986         * bootstraptest/test_class.rb: new file.
22988         * bootstraptest/test_method.rb: add tests.
22990 Sat Feb 24 18:44:30 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
22992         * intern.h (rb_thread_blocking_region): add prototype.
22994         * file.c (rb_thread_flock, rb_file_flock): use UBF feature.
22996         * process.c (rb_waitpid_blocking, rb_waitpid): use UBF feature.
22998         * thread.c (rb_thread_debug): added runtime debugging flag.
23000         * thread.c (BLOCKING_REGION): restore previous UBF.
23002         * thread.c (rb_thread_blocking_region): default UBF to interrupt
23003           in system dependent way by RB_UBF_DFL.
23004           + ubf_select() on posix system
23005           + ubf_handle() on Win32
23006           + none on cygwin
23008         * thread_win32.ci (rb_w32_wait_events_blocking): blocking version.
23010         * win32/win32.c (waitpid): use rb_w32_wait_events_blocking().
23012 Sat Feb 24 17:45:48 2007  Minero Aoki  <aamine@loveruby.net>
23014         * parse.y (f_arg, opt_f_block_arg): ripper should export VALUE.
23016 Sat Feb 24 16:52:55 2007  Minero Aoki  <aamine@loveruby.net>
23018         * bootstraptest/runner.rb: fix syntax error.
23020 Sat Feb 24 16:51:09 2007  Minero Aoki  <aamine@loveruby.net>
23022         * bootstraptest/runner.rb: new option --help.
23024 Sat Feb 24 16:47:33 2007  Minero Aoki  <aamine@loveruby.net>
23026         * bootstraptest: new test suite.
23028         * bootstraptest/runner.rb: new file.
23030         * bootstraptest/test_literal.rb: new file.
23032         * bootstraptest/test_method.rb: new file.
23034 Sat Feb 24 16:29:15 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23036         * win32/win32.c (StartSocket): remove unnecessary code.
23038 Sat Feb 24 16:04:30 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23040         * parse.y (struct local_vars): remove unused nofree member from
23041           struct.
23043         * parse.y (parser_free): ditto.
23045 Sat Feb 24 15:57:19 2007  Shugo Maeda  <shugo@ruby-lang.org>
23047         * lib/thread.rb (ConditionVariable#broadcast): use Mutex
23048           instead of Thread.exclusive.
23050         * lib/monitor.rb (MonitorMixin#mon_exit): unset @mon_owner
23051           before calling Mutex#unlock.
23053 Sat Feb 24 15:51:45 2007  Minero Aoki  <aamine@loveruby.net>
23055         * parse.y (program): remove useless assignment to reduce warning.
23057 Sat Feb 24 15:41:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23059         * parse.y (lambda): remove unused clause from the rule to stop
23060           warning.
23062 Sat Feb 24 15:41:22 2007  Shugo Maeda  <shugo@ruby-lang.org>
23064         * lib/thread.rb: do not redefine Mutex#synchronize.
23066 Sat Feb 24 15:14:02 2007  Shugo Maeda  <shugo@ruby-lang.org>
23068         * lib/monitor.rb: rewritten using Mutex/ConditionVariable.
23070 Sat Feb 24 13:25:32 2007  Koichi Sasada  <ko1@atdot.net>
23072         * lib/soap/mapping/factory.rb: catch up with spec changes (return
23073           Symbols instead of Strings).
23075         * lib/soap/mapping/mapping.rb: ditto.
23077 Sat Feb 24 10:49:55 2007  Koichi Sasada  <ko1@atdot.net>
23079         * parse.y, node.h, compile.c: change node tree structure.  a purpose
23080           of this change is to unify argument structure of method and block.
23081           this change prohibits duplicate block parameter name.
23082           new argument information:
23083             NODE_ARGS     [m: int, o: NODE_OPT_ARG, ->]
23084             NODE_ARGS_AUX [r: ID, b: ID, ->]
23085             NODE_ARGS_AUX [Pst: id, Plen: int, init: NODE*]
23086           optarg information:
23087             NODE_OPT_ARGS [idx, expr, ->]
23089         * vm_macro.def: ditto.
23091         * gc.c: ditto.
23093         * iseq.c: ditto.
23095         * compile.h: fix debug function name.
23097         * test/ripper/test_scanner_events.rb: |_,_,foo| -> |_1,_2,foo|
23099         * test/ruby/test_lambda.rb: disable test temporarily.
23101 Sat Feb 24 10:46:28 2007  Koichi Sasada  <ko1@atdot.net>
23103         * test/testunit/test_testcase.rb: catch up with current instance
23104           variable spec.
23106 Sat Feb 24 10:32:59 2007  Koichi Sasada  <ko1@atdot.net>
23108         * common.mk: change vm_macro.def rule.
23110 Sat Feb 24 10:38:05 2007  Minero Aoki  <aamine@loveruby.net>
23112         * ext/racc/cparse/cparse.c (cparse_params_mark): remove useless
23113           rb_gc_mark.  Thanks Tomoyuki Chikanaga. [ruby-dev:30405]
23115 Sat Feb 24 07:31:35 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23117         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT.array,
23118           WIN32OLE_VARIANT#value=, refactoring.
23120         * test/win32ole/test_win32ole_variant.rb: add some test for
23121           WIN32OLE_VARIANT.array, WIN32OLE_VARIANT#value=.
23123 Fri Feb 23 18:37:55 2007  Minero Aoki  <aamine@loveruby.net>
23125         * test/ruby/test_yield.rb: new test.
23127         * yarvtest/test_yield.rb: removed (moved to test_yield.rb).
23129 Fri Feb 23 18:27:17 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23131         * thread.c (rb_thread_polling): check interrupts here.
23133         * thread_win32.ci (w32_wait_events): rename from w32_wait_event(), and
23134           now receive multiple event handles.
23136         * win32/win32.c (wait_events, rb_w32_main_context): removed.
23138         * thread_win32.ci (rb_w32_wait_events): new function.
23140         * thread_win32.ci, win32/win32.c (rb_w32_sleep, rb_w32_Sleep): move
23141           from win32/win32.c to thread_win32.ci, and use w32_wait_events().
23143 Fri Feb 23 18:13:22 2007  Minero Aoki  <aamine@loveruby.net>
23145         * test/ruby/test_optimization.rb: new test (merges test_opts.rb).
23147         * yarvtest/test_opts.rb: removed.
23149 Fri Feb 23 16:59:39 2007  Minero Aoki  <aamine@loveruby.net>
23151         * test/ruby/test_assignment.rb: merge yarvtest/test_massign.
23153         * yarvtest/test_massign.rb: removed (merged to
23154           test_assignment.rb).
23156 Fri Feb 23 15:58:20 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23158         * signal.c (sighandler): need to re-install sighandler on some
23159           platforms.
23161 Fri Feb 23 15:05:57 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23163         * win32/win32.c (set_pioinfo_extra): simplified.
23165 Fri Feb 23 14:23:20 2007  Minero Aoki  <aamine@loveruby.net>
23167         * test/ruby/test_literal.rb: new test.
23169 Fri Feb 23 12:40:12 2007  James Edward Gray II  <james@grayproductions.net>
23171         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): Make the
23172           Content-Length parameter optional for responses in
23173           xmlrpc/client.rb; suggested by Daniel Berger
23174           <Daniel.Berger@qwest.com> and approved by the maintainer.
23176         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Add DateTime
23177           support to xmlrpc; approved by the maintainer.
23179 Fri Feb 23 12:24:46 2007  Minero Aoki  <aamine@loveruby.net>
23181         * parse.y (lambda): add ripper event.  This fixes bus error on
23182           "make test-all".
23184         * ext/ripper/extconf.rb: do not stop build.
23186 Fri Feb 23 12:16:05 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23188         * parse.y: remove dyna_check_gen() prototype.
23190 Fri Feb 23 11:41:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23192         * parse.y, compile.c, gc.c, insns.def, intern.h, iseq.c, node.h,
23193           object.c, string.c, variable.c, vm_macro.def: revert private
23194           instance variable feature, which is postponed until next major
23195           release.
23197         * marshal.c: TYPE_SYMBOL2 removed; MARSHAL_MINOR reverted back to
23198           8th version.
23200 Fri Feb 23 10:53:21 2007  Shugo Maeda  <shugo@ruby-lang.org>
23202         * thread_pthread.ci (native_mutex_lock): do not call
23203           pthread_mutex_trylock().
23205 Fri Feb 23 10:31:16 2007  Minero Aoki  <aamine@loveruby.net>
23207         * dln.c: use dlopen on Mac OS X 10.3 or later.
23209 Fri Feb 23 10:03:49 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23211         * string.c (rb_str_ord): need not to check string length;  ord
23212           returns a codepoint for the first character in the string.
23214 Wed Feb 21 22:29:45 2007  Akinori MUSHA  <knu@iDaemons.org>
23216         * numeric.c (fix_equal): A bit more optimization.
23218 Wed Feb 21 17:40:37 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23220         * numeric.c (fix_equal): remove FIX2LONG() to optimize.  suggested
23221           in http://t-a-w.blogspot.com/2007/02/making-ruby-faster.html.
23222           [ruby-talk:240223]
23224         * numeric.c (fix_cmp): ditto.
23226 Wed Feb 21 09:14:04 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23228         * eval_load.c (rb_require_safe): should restore safe level.
23230 Tue Feb 20 21:19:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23232         * ext/win32ole/win32ole.c (installed_code_page_proc,
23233           ole_variant2val): small refactoring.
23235 Tue Feb 20 15:11:42 2007  Koichi Sasada  <ko1@atdot.net>
23237         * eval.c, vm.c, yarvcore.h: move definition of rb_call_super() to
23238           vm.c from eval.c.  change th_call_super() to static function.
23240 Tue Feb 20 15:08:25 2007  Koichi Sasada  <ko1@atdot.net>
23242         * test/io/nonblock/test_flush.rb: YARV doesn't raise any errors if
23243           another thread close IO object which current thread is blocking with.
23245 Tue Feb 20 15:03:29 2007  Koichi Sasada  <ko1@atdot.net>
23247         * thread.c (do_select, rb_thread_wait_fd_rw): raise sys error if
23248           errno is not 0 and EBADF.
23250 Mon Feb 19 22:15:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23252         * configure.in (RUBY_REPLACE_TYPE): cache convertible type info.
23254         * intern.h (rb_detach_process): use rb_pid_t instead of pid_t.
23256         * ruby.h (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM, NUM2GIDT):
23257           defaulted to conversion using long.
23259 Mon Feb 19 17:14:28 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23261         * ext/socket/socket.c (unix_peeraddr): wrong syscall name in error
23262           message for #peeraddr. a patch from Sam Roberts
23263           <sroberts at uniserve.com>.  [ruby-core:10366]
23265 Sun Feb 18 22:56:07 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23267         * ext/etc/etc.c (etc_getgrgid): missed to replace a macro.
23269 Sun Feb 18 19:33:00 2007  Tadayoshi Funaba  <tadf@dotrb.org>
23271         * lib/date/format.rb: updated based on date2 4.0.3.
23273 Sun Feb 18 13:11:51 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23275         * configure.in (pid_t, uid_t, gid_t): check if defined.
23277         * intern.h, process.c, rubyio.h, ext/etc/etc.c, ext/pty/pty.c: use
23278           rb_{pid,uid,gid}_t instead of plain int.  [ruby-dev:30376]
23280         * ext/etc/extconf.rb (PIDT2NUM, NUM2PIDT, UIDT2NUM, NUM2UIDT, GIDT2NUM,
23281           NUM2GIDT): moved to configure.in.
23283 Fri Feb 16 21:34:33 2007  Koichi Sasada  <ko1@atdot.net>
23285         * object.c (rb_obj_ivar_set/get/defined): fix to check :@_v/C id.
23287         * test/testunit/test_testcase.rb: fix to use instance_variable_get()
23288           to access @_result.
23290 Fri Feb 16 20:59:10 2007  Koichi Sasada  <ko1@atdot.net>
23292         * intern.h: add a prototype of rb_sym_to_s().
23294 Fri Feb 16 19:24:22 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23296         * math.c (math_log): update document to mention second optional
23297           argument for logarithm base.
23299 Fri Feb 16 19:19:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23301         * parse.y (mrhs): need to append by arg_append().
23302           [ruby-talk:239385]
23304 Fri Feb 16 11:18:21 2007  Eric Hodel  <drbrain@segment7.net>
23306         * lib/.document: Apply patch for irb, e2mmap and README by Hugh Sasse
23307           <hgs at dmu.ac.uk> from [ruby-core:10135]
23309         * lib/prettyprint.rb: Suppress RDoc for PrettyPrint test suite.
23311 Thu Feb 15 20:48:36 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
23313         * win32/win32.c (set_pioinfo_extra): new function for VC++8 SP1
23314           workaround. [ruby-core:10259]
23316         * win32/win32.c (NtInitialize): call above function.
23318 Thu Feb 15 16:25:54 2007  Akinori MUSHA  <knu@iDaemons.org>
23320         * lib/uri/generic.rb (URI::Generic::userinfo): Considering how
23321           `scheme://user:@...', `scheme://:password@...' and
23322           `scheme://:@...' are parsed, an empty user name or password
23323           should be allowed and represented as it is.
23325 Thu Feb 15 01:52:53 2007  Koichi Sasada  <ko1@atdot.net>
23327         * vm.(c|h), yarvcore.(c|h) (yarvGlobalStateVersion): rename to
23328           ruby_vm_global_state_version.
23330 Thu Feb 15 01:50:26 2007  Koichi Sasada  <ko1@atdot.net>
23332         * test/fileutils/test_fileutils.rb (check_singleton): fix to use
23333           symbol instead of string.
23335         * test/io/nonblock/test_flush.rb: enable tests.
23337         * test/xmlrpc/test_webrick_server.rb: ditto.
23339 Thu Feb 15 01:43:45 2007  Koichi Sasada  <ko1@atdot.net>
23341         * lib/delegate.rb: catch up with class local variable (@_v) spec.
23343         * lib/singleton.rb: ditto.
23345 Wed Feb 14 22:52:43 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23347         * ext/win32ole/win32ole.c (ole_variant2val): VC++6 does not
23348           support VT_I8, VT_UI8.
23350 Wed Feb 14 22:10:21 2007  Koichi Sasada  <ko1@atdot.net>
23352         * configure.in: change stack limit to 2MB from 32MB.
23354         * win32/Makefile.sub: ditto.
23356 Wed Feb 14 21:39:36 2007  Akinori MUSHA  <knu@iDaemons.org>
23358         * ext/digest/lib/digest.rb (Digest::self.const_missing): Drop
23359           autoloads for sha2 classes in favor of handling in
23360           const_missing(), to work around a problem exposed on OS X.
23362 Wed Feb 14 21:19:47 2007  Koichi Sasada  <ko1@atdot.net>
23364         * thread_pthread.ci (native_thread_create): adjust 4KB (page size)
23365           alignment.
23367 Wed Feb 14 21:12:36 2007  Koichi Sasada  <ko1@atdot.net>
23369         * thread_pthread.ci (CHECK_ERR): call rb_bug()
23370           instead of printf() and exit().
23372 Wed Feb 14 16:48:56 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23374         * lib/date/format.rb (Date::Format::Bag::method_missing): need not
23375           to use instance variables corresponding each method; use Hash
23376           instead.
23378 Wed Feb 14 13:12:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23380         * re.c (reg_operand): allow symbols to be operands for regular
23381           expression matches.
23383         * string.c (Init_String): allow Symbol#===.
23385         * lib/date/format.rb (Date::Format::Bag::to_hash): string
23386           added prefixes.
23388 Wed Feb 14 12:58:38 2007  Koichi Sasada  <ko1@atdot.net>
23390         * thread.c (do_select): fix to iterate select().
23391           on cygwin/mswin32, iterate in unblocking region.
23393         * thread.c (rb_thread_select): don't iterate on this function.
23394           (iterate in do_select).
23396 Wed Feb 14 11:39:18 2007  Koichi Sasada  <ko1@atdot.net>
23398         * thread.c (set_unblock_function): fix function interface.
23400 Wed Feb 14 11:12:02 2007  Koichi Sasada  <ko1@atdot.net>
23402         * eval_load.c, yarvcore.h: use rb_vm_t#loaded_features instead of
23403           rb_features (global variable).
23405         * yarvcore.c: mark rb_vm_t#loaded_features.
23407 Wed Feb 14 08:46:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23409         * compile.c (defined_expr): no longer distinguish ordinary local
23410           variables and in-block local variables in defined? value.
23412 Wed Feb 14 03:14:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23414         * lib/uri/generic.rb (URI::Generic::userinfo): should support
23415           empty password.  [ruby-core:10290]
23417         * lib/uri/generic.rb (URI::Generic::set_password): password can be
23418           cleared by nil.  [ruby-core:10290]
23420 Wed Feb 14 03:10:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23422         * parse.y (struct local_vars): no need to warn out-of-scope
23423           variables; remove dnames member from struct.
23425 Wed Feb 14 03:04:10 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23427         * parse.y: RVarmap no longer used as yytype; removed.
23429         * parse.y (dyna_push_gen): no longer need return value.
23431         * parse.y (dyna_pop_gen): no longer need argument.
23433         * parse.y (local_push_gen): initialize nofree.
23435 Wed Feb 14 00:30:07 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23437         * ext/socket/socket.c (init_unixsock): path may contain NUL for
23438           abstract unix sockets.  [ruby-core:10288]
23440 Tue Feb 13 02:21:12 2007  Sam Roberts  <sroberts@uniserve.com>
23442         * io.c (rb_f_syscall): Fix buffer overflow with syscall
23443           arguments.  [ruby-bugs:PR#8541]
23445 Mon Feb 12 13:57:30 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23447         * ext/win32ole/win32ole.c (ole_variant2val): support VT_I8, VT_UI8.
23449 Mon Feb 12 11:48:52 2007  Kouhei Sutou  <kou@cozmixng.org>
23451         * lib/rss/dublincore.rb, lib/rss/maker/dublincore.rb: dc_rightses
23452           -> dc_rights_list. dc_rightses still exists for backward
23453           compatibility. [ruby-core:8350]
23455         * test/rss/test_maker_dc.rb: added tests for dc_rights_list.
23457 Sun Feb 11 22:40:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23459         * ext/win32ole/win32ole.c (ole_ptrtype2val): ole_type, ole_type_detail
23460           should not return "VARIANT,VARIANT".
23462 Sun Feb 11 22:11:05 2007  Kouhei Sutou  <kou@cozmixng.org>
23464         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#initialize):
23465           kept backward compatibility.
23467 Sun Feb 11 22:10:08 2007  Kouhei Sutou  <kou@cozmixng.org>
23469         * lib/rss/parser.rb (RSS::ListenerMixin#start_else_element): used
23470           const_defined? instead of constants.include?.
23472 Sun Feb 11 18:47:14 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23474         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
23475           WIN32OLE_VARIANT#new accepts nil when variant type is VT_ARRAY.
23477         * test/win32ole/test_win32ole_variant.rb: ditto.
23479         * ext/win32ole/win32ole.c: small refactoring.
23481 Sun Feb 11 07:42:25 2007  Akinori MUSHA  <knu@iDaemons.org>
23483         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Properly parse
23484           a quoted-string in a Content-Disposition value.
23486 Sat Feb 10 20:21:29 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23488         * ext/win32ole/win32ole.c: add WIN32OLE#ole_query_interface.
23489           thanks to Mikael Pahmp.
23491         * test/win32ole/test_win32ole.rb: ditto.
23493 Sat Feb 10 17:46:52 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23495         * common.mk: targets which depend on yarvcore.h now depend on
23496           rubysig.h too.
23498         * yarvcore.h (rb_vm_t): use rb_atomic_t instead of int.
23500 Sat Feb 10 00:13:11 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
23502         * ext/tk/lib/tk.rb: fix typo (TkConfigMethod::__confinfo_cmd,
23503           __conv_keyonly_opts).
23505 Fri Feb  9 12:33:40 2007  Koichi Sasada  <ko1@atdot.net>
23507         * thread_win32.ci (w32_show_error_message): renamed to w32_error.
23508           this function do rb_bug().
23510         * thread_win32.ci (w32_set_event, w32_reset_event, w32_close_handle,
23511           w32_resume_thread): added. fix to use these functions instead calling
23512           win32api directly.
23514         * thread_win32.ci (w32_create_thread): create suspend thread
23515           (caller must call w32_resume_thread()).
23517 Fri Feb  9 11:03:40 2007  Koichi Sasada  <ko1@atdot.net>
23519         * test/ruby/test_readpartial.rb: tests are working on mswin32/cygwin.
23521 Fri Feb  9 05:08:17 2007  Koichi Sasada  <ko1@atdot.net>
23523         * thread.c, thread_pthread.ci, thread_win32.ci (thread_start_func_1):
23524           move cleanup function to thread_start_func_2().
23526         * thread.c, thread_pthread.ci, thread_win32.ci:
23527           add more destruct functions.
23528           (native_thread_destroy() and native_mutex_destroy())
23530         * thread_pthread.ci, thread_pthread.h: make native_mutex_* functions
23531           (check error, etc), it's not macro any more.
23533         * thread_win32.ci (thread_start_func_1): store some values before
23534           running thread (to release these after running thread).
23536         * thread_win32.ci (native_thread_create): fix spaces.
23538 Thu Feb  8 22:44:04 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23540         * ext/win32ole/win32ole.c (ole_set_safe_array, ole_variant2val,
23541           ole_val_ary2variant_ary): fix WIN32OLE_VARIANT.new bug when
23542           1st argument is empty array, and when 2nd argument is
23543           VT_ARRAY|VT_BYREF.
23545         * test/win32ole/test_win32ole_variant.rb: ditto.
23547 Thu Feb  8 22:39:09 2007  Koichi Sasada  <ko1@atdot.net>
23549         * yarvtest/yarvtest.rb: check target command names.
23551 Thu Feb  8 22:31:45 2007  Koichi Sasada  <ko1@atdot.net>
23553         * test/ruby/test_clone.rb: fix to current spec
23554           (Module should not be occur many times in ancestors).
23556 Thu Feb  8 22:26:14 2007  Koichi Sasada  <ko1@atdot.net>
23558         * test/ruby/test_string.rb: ("foo" == :foo) and ("foo" === :foo)
23559           should be false.
23561         * ChangeLog: fix last messages.
23563 Thu Feb  8 22:24:06 2007  Koichi Sasada  <ko1@atdot.net>
23565         * test/ruby/test_module.rb: fix to use Symbol instead of String.
23567         * test/ruby/test_module.rb: remove space before argument parentheses.
23569 Thu Feb  8 22:02:14 2007  Koichi Sasada  <ko1@atdot.net>
23571         * test/ruby/marshaltestlib.rb: eval(sym) -> eval(sym.to_s)
23573 Thu Feb  8 21:35:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23575         * test/win32ole/test_propertyputref.rb (setup): fix typo.
23577         * test/win32ole/test_win32ole_event.rb: should not use
23578           InternetExplorer.gohome to test.
23580 Thu Feb  8 21:02:07 2007  Koichi Sasada  <ko1@atdot.net>
23582         * thread.c (GVL_UNLOCK_RANGE): rename to BLOCKING_REGION().
23584         * thread.c (rb_thread_run_parallel): rename to
23585           rb_thread_blocking_region().
23587 Thu Feb  8 15:48:44 2007  Koichi Sasada  <ko1@atdot.net>
23589         * yarvcore.h, thread.c: fix to use pthread on cygwin.
23591         * yarvcore.h, thread.c: move GVL_UNLOCK_BEGIN() and GVL_UNLOCK_END()
23592           from yarvcore.h to thread.c.
23594         * thread.c: change GVL_UNLOCK_RANGE() arguments
23595           (adding ubf as 2nd argument).
23597         * thread.c: fix to use polling in select on cygwin and mswin32.
23599         * thread.c, thread_pthread.ci, thread_win32.ci, yarvcore.h:
23600           rename:
23601           * rb_thread_t#interrupt_function -> unblock_function
23602           * rb_interrupt_function_t -> rb_unblock_function
23603           * some interrupt function name -> ubf_*
23604           * yarv_* -> *
23606 Thu Feb  8 16:08:02 2007  Koichi Sasada  <ko1@atdot.net>
23608         * common.mk: fix to use RUNRUBY instead of BASERUBY if possible.
23610         * common.mk ($(INSNS) rule): remove $(PROGRAM) first.
23612 Thu Feb  8 15:43:05 2007  Koichi Sasada  <ko1@atdot.net>
23614         * process.c: fix to use rb_status_line_set/get/clear().
23616         * eval_intern.h: fix line break.
23618 Thu Feb  8 15:00:14 2007  Koichi Sasada  <ko1@atdot.net>
23620         * blockinlining.c, error.c, eval.c, eval_error.h, eval_intern.h,
23621           eval_jump.h, eval_load.c, eval_safe.h, gc.c, proc.c, signal.c,
23622           thread.c, thread_pthread.ci, thread_win32.ci, vm.c, vm.h,
23623           vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
23624           fix typo (rb_thead_t -> rb_thread_t).
23626         * eval_intern.h: remove unused definitions.
23628         * common.mk: fix around vm_opts.h path
23629           and remove harmful argument passed to insns2vm.rb.
23631 Thu Feb  8 03:11:47 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23633         * lib/cgi.rb (CGI::unescapeHTML): invalid decoding for single
23634           unescaped ampersand.  a patch from Tietew
23635           <tietew+ruby-dev at tietew.net> in [ruby-dev:30292].
23636           fixed: [ruby-dev:30289]
23638 Wed Feb  7 23:25:31 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23640         * eval.c (specific_eval): suppress warning.
23642         * thread_win32.h: undefine _WIN32 on cygwin.  [ruby-dev:30303]
23644 Wed Feb  7 22:41:34 2007  Koichi Sasada  <ko1@atdot.net>
23646         * eval_intern.h: remove UNSUPPORTED() macro.
23648         * thread.c: fix to define Continuation methods
23649           (they only do rb_notimplement()).
23651 Wed Feb  7 22:33:58 2007  Koichi Sasada  <ko1@atdot.net>
23653         * eval_intern.h, yarvcore.h: remove unused macro definition.
23655 Wed Feb  7 22:30:28 2007  Koichi Sasada  <ko1@atdot.net>
23657         * eval.c: fixed to use ANSI function style.
23659 Wed Feb  7 09:35:32 2007  Koichi Sasada  <ko1@atdot.net>
23661         * this commit is a result of refactoring. only renaming functions,
23662           moving definitions place, add/remove prototypes, deleting
23663           unused variables and removing yarv.h.
23664           This commit doesn't change any behavior of ruby/vm.
23666         * yarv.h, common.mk: remove yarv.h (contents are moved to yarvcore.h).
23668         * error.c, eval_intern.h: include yarvcore.h instead yarv.h
23670         * rename some functions:
23671           * debug.[ch]: debug_*() -> ruby_debug_*()
23672           * iseq.c: iseq_*() -> rb_iseq_*(), ruby_iseq_disasm()
23673           * iseq.c: node_name() -> ruby_node_name()
23674           * vm.c: yarv_check_redefinition_opt_method() ->
23675                   rb_vm_check_redefinition_opt_method()
23677         * some refactoring with checking -Wall.
23679         * array.c: remove rb_ary_ptr() (unused) and remove unused
23680           local variables.
23682         * object.c: add a prototype of rb_mod_module_exec().
23684         * eval_intern.h (ruby_cref): set it inline.
23686         * eval_load.c (rb_load), yarvcore.c: yarv_load() -> rb_load_internal().
23688         * parse.y: add a prototype of rb_parse_in_eval() (in eval.c).
23690         * process.c: add a prototype of rb_thread_stop_timer_thread() (in thread.c).
23692         * thread.c: remove raw_gets() function (unused) and fix some format
23693           mismatch (format mismatches have remained yet. this is todo).
23695         * thread.c (rb_thread_wait_fd_rw): fix typo on label name.
23697         * thread_pthread.ci: comment out codes with USE_THREAD_CACHE.
23699         * vm.c (rb_svar, rb_backref_get, rb_backref_get,
23700           rb_lastline_get, rb_lastline_set) : moved from yarvcore.c.
23702         * vm.c (yarv_init_redefined_flag): add a prototype and rename
23703           yarv_opt_method_table to vm_opt_method_table.
23705         * vm.c (rb_thread_eval): moved from yarvcore.c.
23707         * yarvcore.c: remove unused global variables and fix to use nsdr().
23709 Wed Feb  7 03:39:32 2007  Koichi Sasada  <ko1@atdot.net>
23711         * blockinlining.c, compile.c, compile.h, error.c, eval.c,
23712           eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
23713           eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
23714           process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
23715           vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
23716           yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
23717           * yarv_*_t -> rb_*_t
23718           * yarv_*_struct -> rb_*_struct
23719           * yarv_tag -> rb_vm_tag
23720           * YARV_* -> RUBY_VM_*
23722         * proc.c, vm.c: move functions about env object creation
23723           from proc.c to vm.c.
23725         * proc.c, yarvcore.c: fix rb_cVM initialization place.
23727         * inits.c: change Init_ISeq() order (after Init_VM).
23729         * ruby.h, proc.c: change declaration place of rb_cEnv
23730           from proc.c to ruby.c.
23732 Tue Feb  6 22:06:45 2007  NARUSE, Yui  <naruse@ruby-lang.org>
23734         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c}:
23735           imported nkf 2007-01-28.
23736           * Fixed: can't decode MIME encode JIS string.
23737           * Fixed: Fullwidth-halfwidth conversion.
23738           * Support DoCoMo's and Softbank's EMOJI
23739           * Support CP932, CP5022x, eucJP-ms UDC
23740           * Support UTF-32 encoding
23741           * Support beyond BMP
23742           [ruby-dev:29700] [ruby-dev:29922] [ruby-dev:30144]
23744 Tue Feb  6 20:36:19 2007  Kouhei Sutou  <kou@cozmixng.org>
23746         * lib/rss/rss.rb, lib/rss/parser.rb: followed current Ruby
23747           specification. [ruby-dev:30274]
23749 Tue Feb  6 20:29:44 2007  Kouhei Sutou  <kou@cozmixng.org>
23751         * lib/rss/rss.rb, lib/rss/parser.rb: removed needless code for
23752           backward compatibility.
23754 Tue Feb  6 18:43:17 2007  Shugo Maeda  <shugo@ruby-lang.org>
23756         * lib/net/ftp.rb: moved fixes for EPIPE to the correct
23757           place. [ruby-core:10204]
23759 Tue Feb  6 16:38:08 2007  Koichi Sasada  <ko1@atdot.net>
23761         * vm_opts.h: set properties:
23762           svn:keywords:  Author Date Id Revision
23763           svn:eol-style: native
23765 Tue Feb  6 15:55:46 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23767         * variable.c (ivar_i): need to support class local instance
23768           variables.
23770 Tue Feb  6 15:44:11 2007  Koichi Sasada  <ko1@atdot.net>
23772         * compile.c (iseq_compile_each): fix setting is_local flag.
23774         * yarvtest/test_class.rb: add a test for class local instance variable.
23776 Tue Feb  6 14:15:34 2007  Koichi Sasada  <ko1@atdot.net>
23778         * compile.c, insns.def: remove (get|set)instancevariable2 and add a
23779           operand is_local to (get|set)instancevariable.
23781         * yarvtest/test_class.rb: add a test for class local instance variable.
23783         * parse.y (rb_decompose_ivar2): remove unused variable oid.
23785         * tool/insns2vm.rb: remove needless require.
23787 Tue Feb  6 11:18:41 2007  Shugo Maeda  <shugo@ruby-lang.org>
23789         * lib/net/ftp.rb: check the control connection on EPIPE.
23790           Thanks, Simon Williams. [ruby-core:9547]
23792 Tue Feb  6 11:03:27 2007  Koichi Sasada  <ko1@atdot.net>
23794         * complement last commit.
23796         * common.mk (*.inc): use VPATH.
23798         * vm_opts.h: renamed from vm_opts.h.base.
23800 Tue Feb  6 10:02:41 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23802         * tool/insns2vm.rb: use vm_opts.h in VPATH.
23804 Tue Feb  6 03:47:58 2007  Koichi Sasada  <ko1@atdot.net>
23806         * proc.c: support Binding#eval.
23808         * yarvtest/test_eval.rb: add a test for above change.
23810 Tue Feb  6 03:13:33 2007  Koichi Sasada  <ko1@atdot.net>
23812         * proc.c: refactoring (remove K&R style, move Binding stuffs from
23813           Init_Proc() to Init_Binding()).
23815 Tue Feb  6 01:07:14 2007  Koichi Sasada  <ko1@atdot.net>
23817         * intern.h: prepare rb_last_status_get() and rb_last_status_set().
23818           Use these functions instead of rb_last_status ([ruby-dev:30264]).
23820         * process.c: define above functions.
23822         * ext/pty/pty.c: use above functions.
23824         * io.c (pipe_finalize): ditto.
23826         * process.c: ditto.
23828 Mon Feb  5 21:26:56 2007  Koichi Sasada  <ko1@atdot.net>
23830         * ruby.h: add a prototype of rb_id2str().
23832 Mon Feb  5 21:06:50 2007  Koichi Sasada  <ko1@atdot.net>
23834         * eval_thread.c, common.mk: remove eval_thread.c.
23836         * yarvcore.c: rename cYarvThread to rb_cThread.
23838         * gc.c: remove YARV_* prefix.
23840         * gc.h: add an include guard and prototype of rb_gc_set_stack_end().
23842         * inits.c: fix to ANSI prototype style and reorder Init_*().
23844         * io.c (pipe_finalize): TODO: comment out last_status.
23846         * process.c, yarvcore.h: fix to use yarv_vm_t#last_status instead of
23847           rb_last_status and make last_status_get() to access $?.
23849         * yarvcore.c (vm_mark): mark yarv_vm_t#last_status.
23851         * ruby.h: add declarations of rb_cISeq and rb_cVM.
23853         * thread.c: move eval_thread.c codes to thread.c and remove yarv_*
23854           function prefix.
23856         * thread.c (thread_start_func_2): use yarv_thread_t#first_func if
23857           it is not null.
23859         * vm.c: fix copyright year.
23861         * yarvcore.c (Init_vm): rename to Init_VM().
23863 Mon Feb  5 04:09:48 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23865         * eval.c (rb_frame_callee): check if prev_cfp can be accessible.
23866           a patch from Yoshinori Sano <yoshinori.sano at gmail.com> in
23867           [ruby-dev:30252].  solves [ruby-dev:30200] and [ruby-core:9856].
23869 Sun Feb  4 20:34:41 2007  Kouhei Sutou  <kou@cozmixng.org>
23871         * test/rss/rss-assertions.rb: removed needless code for backward
23872           compatibility.
23874 Sun Feb  4 02:22:59 2007  Akinori MUSHA  <knu@iDaemons.org>
23876         * lib/cgi.rb (CGI::QueryExtension::read_multipart): Remove a debug
23877           print.
23879 Sat Feb  3 23:51:58 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23881         * parse.y (rb_compose_ivar2): function to create a new ivar2
23882           symbol from a symbol and a class.  back-ported from matzruby.
23884         * parse.y (rb_decompose_ivar2): reverse function of
23885           rb_compose_ivar2().
23887         * marshal.c (w_symbol): support class local instance variables.
23889         * marshal.c (r_object0): ditto.
23891         * compile.c (defined_expr): ditto.
23893         * compile.c (iseq_compile_each): ditto.
23895         * insns.def: add two new instructions: getinstancevariable2 and
23896           setinstancevariable2.
23898 Sat Feb  3 23:21:13 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23900         * insns.def (setclassvariable): remove unnecessary operand.
23902         * compile.c (iseq_compile_each): ditto.
23904         * common.mk (insns_info.inc): add dependency for insns_info.inc.
23906 Sat Feb  3 14:32:58 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
23908         * ext/win32ole/win32ole.c (ole_val2olevariantdata, ole_val2variant):
23909           fix the bug of WIN32OLE_VARIANT.new when variant type is
23910           VT_ARRAY.
23912         * ext/win32ole/sample/excel1.rb: rewrite using WIN32OLE_VARIANT.
23914         * test/win32ole/test_win32ole.rb: add some test.
23916         * test/win32ole/test_win32ole_variant.rb: ditto.
23918 Sat Feb  3 03:35:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23920         * Makefile.in, */Makefile.sub, common.mk (vmasm): generalized.
23922         * common.mk (runruby, benchmark, benchmark-each, tbench): use
23923           PROGRAM for the file to be built.
23925         * proc.c (yarv_proc_alloc): needs return.
23927         * call_cfunc.ci, compile.c, compile.h, debug.h, eval.c,
23928           eval_error.h, eval_jump.h, eval_load.c, eval_thread.c, gc.c,
23929           insnhelper.h, insns.def, iseq.c, main.c, numeric.c, parse.y,
23930           range.c, ruby.h, signal.c, thread.c, thread_win32.ci, vm.c,
23931           vm.h, vm_dump.c, vm_evalbody.ci, yarvcore.c, yarvcore.h:
23932           fixed indents and non-C90 comments.
23934         * regenc.h: revert to before YARV.
23936         * lib/mkmf.rb (create_makefile): make object files depend on
23937           extconf.h even if depend file exists.
23939 Fri Feb  2 23:39:42 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23941         * common.mk (bin): add more dependency.  a patch from Tadashi
23942           Saito <shiba at mail2.accsnet.ne.jp>.  [ruby-dev:30245]
23944 Fri Feb  2 18:44:31 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23946         * insns.def (setclassvariable): remove warn argument.
23948 Fri Feb  2 18:36:40 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23950         * common.mk (compile.$(OBJEXT)): add config.h to vm.c and
23951           compile.c.
23953 Fri Feb  2 18:27:54 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23955         * eval.c: remove duplicated global variables rb_cProc and
23956           rb_cBinding.  [ruby-dev:30242]
23958 Fri Feb  2 00:13:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23960         * ruby.h (SYMBOL_P): make Symbol immediate again for performance.
23962         * string.c: redesign symbol methods.
23964 Thu Feb  1 23:25:21 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
23966         * parse.y (rb_id2str): store Strings for operator symbols.
23967           [ruby-dev:30235]
23969 Thu Feb  1 21:04:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23971         * parse.y (assignable_gen): no need to generate NODE_CVDECL.
23973         * compile.c (iseq_compile_each): no NODE_CVDECL.
23975 Thu Feb  1 20:53:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23977         * vm.c (eval_get_cvar_base): destination for class variable access
23978           is now strictly innermost surrounding class or module.  warned
23979           if accessed from toplevel.
23981         * variable.c (rb_cvar_get): new class variable look-up scheme:
23982           1) look up in the class.  2) if the class is singleton attached
23983           to a class (i.e. metaclass) then start look up in the attached
23984           class and its ancestors. 3) otherwise, look-up in ancestors of
23985           the class.
23987         * eval.c (cvar_cbase): destination for class variable access is
23988           the class/module that holds the method, or cbase outside of
23989           methods.
23991 Thu Feb  1 20:31:41 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23993         * variable.c (rb_cvar_set): remove warn argument.
23995 Wed Jan 31 14:52:09 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
23997         * test/ruby/test_iterator.rb (TestIterator::test_block_given_within_iterator):
23998           add new test.  [ruby-core:10125]
24000 Tue Jan 30 17:01:21 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24002         * string.c (rb_str_sub_bang): calling rb_str_modify() should be just
24003           before actually modifying the string.
24004           fixed: [ruby-dev:30211] (originally reported by zunda)
24006 Tue Jan 30 13:24:06 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24008         * numeric.c (int_pred): add Integer#pred corresponding
24009           Integer#succ.  [RCR#5]
24011 Tue Jan 30 12:05:35 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24013         * mkconfig.rb: autoconf 2.61 support.  [ruby-core:10016]
24015 Mon Jan 29 23:52:32 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24017         * tool/compile.rb: replace YARVCore by VM class.
24019 Mon Jan 29 17:52:44 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24021         * lib/date/format.rb (Date::Format::Bag::method_missing): add
24022           prefix to avoid making t class-local instance variable.
24024 Mon Jan 29 21:32:37 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24026         * ext/win32ole/win32ole.c: add WIN32OLE.locale=, WIN32OLE.locale,
24027           WIN32OLE_VARIANT#vartype.
24029         * test/win32ole/test_win32ole.rb: add test for WIN32OLE.locale=,
24030           WIN32OLE.locale.
24032         * test/win32ole/test_win32ole_variant.rb: add test for
24033           WIN32OLE_VARIANT#vartype.
24035 Mon Jan 29 14:14:35 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24037         * tool/parse.rb: replace YARVCore by VM class.
24038           http://d.hatena.ne.jp/ysano2005/20070128
24040 Sun Jan 28 08:41:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24042         * ext/win32ole/win32ole.c: refactoring.
24044 Sat Jan 27 18:36:33 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24046         * ext/win32ole/win32ole.c (ole_val2olevariantdata): bug fix.
24047           WIN32OLE_VARIANT.new check that 1st argument should T_ARRAY
24048           when variant type is VT_ARRAY.
24050         * test/win32ole/test_win32ole_variant.rb: add some test.
24052 Fri Jan 26 23:55:56 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24054         * ext/win32ole/win32ole.c: bug fix of WIN32OLE_VARIANT when variant
24055           type is VT_BYREF|VT_VARIANT.
24057         * test/win32ole/test_win32ole_variant_with_ie.rb: ditto.
24059 Fri Jan 26 12:03:39 2007  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24061         * ext/tk/lib/tk.rb (TkConfigMethod#__confinfo_cmd,
24062           __conv_keyonly_optkeys): make them private [ruby-dev:30074].
24064         * ext/tk/lib/tk/txtwin_abst.rb: fix typo [ruby-dev:30073].
24066         * ext/tk/lib/tk/canvas.rb (TkCanvas#scan_dragto): lack of an argument.
24068         * ext/tk/lib/tk/canvas.rb: clarify the including module name
24069           [ruby-dev:30080].
24071         * ext/tk/lib/tk/scrollable.rb: change primary name of modules
24072           [ruby-dev:30080].
24074 Fri Jan 26 07:48:57 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24076         * enumerator.c (enumerator_init_copy): need to copy internal
24077           structure on clone and dup.  [ruby-dev:30192]
24079 Wed Jan 24 20:34:51 2007  Kouhei Sutou  <kou@cozmixng.org>
24081         * test/ruby/test_iterator.rb: removed a needless workaround.
24083 Wed Jan 24 18:05:39 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24085         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): fix
24086           regexp font-lock bug.  [ruby-talk:235758]
24088 Tue Jan 23 18:26:12 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24090         * lib/cgi.rb (CGI::QueryExtension::read_multipart): use == instead
24091           of ===.  [ruby-dev:30176]
24093 Tue Jan 23 15:39:25 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24095         * Makefile.in, common.mk, configure.in, */{Makefile.sub, configure.bat,
24096           setup.mak}: add --with-baseruby configure option.
24098 Mon Jan 22 14:57:25 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24100         * ext/socket/socket.c: fix errors in socket sample code.
24101           [ruby-core:09992]
24103 Sat Jan 20 21:05:18 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24105         * ext/win32ole/win32ole.c (fole_s_set_code_page): WIN32OLE.codepage=
24106           accepts installed codepage.
24108         * test/win32ole/test_win32ole.rb (test_s_codepage_changed): ditto.
24110 Sat Jan 20 11:18:49 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24112         * ext/win32ole/win32ole.c (ole_invoke, ole_invoke2, ole_propertyput):
24113           modify WIN32OLERuntimeError message.
24115         * test/win32ole/test_win32ole.rb: ditto.
24117 Sat Jan 20 06:45:21 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24119         * eval_proc.c (method_receiver): add new method to get the bound
24120           receiver of the method object.  [ruby-talk:234949]
24122         * eval_proc.c (method_name): new method to get the name of a
24123           method.
24125         * eval_proc.c (method_owner): a new method to get the class or
24126           module that defines the method.
24128 Fri Jan 19 17:12:23 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24130         * ext/win32ole/win32ole.c (Init_win32ole): add WIN32OLE_VARIANT::Empty,
24131           WIN32OLE_VARIANT::Null, WIN32OLE_VARIANT::Nothing.
24133         * test/win32ole/test_win32ole_variant.rb: ditto.
24135         * test/win32ole/test_nil2vtempty.rb(test_openSchema): ditto.
24137 Fri Jan 19 06:53:38 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24139         * ext/win32ole/win32ole.c (olevariant_free): fix memory leak.
24141         * ext/win32ole/win32ole.c (ole_val2olevariantdata):
24142           WIN32OLE_VARIANT.new accepts nil as first argument for some VARIANT
24143           TYPE.
24145         * test/win32ole/test_win32ole_variant.rb: ditto.
24147 Wed Jan 17 17:31:28 2007  Koichi Sasada  <ko1@atdot.net>
24149         * some refactoring around yarvcore and proc.
24151         * eval_proc.c: renamed to proc.c.
24153         * common.mk: ditto.
24155         * yarvcore.h, yarvcore.c: rename or remove some global variables
24156           removed: mYarvCore, mYarvInsns
24157           renamed: cYarvISeq -> rb_cISeq,
24158                    cYarvProc -> rb_cProc, cYarvBinding -> rb_cBinding
24159           ::YarvCore module is removed and ::YarvCore::VM class becomes ::VM.
24160           And change/remove some functions which added with YARV.
24162         * compile.c: ditto.
24164         * eval.c: ditto.
24166         * iseq.c: ditto.
24168         * vm.c: ditto.
24170         * inits.c: rename Init_yarvcore to Init_vm.
24172         * yarvcore.c, proc.c: move some functions and initialization
24173           from yarvcore.c to proc.c.
24175         * intern.h, proc.c: add global function rb_binding_new(void).
24177 Tue Jan 16 17:49:29 2007  Koichi Sasada  <ko1@atdot.net>
24179         * vm.c (eval_search_super_klass): rename to search_super_klass() and
24180           use it by th_call_super().
24182         * insns.def: ditto.
24184 Tue Jan 16 17:48:11 2007  Koichi Sasada  <ko1@atdot.net>
24186         * common.mk: fix ruby script path.
24188 Tue Jan 16 17:39:44 2007  Koichi Sasada  <ko1@atdot.net>
24190         * vm.c (invoke_block): fix to specify self.
24192 Tue Jan 16 12:12:27 2007  Koichi Sasada  <ko1@atdot.net>
24194         * env.h: removed
24196 Tue Jan 16 12:00:06 2007  Koichi Sasada  <ko1@atdot.net>
24198         * eval_proc.c (rb_proc_new): added.
24200         * string.c (sym_to_proc): supported.
24202         * vm.c (invoke_block, th_invoke_yield, th_invoke_proc): fix to support
24203           rb_proc_new.
24205         * yarvcore.c: add a test code.
24207 Sat Jan 13 23:24:59 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24209         * ext/win32ole/win32ole.c (ole_free, ole_type_free,
24210           olemethod_free, olevariable_free, oleparam_free,
24211           ole_event_free): fix memory leak.  [ruby-core:09846]
24213 Wed Jan 10 00:10:23 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24215         * array.c (rb_ary_replace): use ptr and len of orig instead of
24216           shared.  fixed: [ruby-dev:30116]
24218 Tue Jan  9 17:48:38 2007  NAKAMURA Usaku  <usa@ruby-lang.org>
24220         * file.c (rb_find_file): should not call fpath_check() with NULL.
24221           fixed: [ruby-core:09867]
24223 Tue Jan  9 12:29:20 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24225         * ext/etc/etc.c (etc_getpwuid, etc_getgrgid): fix to correctly
24226           convert uid/gid from VALUE.
24228         * ext/etc/etc.c (etc_getpwuid): ditto.
24230 Tue Jan  9 03:54:38 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24232         * string.c (rb_str_upto): String#upto from empty string makes
24233           infinite loop.  [ruby-core:09864]
24235         * string.c (rb_str_upto): use RSTRING_LEN().
24237 Sun Jan  7 18:36:05 2007  Koichi Sasada  <ko1@atdot.net>
24239         * thread.c (rb_thread_stop_timer_thread(), rb_thread_reset_timer_thread(),
24240           rb_thread_start_timer_thread()): added.
24242         * thread_pthread.ci: add a native_thread_join() and move
24243           rb_thread_reset_timer_thread() definition to thread.c.
24245         * thread_win32.ci: ditto
24247         * process.c: fix before_exec(), after_exec() to stop timer thread
24248           (and restart timer thread if exec failed).  and fix to reset
24249           timer thread information when forked child process starts
24250           (to fix [ruby-core:09822]).
24252 Sun Jan  7 18:28:17 2007  Koichi Sasada  <ko1@atdot.net>
24254         * common.mk: add a "compare" rule and fix MATZRUBY variable
24256 Sun Jan  7 17:47:16 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24258         * test/win32ole/test_win32ole.rb: add test for WIN32OLE#[],
24259           WIN32OLE#[]=.
24261         * ext/win32ole/win32ole.c: update comment for rdoc of
24262           WIN32OLE#[] and WIN32OLE#[]=.
24264 Sun Jan  7 12:13:26 2007  Eric Hodel  <drbrain@segment7.net>
24266         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_class_comment):
24267           Look for class and module comments above rb_define_class and
24268           rb_define_module.  Patch by Daniel Berger <djberg96 at gmail.com>
24270 Sun Jan  7 10:32:12 2007  Eric Hodel  <drbrain@segment7.net>
24272         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
24273           Properly handle escaping of : in comments.
24274         * test/rdoc/parsers/test_parse_c.rb:
24275           Test RDoc::C_Parser#do_classes and Rdoc::C_Parser#find_class_comment.
24277 Sun Jan  7 09:31:18 2007  Tadayoshi Funaba  <tadf@dotrb.org>
24279         * lib/date/format.rb: updated based on date2 4.0.1.
24281 Sat Jan  6 18:46:34 2007  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24283         * io.c (rb_io_getline_fast, rb_io_getline): increase lineno
24284           when met the delimiter or EOF.  fixed: [ruby-dev:30081]
24286         * io.c (prepare_getline_args, rb_io_getline_1): split
24287           preparation of arguments and reading.  [ruby-dev:30085]
24289 Sat Jan  6 13:48:36 2007  Koichi Sasada  <ko1@atdot.net>
24291         * insns.def (send): fix to optimize send() with Symbol.
24293         * yarvtest/test_method.rb: add another test.
24295 Sat Jan  6 13:43:55 2007  Koichi Sasada  <ko1@atdot.net>
24297         * common.mk: add PHONY dependency to some rules
24299 Sat Jan  6 11:50:33 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24301         * io.c (argf_read): fix wrong replacement.  [ruby-dev:30070]
24303 Sat Jan  6 09:10:52 2007  Koichi Sasada  <ko1@atdot.net>
24305         * insns.def: support direct method dispatch with "send" or "funcall".
24306           This means that "obj.send :m" skips "BasicObject#send" invocation
24307           (method frame creation, etc) and "obj.m" invokes directly.
24308           If you make backtrace, there are no entries of "send" method.
24310         * compile.c (iseq_specialized_instruction): fix to support above
24312         * eval.c: ditto (remove "static" from rb_f_send and rb_f_funcall
24314         * yarvcore.c: ditto (add a external IDs for compiler)
24316         * yarvcore.h: ditto (add a VM_CALL_SEND_BIT macro)
24318         * yarvtest/test_method.rb: add tests for above changes
24320         * eval.c: remove unused "Kernel#send" declaration
24322 Sat Jan  6 08:29:17 2007  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24324         * ext/win32ole/win32ole.c (Init_win32ole): add
24325           WIN32OLE::VARIANT::VT_EMPTY, WIN32OLE::VARIANT::VT_NULL
24327         * test/win32ole/test_win32ole_variant_m.rb (test_variant): ditto.
24329 Sat Jan  6 03:49:22 2007  Koichi Sasada  <ko1@atdot.net>
24331         * benchmark/run.rb: change option format
24333         * common.mk: ditto
24335 Fri Jan  5 22:21:08 2007  Koichi Sasada  <ko1@atdot.net>
24337         * benchmark/bm_app_pentomino.rb: use Array#dup instead of
24338           Array#clone
24340         * benchmark/bmx_temp.rb: removed
24342         * benchmark/run.rb: use run.rb instead of run_rite.rb
24344         * common.mk: ditto
24346         * benchmark/run_rite.rb: removed
24348         * common.mk: use $(srcdir)/test.rb to run a test program
24349           with "make run"
24351         * benchmark/bmx_temp.rb: removed and
24352           set svn:ignore (bmx_*.rb) to benchmark/
24354         * test.rb: set svn:ignore
24356 Fri Jan  5 21:03:08 2007  Koichi Sasada  <ko1@atdot.net>
24358         * yarvtest/yarvtest.rb: fix to compare results
24360 Fri Jan  5 20:52:56 2007  Koichi Sasada  <ko1@atdot.net>
24362         * compile.c, compile.h: add ADD_CALL_RECEIVER() macro.
24364         * insns.def (send): use GET_SELF() direct if FCALL.
24366         * eval.c (rb_f_send): check method dispatch type to permit
24367           invoking private method when dispatch type is FCALL/VCALL
24369         * insns.def (opt_ltlt): remove useless statement.
24371         * vm.h: remove unused macros.
24373 Fri Jan  5 20:50:31 2007  Koichi Sasada  <ko1@atdot.net>
24375         * benchmark/run_rite.rb: fix to use readlines instead of
24376           read(...).lines (because 1.8 doesn't have String#lines).
24378 Fri Jan  5 20:28:19 2007  Koichi Sasada  <ko1@atdot.net>
24380         * thread_win32.ci (rb_thread_reset_timer_thread):
24381           added ([ruby-dev:30086]).
24383 Fri Jan  5 20:20:36 2007  Koichi Sasada  <ko1@atdot.net>
24385         * common.mk: add .SUFFIXES rule
24387 Fri Jan  5 15:58:15 2007  Koichi Sasada  <ko1@atdot.net>
24389         * eval_method.h (rb_alias): fix to check search result
24391 Fri Jan  5 13:59:53 2007  Koichi Sasada  <ko1@atdot.net>
24393         * eval_method.h (rb_add_method): fix to check old_node
24395 Fri Jan  5 12:03:07 2007  Koichi Sasada  <ko1@atdot.net>
24397         * compile.c (iseq_compile_each, set_block_local_tbl):
24398           support NODE_LAMBDA (partly).
24400         * sample/test.rb: restore test of NODE_LAMBDA
24402         * test/ruby/test_lambda.rb: ditto
24404 Fri Jan  5 12:31:23 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24406         * thread_pthread.ci (native_sleep): fix tv_nsec overflow.
24408 Thu Jan  4 20:01:29 2007  Koichi Sasada  <ko1@atdot.net>
24410         * common.mk: rename yarv-test-[all/each] to compare-test[/-each].
24411           purpose of "compare-test" rule is to compare ruby (trunk) and
24412           matzruby (branches/matzruby) binary in miniruby level.  MATZRUBY
24413           parameter means an path to miniruby of matzruby binary.  to do this
24414           comparison test, you should build matzruby branch.
24416         * yarvtest/yarvtest.rb: fix to use command line option as
24417           command names to be compared.
24419         * yarvtest/runner.rb: remove a debug output.
24421 Thu Jan  4 19:12:27 2007  Koichi Sasada  <ko1@atdot.net>
24423         * common.mk: fix to use test.rb script in build directory.
24424           ($(srcdir)/test.rb -> test.rb)
24426 Thu Jan  4 17:28:05 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24428         * lib/webrick/utils.rb (WEBrick::Utils::TimeoutHandler#initialize):
24429           Arrays could not be modified in its each block. [ruby-dev:30063]
24431 Thu Jan  4 16:57:14 2007  Koichi Sasada  <ko1@atdot.net>
24433         * yarv_version.h: removed.
24435         * common.mk: remove yarv_version.h from rules
24437         * yarvcore.h (Init_yarvcore): remove useless constants
24439 Thu Jan  4 17:00:06 2007  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24441         * ext/openssl/ossl_asn1.c (Init_ossl_asn1):
24442           OpenSSL::ASN1::ASN1Data#value,#tag,#tag_class and
24443           OpenSSL::ASN1::BitString#unused_bits should be public.
24445 Thu Jan  4 13:45:10 2007  Koichi Sasada  <ko1@atdot.net>
24447         * thread_pthread.ci: fix last changes around PTHREAD_STACK_MIN.
24449 Thu Jan  4 13:42:47 2007  Koichi Sasada  <ko1@atdot.net>
24451         * common.mk: restore changes.
24453 Thu Jan  4 10:33:54 2007  Koichi Sasada  <ko1@atdot.net>
24455         * thread_pthread.ci: fix to skip using PTHREAD_STACK_MIN.
24456           [ruby-dev:30063]
24458 Thu Jan  4 10:30:11 2007  Koichi Sasada  <ko1@atdot.net>
24460         * benchmark/run_rite.rb (bm): fix to use lines.
24462 Wed Jan  3 18:49:15 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24464         * io.c (rb_io_getline): lineno update condition was wrong.
24465           [ruby-dev:30065]
24467         * io.c (rb_io_getline_fast): ditto.
24469 Wed Jan  3 11:36:51 2007  Yukihiro Matsumoto  <matz@ruby-lang.org>
24471         * io.c (ruby_dup): start GC on ENOMEM as well.
24473 Tue Jan  2 10:29:54 2007  Eric Hodel  <drbrain@segment7.net>
24475         * ext/zlib/zlib.c: fix to compile on YARV
24476           ruby_errinfo -> rb_errinfo()
24478 Mon Jan  1 08:07:06 2007  Koichi Sasada  <ko1@atdot.net>
24480         * ext/tk/tcltklib.c: fix to compile on YARV
24481           ruby_errinfo -> rb_errinfo(),
24482           ruby_safe_level -> rb_safe_level().
24484 Mon Jan  1 07:57:17 2007  Koichi Sasada  <ko1@atdot.net>
24486         * test/drb/test_drbssl.rb: fix to skip drb tests.
24488 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
24490         * lib/rdoc/parsers/c_parser.rb: Make Rdoc accessible.  Update constant
24491           value information.
24493 Mon Jan  1 06:13:11 2007  Eric Hodel  <drbrain@segment7.net>
24495         * ext/bigdecimal/bigdecimal.c: Update constant comments to provide
24496           values for RDoc.
24498 Mon Jan  1 06:05:55 2007  Eric Hodel  <drbrain@segment7.net>
24500         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants):
24501           Allow RDoc comment to give friendly value for rb_define_const.  Patch
24502           by Daniel Berger <djberg96 at gmail.com>, [ruby-patches-7499].
24503         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#handle_constants): Fix
24504           whitespace handling in constant comments.
24506 Mon Jan  1 00:00:00 2007  Koichi Sasada  <ko1@atdot.net>
24508         * Merge YARV
24510 Sun Dec 31 16:22:48 2006  Eric Hodel  <drbrain@segment7.net>
24512         * array.c: Fix Array#reject.
24514 Sun Dec 31 00:46:25 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24516         * lib/date2.rb: removed.
24518 Sun Dec 31 00:15:13 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24520         * lib/date.rb, lib/date/format.rb: updated based on date2 4.0.
24522 Sat Dec 30 04:38:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24524         * enum.c (enum_each_with_index): reuse array for yield parameters.
24526         * enum.c (enum_min, enum_max): ditto.
24528 Sat Dec 30 04:25:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24530         * enum.c (enum_inject): reuse array for yield parameters.
24532 Sat Dec 30 02:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24534         * ext/stringio/stringio.c (strio_gets): accepts limit argument.
24536         * ext/stringio/stringio.c (strio_readline, strio_each,
24537           strio_readlines): ditto.
24539 Sat Dec 30 02:22:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24541         * ext/stringio/stringio.c (strio_getline): add limit capability.
24543         * io.c (rb_io_gets_m): accepts limit argument.  [ruby-talk:231563]
24545         * io.c (rb_io_readline, rb_io_readlines, rb_io_each_line, argf_getline):
24546           ditto.
24548         * io.c (appendline): add limit capability.
24550         * io.c (rb_io_getline_fast, rb_io_getline): ditto.
24552         * io.c (rb_io_getline): small refactoring for DRY.
24554         * io.c (rb_io_s_foreach, rb_io_s_readlines): small refactoring.
24556 Thu Dec 28 15:27:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24558         * lib/cgi.rb (CGI::Cookie::initialize): use Array() again.
24559           [ruby-core:09781]
24561 Wed Dec 27 20:52:32 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24563         * ext/win32ole/win32ole.c: remove WIN32OLE::PROPERTY class.
24565         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
24567 Wed Dec 27 10:04:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24569         * object.c (rb_Array): returns 1-element array if the argument
24570           does not have to_ary nor to_a.
24572 Tue Dec 26 21:02:14 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
24574         * test/win32ole/test_folderitem2_invokeverb.rb: The argument
24575           of Shell.NameSpace should not be file path.
24577 Tue Dec 26 06:13:08 2006  Minero Aoki  <aamine@loveruby.net>
24579         * ext/bigdecimal/bigdecimal.c: remove useless method
24580           BigDecimal#!=. [ruby-dev:30050]
24582 Thu Dec 21 15:37:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24584         * string.c (rb_str_slice_bang): rdoc description bug fixed.
24585           [ruby-core:09754]
24587 Wed Dec 20 12:54:31 2006  Koichi Sasada  <ko1@atdot.net>
24589         * Convert CVS repository to Subversion repository.
24591 Mon Dec 18 08:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24593         * lib/cgi.rb (CGI::Cookie::initialize): Array(string) no longer
24594           works.  [ruby-core:09738]
24596 Fri Dec 15 00:19:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24598         * win32/Makefile.sub (COMPILE_RULES): latter rule has higher priority.
24600         * lib/mkmf.rb (create_makefile): remove static library before update,
24601           to get rid of sludge of Borland tlib.exe.
24603 Thu Dec 14 18:29:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24605         * ext/readline/readline.c: NetBSD editline does not have
24606           rl_username_completion_function() and rl_completion_matches().
24607           a patch from Takahiro Kambe <taca at back-street.net>.
24608           [ruby-dev:30008]
24610 Thu Dec 14 18:20:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24612         * lib/irb/locale.rb (IRB::Locale::puts): typo fixed.  a patch from
24613           NAKAMURA Usaku <usa@ruby-lang.org>.  [ruby-dev:30012]
24615 Tue Dec 12 23:33:53 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24617         * lib/optparse.rb (Switch#parse_arg, Switch#conv_arg): splat failures.
24619 Mon Dec 11 11:51:10 2006  Akinori MUSHA  <knu@iDaemons.org>
24621         * ext/digest/sha2/lib/sha2.rb: Moved one level up from under
24622           the superfluous subdirectory digest/.
24624 Mon Dec 11 11:46:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24626         * variable.c (rb_define_const): typo fixed.
24628 Mon Dec 11 09:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24630         * string.c (rb_str_aset): index double decode problem.
24631           [ruby-core:09695]
24633 Sat Dec  9 21:39:24 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24635         * eval.c (ruby_cleanup): keep the exception till after END blocks.
24636           [ruby-core:09675]
24638 Sat Dec  9 11:22:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24640         * lib/irb/locale.rb (IRB::Locale::search_file): use File.exist?
24641           instead of File.exists?.  a patch from Yutaka Kanemoto
24642           <kinpoco at gmail.com> in [ruby-dev:30000].
24644 Fri Dec  8 18:11:18 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24646         * lib/optparse.rb: cannot put :nodoc: before method definition.
24647           put after it.
24649 Fri Dec  8 17:00:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24651         * bin/rdoc: use File.exist? instead of File.exists?.
24653 Thu Dec  7 23:50:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24655         * object.c (Init_Object): new method Dir.exist?(path).
24656           [ruby-core:09663]
24658         * file.c (Init_File): remove File.exists?; use File.exist?
24659           instead.
24661         * file.c: rename functions to test_* to rb_file_*_p.
24663 Thu Dec  7 09:29:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24665         * lib/weakref.rb (WeakRef::__setobj__): should support
24666           marshaling.  [ruby-talk:228508]
24668 Wed Dec  6 23:58:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24670         * Makefile.in, common.mk (NULLCMD): moved for platforms that empty
24671           command does not run.  fixed: [ruby-dev:29994]
24673         * win32/win32.c (init_stdhandle): redirect unopened IOs to NUL.
24674           [ruby-core:09572]
24676 Tue Dec  5 19:01:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
24678         * configure.in (SITE_DIR): fixed to empty RUBY_SITE_LIB in config.h on
24679           NetBSD.  fixed: [ruby-dev:29358]
24681 Tue Dec  5 18:38:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24683         * lib/matrix.rb (Matrix::rank): use quo method to avoid integer
24684           division problem.  [ruby-core:09644]
24686         * lib/matrix.rb (Matrix::rank_e): ditto.
24688 Tue Dec  5 00:59:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24690         * misc/ruby-mode.el (ruby-parse-partial): need to parse "/=" as
24691           self assignment operator, not regex.  [ruby-talk:227324]
24693 Tue Dec  5 00:19:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24695         * intern.h, object.c, variable.c (rb_mod_constants): added an optional
24696           flag to search ancestors, which is defaulted to true, as well as
24697           const_defined? and const_get.  [ruby-dev:29989]
24699 Mon Dec  4 23:49:28 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24701         * instruby.rb (install_recursive): get rid of warning.
24703         * lib/optparse.rb (CompletingHash#match): get rid of splat failure.
24705 Mon Dec  4 19:16:39 2006  Akinori MUSHA  <knu@iDaemons.org>
24707         * ext/digest/lib/digest/hmac.rb: Do alias << update.
24709 Mon Dec  4 10:48:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24711         * ruby.h (OFFT2NUM): use LONG2NUM() if sizeof(long) equals to
24712           sizeof(off_t).
24714 Mon Dec  4 08:32:25 2006  Shugo Maeda  <shugo@ruby-lang.org>
24716         * lib/cgi.rb (CGI::QueryExtension::read_multipart): should quote
24717           boundary. JVN#84798830
24719 Sun Dec  3 16:16:53 2006  Akinori MUSHA  <knu@iDaemons.org>
24721         * ext/digest/lib/digest/hmac.rb: Fix problems with update
24722           timing. [Reported by: oss-ruby@technorama.net]
24724 Sat Dec  2 07:33:53 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24726         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::FormData::<<):
24727           HTTPUtils::parse_header() takes a string.  [ruby-dev:29931]
24729         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header):
24730           String does no longer have each method.
24732         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_form_data):
24733           ditto.
24735 Sat Dec  2 07:09:04 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24737         * ext/openssl/ossl_ocsp.c: OpenSSL::OCSP::OSCPError should be
24738           subclass of OpenSSL::OpenSSLError. [ruby-dev:29980]
24740 Fri Dec  1 16:31:53 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24742         * ext/tk/tcltklib.c: shouldn't run the killed thread at callback.
24743           [ruby-talk: 227408]
24745 Tue Nov 28 17:25:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24747         * array.c (ary_iter_check): should check modification (size
24748           change) during iteration.
24750         * array.c (rb_ary_initialize, rb_ary_shift, rb_ary_unshift,
24751           rb_ary_splice, rb_ary_reverse, rb_ary_sort, rb_ary_delete,
24752           rb_ary_delete_at, rb_ary_reject_bang, rb_ary_replace,
24753           rb_ary_clear, rb_ary_fill, rb_ary_uniq_bang, rb_ary_compact,
24754           rb_ary_shuffle): add iteration check.
24756 Mon Nov 27 09:00:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24758         * string.c (rb_str_ord): typo fixed.  reported from Kornelius
24759           Kalnbach <murphy@rubychan.de>.  [ruby-core:09621]
24761 Sun Nov 26 16:36:46 2006  URABE Shyouhei  <shyouhei@ruby-lang.org>
24763         * version.h: addition of RUBY_PATCHLEVEL.
24764         * version.c: ditto.
24766 Wed Nov 22 16:00:49 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24768         * ext/tk/extconf.rb: support --with-X11/--without-X11 option.
24770         * ext/tk/README.tcltklib: add description about --with-X11-* option
24771           [ruby-talk:225166] and --with-X11/--without-X11 option.
24773         * ext/tk/tkutil/extconf.rb: able to be called manually
24774           [ruby-talk:225950].
24776 Sat Nov 18 23:39:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24778         * object.c (rb_obj_tap): a new method.  [ruby-talk:224013]
24780 Wed Nov 15 23:22:54 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24782         * file.c (test_grpowned, rb_stat_grpowned): should honor
24783           supplementary group IDs.  [ruby-core:09546]
24785 Tue Nov  7 18:35:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24787         * eval.c (formal_assign): need to pack rest arg information in
24788           argc.
24790 Tue Nov  7 18:05:01 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24792         * ext/tk/lib/tk/itemconfig.rb: minor bug fix.
24794 Tue Nov  7 17:52:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24796         * class.c (rb_include_module): revert duplicate inclusion of
24797           modules.  [ruby-dev:29793]
24799 Tue Nov  7 17:18:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24801         * eval.c (method_missing): update old argument adjustment.
24803 Tue Nov  7 16:41:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24805         * eval.c (when_check): need to splat for NODE_ARGSCAT as well.
24806           [ruby-dev:29860]
24808 Mon Nov  6 22:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24810         * string.c (Init_String): remove duplicated definition of
24811           Symbol#to_s.
24813 Mon Nov  6 18:54:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24815         * eval.c (svalue_to_avalue): need to splat but no error.
24817         * eval.c: new macros - YIELD_CALL, YIELD_VALUES.
24819         * eval.c (rb_yield_values): specify YIELD_VALUES.
24821         * eval.c (rb_yield_0): use new macros.
24823         * eval.c (proc_invoke): slightly modified to separate YIELD_CALL
24824           and YIELD_VALUES from YIELD_ARY_ARGS.
24826         * object.c (Init_Object): add nil.to_splat => [].
24828 Mon Nov  6 15:41:55 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
24830         * ext/tk/lib/tk/itemconfig.rb: ext/tk/lib/tk/itemconfig.rb: bug
24831           fix on 'itemconfiginfo' method, and modify to make it easy to
24832           override 'itemconfiginfo' method.
24834         * ext/tk/lib/tkextlib/tile/treeview.rb: support Tile 0.7.8.
24836         * ext/tk/lib/tkextlib/version.rb: [new] add Tk::Tkextlib_RELEASE_DATE
24837           to get the information from scripts.
24839         * ext/tk/lib/tk.rb: load 'tkextlib/version.rb', and update RELEASE_DATE
24841         * ext/tk/lib/tkextlib/SUPPORT_STATUS: update.
24843         * ext/tk/sample/editable_listbox.rb: [new] the listbox with editable
24844           items. It's one of the example about usage of Place geometry manager.
24846         * ext/tk/sample/tktextio.rb: improve the functions of TkTextIO class.
24847           Those are required by 'irbtkw.rbw'.
24849         * ext/tk/sample/irbtkw.rbw: [new] IRB on Ruby/Tk. It doesn't need any
24850           real console. IRB works on a text widget without I/O blocking. That
24851           is, thread switching on IRB will work properly, even if on Windows.
24853 Mon Nov  6 00:42:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24855         * parse.y (arg_dup_check): vid may be nameless internal id.
24857 Sun Nov  5 19:52:19 2006  Tadayoshi Funaba  <tadf@dotrb.org>
24859         * lib/date.rb: updated based on date2 3.9.7.
24861 Sat Nov  4 13:09:31 2006  Shugo Maeda  <shugo@ruby-lang.org>
24863         * lib/net/imap.rb: accept NOMODSEQ. [ruby-core:9002]
24865 Fri Nov  3 00:16:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24867         * ext/socket/socket.c (ruby_getnameinfo__aix): AF_INET6 workaround
24868           for AIX.  a patch from Yutaka Kanemoto <kinpoco AT gmail.com>.
24869           [ruby-dev:29744]
24871 Thu Nov  2 14:19:44 2006  Akinori MUSHA  <knu@iDaemons.org>
24873         * lib/set.rb (Set#^): Fix XOR operation against a container that
24874           holds duplicate values. [ruby-core:9372]
24876 Thu Nov  2 10:00:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24878         * string.c: class Symbol is no longer subclass of String. also
24879           covers [ruby-core:09366]
24881 Thu Nov  2 08:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24883         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): Symbol should
24884           come earlier than String.
24886         * lib/soap/mapping/rubytypeFactory.rb (RubytypeFactory::obj2soap):
24887           ditto.
24889         * lib/set.rb (TC_Set::test_s_new): strings are no longer
24890           Enumerable
24892         * lib/soap/property.rb (Property::load): ditto.
24894         * lib/webrick/httputils.rb (WEBrick::HTTPUtils::parse_header): ditto.
24896         * lib/soap/mimemessage.rb (MIMEMessage::Headers::parse): ditto.
24898 Thu Nov  2 09:08:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24900         * array.c: revert lfree shift/unshift boost patch to avoid unknown
24901           memory error.
24903 Wed Nov  1 23:24:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24905         * ruby.h (struct RArray): revert embedding ptr in RVALUE.
24907         * array.c: ditto.
24909 Wed Nov  1 23:01:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24911         * string.c (hash): use Bob Jenkins' hash algorithm.
24913 Wed Nov  1 02:22:31 2006  Akinori MUSHA  <knu@iDaemons.org>
24915         * ext/digest/lib/digest/hmac.rb (Digest::HMAC::update): Minor
24916           optimization.
24918         * ext/digest/digest.c (rb_digest_instance_equal): Allow comparing
24919           a digest instance with another of a different class.
24921 Wed Nov  1 01:05:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24923         * eval.c (rb_call0): fixed bug of zsuper with both of opt and rest.
24924           fixed: [ruby-list:42928]
24926 Tue Oct 31 17:03:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24928         * time.c (time_dup): duplicate the class of original time.
24929           [ruby-core:09357]
24931         * lib/time.rb (Time::make_time, Time::rfc2822, Time::httpdate):
24932           should respect subclasses.  [ruby-core:09357]
24934 Tue Oct 31 16:25:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24936         * array.c (ary_shared_first): should address offset after
24937           ary_shared_array().  [ruby-core:09358]
24939 Mon Oct 30 23:40:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
24941         * Makefile.in (miniruby): add XLDFLAGS.
24943         * configure.in (aix): use -bE option for miniruby.  [ruby-dev:29698]
24945         * dir.c (glob_helper): get rid of possible memory leak.
24947         * win32/win32.c (cmdglob, rb_w32_cmdvector, rb_w32_opendir,
24948           rb_w32_get_environ): not to use GC before initialization.
24950 Mon Oct 30 19:28:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
24952         * bignum.c (rb_big2str0): use better approximation.
24954 Mon Oct 30 18:35:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24956         * bignum.c (rb_big2str0): wrong allocation length.  a patch from
24957           U.Nakamura <usa at garbagecollect.jp> [ruby-dev:29710]
24959 Mon Oct 30 12:34:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24961         * eval.c (rb_eval): fix commit miss.  [ruby-dev:29707]
24963 Mon Oct 30 11:15:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24965         * sprintf.c (rb_str_format): should preserve leading zero
24966           information for negative %b and %x.  [ruby-talk:221347]
24968 Sun Oct 29 19:51:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
24970         * regexec.c: invalid offset value was used in STATE_CHECK_BUFF_INIT().
24972 Sat Oct 28 20:13:18 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
24974         * oniguruma.h: Version 4.4.5
24976         * regint.h: ditto.
24978         * regerror.c: ditto.
24980         * regexec.c: ditto.
24982         * regcomp.c ditto.
24984         * regparse.c ditto.
24986 Sat Oct 28 07:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24988         * marshal.c (r_object0): missing break.  [ruby-core:09345]
24990 Fri Oct 27 17:30:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
24992         * enumerator.c (enum_each_cons): move RETURN_ENUMERATOR() after
24993           argument check.
24995 Thu Oct 26 21:05:48 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
24997         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_verify): should clear error.
24998           (fix http://bugs.debian.org/394336)
25000         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): ditto.
25002 Thu Oct 26 15:23:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25004         * enumerator.c: remove by_slice and by_cons.
25006 Thu Oct 26 15:12:12 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25008         * ext/digest/digest.c (Init_digest): typo.
25010 Wed Oct 25 17:16:05 2006  Akinori MUSHA  <knu@iDaemons.org>
25012         * test/digest/test_digest_hmac.rb: added.
25014 Wed Oct 25 16:34:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25016         * ext/digest/test.sh: make this script work again.
25018 Wed Oct 25 07:59:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25020         * lib/date/format.rb: updated based on date2 3.9.6.
25021           [ruby-core:09323]
25023 Wed Oct 25 00:58:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25025         * win32/mkexports.rb, win32/resource.rb: use unique variable names.
25027 Tue Oct 24 19:18:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25029         * enumerator.c (enumerator_by_slice): new method added.
25031         * enumerator.c (enumerator_by_cons): ditto.
25033 Tue Oct 24 18:56:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25035         * enumerator.c (enum_each_slice, enum_each_cons): returns
25036           Enumerable::Enumerator if no block is given.  [ruby-dev:29246]
25038         * enumerator.c: remove methods: enum_with_index, enum_slice,
25039           enum_cons.  [ruby-dev:29246]
25041 Tue Oct 24 18:51:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25043         * enum.c (enum_zip): add RETURN_ENUMERATOR() to zip method.
25045 Mon Oct 23 04:30:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25047         * marshal.c (r_object0): use return value from proc given as the
25048           second argument to Marshal#load() to allow value replacement in
25049           the restoring data.
25051 Sun Oct 22 14:48:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25053         * signal.c (Init_signal): avoid duplicated installation of SIGCHLD
25054           handler.
25056 Sun Oct 22 16:47:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25058         * string.c (rb_str_substr): should be infected with only original
25059           string, but not the shared string.  fixed: [ruby-core:09152]
25061         * string.c (rb_str_new4): keep shared string untainted when original
25062           string is tainted.  fixed: [ruby-dev:29672]
25064 Sun Oct 22 07:55:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25066         * string.c (rb_str_upcase, rb_str_downcase, rb_str_downcase,
25067           rb_str_upcase_bang, rb_str_downcase_bang, rb_str_swapcase_bang):
25068           add RDoc description that case conversion to be effective only
25069           in ASCII region.
25071 Sun Oct 22 05:20:34 2006  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
25073         * configure.in: alloca is broken; use C_ALLOCA instead.
25074           [ruby-dev:29416]
25076 Sat Oct 21 17:50:40 2006  Akinori MUSHA  <knu@iDaemons.org>
25078         * ext/digest/lib/digest.rb: Follow the framework updates.
25080 Fri Oct 20 22:00:43 2006  Akinori MUSHA  <knu@iDaemons.org>
25082         * ext/digest/lib/digest/hmac.rb: Complete half-boiled updates.
25084         * ext/digest/sha2/lib/digest/sha2.rb: Fix #initialize_clone().
25086 Fri Oct 20 20:28:37 2006  Akinori MUSHA  <knu@iDaemons.org>
25088         * ext/digest: Prefix C constants with RUBY_ and C type names with
25089           rb_ to avoid name clash in writing extensions.
25091         * ext/digest: Introduce Digest::Class and Digest::Instance for
25092           ease of implementing subclasses and add-ons, inspired by
25093           gotoyuzo.
25095         * ext/digest: The Digest::Instance module now requires and assumes
25096           that any instance be resettable and clonable, and add some
25097           convenient instance methods such as "new()", for creating a new
25098           copy, parameter taking "digest()" and "hexdigest()", for instant
25099           calculation.  These methods make digest instances work just like
25100           digest classes.
25102         * ext/digest/sha2/lib/digest/sha2.rb:
25103           Add the Digest::SHA2 class to wrap up SHA2 variants: SHA256,
25104           SHA384 and SHA512, hoping this module would make a decent
25105           example of a digest subclass written in Ruby.
25107         * ext/digest/lib/digest.rb: Adjust autoload entries for SHA2
25108           classes.
25110         * ext/digest/lib/digest/hmac.rb: Follow the framework updates.
25112 Fri Oct 20 10:47:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25114         * lib/mkmf.rb: fixed the bug of handling COMMON_MACROS.
25116 Fri Oct 20 08:42:38 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25118         * common.mk (NULLCMD): dummy command.
25120         * bcc32/Makefile.sub (post-install-*): Borland make cannot ignore
25121           command-less double-colon rules.  [ruby-dev:29676]
25123 Fri Oct 20 00:37:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25125         * bcc32/Makefile.sub ($(LIBRUBY_SO)): execute pre-link hook.
25127         * ext/extmk.rb: workaround for Borland make.
25129 Wed Oct 18 23:02:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25131         * array.c (rb_ary_shift): shorten copy size.  fixed: [ruby-list:42907]
25133         * signal.c (Init_signal): handle SIGTERM.  fixed: [ruby-list:42895]
25135         * win32/win32.c (rb_w32_utime): allow NULL to set the current time.
25136           [ruby-talk:219248]
25138 Wed Oct 18 13:25:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25140         * string.c (rb_str_each_line): String#lines now works when a block
25141           is given.  in other words, lines become an alias to each_line.
25142           [ruby-core:09218]
25144         * string.c (rb_str_each_byte): ditto for bytes in place of lines.
25146 Wed Oct 18 00:55:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25148         * parse.y (parser_yylex): use particular enums.  [ruby-core:09221]
25150 Tue Oct 17 22:03:08 2006  Minero Aoki  <aamine@loveruby.net>
25152         * lib/erb.rb: String#each was removed, use #each_line instead.
25154 Tue Oct 17 12:27:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25156         * array.c (ary_shared_array): should set NOEMBED flag for a copied
25157           array.
25159 Tue Oct 17 08:04:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25161         * string.c (rb_str_lines): now takes optional argument for the
25162           line separator.
25164         * io.c (rb_io_lines, rb_io_bytes): new methods.
25166 Mon Oct 16 23:33:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25168         * array.c (rb_ary_unshift_m): a bug in lfree shift length
25169           calculation.
25171 Mon Oct 16 08:30:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25173         * mkconfig.rb: *OBJS are not needed for extension libraries.
25175         * {bcc32,wince,win32}/Makefile.sub (config.status): fixed typo,
25176           missing comma.
25178 Mon Oct 16 00:44:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25180         * pack.c (pack_unpack): execute block if given with unpacked value
25181           instead of creating an array.  an idea from Tim Bray.
25183 Sun Oct 15 01:03:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25185         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): append base
25186           directory but not prepend.
25188         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): do not
25189           join with dot.  fixed: [ruby-core:09179]
25191 Sat Oct 14 23:39:50 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25193         * parse.y (singleton): no need to re-create NODE_SELF() again.
25194           [ruby-core:09177]
25196 Sat Oct 14 23:25:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25198         * parse.y (parser_warning, parser_warn): some error message may
25199           contain format specifiers.  a patch from Akinori MUSHA <knu at
25200           iDaemons.org>.  [ruby-dev:29657]
25202         * regparse.c (onig_rb_warning, onig_rb_warn): ditto.
25204         * ext/bigdecimal/bigdecimal.c (VpException): ditto.
25206         * ext/dl/handle.c (rb_dlhandle_initialize): ditto.
25208         * ext/gdbm/gdbm.c (rb_gdbm_fatal): ditto.
25210 Sat Oct 14 08:15:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25212         * ext/digest/digest.c, ext/digest/digest.h,
25213           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
25214           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c:
25215           Introduce API versioning.
25217         * ext/digest/digest.c, ext/digest/digest.h,
25218           ext/digest/md5/md5init.c, ext/digest/rmd160/rmd160init.c,
25219           ext/digest/sha1/sha1init.c, ext/digest/sha2/sha2init.c: Remove
25220           the constants DIGEST_LENGTH and BLOCK_LENGTH and turn them into
25221           instance methods digest_length() and block_length().  Class
25222           methods with the same names are also provided, which take extra
25223           parameters for a digest method.
25225         * ext/digest/lib/digest/hmac.rb: Completely redesign the somewhat
25226           bizarre API, now that Digest classes can take hashing
25227           parameters.
25229 Sat Oct 14 05:54:05 2006  Akinori MUSHA  <knu@iDaemons.org>
25231         * ext/digest/digest.c: Improve RDoc documentation further more.
25233 Sat Oct 14 04:33:33 2006  Akinori MUSHA  <knu@iDaemons.org>
25235         * ext/digest/digest.c: Improve RDoc documentation.
25237         * ext/digest/digest.c (Init_digest, rb_digest_base_s_digest,
25238           rb_digest_base_s_hexdigest): Make Digest::Base::digest() and
25239           Digest::Base::hexdigest() take extra arguments, which are passed
25240           through to the constructor in an internal call.
25242         * ext/digest/bubblebabble/bubblebabble.c
25243           (rb_digest_base_s_bubblebabble): Ditto for
25244           Digest::Base::bubblebabble().
25246 Sat Oct 14 00:55:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25248         * bcc32/Makefile.sub (post-install-ext): no longer needed.
25250         * bcc32/configure.bat: get rid of a quirk of Borland make, which
25251           sets empty macro in command line to "1".
25253 Fri Oct 13 22:49:02 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25255         * lib/date.rb: updated based on date2 3.9.5.
25257 Fri Oct 13 21:00:01 2006  Akinori MUSHA  <knu@iDaemons.org>
25259         * ext/digest/lib/digest.rb (Digest): Try to auto-load non-standard
25260           digest modules when a specified digest class is missing.
25262         * ext/digest/lib/digest.rb: Define Digest(name) for ease of
25263           dynamically selecting a hashing algorithm.
25265 Fri Oct 13 20:53:37 2006  Akinori MUSHA  <knu@iDaemons.org>
25267         * ext/digest/digest.c (Init_digest): Digest::Base.new() does no
25268           longer take an initial string to feed.  This change allows
25269           subclasses to take hashing parameters.  A statement such as
25270           ``md = Digest::MD5.new(s)'' can be easily rewritten as
25271           ``md = Digest::MD5.new << s'' or
25272           ``md = Digest::MD5.new.update(s)''.
25274 Fri Oct 13 20:51:55 2006  Akinori MUSHA  <knu@iDaemons.org>
25276         * ext/digest/digest.c, ext/digest/md5/md5init.c,
25277           ext/digest/rmd160/rmd160init.c, ext/digest/sha1/sha1init.c,
25278           ext/digest/sha2/sha2init.c: Add RDoc documentation.
25280         * ext/digest/digest.txt, ext/digest/digest.txt.ja: Removed in
25281           favor of embedded RDoc documentation.
25283 Fri Oct 13 20:38:12 2006  Akinori MUSHA  <knu@iDaemons.org>
25285         * ext/digest/bubblebabble, ext/digest/digest.c: Rip BubbleBabble
25286           support out of the base class and have a separate module named
25287           digest/bubblebabble.
25289 Fri Oct 13 19:53:59 2006  Akinori MUSHA  <knu@iDaemons.org>
25291         * ext/digest/digest.c (rb_digest_base_equal): Again, should call
25292           digest() of a subclass instead of the one defined in the base
25293           class.
25295 Fri Oct 13 18:19:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25297         * object.c: Class#inherited RDoc added.  a patch from Daniel
25298           Berger <djberg96 at gmail.com>  [ruby-core:08942]
25300 Fri Oct 13 02:42:00 2006  Akinori MUSHA  <knu@iDaemons.org>
25302         * ext/digest/digest.c (rb_digest_base_equal): Should call digest()
25303           of a subclass instead of the one defined in the base class.
25305 Fri Oct 13 02:30:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25307         * lib/test/unit/collector/dir.rb (Collector::Dir#collect): prepend
25308           base directory to load path.
25310         * lib/test/unit/collector/dir.rb (Collector::Dir#collect_file): should
25311           use the given File-like interface, but not File directly.
25313         * test/testunit/collector/test_dir.rb (TestDir::FileSystem): implement
25314           File-like methods correctly.
25316 Fri Oct 13 01:48:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25318         * lib/date.rb (Date::self.complete_hash): need to check if g is
25319           nil before dereference.  [ruby-core:09116]
25321 Fri Oct 13 01:05:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25323         * string.c (rb_str_partition): RDoc update.  a patch from
25324           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09160]
25326         * hash.c (rb_hash_compare_by_id): ditto.
25328 Fri Oct 13 00:34:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25330         * object.c (rb_mod_cvar_defined): wrong id check.  a patch from
25331           Mauricio Fernandez <mfp at acm.org>.  [ruby-core:09158]
25333         * object.c (rb_mod_cvar_get): typo fixed.  [ruby-core:09168]
25335         * object.c (rb_mod_cvar_set): ditto.
25337 Thu Oct 12 22:58:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25339         * hash.c (rb_hash_compare_by_id): somehow we lost renaming from
25340           Hash#identical.  [ruby-core:09163]
25342 Thu Oct 12 18:25:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25344         * ext/tk/tkutil/tkutil.c (cbsubst_table_setup): need to handle new
25345           character literal (1 char string).
25347         * lib/mkmf.rb: shut up some warnings from tk's extconf.rb.
25349 Thu Oct 12 02:15:24 2006  Akinori MUSHA  <knu@iDaemons.org>
25351         * ext/digest/lib/digest/hmac.rb: Make use of String#bytes.
25353 Thu Oct 12 02:12:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25355         * ext/digest/digest.c (get_digest_base_metadata): Use an instance
25356           variable of a class object instead of a class variable for
25357           metadata.  This change is only crucial for ruby 1.8 because
25358           class variables are inherited to subclasses prior to 1.9, but
25359           applying it also to 1.9 will assure compatibilities.
25361         * ext/digest/md5/md5init.c (Init_md5): Ditto.
25363         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25365         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25367         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25369 Wed Oct 11 21:36:47 2006  Akinori MUSHA  <knu@iDaemons.org>
25371         * ext/digest/digest.c (rb_digest_base_alloc,
25372           rb_digest_base_equal): Simplify the equality check and just
25373           compare resulted digests since state-level equality should
25374           not be so significant.
25376         * ext/digest/digest.h: Ditto.
25378         * ext/digest/*/*.[ch]: Ditto.
25380 Wed Oct 11 17:11:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25382         * eval.c (rb_obj_define_method): add half boiled RDoc document.
25384 Wed Oct 11 16:57:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25386         * array.c (rb_ary_replace): should shift lfree pointer before
25387           calling xfree.
25389 Wed Oct 11 15:07:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25391         * ext/digest/lib/digest/hmac.rb: Add digest/hmac, which implements
25392           HMAC keyed-hashing algorithm.
25394 Wed Oct 11 15:03:55 2006  Akinori MUSHA  <knu@iDaemons.org>
25396         * ext/digest/digest.c (rb_digest_base_reset): Do not make
25397           recursive calls, but call initialize() when reset() is not
25398           defined in a subclass.
25400 Wed Oct 11 14:56:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25402         * ext/digest/sha1/sha1ossl.h: libssl 0.9.8c-3 defines no
25403           SHA_BLOCK_LENGTH.
25405 Wed Oct 11 14:03:31 2006  Akinori MUSHA  <knu@iDaemons.org>
25407         * ext/digest/digest.c (rb_digest_base_reset, Init_digest): Add
25408           Digest::Base#reset.
25410         * ext/digest/digest.h: Update the header comment.
25412         * ext/digest/md5/md5ossl.h, ext/digest/md5/md5init.c (Init_md5):
25413           Define DIGEST_LENGTH and BLOCK_LENGTH.
25415         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25417         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25419         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25421         * ext/digest/depend, ext/digest/extconf.rb: Use $INSTALLFILES
25422           rather than adding make targets. [Pointed out by: nobu]
25424 Tue Oct 10 16:39:08 2006  Akinori MUSHA  <knu@iDaemons.org>
25426         * ext/digest/digest.c (hexdigest_str_new, bubblebabble_str_new):
25427           Perform StringValue() checks properly.
25429 Tue Oct 10 13:21:21 2006  Akinori MUSHA  <knu@iDaemons.org>
25431         * ext/digest/sha1/depend, ext/digest/sha2/depend: Remove obsolete
25432           dependencies.
25434 Mon Oct  9 23:46:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25436         * lib/parsedate.rb: documentation patch from Konrad Meyer
25437           <konrad.meyer@gmail.com>.  [ruby-doc:1238]
25439         * lib/open3.rb, lib/ping.rb: ditto.
25441 Mon Oct  9 23:40:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25443         * ext/extmk.rb, lib/fileutils.rb, lib/mkmf.rb, lib/optparse.rb,
25444           lib/shellwords.rb: get rid of shadowing outer local variable.
25446 Mon Oct  9 22:56:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25448         * lib/rexml/encoding.rb (REXML::Encoding::check_encoding): spaces
25449           are allowed around equal sign.  [ruby-core:09032]
25451         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser): ditto.
25453 Mon Oct  9 01:56:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25455         * eval.c (rb_obj_define_method): add new method
25456           Kernel#define_singleton_method.  [ruby-list:42851]
25458 Sat Oct  7 23:53:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25460         * string.c (rb_str_scan): small documentation fix.
25461           [ruby-core:09007]
25463 Sat Oct  7 23:44:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25465         * bignum.c (rb_big_rshift): a bug in right shift of negative
25466           bignums.  [ruby-core:09020]
25468 Sat Oct  7 23:33:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25470         * eval.c (formal_assign): packed post splat arguments may conflict
25471           with normal arguments.  [ruby-core:09021]
25473         * eval.c (rb_call0): ditto.
25475 Sat Oct  7 11:53:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25477         * object.c (rb_mod_initialize): since module_eval no longer passes
25478           self, use module_exec instead.  fixed: [ruby-dev:29637]
25480 Sat Oct  7 00:27:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25482         * class.c (rb_include_module): remove unnecessary check.
25483           [ruby-talk:218402]
25485 Fri Oct  6 15:19:59 2006  Akinori MUSHA  <knu@iDaemons.org>
25487         * ext/digest/depend: Fix header installation when the build
25488           directory is different from srcdir. [Pointed out by: eban]
25490 Fri Oct  6 09:56:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25492         * {bcc32,win32,wince}/Makefile.sub (config.status): shouldn't use
25493           copy command instead of install. use -run install.
25495 Fri Oct  6 06:53:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25497         * eval.c (rb_yield_0): small refactoring.
25499         * parse.y (bparam_item): fixed bugs in handling parenthesized LHS.
25501 Fri Oct  6 04:47:07 2006  Akinori MUSHA  <knu@iDaemons.org>
25503         * ext/digest/depend: Install digest.h.
25505 Fri Oct  6 04:27:40 2006  Akinori MUSHA  <knu@iDaemons.org>
25507         * ext/digest/lib/md5.rb, ext/digest/lib/sha1.rb: Remove those
25508           compatibility stub libraries.
25510         * sample/openssl/c_rehash.rb: Use digest/md5 instead of obsolete md5.
25512 Fri Oct  6 04:09:51 2006  Akinori MUSHA  <knu@iDaemons.org>
25514         * ext/digest/digest.c: Make hexdigest() always call digest() internally.
25516         * ext/digest/digest.c: Add bubblebabble().
25518 Fri Oct  6 02:38:42 2006  Akinori MUSHA  <knu@iDaemons.org>
25520         * ext/digest/digest.c: Allow subclassing in Ruby.
25522 Fri Oct  6 02:06:10 2006  Akinori MUSHA  <knu@iDaemons.org>
25524         * ext/digest/digest.c (hexdigest_str_new): Add a string size check.
25526 Thu Oct  5 19:28:35 2006  Akinori MUSHA  <knu@iDaemons.org>
25528         * ext/digest/digest.[ch]: Since the argument order of
25529           hash_final_func_t was inconsistent with others, change it and
25530           rename to hash_finish_func_t to avoid confusion.
25532         * ext/digest/digest.[ch]: Remove and eliminate the use of
25533           hash_end_func_t.  Implement hexdigest conversion in the base
25534           class.
25536         * ext/digest/md5/md5.c, ext/digest/md5/md5.h,
25537           ext/digest/md5/md5init.c, ext/digest/md5/md5ossl.c,
25538           ext/digest/md5/md5ossl.h: Remove MD5_End() and change
25539           MD5_Final() to MD5_Finish().
25541         * ext/digest/rmd160/depend, ext/digest/rmd160/extconf.rb,
25542           ext/digest/rmd160/rmd160.c, ext/digest/rmd160/rmd160.h,
25543           ext/digest/rmd160/rmd160hl.c, ext/digest/rmd160/rmd160init.c,
25544           ext/digest/rmd160/rmd160ossl.c, ext/digest/rmd160/rmd160ossl.h:
25545           Remove unused functions RMD160_End(), RMD160_File(),
25546           RMD160_Data() and change RMD160_Final() to RMD160_Finish().
25548         * ext/digest/sha1/extconf.rb, ext/digest/sha1/sha1.c,
25549           ext/digest/sha1/sha1.h, ext/digest/sha1/sha1hl.c,
25550           ext/digest/sha1/sha1init.c, ext/digest/sha1/sha1ossl.c,
25551           ext/digest/sha1/sha1ossl.h: Likewise.
25553         * ext/digest/sha2/extconf.rb, ext/digest/sha2/sha2.c,
25554           ext/digest/sha2/sha2.h, ext/digest/sha2/sha2hl.c,
25555           ext/digest/sha2/sha2init.c: Likewise.
25557 Wed Oct  4 18:47:25 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
25559         * ext/tk/lib/tkextlib/*: bugfix and update
25560           (see ext/tk/ChangeLog.tkextlib).
25562 Wed Oct  4 17:25:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25564         * eval.c (rb_call): check protected visibility based on real self,
25565           not ruby_frame->self.  [ruby-talk:217822]
25567 Wed Oct  4 15:46:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25569         * parse.y (block_param): should interpret single parenthesized
25570           left hand side expression.
25572 Wed Oct  4 08:52:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25574         * test/optparse/test_getopts.rb: changed the class name of test case
25575           to get rid of conflict with test_optparse.rb.
25577 Tue Oct  3 21:04:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25579         * parse.y (dyna_in_block): inline using macro.
25581         * parse.y (mlhs): simplifies the rule a bit.
25583         * parse.y (block_param): restrict block parameters to be local
25584           variables only.
25586         * test/ruby/test_iterator.rb (TestIterator::test_nested_iterator):
25587           update test suite to conform the last change.
25589 Tue Oct  3 02:31:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25591         * eval.c (splat_value): use "to_splat" instead of "to_ary" to
25592           prepare splat values as an array.
25594         * array.c (Init_Array): define to_splat.
25596         * range.c (range_to_splat): new method.
25598         * enumerator.c (enumerator_to_splat): ditto.
25600 Tue Oct  3 01:36:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25602         * string.c (rb_str_lines): returns an Enumerator instead of an
25603           array of lines.
25605         * string.c (rb_str_bytes): a new method.
25607 Mon Oct  2 23:47:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25609         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::COLLECTORS):
25610           base directory should be lower precedence.  fixed: [ruby-dev:29622]
25612         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): typo.
25614         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
25615           load expanded path.  fixed: [ruby-dev:29621]
25617 Mon Oct  2 15:47:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25619         * instruby.rb: batfile should be CRLF'ed.
25621 Mon Oct  2 01:24:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25623         * common.mk (test-all): separate directory where running test cases
25624           from source tree.
25626         * lib/test/unit/autorunner.rb (options): added --basedir, --workdir
25627           and --load-path options.
25629         * lib/test/unit/collector/dir.rb (recursive_collect, collect_file):
25630           base directory support.
25632 Sun Oct  1 23:56:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25634         * Makefile.in, common.mk, ext/extmk.rb, win{32,ce}/Makefile.in: keep
25635           LIBRUBY_SO unless need to be removed.
25637 Sun Oct  1 23:12:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25639         * lib/optparse.rb (OptionParser#make_switch): pass arguments directly.
25641 Sat Sep 30 15:11:26 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25643         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.4.
25645 Fri Sep 29 13:18:24 2006  Akinori MUSHA  <knu@iDaemons.org>
25647         * ext/digest/lib/digest.rb (Digest): Require digest.so and fix the
25648           breakage.  Point out by NAKAMURA Usaku in [ruby-dev:29619].
25650 Fri Sep 29 12:11:04 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
25652         * jcode.rb (succ!): call original succ! if $KCODE == 'n'.
25653           fixed: [ruby-talk:216845]
25655 Fri Sep 29 11:43:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25657         * lib/mkmf.rb (try_func): revert fallback checking undeclared function.
25658           fixed: [ruby-core:08949]
25660 Fri Sep 29 09:56:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25662         * ext/extmk.rb: extout is needed for also clean.
25663           fixed: [ruby-core:08944]
25665         * lib/optparse.rb (OptionParser::Switch#conv_arg): unsplat by
25666           Proc#call if no conversion is given.
25668 Thu Sep 28 23:59:31 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25670         * node.h (struct thread): declare win32_exception_list on cygwin and
25671           win32 regardless if it is implemented.  Provisional fix for
25672           [ruby-core:08917].
25674 Thu Sep 28 20:49:20 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25676         * lib/tmpdir.rb: use return value of getdir.call for length.
25678 Wed Sep 27 22:08:16 2006  Akinori MUSHA  <knu@iDaemons.org>
25680         * ext/digest/md5/md5init.c (Init_md5): Now that we have digest.rb,
25681           require "digest" rather than "digest.so".
25683         * ext/digest/rmd160/rmd160init.c (Init_rmd160): Ditto.
25685         * ext/digest/sha1/sha1init.c (Init_sha1): Ditto.
25687         * ext/digest/sha2/sha2init.c (Init_sha2): Ditto.
25689 Wed Sep 27 21:21:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25691         * string.c (rb_str_startwith): rename startwith? to start_with?,
25692           endwith? to endwith?, respectively.  [ruby-talk:216685]
25694 Wed Sep 27 13:29:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25696         * lib/cgi.rb (CGI::TagMaker::nOE_element_def): replace to_s by
25697           join.  some other methods as well.  [ruby-dev:29613]
25699 Wed Sep 27 01:04:49 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25701         * lib/mkmf.rb (try_func): check function pointer first and macro next.
25703         * lib/mkmf.rb (have_type): simplified with typedef and sizeof.
25705 Wed Sep 27 00:08:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25707         * array.c (rb_ary_shift): shift/unshift performance boost patch,
25708           based on the patch from Eric Mahurin <eric_mahurin at yahoo.com>.
25709           [ruby-core:05861]
25711         * array.c (rb_ary_unshift_m): ditto.
25713         * array.c (ary_make_shared): ditto.
25715         * array.c (RESIZE_CAPA): ditto.
25717         * array.c (rb_ary_free): new function to free memory.  code moved
25718           from gc.c.
25720         * string.c (rb_str_free): ditto.
25722 Tue Sep 26 23:57:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25724         * lib/optparse.rb (OptionParser#getopts): use strings as key.
25725           fixed: [ruby-dev:29614]
25727 Tue Sep 26 15:29:55 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25729         * {win32,wince}/Makefile.sub (CPP): check predefined value.
25731 Tue Sep 26 07:55:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25733         * array.c (rb_ary_shift): should not move memory region if array
25734           body is shared.  a patch from Kent Sibilev <ksruby at gmail.com>.
25735           [ruby-core:08922]
25737 Mon Sep 25 23:10:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25739         * dir.c (rb_push_glob): need not to check by FilePathValue().
25740           [ruby-dev:29599]
25742         * dir.c (dir_globs): ditto.
25744 Mon Sep 25 22:26:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25746         * file.c (rb_path_end): skip root directory.  fixed: [ruby-core:08913]
25748         * lib/mkmf.rb (rm_f): get rid of NUL.
25750         * lib/mkmf.rb (init_mkmf): set default $LDFLAGS.  Patch by Michal
25751           Suchanek <hramrach at centrum.cz>.  [ruby-talk:216256]
25753 Mon Sep 25 15:06:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25755         * sample/test.rb: "print nil" now prints empty string.
25757         * test/ruby/test_system.rb (TestSystem::test_system): ditto.
25759 Mon Sep 25 11:26:25 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25761         * hash.c (recursive_hash): remove unused local variable.
25763         * parse.y (parser_yylex): ditto.
25765         * parse.y (rb_gc_mark_symbols): fix unmatched prototype .
25767         * file.c (rb_get_path): check NUL byte in the path string.
25769 Mon Sep 25 08:14:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25771         * array.c (rb_ary_shift): should clear shifting top element.
25772           [ruby-talk:216055]
25774         * array.c (rb_ary_shift): avoid creating shared object if array
25775           size is small.
25777 Mon Sep 25 08:11:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25779         * random.c (rb_f_rand): RDoc typo fix.  a patch from Frederick
25780           Cheung <fred at 82ask.com>.  [ruby-talk:216047]
25782 Sun Sep 24 21:19:24 2006  Guy Decoux  <ts@moulon.inra.fr>
25784         * gc.c (gc_mark_children): NODE_POSTEXE holds Ruby VALUE.
25785           [ruby-core:08912]
25787 Sun Sep 24 22:28:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25789         * runruby.rb: extension library scripts moved into common directory.
25791 Sun Sep 24 12:10:04 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25793         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.3.
25795 Sun Sep 24 06:55:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25797         * io.c (rb_io_print): no special handling for nil as well as puts.
25798           fixed: [ruby-dev:29586]
25800 Sun Sep 24 06:25:53 2006  why the lucky stiff  <why@ruby-lang.org>
25802         * eval.c (rb_thread_save_context, rb_thread_restore_context):
25803           sandbox hook to save and restore sandbox state.
25805         * eval.c (thread_no_ensure): added THREAD_NO_ENSURE thread flag.
25807         * eval.c (rb_thread_kill_bang): Thread#kill! uses the above flag
25808           to circumvent ensure, in order to prevent endless loops.
25809           contributed by MenTaLguY. [ruby-core:08768]
25811         * eval.c (rb_thread_kill): fix Thread#kill docs, which returns
25812           the thread object in all cases.
25814         * node.h: expose the rb_jmpbuf_t and rb_thread_t structs, along
25815           with the thread flags.  used by the sandbox extension.
25817         * ruby.h: extern rb_eThreadError, so sandbox can swap it.
25819 Sat Sep 23 21:34:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25821         * lib/cgi.rb (CGI::QueryExtension::read_multipart): CGI content
25822           may be empty.  a patch from Jamis Buck <jamis at 37signals.com>.
25824 Sat Sep 23 20:54:28 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
25826         * oniguruma.h: Version 4.4.4
25828         * regexec.c: ditto.
25830         * regcomp.c ditto.
25832 Sat Sep 23 08:35:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25834         * lib/rdoc/ri/ri_options.rb: prevent NameError.  [ruby-dev:29597]
25836 Sat Sep 23 01:02:57 2006  Tadayoshi Funaba  <tadf@dotrb.org>
25838         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.2.
25840 Fri Sep 22 18:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25842         * string.c (rb_str_partition): no need to call rb_call_super(),
25843           since String is no longer includes Enumerable.
25845 Fri Sep 22 17:33:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25847         * hash.c (rb_hash_eql): new method to be used by Hash.
25849         * hash.c (rb_hash_hash): ditto.
25851 Fri Sep 22 06:53:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25853         * bignum.c (rb_big_hash): use rb_memhash().
25855         * numeric.c (flo_hash): simplified.  klass need not to affect
25856           resulting hash value.
25858 Fri Sep 22 02:06:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25860         * .cvsignore: ignore timestamp files and installed list file.
25862 Fri Sep 22 01:36:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25864         * instruby.rb: include FileUtils unconditionally.
25866 Fri Sep 22 00:36:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25868         * numeric.c (Init_Numeric): fix_odd_p and fix_even_p are for Fixnum.
25869           patch from Ondrej Bilka <neleai at seznam.cz>.  [ruby-core:08904]
25871 Thu Sep 21 22:56:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25873         * common.mk (no-install): not install rdoc actually.
25875         * common.mk (install-doc, no-install-doc): use instruby.rb.
25877         * instruby.rb: rdoc installation.
25879         * ext/extmk.rb: expand ruby executable names.
25881 Thu Sep 21 20:19:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25883         * string.c (str_new3): embed shorter strings more eagerly.
25885 Thu Sep 21 17:44:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25887         * string.c (rb_str_startwith): a new method to check if a string
25888           starts with given prefix.
25890         * string.c (rb_str_endwith): the opposite of String#startwith?.
25892 Thu Sep 21 16:29:02 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
25894         * rubytest.rb: use each_line instead of each.
25896 Thu Sep 21 15:06:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25898         * numeric.c (int_odd_p): a new method to check even or odd.
25899           [RCR#337]
25901         * numeric.c (int_even_p): ditto.
25903 Thu Sep 21 13:55:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25905         * ext/etc/etc.c (etc_getpwuid): uid integer should be wrapped in
25906           uid_t value.  [ruby-core:08897]
25908         * ext/etc/etc.c (etc_getpwuid): uid_t may be bigger than plain
25909           'int' type.
25911 Thu Sep 21 10:07:09 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25913         * string.c (rb_str_partition): RDoc typo fixed.  [ruby-core:08898]
25915         * string.c (rb_str_rpartition): fixed separation seek bug.
25917 Thu Sep 21 09:38:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25919         * string.c (rb_str_lines): new method to split a string into lines.
25921         * string.c (Init_String): Strings are no longer Enumerable.  use
25922           each_line or lines method explicitly.
25924         * string.c (Init_String): remove each method. use each_lines.
25926 Wed Sep 20 23:17:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25928         * common.mk (pre-install-doc): create data directory before install.
25930         * lib/mkmf.rb (dir_re): fixed typo.
25932         * lib/mkmf.rb (install_dirs): remove extra slash.
25934 Wed Sep 20 22:41:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25936         * numeric.c (fix_mul): typo again.  patch from Tadashi Saito
25937           <shiba at mail2.accsnet.ne.jp>.  fixed: [ruby-core:08893]
25939 Wed Sep 20 19:32:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25941         * string.c (rb_str_partition): a new method to separate the string
25942           by a separator.  taken from Python 2.5.
25944         * string.c (rb_str_rpartition): ditto.
25946 Wed Sep 20 09:49:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
25948         * {bcc32,win32,wince}/Makefile.sub (INSTALLED_LIST): need to define
25949           this macro to install.
25951 Wed Sep 20 09:43:10 2006  Shugo Maeda  <shugo@ruby-lang.org>
25953         * lib/net/imap.rb: allow extra spaces in responses.
25954           Thanks, Tom Soderlund.
25956 Wed Sep 20 09:25:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25958         * ext/gdbm/gdbm.c: add RDoc documentation. a patch from Peter
25959           Adolphs <futzilogik at users dot sourceforge dot net>.
25960           [ruby-doc:1223]
25962 Tue Sep 19 00:42:15 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25964         * object.c (rb_obj_ivar_defined, rb_mod_cvar_defined): new methods,
25965           Kernel#instance_variable_defined? and Module#class_variable_defined?.
25966           [ruby-dev:29587]
25968         * lib/date/format.rb (Date::Bag#method_missing): use new method,
25969           instance_variable_defined? to check if an instance variable is
25970           defined.  fixed: [ruby-dev:29554]
25971           -- This didn't fix anything.
25973 Tue Sep 19 00:07:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25975         * string.c (sym_eql): fail early to gain performance.
25977         * string.c (sym_hash): cache hash value in aux.shared if possible.
25979         * gc.c (rb_obj_id): no need to treat symbols specially.
25981         * lib/fileutils.rb (FileUtils::FileUtils): singleton_methods() no
25982           longer return an array of strings, but of symbols.
25984         * lib/delegate.rb (DelegateClass): ditto.
25986 Mon Sep 18 15:29:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25988         * dir.c (dir_s_glob): restore GC protection volatile variable.
25989           [ruby-dev:29588]
25991         * re.c (rb_reg_regcomp): ditto.
25993 Mon Sep 18 12:16:48 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
25995         * numeric.c (fix_mul): get rid of shift overflow.
25997 Mon Sep 18 10:47:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
25999         * dir.c (dir_s_glob): remove unused variable.
26001         * math.c (math_log): ditto.
26003         * re.c (rb_reg_regcomp): ditto.
26005         * eval.c (break_jump): ditto.
26007         * eval.c (rb_thread_yield_0): remove unused function.
26009 Sun Sep 17 23:44:58 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26011         * lib/rdoc/rdoc.rb (RDoc::RDoc#document): scan only files modified
26012           after the previous generation.
26014 Sun Sep 17 17:42:13 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26016         * common.mk (install-doc): reverted.
26018         * instruby.rb: stores file name list without destdir prefix.
26020         * lib/rdoc/generators/ri_generator.rb: do not chdir twice.
26022 Sun Sep 17 10:42:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26024         * numeric.c (fix_mul): fixed typo.  fixed: [ruby-core:08885]
26026 Sat Sep 16 19:47:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26028         * README.EXT: should mention new macros: RSTRING_PTR, RSTRING_LEN,
26029           RARRAY_PTR, RARRAY_LEN.
26031         * README.EXT.ja: ditto.
26033 Sat Sep 16 16:39:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26035         * Makefile.in, common.in, instruby.rb, ext/extmk.rb, lib/mkmf.rb:
26036           use instruby.rb to install extensions instead of ext/extmk.rb.
26038         * instruby.rb: store installed list into the file.
26040         * ext/dbm/extconf.rb: allow multiple candidates for dbm-type.
26042         * ext/io/wait/extconf.rb: suspicious checking_for.
26044         * ext/pty/pty.c (establishShell): parent pid is not used.
26046         * ext/pty/pty.c (freeDevice): not used.
26048         * lib/mkmf.rb (checking_for): improved the messages.
26050 Sat Sep 16 11:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26052         * array.c (ary_shared_first): should create embedded copies
26053           instead of sharing memory region for smaller arrays.
26055 Sat Sep 16 09:37:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26057         * struct.c (inspect_struct): do not display a class name for
26058           anonymous struct.  The member fields are sufficient.
26060 Fri Sep 15 20:22:15 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26062         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 rev.110.
26063           * Fix: check_bom cuts \xfe\xff\xXX\xXX of UTF-32LE.
26064           * Add support --ic=UTF-32.
26065           * Fix: can't guess UTF-16 and UTF-32.
26066           * Fix: can't decode beyond BMP of UTF-16LE.
26068         * ext/nkf/nkf.c (guess): Support UTF-32.
26070         * ext/nkf/lib/kconv.rb (kconv): Support UTF-32.
26072         * ext/nkf/lib/kconv.rb (to_utf32): new method.
26074 Fri Sep 15 05:23:24 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26076         * ext/nkf/nkf-8/nkf.c: imported nkf 2.0.8 2006-09-15.
26077           Add support for U+10000 - U+10FFFF
26078           Add support UTF-32
26080 Fri Sep 15 00:03:07 2006  Tanaka Akira  <akr@fsij.org>
26082         * ext/digest/lib/digest.rb (Digest::Base.file): open a file in binary
26083           mode.  suggested by Kazuhiro NISHIYAMA.  [ruby-dev:29579]
26085 Thu Sep 14 17:21:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26087         * numeric.c (fix_mul): avoid bignum multiplication as far as
26088           possible.  a patch from Ondrej Bilka <neleai at seznam.cz>.
26089           [ruby-core:08825]
26091 Thu Sep 14 16:34:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26093         * string.c (rb_str_intern): allow zero length symbols.
26094           [ruby-core:08861]
26096 Thu Sep 14 16:11:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26098         * string.c (rb_str_intern): raise SecurityError only when $SAFE
26099           level is greater than zero.  [ruby-core:08862]
26101         * parse.y (rb_interned_p): new function to check if a string is
26102           already interned.
26104         * string.c (str_to_id): use rb_str_intern().
26106 Thu Sep 14 14:37:45 2006  Tanaka Akira  <akr@fsij.org>
26108         * ext/digest/lib/digest.rb (Digest::Base.file): new method.
26109           [ruby-dev:29572]
26111 Thu Sep 14 08:30:02 2006  Tanaka Akira  <akr@fsij.org>
26113         * ext/digest/digest.c (rb_digest_base_inspect): new method.
26114           [ruby-dev:29573]
26116 Thu Sep 14 01:13:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26118         * gc.c (ruby_init_stack): decrease "stack level too deep" in Windows.
26119           [ruby-dev:29569]
26121 Thu Sep 14 01:02:25 2006  Tanaka Akira  <akr@fsij.org>
26123         * ext/digest/lib/digest.rb: new file.
26124           [ruby-dev:28689]
26126 Wed Sep 13 18:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26128         * README.EXT: English adjustment.  [ruby-core:08851] and
26129           [ruby-core:08852]
26131 Wed Sep 13 18:25:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26133         * misc/ruby-mode.el (ruby-parse-partial): better here-doc support.
26134           a patch from Marshall T. Vandegrift <llasram at gmail.com>.
26135           [ruby-core:08804]
26137 Wed Sep 13 16:43:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26139         * string.c (rb_str_intern): prohibit interning tainted string.
26141 Wed Sep 13 01:14:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26143         * lib/optparse.rb (OptionParser#getopts): works with pre-registered
26144           options.  [ruby-core:08826]
26146 Tue Sep 12 03:58:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26148         * hash.c (rb_hash_compare_by_identity): rename Hash#identical to
26149           Hash#compare_by_identity.
26151 Mon Sep 11 16:52:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26153         * hash.c (rb_hash_identical): a new method to make a hash to
26154           compare keys by their identity.
26156         * hash.c (rb_hash_identical_p): new method to tell if a hash is
26157           identical or not.
26159         * st.c (st_numcmp, st_numhash): export hash type functions.
26161 Mon Sep 11 11:42:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26163         * lib/rexml/source.rb (REXML::Source::encoding): should not
26164           convert the body twice.  [ruby-core:08828]
26166         * lib/rexml/encoding.rb (REXML::Encoding::encoding):
26167           Encoding#encoding= to return boolean value to tell if the body
26168           is really converted or not.
26170         * lib/rexml/encoding.rb (REXML::Encoding::encoding): Specific
26171           conversion library (e.g. rexml/encodings/UTF-16.rb) to have
26172           higher preceding.
26174         * lib/rexml/encodings/UTF-16.rb (REXML::Encoding::decode_utf16):
26175           UTF-16#decode_utf16 should work strings without BOM.
26177 Mon Sep 11 07:39:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26179         * string.c (sym_equal): "sym == str" should compare them as
26180           strings.  [ruby-dev:29554]
26182 Sun Sep 10 22:59:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26184         * instruby.rb (parse_args): remove splat.
26186 Sun Sep 10 20:25:30 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26188         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.1.
26190 Sun Sep 10 09:41:29 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26192         * file.c: ISPRINT() needs ctype.h
26194 Sun Sep 10 09:19:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26196         * lib/optparse.rb: splat parsed arguments.
26198 Tue Jan 10 09:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26200         * eval.c (rb_require_safe): prevent extension from loading twice.
26201           fixed: [ruby-dev:29523]
26203 Sat Sep  9 23:55:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26205         * file.c (rb_f_test): test(0) should not have any special
26206           meaning.  [ruby-dev:29425]
26208         * file.c (rb_f_test): properer error message.
26210 Sat Sep  9 14:08:38 2006  Eric Hodel  <drbrain@segment7.net>
26212         * lib/test/unit/testcase.rb (Test::Unit::TestCase#run): Rescue
26213           Exception in Test::Unit::TestCase#run.  [ruby-core:08783]
26215 Sat Sep  9 04:55:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26217         * lib/pstore.rb: open all in binary mode, and get rid of the quirk of
26218           msvcrt.  fixed: [ruby-dev:29518]
26220 Sat Sep  9 04:47:45 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26222         * Makefile.in, win32/Makefile.sub (MINIRUBY): append MINIRUBYOPT.
26224         * mkconfig.rb, ext/extmk.rb, lib/mkmf.rb, win32/mkexports.rb: suppress
26225           warnings with $VERBOSE.
26227         * win32/resource.rb: only file which has more than one icon is DLL.
26229 Fri Sep  8 16:53:30 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26231         * string.c (str_alloc): should allocate a String object, even when
26232           asked to allocate a Symbol object.  [ruby-dev:29529]
26234 Fri Sep  8 16:36:27 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26236         * ext/extmk.rb (extmake): follow Array#to_s.
26238         * lib/mkmf.rb (create_makefile): ditto.
26240         * win32/resource.rb: ditto.
26242 Fri Sep  8 10:00:12 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26244         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookies): new
26245           method to parse multiple cookies per Set-Cookie header.
26246           Thanks to Aaron Patterson <aaron_patterson at speakeasy.net>.
26247           [ruby-core:08802]
26249 Fri Sep  8 08:59:30 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26251         * win32/Makefile.sub, win32/configure.bat win32/setup.mak: program
26252           name transform.
26254 Fri Sep  8 08:25:39 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26256         * lib/optparse.rb: suppress `assigning void value' warning.
26258 Fri Sep  8 01:16:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26260         * array.c (Init_Array): #to_s to be an alias to #inspect.
26261           [ruby-dev:29520]
26263         * hash.c (Init_Hash): ditto.
26265         * lib/mkmf.rb (create_makefile): replace "print array" by
26266           "print *array".
26268         * mkconfig.rb: ditto.
26270 Thu Sep  7 21:02:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26272         * object.c (nil_to_s): returns the empty string again.
26273           [ruby-dev:29520]
26275 Thu Sep  7 23:27:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26277         * file.c (path_check_0, fpath_check): disable path check on cygwin.
26278           [ruby-talk:213074]
26280 Thu Sep  7 02:03:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26282         * time.c (time_to_s): adopt new date format using digits
26283           e.g. "2006-09-07 02:03:45 +9000".
26285 Thu Sep  7 01:54:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26287         * string.c (sym_equal): override.  check equivalence.
26289 Wed Sep  6 13:25:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26291         * parse.y (symbols_i): need to initialize early-created symbols.
26292           [ruby-dev:29496]
26294 Wed Sep  6 12:05:19 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26296         * ext/nkf/lib/kconv.rb (Kconv::toeuc): remove -m0 [ruby-dev:29505]
26298 Tue Sep  5 22:06:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26300         * ext/tk/tcltklib.c: use rb_ary_new3() since RARRAY_LEN() is not l-value.
26302         * ext/tk/tkutil/tkutil.c: use RARRAY_PTR() and RARRAY_LEN() and etc.
26303           fixed: [ruby-dev:29473]
26305 Tue Sep  5 06:47:22 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26307         * time.c (time_to_s): variable declaration after an execution
26308           statement.
26310 Tue Sep  5 05:49:41 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26312         * file.c (path_check_0): check if sticky bit is set on parent
26313           directories for executable path.  fixed: [ruby-dev:29415]
26315 Tue Sep  5 05:03:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26317         * numeric.c (fix_plus): addition in Fixnum will never overflow
26318           long.  a patch from Ondrej Bilka <neleai at seznam.cz>.
26319           [ruby-core:08794]
26321         * numeric.c (fix_minus): ditto.
26323         * bignum.c (rb_big_pow): eagerly truncate resulting bignum.
26324           [ruby-core:08794]
26326 Mon Sep  4 23:15:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26328         * time.c (time_to_s): make it conform to RFC2822 date format.
26329           [ruby-dev:29467]
26331 Mon Sep  4 21:43:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26333         * ext/dbm/extconf.rb: create makefile according to the result of check
26334           for dbm header.  fixed: [ruby-dev:29445]
26336 Mon Sep  4 21:39:42 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26338         * lib/date.rb, lib/date/format.rb: updated based on date2 3.9.
26340 Mon Sep  4 21:14:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26342         * time.c (time_strftime): include nul character.  fixed: [ruby-dev:29422]
26344 Mon Sep  4 16:39:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26346         * lib/cgi.rb (CGI::out): specify -x option for nkf.
26348         * lib/cgi.rb (CGI::out): should not convert utf-8 implicitly using
26349           NKF.  it is too Japanese centric.
26351 Mon Sep  4 14:23:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26353         * ext/dbm/extconf.rb (db_check): remove debug print.
26355 Mon Sep  4 06:46:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26357         * parse.y (rb_id2sym): intern if id is attrset_id.
26358           [ruby-dev:29420] [ruby-dev:29447]
26360 Mon Sep  4 01:25:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26362         * eval.c (rb_f_local_variables): list symbols.
26364         * struct.c (rb_struct_s_members_m): ditto.
26366         * variable.c (ivar_i): ditto.
26368         * variable.c (gvar_i): ditto.
26370         * variable.c (cv_i): ditto.
26372 Sun Sep  3 20:47:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26374         * ruby.h (SYMBOL_P): Qnil and Qfalse are not Symbol.
26376 Sun Sep  3 15:32:44 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26378         * lib/mkmf.rb: get rid of nil.to_s.
26380 Sun Sep  3 06:24:38 2006  Tanaka Akira  <akr@fsij.org>
26382         * ext/socket/socket.c (ruby_connect): sockerrlen should be socklen_t.
26384 Sun Sep  3 04:40:42 2006  Tanaka Akira  <akr@fsij.org>
26386         * ext/socket/extconf.rb: check arpa/inet.h for ntohs.
26388         * ext/socket/socket.c: include arpa/inet.h if available.
26390 Sat Sep  2 23:59:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26392         * string.c (Init_String): undef Symbol#new.
26394         * struct.c (rb_struct_s_def): wrong symbol detection.
26396 Sat Sep  2 23:59:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26398         * string.c (str_to_id): a bug caused by premature optimization.
26400 Sat Sep  2 23:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26402         * object.c (Init_Object): move symbol related code to string.c
26404         * string.c (Init_String): Symbol as subclass of String.
26406         * parse.y (rb_intern2): handle symbol as strings.
26408         * string.c (str_new): substring of symbols are mere strings, not
26409           symbols.
26411 Sat Sep  2 23:37:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26413         * ruby.h (struct RArray): embed small arrays.
26414           (RARRAY_LEN): defined for accessing array members.
26415           (RARRAY_PTR): ditto.
26417         * array.c: use RARRAY_LEN and RARRAY_PTR.
26419 Sat Sep  2 13:23:01 2006  Tanaka Akira  <akr@fsij.org>
26421         * common.mk (ia64.o): use the compiler driver to assemble ia64.s
26422           to use appropriate ABI.
26424 Sat Sep  2 12:06:35 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26426         * lib/soap/generator.rb (SOAP::SOAPGenerator#encode_tag): do not dump
26427           XML attribute which value is nil.  value "" and nil both were dumped
26428           as 'attr="value"'.  [ruby-dev:29395]
26430 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26432         * eval.c (rb_eval): should handle when in else clause.  a patch
26433           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
26435         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
26437 Sat Sep  2 12:00:32 2006  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
26439         * lib/csv.rb (CSV::IOReader#initialize): use String#[](pos, len)
26440           instead of String#[](idx) to check utf BOM.  follows String#[](idx)
26441           behavior change of 1.9.
26443 Sat Sep  2 11:47:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26445         * eval.c (rb_eval): should handle when in else clause.  a patch
26446           from Eric Hodel <drbrain at segment7.net>.  [ruby-core:08662]
26448         * parse.y (primary): wrap with NODE_CASE.  [ruby-core:08663]
26450 Fri Sep  1 22:07:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26452         * ruby.h (RSTRING_EMBED_LEN_MASK): uses 5 bits to support 64bit
26453           environment.  [ruby-dev:29369]
26455 Fri Sep  1 22:02:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26457         * string.c (rb_str_resize): should copy embedded string to
26458           malloc'ed buffer.  a patch from <nobu at ruby-lang.org> in
26459           [ruby-dev:29369].  fixed: [ruby-dev:29368]
26461         * string.c (rb_str_ord): use %ld specifier since STRING_LEN() is a
26462           long.  [ruby-dev:29369]
26464 Fri Sep  1 21:41:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26466         * ext/socket/socket.c (socks_init): typo fixed.  a patch from Sven
26467           Klemm <sven at c3d2.de>.  [ruby-core:08770]
26469 Fri Sep  1 14:22:42 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26471         * array.c (rb_ary_shuffle): RDoc fixed.
26473 Fri Sep  1 13:52:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26475         * ext/tk/lib/tk/font.rb: TkFont#current_configinfo() doesn't work
26476           on Tcl/Tk8.x.
26478 Fri Sep  1 09:32:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26480         * lib/irb/ruby-lex.rb (RubyLex::getc): should not push nil into
26481           reading buffer (@readed).  reported in
26482           <http://jarp.does.notwork.org/diary/200608c.html#200608311>.
26484 Thu Aug 31 23:59:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26486         * lib/mkmf.rb (configuration): follow nil.to_s.
26488 Thu Aug 31 20:50:46 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26490         * lib/mkmf.rb (create_makefile): follow nil.to_s.
26492         * win32/resource.rb: ditto.
26494 Thu Aug 31 20:21:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26496         * eval.c (search_required): use RSTRING_PTR and RSTRING_STR.
26498         * file.c (test_identical, rb_file_s_truncate): ditto.
26500         * io.c (pipe_open, rb_io_reopen): ditto.
26502         * object.c (nil_plus): ditto.
26504         * process.c (proc_spawn_n, rb_spawn): ditto.
26506         * util.c (ruby_add_suffix): ditto.
26508         * ext/Win32API/Win32API.c (Win32API_initialize): ditto.
26510         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): ditto.
26512         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): ditto.
26514         * ext/tk/stubs.c, ext/tk/tcltklib.c, ext/tk/tkutil/tkutil.c: ditto.
26516         * ext/win32ole/win32ole.c (ole_val2olevariantdata): ditto.
26518 Thu Aug 31 18:23:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26520         * ruby.h (struct RString): embed small strings.
26521           (RSTRING_LEN): defined for accessing string members.
26522           (RSTRING_PTR): ditto.
26524         * string.c: use RSTRING_LEN and RSTRING_PTR.
26526 Thu Aug 31 17:16:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26528         * array.c (rb_ary_shuffle_bang): new method.
26530         * array.c (rb_ary_shuffle): ditto.
26532         * random.c (genrand_real): ditto.
26534         * random.c (genrand_int32): export the function.
26536         * random.c (Init_Random): initialize random seed at the
26537           beginning.
26539 Thu Aug 31 13:12:06 2006  why the lucky stiff  <why@ruby-lang.org>
26541         * eval.c (ruby_init): rename top_cref to ruby_top_cref and export,
26542           along with ruby_cref, for use by the sandbox. [ruby-core:08762]
26544         * node.h: ditto.
26546 Wed Aug 30 12:01:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26548         * numeric.c (flo_hash): improve collision.
26550         * string.c (rb_memhash): new generic function to calculate hash value
26551           for memory chunk.
26553 Tue Aug 29 19:10:10 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26555         * hash.c (rb_hash_s_create): fixed memory leak, based on the patch
26556           by Kent Sibilev <ksruby at gmail.com>.  fixed: [ruby-talk:211233]
26558 Mon Aug 28 11:29:46 2006  Eric Hodel  <drbrain@segment7.net>
26560         * eval.c, parse.y: Revert.
26561         * ext/.document: Add digest.c.
26562         * ext/digest/digest.c: Make RDoc show up.
26563         * ext/io/wait.c: Fix call-seq in RDoc.
26565 Mon Aug 28 08:03:20 2006  Eric Hodel  <drbrain@segment7.net>
26567         * ext/.document: Add C files with RDoc.
26568         * ext/digest/digest.c: Convert to RDoc.
26569         * ext/io/wait.c: ditto.
26570         * lib/rdoc/parsers/parse_rb.rb: Fix typo.  Submitted by
26571           <calamitas at gmail.com>.  [ruby-core:08724]
26573 Mon Aug 28 07:21:47 2006  Eric Hodel  <drbrain@segment7.net>
26575         * file.c (File#size?): Fix documentation submitted by Rick Ohnemus.
26576           ruby-Bugs-5529.  [ruby-core:08725]
26578 Sun Aug 27 21:41:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26580         * oniguruma.h: Version 4.4.0
26582         * regint.h: ditto.
26584         * regparse.h: ditto.
26586         * regexec.c: ditto.
26588         * regcomp.c ditto.
26590         * regparse.c: ditto.
26592 Sat Aug 26 08:03:03 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26594         * lib/date.rb, lib/date/format.rb: updated based on date2 3.8.2.
26596 Fri Aug 25 21:15:22 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26598         * common.mk: add regint.h and oniguruma.h to dependence.
26600         * ext/strscan/depend: ditto.
26602 Fri Aug 25 20:35:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26604         * test/wsdl/document/echo.rb: removed.
26606         * test/wsdl/document/test_rpc.rb: remove echo.rb after test.
26607           [ruby-dev:29337]
26609 Fri Aug 25 17:02:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26611         * gc.c (gc_sweep): typo fixed.
26613 Fri Aug 25 16:05:50 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26615         * object.c (sym_call): check if the receiver is given.
26617 Fri Aug 25 01:10:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26619         * object.c (rb_Integer): Integer(nil) should raise TypeError.
26620           [ruby-talk:210205]
26622         * object.c (nil_to_s): no longer returns empty string but "nil".
26623           [ruby-talk:210205]
26625         * lib/mkmf.rb: avoid COMMON_HEADERS being nil.
26627 Wed Aug 23 00:25:14 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26629         * lib/rexml/source.rb (REXML::IOSource#initialize): encoding have to
26630           be set with the accessor.  fixed: [ruby-list:42737]
26632 Tue Aug 22 19:21:00 2006  Minero Aoki  <aamine@loveruby.net>
26634         * lib/net/smtp.rb: parameter `to_addrs' might be an Array,
26635           .flatten is required. [ruby-dev:29316]
26637 Tue Aug 22 18:47:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26639         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_method):
26640           rdoc documents C module methods as instance methods. a patch in
26641           [ruby-core:08536].
26643 Tue Aug 22 12:35:57 2006  NARUSE, Yui  <naruse@ruby-lang.org>
26645         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): fix regexp for
26646           euc-jp [ruby-dev:29344]
26648 Sun Aug 20 11:46:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26650         * numeric.c (num_step): also return an enumerator object if no block
26651           is given.
26653 Sat Aug 19 16:47:51 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
26655         * ext/win32ole/win32ole.c (hash2named_arg): accept hash argument
26656           of symbol key.
26658         * test/win32ole/test_win32ole.rb
26659           ditto.
26661 Sat Aug 19 11:28:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26663         * file.c (rb_file_s_rename): use errno if set properly.
26664           fixed: [ruby-dev:29293]
26666 Fri Aug 18 01:05:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26668         * lib/cgi.rb (CGI::out): specify -m0 to disable MIME decode.  a
26669           patch from Fujioka <fuj at rabbix.jp>.  [ruby-dev:29284]
26671 Thu Aug 17 19:15:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26673         * file.c (rb_stat_[rRwWxX]): check for super user.
26674           fixed: [ruby-core:08616]
26676 Thu Aug 17 14:47:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26678         * lib/mkmf.rb: added rdoc by Daniel Berger.  [ruby-core:08177]
26680 Wed Aug 16 17:46:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26682         * marshal.c (r_byte): IO#getc returns one byte string now.
26683           fixed: [ruby-dev:29255]
26685 Wed Aug 16 17:22:44 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26687         * common.mk (pre-install-local): remove unnecessary code.
26688           [ruby-dev:29249]
26690 Wed Aug 16 11:45:36 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26692         * process.c (proc_setuid, proc_setgid, proc_seteuid, proc_setegid):
26693           get rid of bogus implementations on Mac OS X.
26695 Wed Aug 16 11:09:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26697         * ruby.c (set_arg0): fill argv other than the first with an empty
26698           string instead of NULL.
26700 Tue Aug 15 11:21:08 2006  Minero Aoki  <aamine@loveruby.net>
26702         * lib/net/smtp.rb: support SMTP/SSL.  Thanks Kazuhiro NISHIYAMA.
26704         * lib/net/smtp.rb: new method SMTP.use_ssl?
26706         * lib/net/smtp.rb: new method SMTP.enable_ssl.
26708         * lib/net/smtp.rb: new method SMTP.disable_ssl.
26710         * lib/net/smtp.rb: new method SMTP.default_ssl_port.
26712         * lib/net/smtp.rb: new method SMTP.default_tls_port.
26714         * lib/net/smtp.rb: now SMTP#enable_tls accepts a SSLContext
26715           object, instead of a verity and cert.  [FEATURE CHANGE]
26717         * lib/net/smtp.rb: new method SMTP.ssl_context.
26719         * lib/net/smtp.rb: new method SMTP.default_ssl_context.
26721         * lib/net/smtp.rb: export SMTP.authenticate.
26723         * lib/net/smtp.rb: export SMTP.auth_plain.
26725         * lib/net/smtp.rb: export SMTP.auth_login.
26727         * lib/net/smtp.rb: export SMTP.auth_cram_md5.
26729         * lib/net/smtp.rb: export SMTP.starttls.
26731         * lib/net/smtp.rb: export SMTP.helo.
26733         * lib/net/smtp.rb: export SMTP.ehlo.
26735         * lib/net/smtp.rb: export SMTP.mailfrom.
26737         * lib/net/smtp.rb: export SMTP.rcptto.
26739         * lib/net/smtp.rb: export SMTP.rcptto_list.
26741         * lib/net/smtp.rb: export SMTP.data.
26743         * lib/net/smtp.rb: export SMTP.quit.
26745 Sat Aug 12 22:33:06 2006  Eric Hodel  <drbrain@segment7.net>
26747         * string.c (String#split): Describe grouping behavior.  Patch by Jan
26748           Svitok <jan.svitok at gmail.com>.  [ruby-core:08603]
26750 Sun Aug 13 12:08:02 2006  Tanaka Akira  <akr@fsij.org>
26752         * ext/socket/socket.c: ANSIfied.  [ruby-core:08601]
26754 Sat Aug 12 15:55:32 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26756         * configure.in, bcc32/Makefile.sub, win32/Makefile.sub, win32/dir.h,
26757           win32/win32.c, win32/win32.h: large file support for win32.
26759 Fri Aug 11 15:39:25 2006  Eric Hodel  <drbrain@segment7.net>
26761         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#find_body): Make RDoc
26762           ignore C function prototypes.  Patch by Tilman Sauerbeck
26763           <tilman at code-monkey.de>.  [ruby-core:8574]
26764         * lib/yaml/tag.rb: Replace nodoc with stopdoc so Module methods get
26765           documented.
26767 Wed Aug  9 16:53:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26769         * lib/net/smtp.rb (Net::SMTP::auth_cram_md5): use ord to retrieve
26770           bytes from strings.  a patch from WATANABE Tetsuya
26771           <Tetsuya.WATANABE at nifty.com>.  [ruby-dev:29240]
26773 Tue Aug  8 23:49:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26775         * lib/irb/extend-command.rb (IRB::ExtendCommandBundle): pacify
26776           RDoc.  a patch from Eric Hodel <drbrain at segment7.net>.
26777           [ruby-core:08522]
26779 Tue Aug  8 19:26:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26781         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_string):
26782           affected by str[0] returns 1 char string.  [ruby-dev:29223]
26784         * lib/resolv.rb (Resolv::DNS::Message::MessageDecoder::get_labels):
26785           ditto.
26787 Tue Aug  8 12:28:43 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26789         * parse.y (arg): allow newlines before ternary colon.  [ruby-dev:29189]
26791 Mon Aug  7 17:56:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26793         * ext/bigdecimal/bigdecimal.c, ext/digest/rmd160/rmd160ossl.c,
26794           ext/digest/sha1/sha1ossl.c, ext/readline/readline.c: move
26795           inclusion of config.h to pacify AIX.  a patch from Yutaka
26796           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29197]
26798 Mon Aug  7 15:55:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26800         * ext/syck/syck.c (syck_move_tokens): should avoid negative
26801           memmove.  [ruby-list:42625]
26803 Mon Aug  7 14:37:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26805         * configure.in, common.mk: AIX link issue.  a patch from Yutaka
26806           Kanemoto <kinpoco at gmail.com>.  [ruby-dev:29190]
26808         * ext/socket/socket.c: AIX socket support.  [ruby-dev:29190]
26810 Mon Aug  7 12:05:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26812         * dln.c, eval.c, gc.c, ruby.h: shut up AIX alloca warning.
26813           a patch from Yutaka Kanemoto <kinpoco at gmail.com>.
26814           [ruby-dev:29191]
26816 Sun Aug  6 20:34:24 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26818         * lib/date/format.rb (str[fp]time): %[EO]U didn't denote %U.
26820 Sun Aug  6 17:12:12 2006  Tanaka Akira  <akr@fsij.org>
26822         * io.c (io_reopen): STDERR.reopen(open("/dev/tty", "w")) should not
26823           clear FMODE_PREP in STDERR.
26825 Sat Aug  5 22:53:41 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
26827         * oniguruma.h: Version 4.2.2
26829         * regint.h: ditto.
26831         * regparse.h: ditto.
26833         * regexec.c: ditto.
26835         * regcomp.c ditto.
26837         * regerror.c: ditto.
26839         * regparse.c: ditto.
26841 Sat Aug  5 17:07:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26843         * parse.y (top_local_setup): local_vars[-1] should point
26844           ruby_scope itself to protect local_tbl from garbage collection.
26845           [ruby-dev:29049]
26847 Sat Aug  5 13:49:43 2006  Tadayoshi Funaba  <tadf@dotrb.org>
26849         * lib/date/format.rb (str[fp]time): "%\n" means "\n".
26851 Fri Aug  4 12:13:22 2006  Eric Hodel  <drbrain@segment7.net>
26853         * lib: Clean up files for RDoc.
26854         * lib/.document: Include most of the standard library in RDoc
26855           generation.
26856         * lib/rdoc/ri/ri_formatter.rb: Don't unescape HTML in HtmlFormatter.
26857           Submitted by <ksruby at gmail.com>.  [ruby-core:08392].
26858         * lib/drb/ssl.rb: Close socket on SSLError [ruby-core:7197]
26860 Fri Aug  4 18:59:49 2006  Keiju Ishitsuka  <keiju@ruby-lang.org>
26862         * lib/irb/{init.rb,ruby-lex.rb,slex.rb}: can't input '\c' for
26863           [ruby-core: 7122]. and support for ruby1.8.X
26865 Fri Aug  4 14:02:14 2006  James Edward Gray II  <james@grayproductions.net>
26867         * lib/date/format.rb (__strptime, strftime): allow multi-line patterns
26868           in Date#strftime the same as Time#strftime accepts.
26869           fixed: [ruby-core:08466]
26871 Fri Aug  4 13:56:51 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26873         * pack.c (pack_pack): check argument overrun for 'P'.  based on a
26874           patch by rucila <rucila at yahoo.cojp>.  fixed: [ruby-dev:29182]
26876 Fri Aug  4 02:42:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26878         * sprintf.c (rb_str_format): a bug in %c type check.
26880 Fri Aug  4 01:28:19 2006  Tanaka Akira  <akr@fsij.org>
26882         * io.c (io_reopen): STDERR.reopen(File.open("/dev/null", "w")) should
26883           not fclose stderr.
26885 Thu Aug  3 15:16:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26887         * range.c (range_include): should always call Enumerable#include?
26888           (not #===) for non numeric end points.  [ruby-core:08477]
26889           [ruby-core:08496]
26891 Mon Jul 31 16:51:40 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
26893         * win32/win32.c (exit_handler): new function; release winsock and
26894           environment work area.
26896         * win32/win32.c (NTInitialize): setup exit_handler.
26898         * win32/win32.c (StartSockets): use exit_handler.
26900         * win32/win32.c (rb_w32_getenv): use GetEnvironmentStrings() instead
26901           of GetEnvironmentVariable(), because the latter cannot distinguish
26902           whether a null environment variable exists or not.
26903           fixed: [ruby-talk:205123]
26905 Mon Jul 31 16:15:13 2006  Tanaka Akira  <akr@fsij.org>
26907         * test/ruby/test_process.rb (TestProcess#test_rlimit_nofile):
26908           setrlimit may fail with EINVAL.
26909           reported by MIYAMUKO Katsuyuki.  [ruby-dev:29174]
26911 Mon Jul 31 09:22:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26913         * ruby.h: use ifdef (or defined) for macro constants that may or
26914           may not be defined to shut up gcc's -Wundef warnings.
26915           [ruby-core:08447]
26917 Mon Jul 31 13:38:13 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
26919         * lib/webrick/httprequest.rb (WEBrick::HTTPReuqest#parse_uri): improve
26920           for the value of IPv6 address in the Host: header field.
26922 Sun Jul 30 23:26:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26924         * eval.c (rb_call0): trace call/return of method defined from block.
26925           fixed: [ruby-core:08329]
26927         * eval.c (rb_trap_eval): make the current thread runnable to deal with
26928           exceptions which occurred within the trap.  fixed: [ruby-dev:27729]
26930         * lib/cgi/session.rb, lib/cgi/session/pstore.rb: suppress warnings.
26931           fixed: [ruby-talk:204896]
26933 Sat Jul 29 06:12:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
26935         * ext/tk/lib/multi-tk.rb: freeze ip_name for security reason.
26937 Sat Jul 29 01:23:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26939         * lib/logger.rb: improves the amount of documentation that Rdoc
26940           picks up when processing logger.rb by moving the require
26941           statement back before the comment block.  a patch from Hugh
26942           Sasse <hgs at dmu.ac.uk>.  [ruby-core:08422]
26944 Fri Jul 28 17:18:03 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26946         * ext/curses/curses.c (NUM2CH, CH2FIX): use single char strings.
26948 Fri Jul 28 14:09:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26950         * eval.c (rb_call): fixed typo in cache look-up.  [ruby-dev:29167]
26952 Fri Jul 28 10:41:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26954         * eval.c (rb_call): a bug in method cache look-up.
26955           http://www.rubyist.net/~matz/20060720.html#c04
26957 Fri Jul 28 10:19:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26959         * sprintf.c (rb_f_sprintf): documentation update patch from Jacob
26960           Fugal <lukfugl at gmail.com>.  [ruby-core:08418]
26962 Fri Jul 28 09:41:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26964         * time.c (time_to_s): fixed typo.  [ruby-dev:29162]
26966 Fri Jul 28 00:26:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26968         * math.c (domain_check): ANSI style function arguments
26970         * math.c (math_log): too few argument to domain_check().
26972 Thu Jul 27 21:19:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26974         * math.c (domain_check): a new function to check domain error
26975           explicitly for systems that return NaN like FreeBSD.
26976           [ruby-core:07019]
26978         * math.c (math_acos, math_asin, math_acosh, math_atanh, math_log,
26979           math_log10, math_sqrt): use domain_check().
26981         * math.c (math_sqrt): fix documentation flaw.
26983 Thu Jul 27 22:21:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
26985         * time.c (time_to_s): fixed format mismatch.
26987 Thu Jul 27 18:12:12 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
26989         * time.c: need to declare time_utc_offset.
26991 Thu Jul 27 17:01:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26993         * io.c (io_close): always calls "close" method of the receiver.
26994           [ruby-core:6911] [ruby-core:8112]
26996 Thu Jul 27 16:41:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
26998         * ext/openssl/ossl.h: move <ruby.h> inclusion point to shut up
26999           Solaris compiler.  [ruby-core:08114]
27001         * time.c (time_to_s): use +0900 style timezone string for local time.
27002           [ruby-dev:29143]
27004 Wed Jul 26 22:20:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27006         * configure.in: add support for as and ASFLAGS.  [ruby-dev:29138]
27008 Wed Jul 26 21:59:33 2006  Minero Aoki  <aamine@loveruby.net>
27010         * lib/net/http.rb (Net::HTTP#post, request_post, request): should
27011           set Content-Type: x-www-form-urlencoded by default.
27013         * lib/net/http.rb (Net::HTTPHeader#content_type): should return
27014           nil when there's no Content-Type.
27016         * lib/net/http.rb (Net::HTTPHeader#sub_type): should return nil
27017           when there's no sub Content-Type (e.g. "Content-Type: text").
27019         * lib/net/http.rb (Net::HTTPHeader#type_params): wrongly failed
27020           when there's no Content-Type.
27022 Wed Jul 26 18:38:13 2006  Minero Aoki  <aamine@loveruby.net>
27024         * ext/strscan/strscan.c (strscan_do_scan): always return nil if
27025           p->curr exceeds string size.
27027 Wed Jul 26 18:33:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27029         * eval.c (Init_eval): rename #invoke_method and
27030           #invoke_functional_method to __send and __send! respectively.
27032         * eval.c (remove_method): prohibit removing __send and __send!.
27034         * eval.c (rb_undef): prohibit undef'ing  __send and __send!.
27036         * eval.c (rb_eval): prohibit redefining  __send and __send!.
27038         * lib/delegate.rb (Delegator): preserve __send.
27040 Wed Jul 26 18:14:19 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27042         * ext/pty/pty.c (getDevice): retry once after GC on failure.
27043           [ruby-core:08282]
27045 Wed Jul 26 17:43:20 2006  Minero Aoki  <aamine@loveruby.net>
27047         * ext/strscan/strscan.c (strscan_do_scan):
27048           StringScanner.new("").scan(//) should return "". [ruby-Bugs:4361]
27050 Wed Jul 26 17:28:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27052         * sprintf.c (rb_str_format): prepend ".." to %u for negative bignum,
27053           but not "-".  fixed: [ruby-core:08167]
27055 Wed Jul 26 16:39:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27057         * string.c (rb_str_scan): add string modification check.
27058           [ruby-core:7216]
27060 Wed Jul 26 16:06:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27062         * lib/cgi.rb (CGI::QueryExtension::read_multipart): check
27063           multipart boundary end.  a patch from Fujioka <fuj at rabbix.jp>
27064           [ruby-dev:28470]
27066 Wed Jul 26 01:02:59 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27068         * configure.in: suppress warnings by automake 1.8 or later.
27070 Tue Jul 25 14:46:14 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27072         * lib/mkmf.rb (configuration): typo.
27074 Tue Jul 25 13:14:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27076         * process.c (rb_proc_times): rename hz to hertz to avoid name
27077           crash on AIX.  [ruby-dev:29126]
27079 Mon Jul 24 22:03:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27081         * eval.c (backtrace): skip frames successive on node and method name.
27083 Mon Jul 24 15:51:52 2006  Tanaka Akira  <akr@fsij.org>
27085         * ext/readline/readline.c (readline_readline): rl_deprep_term_function
27086           may be NULL with libedit.  reported by Ryan Davis.  [ruby-dev:29070]
27088 Mon Jul 24 15:19:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27090         * eval.c (rb_call0): revert last change.  [ruby-dev:29112]
27091           [ruby-core:08374]
27093 Sun Jul 23 22:59:49 2006  Tanaka Akira  <akr@fsij.org>
27095         * test/socket/test_unix.rb: disabled on cygwin.
27096           reported by Kouhei Yanagita.  [ruby-dev:29080]
27098 Fri Jul 21 23:57:26 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27100         * ruby.c (proc_options): script is never used while recursing.
27102 Fri Jul 21 21:21:08 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27104         * eval.c (rb_call0): include funcalled methods in caller list.
27105           fixed: [ruby-core:08290]
27107 Fri Jul 21 17:52:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27109         * object.c (rb_cstr_to_dbl): "9_e8" should consider "_e8" as
27110           trailing garbage so that it should return 9.0.  [ruby-dev:29088]
27112 Fri Jul 21 12:11:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27114         * ext/extmk.rb, lib/mkmf.rb (with_destdir): remove drive letter before
27115           prepending destdir on DOSISH.
27117 Fri Jul 21 04:17:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27119         * eval.c (rb_call): try local method look-up first for fcall, then
27120           normal method look-up.  [ruby-talk:202564]
27122         * eval.c (rb_get_method_body): save local method cache separately.
27124         * eval.c (search_method): export info whether method is local or
27125           not.
27127 Thu Jul 20 20:27:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27129         * object.c (rb_mod_attr): make Module#attr to be an alias to
27130           attr_reader.  [RCR#331]
27132 Thu Jul 20 15:07:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27134         * ruby.h: export classes/modules to implement sandbox.
27135           [ruby-core:08283]
27137 Wed Jul 19 19:40:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27139         * eval.c (rb_yield_0): should check args_args before lambda
27140           argument check.  [ruby-dev:29029]
27142 Tue Jul 18 23:53:59 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27144         * process.c (rb_f_system): shouldn't block SIGCHLD if it's not
27145           exist.
27147 Tue Jul 18 22:10:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27149         * process.c (rb_f_system): block SIGCHLD during the process
27150           execution, like glibc system(3) does.  [ruby-talk:202361]
27152 Tue Jul 18 23:10:43 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27154         * win32/win32.c (open_ifs_socket): should not use plain malloc.
27156         * win32/win32.c (rb_w32_opendir): should not use plain realloc.
27158 Tue Jul 18 18:05:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27160         * test/ruby/test_float.rb (TestFloat::test_strtod): update test to
27161           conform strtod change.
27163 Tue Jul 18 16:52:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27165         * eval.c (yield_under_i): argument should be passed in avalue
27166           form.  [ruby-dev:29044]
27168 Tue Jul 18 15:49:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27170         * pack.c (pack_unpack): propagate association array to copied
27171           string.  [ruby-core:08223]
27173         * pack.c (pack_unpack): return referenced string itself if it has
27174           same length as specified.  a patch from <nobu at ruby-lang.org>
27175           in [ruby-core:08225].
27177         * pack.c (pack_pack): taint 'p' packed strings.
27179 Tue Jul 18 15:19:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27181         * intern.h (st_foreach_safe): fix prototype.
27183         * node.h (NODE_LMASK): bigger than long on LLP64.
27185         * missing/vsnprintf.c (BSD__uqtoa): new function to support LLP64.
27186           all changes are derived from [ruby-dev:29045]
27188 Tue Jul 18 14:03:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27190         * lib/webrick/httpserver.rb (WEBrick::HTTPServer::unmount): remove
27191           inpect argument from sprintf.  [ruby-dev:29039]
27193 Tue Jul 18 10:53:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27195         * object.c (rb_cstr_to_dbl): limit out-of-range message.
27197         * util.c (ruby_strtod): return end pointer even if ERANGE occurred.
27198           fixed: [ruby-dev:29041]
27200 Mon Jul 18 00:43:05 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27202         * util.c (ruby_strtod): stop at dot not followed by digits.
27203           fixed: [ruby-dev:29036]
27205 Tue Jul 18 00:01:27 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27207         * ext/extmk.rb: remove LIBRUBY_SO if static linked extensions exist.
27209 Mon Jul 17 23:30:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27211         * configure.in (rb_cv_msvcrt): defaulted to msvcrt.  Workaround for a
27212           bug of cygwin 1.5.20.
27214 Mon Jul 17 22:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27216         * ext/io/wait/wait.c (io_ready_p): protoize.
27218 Mon Jul 17 13:43:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27220         * pack.c (define_swapx): should not use plain malloc.
27222         * ext/curses/curses.c (curses_getmouse): ditto.
27224 Mon Jul 17 12:58:41 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27226         * configure.in: should use ac_cv_lib_dl_dlopen=no on MinGW.
27228 Mon Jul 17 11:47:35 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27230         * st.c: still need to include config.h on some platforms.
27232 Sat Jul 15 01:09:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27234         * st.c (malloc): use xmalloc/xcalloc instead of plain
27235           malloc/calloc, to detect memory allocation failure.  see
27236           <http://www.nongnu.org/failmalloc/>.
27238 Fri Jul 14 13:08:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27240         * ext/tk/lib/tk.rb: add methods for new features of latest Tcl/Tk8.5.
27242         * ext/tk/lib/tk/namespace.rb: ditto.
27244 Fri Jul 14 02:30:12 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27246         * lib/monitor.rb: document patch from Hugh Sasse <hgs at dmu.ac.uk>.
27247           [ruby-core:08205]
27249 Fri Jul 14 00:10:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27251         * array.c (rb_ary_pop): may cause realloc oscillation.  a patch
27252           from MORITA Naoyuki <mlgetter at kidou.sakura.ne.jp>.
27253           [ruby-dev:29028]
27255 Thu Jul 13 22:23:56 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27257         * ext/tk/lib/tk/composite.rb: improve handling of the classname on the
27258           option database for the widget class which includes TkComposite.
27260 Thu Jul 13 00:40:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27262         * ruby.h (FIX2LONG): returns integer of size of VALUE.
27263           [ruby-dev:29024]
27265         * ruby.h (FIX2ULONG): ditto.
27267 Wed Jul 12 20:05:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27269         * parse.y (f_args): allow post mandatory arguments after optional
27270           arguments.  [ruby-dev:29014]
27272         * parse.y (new_args_gen): allow post_args without rest_args.
27274         * eval.c (formal_assign): ditto.
27276         * parse.y (new_args_gen): check post argument duplication.
27278 Tue Jul 11 20:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27280         * ruby.h: export rb_cMethod.  [ruby-talk:201259]
27282 Tue Jul 11 19:13:33 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27284         * ext/tk/lib/multi-tk.rb: remove restriction on the class of
27285           pseudo-toplevel.
27287 Tue Jul 11 18:00:57 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27289         * ext/tk/lib/multi-tk.rb: security fix.
27291 Tue Jul 11 17:28:08 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27293         * string.c (rb_str_dump): need to extend len for \b.
27295 Tue Jul 11 15:29:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27297         * bignum.c (rb_int2big): use SIGNED_VALUE.  [ruby-dev:29019]
27299         * bignum.c (rb_int2inum, rb_uint2inum): use VALUE sized integer.
27301         * bignum.c (rb_big2long, rb_big2ulong): ditto.
27303         * numeric.c (rb_num2long, rb_num2ulong): ditto.
27305         * numeric.c (check_int, check_uint): ditto.
27307         * bignum.c (rb_quad_pack): typo fixed.
27309 Tue Jul 11 13:40:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27311         * bignum.c (bignorm): sizeof(long) may be smaller than
27312           sizeof(VALUE).  [ruby-dev:29013]
27314         * ruby.h (FIXNUM_MAX): fixnum may be bigger than long.
27316         * ruby.h (SIGNED_VALUE): signed integer of size of VALUE.
27318 Mon Jul 10 23:37:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27320         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_doc): remove
27321           splat star from return statements.
27323         * lib/soap/rpc/proxy.rb (Proxy::Operation::response_obj): retrieve
27324           the first value from the result array if response has only one
27325           value.
27327 Mon Jul 10 22:00:00 2006  Shigeo Kobayashi  <shigek@ruby-lang.org>
27329         * ext/bigdecimal/bigdecimal.c: Allows '_' to appear within
27330           digits.  [ruby-dev:28872]
27332         * ext/bigdecimal/lib/bigdecimal/util.rb: Bug in to_r reported by
27333           [ruby-list:42533] fixed.
27335 Mon Jul 10 19:22:19 2006  Tanaka Akira  <akr@fsij.org>
27337         * gc.c (gc_sweep): expand heap earlier.
27338           reported by MORITA Naoyuki.  [ruby-dev:28960]
27340 Mon Jul 10 18:59:34 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27342         * ext/tk/lib/tk/font.rb: sorry. mistaken to patch.
27344 Mon Jul 10 18:46:52 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27346         * ext/tk/tcltklib.c: make SEGV risk lower at exit.
27348         * ext/tk/lib/tk.rb: ditto.
27350         * ext/tk/lib/multi-tk.rb: fail to call function-style methods on slave
27351           interpreters. The strategy (MultiTkIp_PseudoToplevel_Evaluable) to
27352           fix the problem is a little tricky. You may have to take care of
27353           conflicting with it.
27355         * ext/tk/lib/tk.rb: a little change for the pseudo-toplevel strategy.
27357         * ext/tk/lib/tk/font.rb: ditto.
27359         * ext/tk/lib/tk/msgcat.rb: ditto.
27361         * ext/tk/lib/tkextlib/itk/incr_tk.rb: ditto.
27363         * ext/tk/sample/demos-en/widget: fail to call function-style methods
27364           on sample scripts. To fix it, a strategy which similar to the way
27365           on MultiTiIp is used. Please take care when re-write and re-run a
27366           demo script on the Widget-Demo code viewer.
27368         * ext/tk/sample/demos-jp/widget: ditto.
27370 Mon Jul 10 17:32:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27372         * sample/test.rb: update test suites.
27374         * test/ruby/test_assignment.rb (TestAssignment::test_yield): ditto.
27376         * test/ruby/test_iterator.rb (TestIterator::test_itertest): ditto.
27378 Mon Jul 10 14:43:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27380         * eval.c (rb_call): remove erroneously restored prot_tag->blkid
27381           initialization.  [ruby-dev:28997]  [ruby-dev:29000]
27383 Mon Jul 10 13:58:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27385         * signal.c (install_nativethread_sighandler): commented out.
27387 Mon Jul 10 09:29:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27389         * eval.c (rb_clear_cache_for_remove): clear entries for included
27390           module.  fixed: [ruby-core:08180]
27392 Mon Jul 10 02:22:58 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27394         * eval.c (proc_invoke): should not overwrite block information in
27395           current frame.  [ruby-dev:28957]
27397         * eval.c (rb_yield_0): retrieve proper block object from the frame
27398           record.
27400         * eval.c (proc_alloc): return preserved block object if it's
27401           available.
27403 Mon Jul 10 01:48:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27405         * st.h (st_data_t): use pointer sized integer for st_data_t.
27406           [ruby-dev:28988]
27408 Sun Jul  9 18:06:47 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27410         * lib/mkmf.rb (try_constant): fix for value 1 at cross compiling.
27412         * lib/mkmf.rb (create_makefile): prevent substitution of macro
27413           definition.  fixed: http://www.yotabanana.com/lab/20060624.html#p02
27415 Sun Jul  9 07:58:48 2006  Ryan Davis  <ryand@zenspider.com>
27417         * lib/rdoc/parsers/parse_f95.rb: massive overhaul from Yasuhiro
27418           Morikawa including new file suffixes, function support, public
27419           variables and constants, derived-types, defined operators and
27420           assignments, namelists, and subroutine and function
27421           arguments. Truly massive.
27423         * lib/rdoc/diagram.rb: diagrams are now cached.
27425         * lib/irb/completion.rb: fixed a crasher when completing against
27426           an unnamed class/module.
27428         * lib/rdoc/parsers/parse_c.rb: private comment (--/++) support in
27429           C-file rdoc.
27431         * lib/debug.rb: minor clarification in help.
27433         * lib/pp.rb: minor clarification on exception.
27435 Sun Jul  9 00:54:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27437         * eval.c (next_jump): deal with destination of next.
27438           fixed: [ruby-core:08169]
27440 Fri Jul  7 17:49:16 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27442         * string.c (rb_str_ord): extract lower byte.  fixed: [ruby-dev:28980]
27444         * lib/jcode.rb (String#succ!): fix for 1.9.  fixed: [ruby-dev:28979]
27446 Fri Jul  7 14:05:03 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27448         * win32/Makefile.sub (config.h): define FUNC_STDCALL/FUNC_CDECL.
27449           from [ruby-dev:28970].
27451 Fri Jul  7 00:38:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27453         * hash.c (rb_hash_default): should not call default procedure if
27454           no key is given.  [ruby-list:42541]
27456 Thu Jul  6 23:30:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27458         * process.c (rb_proc_times): use sysconf(_SC_CLK_TCK) value prior to
27459           HZ and CLK_TCK.  fixed: [ruby-talk:200293]
27461 Thu Jul  6 21:50:06 2006  Minero Aoki  <aamine@loveruby.net>
27463         * ext/racc/cparse/cparse.c: sync with original code, rev 1.8.
27465         * ext/racc/cparse/cparse.c: should mark CparseParams objects.
27467         * lib/racc/parser.rb: sync with original code, rev 1.8.
27469         * lib/racc/parser.rb: update coding style.
27471 Wed Jul  5 05:28:45 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27473         * parse.y (block_param): should allow block argument after splat
27474           and post splat args.
27476 Wed Jul  5 01:12:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27478         * test/ruby/test_lambda.rb (TestLambdaParameters::test_lambda_as_iterator):
27479           -> style block no longer available.  [ruby-dev:28958]
27481 Tue Jul  4 21:48:56 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27483         * ruby.c (proc_options): suppress warning on DOSISH.
27485 Tue Jul  4 15:12:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27487         * eval.c (rb_call): should not set prot_tag->blkid since it would
27488           never catch breaks at this level.  [ruby-dev:28922]
27490 Tue Jul  4 04:48:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27492         * bignum.c: ruby 1.9 HEAD 64 bit warnings clean up from
27493           <ville.mattila at stonesoft.com>.   [ruby-core:08120]
27495 Mon Jul  3 19:04:38 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27497         * ext/tk/tcltklib.c (ip_make_menu_embeddable): help to make a menu
27498           widget embeddable (pack, grid, and so on) like as a general widget.
27499           However, an embeddable menu may require to be defined some event
27500           bindings for general use.
27502         * ext/tk/lib/tk/event.rb: [bug fix] Tk.callback_break and
27503           Tk.callback_continue don't work on MultiTkIp.
27505         * ext/tk/lib/multi-tk.rb: ditto.
27507         * ext/tk/lib/tk.rb: lack of Tk.callback_return.
27509         * ext/tk/lib/tk/menu.rb: improve creating clone menus.
27511 Mon Jul  3 14:42:06 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27513         * ext/etc/extconf.rb (PW_UID2VAL, PW_GID2VAL): defaulted to conversion
27514           from int, and sys/types.h needs to be included before grp.h.
27515           fixed: [ruby-dev:28938]
27517 Mon Jul  3 10:44:01 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27519         * io.c (popen_exec): close file descriptors other than standard I/Os.
27520           fixed: [ruby-dev:28924]
27522 Mon Jul  3 05:15:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27524         * test/openssl/test_asn1.c: String#[]= doesn't accept Integer.
27526 Mon Jul  3 01:14:15 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27528         * string.c (rb_str_inspect): encode \b (\010) for escape.
27529           [ruby-dev:28927]
27531         * string.c (rb_str_dump): ditto.
27533 Sun Jul  2 19:03:30 2006  Minero Aoki  <aamine@loveruby.net>
27535         * ext/racc/cparse/cparse.c: sync with original code, rev 1.7.
27537         * ext/racc/cparse/cparse.c: must require version.h to get
27538           RUBY_VERSION_CODE.
27540 Sun Jul  2 18:42:27 2006  Minero Aoki  <aamine@loveruby.net>
27542         * ext/racc/cparse/cparse.c: sync with original source code, rev
27543           1.6.
27545         * ext/racc/cparse/cparse.c: do not use rb_iterate to give a block
27546           to the method, use rb_block_call instead. [ruby-dev:28445]
27548 Sun Jul  2 11:22:03 2006  Tanaka Akira  <akr@m17n.org>
27550         * io.c (io_reopen): STDOUT.reopen(filename, "w+") didn't work.
27551           (rb_io_reopen): STDOUT.reopen(File.open(filename, "w+")) didn't work.
27553 Sat Jul  1 23:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27555         * eval.c (PUSH_FRAME): initialize frame->self.  [ruby-dev:28911]
27557 Sat Jul  1 17:00:42 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27559         * test/webrick/utils.rb: use Proc#yield instead of Proc#call.
27560           [ruby-dev:28914]
27562 Sat Jul  1 15:15:49 2006  Tanaka Akira  <akr@m17n.org>
27564         * test/socket/test_nonblock.rb: add timeout to send/receive
27565           an empty UDP packet.
27566           [ruby-dev:28820]
27568 Fri Jun 30 23:46:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27570         * configure.in: should test isinf for Solaris with GCC compiler.
27571           a patch from <ville.mattila at stonesoft.com>.  [ruby-core:07791]
27573         * configure.in: -shared patch from Andrew Morrow
27574           <andrew.c.morrow at gmail.com>.  [ruby-core:08100]
27576 Fri Jun 30 19:35:41 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
27578         * lib/webrick/httputils.rb (WEBrick::HTTPUtils._escape): should
27579           use String#ord to get ascii code from the one-character string.
27580           [ruby-dev:28901]
27582 Thu Jun 29 23:56:01 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27584         * gc.c (gc_mark_children): a bug in NODE_BLOCK_PASS marking.
27585           [ruby-dev:28908]
27587 Thu Jun 29 23:04:36 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27589         * parse.y: use ARGSPUSH instead of ARGSCAT to prevent too much
27590           splat expansion.
27592         * eval.c (when_check): need to handle ARGSPUSH as well.
27594         * eval.c (block_orphan): lambda and proc from method are always
27595           orphan.
27597         * gc.c (gc_mark_children): proper marking for NODE_LAMBDA.
27599 Thu Jun 29 22:47:30 2006  Tanaka Akira  <akr@m17n.org>
27601         * eval.c (SETUP_ARGS0): avoid GC problem.
27602           [ruby-dev:28902]
27604 Thu Jun 29 18:58:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27606         * ext/bigdecimal/bigdecimal.c (BigDecimal_version): fix patch
27607           failure.
27609 Thu Jun 29 18:00:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27611         * ext/bigdecimal/bigdecimal.c: add RDoc document.  a patch from
27612           mathew <meta at pobox.com>.   [ruby-core:07050]
27614 Wed Jun 28 14:53:09 2006  Eric Hodel  <drbrain@segment7.net>
27616         * lib/optparse.rb: RDoc patch from Robin Stocker <robin@nibor.org>
27617           [ruby-core:08087]
27619 Wed Jun 28 23:23:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27621         * object.c (rb_cstr_to_dbl): underscores should appear only
27622           between digits.  [ruby-dev:28891]
27624 Wed Jun 28 19:04:34 2006  Tanaka Akira  <akr@m17n.org>
27626         * test/socket/test_unix.rb: test_seqpacket_pair removed.
27627           [ruby-dev:28846]
27629 Wed Jun 28 13:51:21 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27631         * eval.c (when_check): arbitrary values are allowed after splats.
27632           fixed: [ruby-dev:28879]
27634 Wed Jun 28 09:16:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27636         * parse.y (primary): remove meaningless else-only case statement
27637           syntax.
27639 Wed Jun 28 08:08:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27641         * eval.c (rb_eval): problem to handle else part.  [ruby-dev:28873]
27643 Wed Jun 28 01:48:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27645         * eval.c (rb_eval): support splat in when expression list.
27646           [ruby-dev:28822]
27648         * eval.c (when_check): a new auxiliary function for case match.
27650         * eval.c (when_cond): ditto.
27652 Wed Jun 28 01:05:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27654         * object.c (rb_cstr_to_dbl): should not skip '_' at the beginning
27655           of a string.  [ruby-dev:28830]
27657         * bignum.c (rb_cstr_to_inum): ditto.
27659 Tue Jun 27 23:03:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27661         * string.c: RDoc update for =~ method.  a patch from Alex Young
27662           <alex at blackkettle.org>.  [ruby-core:08068]
27664 Tue Jun 27 22:47:18 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27666         * ext/tk/tcltklib.c: forgot to update TCLTKLIB_RELEASE_DATE.
27668         * ext/tk/lib/tk.rb (tk_tcl2ruby): [bug fix] sometimes fail to convert
27669           a tcl string to a ruby object if the tcl string includes "\n".
27671 Tue Jun 27 20:05:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27673         * io.c (pipe_open): backout unnecessary fix on 2006-06-26.
27674           [ruby-dev:28865]
27676         * eval.c (rb_yield_0): exact argument number check now done only
27677           for lambda Proc.
27679         * eval.c (rb_yield_0): add check for number of arguments, if
27680           there's one lambda block parameter.
27682 Tue Jun 27 16:04:05 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
27684         * win32/win32.h: define isascii on MinGW for msvcrt compatibility.
27686         * configure.in: set ac_cv_header_sys_time_h=no on MinGW
27687           for msvcrt compatibility.
27689 Tue Jun 27 11:36:02 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27691         * ext/etc/etc.c (setup_passwd, setup_group): allow bignum uid, gid and
27692           so on.  [ruby-talk:199102]
27694 Tue Jun 27 10:46:53 2006  Tanaka Akira  <akr@m17n.org>
27696         * eval.c (rb_yield_0): avoid core dump.  [ruby-dev:28840]
27698 Mon Jun 26 11:03:00 2006  Eric Hodel  <drbrain@segment7.net>
27700         * lib/rdoc/ri: Add options to limit the ri search path.
27702 Tue Jun 27 01:31:59 2006  Tanaka Akira  <akr@m17n.org>
27704         * ext/socket/socket.c (bsock_recv_nonblock): new method
27705           BasicSocket#recv_nonblock.
27706           (udp_recvfrom_nonblock): renamed from ip_recvfrom_nonblock.
27707           IPSocket#recvfrom_nonblock is moved to UDPSocket#recvfrom_nonblock.
27708           (unix_recvfrom_nonblock): removed.
27709           UNIXSocket#recvfrom_nonblock is removed.
27711 Tue Jun 27 00:52:40 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27713         * ext/ripper/eventids2.c (token_assoc): added tCHAR, which is not
27714           under 256 now.  fixed: [ruby-dev:28832]
27716 Mon Jun 26 23:42:57 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27718         * eval.c (call_trace_func): no check for argument number of the
27719           callback.  fixed: [ruby-dev:28812]
27721 Mon Jun 26 18:37:44 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27723         * ext/tk/tcltklib.c (ip_delete): fix SEGV when a slave-ip is
27724           deleted on callback.
27726 Mon Jun 26 15:40:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27728         * ext/socket/socket.c (sock_accept): revert to avoid ambiguity of
27729           argument evaluation order.  [ruby-dev:28861]
27731         * ext/socket/socket.c (sock_accept_nonblock): ditto.
27733 Mon Jun 26 10:47:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27735         * io.c (pipe_open): avoid closing uninitialized file descriptors.
27736           a patch from <tommy at tmtm.org> [ruby-dev:28600]
27738 Sun Jun 25 23:02:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27740         * Makefile.in, mkconfig.rb: catch-up for latest autoconf.
27742 Sun Jun 25 17:44:16 2006  Tanaka Akira  <akr@m17n.org>
27744         * parse.y (paren_args): wrap $2 by escape_Qundef because it may be
27745           Qundef.  [ruby-dev:28843]
27747 Sun Jun 25 17:18:33 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27749         * ext/win32ole/win32ole.c(ole_invoke): support some kind of
27750           method of word. [ruby-Bugs#3237]
27752         * test/win32ole/test_word.rb: ditto.
27754 Sat Jun 24 23:48:08 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27756         * parse.y: replace terminal token names with more descriptive
27757           name, i.e. kEND to keyword_end.  [ruby-list:42477]
27759 Sat Jun 24 23:37:41 2006  Tanaka Akira  <akr@m17n.org>
27761         * eval.c (rb_eval): use rb_ary_new2 instead of rb_ary_new4 to avoid
27762           GC problem.
27763           (rb_yield_values): use rb_ary_new2 instead of rb_ary_new4.
27765         * array.c (rb_ary_new4): don't set len as n if contents is not
27766           initialized.  make it safe with GC.
27768           [ruby-dev:28826]
27770 Fri Jun 23 23:35:32 2006  Tanaka Akira  <akr@m17n.org>
27772         * ruby.h, lib/drb/drb.rb, lib/drb/invokemethod.rb: remove Values class.
27773           [ruby-dev:28805]
27775 Fri Jun 23 17:27:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27777         * eval.c (rb_block_pass): removed.
27779         * eval.c (rb_thread_start_1): use rb_proc_yield() instead of
27780           rb_block_pass().  fixed: [ruby-dev:28794]
27782 Thu Jun 22 11:52:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27784         * lib/net/http.rb (Net::HTTPResponse): duplicated error 501;
27785           HTTPInternalServerError should be error 500.  [ruby-core:08037]
27787 Thu Jun 22 11:47:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27789         * variable.c (rb_mod_name): returns nil for anonymous modules.
27790           [ruby-talk:198440]
27792 Thu Jun 22 10:31:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27794         * string.c (rb_str_aref): "abc"[3] should not return an empty
27795           string but nil.  [ruby-dev:28786]
27797 Thu Jun 22 05:15:58 2006  Tanaka Akira  <akr@m17n.org>
27799         * ext/socket/socket.c (sock_s_socketpair): try GC only once.
27800           [ruby-dev:28778]
27802 Wed Jun 21 21:20:31 2006  Tadayoshi Funaba  <tadf@dotrb.org>
27804         * lib/date.rb (jd_to_commercial): now works fine even if in
27805           mathn-ized context.
27807 Wed Jun 21 17:29:57 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27809         * ext/socket/getaddrinfo.c (freeaddrinfo, get_name): fixed typo.
27811         * ext/tk/tcltklib.c (tcl_eval, tcl_global_eval): ditto.
27813         * ext/zlib/zlib.c (rscheck): constified.
27815 Wed Jun 21 17:18:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27817         * lib/pp.rb (PP::PPMethods::seplist): should have preserved
27818           original reference to the array.  [ruby-dev:28747]
27820 Wed Jun 21 14:35:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27822         * parse.y (block_param): do not use multiple assignment for a sole
27823           block parameter.  [ruby-dev:28710]
27825         * eval.c (rb_yield_0): pass a raw yielded value to a sole block
27826           parameter if a value is passed by yield.
27828         * eval.c (proc_invoke): args may not be an array.
27830         * eval.c (rb_proc_yield): pass original value without wrapping
27831           it in an array.
27833 Wed Jun 21 14:06:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27835         * parse.y (method_call): remove (fn)(args) style lambda
27836           invocation, add fn.(args) instead.
27838 Wed Jun 21 08:39:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27840         * lib/xmlrpc/create.rb (XMLRPC::Create::conv2value): merge Date
27841           and Time processing.  [ruby-core:08033]
27843 Wed Jun 21 03:01:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27845         * eval.c, file.c, etc.: code-cleanup patch from Stefan Huehner
27846           <stefan at huehner.org>.  [ruby-core:08029]
27848 Wed Jun 21 01:40:25 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27850         * parse.y (reswords): modifier token is no longer returned in fname
27851           state.  fixed: [ruby-dev:28775]
27853 Tue Jun 20 23:28:34 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27855         * ext/extmk.rb (parse_args): provisional catch-up for the recent changes.
27857         * lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto.
27859 Tue Jun 20 11:07:55 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27861         * eval.c (proc_invoke): intercept break and return from lambda
27862           Proc objects.  [ruby-dev:28742]
27864         * eval.c (proc_invoke): remove unnecessary YIELD_PROC_CALL flag.
27866         * eval.c (YIELD_EXACT_ARGS): renamed from YIELD_LAMBDA_CALL, which
27867           is no longer related to the behavior turned on by this flag.
27869         * eval.c (return_jump): no need to care about PROT_YIELD.
27871         * eval.c (break_jump): no jump to toplevel PROT_THREAD tag.
27873         * eval.c (rb_yield_0): fix confusion between lambda (which is a
27874           property of a proc) and pcall (which depends on whether it's
27875           called via yield or call).
27877         * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL.
27879         * eval.c (rb_block_pass): update blkid in prot_tag.
27881 Mon Jun 19 23:40:59 2006  NARUSE, Yui  <naruse@ruby-lang.org>
27883           * ext/nkf/lib/kconv.rb: remove default -m0 and fix document.
27885           * ext/nkf/nkf-8/{nkf.c, config.h, utf8tbl.c, utf8tbl.h}:
27886             imported nkf 2.0.7.
27888 Mon Jun 19 17:02:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27890         * sample/test.rb (proc_return3): return within non lambda block
27891           should terminate surrounding method.  [ruby-dev:28741]
27893 Mon Jun 19 13:22:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27895         * ext/socket/socket.c (unix_sysaccept): typo fixed.
27897         * ext/socket/socket.c (sock_connect): remove an unused local
27898           variable tmpaddr.
27900 Mon Jun 19 02:10:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27902         * ext/socket/socket.c (tcp_accept_nonblock): forgot to remove
27903           abandoned hacks.  [ruby-dev:28740]
27905 Mon Jun 19 00:00:17 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
27907         * ext/tk/lib/multi-tk.rb: fix bug: initialize improper tables.
27909 Sun Jun 18 20:28:43 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
27911         * ext/win32ole/win32ole.c (fole_methods): The return value
27912           of WIN32OLE#ole_methods should include PROPERTYPUTREF methods.
27914         * ext/win32ole/win32ole.c (fole_put_methods): The return value
27915           of WIN32OLE#ole_put_methods should include PROPERTYPUTREF methods.
27917         * test/win32ole/test_ole_methods.rb: ditto.
27919         * ext/win32ole/win32ole.c (ole_propertyput): support
27920           PROPERTYPUTREF. [ruby-talk:183042]
27922         * test/win32ole/test_propertyputref.rb: ditto.
27924 Sat Jun 17 23:42:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27926         * eval.c (Init_eval): add aliases invoke_method and
27927           invoke_functional_method corresponding send and funcall
27928           respectively.  [ruby-talk:197512]
27930         * parse.y (parser_yylex): returns the most typical keyword token
27931           on EXPR_FNAME.  [ruby-core:7995]
27933         * ext/socket/socket.c: protoize.
27935 Sat Jun 17 22:17:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27937         * lib/mathn.rb (Integer::prime_division): raise ZeroDivisionError
27938           on zeros.  [ruby-dev:28739]
27940 Sat Jun 17 14:53:32 2006  Tanaka Akira  <akr@m17n.org>
27942         * lib/pathname.rb (Kernel#Pathname): new method.
27944 Sat Jun 17 02:01:00 2006  Tanaka Akira  <akr@m17n.org>
27946         * lib/pp.rb (Kernel#pretty_inspect): defined for pretty printed
27947           string.
27949 Fri Jun 16 01:41:00 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27951         * eval.c (rb_proc_arity): get rid of segfault for mere splat.
27953         * gc.c (gc_mark_children): NODE_BLOCK_PASS needs u3 to be marked.
27955 Thu Jun 15 22:06:56 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27957         * parse.y (then): remove ':' from 'then' and 'do' rules.
27959 Wed Jun 14 18:00:20 2006  Eric Hodel  <drbrain@segment7.net>
27961         * enum.c (enum_any): Documentation typo.
27963 Wed Jun 14 15:01:09 2006  Eric Hodel  <drbrain@segment7.net>
27965         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#warn): Don't print
27966           warnings when -q is set.
27968 Wed Jun 14 16:11:37 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
27970         * eval.c (rb_f_method_name, rb_f_callee_name): document typo.
27972 Wed Jun 14 15:19:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27974         * hash.c (env_aset): raise TypeError on nil with more descriptive
27975           message.  [ruby-core:07990]
27977 Tue Jun 13 17:22:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27979         * ext/socket/socket.c (Init_socket): remove obsolete constants:
27980           IPsocket, TCPsocket, SOCKSsocket, TCPserver, UDPsocket,
27981           UNIXsocket, UNIXserver.
27983 Tue Jun 13 09:07:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
27985         * eval.c (formal_assign): post splat arguments should have had
27986           higher priority than optional arguments, since they are
27987           mandatory.  [ruby-dev:28715]
27989         * eval.c (VIS_MASK): broken. should be 15.  [ruby-dev:28715]
27991         * io.c (argf_getc): should return one-character string.
27992           [ruby-dev:28715]
27994         * io.c (rb_io_readchar): ditto.
27996 Sun Jun 11 23:20:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
27998         * object.c (sym_call): disallow to call private methods.
28000         * lib/optparse.rb (OptionParser::Arguable#getopts): pass self to the
28001           parser.
28003 Sun Jun 11 09:56:41 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28005         * win32/win32.h (write): not need to define on bcc.
28007 Sun Jun 11 08:30:33 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28009         * lib/optparse.rb (OptionParser#getopts): new methods.
28011 Sun Jun 11 07:27:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28013         * lib/rdoc/ri/ri_writer.rb: use String#ord.
28015 Sun Jun 11 04:38:20 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28017         * object.c (sym_to_proc): imported Symbol#to_proc from ActiveSupport.
28019 Sat Jun 10 18:02:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28021         * ext/bigdecimal/lib/bigdecimal/newton.rb (Newton::nlsolve): typo
28022           fixed: raize -> raise.  [ruby-talk:196608]
28024 Sat Jun 10 17:49:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28026         * string.c (rb_str_ord): new method.
28028         * parse.y (rbracket): allow optional newline before closing
28029           brackets.
28031 Sat Jun 10 15:12:29 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28033         * eval.c (rb_f_method_name, rb_f_callee_name): new functions.
28034           new global method `__method__' and `__callee__'.
28036 Sat Jun 10 10:13:13 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28038         * lib/getoptlong.rb (GetoptLong#set_options): receive arguments
28039           as Array.
28041         * lib/irb/slex.rb: use Proc#yield.
28043         * lib/rdoc/markup/simple_markup/inline.rb: follow the new behavior
28044           of String#[].
28046         * lib/rdoc/ri/ri_writer.rb: ditto.
28048 Sat Jun 10 08:17:23 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28050         * math.c (log2): may be a macro.
28052         * parse.y (args, block_param, f_args): pass f_post_arg to #params.
28054         * util.c (powersOf10): constified.
28056         * ext/readline/readline.c: include extconf.h first.
28058         * ext/ripper/eventids2.c: removed tLAMBDA_ARG.
28060         * ext/tk/tcltklib.c (lib_fromUTF8_core): removed conflict.
28062         * ext/tk/tkutil/tkutil.c (cbsubst_get_subst_arg): rb_id2name() is
28063           defined as const now.
28065         * ext/win32ole/win32ole.c (fole_missing): ditto.
28067         * lib/mkmf.rb (create_makefile): force to create extconf header.
28069         * lib/optparse.rb (order!): use Proc#yield.
28071 Sat Jun 10 06:53:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28073         * eval.c (CALLARGS): remove last semicolon. C90 compiler doesn't
28074           allow any lines (even if they're empty) within variable
28075           declarations.
28077 Fri Jun  9 09:56:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28079         * sprintf.c (rb_str_format): allow %c to print one character
28080           string (e.g. ?x).
28082 Thu Jun  8 14:00:02 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28084         * win32/win32.[ch] (rb_w32_read, rb_w32_write): new functions.
28085           use recv() and send() when fd is socket. fixed: [ruby-dev:28694]
28087 Wed Jun  7 16:22:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28089         * lib/tempfile.rb (Tempfile::make_tmpname): put dot between
28090           basename and pid.  [ruby-talk:196272]
28092 Wed Jun  7 16:16:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28094         * parse.y (do_block): remove -> style block.
28096         * parse.y (parser_yylex): remove tLAMBDA_ARG.
28098 Wed Jun  7 14:51:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28100         * win32/win32.c (errmap): add some winsock errors.
28102 Wed Jun  7 09:14:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28104         * eval.c (rb_call0): binding for the return event hook should have
28105           consistent scope.  [ruby-core:07928]
28107 Tue Jun  6 23:25:49 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28109         * eval.c (proc_invoke): return behavior should depend whether it
28110           is surrounded by a lambda or a mere block.
28112 Mon Jun  5 18:12:12 2006  Tanaka Akira  <akr@m17n.org>
28114         * ext/socket/socket.c (sock_s_unpack_sockaddr_in): reject
28115           non-AF_INET/AF_INET6 sockaddr.
28116           (sock_s_unpack_sockaddr_un): reject non-AF_UNIX sockaddr.
28117           [ruby-dev:28691]
28119 Sun Jun  4 20:40:19 2006  Tanaka Akira  <akr@m17n.org>
28121         * ext/socket/socket.c: fix sockaddr_un handling.
28122           [ruby-dev:28677]
28124 Sat Jun  3 23:53:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28126         * eval.c (formal_assign): handles post splat arguments.
28128         * eval.c (rb_call0): ditto.
28130 Sat Jun  3 13:10:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28132         * st.c (strhash): use FNV-1a hash.
28134 Fri Jun  2 20:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28136         * parse.y (parser_yylex): removed experimental ';;' terminator.
28138 Fri Jun  2 19:00:40 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28140         * ext/openssl/extconf.rb: use create_header.
28142         * ext/openssl/ossl.h, ext/openssl/openssl_missing.h:
28143           include RUBY_EXTCONF_H.
28145 Fri Jun  2 17:16:52 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28147         * lib/mkmf.rb (CLEANINGS): remove extconf.h by distclean if created.
28149 Fri Jun  2 00:11:19 2006  Tanaka Akira  <akr@m17n.org>
28151         * ext/socket/socket.c (s_recvfrom): alen may be zero with UNIXSocket
28152           too.  (tested on NetBSD 3.0)
28153           (s_recvfrom_nonblock): extracted from sock_recvfrom_nonblock.
28154           (sock_recvfrom_nonblock): use s_recvfrom_nonblock.
28155           (ip_recvfrom_nonblock): new method: IPSocket#recvfrom_nonblock
28156           (unix_recvfrom_nonblock): new method: UNIXSocket#recvfrom_nonblock
28157           (s_accept_nonblock): extracted from sock_accept_nonblock.
28158           (sock_accept_nonblock): use s_accept_nonblock.
28159           (tcp_accept_nonblock): new method: TCPServer#accept_nonblock
28160           (unix_accept_nonblock): new method: UNIXServer#accept_nonblock
28162 Thu Jun  1 19:12:37 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28164         * win32/win32.c (rb_w32_cmdvector): backslashes inside single-quotes
28165           no longer has special meanings.  fixed: [ruby-list:42311]
28167 Thu Jun  1 17:55:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28169         * eval.c (rb_node_arity): should be aware of post splat arguments.
28171         * eval.c (rb_proc_arity): ditto.
28173 Thu Jun  1 16:17:26 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28175         * win32/win32.c (rb_w32_getcwd): runtime's getcwd() will not success
28176           if the length of the cwd is longer than MAX_PATH.
28177           fixed [ruby-list:42335]
28179 Thu Jun  1 16:07:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28181         * parse.y (f_args): syntax rule enhanced to support arguments
28182           after the splat.
28184         * parse.y (mlhs_basic): ditto for multiple assignments
28186         * parse.y (block_param): ditto for block parameters.
28188         * parse.y (f_post_arg): mandatory formal arguments after the splat
28189           argument.
28191         * parse.y (new_args_gen): generate nodes for mandatory formal
28192           arguments after the splat argument.
28194         * eval.c (rb_eval): dispatch mandatory formal arguments after the
28195           splat argument.
28197 Thu Jun  1 11:33:32 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28199         * win32/win32.c (rb_w32_getcwd): set errno if not set.
28200           fixed [ruby-list:42346]
28202 Thu Jun  1 00:45:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28204         * parse.y (args): allow more than one splat in the argument list.
28206 Wed May 31 18:38:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28208         * parse.y (method_call): allow aref [] to accept all kind of
28209           method argument, including assocs, splat, and block argument.
28211         * eval.c (SETUP_ARGS0): prepare block argument as well.
28213 Tue May 30 18:13:53 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28215         * lib/mathn.rb (Integer): remove Integer#gcd2. [ruby-core:07931]
28217 Mon May 29 22:40:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28219         * eval.c (error_line): print receivers true/false/nil specially.
28221         * eval.c (rb_proc_yield): handles parameters in yield semantics.
28223         * eval.c (nil_yield): gives LocalJumpError to denote no block
28224           error.
28226         * io.c (rb_io_getc): now takes one-character string.
28228 Sat May 27 22:46:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28230         * eval.c (proc_invoke): save and restore block in the current frame.
28231           fixed: [ruby-core:07833], [ruby-talk:191639]
28233 Sat May 27 11:29:46 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28235         * ext/extmk.rb (extmake): remove extinit files if no statically linked
28236           extensions.
28238 Fri May 26 19:56:46 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28240         * string.c (rb_str_hash): use FNV-1a hash from Fowler/Noll/Vo
28241           hashing algorithm.
28243 Fri May 26 09:05:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28245         * ruby.h, lib/mkmf.rb (create_header): clear command line options for
28246           macros moved to extconf.h.
28248         * ext/extmk.rb (extract_makefile, extmk): made RUBY_EXTCONF_H and
28249           EXTSTATIC permanent.
28251         * ext/{dbm,digest/*,socket,zlib}/extconf.rb: used $defs and $INCFLAGS.
28253         * {bcc32,win32,wince}/Makefile.sub (COMPILE_C, COMPILE_CXX): added
28254           $(INCFLAGS).
28256         * lib/mkmf.rb (configuration): add $defs unless extconf.h was created.
28258 Thu May 25 01:52:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28260         * lib/mkmf.rb (pkg_config): particular config commands support.
28262         * ext/extmk.rb: deal with $static set in extconf.rb.
28264         * mkconfig.rb: merge multiple entries to an entry with multiple lines.
28266         * lib/mkmf.rb: allow a series of commands to link.
28268         * win32/Makefile.sub: embed manifests.
28270         * win32/setup.mak: suffix OS name by runtime version.
28272 Wed May 24 23:52:11 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28274         * configure.in (ac_install_sh): ignore dummy install-sh.
28275           [ruby-talk:193876]
28277 Wed May 24 17:55:13 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28279         * string.c (rb_str_aref): str[0] now returns 1 character string,
28280           instead of a fixnum.  [Ruby2]
28282         * parse.y (parser_yylex): ?c now returns 1 character string,
28283           instead of a fixnum.  [Ruby2]
28285         * string.c (rb_str_aset): no longer support fixnum insertion.
28287 Wed May 24 03:10:44 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28289         * ext/openssl/lib/openssl/ssl.rb
28290           (OpenSSL::SSL::SocketForwarder#setsockopt,getsockopt): typo fixed.
28292 Mon May 22 16:32:03 2006  Tanaka Akira  <akr@m17n.org>
28294         * rubyio.h (rb_io_set_nonblock): declared.
28296         * io.c (rb_io_set_nonblock): new function.
28297           (io_getpartial): nonblocking read support.
28298           (io_read_nonblock): new method: IO#read_nonblock.
28299           (io_write_nonblock): new method: IO#write_nonblock.
28301         * ext/socket/socket.c (s_accept): retry for EWOULDBLOCK.
28302           revert [ruby-talk:113807].
28303           (sock_connect_nonblock): new method: Socket#connect_nonblock.
28304           (sock_accept_nonblock): new method: Socket#accept_nonblock.
28305           (sock_recvfrom_nonblock): new method: Socket#recvfrom_nonblock.
28307           [ruby-core:7917]
28309 Mon May 22 15:57:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28311         * eval.c (umethod_bind): should not update original class.
28312           [ruby-dev:28636]
28314 Mon May 22 13:38:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28316         * eval.c (ev_const_get): should support constant access from
28317           within instance_eval().  [ruby-dev:28327]
28319 Sun May 21 09:50:31 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28321         * regexec.c: add STK_NULL_CHECK_END to IS_TO_VOID_TARGET().
28322           [ruby-list:42234]
28324 Thu May 18 22:37:20 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28326         * lib/webrick/config.rb (WEBrick::Config::HTTP): add new parameters,
28327           :InputBufferSize and :OutputBufferSize.
28329         * lib/webrick/utils.rb (WEBrick::Utils.timeout): add new timeout
28330           method. this implementation is expected to be compatible with
28331           timeout.rb and faster than timeout.rb.
28333         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#_read_data):
28334           Timeout.timeout is replaced by WEBrick::Utils.timeout.
28336         * lib/webrick/httprequest.rb: WEBrick::HTTPRequest::BUFSIZE is
28337           replaced by config[:InputBufferSize].
28339         * lib/webrick/httpresposne.rb: WEBrick::HTTPResponse::BUFSIZE is
28340           replaced by config[:OutputBufferSize].
28342         * lib/webrick/server.rb: get rid of unnecessary require.
28344         * test/webrick/test_utils.rb: test for WEBrick::Utils.timeout.
28346 Thu May 18 17:51:32 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28348         * time.c (time_timeval): should round for usec floating
28349           number.  [ruby-core:07896]
28351         * time.c (time_add): ditto.
28353 Thu May 18 00:42:12 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28355         * ext/extmk.rb, lib/mkmf.rb: use BUILD_FILE_SEPARATOR in Makefiles.
28357 Wed May 17 17:55:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28359         * dir.c (sys_warning): should not call a vararg function
28360           rb_sys_warning() indirectly.  [ruby-core:07886]
28362 Tue May 16 17:23:19 2006    <sinara@blade.nagaokaut.ac.jp>
28364         * numeric.c (flo_divmod): the first element of Float#divmod should
28365           be an integer. [ruby-dev:28589]
28367         * test/ruby/test_float.rb: add tests for divmod, div, modulo and remainder.
28369 Tue May 16 15:34:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28371         * re.c (rb_reg_initialize): should not allow modifying literal
28372           regexps.  frozen check moved from rb_reg_initialize_m as well.
28374 Tue May 16 09:20:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28376         * re.c (rb_reg_initialize): should not modify untainted objects in
28377           safe levels higher than 3.
28379         * re.c (rb_memcmp): type change from char* to const void*.
28381         * dir.c (dir_close): should not close untainted dir stream.
28383         * dir.c (GetDIR): add tainted/frozen check for each dir operation.
28385 Mon May 15 21:37:12 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28387         * re.c (rb_reg_prepare_re): don't use onig_recompile().
28389 Mon May 15 17:42:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28391         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_symbol_arg):
28392           typo fixed.  a patch from Florian Gross <florg at florg.net>.
28394 Sat May 13 16:14:05 2006  Tanaka Akira  <akr@m17n.org>
28396         * lib/pp.rb (PP.mcall): new method.
28397           (Struct#pretty_print): call Kernel#class and Struct#members even if
28398           overridden.
28399           (Struct#pretty_print_cycle): ditto.
28400           [ruby-core:7865]
28402 Fri May 12 15:54:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28404         * eval.c (EXEC_EVENT_HOOK): trace_func may remove itself from
28405           event_hooks.  no guarantee for arbitrary hook deletion.
28406           [ruby-dev:28632]
28408 Thu May 11 19:57:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28410         * util.c (ruby_strtod): differ addition to minimize error.
28411           [ruby-dev:28619]
28413 Thu May 11 18:30:11 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28415         * ext/openssl/ossl_cipher.c (add_cipher_name_to_ary): should return
28416           value. [ruby-dev:28627]
28418 Thu May 11 18:10:43 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28420         * util.c (ruby_strtod): should not raise ERANGE when the input
28421           string does not have any digits.  [ruby-dev:28629]
28423 Wed May 10 23:40:21 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28425         * oniguruma.h: Version 4.0.3
28427         * regexec.c: ditto.
28429 Mon May  8 09:10:31 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28431         * ext/openssl/extconf.rb: add check for OBJ_NAME_do_all_sorted.
28433         * ext/openssl/ossl_cipher.c (ossl_s_ciphers): new method
28434           OpenSSL::Cipher.ciphers. it returns all the cipher names.
28436         * ext/openssl/ossl_cipher.c (ossl_cipher_init): refine warning message.
28438         * ext/openssl/lib/openssl/cipher.rb: reimplement without eval() and
28439           add constants AES128, AES192, AES256. [ruby-dev:28610]
28441         * ext/openssl/lib/openssl/digest.rb: reimplement without eval().
28443         * test/openssl/test_cipher.rb, test_digest: fix about reimplemented
28444           features.
28446         * sample/openssl/cipher.rb: rewrite all.
28448 Sun May  7 03:09:51 2006  Stephan Maka  <stephan@spaceboyz.net>
28450         * lib/resolv.rb (Resolv::DNS::Requester::ConnectedUDP#initialize):
28451           Use AF_INET6 for nameservers containing colons.
28453 Sat May  6 23:40:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28455         * eval.c (proc_invoke): should restore old ruby_frame->block.
28456           thanks to ts <decoux at moulon.inra.fr>.  [ruby-core:07833]
28457           also fix [ruby-dev:28614] as well.
28459 Sat May  6 00:38:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28461         * signal.c (trap): sig should be less then NSIG.  Coverity found
28462           this bug.  a patch from Kevin Tew <tewk at tewk.com>.
28463           [ruby-core:07823]
28465 Thu May  4 22:13:22 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28467         * math.c (math_log2): add new method inspired by
28468           [ruby-talk:191237].
28470         * math.c (math_log): add optional base argument to Math::log().
28471           [ruby-talk:191308]
28473 Thu May  4 02:24:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28475         * ext/syck/emitter.c (syck_scan_scalar): avoid accessing
28476           uninitialized array element.  a patch from Pat Eyler
28477           <rubypate at gmail.com>.  [ruby-core:07809]
28479         * array.c (rb_ary_fill): initialize local variables first.  a
28480           patch from Pat Eyler <rubypate at gmail.com>.  [ruby-core:07810]
28482         * ext/syck/yaml2byte.c (syck_yaml2byte_handler): need to free
28483           type_tag.  a patch from Pat Eyler <rubypate at gmail.com>.
28484           [ruby-core:07808]
28486 Wed May  3 02:12:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28488         * ext/socket/socket.c (make_hostent_internal): accept ai_family
28489           check from Sam Roberts <sroberts at uniserve.com>.
28490           [ruby-core:07691]
28492 Mon May  1 17:58:16 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28494         * ext/win32ole/win32ole.c (add_event_call_back): should not
28495           delete event handler when the event name is not entried.
28497 Mon May  1 08:32:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28499         * ext/win32ole/win32ole.c (ole_param_ole_type): should return
28500           "unknown type" string when ITypeInfo::GetFuncDesc failed.
28502 Sat Apr 29 22:43:37 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28504         * ext/openssl/ossl_asn1.c (ossl_asn1_decode0): should initialize
28505           flag. [ruby-core:07785]
28507 Fri Apr 28 10:53:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28509         * util.c (ruby_strtod): should not cut off 18 digits for no
28510           reason.  [ruby-core:07796]
28512 Thu Apr 27 01:38:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28514         * array.c (rb_ary_fill): internalize local variable "beg" to
28515           pacify Coverity.  [ruby-core:07770]
28517 Wed Apr 26 16:59:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28519         * pack.c (pack_unpack): now supports CRLF newlines.  a patch from
28520           <tommy at tmtm.org>.  [ruby-dev:28601]
28522 Wed Apr 26 16:55:19 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28524         * applied code clean-up patch from Stefan Huehner
28525           <stefan at huehner.org>.  [ruby-core:07764]
28527 Tue Apr 25 18:00:05 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28529         * ext/tk/tcltklib.c (delete_slaves): maybe increment the reference
28530           count of a NULL Tcl_Obj [ruby-core:07759].
28532 Tue Apr 25 07:55:31 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28534         * lib/jcode.rb (String::tr_s): should have translated non
28535           squeezing character sequence (i.e. a character) as well.  thanks
28536           to Hiroshi Ichikawa <gimite at gimite.ddo.jp> [ruby-list:42090]
28538 Fri Apr 21 15:19:13 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28540         * ext/tk/tcltklib.c (lib_eventloop_ensure): refer freed pointer
28541           [ruby-core:07744] and memory leak.
28543 Fri Apr 21 12:14:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28545         * ext/socket/socket.c: document update patch from Sam Roberts
28546           <sroberts at uniserve.com>.  [ruby-core:07701]
28548 Thu Apr 20 08:43:54 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28550         * lib/mathn.rb (Integer): need not to remove gcd2.  a patch from
28551           NARUSE, Yui <naruse at airemix.com>.  [ruby-dev:28570]
28553 Wed Apr 19 13:55:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28555         * parse.y (arg): too much NEW_LIST()
28557         * eval.c (SETUP_ARGS0): remove unnecessary access to nd_alen.
28559 Wed Apr 19 11:57:04 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28561         * eval.c (rb_eval): use ARGSCAT for NODE_OP_ASGN1.
28562           [ruby-dev:28585]
28564         * parse.y (arg): use NODE_ARGSCAT for placeholder.
28566 Wed Apr 19 11:13:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28568         * lib/getoptlong.rb (GetoptLong::get): RDoc update patch from
28569           mathew <meta at pobox.com>.  [ruby-core:07738]
28571 Wed Apr 19 10:13:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28573         * variable.c (rb_const_set): raise error when no target klass is
28574           supplied.  [ruby-dev:28582]
28576 Tue Apr 18 17:40:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28578         * ext/tk/lib/multi-tk.rb: add a binding to a container for a slave IP.
28580         * ext/tk/lib/tk.rb: update RELEASE_DATE.
28582         * ext/tk/tcltklib.c: forget to reset a Tcl interpreter.
28584         * ext/tk/stubs.c: fix potential bugs about handling rb_argv0.
28586 Mon Apr 10 01:03:10 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28588         * prec.c (prec_prec_f): documentation patch from
28589           <gerardo.santana at gmail.com>.  [ruby-core:07689]
28591 Sat Apr  8 02:34:34 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28593         * bignum.c (rb_big_pow): second operand may be too big even if
28594           it's a Fixnum.  [ruby-talk:187984]
28596 Sat Apr  8 02:12:38 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28598         * README.EXT: update symbol description.  [ruby-talk:188104]
28600 Sat Apr  8 18:06:28 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28602         * ext/win32ole/win32ole.c: add WIN32OLE_METHOD#inspect,
28603           WIN32OLE_PARAM#inspect.
28605         * test/win32ole/test_win32ole_method.rb: ditto.
28607         * add test/win32ole/test_win32ole_param.rb.
28609 Fri Apr  7 22:11:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28611         * ext/win32ole/win32ole.c(foletypelib_initialize): WIN32OLE_TYPELIB.new
28612           accepts OLE file.
28614         * test/win32ole/test_win32ole_typelib.rb(test_initialize): ditto.
28616 Thu Apr  6 23:28:47 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28618         * COPYING: explicitly note GPLv2.  [ruby-talk:187922]
28620 Thu Apr  6 16:43:06 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28622         * intern.h (rb_obj_instance_exec, rb_mod_module_exec): add declaration.
28624 Thu Apr  6 11:18:37 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28626         * ext/tk/lib/tk/panedwindow.rb: lack of arguments. [ruby-core:7681]
28628 Thu Apr  6 01:04:47 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
28630         * ext/tk/tcltklib.c: fix SEGV when embedding to an application.
28631           [ruby-core:7600]
28633         * ext/tk/tcltklib.c: fix SEGV at exit. [ruby-talk:186489]
28635         * ext/tk/tkutil/tkutil.c: follow to changing specification of
28636           instance_eval on ruby-1.9.x.
28638         * ext/tk/lib/tk.rb: ditto.
28640         * ext/tk/lib/multi-tk.rb: ditto.
28642         * ext/tk/lib/tk.rb: remove warning about redefinition of methods.
28644         * ext/tk/lib/tk/variable.rb: remove warning about unseting Tcl
28645           variables.
28647 Wed Apr  5 00:22:54 2006  Tanaka Akira  <akr@m17n.org>
28649         * lib/pathname.rb: use a subclass for instantiation except
28650           methods take pathname argument.  suggested by Evan Phoenix.
28651           [ruby-core:7618]
28653 Tue Apr  4 22:15:41 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28655         * parse.y: remove some obsolete syntax rules (unparenthesized
28656           method calls in argument list).
28658 Sat Apr  1 15:11:27 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28660         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#inspect,
28661           WIN32OLE_VARIABLE#inspect
28663         * remove ext/win32ole/tests/testOLEVARIABLE.rb, testOLETYPE.rb
28664           testOLETYPELIB.rb.
28666         * testall.rb: ditto.
28668         * add test/win32ole
28670 Fri Mar 31 14:24:55 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
28672         * enumerator.c (enumerator_with_index): removed suspicious return
28673           statement.
28675 Wed Mar 29 23:06:48 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28677         * ext/win32ole/win32ole.c (ole_invoke): change the behavior of
28678           WIN32OLE#[], WIN32OLE#[]=. These methods invoke DISPID_VALUE.
28680         * ext/win32ole/sample/excel2.rb: ditto.
28682         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
28684 Wed Mar 29 10:11:31 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28686         * ext/nkf/nkf-utf8/nkf.c (nkf_each_char_to_hex, encode_fallback_subchar,
28687           e2w_conv): support C90 compiler.
28689 Mon Mar 27 22:45:37 2006  NARUSE, Yui  <naruse@ruby-lang.org>
28691         * ext/nkf/nkf-utf8/{nkf.c, utf8tbl.c}: imported nkf 2.0.6.
28692           * Add --ic / --oc option and mapping tables.
28693           * Add fallback option.
28694           * Add --no-best-fit-chars option.
28695           * Fix some bugs.
28697         * ext/nkf/nkf.c (nkf_split_options): added for parse option string.
28699         * ext/nkf/lib/kconv.rb (Kconv.to*): add -m0.
28700           Note that Kconv.to* still imply -X.
28702         * ext/nkf/test.rb: Removed.  Obsolete by test/nkf.
28704         * ext/.document: enabled documents in nkf and kconv
28706         * ext/nkf/nkf.c, ext/nkf/lib/kconv.rb: Add rdoc.
28708 Mon Mar 27 03:17:21 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28710         * eval.c (rb_call0): insecure calling should be checked for non
28711           NODE_SCOPE method invocations too.
28713         * eval.c (rb_alias): should preserve the current safe level as
28714           well as method definition.
28716 Sun Mar 26 22:02:51 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28718         * re.c: refactoring for options.
28720         * parse.y: ditto.
28722 Fri Mar 24 21:11:02 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28724         * re.c (match_aref): RDoc description updated.
28726         * string.c (rb_str_sub): ditto.
28728         * string.c (rb_str_gsub): ditto.
28730 Fri Mar 24 17:20:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28732         * process.c (rb_f_sleep): remove RDoc description about SIGALRM
28733           which is not valid on the current implementation. [ruby-dev:28464]
28735 Thu Mar 23 21:40:47 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28737         * re.c (rb_reg_regsub): prohibit \1, \2 ...\9 in replaced string
28738           for named regex pattern.
28740 Thu Mar 23 21:06:23 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28742         * oniguruma.h: Version 4.0.2
28744         * regparse.c: ditto.
28746         * regcomp.c ditto.
28748         * regerror.c: ditto.
28750 Thu Mar 23 10:47:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28752         * eval.c (method_missing): should support argument splat in
28753           super.  a bug in combination of super, splat and
28754           method_missing.  [ruby-talk:185438]
28756 Thu Mar 23 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28758         * re.c (rb_reg_regsub): add back reference by name \k<name> in
28759           replace string.
28761         * re.h: add regexp argument to rb_reg_regsub().
28763         * string.c (rb_str_sub_bang): ditto.
28765         * string.c (str_gsub): ditto.
28767 Tue Mar 21 22:14:01 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
28769         * re.c (match_alloc): initialize member regexp.
28771         * re.c (match_aref): add String and Symbol argument. [ruby-dev:28448]
28773         * re.h: add member regexp to RMatch.
28775         * gc.c (gc_mark_children): add gc_mark() to regexp member.
28777 Mon Mar 20 12:05:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28779         * configure.in: Solaris SunPro compiler -rapth patch from
28780           <kuwa at labs.fujitsu.com>.  [ruby-dev:28443]
28782 Mon Mar 20 11:12:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28784         * ext/win32ole/win32ole.c (folevariant_value): could not compile
28785           with C90 compiler.
28787 Mon Mar 20 09:40:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28789         * configure.in: remove enable_rpath=no for Solaris.
28790           [ruby-dev:28440]
28792 Sun Mar 19 09:46:30 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28794         * ext/win32ole/win32ole.c (ole_val2olevariantdata): change behavior
28795           of converting  OLE Variant object with VT_ARRAY|VT_UI1 and Ruby
28796           String object.
28798         * ext/win32ole/win32ole.c (folevariant_value): ditto.
28800         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
28802 Wed Mar 15 16:51:11 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28804         * lib/mkmf.rb (create_makefile): support libraries without *.so.
28806 Wed Mar 15 16:39:29 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
28808         * ext/openssl/ossl_ssl.c, ext/openssl/ossl_nsspki.c: should use
28809           "rb_str_new(0, 0)" to make empty string.
28811 Sun Mar 12 17:02:10 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
28813         * ext/win32ole/win32ole.c(ole_val2olevariantdata): support VT_ARRAY in
28814           WIN32OLE_VARIANT.new().
28816         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
28818         * ext/win32ole/tests/testOLEPARAM.rb: test method name should not be
28819           duplicated.
28821 Sat Mar 11 14:24:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28823         * ruby.1: a clarification patch from David Lutterkort
28824           <dlutter at redhat.com>.  [ruby-core:7508]
28826 Sun Mar  5 18:40:58 2006  Minero Aoki  <aamine@loveruby.net>
28828         * lib/fileutils.rb: do not repeat command options.
28830 Sun Mar  5 18:35:03 2006  Minero Aoki  <aamine@loveruby.net>
28832         * lib/net/http.rb (send_request_with_body): #content_type never
28833           return false, use #main_type instead. [ruby-core:07476]
28835 Sat Mar  4 15:26:40 2006  Tanaka Akira  <akr@m17n.org>
28837         * gc.c (id2ref): fix symbol test.
28839 Sat Mar  4 01:08:07 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28841         * lib/rdoc/ri/ri_paths.rb (RI::Paths): adding paths from rubygems
28842           directories.  a patch from Eric Hodel <drbrain at segment7.net>.
28843           [ruby-core:07423]
28845 Fri Mar  3 17:59:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28847         * eval.c (rb_clear_cache_by_class): clearing wrong cache.
28849 Fri Mar  3 21:22:42 2006  Tanaka Akira  <akr@m17n.org>
28851         * lib/fileutils.rb (FileUtils.cp_r): implement :remove_destination
28852           option.
28854         * ext/extmk.rb: use :remove_destination to install extension libraries
28855           to avoid SEGV.  [ruby-dev:28417]
28857 Fri Mar  3 14:41:04 2006  Minero Aoki  <aamine@loveruby.net>
28859         * ext/dl/.cvsignore: ignore callback.h.
28861         * ext/ripper/.cvsignore: ignore eventids2table.c.
28863         * ext/socket/.cvsignore: ignore constants.h.
28865 Thu Mar  2 18:58:18 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28867         * eval.c (rb_thread_fd_writable): should not re-schedule output
28868           from KILLED thread (must be error printing).
28870 Thu Mar  2 09:12:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28872         * array.c (rb_ary_flatten_bang): allow specifying recursion
28873           level.  [ruby-talk:182170]
28875         * array.c (rb_ary_flatten): ditto.
28877 Thu Mar  2 08:02:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28879         * gc.c (add_heap): a heap_slots may overflow.  a patch from Stefan
28880           Weil <weil at mail.berlios.de>.
28882 Wed Mar  1 17:13:37 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28884         * eval.c (rb_call): use separate cache for fcall/vcall
28885           invocation.
28887         * eval.c (rb_eval): NODE_FCALL, NODE_VCALL can call local
28888           functions.
28890         * eval.c (rb_mod_local): a new method to specify newly added
28891           visibility "local".
28893         * eval.c (search_method): search for local methods which are
28894           visible only from the current class.
28896         * class.c (rb_class_local_methods): a method to list local methods.
28898 Thu Mar  2 17:54:45 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28900         * gc.c: commited magic for reducing RVALUE size on windows. (24->20byte)
28901           [ruby-core:7474]
28903 Thu Mar  2 14:12:26 2006  Tanaka Akira  <akr@m17n.org>
28905         * gc.c: align VALUE with sizeof(RVALUE) globally.
28906           (is_pointer_to_heap): check alignment out of loop.
28907           (id2ref): avoid collision between symbols and objects.
28908           (rb_obj_id): ditto.  moved from object.c.
28909           [ruby-talk:178364] [ruby-core:7305]
28911 Thu Mar  2 12:55:16 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28913         * win32/win32.c (filetime_to_unixtime): should set tm_isdst to -1.
28914           stat() didn't treat daylight saving time property on WinNT.
28915           [ruby-talk:182100]
28917 Wed Mar  1 00:15:51 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28919         * lib/rdoc/parsers/parse_rb.rb (read_escape): could not handle /\^/.
28920           merged Mr. Ishizuka's lib/irb/ruby-lex.rb 's patch rev 1.29.
28921           [ruby-talk:181631] [ruby-dev:28404]
28923 Tue Feb 28 19:32:14 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28925         * object.c (Init_Object): add BasicObject class as a top level
28926           BlankSlate class.
28928 Mon Feb 27 00:19:16 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28930         * ruby.h (SYM2ID): should not cast to signed long.
28931           [ruby-core:07414]
28933 Fri Feb 24 20:21:38 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
28935         * test/drb/drbtest.rb (add_service_command): quote pathnames in the
28936           server's command line for space contained directory names.
28937           Thanks, arton. [ruby-dev:28386]
28939 Fri Feb 24 12:10:07 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28941         * instruby.rb: install *.exe.manifest and *.dll.manifest if exist.
28942           It's for VC++8.
28944 Fri Feb 24 11:17:45 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28946         * win32/win32.c (NtInitialize): need to set a handler for VC++8.
28948 Thu Feb 23 22:39:59 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28950         * bcc32/Makefile.sub: use borlndmm.dll if possible. bcc32's RTL internal
28951           memory manager cannot handle large memory block properly.
28952           ex: 10000.times { "" << "." * 529671; GC.start } # crash
28953           [ruby-dev:28230]
28955 Thu Feb 23 13:23:03 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
28957         * eval.c (SETUP_ARGS0): fixed memory corruption. [ruby-dev:28360]
28959 Wed Feb 22 21:16:55 2006  Tanaka Akira  <akr@m17n.org>
28961         * lib/pathname.rb (Pathname#each_filename): use split_names properly.
28963 Wed Feb 22 16:24:05 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
28965         * test/webrick/test_cgi.rb: should support platforms which search
28966           library path from the interpreter's path.
28967           And, support test without install incidentally.
28969 Wed Feb 22 14:21:03 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28971         * bignum.c (bignorm): x may not be a bignum.  [ruby-dev:28367]
28973 Wed Feb 22 09:22:40 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28975         * eval.c (proc_alloc): add proper check for creation of a lambda
28976           without a block.
28978 Tue Feb 21 02:07:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
28980         * parse.y (f_arglist): should set command_start = Qtrue for
28981           command body.  [ruby-talk:180648]
28983 Mon Feb 20 22:30:17 2006  Tanaka Akira  <akr@m17n.org>
28985         * mkconfig.rb: alias Config to RbConfig for compatibility.
28987 Mon Feb 20 18:21:41 2006  Tanaka Akira  <akr@m17n.org>
28989         * io.c (rb_io_reopen): flush before reopening a file.
28990           reported by Mathieu Bouchard.  [ruby-core:7396]
28992 Mon Feb 20 17:29:50 2006  Tanaka Akira  <akr@m17n.org>
28994         * mkconfig.rb: generate RbConfig instead of Config.
28996         * instruby.rb, rubytest.rb, runruby.rb, bcc32/Makefile.sub,
28997           ext/extmk.rb, ext/dl/extconf.rb, ext/iconv/charset_alias.rb,
28998           lib/mkmf.rb, lib/rdoc/ri/ri_paths.rb,
28999           lib/webrick/httpservlet/cgihandler.rb,
29000           test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb,
29001           test/ruby/envutil.rb, test/soap/calc/test_calc_cgi.rb,
29002           test/soap/header/test_authheader_cgi.rb, test/soap/ssl/test_ssl.rb,
29003           win32/mkexports.rb, win32/resource.rb: Use RbConfig instead of
29004           Config.
29006 Mon Feb 20 13:46:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29008         * lib/find.rb: should raise ENOENT if root entry does not exist,
29009           without opening it. [ruby-dev:28345]
29011 Mon Feb 20 12:27:53 2006  Kent Sibilev  <ksruby@gmail.com>
29013         * lib/rational.rb (Integer::gcd): small typo fix.
29014           [ruby-core:07395]
29016 Mon Feb 20 10:03:59 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29018         * variable.c (rb_const_get_0): Object should have been the lowest
29019           in const lookup precedence.  [ruby-dev:28343]
29021 Mon Feb 20 09:17:11 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29023         * lib/delegate.rb (Delegator): should not delegate "funcall".
29025 Mon Feb 20 09:13:42 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29027         * lib/webrick/httpservlet/cgihandler.rb (WEBrick::HTTPServlet::CGIHandler):
29028           qualify the access for Config constant.  [ruby-dev:28338]
29030         * lib/resolv.rb (Resolv::DNS::Resource::IN::A): qualify
29031           ClassValue.  [ruby-dev:28338]
29033 Mon Feb 20 01:05:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29035         * lib/rational.rb (Integer::gcd): replaced by gcd4 in
29036           [ruby-core:07390].  [ruby-core:07377]
29038 Mon Feb 20 00:57:02 2006  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29040         * ext/openssl/ossl.h (OSSL_Debug): should not use __func__.
29041           [ruby-dev:28339]
29043 Mon Feb 20 00:13:49 2006  Tanaka Akira  <akr@m17n.org>
29045         * lib/open-uri.rb: add :ssl_verify_mode option.
29046           suggested by Will Glynn.
29048         * lib/open-uri.rb: add :ssl_ca_cert option.
29050 Sun Feb 19 04:46:29 2006  Guy Decoux  <ts@moulon.inra.fr>
29052         * eval.c: initial value for block_unique must be 1.
29053           [ruby-talk:180420]
29055 Sat Feb 18 23:58:26 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29057         * lib/tracer.rb (Tracer::Tracer.add_filter): turn on tracer mode
29058           only when caller() level size is one.  [ruby-core:07389]
29060         * lib/rdoc/parsers/parse_rb.rb: need not to require "tracer".
29061           [ruby-core:07389]
29063         * sample/rtags.rb: ditto.
29065 Sat Feb 18 21:16:27 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29067         * eval.c (rb_obj_instance_eval): RDoc description updated.  a
29068           patch from Ozgur Murat Homurlu <ozgurmurath at gmail.com>.
29069           [ruby-core:07381]
29071 Sat Feb 18 01:01:17 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29073         * variable.c (rb_const_get_0): skip ruby_wrapper in const search
29074           to give it lower priority (just above Object).  need not to
29075           change rb_const_defined_0() since it's only a precedence matter;
29076           they are defined anyway.
29078 Sat Feb 18 00:22:39 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29080         * lib/tracer.rb: merged a minor clarification patch from Daniel
29081           Berger <Daniel.Berger at qwest.com>.  [ruby-core:07376]
29083 Fri Feb 17 17:30:20 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29085         * eval.c (ev_const_get): simplified using rb_const_get_fallback().
29087         * eval.c (ev_const_defined): adopt to ev_const_get() using
29088           rb_const_defined_fallback().
29090         * variable.c (rb_const_get_fallback): new function to implement
29091           constant search.
29093         * variable.c (rb_const_defined_fallback): new function to
29094           implement constant definition check.
29096         * variable.c (rb_const_get_0): adopt to new behavior.  constants
29097           are looked up in the order of: current class, super classes (but
29098           Object), lexically external classes/modules, and Object.
29100         * variable.c (rb_const_defined_0): ditto.
29102 Fri Feb 17 11:20:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29104         * util.c (ruby_strtod): Float("1e") should fail. [ruby-core:7330]
29106         * pack.c (EXTEND32): unpack("l") did not work where sizeof(long) != 4.
29107           [ruby-talk:180024]
29109         * pack.c (pack_unpack): fixed integer overflow on template "w".
29110           [ruby-talk:180126]
29112 Fri Feb 17 09:39:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29114         * eval.c (rb_thread_wait_for): sleep should always sleep for
29115           specified amount of time.  [ruby-talk:180067]
29117 Wed Feb 15 16:52:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29119         * eval.c (rb_eval): NODE_OP_ASGN1 should allow splat in its
29120           argument list.  [ruby-core:07366]
29122         * parse.y (arg): avoid unnecessary extra argument.
29123           [ruby-core:07366]
29125         * eval.c (rb_eval): honor visibility on OP_ASGN1 and
29126           OP_ASGN2. [ruby-core:07366]
29128 Wed Feb 15 15:20:23 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29130         * eval.c (error_line): remove void control path.  [ruby-dev:28335]
29132 Wed Feb 15 10:09:51 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29134         * eval.c (yield_under_i): should not pass self as an argument to
29135           the block for instance_eval.  [ruby-core:07364]
29137 Wed Feb 15 09:20:35 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29139         * eval.c (rb_obj_instance_eval): should be no singleton classes for
29140           true, false, and nil.  [ruby-dev:28186]
29142 Tue Feb 14 20:26:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29144         * enumerator.c (enumerator_each): return self if no block is
29145           given.  [yarv-dev:882]
29147 Tue Feb 14 18:48:33 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29149         * eval.c (DMETHOD_P): accessing wrong frame.  [ruby-dev:28181]
29151         * eval.c (proc_invoke): preserve FRAME_DMETH flag.
29153 Tue Feb 14 15:15:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29155         * ext/zlib/zlib.c: suppress warning on test/zlib. [ruby-dev:28323]
29157 Tue Feb 14 13:47:22 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29159         * win32/win32.c (rb_w32_utime): drop read-only attribute before
29160           changing file time.
29162 Tue Feb 14 13:38:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29164         * win32/Makefile.sub (config.h): should define HAVE_LONG_LONG with
29165           VC++8.
29167 Tue Feb 14 11:42:38 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29169         * time.c (search_time_t): support non 32bit time_t environments.
29171         * win32/Makefile.sub (config.h): VC++8 has ``long long'' type.
29173         * win32/Makefile.sub (config.h): VC++8's time_t is 64bit value.
29175 Mon Feb 13 18:01:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29177         * eval.c (copy_node_scope): remove duplicated semicolons at end.
29178           a patch from KIMURA Koichi <kimura.koichi at canon.co.jp>.
29179           [ruby-dev:28332]
29181         * eval.c (VIS_MODE): remove unnecessary argument.
29182           [ruby-dev:28332]
29184 Mon Feb 13 13:49:48 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29186         * parse.y (parser_parse_string): mention "regexp" in a error
29187           message.  a patch from Mauricio Fernandez <mfp at acm.org>
29188           [ruby-core:07340]
29190 Mon Feb 13 00:01:32 2006  K.Kosako  <sndgk393 AT ybb.ne.jp>
29192         * oniguruma.h: Version 4.0.1
29194         * regparse.c (onig_free_shared_cclass_table): fix memory leaks.
29196         * regcomp.c (optimize_node_left): change from IS_POSIXLINE() to IS_MULTILINE().
29198         * regint.h: rename ANCHOR_ANYCHAR_STAR_PL to ANCHOR_ANYCHAR_STAR_ML.
29200         * regparse.h: ditto.
29202         * regexec.c: ditto.
29204 Sat Feb 11 21:57:29 2006  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
29206         * ext/win32ole/win32ole.c: add WIN32OLE.create_guid.
29208         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
29210 Sat Feb 11 01:57:44 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29212         * eval.c (rb_f_autoload): check if ruby_cbase is nil (during
29213           instance_eval for objects cannot have singleton classes,
29214           e.g. fixnums and symbols).  [ruby-dev:28178]
29216 Fri Feb 10 12:31:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29218         * eval.c (rb_eval): should support NODE_ZSUPER in NODE_ITER.
29219           [ruby-dev:28326]
29221         * eval.c (ZSUPER_ARGS): support macro.
29223 Wed Feb  8 10:26:06 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29225         * gc.c (rb_gc_call_finalizer_at_exit): turn on during_gc while
29226           invoking finalizers.
29228         * gc.c (rb_gc_finalize_deferred): ditto.
29230 Tue Feb  7 23:03:13 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29232         * ext/zlib/zlib.c: should not access ruby objects in finalizer.
29233           [ruby-dev:28286]
29235 Tue Feb  7 18:42:00 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29237         * io.c (rb_write_error2): use fwrite(3) if rb_stderr is not
29238           updated or is already freed.  [ruby-dev:28313]
29240 Mon Feb  6 16:02:51 2006  WATANABE Hirofumi  <eban@ruby-lang.org>
29242         * file.c (rb_thread_flock): ERROR_NOT_LOCKED is not an error on Cygwin.
29243           In such situation, flock() should return 0.
29245 Mon Feb  6 14:36:29 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29247         * eval.c (error_line): include the class name of a surrounding
29248           method in error position description.
29250 Mon Feb  6 00:14:57 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29252         * enum.c (enum_find_index): a new method Enumerable#find_index.
29253           [ruby-talk:178495]
29255 Sun Feb  5 23:29:31 2006  Tanaka Akira  <akr@m17n.org>
29257         * ruby.h (struct RStruct): embed 3 or less elements structs.
29258           (RSTRUCT_LEN): defined for accessing struct members.
29259           (RSTRUCT_PTR): ditto.
29261         * struct.c: use RSTRUCT_LEN and RSTRUCT_PTR.
29262           (struct_alloc): allocate small structs in embedded format.
29263           (rb_struct_init_copy): ditto.
29265         * gc.c (gc_mark_children): use RSTRUCT_LEN and RSTRUCT_PTR.
29266           (obj_free): ditto.
29268         * marshal.c (w_object): use RSTRUCT_LEN and RSTRUCT_PTR.
29270 Sun Feb  5 21:01:49 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29272         * numeric.c (fix_to_s): removed workaround for radix 2. Historically,
29273           rb_fix2str could only handle radix 8, 10, 16. (Rev1.37) But for now,
29274           it can handle radix 2..36. [ruby-Bugs#3438] [ruby-core:7300]
29276 Sun Feb  5 18:49:00 2006  Minero Aoki  <aamine@loveruby.net>
29278         * lib/net/http.rb (add_field, get_fields): keep 1.8.2
29279           compatibility.  This patch is contributed by Rob Pitt.
29281 Sun Feb  5 16:33:50 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29283         * lib/mkmf.rb (create_makefile): Kernel#sub! was removed on HEAD.
29285 Sun Feb  5 14:26:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29287         * lib/pstore.rb: should return default value if name is not found.
29288           [ruby-core:7304]
29290         * lib/pstore.rb: should raise PStore::Error if not in transaction.
29292 Sat Feb  4 22:51:43 2006  Tanaka Akira  <akr@m17n.org>
29294         * eval.c: apply the FreeBSD getcontext/setcontext workaround
29295           only before FreeBSD 7-CURRENT.
29297 Sat Feb  4 21:10:06 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29299         * win32/win32.c (LK_ERR): ERROR_NOT_LOCKED is not an error.
29300           In such situation, flock() should return 0.
29302 Sat Feb  4 15:52:56 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29304         * numeric.c (fix_to_s): (2**32).to_s(2) fails with exception where
29305           sizeof(int) == 4 < sizeof(long). [ruby-core:7300]
29307 Sat Feb  4 15:02:05 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29309         * oniguruma.h: merge Oniguruma 4.0.0  [ruby-dev:28290]
29311 Fri Feb  3 19:25:53 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29313         * ruby.h: fixed prototype.
29315         * ext/syck/rubyext.c: defined symbol ID as global variable as others.
29317 Fri Feb  3 17:57:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29319         * eval.c: unify ruby_class (for method definition) and ruby_cbase
29320           (for constant reference).
29322 Fri Feb  3 15:02:10 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29324         * ext/syck/syck.c (syck_move_tokens): should reset p->cursor or etc
29325           even if skip == 0. This causes buffer overrun.
29326           (ex: YAML.load('--- "..' + '\x82\xA0' * 511 + '"'))
29328 Fri Feb  3 00:01:31 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29330         * ext/syck/emitter.c (syck_emitter_write): should not set '\0' on
29331           emitter's marker. if marker points to the end of buffer, this is
29332           buffer overrun. (ex: YAML.dump("." * 12288))
29334 Thu Feb  2 17:13:01 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29336         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser#get_tk): added
29337           support of :'string' style Symbol.
29339 Thu Feb  2 16:01:24 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29341         * eval.c (rb_call0): use TMP_ALLOC() instead of allocating
29342           a temporary array object.
29344         * eval.c (eval): need not to protect $SAFE value.
29345           [ruby-core:07177]
29347         * error.c (Init_Exception): change NameError to direct subclass of
29348           Exception so that default rescue do not handle it silently.
29350 Thu Feb  2 14:45:53 2006  Ville Mattila  <ville.mattila@stonesoft.com>
29352         * configure.in: The isinf is not recognized by autoconf
29353           library guesser on solaris 10. [ruby-core:7138]
29355 Wed Feb  1 22:01:47 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29357         * configure.in, hash.c (ruby_setenv): use setenv(3) and unsetenv(3)
29358           where they are supported. modifying environ variable seems to
29359           segfault solaris 10. [ruby-core:7276] [ruby-dev:28270]
29361         * ruby.c (set_arg0): if use setenv(3), environ space cannot be used
29362           for altering argv[0].
29364 Tue Jan 31 14:46:28 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29366         * struct.c (rb_struct_select): update RDoc description.
29367           [ruby-core:7254]
29369 Tue Jan 31 11:58:51 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29371         * ext/tk/lib/multi-tk.rb: add MultiTkIp#eval and bg_eval.
29373         * ext/tk/lib/tk/namespace.rb: TkNamespace#eval was enbugged at the
29374           last commit. Now it will return a proper object.
29376 Tue Jan 31 08:07:02 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29378         * numeric.c (int_upto): return an enumerator if no block is
29379           attached to the method.
29381         * numeric.c (int_downto): ditto.
29383         * numeric.c (int_dotimes): ditto.
29385         * enum.c (enum_first): new method Enumerable#first to take first n
29386           elements from an enumerable.
29388         * enum.c (enum_group_by): new method Enumerable#group_by that
29389           groups enumerable values according to their block values.
29391 Tue Jan 31 00:08:22 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29393         * ext/syck/rubyext.c (syck_resolver_transfer): workaround for SEGV.
29394           ex: ruby -ryaml -e 'YAML.load("!map:B {}")' [ruby-core:7217]
29396 Sat Jan 28 07:49:30 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29398         * lib/rdoc/usage.rb: support "a:0:33" style caller[-1]. In this case
29399           file name is "a:0". I don't know this really happens though...
29400           [ruby-Bugs:3344]
29402 Thu Jan 26 15:55:52 2006  Yukihiro Matsumoto  <matz@ruby-lang.org>
29404         * ext/socket/socket.c: turn on do_not_reverse_lookup by default.
29406 Wed Jan 25 22:29:04 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29408         * configure.in, dln.c, file.c, intern.h, missing.h (eaccess): use
29409           system routine if provided.  fixed: [ruby-core:07195]
29411 Sun Jan 22 23:27:13 2006  Go Noguchi  <gonoguti@yahoo.co.jp>
29413         * lib/test/unit/autorunner.rb (process_args): ignore arguments after
29414           '--' so that test scripts can handle them.  fixed: [ruby-dev:28258]
29416 Sun Jan 22 22:09:52 2006  Tanaka Akira  <akr@m17n.org>
29418         * eval.c (POST_GETCONTEXT): define separately from PRE_GETCONTEXT on
29419           IA64 to avoid reusing variable address.
29421 Sun Jan 22 20:03:35 2006  Tanaka Akira  <akr@m17n.org>
29423         * eval.c (ruby_setjmp): define PRE_GETCONTEXT and POST_GETCONTEXT
29424           instead of FUNCTION_CALL_MAY_RETURN_TWICE.
29425           define PRE_GETCONTEXT to clear carry flag for workaround of
29426           FreeBSD/i386 getcontext/setcontext bug.
29427           [ruby-dev:28263]
29429 Thu Jan 19 22:19:18 2006  Minero Aoki  <aamine@loveruby.net>
29431         * lib/fileutils.rb (mv): should remove file after copying.
29432           [ruby-dev:28223]
29434 Wed Jan 18 23:37:06 2006  Tanaka Akira  <akr@m17n.org>
29436         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): don't clobber %l7 of SPARC
29437           if enable-shared.
29438           (ruby_setjmp): call FUNCTION_CALL_MAY_RETURN_TWICE after getcontext
29439           too.
29440           reported by Pav Lucistnik and Marius Strobl.
29441           http://lists.freebsd.org/pipermail/freebsd-sparc64/2006-January/003739.html
29443 Tue Jan 17 23:59:56 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29445         * object.c (rb_mod_const_get, rb_mod_const_defined): added optional
29446           flag to search ancestors, which is defaulted to true.
29447           fixed: [ruby-talk:175899]
29449         * eval.c (rb_mod_method_defined): ditto.
29451 Tue Jan 17 11:31:47 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29453         * win32/setup.mak (MAKE): workaround for nmake 8.
29455 Tue Jan 17 11:06:19 2006  NAKAMURA Usaku  <usa@ruby-lang.org>
29457         * win32/Makefile.sub: invoke .bat via shell. workaround for nmake 8.
29459 Mon Jan 16 10:13:38 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29461         * ext/syck/emitter.c (syck_emit_seq, syck_emit_map, syck_emit_item):
29462           should output complex key mark even if map's key is empty seq/map.
29463           [ruby-core:7129]
29465 Sat Jan 14 03:38:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29467         * file.c (rb_file_s_chmod): avoid warning where sizeof(int) !=
29468           sizeof(void*).
29470 Fri Jan 13 19:26:15 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29472         * lib/rdoc/diagram.rb:
29473             - properly quote bare element attributes
29474             - terminates dangling elements (e.g. <img>, <br>, <link>, etc)
29475             - converts "CVS" to the more HTML-friendly acronym element
29476             - adds missing type attributes to style elements
29478           based on Paul Duncan's patch <pabs@pablotron.org> [ruby-core:7028]
29480         * lib/rdoc/generators/html_generator.rb: ditto.
29481         * lib/rdoc/generators/template/html/hefss.rb: ditto.
29482         * lib/rdoc/generators/template/html/html.rb: ditto.
29483         * lib/rdoc/generators/template/html/kilmer.rb: ditto.
29485 Thu Jan 12 11:53:08 2006  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29487         * ext/tk/sample/tkballoonhelp.rb: [bug fix] couldn't add to a widget
29488           which is constructed with TkComposite module.
29489           [new feature] support 'command' option which is called just before
29490           popping up the balloon help.
29492 Wed Jan 11 00:12:29 2006  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29494         * lib/erb.rb (ERB::Compiler): add instance variable @insert_cmd to
29495           change <%='s behavior.
29497 Tue Jan 10 19:42:33 2006  Tanaka Akira  <akr@m17n.org>
29499         * gc.c (garbage_collect): mark ruby_current_node.
29500           if an exception is raised in a finalizer written in C called by
29501           rb_gc_call_finalizer_at_exit, ruby_set_current_source may use
29502           collected ruby_current_node and mark_source_filename may corrupt
29503           memory.
29505 Tue Jan 10 13:30:34 2006  akira yamada  <akira@ruby-lang.org>
29507         * ext/syck/rubyext.c (syck_resolver_transfer): should be able to load
29508           !ruby/object:Bignum syntax 1.8.3 dumped. [ruby-core:6159]
29510 Tue Jan 10 12:47:41 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29512         * lib/yaml/rubytypes.rb (Fixnum): Bignum could not be loaded in
29513           ruby 1.8.3/1.8.4. [ruby-core:6115]
29515         * lib/yaml/rubytypes.rb (Numeric): Subclass of Numeric could not
29516           be dumped properly. [ruby-core:7047]
29518 Tue Jan 10 12:00:48 2006  Aaron Schrab  <aaron @nospam@ schrab.com>
29520         * lib/yaml/rubytypes.rb (Symbol#yaml_new): YAML loading of quoted
29521           Symbols broken. [ruby-Bugs:2535]
29523 Tue Jan 10 07:26:52 2006  Tanaka Akira  <akr@m17n.org>
29525         * gc.c (gc_stress): renamed from always_gc and enabled by default.
29526           (gc_stress_get): new function for GC.stress.
29527           (gc_stress_set): new function for GC.stress=.
29529 Mon Jan  9 19:58:56 2006  arton  <artonx@yahoo.co.jp>
29531         * ext/zlib/extconf.rb: zlib compiled DLL version 1.2.3 distributed by
29532           http://www.zlib.net/ has zdll.lib. [ruby-dev:28209]
29534 Mon Jan  9 14:25:00 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29536         * win32/Makefile.sub (OPTFLAGS): I have experienced trouble on y- flag,
29537           (VisualC++6) so use -O2b2xg- if  $(MSC_VER) < 1400. [ruby-core:7040]
29539 Mon Jan  9 14:25:00 2006  Kero van Gelder  <rubyforge @nospam@ kero.tmfweb.nl>
29541         * lib/webrick/httpservlet/filehandler.rb: fixed typo. [ruby-core:7075]
29543 Sun Jan  8 14:15:27 2006  Tanaka Akira  <akr@m17n.org>
29545         * eval.c (GCC_VERSION_BEFORE): check __INTEL_COMPILER.
29546           Intel C++ Compiler defines __GNUC__.
29547           http://www.intel.com/software/products/compilers/clin/docs/ug_cpp/lin1077.htm
29549 Sat Jan  7 15:40:07 2006  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29551         * parse.y (singleton): get rid of segfault on syntax error.
29552           fixed: [ruby-core:07070]
29554 Sat Jan  7 06:24:18 2006  Tanaka Akira  <akr@m17n.org>
29556         * eval.c (rb_fd_isset): compare the result of FD_ISSET with 0 to
29557           avoid FreeBSD bug.  FreeBSD defines FD_ISSET as just a bitmap of
29558           unsigned long.  So returning the value from rb_fd_isset discards
29559           upper 32bits on LP64 environment.
29560           http://www.freebsd.org/cgi/query-pr.cgi?pr=ia64/91421
29562 Fri Jan  6 02:20:18 2006  Tanaka Akira  <akr@m17n.org>
29564         * configure.in: don't force getcontext on IA64.
29566         * eval.c (ruby_setjmp): add an argument for just before getcontext.
29567           (THREAD_SAVE_CONTEXT): call rb_thread_save_context just
29568           before getcontext.
29569           [ruby-dev:28205]
29571 Sun Jan  1 15:28:46 2006  Tanaka Akira  <akr@m17n.org>
29573         * missing.h (isinf): avoid macro expansion
29574           "extern int isinf(double);" to
29575           "extern int ((sizeof(double)==sizeof(float))?_Isinff(double):_Isinf(double));" on
29576           HP-UX.
29578 Sun Jan  1 14:42:54 2006  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29580         * win32/win32.c (rb_w32_seekdir): should not segfault even if passed
29581           the location which rb_w32_telldir didn't return. (and should change
29582           `bits' position) [ruby-core:7035]
29584         * win32/dir.h: ditto. (stores `loc' instead of `bitpos')
29586         * test/ruby/test_dir.rb: added.
29588 Sat Dec 31 22:57:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29590         * eval.c (rb_thread_save_context): should not recycle scope object used
29591           in a thread.  fixed: [ruby-dev:28177]
29593 Sat Dec 31 19:50:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29595         * ext/syck/rubyext.c: attribute name was truncated with Rev1.64.
29597 Sat Dec 31 11:53:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29599         * lib/generator.rb: (Generator#initialize): should kill @loop_thread
29600           before starting new thread. (occurs when called via Generator#rewind)
29601           [ruby-dev:28184]
29603 Fri Dec 30 18:22:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29605         * gc.c (garbage_collect): mark objects referred from aborting threads.
29606           [ruby-dev:28190]
29608         * win32/Makefile.sub: VC++8 support.
29610 Fri Dec 30 15:17:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29612         * lib/generator.rb (Generator#initialize): ensured to stop @loop_thread.
29613           Mr. Tanaka pointed out one Thread.pass is not enough. [ruby-dev:28185]
29615 Fri Dec 30 12:20:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29617         * lib/generator.rb (Generator#initialize): fixed dead lock. this occurred
29618           when end? was called before @loop_thread was stopped. [ruby-core:7029]
29620 Fri Dec 30 01:04:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29622         * lib/generator.rb: should work with another thread. (more robust code)
29623           [ruby-dev:28177]
29625 Thu Dec 29 23:59:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29627         * eval.c (rb_gc_mark_threads): keep unmarked threads which won't wake
29628           up alone, and mark threads in the loading table.  [ruby-dev:28154]
29630         * eval.c (rb_gc_abort_threads), gc.c (gc_sweep): kill unmarked
29631           threads.  [ruby-dev:28172]
29633 Thu Dec 29 17:02:07 2005  Tanaka Akira  <akr@m17n.org>
29635         * test/ruby/envutil.rb (EnvUtil.rubybin): search "ruby" instead of
29636           "miniruby".  [ruby-dev:28140]
29638 Thu Dec 29 14:35:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29640         * eval.c (rb_mod_define_method): should save safe_level in the
29641           proc object.  [ruby-dev:28146]
29643 Thu Dec 29 11:22:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29645         * lib/generator.rb: reimplemented Generator class with Thread instead of
29646           callcc, in order to fix memory leak. [ruby-dev:28142]
29648 Wed Dec 28 14:10:05 2005  Tanaka Akira  <akr@m17n.org>
29650         * ia64.s: remove .pred.safe_across_calls directive.
29651           reported by WATANABE Tetsuya.  [ruby-dev:28141]
29653 Wed Dec 28 01:32:39 2005  Tanaka Akira  <akr@m17n.org>
29655         * eval.c (struct thread): add bstr_max.
29656           (rb_thread_save_context): use realloc instead of REALLOC_N
29657           to avoid GC.
29659 Tue Dec 27 23:59:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29661         * lib/optparse.rb (CompletingHash#match): fix for 1.9.
29663 Tue Dec 27 16:59:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29665         * test/drb/drbtest.rb (DRbService::self.ext_service): increase
29666           timeout limit.  a patch from Kazuhiro NISHIYAMA
29667           <zn at mbf.nifty.com>. [ruby-dev:28132]
29669 Tue Dec 27 14:17:55 2005  Tanaka Akira  <akr@m17n.org>
29671         * configure.in: define IA64 for portability.  (HP aC++/ANSI C doesn't
29672           define __ia64__.)
29673           don't check libunwind stuff.
29674           check __libc_ia64_register_backing_store_base.
29676         * defines.h: declare rb_ia64_bsp and rb_ia64_flushrs.
29677           (flush_register_windows): call rb_ia64_flushrs on IA64.
29679         * ia64.s: new file for IA64.
29680           it is separated from C program files because
29681           Intel C++ Compiler for IA64 doesn't support inline assembly.
29683         * common.mk (ia64.$(OBJEXT)): new target.
29685         * ruby.h (RUBY_INIT_STACK): defined.
29686           (ruby_init_stack): declared for RUBY_INIT_STACK.
29688         * main.c (main): precedes RUBY_INIT_STACK before ruby_init.
29690         * gc.c (rb_gc_register_stack_start): new global variable on IA64.
29691           (garbage_collect): simplify register stack marking code.
29692           don't use libunwind.
29693           (Init_stack): initialize rb_gc_register_stack_start.
29694           (ruby_init_stack): new function for RUBY_INIT_STACK.
29696         * eval.c (struct thread): add bstr_pos member for original position of
29697           register stack.
29698           (rb_thread_save_context): simplify register stack saving code.
29699           don't use libunwind.
29700           (rb_thread_restore_context_0): new function.  moved from
29701           rb_thread_restore_context except the stack position checking code.
29702           don't use libunwind for IA64 register stack.
29703           (register_stack_extend): new function.
29704           (stack_extend): make it self-recursive with
29705           the stack position checking code in old rb_thread_restore_context.
29706           (rb_thread_restore_context): just call stack_extend.
29707           (flush_register_windows): removed.
29709           [ruby-dev:28127]
29711 Tue Dec 27 14:09:39 2005  Minero Aoki  <aamine@loveruby.net>
29713         * process.c: new method Process.exec. [ruby-dev:28107]
29715 Tue Dec 27 08:22:15 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29717         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLSocket#post_connection_check):
29718           treat wildcard character in commonName. [ruby-dev:28121]
29720 Mon Dec 26 08:50:36 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29722         * eval.c (ev_const_get): fixed a bug in constant reference during
29723           instance_eval.  [yarv-dev:707]
29725         * eval.c (ev_const_defined): ditto.
29727         * lib/yaml.rb (YAML::add_domain_type): typo fixed.  a patch from
29728           Joel VanderWerf <vjoel at path.berkeley.edu>.
29729           [ruby-talk:165285] [ruby-core:6995]
29731 Fri Dec 23 10:30:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29733         * ext/digest/sha2/sha2.c (ULL): support AIX C.  a patch from
29734           Kailden <kailden at gmail.com>.  [ruby-core:06984]
29736 Wed Dec 21 16:47:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29738         * file.c (w32_io_info): should return handle because FileIndex is
29739           valid only while file is open. [ruby-dev:28088]
29741 Wed Dec 21 12:12:21 2005  Tanaka Akira  <akr@m17n.org>
29743         * test/pathname/test_pathname.rb (test_kernel_open): use
29744           File.identical?.
29745           [ruby-talk:171804]
29747 Tue Dec 20 22:41:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29749         * eval.c (eval_under_i): evaluate source in caller's frame.
29750           [ruby-dev:28076]
29752 Tue Dec 20 12:53:23 2005  why the lucky stiff  <why@ruby-lang.org>
29754         * ext/syck/rubyext.c (syck_emitter_reset): to ensure compatibility
29755           with previous Ruby versions, documents are no longer headless.
29757 Tue Dec 20 12:33:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29759         * ext/syck/rubyext.c (syck_node_transform): ruby object holding
29760           explicitly freed SyckNode caused SEGV. [ruby-dev:28067]
29762         ... I think syck GC problem was solved now!
29764 Tue Dec 20 01:46:48 2005  Tanaka Akira  <akr@m17n.org>
29766         * io.c (rb_f_backquote): fix a GC problem on
29767           IA64 with gcc 4.0.3 20051216 (prerelease) -O3.
29769 Mon Dec 19 23:32:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29771         * Makefile.in (XCFLAGS): separated as well as win32/Makefile.sub.
29773         * main.c (always_gc): dllimport is required for VC to import a DLL
29774           symbol.  fixed: [ruby-dev:28051]
29776         * parse.y (rb_symname_p): fixed wrong validation.  [ruby-dev:28047]
29778 Mon Dec 19 23:09:24 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29780         * st.c: uses malloc instead of xmalloc to avoid GC. syck uses st_insert
29781           in gram.c to insert node from rb_syck_bad_anchor_handler into
29782           SyckParser's hash table. if GC occurs in st_insert, it's not under
29783           SyckParser's mark system yet. so RString can be released wrongly.
29785         * ext/syck/syck.h (S_FREE): small hack. no need to check if pointer is
29786           NULL or not before S_FREE.
29788         * ext/syck/rubyext.c (syck_parser_assign_io): rb_check_string_type can
29789           return new RString. if so, it becomes unreachable from GC after
29790           returns syck_parser_assign_io, and can be freed by GC. (dangling
29791           in syck io system) so extends its life time till syck_parse is called.
29793         * ext/syck/rubyext.c (syck_parser_s_alloc): always allocates bonus,
29794           so no need to check if NULL, and "volatile VALUE hash"
29795           is not needed. (bonus->port was not protected in syck_emitter_reset)
29797         * ext/syck/rubyext.c (syck_mark_parser): ditto.
29799         * ext/syck/rubyext.c (syck_parser_load): ditto.
29801         * ext/syck/rubyext.c (syck_parser_load_documents): ditto.
29803         * ext/syck/rubyext.c (syck_emitter_s_alloc): ditto.
29805         * ext/syck/rubyext.c (syck_mark_emitter): ditto.
29807         * ext/syck/rubyext.c (syck_emitter_reset): ditto.
29809         * ext/syck/rubyext.c (syck_scalar_value_set): "should set newly
29810           allocated memory instead of RString's internal storage" stuff again.
29811           by this, should call syck_free_node instead of rb_syck_free_node.
29813         * ext/syck/rubyext.c (syck_node_type_id_set): ditto.
29815         ... I believe syck GC problem was solved by this.
29817 Mon Dec 19 12:20:59 2005  Tanaka Akira  <akr@m17n.org>
29819         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): activate only
29820           before gcc 4.0.3 on SPARC and IA64.
29822 Mon Dec 19 11:37:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29824         * ext/syck/rubyext.c: sorry, I reverted my "should set newly
29825           allocated memory instead of RString's internal storage" stuff.
29826           node allocated in rubyext.c seems to be freed by rb_syck_free_node
29827           not syck_free_node, and it won't free data.str->ptr and type_id.
29829          (I still think this is unsafe because RString(foo)->ptr becomes
29830           dangling pointer when RString is modified or freed, but anyway
29831           I misunderstood, so go back to original code for now)
29833 Sat Dec 17 21:50:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29835         * ext/syck/rubyext.c (syck_emitter_reset): should initialize
29836           emitter->bonus->oid. otherwise rb_gc_mark crashes.
29838         * ext/syck/rubyext.c (syck_mark_parser): should mark anchor nodes
29839           because they hold ruby objects. (ie: rb_syck_bad_anchor_handler)
29841 Sat Dec 17 11:00:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29843         * ext/syck/rubyext.c (rb_syck_compile): avoid potential memory
29844           leak.
29846         * ext/syck/rubyext.c (syck_set_ivars): avoid potential memory
29847           leak by explicit symbol allocation.
29849 Sat Dec 17 03:57:01 2005  Tanaka Akira  <akr@m17n.org>
29851         * bignum.c (rb_big_rshift): fix a GC problem on
29852           IA64 with gcc 4.0.3 20051216 (prerelease).
29854 Sat Dec 17 03:30:23 2005  Tanaka Akira  <akr@m17n.org>
29856         * eval.c (bmcall): fix a GC problem by tail call on
29857           IA64 with gcc 4.0.3 20051216 (prerelease).
29859 Fri Dec 16 17:53:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29861         * ext/syck/rubyext.c (rb_syck_compile): fixed memory leak.
29863         * ext/syck/rubyext.c: should protect global variable from GC.
29865 Fri Dec 16 11:44:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
29867         * ext/syck/rubyext.c (syck_resolver_tagurize): fixed memory leak.
29869         * ext/syck/rubyext.c (syck_node_type_id_set): should set newly
29870           allocated memory instead of RString's internal storage.
29872         * ext/syck/rubyext.c (syck_scalar_value_set): ditto.
29874         ... these fixes won't fix [ruby-dev:27839]. more work is needed.
29876 Fri Dec 16 04:38:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29878         * lib/delegate.rb (Delegator::method_missing): should delegate
29879           block as well.
29881 Thu Dec 15 19:57:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29883         * lib/cgi.rb (CGI::QueryExtension::MorphingBody): fix criteria to
29884           use Tempfile.  A fix from Zev Blut <rubyzbibd at ubit.com>.
29885           [ruby-core:06076]
29887         * string.c: remove global functions work on $_.
29889 Thu Dec 15 12:35:14 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29891         * lib/tmpdir.rb: merged RDoc patch from Eric Hodel <drbrain at
29892           segment7.net>.  [ruby-core:06894]
29894 Thu Dec 15 01:33:31 2005  Tanaka Akira  <akr@m17n.org>
29896         * ext/zlib/zlib.c (zstream_run): fix a GC problem by tail call on
29897           x86_64 with gcc 4.0.3 20051111 (prerelease) (Debian 4.0.2-4)
29899 Wed Dec 14 23:50:20 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29901         * lib/rdoc/parsers/parse_c.rb (find_class_comment): fix for class
29902           document with prototypes.  [ruby-core:06863]
29904 Wed Dec 14 23:39:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29906         * dir.c (has_magic): glob names contain alphabets to enable case fold
29907           search.  [ruby-dev:27735]
29909         * dir.c (Init_Dir): FNM_SYSCASE which is default case fold flag.
29910           [ruby-dev:23296]
29912 Wed Dec 14 12:01:26 2005  Tanaka Akira  <akr@m17n.org>
29914         * marshal.c (r_object0): fix a GC problem for reading a bignum on
29915           IA64 with gcc 3.3.5 (Debian 1:3.3.5-13).
29917 Tue Dec 13 12:23:47 2005  Tanaka Akira  <akr@m17n.org>
29919         * re.c (rb_reg_regcomp): fix a GC problem on x86_64 with
29920           gcc 3.3.5 (Debian 1:3.3.5-13).
29922 Tue Dec 13 01:44:16 2005  Tanaka Akira  <akr@m17n.org>
29924         * array.c (rb_ary_diff): fix a GC problem on IA64 with
29925           gcc 3.3.5 (Debian 1:3.3.5-13).
29926           When rb_ary_push is called, there was no register which contains
29927           `hash' but `&RHASH(hash)->tbl' instead.
29929 Tue Dec 13 00:08:09 2005  Tanaka Akira  <akr@m17n.org>
29931         * sprintf.c (rb_str_format): fix a GC problem.
29932           [ruby-dev:28001]
29934 Mon Dec 12 15:51:22 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
29936         * test/openssl/test_ssl.rb (test_parallel): call GC.start to close
29937           unused files. [ruby-dev:27981]
29939 Mon Dec 12 09:58:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29941         * range.c (range_cover): new method Range#cover? added.  the
29942           method name might be changed.  thanks to takano32 at
29943           http://www.rubyist.net/~matz/20051210.html#c08 for name
29944           suggestion.  [ruby-talk:167182]
29946 Mon Dec 12 00:33:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29948         * ext/digest/digest.c (rb_digest_base_s_digest): add volatile to
29949           protect temporary context object.  [ruby-dev:27979]
29951         * ext/iconv/iconv.c (Init_iconv): rb_gc_register_address() should
29952           be called before actual variable initialization.
29953           [ruby-dev:27986]
29955 Sun Dec 11 23:54:07 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
29957         * ext/tk/*: update to support libraries in ActiveTcl8.4.12.0
29958           (see ext/tk/ChangeLog.tkextlib).
29960         * ext/tk/sample/scrollframe.rb: add a new sample.
29962 Sun Dec 11 22:07:58 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
29964         * test/rinda/test_rinda.rb (test_remote_array_and_hash): pseudo remote
29965           objects are protected against GC. [ruby-dev:27911]
29967 Sat Dec 10 01:06:06 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
29969         * lib/matrix.rb: add Matrix#determinant_e, Matrix#rank_e.
29970           [ruby-dev:27820] and related thread.
29972 Sat Dec 10 00:31:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29974         * eval.c (calling_scope_t): gave names to magic numbers for rb_call().
29975           [ruby-dev:27978]
29977 Fri Dec  9 23:31:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29979         * lib/rexml/encoding.rb (encoding=): give priority to particular
29980           conversion to iconv.  [ruby-core:06520]
29982 Fri Dec  9 23:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29984         * range.c (range_include): return false unless included in numeric
29985           range.  fixed: [ruby-dev:27975]
29987 Thu Dec  8 02:07:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
29989         * eval.c (umethod_bind): adjust invoking class for module method.
29990           [ruby-dev:27964]
29992 Thu Dec  8 00:40:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
29994         * eval.c (call_trace_func): klass parameter should be a
29995           class/module that defines calling method.  [ruby-talk:169307]
29997 Wed Dec  7 17:10:27 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
29999         * sprintf.c (rb_f_sprintf): [ruby-dev:27967]
30001 Wed Dec  7 16:39:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30003         * range.c (range_include): use discrete membership for non Numeric
30004           values, for example, String.
30006         * numeric.c (num_scalar_p): new method. [ruby-dev:27936]
30008         * lib/complex.rb (Complex#scalar?): ditto.
30010 Wed Dec  7 15:31:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30012         * sprintf.c (rb_str_format): integer overflow check added.
30014         * sprintf.c (GETASTER): ditto.
30016 Wed Dec  7 01:02:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30018         * ext/tk/README.macosx-aqua: [new document] tips to avoid the known
30019           bug on platform specific dialogs of Tcl/Tk Aqua on MacOS X.
30021         * ext/tk/tcltklib.c: fix bug on switching threads and waiting on the
30022           deleted interpreter on vwait and tkwait command.
30024         * ext/tk/lib/multi-tk.rb: kill the meaningless loop for the deleted Tk
30025           interpreter.
30027         * ext/tk/sample/demos-jp/image3.rb: [bug fix] wrong argument.
30029         * ext/tk/sample/demos-en/image3.rb: ditto.
30031         * ext/tk/sample/demos-jp/menu.rb: fix message for MacOS X.
30033         * ext/tk/sample/demos-jp/menu8x.rb: ditto.
30035         * ext/tk/sample/demos-en/menu.rb: ditto.
30037 Tue Dec  6 16:48:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30039         * gc.c (ruby_xmalloc2): change check condition for integer
30040           overflow.  [ruby-dev:27399]
30042         * gc.c (ruby_xrealloc2): ditto.
30044 Tue Dec  6 16:37:57 2005  Yuya Nishida  <yuya@j96.org>
30046         * eval.c (exec_under): avoid accessing ruby_frame->prev.
30047           [ruby-dev:27948]
30049 Fri Dec  2 19:06:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30051         * dir.c (Compare): should not fold double byte alphabet on win9x.
30053 Thu Dec  1 00:50:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30055         * eval.c (rb_funcall2): allow to call protected methods.
30056           fixed: [ruby-dev:27890]
30058 Wed Nov 30 23:52:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30060         * parse.y (struct parser_params): fields common to ripper must be
30061           placed at each same offset.
30063         * parse.y (NEWHEAP, ADD2HEAP): set count after pointer was set.
30064           fixed: [ruby-dev:27896]
30066 Wed Nov 30 13:43:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30068         * misc/ruby-mode.el (ruby-expr-beg): support $! at the end of
30069           expression.   [ruby-dev:27868]
30071 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
30073         * lib/pp.rb (PP::PPMethods#object_address_group): mask an address with
30074           word size.
30076 Tue Nov 29 23:57:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30078         * parse.y (struct parser_params): heap must be placed at same offset
30079           also in ripper.y.  fixed: [ruby-dev:27846]
30081         * parse.y (yycompile): prevent vparser from tail call optimization.
30082           fixed: [ruby-dev:27851]
30084         * parse.y (parser_mark): value needs to be marked.
30085           fixed: [ruby-dev:27845]
30087 Tue Nov 29 22:45:30 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30089         * lib/drb/observer.rb (notify_observers): follow change of observer.rb.
30090           fixed: [ruby-core:6796]
30092 Mon Nov 28 20:24:22 2005  Tanaka Akira  <akr@m17n.org>
30094         * lib/pp.rb (PP::PPMethods#object_address_group): adjust address format.
30096 Mon Nov 28 18:55:22 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30098         * ext/socket/socket.c (init_inetsock_internal): remove setting
30099           SO_REUSEADDR option on server socket on Cygwin.
30100           fixed: [ruby-core:6765] ([ ruby-Bugs-2872 ])
30102 Mon Nov 28 13:11:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30104         * win32/win32.c (rb_w32_strerror): remove all CR and LF. (avoid broken
30105           error message on bccwin32 + winsock)
30107 Mon Nov 28 09:15:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30109         * lib/mkmf.rb (create_makefile): should not change sodir with
30110           dir.gsub!. (bccwin32 failed to install third party extensions)
30111           [ruby-dev:27834]
30113 Sun Nov 27 05:37:20 2005  Tanaka Akira  <akr@m17n.org>
30115         * lib/pathname.rb: use File.basename to decompose pathnames.
30116           experimental Windows support.
30118 Sun Nov 27 00:56:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
30120         * lib/wsdl/xmlSchema/complexContent.rb: missing
30121           ComplexContent#elementformdefault method.
30123 Sat Nov 26 19:57:45 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
30125         * dln.c (conv_to_posix_path): should initialize posix.
30127 Fri Nov 25 20:34:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30129         * lib/xmlrpc/datetime.rb (DateTime::to_a): comparison with non
30130           array-convertible object must return false.
30132 Fri Nov 25 14:34:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30134         * range.c (range_max): treat end exclusion without iteration if
30135           the end value is an integer.  [ruby-talk:167433]
30137 Fri Nov 25 12:52:57 2005  Kouhei Sutou  <kou@cozmixng.org>
30139         * lib/rss/rss.rb: added backward compatibility codes.
30140         * lib/rss/parser.rb: ditto.
30141         * test/rss/test_parser.rb: ditto.
30142         * test/rss/test_2.0.rb: ditto.
30144         * test/rss/test_content.rb: use #__send__ instead of #funcall for
30145           no private method.
30147 Fri Nov 25 12:39:56 2005  Kouhei Sutou  <kou@cozmixng.org>
30149         * lib/rss/rss.rb: improved type conversion.
30150         * lib/rss/1.0.rb: ditto.
30151         * lib/rss/0.9.rb: ditto.
30152         * lib/rss/2.0.rb: ditto.
30153         * lib/rss/image.rb: ditto.
30154         * lib/rss/syndication.rb: ditto.
30156         * test/rss/test_2.0.rb: added type conversion tests.
30157         * test/rss/test_accessor.rb: ditto.
30158         * test/rss/test_to_s.rb: ditto.
30159         * test/rss/test_syndication.rb: ditto.
30160         * test/rss/test_setup_maker_2.0.rb: ditto.
30161         * test/rss/test_setup_maker_1.0.rb: ditto.
30162         * test/rss/test_setup_maker_0.9.rb: ditto.
30163         * test/rss/test_maker_sy.rb: ditto.
30164         * test/rss/test_maker_image.rb: ditto.
30165         * test/rss/test_maker_2.0.rb: ditto.
30166         * test/rss/test_maker_0.9.rb: ditto.
30167         * test/rss/test_image.rb: ditto.
30169         * test/rss/test_maker_1.0.rb: use assert instead of assert_equal.
30171         * test/rss/rss-assertions.rb: improved type conversion assertions.
30173 Fri Nov 25 10:38:20 2005  Kouhei Sutou  <kou@cozmixng.org>
30175         * lib/rss/image.rb: added Image prefix.
30177         * lib/rss/maker/image.rb: ditto.
30179 Fri Nov 25 10:33:02 2005  Kouhei Sutou  <kou@cozmixng.org>
30181         * test/rss/test_2.0.rb: added RSS 2.0 tests.
30183         * test/rss/rss-assertions.rb: extended XML stylesheet assertion.
30185         * lib/rss/0.9.rb: added initialize method.
30187         * test/rss/test_1.0.rb: cleanup.
30189 Fri Nov 25 10:29:48 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30191         * range.c (range_min): use <=> comparison rather than iteration.
30192           [ruby-talk:167420]
30194         * range.c (range_max): ditto.
30196 Thu Nov 24 01:31:44 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30198         * file.c (w32_io_info): CreateFile failed on Win9x if file was already
30199           opened. (FILE_SHARE_READ was needed, but actually I don't understand
30200           the flags of CreateFile well...)
30202 Wed Nov 23 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30204         * numeric.c (num_div): use floor rather than rb_Integer().
30205           [ruby-dev:27674]
30207 Wed Nov 23 22:34:15 2005  Kouhei Sutou  <kou@cozmixng.org>
30209         * lib/rss/parser.rb: added entity handling type predicate.
30210         * lib/rss/rexmlparser.rb: ditto.
30211         * lib/rss/xmlparser.rb: ditto.
30212         * lib/rss/xmlscanner.rb: ditto.
30214         * lib/rss/xmlscanner.rb: more robust entity handling.
30216         * test/rss/test_parser.rb: added an entity handling test.
30218 Wed Nov 23 20:59:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30220         * ext/tk/lib/tk.rb: add Tk.pkgconfig_list and Tk.pkgconfig_get
30221           [Tk8.5 feature].
30223         * ext/tk/lib/tk/text.rb: supports new indices modifiers on a Text
30224           widget [Tk8.5 feature].
30226         * ext/tk/lib/tk/virtevent.rb: add TkNamedVirtualEvent.
30228         * ext/tk/lib/tk/autoload.rb: ditto.
30230         * ext/tk/lib/tk/event.rb: add :data key for virtual events [Tk8.5
30231           feature].
30233 Wed Nov 23 18:52:45 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30235         * file.c (w32_io_info): should not call GetFileInformationByHandle
30236           for pipe.
30238         * file.c (w32_io_info): checks return value from rb_w32_get_osfhandle.
30240         * file.c (w32_io_info): now can identify directory on WinNT.
30242 Wed Nov 23 18:46:53 2005  Kouhei Sutou  <kou@cozmixng.org>
30244         * lib/rss/: use #__send__ instead of #send.
30245         * test/rss/: ditto.
30247 Wed Nov 23 18:32:56 2005  Kouhei Sutou  <kou@cozmixng.org>
30249         * test/rss/test_taxonomy.rb: use #reject directory.
30251 Wed Nov 23 18:26:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30253         * lib/rss/taxonomy.rb: changed class or module prefix to
30254           Taxonomy from Taxo.
30255         * lib/rss/maker/taxonomy.rb: ditto.
30257 Wed Nov 23 18:21:11 2005  Kouhei Sutou  <kou@cozmixng.org>
30259         * lib/rss/maker/taxonomy.rb: implemented taxonomy module for RSS
30260           Maker.
30261         * lib/rss/taxonomy.rb: supported RSS Maker.
30262         * lib/rss/maker.rb: added taxonomy module support.
30264         * lib/rss/rss.rb: adjusted to other element API.
30265         * lib/rss/1.0.rb: adjusted to other element API but backward
30266           compatibility is reserved.
30267         * lib/rss/0.9.rb: ditto.
30269         * test/rss/test_maker_taxo.rb: added test case for taxonomy module
30270           for RSS Maker.
30271         * test/rss/test_setup_maker_1.0.rb: added tests for taxo:topic.
30273         * test/rss/test_setup_maker_1.0.rb: added backward compatibility
30274           test.
30275         * test/rss/test_setup_maker_0.9.rb: ditto.
30276         * test/rss/test_setup_maker_2.0.rb: ditto.
30278         * test/rss/rss-testcase.rb: added convenience method for setting
30279           up taxo:topic.
30280         * test/rss/rss-assertions.rb: added assertion for taxo:topic.
30282         * sample/rss/blend.rb: followed new API.
30284 Wed Nov 23 17:42:24 2005  Kouhei Sutou  <kou@cozmixng.org>
30286         * lib/rss/rss.rb: fixed a indentation bug.
30288         * lib/rss/taxonomy.rb: fixed <taxo:topic> #to_s bug.
30290         * test/rss/test_taxonomy.rb: added a #to_s test.
30292 Wed Nov 23 03:40:49 2005  Guy Decoux  <ts@moulon.inra.fr>
30294         * re.c (KR_REHASH): should cast to unsigned for 64bit CPU.
30295           [ruby-core:06721]
30297 Wed Nov 23 07:26:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30299         * ext/openssl/extconf.rb: check for X509V3_EXT_nconf_nid.
30301         * ext/openssl/ossl_x509ext.c (MakeX509ExtFactory): should use
30302           OPENSSL_malloc to allocate X509V3_CTX.
30304         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext): use
30305           X509V3_EXT_nconf_nid to avoid SEGV (and to build extensions which
30306           values are placed in separate section).
30308         * test/openssl/test_x509ext.rb: new file.
30310 Wed Nov 23 01:22:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30312         * file.c (test_identical): test if two files are identical.
30314         * file.c (rb_f_test): support DOSISH systems where st_ino is not
30315           reliable.  fixed: [ruby-core:06672]
30317         * win32.h, win32.c (rb_w32_osid): check the running platform.
30319 Tue Nov 22 23:52:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30321         * lib/optparse.rb: match incomplete (in current enconding) multibyte
30322           string.  http://inamode6.tokuhirom.dnsalias.org/show/1551
30324 Tue Nov 22 18:36:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30326         * win32/win32.c (winnt_stat): set mapped errno instead of ENOENT.
30328 Tue Nov 22 14:36:54 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30330         * file.c (rb_file_s_basename): skip slashes just after UNC top slashes.
30332         * test/ruby/test_path.rb (test_dirname, test_basename): follow new
30333           spec. and add new tests.
30335 Tue Nov 22 13:30:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30337         * win32/win32.c (rb_w32_stat): Dir.chdir('//server/shared');
30338           p Dir.glob('*') should work on WinNT. (implemented our own
30339           stat(2) on WinNT) [ruby-list:41552] [ruby-dev:27711]
30341 Tue Nov 22 02:31:53 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30343         * ext/tk/lib/tkextlib/tile.rb: bug fix (Tk::Tile::USE_TTK_NAMESPACE
30344           is not defined).
30346 Tue Nov 22 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30348         * file.c (rb_file_s_basename): DOSISH_UNC is defined on cygwin but
30349           DOSISH is not.  fixed: [ruby-dev:27797]
30351 Mon Nov 21 22:50:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30353         * file.c (rb_path_skip_prefix, rb_file_s_basename): UNC without path
30354           should not be splitted.  fixed: [ruby-dev:27776] [ruby-dev:27786]
30356         * parse.y (dsym): prohibit empty symbol literal by interpolation.
30357           fixed: [ruby-talk:166529]
30359 Mon Nov 21 16:03:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30361         * win32/setup.mk: findstr doesn't exist on win9x.
30362           fixed: [ruby-dev:27756]
30364 Sun Nov 20 21:39:27 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
30366         * regparse.c (fetch_token_in_cc): tok->escaped should be
30367           initialized.  [ruby-dev:27763]
30369 Sun Nov 20 22:34:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30371         * parse.y (rb_symname_p): [ not followed by ] is not valid symbol.
30372           fixed: [ruby-talk:166520]
30374 Sat Nov 19 19:57:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30376         * lib/fileutils.rb (FileUtils::ln): ln documentation fix.
30377           [ruby-core:06661]
30379 Sat Nov 19 08:19:38 2005  Zach Dennis  <zdennis@mktec.com>
30381         * ext/socket/socket.c: Socket Documentation. [ruby-core:6552]
30383 Sat Nov 19 07:34:32 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30385         * ext/tk/lib/tk/font.rb: remove dependency on Ruby's version (1.8
30386           or 1.9).
30388         * ext/tk/lib/tkextlib/ICONS/icons.rb: ditto.
30390         * ext/tk/sample/tkextlib/treectrl/demo.rb: ditto.
30392 Fri Nov 18 18:07:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30394         * file.c (rb_file_s_dirname): should use skipprefix for UNC path.
30395           pointed out by nobu ([ruby-dev:27744]). fixed: [ruby-core:5076]
30397 Fri Nov 18 17:35:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30399         * ext/tk/lib/multi-tk.rb: add restriction to access the entried
30400           command table and manipulate other IPs (for reason of security).
30401           Now, a IP object can be controlled by only its master IP or the
30402           default IP.
30404         * ext/tk/lib/remote-tk.rb: add restriction to manipulate.
30406         * ext/tk/tcltklib.c (ip_is_slave_of_p): add TclTkIp#slave_of?(ip)
30407           to check manipulability.
30409         * ext/tk/lib/tk.rb: bug fix on handling of Tcl's namespaces.
30411         * ext/tk/lib/tk/namespace.rb: ditto.
30413 Fri Nov 18 16:47:33 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30415         * file.c (rb_file_s_dirname): added checks for some patterns with drive
30416           letter. fixed: [ruby-dev:27738]
30418         * test/ruby/test_path.rb (test_dirname): added tests for above
30419           patterns.
30421 Fri Nov 18 12:19:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30423         * win32/win32.h (S_IFIFO): r,w = IO.pipe; r.stat.pipe? now
30424           returns true on VisualC++6.
30426 Thu Nov 17 17:58:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30428         * lib/rss/1.0.rb: added convenience method 'resources'.
30430         * lib/rss/taxonomy.rb: ditto.
30432         * test/rss/rss-assertions.rb: added test for 'resources'.
30434         * test/rss/test_taxonomy.rb: ditto.
30436 Thu Nov 17 17:53:30 2005  Kouhei Sutou  <kou@cozmixng.org>
30438         * lib/rss/taxonomy.rb: implemented taxonomy module.
30440         * test/rss/test_taxonomy.rb: added tests for taxonomy support.
30442 Thu Nov 17 17:40:19 2005  Kouhei Sutou  <kou@cozmixng.org>
30444         * lib/rss/1.0.rb: added rdf:Bag.
30446 Thu Nov 17 13:52:00 2005  Kouhei Sutou  <kou@cozmixng.org>
30448         * lib/rss/rss.rb: removed needless argument 'prefix'.
30450         * lib/rss/parser.rb: ditto.
30452 Wed Nov 16 23:24:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30454         * common.mk (static-ruby): overridable.
30456         * ext/extmk.rb (parse_args): force to link extensions statically only
30457           if static is given for extstatic.
30459         * ext/extmk.rb (RUBY, RUBYW): overridable.
30461 Wed Nov 16 01:29:31 2005  Kouhei Sutou  <kou@cozmixng.org>
30463         * lib/rss/trackback.rb: added TrackBack prefix.
30465         * lib/rss/maker/trackback.rb: ditto.
30467 Wed Nov 16 01:26:13 2005  Kouhei Sutou  <kou@cozmixng.org>
30469         * lib/rss/rss.rb (RSS::VERSION): 0.1.5 -> 0.1.6.
30471         * test/rss/test_version.rb (RSS::TestVersion#test_version): ditto.
30473 Tue Nov 15 23:54:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30475         * file.c (file_load_ok): eaccess() returns 0 on success.
30476           fixed: [ruby-dev:27713]
30478 Tue Nov 15 16:36:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30480         * array.c (rb_ary_fill): previous commit disabled this usage:
30482             a = [0,1,2,3,4,5,6,7,8,9]
30483             a.fill {|i| a[i] * 10} #=> [nil, nil, ...., nil]
30485           previous commit has the advantage of early garbage collection, but
30486           potentially this would break some script. so I reverted behavior.
30488 Tue Nov 15 16:15:23 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30490         * file.c (file_load_ok): use eaccess() instead of actually opening
30491           the file.  [ruby-talk:156378]
30493         * lib/jcode.rb (String::reverse): add new methods.
30494           [ruby-list:41245]
30496 Tue Nov 15 15:49:34 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30498         * array.c (rb_ary_fill): tail elements were vanished when the middle
30499           part of array was filled. (ie: [0,1,2,3,4].fill(-1,2,1) => [0,1,-1])
30501         * test/ruby/test_array.rb (test_fill): added.
30503 Tue Nov 15 14:39:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30505         * array.c (rb_ary_fill): should adjust array length correctly when
30506           an array is expanded in the fill process.  [ruby-core:06625]
30508 Mon Nov 14 23:49:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30510         * file.c (rb_file_s_readlink): ERANGE will occur only on GPFS.
30511           [ruby-dev:27699]
30513 Mon Nov 14 17:36:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30515         * array.c (rb_ary_first): RDoc update from Daniel Berger
30516           <djberg96@yahoo.com>.  [ruby-core:06577].
30518 Sun Nov 13 10:55:24 2005  Minero Aoki  <aamine@loveruby.net>
30520         * lib/uri/common.rb (escape): regard second argument as a
30521           character set. [ruby-dev:27692]
30523 Sat Nov 12 08:36:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30525         * configure.in, eval.c, intern.h: check fd_mask type.
30527         * configure.in (socketpair): need to be checked.
30529 Fri Nov 11 19:53:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30531         * eval.c, intern.h: failed to compile where NFDBITS is defined but
30532           howmany() is not defined. [ruby-dev:27680]
30534         * io.c (is_socket): failed to compile where S_ISSOCK is not defined.
30536         * io.c (pipe_open): failed to compile where socketpair is not supported.
30538 Fri Nov 11 08:20:56 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30540         * Makefile.in (OUTFLAG): keep trailing spaces.  [ruby-dev:27666]
30542         * mkconfig.rb: substitution references added.
30544 Fri Nov 11 07:39:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30546         * configure.in: undef HAVE_LINK on BeOS. (link(2) always returns
30547           EINVAL, and this causes error in test/fileutils.)
30549         * file.c: override chown(2) and fchown(2) on BeOS. (these functions
30550           should not change user/group id if -1 is passed as corresponding
30551           argument, and this causes error in test/fileutils too)
30552           [ruby-dev:27672]
30554 Thu Nov 10 21:05:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30556         * lib/shellwords.rb: fix for blank but not empty string.
30557           fixed: [ruby-dev:27663]
30559 Wed Nov  9 08:39:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30561         * lib/shellwords.rb: refactored.  [ruby-core:06581]
30563 Tue Nov  8 17:35:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30565         * intern.h, eval.c (rb_thread_signal_raise): constified.
30567         * signal.c: cosmetic change.
30569 Tue Nov  8 15:32:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30571         * lib/drb/ssl.rb (DRb::SSLConfig#accept): fixed typo.
30572           [ruby-dev:27560] [ruby-core:4627]
30574 Mon Nov  7 20:54:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30576         * ext/iconv/iconv.c: iconvctl() support.  [EXPERIMENTAL]
30578 Mon Nov  7 16:23:23 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30580         * ext/openssl/ossl.h: need to include winsock2.h before including
30581           windows.h by some openssl headers.
30583 Mon Nov  7 13:43:51 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30585         * ext/tk/stubs.c (_nativethread_consistency_check): use simpler
30586           (low cost) way to check whether the Tcl interpreter was compiled
30587           with threads enabled of not.
30589         * ext/tk/tcltklib.c: reduce warnings.
30591         * ext/tk/tkutil/tkutil.c: ditto.
30593 Mon Nov  7 00:06:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30595         * lib/yaml.rb: removed :nodoc: to generate Kernel doc. [ruby-core:6324]
30597 Sun Nov  6 23:39:13 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30599         * ext/iconv/iconv.c (Iconv::BrokenLibrary): exception when detected a
30600           bug of underlying library.
30602 Sun Nov  6 21:43:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30604         * ext/tk/stubs.c (ruby_tcl_create_ip_and_stubs_init): should touch
30605           interpreter after initialization is done. [ruby-dev:27638]
30607 Sun Nov  6 20:13:27 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30609         * file.c (rb_file_s_readlink): readlink(2) on AIX fails with ERANGE if
30610           buffer size is less than required.  fixed: [ruby-dev:27634]
30612 Sat Nov  5 13:42:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30614         * configure.in, cygwin/GNUmakefile.in (mingw): use def file to alias
30615           symbols.  [ruby-dev:27532]
30617         * bcc32/mkexports.rb, win32/mkexports.rb: make aliases in DLL.
30619         * win32/win32.c, win32/win32.h: replace symbols only when RUBY_EXPORT
30620           is defined.
30622 Thu Nov  3 07:57:39 2005  Minero Aoki  <aamine@loveruby.net>
30624         * lib/open-uri.rb (open_loop): find_proxy should return nil when
30625           proxy does not exist. [ruby-dev:27630]
30627 Wed Nov  2 20:25:28 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30629         * ext/tk/extconf.rb: ext/tk/extconf.rb: change the check parameter
30630           for Win32.
30632 Wed Nov  2 19:03:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30634         * ext/tk/tcltklib.c (ip_rbUpdateObjCmd, ip_rb_threadUpdateObjCmd):
30635           passed improper flags to DoOneEvent().
30637         * ext/tk/tkutil/tkutil.c: use rb_obj_respond_to() instead of
30638           rb_respond_to().
30640 Tue Nov  1 14:20:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30642         * eval.c (rb_call_super): should call method_missing if super is
30643           called from Kernel method.
30645         * eval.c (exec_under): frame during eval should preserve external
30646           information.
30648 Tue Nov  1 10:48:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30650         * ext/openssl/extconf.rb: should check ERR_peek_last_error().
30651           [ruby-dev:27597]
30653         * ext/openssl/ossl.c (ossl_raise): ditto.
30655 Mon Oct 31 17:34:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30657         * configure.in: use proper option for Sun linker. A patch from
30658           Shinya Kuwamura <kuwa at labs.fujitsu.com>.  [ruby-dev:27603]
30660 Mon Oct 31 05:46:08 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30662         * ext/openssl/ossl_cipher.c (ossl_cipher_update): input data must
30663           not be empty. [ruby-talk:161220]
30665         * test/openssl/test_cipher.rb: add test for Cipher#update("").
30667 Mon Oct 31 05:38:26 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
30669         * lib/webrick/httpservlet/cgihandler.rb
30670           (WEBrick::HTTPServlet::CGIHandler#do_GET): the value of Set-Cookie:
30671           header field should be splited into each cookie.  [ruby-Bugs:2199]
30673         * lib/webrick/cookie.rb (WEBrick::Cookie.parse_set_cookie): new method
30674           to parse the value of Set-Cookie: header field.
30676         * test/webrick/test_cookie.rb, test/webrick/test_cgi.rb,
30677           test/webrick/webrick.cgi: add some test for cookie.
30679 Mon Oct 31 02:33:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30681         * numeric.c (fix_rshift): RDoc fix.  [ruby-core:6351]
30683         * util.h (strtod): add #undef for platforms defines strtod()
30684           macro.   [ruby-dev:27563]
30686 Mon Oct 31 02:31:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30688         * test/ruby/test_float.rb (test_precision): test by assert_in_delta.
30689           [ruby-dev:27575]
30691 Sat Oct 29 01:58:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30693         * ext/etc/etc.c: document update from mathew <meta@pobox.com>.
30694           [ruby-core:06473]
30696         * ext/fcntl/fcntl.c: ditto.
30698 Sat Oct 29 16:56:03 2005  Tadayoshi Funaba  <tadf@dotrb.org>
30700         * lib/date.rb: added seven predicates sunday? to saturday?.
30702         * lib/date.rb: added two methods {prev,next}_month,
30703           that are almost same as << and >>.
30705 Thu Oct 27 20:34:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30707         * enumerator.c (enumerator_allocate): allow subclassing.
30709 Thu Oct 27 16:45:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30711         * string.c (scan_once): wrong condition to use mbclen2().
30712           [ruby-dev:27535]
30714 Thu Oct 27 11:53:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30716         * missing.h, missing/memcmp.c, missing/memmove.c:
30717           ANSI compatible interface.
30719 Wed Oct 26 09:15:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30721         * ext/syck/implicit.c (syck_type_id_to_uri): should return
30722           newly allocated memory. otherwise, type_id will be freed
30723           twice. [ruby-dev:27384] [ruby-core:6385]
30725 Wed Oct 26 01:58:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30727         * configure.in (RUBY_EXTERN): macro to export symbols in shared
30728           library.  [ruby-core:05528]
30730         * defines.h, {bcc32,win32,wince}/Makefile.sub (RUBY_EXTERN): moved to
30731           configuration pass.
30733         * ext/extmk.rb (extmake): RUBY_EXTERN for static linked extensions.
30735 Tue Oct 25 20:06:59 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30737         * ruby.h (Qfalse, Qtrue, Qnil, Qundef): make sure these immediate
30738           values have VALUE type. there is an environment where sizeof(VALUE)
30739           != sizeof(int) like IA64. if 32bit integer (Qtrue) is passed to ANYARGS
30740           and received by 64bit integer (VALUE), upper bits may have garbage value.
30741           [ruby-dev:27513]
30743 Tue Oct 25 15:32:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30745         * lib/rational.rb: applied documentation patch from Gavin Sinclair
30746           <gsinclair@gmail.com>.  [ruby-core:06364]
30748         * lib/irb.rb (IRB::Irb::eval_input): handle prompts with newlines
30749           in irb auto-indentation mode.  [ruby-core:06358]
30751 Tue Oct 25 14:21:46 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30753         * gc.c (garbage_collect): sorry, previous commit was incorrect.
30754           [ruby-core:6386]
30756 Tue Oct 25 13:40:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30758         * gc.c (garbage_collect): return now whether there're rooms for new
30759           objects, rather than whether GC run. fixed: [ruby-core:6376]
30761 Tue Oct 25 02:12:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30763         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::LABEL_LIST_RE):
30764           reduce redundant backtrack.  [ruby-talk:161771]
30766 Tue Oct 25 00:35:33 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30768         * lib/rinda/*: RDoc documentation from Eric Hodel
30769           <drbrain@segment7.net> added.
30771 Mon Oct 24 21:14:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30773         * configure.in, io.c: use sys/syscall.h if syscall.h is not available.
30774           [ruby-core:06247]
30776 Mon Oct 24 20:38:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30778         * ext/Win32API/lib/win32/resolv.rb (get_info): support multiple DNS.
30779           fixed: [ruby-list:40058], [ruby-dev:27479]
30781 Mon Oct 24 11:01:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30783         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
30784           typo fixed.  [ruby-talk:162187]
30786         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
30787           ditto.  [ruby-core:06359]
30789 Mon Oct 24 07:57:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30791         * ext/tk/lib/tk/canvas.rb (TkCanvasItemConfig::__item_val2ruby_optkeys):
30792           typo fixed.  [ruby-talk:162187]
30794         * ext/tk/lib/tk/menu.rb (TkMenuEntryConfig::__item_val2ruby_optkeys):
30795           ditto.  [ruby-core:06359]
30797         * lib/matrix.rb (Matrix::initialize): use funcall instead of send
30798           to allow private methods to be called.  A report from
30799           Jean-Claude Arbaut <jcarbaut@laposte.net>.  [ruby-core:06359]
30801 Mon Oct 24 00:41:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30803         * time.c (time_sunday): added predicate methods for the days of the
30804           week.  [ruby-list:41340]
30806 Sun Oct 23 07:11:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
30808         * ext/tk/extconf.rb: improve messages [ruby-core:06325].
30810         * ext/tk/lib/tk.rb, ext/tk/lib/tk/canvas.rb, ext/tk/lib/tk/entry.rb,
30811           ext/tk/lib/tk/frame.rb, ext/tk/lib/tk/image.rb,
30812           ext/tk/lib/tk/itemconfig.rb, ext/tk/lib/tk/labelframe.rb,
30813           ext/tk/lib/tk/listbox.rb, ext/tk/lib/tk/menu.rb,
30814           ext/tk/lib/tk/radiobutton.rb, ext/tk/lib/tk/scale.rb,
30815           ext/tk/lib/tk/spinbox.rb, ext/tk/lib/tk/text.rb,
30816           ext/tk/lib/tk/toplevel.rb: improve conversion of option values.
30818         * ext/tk/lib/tkextlib/*: ditto.
30820         * ext/tk/lib/tkextlib/*: update to support ActiveTcl8.4.11.2.
30822         * ext/tk/lib/tkextlib/trofs/*: support Trofs 0.4.3.
30824         * ext/tk/lib/tkextlib/tile/*: support Tile 0.7.2.
30826         * ext/tk/lib/tkextlib/vu/*: support vu 2.3.0.
30828         * ext/tk/lib/tkextlib/tcllib/*: support Tcllib 1.8 (Tklib 0.3).
30830 Sat Oct 22 23:54:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30832         * ext/extmk.rb, lib/mkmf.rb (with_config): support --with-extension
30833           options.  [ruby-dev:27449]
30835 Sat Oct 22 14:25:43 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30837         * util.[hc] (ruby_add_suffix): constified.
30839         * util.[hc] (ruby_scan_{oct,hex}): fixed typo. (renamed from
30840           scan_{oct,hex})
30842         * util.c: almostly ANSI styled. (except for functions depending on
30843           macro and K&R technique)
30845 Sat Oct 22 13:26:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30847         * object.c (sym_inspect), parse.y (parser_yylex, rb_symname_p): check
30848           if valid as a symbol name more strictly.  [ruby-dev:27478]
30850         * test/ruby/test_symbol.rb: tests for [ruby-core:03573].
30852         * time.c (rb_strftime): removed meaningless volatile modifiers, and
30853           concatenate successive nul characters at once.  [ruby-dev:27472]
30855         * ext/tk/lib/tk/font.rb, ext/tk/lib/tkextlib/ICONS/icons.rb,
30856           ext/tk/sample/tkextlib/treectrl/demo.rb, lib/net/imap.rb,
30857           lib/rss/parser.rb, test/rss/test_content.rb,
30858           test/rss/test_dublincore.rb, test/rss/test_syndication.rb,
30859           test/rss/test_trackback.rb, test/ruby/test_eval.rb,
30860           test/socket/test_socket.rb, test/socket/test_udp.rb:
30861           Object#fcall was renamed as Object#funcall.
30863 Sat Oct 22 10:08:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30865         * missing.h, missing/*.c: SUSv3 compatible strcasecmp and strncasecmp,
30866           ANSI compatible strtol and strtoul, and ANSI styled other functions.
30868 Fri Oct 21 19:16:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30870         * rubysig.h (CHECK_INTS): fixed typo. (I believe bit-or is improper)
30872 Fri Oct 21 17:49:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30874         * bin/erb (ERB::Main::run): typo fixed.  [ruby-core:06337]
30876 Fri Oct 21 15:42:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30878         * intern.h, struct.c (rb_struct_iv_get): constified.
30880         * marshal.c: avoid one VC++6 warning for implicit conversion
30881           from int to char.
30883         * ruby.h: ANSI styled.
30885         * bcc32/Makefile.sub (HAVE_HYPOT): added.
30887         * ext/socket/extconf.rb: BeOS is only one platform should call
30888           closesocket, so check __BEOS__ macro directly. (I was worried
30889           accidently HAVE_CLOSESOCKET is defined on windows again because
30890           it has it)
30892         * ext/socket/{getaddrinfo.c,socket.c}: ditto.
30894         ... these are all cosmetic changes.
30896 Fri Oct 21 15:23:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30898         * bignum.c (bignew_1): convertion from `int' to `char' discards
30899           upper bits, (ie. (char)0xff00 -> 0) so it's better to test if
30900           nonzero and set 0 or 1 instead of simply casting ... as a flag usage.
30901           (but I believe this won't cause actual bug in current implementation)
30902           [ruby-dev:27055]
30904         * time.c: should use LONG_LONG instead of `long long'.
30906 Thu Oct 20 22:22:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30908         * parser.y (struct parser_params): parser never modify input string.
30910         * ext/ripper/tools/preproc.rb (prelude): do not append surplus
30911           newlines to fix line numbers.
30913 Thu Oct 20 11:41:57 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30915         * class.c, eval.c, hash.c, st.c, variable.c: changed /* ??? */ stuff
30916           protoize generated to ANYARGS.
30918 Thu Oct 20 11:18:11 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30920         * eval.c, file.c, ruby.c: removed strchr, strrchr, strstr definition
30921           because they are defined in missing.h.
30923         * missing.h, missing/strchr.c, missing/strstr.c: ANSI styled.
30925 Thu Oct 20 09:36:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
30927         * lib/mkmf.rb (create_makefile): Borland make seems not to allow
30928           empty dependency list. If this change is not good, please correct
30929           it.
30931 Thu Oct 20 07:55:09 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30933         * lib/mkmf.rb (create_makefile): get rid of a restriction
30934           of Borland make.  fixed: [ruby-dev:27460]
30936         * ext/ripper/depend: ditto.
30938 Wed Oct 19 23:58:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30940         * lib/mkmf.rb (create_makefile): do not create unnecessary empty
30941           directories.  fixed: [ruby-dev:27451]
30943 Wed Oct 19 08:28:32 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30945         * file.c (rb_file_join): elements may contain null pointer strings.
30946           report and fixed by Lloyd Zusman (hippoman): [ruby-core:06326]
30948 Wed Oct 19 02:34:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30950         * enumerator.c, eval.c, gc.c, parse.y, regparse.c, sjis.c, time.c:
30951           made internal symbols static.  [ruby-dev:27435]
30953 Tue Oct 18 10:58:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30955         * ext/dl/depend, ext/dl/extconf.rb, ext/socket/depend,
30956           ext/socket/extconf.rb: shouldn't define DESTCLEANFILES in depend,
30957           use $distcleanfiles in extconf.rb.
30959         * win32/Makefile.sub (distclean-local): should remove .config.h.time.
30961 Mon Oct 17 09:42:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30963         * mkconfig.rb: fixup configure_args for mswin32 configure.
30965         * win32/configure.bat (srcdir, target): ditto.
30967 Mon Oct 17 05:01:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30969         * env.h: move struct METHOD and struct BLOCK from eval.c to
30970           support NodeWrap and ParseTree.
30972 Sun Oct 16 22:16:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
30974         * ext/extmk.rb: omit non-existing directories.
30976 Sun Oct 16 14:40:54 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
30978         * lib/rinda/rinda.rb (Rinda::Tuple#initialize): check remote hash
30979           tuple. fixed: [ruby-list:41227]
30981         * test/rinda/test_rinda.rb: test it.
30983 Sun Oct 16 03:38:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
30985         * rubysig.h (CHECK_INTS): prevent signal handler to run during
30986           critical section.  [ruby-core:04039]
30988         * eval.c (load_wait): need not to call rb_thread_schedule()
30989           explicitly.  [ruby-core:04039]
30991         * eval.c (rb_thread_schedule): clear rb_thread_critical.
30992           [ruby-core:04039]
30994 Sun Oct 16 00:13:14 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
30996         * win32/configure.bat: remove unnecessary line which prevents
30997           creating Makefile.
30999 Sat Oct 15 23:52:07 2005  Shugo Maeda  <shugo@ruby-lang.org>
31001         * lib/net/ftp.rb: (getbinaryfile): allow nil for localfile, and
31002           returns retrieved data if localfile is nil.
31004         * lib/net/ftp.rb: (gettextfile): ditto.
31006 Sat Oct 15 19:51:29 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31008         * bin/erb: typo fixed, again. thanks, Doug Kearns.
31010 Fri Oct 14 23:09:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31012         * win32/Makefile.sub (MKFILES): update MKFILES if configure files get
31013           changed.
31015         * win32/configure.bat, win32/setup.mak (configure_args): store
31016           arguments to configure files.
31018 Fri Oct 14 22:05:45 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31020         * win32/win32.c (ioctl): should set errno.
31022 Fri Oct 14 16:39:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31024         * lib/webrick/config.rb (Config::FileHandler): :UserDir should be nil.
31025           It is harmful to permit the access to ~/public_html by default.
31026           suggested by Hiroyuki Iwatsuki.
31028 Fri Oct 14 04:58:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31030         * eval.c (rb_obj_instance_exec): create instance_exec and
31031           module_exec which pass arguments to the block.
31033         * eval.c (rb_f_funcall): rename fcall to funcall to follow
31034           tradition.
31036 Thu Oct 13 23:29:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31038         * parse.y (HEAPCNT): bison allocates indivisible size.
31039           fixed: [ruby-core:06261]
31041         * io.c, pack.c, ext/syck/rubyext.c, ext/syck/syck.h, missing/isinf.c:
31042           get rid of warnings.  fixed: [ruby-core:06247]
31044 Wed Oct 12 12:51:56 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31046         * ext/openssl/ossl.c (Init_openssl): should call
31047           OpenSSL_add_ssl_algorithms().
31049 Wed Oct 12 11:08:54 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
31051         * file.c (rb_f_test): typo in RDoc comments.
31053 Tue Oct 11 21:41:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31055         * configure.in (RUBY_FUNC_ATTRIBUTE): check prefixed attribute form
31056           first.  [ruby-dev:27398]
31058         * array.c, enum.c, eval.c, util.c: safer function pointer usage.
31059           fixed: [ruby-core:06143]
31061         * util.h (qsort): removed the definition incompatible to ANSI.
31062           fixed: [ruby-core:06147]
31064         * eval.c (rb_obj_respond_to): check if obj responds to the given
31065           method with the given visibility.  [ruby-dev:27408]
31067         * eval.c (rb_respond_to): conform to Object#respond_to?.  [ruby-dev:27411]
31069 Tue Oct 11 00:01:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31071         * st.c (st_free_table): do not call free() but xfree().
31072           [ruby-core:06205]
31074 Sat Oct  8 19:49:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31076         * eval.c (Init_Binding): add Binding#dup method.  [yarv-dev:666]
31078         * io.c (rb_io_init_copy): clear PREP flag for copied IO.
31079           fixed: [ruby-dev:27371]
31081         * parse.y (rb_parser_malloc, rb_parser_free): manage parser stack on
31082           heap.  [ruby-list:41199]
31084         * parse.y (ripper_initialize): use rb_respond_to().
31086         * ext/ripper/depend (check): get rid of re-generating ripper.y always.
31088         * ext/iconv/charset_alias.rb: parse config.charset_alias file directly.
31090         * ext/nkf/lib/kconv.rb (Kconv.conv): get rid of nil.to_a.
31092         * lib/scanf.rb (Scanf::FormatSpecifier#letter, #width): use matched
31093           substring directly.
31095         * test/ruby/test_assignment.rb, test/ruby/test_iterator.rb: followed
31096           change of sample/test.rb.
31098         * test/net/http/test_http.rb: removed superfluous splatting stars.
31100 Fri Oct  7 16:41:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31102         * eval.c (splat_value): call rb_Array() to convert svalue to
31103           values.  [ruby-dev:27397]
31105 Fri Oct  7 09:54:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31107         * lib/cgi.rb (CGI::Cookie::parse): Cookies from Nokia devices may
31108           not be parsed correctly.  A patch from August Z. Flatby
31109           (augustzf) in [ruby-Patches-2595].  [ruby-core:06183]
31111 Thu Oct  6 22:51:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31113         * object.c (rb_Array): Array() to raise error for objects without
31114           to_ary, nor to_a.
31116         * object.c (nil_to_a): revert NilClass#to_a.
31118 Thu Oct  6 20:10:38 2005  Minero Aoki  <aamine@loveruby.net>
31120         * ext/strscan/strscan.c (strscan_free): remove useless code.
31121           [ruby-dev:26368] [ruby-dev:27389]
31123 Thu Oct  6 01:02:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31125         * range.c (rb_range_beg_len): should return Qfalse for non-range
31126           object.
31128 Wed Oct  5 04:42:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31130         * lib/xmlrpc/server.rb (XMLRPC::Server#initialize): should mount the
31131           servlet on "/".
31133 Wed Oct  5 04:06:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31135         * lib/xmlrpc/server.rb (XMLRPC::Server#serve): delete wrong call
31136           of "join".
31138 Mon Oct  3 00:04:00 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
31140         * pack.c (EXTEND16): [ruby-dev:27383]
31142 Sat Oct  1 23:55:24 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31144         * win32/win32.c (do_select, rb_w32_select): brush up.
31146 Sat Oct  1 12:57:02 2005  Tanaka Akira  <akr@m17n.org>
31148         * bignum.c (rb_big_rand): removed.  [ruby-dev:25405]
31150 Sat Oct  1 01:46:51 2005  Tanaka Akira  <akr@m17n.org>
31152         * lib/open-uri.rb (OpenURI.open_loop): prohibit multiple proxy
31153           options.
31155 Thu Sep 29 10:26:18 2005  Tanaka Akira  <akr@m17n.org>
31157         * ext/dl/cptr.c (rb_dlptr_s_to_ptr): abolish sizeof(FILE).
31158           [ruby-dev:27317]
31160 Thu Sep 29 10:15:14 2005  Tanaka Akira  <akr@m17n.org>
31162         * lib/open-uri.rb (:proxy_http_basic_authentication): new option.
31164 Thu Sep 29 07:22:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31166         * eval.c (rb_f_send): underscores need to be escaped.
31167           fixed by Doug Kearns.  [ruby-core:06053]
31169 Thu Sep 29 00:57:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31171         * eval.c (ev_const_get), variable.c (rb_const_get_0): retry only when
31172           autoload succeeded.
31174         * variable.c (rb_autoload_load): now return true if autoload
31175           succeeded.  fixed: [ruby-dev:27331]
31177 Wed Sep 28 23:40:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31179         * file.c (rb_stat_inspect): constified.
31181 Wed Sep 28 15:12:28 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31183         * lib/webrick/cgi.rb (WEBrick::CGI#start): req.query_string should
31184           refer the value of QUERY_STRING. [ruby-list:41186]
31186         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#query_string=):
31187           add new method.
31189 Wed Sep 28 10:45:44 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31191         * ext/tk/tcltklib.c: cannot compile with Tcl/Tk8.0.x [ruby-dev:27335].
31193 Wed Sep 28 07:56:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31195         * lib/yaml/basenode.rb (YAML::BaseNode::match_segment): fix typo.
31196           [ruby-dev:27237], [ruby-core:05854]
31198         * lib/yaml/tag.rb (Module#yaml_as): suppress warnings.
31200         * lib/yaml/types.rb (YAML::PrivateType, YAML::DomainType): ditto.
31202 Wed Sep 28 03:16:41 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31204         * rubysig.h: fixed build problem with --enable-pthread on platforms
31205           which don't have setitimer().
31207 Mon Sep 26 22:32:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31209         * eval.c (set_trace_func): add rb_secure(4) to prevent adding
31210           tracing function.
31212 Mon Sep 26 20:59:28 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31214         * parse.y: changed to ANSI function style.
31216 Sun Sep 25 12:02:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31218         * bin/erb: typo fixed.
31220 Sun Sep 25 11:54:11 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
31222         * lib/rinda/tuplespace.rb (Rinda::TemplateEntry::initialize): pull
31223           up method. Tabs converted to spaces.
31225 Sun Sep 25 09:34:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31227         * parse.y: replaced `foo _((boo))' with `foo(boo)'.
31229 Sun Sep 25 08:19:53 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31231         * test/rss/test_content.rb, test/rss/test_syndication.rb: use fcall
31232           instead of send in order to override visibility.
31234 Sun Sep 25 01:46:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31236         * misc/ruby-mode.el (ruby-calculate-indent): arrange deep-indent
31237           closing parenthesis at same column as the opening.
31239 Sun Sep 25 01:33:41 2005  Tanaka Akira  <akr@m17n.org>
31241         * process.c (proc_setrlimit): make the third argument (rlim_max)
31242           optional.
31244 Sun Sep 25 00:42:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31246         * misc/ruby-mode.el (ruby-expr-beg): deal with heredoc separately.
31247           fixed: [ruby-list:41168]
31249         * misc/ruby-mode.el (ruby-calculate-indent): not to deepen indent
31250           level for continuous line inside parentheses.
31251           http://nabeken.tdiary.net/20050915.html#p02
31253 Sat Sep 24 21:19:39 2005  Minero Aoki  <aamine@loveruby.net>
31255         * ext/strscan/strscan.c: document enhancement.
31257         * ext/strscan/strscan.c: update copyright year.
31259         * ext/strscan/strscan.c: update coding style.
31261 Sat Sep 24 20:20:05 2005  Minero Aoki  <aamine@loveruby.net>
31263         * test/net/http/test_http.rb (teardown): Net::HTTP.version_1_1 breaks
31264           many other tests; ensure that Net::HTTP is version 1.2 after test.
31265           [ruby-dev:27312]
31267 Sat Sep 24 11:44:28 2005  Minero Aoki  <aamine@loveruby.net>
31269         * test/net/http/test_http.rb: new file.
31271 Sat Sep 24 08:54:05 2005  Minero Aoki  <aamine@loveruby.net>
31273         * lib/fileutils.rb (cd): no longer accept :noop option, related
31274           code is useless. [ruby-core:05858] [ruby-Bugs:2494]
31276 Sat Sep 24 08:30:00 2005  Tanaka Akira  <akr@m17n.org>
31278         * lib/pathname.rb (Pathname#sub): new method.
31280 Sat Sep 24 08:29:36 2005  Minero Aoki  <aamine@loveruby.net>
31282         * lib/fileutils.rb: fix visibility of FileUtils::NoWrite, Verbose,
31283           DryRun. [ruby-core:05954]
31285         * test/fileutils/test_nowrite.rb: test it.
31287         * test/fileutils/test_dryrun.rb: new file.
31289         * test/fileutils/test_verbose.rb: new file.
31291 Sat Sep 24 07:59:01 2005  Minero Aoki  <aamine@loveruby.net>
31293         * sample/ripper/colorize.rb: removed (replaced by ruby2html.rb).
31295         * sample/ripper/ruby2html.rb: added.
31297 Sat Sep 24 06:35:15 2005  Minero Aoki  <aamine@loveruby.net>
31299         * ext/ripper: no longer generates .rb files.
31301         * parse.y (Init_ripper): ripper_init_eventids*() takes 1 argument,
31302           self (class Ripper).
31304         * ext/ripper/depend: target removed: `lib/ripper/core.rb'.
31306         * ext/ripper/depend: new target `eventids2table.c'.
31308         * ext/ripper/depend: new target `check'.
31310         * ext/ripper/eventids2.c: include eventids2table.c.
31312         * ext/ripper/eventids2.c: initialize SCANNER_EVENT_TABLE.
31314         * ext/ripper/extconf.rb: update $cleanfiles list.
31316         * ext/ripper/tools/generate.rb: no longer generate ripper/core.rb.
31318         * ext/ripper/tools/generate.rb: new mode `check'.
31320         * ext/ripper/tools/generate.rb: new mode `eventids2table'.
31322         * ext/ripper/lib/ripper/core.rb.in: removed.
31324         * ext/ripper/lib/ripper/core.rb: added.
31326         * ext/ripper/lib/ripper/filter.rb: update copyright year.
31328         * ext/ripper/lib/ripper/lexer.rb: ditto.
31330         * ext/ripper/lib/ripper/sexp.rb: ditto.
31332 Sat Sep 24 02:40:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31334         * lib/delegate.rb: document update from James Edward Gray II
31335           <james@grayproductions.net>.  [ruby-core:05942]
31337 Sat Sep 24 02:05:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31339         * process.c (proc_daemon): should restrict execution on levels
31340           higher than $SAFE=2.  suggested by URABE Shyouhei
31341           <shyouhei@ice.uec.ac.jp>.
31343 Fri Sep 23 20:10:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31345         * ext/ripper/tools/generate.rb, ext/ripper/tools/preproc.rb: StringIO
31346           is not available for miniruby.  fixed: [ruby-dev:27307]
31348 Fri Sep 23 17:36:48 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
31350         * ext/win32ole/win32ole.c: avoid core dump with WIN32OLE_EVENT.
31351           [ruby-dev:27133]
31353 Fri Sep 23 16:27:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31355         * lib/forwardable.rb: replaced by new implementation from
31356           <Daniel.Berger@qwest.com>.  [ruby-core:05899]
31358 Fri Sep 23 07:07:47 2005  Minero Aoki  <aamine@loveruby.net>
31360         * test/ripper/depend: use --output option instead of redirect;
31361           nmake does not remove a target when the target file is created by
31362           redirect. [ruby-dev:26466]
31364         * test/ripper/tools/preproc.rb: new option --output.
31366 Fri Sep 23 06:57:52 2005  Minero Aoki  <aamine@loveruby.net>
31368         * test/ripper/tools/generate.rb: check parser event arity.
31370         * test/ripper/tools/generate.rb: detect crash of parser-event-IDs
31371           and scanner-event-IDs.
31373 Fri Sep 23 06:01:30 2005  Minero Aoki  <aamine@loveruby.net>
31375         * test/ruby/test_file.rb: check File#chown(nil,nil).
31376           [ruby-dev:27140]
31378 Fri Sep 23 05:57:23 2005  Minero Aoki  <aamine@loveruby.net>
31380         * ext/ripper: refactoring code generation tools. [ruby-dev:27247]
31381           [ruby-dev:27273]
31383         * ext/ripper/depend: use generate.rb.
31385         * ext/ripper/lib/ripper/core.rb: removed.
31387         * ext/ripper/tools/generate-eventids1.rb: removed (code moved to
31388           generate.rb).
31390         * ext/ripper/tools/generate-ripper_rb.rb: removed (code moved to
31391           generate.rb).
31393         * ext/ripper/tools/list-parse-event-ids.rb: removed (code moved to
31394           generate.rb).
31396         * ext/ripper/tools/list-scan-event-ids.rb: removed (code moved to
31397           generate.rb).
31399         * ext/ripper/lib/ripper/core.rb: removed.
31401         * ext/ripper: refactoring tests. [ruby-dev:27273]
31403         * ext/ripper/test/check-event-arity.rb: removed (code moved to
31404           tools/generate.rb).
31406         * ext/ripper/test/check-event-coverage.rb: removed (code moved to
31407           test/ripper/test_parser_events.rb).
31409         * ext/ripper/test/check-scanner-event-coverage.rb: removed (code
31410           moved to test/ripper/test_scanner_events.rb).
31412         * ext/ripper/test/list-called-events.rb: removed.
31414         * ext/ripper/test/src_rb: removed.
31416         * ext/ripper/test/validate.rb: removed.
31418         * test/ripper/test_scanner_events.rb: check event coverage.
31420         * ext/ripper/lib/ripper/core.rb.in: update copyright year.
31422 Thu Sep 22 23:40:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31424         * lib/mkmf.rb (find_executable0): default path if environment is not
31425           set.  [ruby-dev:27281]
31427         * ext/ripper/extconf.rb (have_command): replaced with find_executable.
31429 Thu Sep 22 17:31:48 2005  Shugo Maeda  <shugo@ruby-lang.org>
31431         * test/readline/test_readline.rb (TestReadline::replace_stdio):
31432           merged the patch of [ruby-dev:25232] instead of [ruby-dev:25223].
31433           (merged from ruby_1_8 branch)
31435 Wed Sep 21 23:30:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31437         * lib/mkmf.rb (configuration): generalized nmake dependent code.
31439 Wed Sep 21 14:16:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31441         * ext/ripper/depend (SUFFIXES): no longer needed.
31443         * ext/ripper/depend (c): avoid nmake problem. fixed [ruby-dev:27191]
31445 Wed Sep 21 08:52:25 2005  why the lucky stiff  <why@ruby-lang.org>
31447         * ext/syck/token.c: correctly compute indentation of a block
31448           scalar's parent node. [ruby-talk:150620]
31450 Wed Sep 21 08:20:24 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31452         * README.EXT, README.EXT.ja: add new features.
31454 Wed Sep 21 07:43:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31456         * lib/optparse.rb (default_argv, Arguable#options): defaults strings
31457           to be parsed to Arguable instance.
31459 Wed Sep 21 02:44:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31461         * file.c (path_check_0): disallow sticky world writable directory
31462           in PATH (and $LOAD_PATH).  [ruby-dev:27226]
31464 Wed Sep 21 00:32:22 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31466         * numeric.c (fix_idiv): 1.div(1.0) should return integer value.
31467           [ruby-dev:27235]
31469 Tue Sep 20 22:25:43 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31471         * ext/io/wait/lib/nonblock.rb: disable on platforms non-blocking flag
31472           is not available.  fixed: [ruby-dev:27187]
31474         * file.c (rb_stat_inspect): protoized function pointer.
31476 Tue Sep 20 18:23:04 2005  Tanaka Akira  <akr@m17n.org>
31478         * eval.c (thread_mark): mark th->last_status.  [ruby-dev:27179]
31480 Tue Sep 20 18:20:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31482         * lib/yaml.rb: require 'yaml/constants'.  [ruby-core:5776]
31484 Tue Sep 20 17:48:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31486         * lib/xmlrpc/client.rb (XMLRPC::Client::do_rpc): add charset
31487           information to content-type header.[ruby-core:5127]
31489         * lib/xmlrpc/server.rb (CGIServer::serve): ditto.
31491         * lib/xmlrpc/server.rb (ModRubyServer::serve): ditto.
31493         * lib/xmlrpc/server.rb (WEBrickServlet::service): ditto.
31495 Tue Sep 20 17:26:42 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31497         * test/webrick/test_cgi.rb: set ENV["PATH"] to CGIEnvPath on
31498           windows. bcc32's runtime is not installed into system directory,
31499           so it cannot be found without this setting. [ruby-dev:27166]
31501 Tue Sep 20 17:14:10 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31503         * io.c: PIPE_BUF is not defined on BeOS. use _POSIX_PIPE_BUF instead.
31504           [ruby-dev:27185]
31506 Tue Sep 20 17:10:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31508         * test/dbm/test_dbm.rb (TestDBM::test_s_open_error): remove
31509           test_s_open_error test to detect duplicate open.
31510           [ruby-dev:27202]
31512 Tue Sep 20 15:39:40 2005  why the lucky stiff  <why@ruby-lang.org>
31514         * ext/syck/emitter.c (syck_scan_scalar): prevent indicators from
31515           appearing alone or at the end of plain scalars. [ruby-core:5826]
31517         * ext/syck/emitter.c (syck_emit_scalar): treat typed scalar nodes
31518           as complex keys.
31520         * lib/syck.h: version 0.60.
31522         * lib/yaml/basenode.rb (YAML::BaseNode#at): transform keys during
31523           key searches.
31525         * ext/syck/rubyext.c: loading of binary-typed nodes.  prevent
31526           emission of plain strings that look like symbols, but which aren't.
31528 Tue Sep 20 05:48:26 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31530         * test/xmlrpc/test_webrick_server.rb (setup_http_server):
31531           should not include 'webrick/https' unless 'use_ssl' because
31532           it fails where openssl is not installed.
31534 Tue Sep 20 01:24:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31536         * eval.c (splat_value): use to_a to splat non Array object.
31538         * object.c (nil_to_a): remove nil.to_a.  [experimental]
31540 Tue Sep 20 01:01:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31542         * lib/mathn.rb (Fixnum): remove debug print.
31544         * lib/rational.rb (Rational): ditto.
31546 Tue Sep 20 00:34:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31548         * io.c (io_close): call rb_io_close() directly if io is a T_FILE
31549           object.  [ruby-dev:27156]
31551 Mon Sep 19 18:58:10 2005  Minero Aoki  <aamine@loveruby.net>
31553         * file.c (rb_file_chown): should accept nil. [ruby-dev:27171]
31555 Mon Sep 19 18:29:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31557         * file.c (file_expand_path): allow pathnames to expand.
31558           [ruby-dev:27152]
31560 Mon Sep 19 15:12:15 2005  Minero Aoki  <aamine@loveruby.net>
31562         * ext/ripper/depend: do not make ripper/core.rb. [ruby-dev:26462]
31564 Mon Sep 19 14:49:19 2005  Minero Aoki  <aamine@loveruby.net>
31566         * ext/ripper/eventids2.c: add prefix `t' to tLAMBDA-related lexer
31567           events.
31569         * ext/ripper/lib/ripper/core.rb: updated.
31571 Mon Sep 19 14:39:46 2005  Minero Aoki  <aamine@loveruby.net>
31573         * parse.y (do_block): do_block event dispatches 2 args.
31574           [ruby-dev:26964]
31576         * ext/ripper/lib/ripper/core.rb: updated.
31578         * ext/ripper/tools/list-parser-event-ids.rb: check arity mismatch.
31580 Mon Sep 19 07:45:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31582         * ext/openssl/ossl_pkey.h, ossl_pkey_rsa.c, ossl_pkey_dsa.c:
31583           an instance variable "private" is added to OpenSSL::PKey class.
31584           this ivar is a flag that shows whether there is a private key
31585           in the instance.
31587         * ext/openssl/ossl_engine.c: (ossl_engine_load_privkey): set private
31588           key flag.
31590         * test/openssl/test_pkey_rsa.rb: add test about private detection.
31592 Mon Sep 19 06:38:03 2005  Minero Aoki  <aamine@loveruby.net>
31594         * lib/fileutils.rb: method renaming: collect_methods ->
31595           collect_method.
31597 Mon Sep 19 05:58:59 2005  Minero Aoki  <aamine@loveruby.net>
31599         * lib/fileutils.rb: use module_function instead of single extend.
31601         * test/fileutils/test_fileutils.rb: test existence of singleton
31602           methods.
31604 Mon Sep 19 05:32:41 2005  Minero Aoki  <aamine@loveruby.net>
31606         * lib/fileutils.rb (remove_entry_secure): does not use chdir(2).
31608 Mon Sep 19 03:17:48 2005  Tanaka Akira  <akr@m17n.org>
31610         * file.c (rb_thread_flock): wrap the flock system call by
31611           TRAP_BEG/TRAP_END to enable signals.  [ruby-dev:27122]
31613         * ext/socket/socket.c (bsock_send): wrap the sendto and send system
31614           call by TRAP_BEG/TRAP_END to enable signals when writing to a socket
31615           which is full.  [ruby-dev:27132]
31617         * io.c (rb_io_syswrite): wrap the write system call by
31618           TRAP_BEG/TRAP_END to run signal hander in syswrite method.
31619           [ruby-dev:27134]
31621 Mon Sep 19 01:07:38 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31623         * numeric.c (Init_Numeric): should define Fixnum#div.
31624           [ruby-dev:27129]
31626         * file.c (rb_thread_flock): wrap flock(2) by TRAP_BEG and
31627           TRAP_END.  [ruby-dev:27122]
31629         * file.c (rb_file_join): call FilePathValue() to all Pathnames to
31630           join.  [ruby-dev:27127]
31632         * file.c (rb_get_path): call StringValueCStr() to ensure no nul
31633           bytes in path strings.
31635         * gc.c (garbage_collect): need value for return.  [ruby-dev:27127]
31637 Sun Sep 18 02:10:47 2005  why the lucky stiff  <why@ruby-lang.org>
31639         * lib/yaml/rubytypes.rb: remove comments that are bungling up
31640           the rdoc and ri output.  output symbols as plain scalars.
31642         * ext/syck/rubyext.c (syck_emitter_reset): emit headless
31643           documents always.
31645         * ext/syck/emitter.c (syck_scan_scalar): quote scalars with any
31646           kind of surrounding line space, tabs or spaces alike.
31648         * ext/syck/token.c: accept tabs as whitespace, not for indentation,
31649           but strip from plain scalars.
31651         * test/yaml/test_yaml.rb: remove outdated tests.
31653 Sun Sep 18 01:10:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31655         * gc.c (garbage_collect): return false if no GC run.
31657 Sat Sep 17 23:25:04 2005  sheepman  <sheepman@sheepman.sakura.ne.jp>
31659         * lib/mathn.rb (Rational::inspect): should preserve original
31660           operand.  [ruby-core:05806]
31662 Sat Sep 17 23:20:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31664         * lib/cgi.rb (CGI::Cookie): should handle multiple values for a
31665           cookie name.  [ruby-talk:156140]
31667         * test/socket/test_tcp.rb (TestTCPSocket::test_recvfrom): typo
31668           fixed.  [ruby-dev:27123]
31670 Sat Sep 17 20:58:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31672         * win32/win32.c (rb_w32_select): fixed deadlock bug.
31673           because select(2) modifies its fd_set arguments, it must be
31674           restored sometimes.
31676         * win32/win32.c (rb_w32_select): performance improvement when
31677          'always readable/writable handles' and sockets are passed.
31678           sockets should be polled every time.
31680             require "net/http"
31682             Thread.new {
31683               loop do
31684                 STDOUT.write(".") # busy on console (this is worst case though)
31685               end
31686             }
31688             # socket operation took long time. (sometimes timed out)
31689             Net::HTTP.start("www.ruby-lang.org") do |http|
31690                 http.get("/cgi-bin/cvsweb.cgi/ruby/array.c?rev=1.179")
31691             end
31693 Sat Sep 17 14:54:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31695         * test/ruby/test_readpartial.rb (test_open_pipe, test_with_stdio):
31696           these tests are working now, so turned on. (windows)
31698 Sat Sep 17 14:18:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31700         * win32/win32.c (rb_w32_select): I hope performance problem was
31701           solved.
31703 Sat Sep 17 13:45:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31705         * win32/win32.c (rb_w32_select): console support is back.
31706           but still has performance problem because I loosely took 1 second
31707           for wait time. I'll fix it later. (The reason I drastically changed
31708           the code is that I wanted to implement the fileset management as
31709           single function, and I was worried that if pipe or console
31710           was always available, socket may not be processed any time)
31712 Sat Sep 17 11:24:16 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31714         * win32/win32.c (rb_w32_select): select for socket didn't work.
31715           this caused deadlock in drb test. this happened because GetFileType
31716           for socket handle returns FILE_TYPE_PIPE. Of course, it's not a
31717           pipe. So socket handle didn't reach winsock's select function.
31719         * win32/win32.c (rb_w32_select): read for pipe was still blocked
31720           even if writer handle was closed.
31722             r,w = IO.pipe
31724             Thread.new {
31725               sleep 3; puts "------- 1"
31726               w.puts("foo")
31727               sleep 3; puts "------- 2"
31728               w.puts("boo")
31729               sleep 3; puts "------- 3"
31730               w.close
31731             }
31733             until r.eof? # should break by w.close but didn't.
31734               puts r.gets
31735             end
31737         * win32/win32.c (rb_w32_select): temporary reverted console support
31738           but it'll be back soon.
31740 Sat Sep 17 10:42:13 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31742         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
31743           should call Kernel.eval on caller's safe-level instead of slave's
31744           safe-level (Of course, the given script should be evaluated on
31745           slave's safe-level).
31747 Sat Sep 17 09:45:26 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31749         * string.c (rb_str_substr): should propagate taintness even for
31750           empty strings.  [ruby-dev:27121]
31752         * string.c (rb_str_aref): should infect result if range argument
31753           is tainted.  [ruby-dev:27121]
31755 Sat Sep 17 08:35:39 2005  Kouhei Sutou  <kou@cozmixng.org>
31757         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#normalize): fixed
31758           strange RSS::Maker::Item#max_size behavior.
31759           Thanks to Kazuhiko <kazuhiko@fdiary.net>.
31761         * test/rss/test_maker_1.0.rb (RSS::TestMaker10#test_items): ditto.
31763 Sat Sep 17 08:02:53 2005  Shugo Maeda  <shugo@ruby-lang.org>
31765         * lib/net/imap.rb: supported DIGEST-MD5.  Thanks, Mathieu Arnold.
31767         * lib/net/imap.rb: use fcall instead of send.  Thanks, Satoru
31768           Takabayashi.
31770 Fri Sep 16 22:45:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31772         * file.c (rb_file_s_extname): empty string for path name ending with a
31773           period.  fixed: [ruby-core:05651]
31775         * file.c (rb_file_join): smarter behavior at edge cases.
31776           fixed: [ruby-core:05706]
31778         * gc.c (rb_memerror, ruby_xmalloc, ruby_xrealloc, rb_newobj): just
31779           abondon if no memory available, when interpreter is not running.
31780           [ruby-dev:27104]
31782         * gc.c (garbage_collect): return whether GC could run.
31784         * dir.c (rb_push_glob): fix delimiter bug.  fixed: [ruby-dev:27105]
31786         * dir.c (dir_s_aref, dir_s_glob): allow multiple patterns.
31787           [ruby-dev:27110]
31789         * win32/win32.c (cmdglob): enable brace expansion.
31791 Fri Sep 16 18:34:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31793         * ext/syck/node.c (syck_replace_str): was using return from the
31794           void function.  a patch from MIYAMUKO Katsuyuki
31795           <miyamuko at mtb.biglobe.ne.jp>.  [ruby-dev:27111]
31797 Fri Sep 16 14:48:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31799         * ext/tk/lib/multi-tk.rb: fix typo on MultiTkIp#bg_eval_string
31801 Fri Sep 16 12:02:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31803         * ext/syck/rubyext.c (syck_resolver_transfer): remove C++ style
31804           comment (//).  [ruby-core:05793]
31806 Fri Sep 16 00:17:03 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31808         * test/logger/test_logger.rb: unintentionally overwritten changes by
31809           Usa.  reverted.
31811 Fri Sep 16 00:03:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
31813         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#initialize): should set
31814           $stdout.binmode.
31816 Thu Sep 15 23:25:21 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31818         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.5.
31820           #nnn is a ticket number at http://dev.ctor.org/soap4r
31822           * SOAP
31824             * allow to configure an envelope namespace of SOAP request. (#124)
31825                 TemporaryNamespace = 'http://www.w3.org/2003/05/soap-envelope'
31826                 @client.options["soap.envelope.requestnamespace"] =
31827                   TemporaryNamespace
31828                 @client.options["soap.envelope.responsenamespace"] =
31829                   TemporaryNamespace
31830                 @client.do_proc(...)
31832             * let SOAP request XML indent space configuable.  see
31833               "soap.envelope.no_indent" option. (#130)
31835             * let external CES configuable.
31836               ex. client["soap.mapping.external_ces"] = 'SJIS'.  $KCODE is used
31837               by default. (#133)
31838                 external CES ::= CES used in Ruby object of client and server
31839                 internal CES ::= CES used in SOAP/OM
31841             * add iso-8859-1 external CES support. (#106)
31843             * fixed illegal 'qualified' handling of elements.  it caused
31844               ASP.NET inteoperability problem. (#144)
31846             * added 'soap.envelope.use_numeric_character_reference' (boolean)
31847               option to let query XML use numeric character reference in XML,
31848               not plain UTF-8 character.  !GoogleSearch server seems to not
31849               allow plain UTF-8 character since 2005-08-15 update. (#147)
31851             * SOAP::Header::SimpleHeader (de)serialization throws an exception
31852               on !SimpleHeader.on_(in|out)bound when header is a String.  so we
31853               could not use a simple single element headerItem.  fixed.  thanks
31854               to emil. (#129)
31856             * out parameter of rpc operation did not work.  (#132)
31858             * follow HTTP redirect only if using http-access2.  (#125) (#145)
31860             * add a workaround for importing an WSDL whose path begins with
31861               drive letter.  (#115)
31863           * WSDL
31865             * SOAP Data which is defined as a simpletype was not mapped
31866               correctly to Ruby obj when using wsdl2ruby.rb generated classdef
31867               file. (#123)
31869             * rpc/literal support. (#118)
31871             * re-implemented local element qualify/unqualify control.  handles
31872               elementFormDefault and form in WSDL.  (#119)
31874             * Array of an element which has simpleType causes a crash. (#128)
31876             * prarmeterOrder may not contain return part so it can be shorter
31877               than parts size.  Thanks to Hugh.  (#139)
31879           * Samples
31881             * added !BasicAuth client sample. (#117)
31883             * added Base64 client/server sample.
31885             * added Flickr SOAP interface client sample. (#122)
31887             * added !SalesForce client sample. (#135)
31889             * updated Thawte CA certificate for !GoogleAdWords sample.
31891             * updated a client script with the newer version made by Johan.
31892               thanks!
31894             * shortened long file names. (#120)
31896             * fixed typo in authheader sample. (#129)
31898             * updated deprecated method usage.  (#138)
31900 Thu Sep 15 22:40:27 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31902         * test/ruby/test_signal.rb (test_exit_action): skip the test using
31903           fork on fork-less platforms.
31905 Thu Sep 15 13:54:33 2005  Tanaka Akira  <akr@m17n.org>
31907         * lib/open-uri.rb: add :read_timeout option.
31908           [ruby-core:4848]
31910 Thu Sep 15 11:39:18 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
31912         * ext/tk/lib/tk/dialog.rb: If a dialog does not show up yet,
31913           TkDialogObj#name raises an exception. [ruby-talk:156109]
31915 Thu Sep 15 11:01:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31917         * win32/win32.c (rb_w32_pipe_exec): remove unnecessary CloseHandle().
31919         * win32/win32.c (extract_console_fd, peek_console): new functions.
31921         * win32/win32.c (rb_w32_select): check consoles by polling them.
31923 Thu Sep 15 00:18:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
31925         * lib/net/telnet.rb (Net::Telnet::waitfor): replace sysread with
31926           readpartial.  [ruby-talk:127641]
31928 Wed Sep 14 23:28:28 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
31930         * win32/win32.c (collect_file_fd): rename from extract_file_fd.
31932         * win32/win32.c (extract_pipe_fd, peek_pipe): new functions.
31934         * win32/win32.c (rb_w32_select): check pipes by polling them.
31936 Wed Sep 14 22:40:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31938         * dir.c (ruby_glob): glob function not using ruby exception system.
31940 Wed Sep 14 17:24:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31942         * dir.c: changed `foo (*bar)_((boo))' to `foo (*bar)(boo)`.
31944         * enumerator.c, eval.c, gc.c, intern.h, io.c, process.c, ruby.c,
31945           ruby.h, signal.c: ditto.
31947 Wed Sep 14 15:06:22 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31949         * bignum.c: changed `foo _((boo))' to `foo(boo)`. [ruby-dev:27056]
31951         * defines.h, dir.c, dln.h, enumerator.c, env.h, error.c, eval.c, file.c,
31952           gc.c, hash.c, inits.c, intern.h, io.c, lex.c, marshal.c, missing.h,
31953           node.h, numeric.c, pack.c, process.c, re.h, ruby.c, ruby.h, rubyio.h,
31954           rubysig.h, signal.c, sprintf.c, st.h, string.c, struct.c, time.c,
31955           util.c, util.h, variable.c: ditto.
31957 Tue Sep 13 22:09:40 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
31959         * lib/logger.rb (Logger): added formatter accessor to logger for
31960           dictating the way in which the logger should format the messages it
31961           displays.  Thanks to Nicholas Seckar (cf. [ruby-talk:153391]) and
31962           Daniel Berger.
31964         * lib/logger.rb (Logger): added VERSION constant.
31966         * lib/logger.rb: removed document for LogDevice. It is an
31967           implementation detail and is not a public interface.
31969         * test/logger/test_logger.rb: added tests.
31971 Tue Sep 13 21:47:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
31973         * eval.c (BEGIN_CALLARGS): pop halfly pushed status.
31974           fixed: [ruby-dev:26881]
31976 Tue Sep 13 20:24:37 2005  Tanaka Akira  <akr@m17n.org>
31978         * ruby.h (PRINTF_ARGS): new macro for printf style argument checking.
31980 Tue Sep 13 15:41:29 2005  Minero Aoki  <aamine@loveruby.net>
31982         * lib/net/http.rb: wrote docuemntation of HTTPRequest/HTTPResponse
31983           classes.
31985 Tue Sep 13 14:27:47 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
31987         * string.c, missing.h: failed to build on powerpc-apple-darwin7.9.0
31988           because of crypt argument's constness mismatch. (I hope this works)
31989           (http://mput.dip.jp/autobuild/ruby-trunk/log/20050913T110001.gz)
31991 Tue Sep 13 12:33:05 2005  why the lucky stiff  <why@ruby-lang.org>
31993         * lib/yaml.rb: reworking YAML::Stream to use the new
31994           emitter.
31996         * lib/yaml/stream.rb: ditto.
31998         * lib/yaml/rubytypes.rb: added Object#yaml_new.
32000         * lib/yaml/tag.rb: the tag_subclasses? method now
32001           shows up in the class.  allow taguri to be set using an accessor.
32002           continue support of Object#to_yaml_type.
32004         * ext/syck/rubyext.c: new emitter code.  yaml_new and yaml_initialize
32005           get called, should they be present.  consolidated all the diaspora of           internal node types into the family below YAML::Syck::Node -- Map,
32006           Seq, Scalar -- all of whom are SyckNode structs pointing to
32007           Ruby data.  moved Object#yaml_new into the node_import and made it
32008           the default behavior.  the target_class is always called wih
32009           yaml_new, prepended a parameter, which is the klass.  loaded nodes
32010           through GenericResolver show their style.
32011           new Resolver#tagurize converts type ids to taguris.
32013         * ext/syck/implicit.re: were 'y' and 'n' seriously omitted??
32015         * ext/syck/emitter.c: renovated emitter, walks the tree in advance.
32016           consolidated redundant block_styles struct into
32017           the scalar_style struct.  (this means loaded nodes can now
32018           be sent back to emitter and preserve at least its very basic
32019           formatting.)
32021         * ext/syck/gram.c: headless documents of any kind allowed.
32023         * ext/syck/node.c: new syck_replace_str methods and syck_empty_*
32024           methods for rewriting node contents, while keeping the ID
32025           and other setup info.  added syck_seq_assign.
32027         * ext/syck/syck.h: reflect block_styles and new node functions.
32029 Tue Sep 13 08:09:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32031         * lib/ostruct.rb (new_ostruct_member): Object#send no longer call
32032           private methods.  [ruby-dev:27044]
32034         * test/rss/test_dublincore.rb, test/rss/test_trackback.rb,
32035           test/ruby/test_eval.rb, test/socket/test_socket.rb: ditto.
32037         * test/ruby/test_lambda (test_call_with_block): lambda makes new scope
32038           for formal block parameter.
32040 Tue Sep 13 01:17:45 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32042         * eval.c (proc_save_safe_level): no need to restrict safe level
32043           memoize in $SAFE>=3.  [ruby-dev:27050]
32045 Tue Sep 13 00:02:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32047         * file.c (apply2files): stricter callback definition.
32049         * file.c (rb_path_check): constified.
32051 Mon Sep 12 20:53:06 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32053         * test/openssl/test_pkcs7.rb (test_enveloped): skip this test
32054           to avoid a bug of PKCS7_enctypt() (only if ext/openssl is
32055           compiled with OpenSSL-0.9.7d or earlier versions).
32056           http://www.mail-archive.com/openssl-dev@openssl.org/msg17376.html
32058 Mon Sep 12 20:32:00 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32060         * win32/win32.[hc] (rb_w32_argv_size, ...): reverted my latest change
32061           to avoid incompatible pointer warning. (mingw32)
32063 Mon Sep 12 19:58:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32065         * dln.c: avoid warning of const to non-const convertion.
32066           [ruby-dev:27041]
32068         * eval.c, io.c, ruby.c: ditto.
32070 Mon Sep 12 19:26:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32072         * array.c: moved to ANSI function style from K&R function style.
32073           (used protoize on windows, so still K&R remains on #ifdef part of
32074            other platforms. And  `foo _((boo))' stuff is still there)
32075            [ruby-dev:26975]
32077         * bignum.c, class.c, compar.c, dir.c, dln.c, dmyext.c, enum.c,
32078           enumerator.c, error.c, eval.c, file.c, gc.c, hash.c, inits.c,
32079           io.c, main.c, marshal.c, math.c, numeric.c, object.c, pack.c,
32080           prec.c, process.c, random.c, range.c, re.c, regcomp.c, regenc.c,
32081           regerror.c, regexec.c, regparse.c, regparse.h, ruby.c, signal.c,
32082           sprintf.c, st.c, string.c, struct.c, time.c, util.h, variable.c,
32083           version.c: ditto.
32085 Mon Sep 12 14:03:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32087         * test/dbm/test_dbm.rb: remove locking test, which may not be
32088           supported on some platforms.  [ruby-dev:27030]
32090 Sun Sep 11 23:23:02 2005  Shugo Maeda  <shugo@ruby-lang.org>
32092         * lib/net/imap.rb (starttls): supported the STARTTLS command.
32094 Sun Sep 11 22:18:07 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
32096         * bin/erb (ERB::Main#run): set ERB#filename so that it is used
32097           when reporting syntax/runtime errors. Tabs converted to spaces.
32099 Sat Sep 10 22:34:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32101         * array.c, bignum.c: protoize.
32103 Sat Sep 10 00:23:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32105         * eval.c (splat_value): simpler and consistent array conversion
32106           for argument splat.  [yarv-dev:599]
32108 Fri Sep  9 16:45:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32110         * string.c (rb_str_times): make empty strings to keep taintness,
32111           and a little improvement.  [ruby-dev:26900]
32113         * ext/iconv/iconv.c (iconv_try), ext/iconv/extconf.rb: get rid of meta
32114           characters in command line option.  fixed: [ruby-talk:155369]
32116         * ext/iconv/iconv.c: protoized.
32118 Thu Sep  8 14:58:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32120         * merged a patch from Takahiro Kambe <taca at back-street.net> to
32121           support DragonFly BSD.  [ruby-dev:26984]
32123 Thu Sep  8 13:14:57 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32125         * missing/strchr.c (strrchr): fixed a bug in detecting NUL in a
32126           string.  [ruby-dev:26985]
32128 Wed Sep  7 17:29:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32130         * ext/openssl/ossl_engine.c (ossl_engine_s_by_id):
32131           OpenSSL::Engine.by_id calls given block before calling
32132           ENGINE_init (block parameter is the return value of this method
32133           itself).  this functionality is useful to load dynamic shared
32134           engines.
32136                 require "openssl"
32137                 pkcs11 = OpenSSL::Engine.by_id("dynamic"){|e|
32138                   e.ctrl_cmd("SO_PATH", "/usr/lib/opensc/engine_pkcs11.so")
32139                   e.ctrl_cmd("LIST_ADD", "1")
32140                   e.ctrl_cmd("LOAD")
32141                 }
32142                 pkcs11.ctrl_cmd("PIN", "secret")
32143                 key = pkcs11.load_private_key
32145         * ext/openssl/ossl_engine.c (ossl_engine_ctrl_cmd): new method
32146           OpenSSL::Engine#ctrl_cmd. it wraps ENGINE_ctrl_cmd_string.
32148         * ext/openssl/ossl_engine.c (ossl_engine_get_cmds): new method
32149           OpenSSL::Engine#cmds. it returms engine command definitions.
32151 Wed Sep  7 15:48:37 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32153         * ext/openssl/ossl_asn1.c (asn1str_to_str): new function.
32155         * ext/openssl/ossl_pkcs7.c: new class OpenSSL::PKCS7::RecipientInfo.
32156           this class wraps PKCS7_RECIP_INFO struct.
32158         * ext/openssl/ossl_pkcs7.c: OpenSSL::PKCS7::Signer is renamed to
32159           OpenSSL::PKCS7::SignerInfo. ("Signer" remains as an alias of
32160           SignerInfo.)
32162         * test/openssl/test_pkcs7.rb: new file.
32164 Wed Sep  7 12:55:08 2005  Tanaka Akira  <akr@m17n.org>
32166         * lib/open-uri.rb: abolish mod === tempfile to avoid a problem
32167           [ruby-dev:26967].
32169 Wed Sep  7 10:45:15 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32171         * eval.c (rb_thread_switch): convert all exceptions to
32172           SystemExit.  fixed: [ruby-core:05724]
32174         * eval.c (rb_thread_terminated): show backtrace before propagate
32175           exceptions to main thread.
32177 Wed Sep  7 09:21:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32179         * win32/win32.[hc] (rb_w32_utime): constified.
32181         * win32/win32.h (rb_w32_stat): added prototype.
32183         * win32/win32.[hc] (rb_w32_argv_size,rb_w32_join_argv,rb_w32_aspawn):
32184           changed `char *const *' to `const char *const *'. (constify string)
32186 Wed Sep  7 08:35:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32188         * Makefile.in, configure.in (MINIOBJS): miniruby on HP-UX can not load
32189           extension libraries.
32191         * bignum.c (bignew_1, bigadd): K&R style argument actually can't be
32192           defined as char.
32194         * missing/vsnprintf.c: ANSI compiler supports const keyword.
32196         * ext/digest/sha2/extconf.rb: reject platforms which has inttypes.h
32197           but no 64bit integer.
32199         * lib/mkmf.rb (what_type?): guesstimate type.
32201         * ext/etc/etc.c (setup_passwd), ext/etc/extconf.rb: pw_age might be
32202           char*.  fixed: [ruby-core:05470]
32204 Wed Sep  7 08:32:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32206         * string.c (rb_str_times): should taint empty strings as well.
32208         * object.c (Init_Object): make class_variable_{get,set} public.
32209           [ruby-dev:26965]
32211 Mon Sep  5 22:28:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32213         * parse.y (stmt, mlhs_node, lhs, arg, method_call): aref_args might be
32214           nothing.  fixed: [ruby-dev:26952]
32216         * ext/ripper/eventids2.c: added new tokens.  fixed: [ruby-dev:26952]
32218 Mon Sep  5 17:03:07 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32220         * lib/find.rb: should raise ENOENT if root entry does not exist.
32221           [ruby-list:41054]
32223         * lib/ostruct.rb: a patch from Florian Gross <florgro at gmail.com>
32224           merged to allow recursive inspect (and to_s) for OpenStruct.
32225           [ruby-core:05532]
32227 Mon Sep  5 08:20:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32229         * lib/observer.rb: a patch from nornagon <nornagon at gmail.com>
32230           merged to allow arbitrary names for update methods.
32231           [ruby-core:05416]
32233 Mon Sep  5 07:01:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32235         * ext/openssl/openssl/lib/openssl/buffering.rb (Buffering#do_write):
32236           should clear data from the buffer which already been output.
32238 Sun Sep  4 15:01:35 2005  Minero Aoki  <aamine@loveruby.net>
32240         * parse.y (f_arg): Ripper should not do semantic check.
32241           [ruby-dev:26948]
32243 Sat Sep  3 23:52:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32245         * eval.c (rb_f_fcall): new method to avoid inefficiency of
32246           obj.instance_eval{send(...)} tricks.
32248 Sat Sep  3 13:59:31 2005  Tanaka Akira  <akr@m17n.org>
32250         * lib/pathname.rb (Pathname#descend): Pathname.new("./a/b/c").descend
32251           didn't yield "."
32252           (Pathname#ascend): ditto.
32254 Fri Sep  2 23:51:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32256         * parse.y (f_arg): f_norm_arg is a VALUE in ripper, not an ID.
32257           fixed: [ruby-dev:26942]
32259         * lib: do not use __send__ to access private methods.  [ruby-dev:26935]
32261 Thu Sep  1 17:11:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32263         * eval.c (rb_call0): wrong condition for $SAFE restoration.
32265 Thu Sep  1 14:12:45 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32267         * ext/tk/lib/multi-tk.rb: On Tcl8.5, MultiTkIp#invoke_hidden doesn't
32268           work (gives wrong order of arguments).
32270         * ext/tk/lib/multi-tk.rb: add MultiTkIp#invoke_hidden_on_namespace
32271           to support '-namespace' option of 'interp invokehidden' command
32272           on Tcl8.5.
32274 Wed Aug 31 14:41:30 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32276         * win32/Makefile.sub (OPTFLAGS): default global optimization to
32277           disabled for all VC++ versions.  fixed: [ruby-dev:26897]
32279 Wed Aug 31 10:36:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32281         * process.c (proc_detach, proc_setmaxgroups): missing argument type
32282           declaration. (I recommend ANSI-style function)
32284 Wed Aug 31 06:59:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32286         * string.c (rb_str_scan): already String#scan behaves differently
32287           regarding if block is given.
32289 Tue Aug 30 23:49:34 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32291         * array.c, dir.c, enum.c, hash.c, io.c, range.c, string.c, struct.c:
32292           let enumerable methods return Enumerator.  [ruby-dev:26924]
32294         * intern.h (RETURN_ENUMERATOR): utility macro for enumerable methods.
32296 Tue Aug 30 23:25:45 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32298         * lib/debug.rb: no need to restart at exit.
32300 Tue Aug 30 23:20:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32302         * eval.c (rb_rescue2): initialization miss.  fixed: [ruby-dev:26917]
32304         * lib/mkmf.rb (xsystem, xpopen): no longer expand by Config.
32306         * lib/mkmf.rb (link_command, cc_command, cpp_command): expand
32307           variables at once, and quote hdrdir.  fixed: [ruby-core:05680]
32309         * lib/mkmf.rb (libpathflag): quote paths.
32311 Tue Aug 30 19:34:27 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32313         * ext/digest/md5/md5ossl.h, ext/digest/rmd160/rmd160ossl.h,
32314           ext/digest/sha1/sha1ossl.h: include <stddef.h> to avoid
32315           error in compilation with OpenSSL-0.9.8. [ruby-list:41068]
32317 Tue Aug 30 16:19:40 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32319         * lib/irb/init.rb: bug fix. [ruby-dev: 26920]
32321 Tue Aug 30 16:13:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32323         * enum.c (enum_count): new method.  [ruby-dev:26895]
32325 Tue Aug 30 12:45:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32327         * eval.c (rb_f_send): do not call private methods if the receiver
32328           is specified.  [ruby-talk:153672]
32330 Mon Aug 29 19:47:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32332         * lib/rdoc/usage.rb: improper exceptions. [ruby-dev:26870]
32334         * lib/rdoc/usage.rb: support the case when non-ruby code exists before
32335           shebang. (this is needed when ri.bat is executed on windows)
32337 Mon Aug 29 18:58:05 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32339         * lib/irb/init.rb: make IRB -I option that is same befavior for ruby.
32340           [ruby-dev:26872]
32342         * lib/irb/locale.rb: support to print help message when OS locale is
32343           ja_JP.utf-8. [ruby-dev:26872]
32345 Mon Aug 29 01:43:05 2005  Tanaka Akira  <akr@m17n.org>
32347         * lib/pathname.rb (Pathname#descend): new method.
32348           (Pathname#ascend): ditto.
32350 Mon Aug 29 00:35:09 2005  Tanaka Akira  <akr@m17n.org>
32352         * lib/time.rb: require 'date/format' instead of 'parsedate'.
32353           (Time.parse): extract fractional seconds using Date._parse.
32354           (Time.strptime): extract fractional seconds using Date._strptime.
32355           [ruby-talk:153859]
32357 Sat Aug 27 20:13:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32359         * ext/curses/curses.c ({curses,window}_clrtoeol): added. suggested
32360           by Reyn Vlietstra.
32362         * ext/curses/curses.c: chtype in curses is not `char', rahter `long'.
32363           [ruby-Bugs:2298]
32365         * ext/curses/view.rb: String =~ String is deprecated.
32367 Thu Aug 25 15:48:58 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32369         * ext/win32ole/win32ole.c: suppress warnings. (win32)
32371 Wed Aug 24 11:01:26 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32373         * test/logger/test_logger.rb (test_shifting_size): should close log
32374           device before unlink, since some platform cannot unlink opened
32375           file.
32377 Tue Aug 23 06:07:02 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32379         * ext/openssl/lib/digest.rb: added SHA224, SHA256, SHA384 and SHA512.
32380           these features are enabled if this library is compiled with
32381           OpenSSL 0.9.8 or later.
32383         * test/openssl/test_digest.rb: add test for new digests.
32385 Tue Aug 23 05:47:04 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32387         * ext/openssl/ossl_ns_spki.c (ossl_spki_initialize): try to decode
32388           the argument as a string.
32390         * ext/openssl/ossl_ns_pki.c (ossl_spki_to_der): new method.
32392         * ext/openssl/ossl_x509store.c (ossl_x509store_initialize): should
32393           set @time to avoid warning.
32395         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths,
32396           X509_STORE_add_cert, X509_STORE_add_crl): should raise error if
32397           wrapped functions fails.
32399         * ext/openssl/ossl_ssl.c (ossl_sslctx_set_ciphers): fix error message.
32401         * ext/openssl/ossl_x509req.c (ossl_x509req_set_attributes): get rid
32402           of unused variable.
32404         * test/openssl/test_ns_spki.rb: add new file.
32406         * test/openssl/test_x509store.rb: add test for error.
32408 Tue Aug 23 01:11:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32410         * sprintf.c (ruby__sfvwrite): should move `buf' to the end of
32411           `result'. [ruby-dev:26859]
32413 Mon Aug 22 23:51:19 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32415         * parse.y: ONIG_OPTION_CAPTURE_GROUP conflicts with
32416           RE_OPTION_ONCE.  [ruby-dev:26852]
32418 Mon Aug 22 20:11:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32420         * missing/vsnprintf.c (BSD__sprint): needs to call vwrite function
32421           pointer.  fixed: [ruby-dev:26854]
32423 Sat Aug 20 23:55:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32425         * parse.y (parser_yylex): update paren_nest for brackets [].
32427 Sun Aug 21 00:10:23 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32429         * lib/wsdl/xmlSchema/importer.rb (WSDL::XMLSchema::Importer#fetch): add
32430           a workaround for importing an WSDL whose path begins with drive
32431           letter.  [ruby-dev:26242]
32433 Sat Aug 20 22:05:25 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
32435         * regexec.c (code_is_in_cclass_node): check code size.
32436           [ruby-dev:26840]
32438 Sat Aug 20 22:37:13 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32440         * lib/logger.rb (write, shift_log?, shift_log): file shifting race
32441           condition bug fixed.  [ruby-dev:26764]
32443         * test/logger/test_logger.rb: tests.
32445 Fri Aug 19 18:13:39 2005  Tanaka Akira  <akr@m17n.org>
32447         * lib/time.rb (Time.apply_offset): fix a problem with last day of
32448           month.  reported by Lucas Nussbaum.  [ruby-talk:152866]
32450 Thu Aug 18 11:05:36 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32452         * win32/win32.c (socketpair_internal): need to call open_ifs_socket()
32453           to create sockets instead of winsock's socket().
32454           fixed: [yarv-dev:581]
32456 Wed Aug 17 23:58:05 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32458         * eval.c (terminate_process): take String message.
32460         * eval.c (rb_thread_switch): propagate the exception caused thread
32461           termination directly.  fixed: [ruby-core:05552]
32463 Wed Aug 17 21:20:05 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32465         * ext/nkf/lib/kconv.rb: ensure that symbol_to_option is private_class_method
32466           and all other methods are module_function
32467           fixed: [ruby-dev:26808]
32469 Wed Aug 17 00:05:46 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32471         * eval.c (rb_add_method): preserve safe level in the environment
32472           where a method is defined .
32474         * eval.c (rb_call0): restore preserved safe level in the method
32475           execution.
32477         * parse.y (lambda): need separate block variable stack
32478           manipulation and lpar_beg maintenance.  based on a patch found
32479           in [ruby-core:05551] from Mauricio Fernandez <mfp at acm.org>.
32481         * parse.y (parser_yylex): adjust lpar_beg after tLAMBEG and
32482           kDO_LAMBDA. [ruby-core:05551]
32484 Mon Aug 15 07:24:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32486         * intern.h (rb_check_to_integer): add declaration.
32488         * object.c (rb_to_integer, rb_check_to_integer): argument constified.
32490 Mon Aug 15 00:38:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32492         * eval.c (rb_rescue2): reduce PUSH_TAG() as well as NODE_RESCUE.
32493           [ruby-dev:26800]
32495         * range.c (range_check, range_init): reduce uselse exceptions.
32497 Mon Aug 15 00:34:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32499         * parse.y (yycompile): remove unreachable code.  [yarv-dev:570]
32501 Sat Aug 13 22:16:12 2005  Minero Aoki  <aamine@loveruby.net>
32503         * lib/fileutils.rb (remove_entry_secure): forgot final chdir.
32505 Sat Aug 13 22:07:49 2005  Minero Aoki  <aamine@loveruby.net>
32507         * lib/fileutils.rb (remove_entry_secure): uses chdir(2) and check
32508           if current directory is correct. [ruby-dev:26100] [ruby-dev:26226]
32510 Sat Aug 13 21:11:05 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32512         * ext/win32ole/win32ole.c: add WIN32OLE_VARIANT class.
32514         * ext/win32ole/tests/testall.rb: ditto.
32516         * ext/win32ole/tests/testOLEVARIANT.rb: ditto.
32518 Sat Aug 13 18:51:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32520         * eval.c (rb_block_pass): distinguish current block from others.
32521           fixed: [ruby-dev:26274]
32523         * ext/stringio/stringio.c (strio_set_string): disallow nil.
32524           http://www.rubyist.net/~nobu/t/20050811.html#c05
32526 Sat Aug 13 08:01:59 2005  NARUSE, Yui  <naruse@ruby-lang.org>
32528         * ext/nkf/lib/kconv.rb: Kconv.kconv is now alias of Kconv.conv
32529         * ext/nkf/lib/kconv.rb: remove nkf dependend symbols fomr SYMBOL_TO_OPTION
32531 Fri Aug 12 17:06:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32533         * parse.y (f_larglist): allow optional arguments even when
32534           parentheses are omitted.  based on Nobu's patch from
32535           http://www.rubyist.net/~nobu/t/20050805.html
32537         * parse.y (parser_yylex): update & maintain lpar_beg for detect
32538           lambda parameters.
32540 Thu Aug 11 23:29:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32542         * ext/stringio/stringio.c: keep holding string after closed.
32544 Thu Aug 11 20:48:40 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32546         * numeric.c (fix_equal, fix_cmp, fix_gt, fix_ge, fix_lt, fix_le):
32547           reduce coercing when a method knows about a operand type.
32548           [ruby-dev:26789]
32550 Thu Aug 11 13:01:48 2005  Kouhei Sutou  <kou@cozmixng.org>
32552         * lib/rss: fixed sort bug. [ruby-list:41018]
32554         * lib/rss/1.0.rb (RSS::RDF::Channel#setup_maker_attributes):
32555           removed self.
32557         * lib/rss/maker/base.rb (RSS::Maker::ItemsBase#<=>): use #date
32558           instead of @date.
32559           (RSS::Maker::Base::self.def_array_element): added #size.
32561         * lib/rss/maker/1.0.rb
32562           (RSS::Maker::RSS10::Channel#to_rss,
32563            RSS::Maker::RSS10::Items::Item#to_rss): cleared dc_dates set
32564           upped by using #date.
32566         * lib/rss/maker/dublincore.rb
32567           (RSS::Maker::ChannelBase, RSS::Maker::ItemsBase::ItemBase):
32568           fixed opposite alias.
32570         * test/rss/test_setup_maker_1.0.rb
32571           (RSS::TestSetupMaker10::test_setup_maker_items_sort): added some
32572           tests for RSS::Maker::ItemsBase#do_sort.
32574 Wed Aug 10 12:01:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32576         * lib/delegate.rb: simplifies Delegator classes; SimpleDelegator
32577           now uses method_missing for all methods.
32579 Wed Aug 10 10:38:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32581         * bignum.c (rb_big_mul0): multiply two numbers (x, y) without
32582           normalizing the result.  x should be a big number.
32583           [ruby-dev:26778]
32585         * bignum.c (rb_big_pow): use rb_big_mul0() instead of
32586           rb_big_mul().
32588         * array.c (rb_ary_or, rb_ary_and, rb_ary_plus, rb_ary_diff):
32589           revert the change on 2005-08-03.  Set operation on other item
32590           should have in separate methods.
32592         * parse.y (shadowing_lvar_gen): warn when arguments shadows
32593           external local variables.
32595         * parse.y (f_opt): optional arguments should not clobber external
32596           local variables.
32598         * parse.y (f_rest_arg): rest arguments should not clobber external
32599           local variables.
32601 Wed Aug 10 10:29:40 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32603         * ext/tk/lib/tk.rb: fix bug on handling __ruby2val_optkeys().
32605         * ext/tk/lib/tk/itemconfig.rb: fix bug on handling
32606           __item_ruby2val_optkeys().
32608         * ext/tk/lib/tk/canvas.rb: didn't check __item_ruby2val_optkeys().
32610         * ext/tk/lib/tkextlib/blt/component.rb: ditto.
32612 Tue Aug  9 21:53:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32614         * eval.c (formal_assign): let default values override
32615           arguments to zsuper.  fixed: [ruby-dev:26743]
32617 Tue Aug  9 20:30:19 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32619         * bignum.c (rb_big_coerce): allow bignum x bignum coercing.
32620           [ruby-dev:26778]
32622 Tue Aug  9 15:12:04 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32624         * ext/tk/tcltklib.c: remove dangerous 'rb_jump_tag's.
32626         * ext/tk/lib/tk.rb: add __val2ruby_optkeys and __ruby2val_optkeys to
32627           help to convert option values between ruby and tcl.
32629         * ext/tk/lib/tk/itemconfig.rb: add __item_val2ruby_optkeys and
32630           __item_ruby2val_optkeys to help to convert option values between
32631             ruby and tcl.
32633         * ext/tk/lib/tk/radiobutton.rb: use __ruby2val_optkeys for 'variable'
32634           option (for the reason of backward compatibility).
32636         * ext/tk/lib/tk/composite.rb: clarify the arguments of super().
32638         * ext/tk/lib/tk/spinbox.rb: ditto.
32640         * ext/tk/lib/tk/text.rb: ditto.
32642         * ext/tk/lib/tk/validation.rb: ditto.
32644         * ext/tk/lib/tkextlib/*: support to treat tkvariable-type
32645           configure options.
32647 Tue Aug  9 08:24:05 2005  Mauricio Fernandez  <mfp@acm.org>
32649         * parse.y (f_block_arg), eval.c (rb_yield_0): deal with dynamic
32650           variable lambda arguments.  [ruby-core:05540]
32652 Mon Aug  8 22:13:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32654         * eval.c (assign): deal with new block argument.
32655           fixed: [ruby-core:05536]
32657         * eval.c (rb_node_arity): follow change of NODE_ARGS.
32658           fixed: [ruby-dev:26761]
32660 Mon Aug  8 21:28:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32662         * test/ruby/test_fnmatch.rb: separated from test_file.rb.
32664 Mon Aug  8 20:40:35 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32666         * test/ruby/test_method.rb: added.  [ruby-dev:26761]
32668 Mon Aug  8 01:26:37 2005  Mauricio Fernandez  <mfp@acm.org>
32670         * parse.y (f_larglist): mistake in syntax rule.  [ruby-core:05535]
32672 Mon Aug  8 05:16:55 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32674         * ext/openssl/ossl.c (ossl_raise): should use ERR_peek_last_error
32675           to get last error on the current thread. And should report
32676           if errors are on the stack while OpenSSL.debug is true.
32678         * ext/openssl/ossl.c (ossl_get_errors): new method for debugging
32679           this library.
32681 Mon Aug  8 05:15:19 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32683         * lib/webrick/httpproxy.rb (HTTPProxyServer#intialize),
32684           lib/webrick/httpserver.rb (HTTPServer#intialize),
32685           lib/webrick/httpservlet/cgihandler.rb (CGIHandler#initialize),
32686           lib/webrick/httpservlet/erbhandler.rb (ERBHandler#initialize),
32687           lib/webrick/httpservlet/filehandler.rb(DefaultFileHandler#initialize):
32688           super (called with no arguments) takes default value of optional
32689           arguments. [ruby-dev:26743]
32691         * lib/webrick/httputils.rb: add a media-type "text/html" for .xhtml.
32693 Sun Aug  7 23:52:39 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
32695         * test/ruby/test_super.rb: added optional arg tests.  [ruby-dev:26743]
32696           the tests expects 1.8 behavior at this time.
32698 Sat Aug  6 12:35:24 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32700         * ext/tk/lib/{tk.rb,tk/itemconfig.rb}: configure creates
32701           TkVariable if key name is 'variable' or 'textvariable'
32702           by default. [ruby-dev:26749]
32704         * ext/tk/lib/tk/{label,radiobutton}.rb: removed its own
32705           {variable,textvariable} function.
32707         * ext/tk/lib/tk/variable.rb: retains backward conpatibility.
32709 Fri Aug  5 12:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32711         * ext/tk/tcltklib.c: fixed memory leak when tk_funcall raised
32712           exception. (copies argv into heap in tk_funcall instead of
32713           caller)
32715 Fri Aug  5 12:36:40 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32717         * lib/mkmf.rb (create_makefile): need to convert path separetor
32718           before invoking install command.
32720 Fri Aug  5 08:08:05 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32722         * eval.c (return_jump): fix "can't across thread" error message
32723           when no thread associated.
32724           http://www.namikilab.tuat.ac.jp/~sasada/diary/200507.html#d31
32726 Fri Aug  5 00:25:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32728         * ext/tk/tcltklib.c: refactoring - extract ruby string <->
32729           tcl object conversion as get_str_from_obj and get_obj_from_str.
32731 Fri Aug  5 00:19:33 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32733         * enumerator.c (Init_Enumerator): provided features should have
32734           extensions.
32736         * eval.c (rb_feature_p): returns type of the feature instead of
32737           extension.
32739         * eval.c (search_required): ruby library should be prior to statically
32740           linked extentions.  fixed: [ruby-dev:26711]
32742         * eval.c (formal_assign): returns position of rest arguments variable.
32744         * parse.y (f_rest_arg): use anonymous variable for rest arguments.
32745           fixed: [ruby-dev:26647]
32747         * extmk.rb (extmake): needs to be wrapped in an Array.
32749 Thu Aug  4 20:03:18 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32751         * numeric.c (Init_Numeric): do not share implementation among
32752           Fixnum#/ and Fixnum#div.  [ruby-core:05531]
32754 Thu Aug  4 18:38:36 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32756         * ext/tk/tcltklib.c: cannot compile for Tcl7.6/Tk4.2.
32758         * ext/tk/tcltklib.c: add nativethread consistency check.
32760         * ext/tk/stubs.c: ditto.
32762         * ext/tk/lib/tk.rb: forgot to define TclTkIp.encoding and encoding=
32763           when Tcl is 7.6 or 8.0.
32765         * ext/tk/lib/tk/wm.rb: support to make some methods as options of
32766           root or toplevel widget. [ruby-talk:150336]
32768         * ext/tk/lib/tk/root.rb: ditto.
32770         * ext/tk/lib/tk/toplevel.rb: ditto.
32772         * ext/tk/lib/tkextlib/SUPPRT_STATUS: update RELEASE_DATE
32774 Thu Aug  4 13:30:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32776         * numeric.c (fix_div): should not convert the result into
32777           integer.  [ruby-core:05524]
32779 Thu Aug  4 08:03:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32781         * ext/extmk.rb (extmake): should not modify $mflags for each
32782           extentions.
32784 Thu Aug  4 00:25:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32786         * common.mk, Makefile.in, {bcc32,win32,wince}/Makefile.sub: integrated
32787           macro definitions.
32789         * bcc32/Makefile.sub: LIBRUBY_SO should use DLDOBJS, not EXTOBJS.
32791         * {win32,wince}/Makefile.sub: separate config.h for compiler versions.
32793 Thu Aug  4 00:24:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32795         * sprintf.c: replacing is no longer needed.
32797 Wed Aug  3 21:59:16 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32799         * ext/tk/lib/tk/variable.rb: TkVariable#trace didn't work on
32800           TkVariable retrived from TkVariable.new_hash.ref. [ruby-dev:26721]
32802 Wed Aug  3 12:40:28 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
32804         * numeric.c (fix_plus): reduce coercing when a method knows about
32805           a operand type.  [ruby-dev:26723]
32807         * numeric.c (fix_minus, fix_mul, fix_quo, fix_div, fix_mod,
32808           fix_divmod, fix_pow): ditto.
32810         * bignum.c (rb_big_div, rb_big_modulo): export to reduce
32811           coercing.
32813 Wed Aug  3 10:13:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
32815         * configure.in, {bcc32,win32,wince}/Makefile.sub (HAVE_SNPRINTF,
32816           HAVE_VSNPRINTF): use win32/win32.c's implementation instead of
32817           missing/vsnprintf.c's.
32819         * win32/win32.[ch] (rb_w32_snprintf, rb_w32_vsnprintf): reverted.
32821 Wed Aug  3 10:05:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32823         * configure.in: check vsnprintf() and snprintf().
32825         * sprintf.c, missing/vsnprintf.c: made vsnprintf() and snprintf()
32826           private.  fixed: [ruby-dev:26651]
32828 Wed Aug  3 08:22:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32830         * ext/socket/socket.c (ruby_connect): revert [ruby-talk:111654]
32831           changes at 2004-09-07.  [ruby-dev:26656]
32833 Wed Aug  3 06:53:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32835         * array.c (rb_ary_or): wraps the operand in an array if it is not
32836           an array.  [ruby-talk:150495] [EXPERIMENTAL]
32838         * array.c (rb_ary_and, rb_ary_plus, rb_ary_diff): ditto.
32840 Tue Aug  2 10:23:12 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32842         * ext/tk/tcltklib.c: use Tcl_[GS]etVar2Ex instead of
32843           Tcl_Obj[GS]etVar2. (avoid Tcl_NewStringObj on supported platforms)
32845         * ext/tk/tcltklib.c: use ip_{get,set,unset}_variable2_core from
32846           ip_{get,set,unset}_variable.
32848         * ext/tk/tcltklib.c: replaced Tcl_Panic with rb_bug.
32850 Tue Aug  2 01:40:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
32852         * lib/ping.rb (Ping.pingecho): should rescue StandardError.
32853           [ruby-dev:26677]
32855 Mon Aug  1 19:02:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32857         * ext/tk/tcltklib.c: refactoring - replaced rb_ivar_defined &
32858           rb_ivar_get with single rb_attr_get call.
32860 Mon Aug  1 18:44:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32862         * ext/tk/tcltklib.c (Tcl_GetStringResult): refactoring - define
32863           alternative macro on Tcl7.x or earlier.
32865 Mon Aug  1 13:53:55 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
32867         * ext/tk/tcltklib.c (deleted_ip): refactoring - interpreter
32868           deletion check. [ruby-dev:26664]
32870 Mon Aug  1 01:08:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
32872         * lib/drb/drb.rb (check_insecure_method): use private_methods and
32873           protected_methods instead of respond_to? to check method visibility.
32874           [ruby-dev:26616]
32876         * test/drb/drbtest.rb: ditto.
32878         * test/drb/ut_drb.rb: ditto.
32880 Sat Jul 30 18:49:44 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
32882         * ext/win32ole/win32ole.c: add WIN32OLE_TYPE#ole_typelib,
32883           WIN32OLE_TYPE#implemented_ole_types.
32885         * ext/win32ole/tests/testOLETYPE.rb: ditto.
32887 Fri Jul 29 16:12:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
32889         * lib/irb/context.rb: fix `irb --readline` option. [ruby-dev:40955]
32891 Fri Jul 29 09:59:38 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32893         * eval.c (rb_call0): fix calling zsuper from a method with anonymous
32894           rest argument.  [ruby-dev:26639]
32896         * eval.c (rb_yield_0): push yielded node instead of yielding.
32897           fixed: [yarv-dev:549]
32899 Thu Jul 28 21:49:17 2005  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
32901         * parse.y (rb_parser_end_seen_p): exclude from ripper.
32902           <http://moonrock.jp/~don/d/200507.html#d28_t2>
32904         * sprintf.c (clearerr): remove standard macro before re-definition.
32905           <http://moonrock.jp/~don/d/200507.html#d28_t3>
32907 Thu Jul 28 18:09:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
32909         * ext/tk/stubs.c: When --enable-tcltk-stubs, the initialize
32910           routine creates a Tcl/Tk interpreter and deletes it. However,
32911           init cost of Tk's MainWindow is not so small. And that makes it
32912           impossible to use libraries written with Tcl functions only on
32913           an environment without a graphical display. This changes support
32914           delaying initalization of Tk_Stubs until the script needs Tk.
32916         * ext/tk/stubs.h: New file. Define prototypes and return codes of
32917           functions on stubs.c.
32919         * ext/tk/tcltklib.c: Support delaying initalization of Tk_Stubs
32920           until the script needs Tk.
32922         * ext/tk/tcltklib.c: Show friendly error messages for errors on
32923           initialization.
32925         * ext/tk/tcltklib.c: Avoid SEGV on ip_finalize() when ruby is
32926           exiting and $DEBUG is true. (Not fix. If you know the reason of
32927           why, please fix it.)
32929         * ext/tk/tkutil/tkutil.c (ary2list, ary2list2): bug fix on handling
32930           of encoding.
32932         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string and bg_eval_string
32933           don't work propery.
32935         * ext/tk/lib/tk.rb: Forget extending Tk::Encoding module to Tk.
32937         * ext/tk/lib/tk/variable.rb: TkVarAccess fails to initialize the
32938           object for an element of a Tcl's array variable.
32940 Thu Jul 28 17:23:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32942         * parse.y (f_larglist): allow block argument in lambda parameter
32943           list without parenthesis.
32945 Thu Jul 28 17:14:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32947         * hash.c (each_i): typo fixed.  [ruby-dev:26622]
32949 Thu Jul 28 15:04:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32951         * parse.y (f_arg): better argument name duplication check
32953         * parse.y (new_args_gen): factored out name duplication check for
32954           optional and rest arguments.
32956         * parse.y (new_bv_gen): allow shadowing outer local variables;
32957           warning remains.
32959 Thu Jul 28 13:46:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32961         * parse.y (ripper_warningS): the argument was omitted.
32962           [ruby-dev:26621]
32964 Thu Jul 28 11:30:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32966         * parse.y (f_larglist): allow bv_decl at the end of lambda
32967           argument list.  [EXPERIMENTAL]
32969         * parse.y (new_bv_gen): allow local variable shadowing, with
32970           warning in verbose mode.
32972 Wed Jul 27 23:23:54 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32974         * gc.c (obj_free): make message format consistent with one from
32975           gc_mark().  [ruby-talk:149668]
32977         * sprintf.c (quad_t): prepare quad_t as well.  [ruby-talk:149668]
32979 Wed Jul 27 22:11:37 2005  Kouhei Sutou  <kou@cozmixng.org>
32981         * sample/rss/tdiary_plugin: removed. because the plugin
32982           is imported in the tDiary plugin packages.
32984 Wed Jul 27 19:11:53 2005  Minero Aoki  <aamine@loveruby.net>
32986         * lib/fileutils.rb (cd): follow :noop option change. (This patch
32987           is contributed by Doug Kearns)
32989 Wed Jul 27 16:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
32991         * parse.y (lambda): Perl6 style -> lambda expression. [NEW]
32992           [VERY EXPERIMENTAL]
32994 Wed Jul 27 10:43:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
32996         * gc.c (id2ref): must not assign pointers to long int.  use
32997           LONG_LONG instead if SIZEOF_LONG < SIZEOF_VOIDP.
32998           [ruby-talk:149645]
33000         * ruby.h: use LONG_LONG to simplify the change.
33001           [ruby-talk:149645]
33003 Wed Jul 27 10:59:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33005         * dir.c (dir_each): rewinddir(3) before iteration.
33006           [ruby-talk:149628]
33008 Wed Jul 27 02:34:58 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33010         * eval.c (rb_f_throw): replace all '0x%lx' by '%p'.
33011           [ruby-talk:149553]
33013         * missing/vsnprintf.c (BSD_vfprintf): '%p' need to handle 64bit
33014           size pointer.  [ruby-talk:149553]
33016 Tue Jul 26 22:41:28 2005  Minero Aoki  <aamine@loveruby.net>
33018         * ext/ripper/lib/ripper/sexp.rb: new method Ripper.sexp_raw.
33020         * ext/ripper/lib/ripper/sexp.rb (Ripper.sexp): returns more
33021           readable tree.  This is suggested by Kirill A. Shutemov.
33023 Tue Jul 26 22:05:12 2005  Minero Aoki  <aamine@loveruby.net>
33025         * lib/net/http.rb: merge a patch contributed by Daniel Berger,
33026           with some modification. (RubyForge #2128)
33028 Tue Jul 26 18:11:33 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33030         * ruby.h: support LLP64 model.  [ruby-talk:149524]
33032 Tue Jul 26 12:57:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33034         * ext/openssl/openssl_missin.c: include <openssl/engine.h> before
33035           <openssl/x509_vfy.h> to avoid compilation error of mswin32.
33036           suggested by NAKAMURA Usaku.
33038 Mon Jul 25 23:48:55 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33040         * win32/win32.[ch]: (rb_w32_vsnprintf, rb_w32_snprintf): removed.
33042 Mon Jul 25 21:30:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33044         * common.mk: Borland MAKE doesn't look for file names which have paths
33045           from VPATH.  fixed: [ruby-dev:26604]
33047         * ruby.h (NORETURN, DEPRECATED): moved just after config.h.
33049         * {win32,wince}/Makefile.sub: vsnprintf() is in missing now.
33051         * {bcc32,win32,wince}/Makefile.sub: moved CPPFLAGS only for ruby
33052           source to XCFLAGS.
33054 Mon Jul 25 14:10:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33056         * ext/tk/lib/multi-tk.rb: fix en-bugged part in the last commit.
33058 Mon Jul 25 13:45:18 2005  NAJIMA Hiroki  <najima@mickey.ai.kyutech.ac.jp>
33060         * io.c: check HAVE_SYS_IOCTL_H before including the header.
33061           [ruby-dev:26610]
33063 Sat Jul 23 16:48:12 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33065         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should check
33066           OPENSSL_NO_STATIC_ENGINE.
33068 Sat Jul 23 11:46:30 2005  Tanaka Akira  <akr@m17n.org>
33070         * eval.c (rb_fd_select): the all three fd_sets must be long enough for
33071           select.  fixed: [ruby-talk:149059]
33073 Sat Jul 23 10:01:41 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33075         * sprintf.c (rb_vsprintf, rb_sprintf): new functions return new String,
33076           using missing/vsnprintf.c.  [ruby-dev:26580]
33078         *  missing/vsnprintf.c: made the output changeable.
33080 Fri Jul 22 21:06:08 2005  Tadashi Saito  <shiba@mail2.accsnet.ne.jp>
33082         * bignum.c (rb_big_eq): reduce isnan().  [ruby-dev:26600]
33084         * numeric.c (flo_eq, flo_gt, flo_ge, flo_lt, flo_le): ditto.
33086 Fri Jul 22 15:02:39 2005  Kouhei Sutou  <kou@cozmixng.org>
33088         * lib/rss/rss.rb: moved copyright description to lib/rss.rb.
33090         * lib/rss.rb: added for convenience.
33092         * sample/rss/re_read.rb: added #to_s sample.
33094         * sample/rss/blend.rb: use 'require "rss"' instead of
33095           'require "rss/*"'.
33096         * sample/rss/list_description.rb: ditto.
33097         * sample/rss/rss_recent.rb: ditto.
33098         * sample/rss/tdiary-plugin/rss-recent.rb: ditto.
33100         * sample/rss/tdiary-plugin/rss-recent.rb: 0.0.6 -> 0.0.7.
33102 Fri Jul 22 14:37:43 2005  Kouhei Sutou  <kou@cozmixng.org>
33104         * lib/rss/parser.rb (RSS::Parser#initialize): accept HTTP/FTP
33105           URI and local file path too.
33107         * test/rss/test_parser.rb (RSS::TestParser#test_parse): test
33108           for the above.
33110 Fri Jul 22 07:01:42 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33112         * ext/tk/tkutil/tkutil.c (tk_conv_args): forget to revert
33113           thread_critical and gc_disable when raise ArgumentError.
33115         * ext/tk/lib/remote-tk.rb: RemoteTkIp doesn't need to include TkUtil.
33117         * ext/tk/tcltklib.c: add TclTkIp#has_mainwindow? method.
33119         * ext/tk/lib/tk.rb: add Tk.has_mainwindow? method.
33121         * ext/tk/lib/multi-tk.rb: add MultiTkIp#has_mainwindow? method.
33123         * ext/tk/lib/remote-tk.rb: add RemoteTkIp#has_mainwindow? method.
33125         * ext/tk/lib/multi-tk.rb: slave IP fail to exit itself when $SAFE==4.
33127         * ext/tk/lib/multi-tk.rb: remove constants from MultiTkIp module to
33128           avoid access from external.
33130         * ext/tk/lib/multi-tk.rb: check_root flag is ignored on slave IPs'
33131           mainloop.
33133         * ext/tk/lib/multi-tk.rb: hang-up Tk.mainloop called on a slave IP
33134           with $SAFE==4.
33136         * ext/tk/lib/multi-tk.rb: MultiTkIp#bg_eval_proc doesn't work
33137           properly.
33139         * ext/tk/lib/multi-tk.rb: add MultiTkIp#set_cb_error(proc) and
33140           cb_error(exc) to log errors at callbacks on safe slave IPs.
33142         * ext/tk/lib/multi-tk.rb: fail to get an available slave IP object
33143           when call Tk.mainloop in the block which is given to new_* method,
33144             because cannot finish initialize while the root widget is alive.
33146         * ext/tk/lib/multi-tk.rb: fail to control a slave IP when Tk.mainloop
33147           runs on the IP.
33149 Thu Jul 21 01:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33151         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
33152           import 1.76
33153           [ruby-dev:26592] nkf constification
33155 Wed Jul 20 19:18:52 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33157         * io.c (S_ISREG): need to define S_ISREG before it is used first.
33159 Wed Jul 20 18:33:15 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33161         * io.c (wsplit_p): patch for the environment where
33162           fcntl(F_GETFL, O_NONBLOCK) is not supported. in that case,
33163           set FMODE_WSPLIT without fcntl check. [ruby-dev:26566]
33165 Wed Jul 20 18:07:11 2005  Tanaka Akira  <akr@m17n.org>
33167         * io.c (rb_io_ctl): update FMODE_WSPLIT_INITIALIZED and FMODE_WSPLIT
33168           by F_SETFL.
33170 Wed Jul 20 10:04:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33172         * variable.c (rb_class_path): need to adjust snprintf() len for
33173           teminating NUL.  [ruby-dev:26581]
33175 Wed Jul 20 03:58:52 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33177         * ext/socket/socket.c: sorry, BeOS also uses HAVE_CLOSESOCKET,
33178           so reverted.
33180         * ext/socket/extconf.rb: should not define HAVE_CLOSESOCKET
33181           on windows.
33183 Wed Jul 20 03:12:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33185         * ext/socket/socket.c: should not undef close() on win32.
33186           it's defined to rb_w32_close(), otherwise handle leaks.
33187           [ruby-Bugs-2131]
33189 Wed Jul 20 00:48:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33191         * error.c (syserr_initialize): don't use str before StringValue()
33192           check.  [ruby-dev:26579]
33194 Tue Jul 19 22:47:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33196         * error.c (syserr_initialize): add 1 byte for snprintf() size for
33197           NUL at the end.  [ruby-dev:26574]
33199 Tue Jul 19 17:16:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33201         * signal.c (trap): remove sigexit(); handle "EXIT" via sig_exec().
33202           [ruby-dev:26440]
33204         * io.c (rb_io_inspect): replace sprintf() with "%s" format all
33205           over the place by snprintf() to avoid integer overflow.
33207 Tue Jul 19 14:10:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33209         * ext/tk/tcltklib.c: rbtk_eventloop_depth is used as int.
33211         * ext/tk/tcltklib.c: rbtk_pending_exception is tested with
33212           NIL_P, so should assign Qnil instead of 0 (Qfalse).
33214         * ext/tk/tcltklib.c (ip_invoke_real): fixed memory leak when
33215           ip is deleted.
33217 Tue Jul 19 13:19:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33219         * ext/tk/lib/tk/variable.rb: For symmetry, add TkVariable#string. It
33220           returns a string even if the default value type of the TkVariable
33221           object is not "string".
33223 Mon Jul 18 21:39:18 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33225         * eval.c (rb_call0): make the pointer to NODE volatile
33226           instead of NODE itself.
33228 Mon Jul 18 14:32:21 2005  Tanaka Akira  <akr@m17n.org>
33230         * eval.c (rb_call0): make body volatile to avoid possible optimization
33231           problem.
33232           [ruby-dev:26195]
33234 Mon Jul 18 12:23:27 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33236         * ext/io/wait/wait.c: wrong backport from trunk, and compile error on
33237           platforms fd_set is not a bit set.  fixed: [ruby-dev:26562]
33239 Mon Jul 18 09:36:25 2005  Tanaka Akira  <akr@m17n.org>
33241         * rubyio.h (FMODE_WSPLIT, FMODE_WSPLIT_INITIALIZED): new constant.
33243         * io.c (wsplit_p): new function.
33244           (io_fflush): split writing data by PIPE_BUF if wsplit_p is true in
33245           multi-threaded mode.
33246           (io_fwrite): ditto.
33247           [ruby-dev:26540]
33249 Mon Jul 18 05:00:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33251         * ext/nkf/nkf-utf8/nkf.c: import nkf.c 1.73
33252           fix: TestKconv 1F
33254 Sun Jul 17 13:46:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33256         * ext/io/wait/extconf.rb, ext/io/wait/wait.c: Win32 platforms support.
33258 Sat Jul 16 23:43:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33260         * enumerator.c (Init_Enumerator): wrong argument specs.
33261           [ruby-core:05481]
33263 Sat Jul 16 15:52:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33265         * win32/win32.[hc]: constified socket functions. [ruby-dev:26553]
33267 Fri Jul 15 23:59:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33269         * lib/rdoc/parsers/parse_c.rb (handle_class_module): handle a
33270           module enclosed in a built-in module.  fixed: [ruby-talk:148239]
33272         * lib/rdoc/parsers/parse_c.rb (find_body): allow macros as methods.
33274         * lib/rdoc/parsers/parse_c.rb (find_call_seq): allow :nodoc: modifier
33275           in C.  [ruby-core:04572]
33277 Fri Jul 15 23:20:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33279         * enumerator.c (Init_Enumerator): use an internal directly.
33281 Fri Jul 15 07:58:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33283         * lib/webrick/server.rb (WEBrick::GenericServer#accept_client):
33284           sockets should be non-blocking mode. [ruby-dev:26405]
33286         * lib/webrick/utils.rb (WEBrick::Utils.set_non_blocking): new method.
33288 Fri Jul 15 00:11:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33290         * enum.c (enumeratorize): create new enumerator for current method if
33291           no block is given.
33293         * enumerator.c: moved from ext/enumerator.
33295 Thu Jul 14 18:27:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33297         * win32/win32.c (rb_w32_strerror): should return correct message
33298           for ENAMETOOLONG and ENOTEMPTY. (bcc32) [ruby-dev:26533]
33300         * win32/win32.c (rb_w32_strerror): stripped CR LF on the tail.
33301           (bcc32) [ruby-dev:26533]
33303 Thu Jul 14 00:45:42 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33305         * LEGAL (ext/nkf/nkf-utf8): updated from nkf1.7 to nkf-utf8.
33307 Wed Jul 13 22:44:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33309         * parse.y: remove static variables.  [ruby-dev:26530]
33311 Wed Jul 13 19:36:29 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33313         * win32/win32.c (rb_w32_mkdir): should set EEXIST (not EACCES)
33314           if file or directory already exists. (bcc32) [ruby-dev:26508]
33316         * win32/win32.c (rb_w32_rmdir): should set ENOTDIR (not EINVAL)
33317           if it is not directory. (bcc32, win32)
33319         * win32/win32.c (rb_w32_rmdir, rb_w32_unlink): restore
33320           FILE_ATTRIBUTE_READONLY flag on function failure.
33322 Wed Jul 13 12:40:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33324         * ext/tk/tcltklib.c: TclTkLib.do_one_event doesn't work.
33326         * ext/tk/lib/tk.rb: Tk.thread_update is available.
33328 Tue Jul 12 23:32:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33330         * lib/mkmf.rb: keep curdir unexpanded.
33332 Mon Jul 11 23:50:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33334         * eval.c, intern.h (rb_proc_call, rb_obj_method, rb_method_call):
33335           export.
33337         * ext/enumerator/enumerator.c (enumerator_with_index): [EXPERIMENTAL]
33338           added a new method Enumerator#with_index.  [ruby-talk:147728]
33340 Mon Jul 11 08:31:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33342         * regparse.c (fetch_escaped_value): mask values following \c in
33343           regexp.  fixed: [ruby-dev:26500]
33345 Sun Jul 11 05:18:17 2005  Michael Neumann  <mneumann@ruby-lang.org>
33347         * lib/xmlrpc/server.rb (XMLRPC::Server): Switch from GServer over to
33348           WEBrick. This makes file lib/xmlrpc/httpserver.rb obsolete (at least it is
33349           no further used by the XML-RPC library).
33351 Mon Jul 11 02:50:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33353         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
33354           mistook to merge the patch of [ruby-dev:26235] at
33355           revision 1.11.
33357 Sun Jul 10 23:58:04 2005  Tanaka Akira  <akr@m17n.org>
33359         * lib/pathname.rb (Pathname#unlink): try Dir.unlink first to
33360           avoid unlink a directory by root.
33361           cf. [ruby-dev:26237]
33363 Sun Jul 10 12:47:01 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33365         * lib/debug.rb (debug_command): added a deficient format specifier.
33366           fixed: [ruby-core:05419]
33368 Sat Jul  9 22:02:37 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
33370         * ext/win32ole/win32ole.c (ole_method_dispid): convert dispid
33371           in Ruby and C by INT2NUM and NUM2INT.
33373         * ext/win32ole/win32ole.c (ole_invoke2): ditto.
33375         * ext/win32ole/test/testWIN32OLE.rb: ditto.
33377         * ext/win32ole/test/testOLEMETHOD.rb: ditto.
33379 Fri Jul  8 15:45:04 2005  Kouhei Sutou  <kou@cozmixng.org>
33381         * lib/rss/rss.rb (RSS::VERSION): 0.1.4 -> 0.1.5.
33383         * test/rss/test_version.rb (RSS::TestVersion#test_version):
33384           ditto.
33386         * lib/rss/0.9.rb (RSS::Rss::Channel::Item::Category):
33387           domain attribute of <category> is optional. Thanks to
33388           Chris Lee <clee@kde.org>.
33390         * test/rss/test_parser.rb (RSS::TestParser#test_category20):
33391           adjusted test case.
33393 Wed Jul  6 18:45:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33395         * object.c (rb_obj_pattern_match): now returns nil.
33396           [ruby-core:05391]
33398 Mon Jul  4 14:35:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33400         * sample/svr.rb: service can be stopped by ill-behaved client; use
33401           tsvr.rb instead.
33403 Mon Jul  4 13:25:21 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33405         * missing/erf.c: original erf.c by prof. Okumura is confirmed to
33406           be public domain.  reverted BSD implementation.
33408 Wed Jul  6 11:15:21 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33410         * win32/win32.c (open_ifs_socket): new function.
33412         * win32/win32.c (StartSockets, rb_w32_socket): use open_ifs_socket()
33413           instead of socket().
33414           all changes are derived from [ruby-core:5388].
33416 Wed Jul  6 00:15:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33418         * ext/nkf/nkf-utf8/{nkf.c,utf8tbl.c,config.h}:
33419           imported nkf.c 1.70 (support UTF-8-MAC)
33421         * ext/nkf/lib/kconv.rb: add :utf8mac and :internalunicode
33423 Tue Jul  5 23:44:06 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33425         * instruby.rb: expand source library path.
33427 Tue Jul  5 23:27:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33429         * array.c (sort_2): get rid of yet another bcc's bug.
33430           fixed: [ruby-core:05152]
33432         * eval.c (rb_thread_save_context): must not switch contexts during
33433           re-allocating stack.  fixed: [ruby-core:05219]
33435 Tue Jul  5 15:15:10 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33437         * ext/tk/tkutil.c: fix typo.
33439 Tue Jul  5 14:52:56 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33441         * ext/tk/tcltklib.c: bug fix on treating Unicode strings.
33443         * ext/tk/tcltklib.c: add methods to treat encoding mode.
33445         * ext/tk/MANUAL_tcltklib.eng: add description of TclTkLib#encoding,
33446           encoding_system, and so on.
33448         * ext/tk/MANUAL_tcltklib.eucj: ditto.
33450         * ext/tk/tkutil/tkutil.c: fail to create a Tcl's list string from
33451           an array including multiple kind of encoded strings.
33453         * ext/tk/lib/tk.rb: ditto.
33455         * ext/tk/lib/multi-tk.rb: 2nd arg of _{to|from}UTF8 is omissible.
33457         * ext/tk/lib/remote-tk.rb: ditto.
33459         * ext/tk/lib/tk.rb: override TclTkLib#encoding and encoding= to
33460           use TkCore::INTERP.encoding and encoding=.
33462         * ext/tk/lib/tk.rb: when "require 'tk'" and $KCODE=='NONE', check
33463           DEFAULT_TK_ENCODING to decide Ruby/Tk's system encoding mode.
33465         * ext/tk/lib/tk/encodedstr.rb: check both of Tk.encoding and
33466           Tk.encoding_system. Tk.encoding has higher priority.
33468         * ext/tk/lib/tk/optiondb.rb: ditto.
33470         * ext/tk/lib/tk/spinbox.rb: ditto.
33472         * ext/tk/lib/tk/validation.rb: ditto.
33474         * ext/tk/lib/tk/namespace.rb: arguemnts for TclTkIp#_merge_tklist
33475           should be UTF-8 strings.
33477 Mon Jul  4 19:29:32 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33479         * lib/set.rb: test change to follow revision 1.28. (duck typing?)
33481 Mon Jul  4 11:23:50 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33483         * test/{dbm,gdbm,sdbm}/test_{dbm,gdbm,sdbm}.rb: skip some tests
33484           which using fork on fork-less platforms.
33486 Sun Jul  3 23:26:30 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
33488         * test/wsdl/document/test_rpc.rb: compare formatted time string of
33489           Time objects instead of comparing Time objects itself to avoid
33490           unintended conflict of usec part.  [ruby-dev:26220]
33492 Sat Jul  2 22:41:04 2005  Tanaka Akira  <akr@m17n.org>
33494         * ext/socket/socket.c (unix_send_io, unix_recv_io): support x86-64 and
33495           IA64.
33497 Sat Jul  2 17:06:23 2005  Tanaka Akira  <akr@m17n.org>
33499         * defines.h (FLUSH_REGISTER_WINDOWS): defined for IA64.
33500           (flush_register_windows): declare flush_register_windows.
33502         * eval.c (flush_register_windows): new function.
33504         * ruby.h (NOINLINE): move up to be effective in defines.h.
33506 Sat Jul  2 15:19:41 2005  Tanaka Akira  <akr@m17n.org>
33508         * configure.in: check select_large_fdset.
33510         * eval.c: use select_large_fdset to support large file descriptors
33511           on Solaris.  [ruby-dev:26404]
33513 Fri Jul  1 17:55:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33515         * bignum.c (rb_big_neg): may be accessing bogus pointer value.
33517 Fri Jul  1 15:50:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33519         * missing/erf.c: need to include some headers for some platforms.
33521         * win32/win32.h (copysign, scalb): define for compatibility with
33522           other platforms. [ruby-dev:26430]
33524 Fri Jul  1 15:37:42 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33526         * missing/crypt.c: modified to make it compilable on platforms
33527           other than BSD.  [ruby-dev:26430]
33529         * missing/erf.c: ditto.  code from <exp.c> merged.
33531 Fri Jul  1 12:44:56 2005  Tanaka Akira  <akr@m17n.org>
33533         * lib/open-uri.rb (OpenURI.open_http): refine post_connection_check
33534           call.
33536 Fri Jul  1 11:34:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33538         * missing/crypt.c: replaced with 4.4BSD version.
33540         * missing/erf.c: ditto.
33542         * missing/vsnprintf.c: removed the third provision from the old
33543           BSD license.  [ruby-core:05177]
33545 Fri Jul  1 01:45:21 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33547         * enum.c (enum_min, enum_max): must not return Qundef.
33548           fixed: [ruby-core:05299]
33550 Fri Jul  1 00:18:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33552         * lib/delegate.rb (Delegator::respond_to): respond_to? must check
33553           destination object.  [ruby-talk:146894]
33555 Thu Jun 30 23:52:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33557         * signal.c (trap): non-string trap hander was ignored.
33558           fixed: [ruby-dev:26417]
33560 Thu Jun 30 19:00:21 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
33562         * lib/irb/ruby-lex.rb (RubyLex::identify_number): alternative implements
33563           for [ruby-dev:26410]. And support a numeric form of 0d99999.
33565 Thu Jun 30 17:28:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33567         * lib/irb/ruby-lex.rb (RubyLex::identify_number): should not treat
33568           plain zero as an octal number.  [ruby-dev:26410]
33570 Thu Jun 30 15:13:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33572         * eval.c (rb_eval): pre-evaluate argument for unambiguous
33573           evaluation order.  [ruby-dev:26383]
33575 Thu Jun 30 14:48:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33577         * lib/net/http.rb (Net::HTTP#connect, Net::HTTP#request): should
33578           not send proxy username and password to origin servers.
33579           [ruby-dev:25673]
33581         * lib/net/http.rb (Net::HTTP::ProxyDelta#edit_path): should not
33582           send HTTPS scheme URL to origine servers. [ruby-dev:25689]
33584 Thu Jun 30 09:53:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33586         * lib/delegate.rb (Delegator::method_missing): forward unknown
33587           method to the destination.  suggested by
33588           <christophe.poucet@gmail.com>.  [ruby-talk:146776]
33590 Wed Jun 29 00:03:20 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
33592         * regparse.c (fetch_token): avoid warning of unused goto tag.
33593           [ruby-dev:26389]
33595 Tue Jun 28 21:59:29 2005  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
33597         * dir.c, eval.c, parse.y, process.c, ruby.c: avoid warning "unused
33598           variable" [ruby-dev:26387]
33600         * dir.c (glob_helper): avoid warning "enumeration value `RECURSIVE'
33601           not handled in switch" [ruby-dev:26392]
33603 Tue Jun 28 01:52:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33605         * ext/nkf/lib/kconv.rb: add Kconv::VERSION
33606         * ext/nkf/lib/kconv.rb (conv): can process arrayed options
33607         * ext/nkf/nkf-utf8/nkf.c: imported Revision 1.69
33608         * ext/nkf/nkf-utf8/utf8tbl.c: imported Revision 1.9
33610 Sat Jun 25 23:30:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33612         * process.c (detach_process_watcher): terminate process watcher
33613           thread right after rb_waitpid() succeed.  [ruby-talk:146430]
33615 Sat Jun 25 17:12:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33617         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_query): should
33618           discard if key=val pair is empty. patch from Gary Wright.
33620 Sat Jun 25 15:49:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33622         * enum.c (enum_min, enum_max, enum_min_by, enum_max_by): do not ignore
33623           nil as the first element.
33625 Sat Jun 25 15:13:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33627         * lib/set.rb (Set#==): [ruby-dev:25206] (ported from ruby_1_8 branch)
33629 Sat Jun 25 11:37:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
33631         * ext/nkf/lib/kconv.rb: remove constants
33632           Iconv_Shift_JIS, Uconv_EUC_JP, Iconv_UTF8
33633         * ext/nkf/lib/kconv.rb: add module functions to Kconv
33634           conv, {eucjp, shiftjis, utf8}?, guess_as_symbol
33635         * ext/nkf/lib/kconv.rb: add instance methods to String
33636           conv, {eucjp, shiftjis, utf8}?
33637         * ext/nkf/lib/kconv.rb: add aliases Kconv.to_* and String#to_*
33639 Fri Jun 24 17:00:00 2005  Shigeo Kobayashi  <shigeo@tinyforest.jp>
33641         * ext/bigdecimal/bigdecimal.c: patch from "NATORI Shin"
33642           (u-tokyo.ac.jp) applied to fix rounding bug.
33644 Fri Jun 24 13:17:45 2005  akira yamada  <akira@ruby-lang.org>
33646         * lib/uri/common.rb, lib/uri/generic.rb: fixed typo in documents and
33647           replaced some existent domain name with "example.com".
33649 Fri Jun 24 12:23:19 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33651         * ext/tk/lib/tk.rb: fix typo on Tk.grid_propagate.
33653         * ext/tk/lib/tk.rb: Tk.event_generate and TkWindow#event_generate
33654           accept TkEvent::Event object as context argument.
33656         * ext/tk/lib/tk/event.rb: add TkEvent::Event#valid_fields and
33657           valid_for_generate to get field parameters of event_generate.
33659 Thu Jun 23 23:55:59 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33661         * runruby.rb: should load built rbconfig.rb.
33663 Thu Jun 23 16:53:15 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33665         * ext/tk/lib/tk/canvastag.rb: TkcGroup.new cannot include given items.
33666           TkcGroup#exclude calls wrong method.
33667           Add alias TkcGroup#add [ruby-talk:146049].
33669         * ext/tk/lib/tk/canvas.rb: TkCanvas#dtag and some subcommands of
33670           TkCanvas#addtag fail to treat a TkcTag argument.
33672         * ext/tk/lib/tk/event.rb: add TkEvent::Event#generate to help to send
33673           current event to other widgets.
33675 Mon Jun 20 18:44:04 2005  Tanaka Akira  <akr@m17n.org>
33677         * eval.c (FUNCTION_CALL_MAY_RETURN_TWICE): DUMMY_SETJMP is replaced
33678           because setjmp is not enough to fix getcontext and SPARC register
33679           window problem.
33681 Mon Jun 20 17:15:51 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33683         * ext/dbm/dbm.c (fdbm_closed): new method DBM#closed?
33685         * ext/gdbm/gdbm.c (fgdbm_closed): new method GDBM#closed?
33687         * ext/sdbm/init.c (fsdbm_closed): new method SDBM#closed?
33689         * test/dbm/test_dbm.rb, test/gdbm/test_gdbm.rb, test/sdbm/test_sdbm.rb
33690           (teardown): close all db objects before deleting data files.
33692         * win32/win32.{ch} (unlink): hook runtime function to change
33693           file attribute before unlinking.
33694           merge from 1.8, see [ruby-dev:26360]
33696 Mon Jun 20 02:15:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33698         * gc.c (define_final): document fix: finalizers never get called
33699           before target object is destroyed.
33701 Mon Jun 20 01:26:49 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
33703         * ext/openssl/openssl_missing.c, ext/openssl/ossl.h,
33704           ext/openssl/ossl_asn1.c, ext/openssl/ossl_bio.c,
33705           ext/openssl/ossl_pkcs12.h, ext/openssl/ossl_x509req.c: avoid
33706           compiler warnings. suggested by Michal Rokos.
33708 Sun Jun 20 00:22:02 2005  Michael Neumann  <mneumann@ruby-lang.org>
33710         * lib/xmlrpc/utils.rb: Patch by Nobuhiro IMAI fixes the following
33711           problem: Default value modification on
33712           Module#public_instance_methods (false -> true) breaks
33713           s.add_handler(XMLRPC::iPIMethods("sample"), MyHandler.new) style
33714           security protection.
33716         * lib/xmlrpc/client.rb: Aliased XMLRPC::Client#new2 as
33717           XMLRPC::Client#new_from_uri, and #new3 as #new_from_hash.
33719 Sun Jun 19 14:09:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33721         * gc.c (run_final): reduce unnecessary object allocation during
33722           finalization.
33724         * gc.c (rb_gc_call_finalizer_at_exit): deferred finalizers list should
33725           be cleared before calling them.  fixed: [ruby-talk:145790]
33727 Sat Jun 18 01:15:36 2005  Shugo Maeda  <shugo@ruby-lang.org>
33729         * ext/readline/readline.c (readline_readline): do not set
33730           rl_{in,out}stream.
33732         * ext/readline/readline.c (readline_s_set_input): new method.
33734         * ext/readline/readline.c (readline_s_set_output): new method.
33736         * lib/irb/input-method.rb: set Readline.input and Readline.output.
33738 Fri Jun 17 13:01:40 2005  Tanaka Akira  <akr@m17n.org>
33740         * lib/time.rb (Time.parse): fix previous leap seconds support.
33741           (Time.rfc2822): ditto.
33742           (Time.xmlschema): ditto.
33744 Thu Jun 16 15:41:32 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33746         * ruby.c (load_file): '!' is already read. reported by gotoyuzo.
33748 Thu Jun 16 15:09:38 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33750         * ext/tk/tcltklib.c (ip_rb_threadVwaitCommand): Tcl_Release
33751           was missing.
33753 Thu Jun 16 13:34:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33755         * ext/tk/lib/tk.rb: add Tk.getMultiple{Open|Save}File() which return
33756           an Array of selected files.
33758 Thu Jun 16 12:53:24 2005  Tanaka Akira  <akr@m17n.org>
33760         * lib/time.rb (Time.parse): "Fri Jan  1 08:59:60 +0900 1999" was
33761           parsed as "Fri Jan 01 09:00:00 JST 1999" even on an environment
33762           which supports leap seconds.
33763           (Time.rfc2822): ditto.
33764           (Time.xmlschema): ditto.
33766 Thu Jun 16 00:13:41 2005  Tanaka Akira  <akr@m17n.org>
33768         * lib/resolv.rb (Resolv::DNS::Resource#ttl): new attribute.
33769           (Resolv::DNS::Resource#==): ignore @ttl.
33770           (Resolv::DNS::Resource#hash): ditto.
33771           (Resolv::DNS::Message::MessageDecoder#get_rr): save TTL in a
33772           Resource object.
33773           based on [ruby-core:5190] by Eric Hodel.
33775 Wed Jun 15 18:26:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33777         * ext/tk/lib/tk.rb: support "tk inactive" sub-command [for Tcl/Tk8.5a3]
33779         * ext/tk/lib/tk/namespace.rb: support "namespace path" sub-command and
33780           'namespace ensemble' sub-command [for Tcl/Tk8.5a3]
33782 Tue Jun 14 02:02:43 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33784         * ext/tk/tkutil/tkutil.c: add TkUtil::CallbackSubst.subst_arg(m, ...)
33785           & _define_attribute_aliases(hash) to get substitution-argument from
33786           attributes (e.g. subst_arg(:x,:y,:num,:button) --> "%x %y %b %b ").
33788         * ext/tk/lib/tk/event.rb: use _define_attribute_aliases().
33790 Mon Jun 13 13:03:08 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
33792         * hash.c (ruby_setenv): fixed SEGV. [ruby-dev:26186]
33794 Mon Jun 13 01:54:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33796         * signal.c (sigexit): call rb_thread_signal_exit() instead of
33797           rb_exit().  [ruby-dev:26347]
33799         * eval.c (rb_thread_signal_exit): a new function to exit on main
33800           thread.
33802         * eval.c (rb_thread_switch): exit status should be retrieved from
33803           ruby_errinfo.
33805         * eval.c (rb_f_exit): ensure exit(0) should call
33806           exit(EXIT_SUCCESS).
33808 Mon Jun 13 01:20:02 2005  Tanaka Akira  <akr@m17n.org>
33810         * eval.c (rb_gc_mark_threads): curr_thread may not be part of the
33811           thread list.  [ruby-dev:26312]
33813 Sat Jun 11 22:34:44 2005  Minero Aoki  <aamine@loveruby.net>
33815         * parse.y: missing arg_paren event.  This patch is contributed by
33816           Mitchell N Charity.
33818 Fri Jun 10 23:55:17 2005  Tanaka Akira  <akr@m17n.org>
33820         * eval.c (unknown_node): show more information.  [ruby-dev:26196]
33822 Fri Jun 10 23:35:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33824         * missing/mkdir.c: remove. [ruby-core:05177]
33826 Fri Jun 10 22:54:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33828         * missing.h: fd_set stuffs need sys/types.h.  fixed: [ruby-core:05179]
33830 Thu Jun  9 23:58:12 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33832         * ext/Win32API/Win32API.c (Win32API_Call): disable global
33833           optimization. fixed: [ruby-core:05143]
33835 Thu Jun  9 23:35:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33837         * enum.c (enum_inject): default the result value to Qundef to use
33838           first element as initial value if not given.
33840 Thu Jun  9 19:55:41 2005  Tanaka Akira  <akr@m17n.org>
33842         * eval.c (ruby_longjmp): new macro to call longjmp, setcontext, etc.
33843           (ruby_setjmp): new macro to call setjmp, getcontext, etc.
33844           (ruby_setjmp): call setjmp before getcontext to avoid IA64 register
33845           stack problem.
33846           [ruby-talk:144939]
33848         * gc.c (Init_stack): remove IA64_MAGIC_STACK_LIMIT.
33850 Thu Jun  9 18:24:16 2005  Tanaka Akira  <akr@m17n.org>
33852         * configure.in, eval.c, gc.c: use libunwind only on HP-UX.
33853           [ruby-dev:26297]
33855 Thu Jun  9 14:46:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33857         * hash.c (env_aset): do not treat nil as key-removing value.
33858           [ruby-list:40865]
33860         * parse.y (method_call): allow aref expression ([]) to take a
33861           block.
33863         * parse.y (block_dup_check): a function to check duplication of
33864           a block argument and an actual block.
33866 Thu Jun  9 11:55:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33868         * lib/delegate.rb (SimpleDelegator::__setobj__): need check for
33869           recursive delegation.  [ruby-core:04940]
33871 Thu Jun  9 11:50:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33873         * lib/cgi.rb: add underscore aliases CGI::escape_html,
33874           CGI::unescape_html, CGI::escape_element, CGI::unescape_element.
33875           [ruby-core:05058]
33877 Wed Jun  8 18:47:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33879         * misc/ruby-mode.el (ruby-expr-beg): fix looking point drift.
33881 Wed Jun  8 12:25:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33883         * array.c (rb_ary_nitems): add the block feature to Array#nitems.
33884           suggested by Bertram Scharpf <lists@bertram-scharpf.de> in
33885           [ruby-talk:134083].
33887 Wed Jun  8 11:11:34 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33889         * bignum.c (get2comp): revert all prior changes, and calculate
33890           proper 2's complement for negative numbers.
33892 Wed Jun  8 08:33:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33894         * enum.c (enum_min_by, enum_max_by): return nil if no iteration.
33895           fixed: [ruby-dev:26245]
33897         * eval.c (rb_need_block): ensure a block is given.
33899         * eval.c (backtrace): skip successive frames sharing same node.
33901 Wed Jun  8 01:27:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33903         * bignum.c (bignorm): fixed a bug in normalizing negative numbers
33904           reported from Honda Hiroki <hhonda@ipflex.com>.  normalizing
33905           should not trim leading zeros from negative numbers.
33907         * bignum.c (rb_cstr_to_inum): must remove leading zeros for this
33908           case.
33910 Wed Jun  8 00:15:08 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33912         * ext/socket/socket.c (ruby_getaddrinfo__aix): merged a patch from
33913           KUBO Takehiro <kubo at jiubao.org> to support AIX.  [ruby-list:40832]
33915 Wed Jun  8 00:09:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33917         * lib/yaml/rubytypes.rb (Array::to_yaml): merged a patch from
33918           Tilman Sauerbeck <tilman at code-monkey.de>.  [ruby-core:05055]
33920         * lib/yaml/rubytypes.rb (Hash::to_yaml): ditto.
33922 Wed Jun  8 00:00:01 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33924         * ext/curses/curses.c (curses_insertln): merged a patch from
33925           TAKAHASHI Tamotsu <ttakah at lapis.plala.or.jp>.  [ruby-ext:02305]
33927 Tue Jun  7 19:34:15 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33929         * lib/irb/init.rb (IRB::IRB.rc_file_generators): more flexible
33930           IRB.rc_file_generators.  [ruby-core:05163]
33932 Tue Jun  7 18:39:31 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33934         * lib/thread.rb: RDoc documentation from Eric Hodel
33935           <drbrain@segment7.net> added.  [ruby-core:05148]
33937 Tue Jun  7 18:30:04 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33939         * lib/mkmf.rb (create_makefile): add .SUFFIXES from depend file.
33940           fixed: [ruby-dev:26294]
33942 Tue Jun  7 17:20:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33944         * parse.y (parser_yylex): allow ';;' to be block terminator in
33945           place of 'end'.  [highly experimental]
33947         * misc/ruby-mode.el (ruby-block-end-re): allow ';;' to be a
33948           negative indent trigger.  [highly experimental]
33950         * parse.y (parser_yylex): small error fixed.
33952 Tue Jun  7 16:45:49 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33954         * parse.y (parser_yylex): "respond_to?:foo" should be interpreted
33955           as "respond_to? :foo" at the command level.  [ruby-talk:144303]
33957 Tue Jun  7 16:32:53 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
33959         * sprintf.c (rb_f_sprintf): raise exception on debug mode (-d),
33960           not verbose mode (-v/-w).  [ruby-core:05123]
33962         * sprintf.c (rb_f_sprintf): warn always on verbose mode.
33964 Tue Jun  7 10:30:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33966         * ext/tk/lib/multi-tk.rb: slave-ip fails to call procedures
33967           delegated by master-ip.
33969 Mon Jun  6 16:35:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
33971         * ext/ripper/depend: add .y to .SUFFIXES for nmake.
33973 Sun Jun  5 23:00:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
33975         * ext/tk/lib/tk/console.rb: create console when required
33977         * ext/tk/sample/tkextlib/tile/demo.rb: fix TypeError & create Console
33979 Sun Jun  5 10:23:52 2005  Tanaka Akira  <akr@m17n.org>
33981         * signal.c (ruby_signal): don't set SA_RESTART.
33982           [ruby-dev:26276]
33984 Sat Jun  4 14:55:18 2005  Tanaka Akira  <akr@m17n.org>
33986         * test/dbm/test_dbm.rb: merged from ext/dbm/testdbm.rb.
33988         * test/gdbm/test_gdbm.rb: merged from ext/gdbm/testgdbm.rb.
33990         * test/sdbm/test_sdbm.rb: renamed from ext/sdbm/testsdbm.rb with
33991           modification to use test/unit.
33993 Fri Jun  3 23:23:02 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
33995         * intern.h (rb_fdset_t): deal with fd bit sets over FD_SETSIZE.
33996           fixed: [ruby-dev:26187]
33998         * eval.c (rb_fd_init, rb_fd_term, rb_fd_zero, rb_fd_set, rb_fd_clr,
33999           rb_fd_isset, rb_fd_copy): ditto.
34001         * io.c (rb_io_wait_readable, rb_io_wait_writable, rb_f_select): ditto.
34003         * ext/io/wait/wait.c (io_wait): ditto.
34005         * ext/socket/socket.c (wait_connectable, unix_recv_io): ditto.
34007 Fri Jun  3 14:06:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34009         * ext/tk/lib/multi-tk.rb: fix typo.
34011 Thu Jun  2 23:42:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34013         * parse.y: pragma support on ripper.  [ruby-dev:26266]
34015 Thu Jun  2 00:02:16 2005  Minero Aoki  <aamine@loveruby.net>
34017         * struct.c: accessing >10 member caused segmentation fault.
34018           [ruby-dev:26247]
34020         * test/ruby/test_struct.rb: test it.
34022 Wed Jun  1 11:30:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34024         * bcc32/Makefile.sub: can use single quote character in DESTDIR.
34025           [ruby-dev:26205]
34027         * bcc32/Makefile.sub: Dir.glob in 1.9 doesn't treat \ as path separator.
34028           [ruby-dev:26254]
34030 Wed Jun  1 00:11:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34032         * parse.y (method_call): new experiment: "(expr)(args...)" to
34033           invoke "expr.call(args...)".  [EXPERIMENTAL]
34035 Tue May 31 23:43:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34037         * parse.y (command): revert implicit "call" for local variables.
34039 Tue May 31 15:52:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34041         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should
34042           break the loop if the socket reached to EOF. [ruby-talk:142285]
34044         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): send response
34045           without reading the whole request body if keep-alive is diabled.
34046           [experimental]
34048 Mon May 30 23:48:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34050         * ext/tk/lib/tk/macpkg.rb: add PACKAGE_NAME information of Tcl/Tk
34051           Extension.
34053         * ext/tk/lib/tk/msgcat.rb: ditto.
34055         * ext/tk/lib/tk/winpkg.rb: ditto.
34057         * ext/tk/lib/tkextlib/*: ditto.
34059 Sat May 28 16:39:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34061         * test/openssl/test_x509store.rb: add test for expired CRL
34062           and refine some assertions.
34064 Sat May 28 05:15:44 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34066         * ext/openssl/ossl_x509store.c (ossl_x509stctx_set_time): should
34067           not set internal flag directry.
34069 Sat May 28 02:00:11 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34071         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line):
34072           ENV["REQUEST_URI"] is better to get correct Request-URI
34073           than ENV["SCRIPT_NAME"] + ENV["PATH_INFO"].  [ruby-dev:26235]
34075 Fri May 27 16:32:04 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34077         * lib/mkmf.rb: use the semicolon as the path separator
34078           in the environment of MSYS.  fixed: [ruby-dev:26232]
34080 Thu May 26 20:31:21 2005  Minero Aoki  <aamine@loveruby.net>
34082         * lib/fileutils.rb (remove_entry_secure): add documentation.
34084         * lib/fileutils.rb (remove_entry_secure): should not invoke
34085           unlink(2) against a directory.
34087 Thu May 26 08:29:19 2005  Akiyoshi, Masamichi  <akiyoshi@hp.com>
34089         * vms/vmsruby_private.c, vms/vmsruby_private.h: private routines
34090           for VMS port are added.
34092         * eval.c (ruby_init): change to call VMS private intialization routine.
34094 Thu May 26 07:39:07 2005  Minero Aoki  <aamine@loveruby.net>
34096         * lib/fileutils.rb (rm_r): use lchown(2), not chown(2).
34097           [ruby-dev:26226]
34099         * lib/fileutils.rb (cd): remove :noop option. (feature change)
34101         * lib/fileutils.rb (cp_r): should copy symlink as symlink, for
34102           also tree root. (feature change)
34104         * lib/fileutils.rb (cp_r): new option :dereference_root.
34106         * lib/fileutils.rb: new method remove_entry.
34108         * lib/fileutils.rb: new method remove_entry_secure.
34110         * lib/fileutils.rb: add documentation.
34112 Thu May 26 06:08:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34114         * ext/tk/lib/tk.rb: add shortcut-methods of tk_call + tk_split_list
34116 Wed May 25 20:06:27 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34118         * ext/tk/lib/tk.rb: TkComm#tk_split_*list fail to split a kind of SJIS
34119           strings. To avoid the trouble, add arguments to control converting
34120           encoding, and do split on a UTF8 string.
34122         * ext/tk/lib/multi-tk.rb: modify to attend encoding.
34124         * ext/tk/lib/remote-tk.rb: ditto.
34126         * ext/tk/lib/tk/itemconfig.rb: ditto.
34128         * ext/tk/lib/tk/listbox.rb: ditto.
34130         * ext/tk/lib/tk/namespace.rb: ditto.
34132         * ext/tk/lib/tk/panedwindow.rb: ditto.
34134         * ext/tk/lib/tk/text.rb: ditto.
34136         * ext/tk/lib/tk/textmark.rb: ditto.
34138         * ext/tk/lib/tk/texttag.rb: ditto.
34140         * ext/tk/lib/tk/variable.rb: ditto.
34142         * ext/tk/lib/tk/winfo.rb: ditto.
34144         * ext/tk/lib/tkextlib/iwidgets/scrolledlistbox.rb: ditto.
34146         * ext/tk/lib/tkextlib/iwidgets/scrolledtext.rb: ditto.
34148         * ext/tk/lib/tk.rb: add TkWindow#lower_window/raise_window and
34149           Tk#lower_window/raise_window by reason of method-name conflict
34151         * ext/tk/lib/tk/canvas.rb: bug fix on TkCanvas#delete when given
34152           non-TkcItem arguments.
34154         * ext/tk/lib/tkextlib/iwidgets/scrolledcanvas.rb: ditto.
34156 Wed May 25 19:48:12 2005  Minero Aoki  <aamine@loveruby.net>
34158         * lib/fileutils.rb (rm_r): does chown(2). [ruby-dev:26199]
34160 Wed May 25 12:59:48 2005  Tanaka Akira  <akr@m17n.org>
34162         * lib/open-uri.rb (OpenURI::Meta::RE_QUOTED_STRING): a content of
34163           quoted-string should be zero or more characters.
34165 Tue May 24 23:42:16 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34167         * numeric.c (fix_pow): support Fixnum ** Float case directly
34168           without coercing.  [ruby-talk:142697] [ruby-talk:143054]
34170 Tue May 24 16:57:24 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34172         * ruby.c (require_libraries): caused SEGV when continuation jumped
34173           in to the required library code.
34175 Tue May 24 17:45:59 2005  Shugo Maeda  <shugo@ruby-lang.org>
34177         * test/readline/test_readline.rb: do not test libedit.
34178           fixed: [ruby-dev:26217]
34180 Tue May 24 06:45:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34182         * misc/ruby-mode.el (ruby-font-lock-syntactic-keywords): string
34183           literals to be matched non-greedy.
34185 Tue May 24 00:39:14 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34187         * test/soap/calc: method name 'set' was able to crash with a class Set.
34188           [ruby-dev:26210]
34190         * test/wsdl/document/test_rpc.rb: dateTime comparison failed under
34191           TZ=right/Asia/Tokyo (with leap second.) [ruby-dev:26208]
34193 Mon May 23 16:23:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34195         * ext/tk/extconf.rb: Framework support on MacOS X Tiger.
34197         * ext/tk/README.tcltklib: add description of Framework support options.
34199 Mon May 23 15:07:34 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34201         * win32/Makefile.sub ($(PROGRAM)): add dependency on $(LIBRUBY_SO).
34202           [experimental]
34204 Mon May 23 12:21:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34206         * re.c (make_regexp): should not return junk address during
34207           compile time.  [ruby-dev:26206]
34209 Sun May 22 21:54:06 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
34211         * lib/{soap,wsdl,xsd}, test/{soap,wsdl,xsd}: imported soap4r/1.5.4.
34213           == SOAP client and server ==
34215           === for both client side and server side ===
34217           * improved document/literal service support.
34218             style(rpc,document)/use(encoding, literal) combination are all
34219             supported.  for the detail about combination, see
34220             test/soap/test_style.rb.
34222           * let WSDLEncodedRegistry#soap2obj map SOAP/OM to Ruby according to
34223             WSDL as well as obj2soap.  closes #70.
34225           * let SOAP::Mapping::Object handle XML attribute for doc/lit service.
34226             you can set/get XML attribute via accessor methods which as a name
34227             'xmlattr_' prefixed (<foo name="bar"/> -> Foo#xmlattr_name).
34229           === client side ===
34231           * WSDLDriver capitalized name operation bug fixed.  from
34232             1.5.3-ruby1.8.2, operation which has capitalized name (such as
34233             KeywordSearchRequest in AWS) is defined as a method having
34234             uncapitalized name. (converted with GenSupport.safemethodname
34235             to handle operation name 'foo-bar').  it introduced serious
34236             incompatibility; in the past, it was defined as a capitalized.
34237             define capitalized method as well under that circumstance.
34239           * added new factory interface 'WSDLDriverFactory#create_rpc_driver'
34240             to create RPC::Driver, not WSDLDriver (RPC::Driver and WSDLDriver
34241             are merged).  'WSDLDriverFactory#create_driver' still creates
34242             WSDLDriver for compatibility but it warns that the method is
34243             deprecated.  please use create_rpc_driver instead of create_driver.
34245           * allow to use an URI object as an endpoint_url even with net/http,
34246             not http-access2.
34248           === server side ===
34250           * added mod_ruby support to SOAP::CGIStub.  rename a CGI script
34251             server.cgi to server.rb and let mod_ruby's RubyHandler handles the
34252             script.  CGIStub detects if it's running under mod_ruby environment
34253             or not.
34255           * added fcgi support to SOAP::CGIStub.  see the sample at
34256             sample/soap/calc/server.fcgi.  (almost same as server.cgi but has
34257             fcgi handler at the bottom.)
34259           * allow to return a SOAPFault object to respond customized SOAP fault.
34261           * added the interface 'generate_explicit_type' for server side
34262             (CGIStub, HTTPServer).  call 'self.generate_explicit_type = true'
34263             if you want to return simplified XML even if it's rpc/encoded
34264             service.
34266           == WSDL ==
34268           === WSDL definition ===
34270           * improved XML Schema support such as extension, restriction,
34271             simpleType, complexType + simpleContent, ref, length, import,
34272             include.
34274           * reduced "unknown element/attribute" warnings (warn only 1 time for
34275             each QName).
34277           * importing XSD file at schemaLocation with xsd:import.
34279           === code generation from WSDL ===
34281           * generator crashed when there's '-' in defined element/attribute
34282             name.
34284           * added ApacheMap WSDL definition.
34286         * sample/{soap,wsdl}: removed.
34288 Sun May 22 19:11:35 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34290         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SSLServer#intialize):
34291           should initialize session id context. [ruby-core:4663]
34293         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): add session id support.
34295 Sun May 22 12:30:58 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34297         * intern.h, parse.y (ruby_pragma): removed.  fixed: [ruby-dev:26198]
34299         * parse.y (parser_pragma): pragma name was ignored.
34301 Sun May 22 02:39:57 2005  Minero Aoki  <aamine@loveruby.net>
34303         * lib/fileutils.rb (rm_r): new option :secure to avoid
34304           time-to-check-to-time-to-use security problem.  [ruby-dev:26100]
34306         * lib/fileutils.rb (remove_file, remove_dir): try chmod(700) only
34307           on Windows.
34309         * lib/fileutils.rb: does not depend on find.rb.
34311         * lib/fileutils.rb: new method chmod_R.
34313         * lib/fileutils.rb (chown_R): did not work.
34315 Sat May 21 10:23:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34317         * bcc32/Makefile.sub: tds files were not deleted when DESTDIR
34318           included '\' path delimiter. [ruby-dev:26193]
34320 Fri May 20 15:52:18 2005  Shugo Maeda  <shugo@ruby-lang.org>
34322         * ext/readline/readline.c (readline_attempted_completion_function):
34323           return 2 items if completion_proc returns only 1 item (for libedit).
34325 Fri May 20 01:24:33 2005  Shugo Maeda  <shugo@ruby-lang.org>
34327         * ext/readline/extconf.rb: check rl_vi_editing_mode() and
34328           rl_emacs_editing_mode().
34330 Thu May 19 23:33:09 2005  Shugo Maeda  <shugo@ruby-lang.org>
34332         * ext/readline/readline.c: supported libedit. fixed: [ruby-core:4858]
34334         * ext/readline/extconf.rb: added new option --enable-libedit.
34336         * test/readline/test_readline.rb: added assertions for
34337           Readline::HISTORY.
34339         * lib/irb/input-method.rb: do not use Readline::HISTORY.pop.
34341 Wed May 18 23:42:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34343         * error.c (exc_exception): reverted to call Exception#initialize
34344           directly.  fixed: [ruby-dev:26177]
34346 Wed May 18 17:38:51 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34348         * dir.c (glob_helper): check whether path is "" before calling
34349           do_opendir.  [ruby-dev:26183]
34351 Wed May 18 13:40:48 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34353         * win32/win32.c (NtInitialize): fix typo.
34355 Wed May 18 11:07:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34357         * dir.c (glob_helper): get rid of using String.  [ruby-dev:26180]
34359         * eval.c (ruby_options), win32/win32.c (NtInitialize): move argument
34360           intialization back.  [ruby-dev:26180]
34362 Tue May 17 11:49:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34364         * win32/win32.c (unixtime_to_filetime): use localtime() instead of
34365           gmtime() when using FileLocalTimeToFileTime().
34367 Mon May 16 22:42:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34369         * win32/win32.h, {bcc32,win32,wince}/Makefile.sub: moved rb_[ugp]id_t
34370           to get rid of redefinition warnings on mingw.
34372         * class.c (rb_class_init_copy): singleton class is disallowed to copy,
34373           from its definition.  fixed: [ruby-talk:142749]
34375         * parse.y (pragma_encoding): add prototype to suppress false warning
34376           by VC.
34378         * process.c (proc_spawn_v): use rb_w32_aspawn on Win32.
34380 Mon May 16 03:29:01 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34382         * win32/win32.{h,c}: define rb_[pgu]id_t.
34384 Mon May 16 00:21:02 2005  Tanaka Akira  <akr@m17n.org>
34386         * lib/pathname.rb (Pathname#unlink): use SystemCallError instead of
34387           Errno::EISDIR because EISDIR is not portable.
34388           [ruby-core:5001]
34390 Sun May 15 22:28:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34392         * lib/drb/drb.rb (DRbObject#method_missing): use raise(exception).
34393           [ruby-dev:26164]
34395 Sun May 15 18:56:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34397         * configure.in, ruby.h: define rb_[pgu]id_t macros instead of typedefs
34398           to get rid of types which might not be defined yet.  [ruby-dev:26165]
34400 Sun May 15 14:35:46 2005  Tanaka Akira  <akr@m17n.org>
34402         * lib/pathname.rb (Pathname#unlink): unlink a symlink to a directory
34403           was failed.  [ruby-core:4992]
34405 Sun May 15 09:57:30 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34407         * win32/win32.c (unixtime_to_filetime): deal with DST.
34408           [ruby-talk:141817]
34410 Sat May 14 23:59:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34412         * error.c (exc_exception, {exit,name_err,syserr}_initialize): call
34413           Execption#initialize.  fixed: [ruby-talk:142593]
34415 Sat May 14 23:56:41 2005  Erik Huelsmann  <ehuels@gmail.com>
34417         * configure.in: Check for the availability of pid_t, gid_t and uid_t and
34418           remove AC_TYPE_UID_T.  fixed: [ruby-core:04745]
34420         * defines.h: Remove pid_t typedef.
34422         * ruby.h: Define rb_pid_t, rb_gid_t and rb_uid_t in accordance with
34423          the available system types.
34425         * process.c: Change instances of pid_t and gid_t to their rb_*
34426          counterparts.
34428         * ext/pty/pty.c: Change pid_t to rb_pid_t.
34430         * vms/config.h: Define HAVE_{P,G,U}ID_T to 1.
34432         * win32/Makefile.sub: Remove #define for {g,u}id_t.
34434         * win32/win32.c: Change pid_t to rb_pid_t.
34436         * wince/Makefile.sub: Remove #define for {g,u}id_t.
34438         * wince/sys/types.h: Remove definitions of {p,g,u}id_t.
34440 Sat May 14 11:47:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34442         * intern.h (ruby_pragma): prototype.  [ruby-core:04881]
34444         * parse.y (parser_pragma): parse Emacsen hack.
34446         * parse.y (parser_prepare): deal with specific syntax at the top.
34448         * ruby.c (load_file): read the first line iff it started with shebang.
34450 Fri May 13 23:44:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34452         * ext/extmk.rb: keep srcdir unexpanded.
34454         * lib/mkmf.rb (create_makefile): quote topdir and hdrdir if necessary.
34455           fixed: [ruby-core:04932]
34457         * lib/mkmf.rb (configuration), {bcc32,win32,wince}/Makefile.sub: make
34458           also INSTALL_PROG and INSTALL_DATA system dependent.
34459           fixed: [ruby-core:04931]
34461 Fri May 13 23:32:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34463         * eval.c (unknown_node): add volatile directive to prototype.
34465 Fri May 13 17:50:49 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34467         * variable.c (generic_ivar_get): rb_attr_get should not warn.
34468           [ruby-dev:26010]
34470 Thu May 12 17:41:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
34472         * ext/nkf/nkf-utf8/nkf.c: follow nkf 2.0.5
34474 Thu May 12 16:50:40 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34476         * lib/rdoc/parsers/parse_c.rb: more readability for mixing
34477           progress "c..." and warning message.
34479 Thu May 12 15:50:56 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
34481         * lib/rdoc/parsers/parse_c.rb: show parsing progress for C files.
34482           [ruby-core:4341]
34484 Thu May 12 09:53:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34486         * version.c (ruby_show_version): flush for non-tty stdout.
34488 Thu May 12 01:23:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34490         * eval.c (unknown_node): ignore broken NODE to get rid of accessing
34491           possibly inaccessible address.  fixed: [ruby-dev:26122]
34492           should emit more useful information like [ruby-dev:26126], though.
34494 Wed May 11 15:58:39 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34496         * eval.c (break_jump): break should not cross functions.
34497           [ruby-list:40818]
34499 Wed May 11 10:41:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34501         * lib/tempfile.rb (Tempfile#unlink): fixed typo.
34503 Wed May 11 01:03:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34505         * eval.c (TMP_ALLOC): use macro NEW_NODE() to get rid of warnings on
34506           platforms which have no alloca().  fixed: [ruby-talk:141301]
34508 Sun May  8 23:17:47 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34510         * ext/tk/lib/tk/timer.rb: fix typo.
34512 Sun May  8 21:00:50 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34514         * hash.c (Init_Hash): remove custom "hash" and "eql?".
34515           (ported from 1.8) [ruby-dev:26132]
34517 Sun May  8 16:50:25 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34519         * lib/profiler.rb: fixed "undefined method `[]' for nil:NilClass"
34520           [ruby-core:4775] [ruby-talk:140401] [ruby-dev:26118]
34522 Sat May  7 22:58:00 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34524         * lib/mkmf.rb (have_var): no libs argument is given.
34526 Fri May  6 08:08:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34528         * hash.c:rb_hash_hash_i() should be static.  [ruby-core:04815]
34530         * re.c should include regint.h for declarations of oniguruma
34531           functions.  [ruby-core:04815]
34533 Sun May  1 09:15:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34535         * ruby.c (process_sflag): replace '-' in variable names with '_'.
34536           [ruby-dev:26107]
34538         * eval.c (rb_eval), parse.y (arg): reduce fixnum range literal at
34539           parser.  fixed: [ruby-dev:26113]
34541 Sat Apr 30 11:59:25 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34543         * configure.in (RUBY_FUNC_ATTRIBUTE): check for function attribute.
34544           [ruby-dev:26109]
34546         * eval.c, gc.c: moved noinline to configure.in.
34548         * rubyio.h (DEPRECATED): moved to configure.in.
34550         * ruby.h (DEPRECATED, NOINLINE): default definition.
34552         * win{32,ce}/Makefile.sub (config.h): deprecated and noinline for
34553           __declspec() are available for VC++7 or later.
34555 Sat Apr 30 06:57:39 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34557         * lib/webrick/cgi.rb: new methods WEBrick::CGI#[], WEBrick::CGI#logger
34558           and WEBrick::CGI#config.  these are necessary to use an instance of
34559           WEBrick::CGI as the first argument of HTTPServlet#get_instance.
34560           (suggested by Tatsuki Sugiura)
34562         * lib/webrick/cgi.rb
34563           (WEBrick::CGI#initalize): set a dummy to @config[:ServerSoftware]
34564           if SERVER_SOFTWARE environment variable is not given.
34565           (WEBrick::CGI#start): req.path_info must be a String.
34566           (WEBrick::CGI::Socket#request_line): treat REQUEST_METHOD, PATH_INFO
34567           and SCRIPT_NAME to run in console.
34569         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape_path): should
34570           not use String#split("/"). it removes trailing empty path component.
34572 Thu Apr 28 08:21:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34574         * ruby.c (set_arg0): use also environment variable space for setting
34575           $0.  [ruby-core:04774]
34577 Wed Apr 27 23:42:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34579         * win32/Makefile.sub (OPTFLAGS): default global optimization to
34580           disabled only for VC++6.
34582 Tue Apr 26 22:58:00 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34584         * ext/tk/tcltklib.c (ip_invoke_core): call Tcl's "::unknown"
34585           command when can't get information of target command.
34587 Mon Apr 25 13:54:55 2005  speakillof  <speakillof@yahoo.co.jp>
34589         * lib/rexml/encodings/SHIFT-JIS.rb: encoding and decoding were
34590           swapped. [ruby-core:4772]
34592 Mon Apr 25 01:18:43 2005  Tanaka Akira  <akr@m17n.org>
34594         * oniguruma.h (OnigWarnFunc): add a variadic argument.
34595           [ruby-core:4751]
34597 Sat Apr 23 19:49:21 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34599         * ext/tk/tcltklib.c (ip_RubyExitCommand): exit with status code
34600           via TclTkIp#_eval didn't work. [ruby-talk:139390]
34602 Sat Apr 23 11:45:29 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34604         * eval.c (rb_provided): should check also path name to be loaded.
34605           fixed: [ruby-dev:26093]
34607 Fri Apr 22 16:55:35 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34609         * ext/tk/tcltklib.c (ip_set_exc_message): fixed memory leak.
34611         * ext/tk/tcltklib.c: eTkCallbackReturn was not initialized.
34613 Thu Apr 21 06:45:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34615         * ruby.c (ruby_incpush_expand, proc_options): expand relative path
34616           given with -I option.  [ruby-dev:26090]
34618         * configure.in, lib/mkmf.rb, {bcc32,win32,wince}/Makefile.sub: improve
34619           C++ support.  [ruby-dev:26089]
34621 Thu Apr 21 01:53:09 2005  Minero Aoki  <aamine@loveruby.net>
34623         * lib/net/http.rb: add rdoc.
34625 Thu Apr 21 00:07:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34627         * lib/mkmf.rb (create_makefile): support platforms have file separator
34628           other than /.
34630         * {bcc32,win32,wince}/Makefile.sub (BUILD_FILE_SEPARATOR): separator
34631           of building platform.
34633         * {bcc32,win32,wince}/Makefile.sub (CP, INSTALL): use COPY command.
34635 Wed Apr 20 23:22:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34637         * Makefile.in, common.mk: miniruby depends on MINIOBJS.
34639         * dmydln.c (dln_load): dummy function to raise LoadError.
34641         * cygwin/GNUmakefile.in, {bcc32,win32,wince}/Makefile.sub: miniruby
34642           can't load extensions on Windows.
34644 Wed Apr 20 23:01:35 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34646         * win32/ifchange.bat: delete testing files.
34648 Wed Apr 20 22:54:54 2005  Minero Aoki  <aamine@loveruby.net>
34650         * lib/net/http.rb: new method Net::HTTP.post_form.
34652         * lib/net/http.rb: new method Net::HTTPHeader#set_form_data and
34653           its alias #form_data=.
34655         * lib/net/http.rb: Net::HTTPHeader#add_header -> add_field
34656           (adjustted to Ruby 1.8).
34658 Wed Apr 20 10:53:30 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34660         * lib/rdoc/parsers/parse_rb.rb (lex_init): use IRB module.
34661           [ruby-core:04737]
34663 Wed Apr 20 07:27:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34665         * {bcc32,win32,wince}/configure.bat, {bcc32,win32,wince}/setup.mak:
34666           add extout option.
34668         * bcc32/setup.mak: make configuration variables overridable.
34670 Tue Apr 19 23:37:09 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34672         * lib/ftools.rb (File.safe_unlink): do not modify a symlinked file.
34674 Tue Apr 19 23:02:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34676         * eval.c (search_required): deal with features with path too.
34678         * intern.h (rb_file_expand_path): prototype.  fixed: [ruby-dev:26082]
34680 Tue Apr 19 08:38:07 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34682         * eval.c (search_required, rb_require_safe): expand path in
34683           rb_features.  [ruby-dev:26079]
34685         * file.c (rb_find_file_ext): return absolute path.
34687         * ext/extmk.rb: expand path for ext/**/extconf.rb.
34689         * eval.c (search_required): handle static linked extensions.
34691 Mon Apr 18 15:37:35 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
34693         * eval.c (rb_attr): attribute name check added.
34695         * numeric.c (flo_plus): small typo fix.
34697 Mon Apr 18 11:25:14 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34699         * ext/zlib/zlib.c (zstream_run): fixed SEGV. [ruby-core:4712]
34701 Sun Apr 17 23:57:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34703         * ext/extmk.rb (extmake, parse_args): do not expand destdir.
34705         * ext/extmk.rb (relative_from): treat mere drive letter as an absolute
34706           path.
34708 Sat Apr 16 17:01:16 2005  Kouhei Sutou  <kou@cozmixng.org>
34710         * sample/rss/tdiary_plugin/rss-recent.rb (rss_recent_cache_rss):
34711           use the first date information of items as site date information
34712           if channel doesn't have date information.
34714 Sat Apr 16 15:27:03 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34716         * configure.in (RUBY_PROG_INSTALL): not add -p option to INSTALL.
34717           files need timestamps to be kept are only ar-archive on a few
34718           platforms, and be installed by instruby.rb but not INSTALL.
34719           fixed: [ruby-core:04721]
34721         * mkconfig.rb: purge autoconf value variables.
34723 Sat Apr 16 10:33:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34725         * bcc32/Makefile.sub: quick hack... prepend DESTDIR.
34726           still have restriction on DESTDIR ("", "/", "e:")
34728 Sat Apr 16 03:59:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
34730         * ext/openssl/extconf.rb: check for OPENSSL_cleanse.
34732         * ext/openssl/openssl_missing.h: ditto.
34734 Fri Apr 15 22:40:19 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34736         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE.codepage=
34738         * ext/win32ole/tests/testOLETYPELIB.rb: correct expected message.
34740 Fri Apr 15 22:04:07 2005  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
34742         * ext/win32ole/win32ole.c(ole_invoke): retry after converting Qnil
34743           to VT_EMPTY.
34745 Thu Apr 14 19:05:06 2005  Minero Aoki  <aamine@loveruby.net>
34747         * parse.y [ripper] (regexp): dispatch regexp option.
34748           [ruby-Bugs:1688]
34750         * ext/ripper/lib/core.rb: regenerated (interface changed).
34752 Thu Apr 14 18:59:43 2005  Minero Aoki  <aamine@loveruby.net>
34754         * lib/fileutils.rb (remove_file): ignore exceptions caused by
34755           chmod.
34757         * lib/fileutils.rb (remove_dir): try to get rights to rmdir.
34758           [ruby-Bugs:1502]
34760 Thu Apr 14 18:51:02 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34762         * lib/irb/ruby-lex.rb, lib/irb/slex.rb: bug fix of [ruby-Bugs-1745]
34764         * lib/irb/ext/loader.rb, lib/irb/ext/save-history.rb:
34765           fix location of @RCS_ID
34767         * lib/irb/cmd/help.rb: a lost of release IRB 0.9.5.
34769 Thu Apr 14 15:10:30 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34771         * lib/irb/notifier.rb, lib/irb/output-method.rb, lib/irb/ext/history.rb
34772           fixed warning of 'ruby -w'
34774 Thu Apr 14 05:35:45 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34776         * doc/irb/irb.rd.ja: a lost  of release IRB 0.9.5.
34778         * lib/irb/slex.rb: bug fix by [ruby-core:04707].
34780 Thu Apr 14 00:20:31 2005  Keiju Ishitsuka  <keiju@ruby-lang.org>
34782         * bin/irb lib/irb.rb lib/irb/...: IRB 0.9.5.
34784 Wed Apr 13 23:40:21 2005  Kouhei Sutou  <kou@cozmixng.org>
34786         * lib/rss/rss.rb (RSS::VERSION): 0.1.3 -> 0.1.4.
34788         * lib/rss/rss.rb (RSS::Element#converter): fixed converter
34789           transmission bug.
34791 Wed Apr 13 22:12:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34793         * lib/optparse.rb (OptionParser#order!): call handlers iff matches
34794           non-switch.
34796 Wed Apr 13 21:20:35 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34798         * configure.in (mingw32): extract msvcr*.dll from objdump result.
34800 Wed Apr 13 19:25:31 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34802         * configure.in (mingw32): use actual runtime DLL name as ruby DLL
34803           name and default load path.
34805         * win32/Makefile.sub, win32/setup.mak: ditto.
34807 Tue Apr 12 19:30:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34809         * lib/optparse.rb (OptionParser#make_switch, OptionParser#order!):
34810           added non-option and end-of-args handler.  [ruby-talk:136878]
34811           [EXPERIMENTAL]
34813 Tue Apr 12 15:33:09 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34815         * ext/tk/tcltklib.c (ip_finalize): better modification than the
34816           previous commit [ruby-dev:26029].
34818 Tue Apr 12 12:38:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34820         * ext/tk/tcltklib.c (ip_finalize): fix SEGV when Tcl_GlobalEval()
34821           modifies the argument string to eval.
34823 Tue Apr 12 02:21:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34825         * ext/tk/tcltklib.c (ip_finalize): add existence check of
34826           Tcl commands before calling Tcl_GlobalEval().
34828 Mon Apr 11 23:36:04 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
34830         * lib/drb/drb.rb: [druby-ja:123] fix: When reference of my object is
34831           loaded, the object is tainted.
34833         * test/drb/test_drb.rb: ditto.
34835 Mon Apr 11 22:18:23 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
34837         * dir.c, file.c (lstat): avoid warnings for mingw.
34839 Mon Apr 11 20:11:06 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34841         * ext/tk/tcltklib.c (ip_finalize): adhoc patch to avoid SEGV when exit
34842           on Tcl/Tk8.3.x.
34844 Mon Apr 11 15:24:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
34846         * lib/mkmf.rb (configuration): shouldn't output hdrdir twice.
34848 Sat Apr  9 18:20:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34850         * ext/tk/lib/tk/image.rb: support to create TkImage object without
34851           creating a new image object on Tk.
34853         * ext/tk/lib/tk/menu.rb: use TkCommandNames on create_self()
34855         * ext/tk/lib/tk/root.rb: TkRoot.to_eval() returns '.'.
34857         * ext/tk/lib/tk/text.rb: add methods to create a TkText::IndexString
34858           from (x, y) coords.
34860         * ext/tk/lib/tkextlib/tile/: add demo and update support status.
34862 Sat Apr  9 14:42:29 2005  Kouhei Sutou  <kou@cozmixng.org>
34864         * sample/rss/tdiary_plugin/rss-recent.rb: supported configuration
34865           via Web browser.
34867 Fri Apr  8 20:17:48 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34869         * ext/extmk.rb (extmake): hdrdir needs to be defined also in
34870           Config::CONFIG.
34872         * lib/mkmf.rb (configuration, create_makefile): get rid of recursive
34873           macro reference.
34875 Fri Apr  8 01:55:20 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34877         * ext/tk/sample/demos-{en,jp}/goldberg.rb: reduced window size.
34878           [ruby-dev:25992]
34880 Thu Apr  7 23:58:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34882         * ext/extmk.rb (extmake): keep directory names in Makefile as macros.
34884         * lib/mkmf.rb (configuration, create_makefile): ditto.
34886         * lib/mkmf.rb (CXX_EXT): separate C++ extensions.
34888 Thu Apr  7 17:24:17 2005  Shugo Maeda  <shugo@ruby-lang.org>
34890         * eval.c (rb_call0): "return" event hook should be always executed
34891           if event_hooks is set.
34893 Thu Apr  7 14:33:09 2005  Kouhei Sutou  <kou@cozmixng.org>
34895         * test/rss/test_maker_dc.rb (test_date): added a test for #date=
34896           and #dc_date=.
34898 Thu Apr  7 11:49:53 2005  Kouhei Sutou  <kou@cozmixng.org>
34900         * lib/rss/maker/dublincore.rb: _really_ supported multiple Dublin
34901           Core items.
34903         * test/rss/rss-assertions.rb (assert_multiple_dublin_core): added
34904           an assertion for testing multiple Dublin Core items.
34906         * test/rss/test_maker_dc.rb (test_rss10_multiple): added a test
34907           for making multiple Dublin Core items.
34909 Wed Apr  6 16:06:30 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34911         * test/ruby/test_env.rb (test_key): should test ENV.key instead of
34912           ENV.index. [ruby-dev:25994]
34914 Tue Apr  5 16:01:12 2005  Kouhei Sutou  <kou@cozmixng.org>
34916         * lib/rss/*: refactored.
34917           - gave a name to 'x'.
34918           - undef_method -> remove_method for avoiding a warning in ruby 1.6.
34920 Tue Apr  5 15:45:33 2005  Kouhei Sutou  <kou@cozmixng.org>
34922         * sample/rss/tdiary_plugin/rss-recent.rb:
34923           new option: @options['rss-recent.use-image-link']:
34924           use image as link instread of text if available.
34926         * sample/rss/tdiary_plugin/rss-recent.rb (RSS_RECENT_VERSION):
34927           0.0.5 -> 0.0.6.
34929 Tue Apr  5 15:15:26 2005  Kouhei Sutou  <kou@cozmixng.org>
34931         * lib/rss/dublincore.rb: supported multiple Dublin Core items.
34933         * lib/rss/parser.rb: added class name registry for complex model
34934           elements. (ex. have childlen elements, have some attributes and
34935           a child element and so on.)
34937         * lib/rss/maker/base.rb: added default current_element implementation.
34939         * lib/rss/maker/dublincore.rb: supported multiple Dublin Core
34940           items.
34942         * lib/rss/maker/image.rb: supproted new Dublin Core API.
34945         * lib/rss/trackback.rb (RSS::TrackBackUtils.new_with_value_if_need):
34946           moved to RSS::Utils.
34948         * lib/rss/utils.rb (RSS::Utils.new_with_value_if_need):
34949           moved from RSS::TrackBackUtils.
34952         * lib/rss/maker/image.rb: fixed invalid argument of
34953           add_need_initialize_variable bug.
34955         * lib/rss/maker/trackback.rb: ditto.
34958         * lib/rss/rss.rb (Hash#merge): added for ruby 1.6.
34960         * lib/rss/rss.rb (RSS::BaseModel.date_writer): changed to accept nil
34961           for date value.
34964         * test/test_dublincore.rb: added tests for plural accessor and
34965           multiple Dublin Core items.
34967         * test/test_setup_maker_1.0.rb: fixed swapped actual and expected
34968           values.
34970 Mon Apr  4 23:17:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34972         * ext/tk/lib/tk.rb (TkComm#array2tk_list): accept enc-mode argument to
34973           decide whether convert encoding of each element or not.
34975         * ext/tk/lib/tk/variable.rb (TkVariable#value=): fail to convert the
34976           encoding of array elements when assign an array to an TkVariable
34977           object.
34979 Mon Apr  4 10:26:48 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
34981         * ext/tk/lib/tk/dialog.rb: fixed typo.
34983 Sat Apr  2 23:38:54 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
34985         * configure.in (CP, INSTALL): get rid of less portable options.
34987         * lib/mkmf.rb (configuration, create_makefile): correct configuration
34988           variable.
34990         * wince/configure.bat, wince/setup.mak: add prefix, extstatic and
34991           rdoc options.
34993         * lib/mkmf.rb (create_makefile): ensure library directories get made
34994           before copying libraries there.
34996 Sat Apr  2 16:59:46 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
34998         * ext/tk/lib/tk.rb: forgot to update RELEASE_DATE
35000         * ext/tk/lib/tk/variable.rb: fix namespace trouble when autoloading
35002         * ext/tk/lib/tk/palette.rb: define Tcl variable 'tkPalette' as global
35004         * ext/tk/lib/tk/dialog.rb: use array2tk_list method when calling
35005           Tk.ip_eval.
35007         * ext/tk/lib/tk/autoload.rb: add autoload entry 'TkDialogObj' and
35008           'TkWarningObj'
35010 Sat Apr  2 13:23:17 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35012         * hash.c (env_key): ENV.index is deprecated as well as Hash#index.
35013           use ENV.key instead. [ruby-dev:25974]
35015 Sat Apr  2 02:19:11 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35017         * ext/tk/lib/tk.rb (TkWindow.initialize): accept 'without_creating'
35018           option without 'widgetname' option to allow creating a widget object
35019           which is used as an argument of Tcl/Tk's widget allocation commands.
35021         * ext/tk/lib/tk/image.rb (TkImage.initialize): accept 'imagename'
35022           option to create a image object by the given name.
35024 Thu Mar 31 22:23:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35026         * lib/mkmf.rb (SRC_EXT): exclude just case different suffixes on case
35027           insensitive file system platforms.
35029         * README.EXT, README.EXT.ja (Appendix C): utility functions.
35031 Thu Mar 31 14:08:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35033         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should return
35034           value. [ruby-dev:25971]
35036 Thu Mar 31 11:07:50 2005  Kouhei Sutou  <kou@cozmixng.org>
35038         * lib/rss/parser.rb: @@setter -> @@setters.
35040         * lib/rss/parser.rb
35041           (RSS::BaseListener.register_uri)
35042           (RSS::BaseListener.uri_registered?)
35043           (RSS::BaseListener.install_get_text_element):
35044           swapped the first argument and the second argument.
35046         * lib/rss/taxonomy.rb: swapped the first argument and the second
35047           argument for RSS::BaseListener.install_get_text_element.
35048         * lib/rss/image.rb: ditto.
35049         * lib/rss/syndication.rb: ditto.
35050         * lib/rss/dublincore.rb: ditto.
35051         * lib/rss/parser.rb: ditto.
35052         * lib/rss/1.0.rb: ditto.
35053         * lib/rss/2.0.rb: ditto.
35054         * lib/rss/0.9.rb: ditto.
35055         * lib/rss/content.rb: ditto.
35057 Thu Mar 31 11:00:36 2005  Kouhei Sutou  <kou@cozmixng.org>
35059         * lib/rss/parser.rb
35060           (RSS::BaseListener.install_setter)
35061           (RSS::BaseListener.register_uri): changed fallback way.
35063 Thu Mar 31 08:25:40 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35065         * common.mk (RUBYOPT): clear for the environment RubyGems installed.
35067         * common.mk (clean-local): keep $(PREP) files till distclean.
35069         * common.mk (check): do all tests.
35071 Thu Mar 31 06:00:20 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35073         * ext/openssl/ossl_engine.c (ossl_engine_s_load): should not raise
35074           error even if the specified engine could not be loaded. (Dynamic
35075           engines don't have fixed name to load.)
35077 Wed Mar 30 17:41:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35079         * ext/tk/tcltklib.c: add TclTkIp#_create_console() method to create
35080           a Tcl/Tk's console window.
35082         * ext/tk/lib/multi-tk.rb: support TclTkIp#_create_console() method.
35084         * ext/tk/lib/remote-tk.rb: ditto.
35086         * ext/tk/lib/tk/console.rb: ditto.
35088         * ext/tk/lib/tk.rb: update RELEASE_DATE
35090         * ext/tk/sample/demo-*/check2.rb: use 'return' in the Proc object.
35092         * ext/tk/sample/tkextlib/**: ditto.
35094 Tue Mar 29 22:20:49 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35096         * test/rinda/test_rinda.rb: use DRbObject.new_with instead of reinit.
35097           [ruby-dev:25961]
35099 Tue Mar 29 00:04:57 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35101         * lib/drb/drb.rb: move method DRbObject#reinit to DRbObject.new_with.
35102           extract method DRbObject.prepare_backtrace. add DRb.regist_server,
35103           remove_server, fetch_server. change server in thread variable if
35104           in-proc server. [druby-ja:113]
35106         * lib/drb/gw.rb: ditto.
35108 Mon Mar 28 20:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35110         * ext/extmk.rb (extract_makefile): nothing to be removed when no file
35111           was deleted.
35113         * ext/extmk.rb (extmake): restore srcdir.
35115 Mon Mar 28 08:39:49 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35117         * ext/iconv/iconv.c (iconv_create): Iconv::Failure requires 3
35118           arguments.  (pointed out by NaHi)
35120 Sun Mar 27 00:56:58 2005  Minero Aoki  <aamine@loveruby.net>
35122         * lib/fileutils.rb (remove_file): ignore Errno::E* if force option
35123           is set. [ruby-dev:25944]
35125 Sat Mar 26 22:51:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35127         * ext/tk/lib/tk.rb (_callback_entry_class?): add for checking whether
35128           a class is available for a callback entry.
35130         * ext/tk/lib/tk.rb (after_cancel): add Tk.after_cancel(afterID) method.
35132         * ext/tk/lib/tk.rb (array2tk_list): change from private module method
35133           of TkComm to public module method.
35135         * ext/tk/lib/tk.rb (cget): add check that slot argument is not
35136           empty string.
35138         * ext/tk/lib/tk.rb (configinfo): ditto.
35140         * ext/tk/lib/tk/itemconfig.rb (itemcget): add check that slot argument
35141           is not empty string.
35143         * ext/tk/lib/tk/itemconfig.rb (itemconfiginfo): ditto.
35145         * ext/tk/lib/tk/entry.rb: add TkEntry#icursor and icursor= (alias of
35146           cursor and cursor= method).
35148         * ext/tk/lib/tk/font.rb: improve font treatment when the font name is
35149           empty string.
35151         * ext/tk/lib/tk/variable.rb: add :variable, :window and :procedure
35152           type.
35154         * ext/tk/lib/tk/variable.rb: improve treatment of array-type
35155           tkvariable.
35157         * ext/tk/lib/tkextlib/blt.rb: add commands for zooming.
35159         * ext/tk/lib/tkextlib/blt/*: bug fix.
35161         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and add methods
35162           to call TreeCtrl commands for bindings.
35164         * ext/tk/sample/tkextlib/blt/*: new sample scripts.
35166         * ext/tk/sample/tkextlib/treectrl/*: ditto.
35168 Fri Mar 25 10:53:16 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
35170         * configure.in (WIN32_LEAN_AND_MEAN): removed because a lot of
35171           troubles.  [ruby-list:40721]
35173 Thu Mar 24 23:10:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35175         * lib/mkmf.rb (macro_defined?): try to compile for an old compiler
35176           which doesn't bail out at #error directive.  [ruby-dev:25818]
35178         * lib/mkmf.rb (check_sizeof): refine logging messages.
35180 Wed Mar 23 19:08:10 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35182         * lib/webrick/utils.rb (WEBrick::Utils.create_listeners):
35183           - should raise ArgumentError if no port is specified.
35184           - even if the specified port is 0, all TCPServers should be
35185             initialized with the port given to the first one.
35187         * lib/webrick/server.rb (WEBrick::GenericServer#initialize): if :Port
35188           parameter is 0, it should be updated with the port number which
35189           ectually listened.
35191 Wed Mar 23 16:12:40 2005  Shugo Maeda  <shugo@ruby-lang.org>
35193         * parse.y (primary): fix lineno of rescue and ensure.
35195 Wed Mar 23 00:39:05 2005  Shugo Maeda  <shugo@ruby-lang.org>
35197         * test/ruby/test_settracefunc.rb (test_event): added tests for
35198           "class" and "end" and "raise".
35200 Sun Mar 20 22:51:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35202         * lib/mkmf.rb (mkmf_failed): check if Makefile is created without
35203           create_makefile.
35205 Sat Mar 19 23:48:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35207         * misc/ruby-mode.el (ruby-expr-beg): returned true always.
35208           fixed: [ruby-list:40683]
35210 Sat Mar 19 00:41:02 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35212         * ext/tk/lib/tk/font.rb: add some TkFont class methods to get font
35213           information without creating a TkFont object.
35215         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: bug fix and define some
35216           classes for components of Tk::TreeCtrl
35218 Thu Mar 17 17:42:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35220         * struct.c (make_struct): allow non local-id field
35221           names. [ruby-core:04575]
35223         * struct.c (inspect_struct): ditto.
35225 Wed Mar 16 23:39:13 2005  Shugo Maeda  <shugo@ruby-lang.org>
35227         * test/ruby/test_settracefunc.rb: added test for c-return.
35229 Wed Mar 16 22:57:43 2005  Shugo Maeda  <shugo@ruby-lang.org>
35231         * eval.c (rb_call0): call_cfunc() should be protected.
35233         * eval.c (rb_add_event_hook): use K&R style.
35235         * eval.c (rb_remove_event_hook): ditto.
35237 Wed Mar 16 22:03:15 2005  Shugo Maeda  <shugo@ruby-lang.org>
35239         * eval.c (rb_add_event_hook): new function to add a hook function for
35240           interpreter events.
35242 Wed Mar 16 18:08:32 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35244         * eval.c (rb_call0): reorganize "return" event post.
35246         * eval.c (return_jump): no need to post "return" event here.
35248 Tue Mar 15 23:49:19 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35250         * ext/iconv/iconv.c (Init_iconv): InvalidEncoding also should include
35251           Iconv::Failure.
35253 Tue Mar 15 23:12:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35255         * eval.c (recursive_check, recursive_push): more restrictive check.
35256           fixed: [ruby-dev:25916]
35258 Tue Mar 15 16:38:31 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35260         * ext/tk/tkutil/tkutil.c (ary2list): give wrong arguments to hash2kv()
35262 Mon Mar 14 19:39:33 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35264         * ext/tk/lib/tk/timer.rb (TkTimer): forgot to clear @return_value
35265           when restarting
35267         * ext/tk/lib/tk/sample/cd_timer.rb: new sample of TkRTTimer
35269 Mon Mar 14 12:21:03 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35271         * ext/tk/lib/tk/timer.rb (TkRTTimer): forgot to reset the callback
35272           time. So, 'continue' do all callbacks between 'stop' and 'continue'.
35274 Mon Mar 14 08:14:56 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35276         * object.c (str_to_id): raise ArgumentError for NUL containing
35277           strings.
35279 Mon Mar 14 00:13:49 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35281         * ext/tk/lib/tk/timer.rb (TkRTTimer): correct calculation of offset
35282           value. get a little better accuracy.
35284         * ext/tk/sample/demos-en/widget: use a binding with no local variables
35285           when eval a sample script.
35287         * ext/tk/sample/demos-en/bind.rb: ditto.
35289         * ext/tk/sample/demos-en/tcolor: ditto.
35291         * ext/tk/sample/demos-jp/widget: ditto.
35293         * ext/tk/sample/demos-jp/bind.rb: ditto.
35295         * ext/tk/sample/demos-jp/tcolor: ditto.
35297 Sun Mar 13 22:19:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35299         * eval.c (recursive_pop): raise TypeError instead of fatal error.
35300           fixed: [ruby-dev:25843]
35302 Sun Mar 13 10:09:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35304         * test/rinda/test_rinda.rb: remove test_gc. [ruby-dev:25871]
35306 Sun Mar 13 02:32:54 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35308         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): should get DH
35309           parameter from the current SSL object.
35311 Sun Mar 13 02:09:03 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35313         * ext/openssl/ossl_pkey_dh.c (ossl_create_dh): fix typo.
35314           patch from IWATSUKI Hiroyuki. [ruby-dev:25867]
35316         * ext/openssl/ossl_ssl.c (ossl_tmp_dh_callback): ditto.
35317           (ossl_call_tmp_dh_callback): ditto
35319 Fri Mar 11 03:24:59 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35321         * parse.y (primary): wrong var node was set for NODE_LAMBDA.
35322           [ruby-core:04555]
35324 Thu Mar 10 19:10:29 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35326         * ext/tk/tcltklib.c (lib_eventloop_ensure): mis-delete a timer handler
35327           when exit from a recursive called eventloop
35329         * ext/tk/lib/tk/timer.rb: new TkRTTimer class, which can works for a
35330           realtime operation
35332         * ext/tk/sample/tkrttimer.rb: sample of TkRTTimer class
35334         * ext/tk/lib/tk/textmark.rb: move  TkTextMark#+ and TkTextMark#- to
35335           TkText::IndexModMethods
35337         * ext/tk/lib/tk/text.rb: improve TkTextMark#+ and TkTextMark#-, and
35338           add them to TkText::IndexModMethods module
35340         * ext/tk/sample/tktextio.rb: add test part of "seek by text index
35341           modifiers"
35343 Thu Mar 10 08:10:11 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35345         * re.c (make_regexp): need to free internal regexp structure when
35346           compilation fails.  [ruby-talk:133228]
35348 Thu Mar 10 01:08:20 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35350         * parse.y (bv_decl): remove initialize rule from block local
35351           variable declaration.
35353 Wed Mar  9 23:55:34 2005  Tanaka Akira  <akr@m17n.org>
35355         * lib/pp.rb (PP::PPMethods#guard_inspect_key): support
35356           __recursive_key__.  [ruby-dev:25821]
35358 Wed Mar  9 19:42:21 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35360         * ext/openssl/ossl_ssl.c: OpenSSL::SSL::SSLContexts suports callbacks:
35361           - SSLContext#client_cert_cb is a Proc. it is called when a client
35362             certificate is requested by a server and no certificate was yet
35363             set for the SSLContext. it must return an Array which includes
35364             OpenSSL::X509::Certificate and OpenSSL::PKey::RSA/DSA objects.
35365           - SSLContext#tmp_dh_callback is called in key exchange with DH
35366             algorithm. it must return an OpenSSL::PKey::DH object.
35368         * ext/openssl/ossl_ssl.c:
35369           (ossl_sslctx_set_ciphers): ignore the argument if it's nil.
35370           (ossl_start_ssl, ossl_ssl_write): call rb_sys_fail if errno isn't 0.
35371           [ruby-dev:25831]
35373         * ext/openssl/ossl_pkey.c
35374           (GetPrivPKeyPtr, ossl_pkey_sign): should call rb_funcall first.
35375           (DupPrivPKeyPtr): new function.
35377         * ext/openssl/ossl_pkey_dh.c: add default DH parameters.
35379         * ext/openssl/ossl_pkey.h: ditto.
35381         * ext/openssl/lib/openssl/cipher.rb: fix typo. [ruby-dev:24285]
35383 Wed Mar  9 18:09:51 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35385         * parse.y (gettable_gen): warns if VCALL name is used as
35386           out-of-scope block local variable.  [EXPERIMENTAL]
35388         * parse.y (opt_bv_decl): add explicit block local variable
35389           declaration.  raises error for name conflicts.  [EXPERIMENTAL]
35391 Wed Mar  9 13:37:57 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35393         * ext/tk/sample/tktextio.rb: fix bug of handling 'end' position.
35394           support initial text, overwrite setting and pos_gravity control.
35396 Tue Mar  8 18:16:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35398         * ext/tk/sample/tktextio.rb: New sample script. TkTextIO class in this
35399           sample supports to use a text widget as if it is a I/O stream (such
35400           like as StringIO class).
35402 Tue Mar  8 13:39:25 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35404         * ext/socket/mkconstants.rb: workaround for some of 4.4BSD-Lite
35405           derived OSs.
35407 Tue Mar  8 12:36:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35409         * ext/socket/socket.c: document from Sam Roberts
35410           <sroberts@uniserve.com> for getsockopt and setsockopt is merged.
35411           [ruby-doc:824]
35413 Tue Mar  8 10:48:53 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35415         * eval.c (rb_exec_recursive): declaration should precede statements
35416           before C99.
35418 Tue Mar  8 10:05:40 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35420         * error.c (errno_missing): Errno.const_missing to allow references
35421           to SyscallError exceptions not defined on the platform.
35422           [ruby-core:04522]
35424         * error.c (Init_syserr): Errno::NOERROR(0) for fallback exception.
35426 Tue Mar  8 01:19:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35428         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.66
35429           fixed: [ruby-dev:25828]
35431 Mon Mar  7 21:29:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35433         * lib/webrick/server.rb (WEBrick::GenericServer#start): should
35434           restore @token if accept failure. suggested by Dominique Brezinski.
35435           [ruby-core:04518]
35437         * sample/webrick/httpsd.rb: fix typo in comment. suggested by
35438           Kazuhiko Shiozaki.
35440 Mon Mar  7 21:01:37 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35442         * eval.c (rb_require_safe): get actual path string under safe level
35443           when requested.  fixed: [ruby-dev:25815]
35445 Mon Mar  7 16:46:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35447         * ext/openssl/ossl_ssl.c (ossl_start_ssl, ossl_ssl_read,
35448           ossl_ssl_write): need to set errno on Win32 platform.
35450 Mon Mar  7 14:55:43 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35452         * eval.c (block_pass): should not push unique number if a block is
35453           not an orphan.  [ruby-dev:25808]
35455 Mon Mar  7 14:13:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35457         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
35458           should set @eof and @rbuffer.
35460 Mon Mar  7 10:28:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35462         * object.c (inspect_obj): unintended space removal.
35463           [ruby-dev:25810]
35465         * eval.c (rb_exec_recursive): should not use NODE in disclosed
35466           context.  [ruby-dev:25812]
35468         * io.c (rb_f_open): need not to check if to_open value is a
35469           T_FILE.  [ruby-dev:25812]
35471 Mon Mar  7 01:21:01 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35473         * ext/tk/tkutil/tkutil.c: follow the change of st.c (committed
35474           at Fri, 4 Mar 2005 15:47:47 +0900 by matz)
35476 Mon Mar  7 00:01:55 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35478         * ext/tk/tcltklib.c: fail to call TclTkLib.mainloop when $SAFE==4
35480 Sun Mar  6 13:04:10 2005  Dee Zsombor  <zsombor@ruby-lang.org>
35482         * misc/ruby-electric.el: added.
35483         * misc/Readme: updated.
35485 Sun Mar  6 11:47:10 2005  Sam Roberts  <sroberts@uniserve.com>
35487         * lib/pp.rb: rdoced.  [ruby-core:4490]
35489 Sun Mar  6 11:36:37 2005  Tanaka Akira  <akr@m17n.org>
35491         * lib/pp.rb (File::Stat#pretty_print): Etc.getpwuid and Etc.getgrgid
35492           may return nil.  [ruby-talk:129826]
35493           reported by Daniel Berger.
35495 Sun Mar  6 06:34:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35497         * ext/openssl/ossl_ssl.c (ossl_start_ssl): should wait for that
35498           the underlying IO become readable or writable if the error was
35499           SSL_ERROR_WANT_READ or SSL_ERROR_WANT_WRITE. [ruby-dev:25795]
35501         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): ditto.
35503         * ext/openssl/lib/openssl/buffering.rb
35504           (Buffering#consume_rbuf): pointless eof flag resetting is deleted.
35505           (Buffering#read): should return an empty string if the specified
35506           size is zero.
35507           (Buffering#readpartial): new method.
35508           (Buffering#readline): fix typo.
35509           (Buffering#getc): return the first character of string correctly.
35510           (Buffering#readchar): fix typo.
35511           (Buffering#eof?): should read again it the input buffer is empty.
35512           (Buffering#do_write): should rescue Errno::EAGAIN.
35513           (Buffering#puts): use "\n" as the output field separator.
35515         * ext/openssl/extconf.rb: get rid of GNUmakefile generation.
35517         * text/openssl/test_pair.rb: test for IO like methods.
35519         * test/ruby/ut_eof.rb: test about empty file.
35521 Sat Mar  5 17:48:31 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35523         * dir.c (rb_glob): fixed mismatch of argument.
35525         * dir.c (fnmatch): removed unnecessary code. (by string.c 1.219)
35527         * win32/win32.c (NtInitialize): ditto. (by numeric.c 1.117)
35529 Sat Mar  5 16:50:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35531         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.65
35533 Sat Mar  5 16:29:26 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35535         * ext/tk/lib/multi-tk.rb: freeze callback-entry objects
35537         * ext/tk/lib/tkextlib/tile.rb: support tile-0.6
35539 Sat Mar  5 12:52:08 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35541         * lib/mkmf.rb (create_makefile): allow putting spaces between target
35542           and colon in depend file.
35544 Sat Mar  5 02:41:00 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35546         * file.c (eaccess): workaround for VC++8 runtime.
35548         * win32/win32.c (ioinfo): VC++8 support.
35550 Fri Mar  4 19:39:55 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35552         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser#do_includes): replace
35553           also locally defined modules.
35555         * ext/iconv/iconv.c: rdocified.
35557         * ext/strscan/strscan.c: moved misplaced rdoc.
35559 Fri Mar  4 16:11:20 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35561         * eval.c (rb_exec_recursive): matched the declaration to prototype.
35563         * ext/curses/curses.c: don't need to check HAVE_WCOLOR_SET excluding
35564           window_color_set().
35566         * ext/tk/tcltklib.c: fixed commit mistakes.
35568 Fri Mar  4 12:45:17 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
35570         * lib/rdoc/parsers/parse_c.rb: allow whitespace after function names.
35571           [ruby-core:4296]
35573         * lib/rdoc/parsers/parse_simple.rb: adds support for private comments
35574           in the "simple" parser. [ruby-core:4301]
35576 Fri Mar  4 12:45:17 2005  Charles Mills  <cmills@freeshell.org>
35578         * lib/rdoc/parsers/parse_c.rb: adds support for constants
35579           (rb_define_const), accessors (rb_define_attr), and makes a
35580           couple fixes. [ruby-core:4307]
35582 Fri Mar  4 12:45:17 2005  Florian Gross  <florgro@gmail.com>
35584         * lib/rdoc/parsers/parse_rb.rb: Logic for def Builtin.method() end
35585           [ruby-core:4302]
35587 Fri Mar  4 12:45:17 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35589         * array.c: replace rb_protect_inspect() and rb_inspecting_p() by
35590           rb_exec_recursive() in eval.c.
35592         * eval.c (rb_exec_recursive): new function.
35594         * array.c (rb_ary_join): use rb_exec_recursive().
35596         * array.c (rb_ary_inspect, rb_ary_hash): ditto.
35598         * file.c (rb_file_join): ditto.
35600         * hash.c (rb_hash_inspect, rb_hash_to_s, rb_hash_hash): ditto.
35602         * io.c (rb_io_puts): ditto.
35604         * object.c (rb_obj_inspect): ditto
35606         * struct.c (rb_struct_inspect): ditto.
35608 Fri Mar  4 10:15:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35610         * lib/set.rb (SortedSet::setup): a hack to shut up warning.
35611           [ruby-talk:132866]
35613 Fri Mar  4 09:37:12 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
35615         * common.mk (install-nodoc, pre-install-doc, post-install-doc):
35616           fix some omissions.
35618 Fri Mar  4 08:09:12 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35620         * lib/time.rb (Time::strptime): add new function.  inspired by
35621           [ruby-talk:132815].
35623         * lib/parsedate.rb (ParseDate::strptime): ditto.
35625 Fri Mar  4 07:07:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35627         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.63
35629 Thu Mar  3 23:24:00 2005  NARUSE, Yui  <naruse@ruby-lang.org>
35631         * ext/nkf/nkf-utf8/nkf.c: follow nkf 1.62
35633 Thu Mar  3 18:47:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35635         * {bcc32,win32,wince}/Makefile.sub (config.h): check if affected
35636           when makefiles are modified.
35638         * {bcc32,win32,wince}/Makefile.sub (config.status): add variables
35639           for tests.
35641         * win32/ifchange.bat: try to update a file only if modified.
35643         * win32/resource.rb: more descriptions.
35645         * common.mk: add {pre,post}-install targets.
35647         * instruby.rb (install?): install particular part.
35649         * bcc32/Makefile.sub (post-install-ext): remove debug information
35650           files after installation.
35652         * ext/tk/tcltklib.c (ip_rbUpdateCommand, ip_rb_threadUpdateCommand):
35653           get rid of warnings with Tcl/Tk 8.3 or former.
35655 Thu Mar  3 11:49:51 2005  Kouhei Sutou  <kou@cozmixng.org>
35657         * sample/rss/tdiary_plugin/rss-recent.rb: added site information.
35659 Wed Mar  2 19:53:44 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35661         * ext/extmk.rb (parse_args): return false if nothing matched.
35663 Wed Mar  2 17:15:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35665         * ext/tk/tcltklib.c (lib_eventloop_core): fix typo
35667 Wed Mar  2 16:59:50 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35669         * eval.c (ruby_native_thread_kill): call pthread_kill() to send a
35670           signal to ruby's native thread
35672         * ruby.h: add definition of ruby_native_thread_kill()
35674         * signal.c (sigsend_to_ruby_thread): send the signal to ruby's
35675           native thread ([ruby-dev:25744], [ruby-dev:25754]), and set
35676           signal mask to the current native thread
35678 Wed Mar  2 16:03:08 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35680         * ext/tk/tcltklib.c: enforce thread-check and exception-handling to
35681           avoid SEGV trouble.
35683         * ext/tk/tkutil/tkutil.c; fix a bug on converting a SJIS string array
35684           to a Tcl's list string.
35686         * ext/tk/tcltklib.c: wrap Tcl's original "namespace" command to
35687           protect from namespace crash.
35689         * ext/tk/lib/multi-tk.rb: enforce exception-handling.
35691         * ext/tk/lib/multi-tk.rb: catch IRB_EXIT to work on irb.
35693         * ext/tk/lib/tk.rb: ditto.
35695         * ext/tk/tcltklib.c: add TclTkLib.mainloop_thread?
35697         * ext/tk/lib/multi-tk.rb: (bug fix) callback returns a value.
35699         * ext/tk/lib/tk/canvas.rb (delete): bug fix when multiple arguments.
35701         * ext/tk/lib/clock.rb: fix 'no method error'.
35703         * ext/tk/lib/clock.rb (self.clicks): accept a Symbol argument.
35705         * ext/tk/lib/variable.rb: be able to set default_value_type; :numeric,
35706           :bool, :string, :symbol, :list, :numlist or nil (default; same to
35707           :string). If set a type, TkVariable#value returns a value of the
35708           type.
35710         * ext/tk/lib/tkextlib/tclx/tclx.rb: add Tk::TclX.signal to warn the
35711           risk of using TclX extension's 'signal' command.
35713         * ext/tk/sample/irbtk.rb: irb with Ruby/Tk.
35715         * ext/tk/sample/demos-*/anilabel.rb: bug fix on 'show code'
35717         * ext/tk/sample/demos-*/aniwave.rb: new Ruby/Tk animation demo.
35719         * ext/tk/sample/demos-*/pendulum.rb: ditto.
35721         * ext/tk/sample/demos-*/goldberg.rb: ditto.
35723         * ext/tk/sample/demos-*/widget: add entries of animation demos.
35725 Wed Mar  2 12:21:18 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35727         * eval.c (rb_eval): [EXPERIMENTAL] NODE_LAMBDA implemented.
35728           [ruby-dev:25780]
35730         * node.h (NODE_LAMBDA): for literal Proc object.
35732         * parse.y (expr): interpret mere do...end block as proc object.
35734         * parse.y (primary): ditto, for brace block.
35736 Tue Mar  1 21:16:54 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35738         * regcomp.c (optimize_node_left): uninitialized member
35739           (OptEnv.backrefed_status) was used. [ruby-dev:25778]
35741 Tue Mar  1 16:50:37 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35743         * regparse.c: move st_*_strend() functions from st.c.  fixed some
35744           potential memory leaks.
35746 Tue Mar  1 00:40:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35748         * lib/rinda/tuplespace.rb (Rinda::TupleSpace): improved keeper thread.
35750         * test/rinda/test_rinda.rb: ditto.
35752 Mon Feb 28 23:10:13 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35754         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
35755           AF_INET6 is defined on bcc32. (rev1.108 again)
35757         * ext/socket/mkconstants.rb: ditto.
35759 Mon Feb 28 21:55:49 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35761         * ext/strscan/strscan.c (strscan_s_allocate):
35762           use onig_region_init().
35764         * ext/strscan/strscan.c (adjust_registers_to_matched):
35765           use onig_region_set().
35767 Mon Feb 28 15:12:06 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35769         * ext/socket/socket.c (Init_socket): ported more Socket::Constants
35770           from ruby_1_8, and made it easy to add new constants.
35771           [ruby-dev:25771]
35773         * ext/socket/depend: ditto.
35775         * ext/socket/mkconstants.rb: ditto. (added)
35777 Mon Feb 28 11:42:23 2005  Ian Macdonald  <ian@caliban.org>
35779         * exception error messages updated.  [ruby-core:04497]
35781 Mon Feb 28 09:03:09 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35783         * ext/socket/socket.c (Init_socket): add bunch of Socket
35784           constants.  Patch from Sam Roberts <sroberts@uniserve.com>.
35785           [ruby-core:04409]
35787 Sun Feb 27 05:55:38 2005  Minero Aoki  <aamine@loveruby.net>
35789         * parse.y [ripper]: fix typo. [ruby-core:04494]
35791 Sat Feb 26 16:58:20 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35793         * parse.y, re.c, regex.h, LEGAL, ext/strscan/strscan.c:
35794           remove oniggnu.h (GNU regex API).
35796 Wed Feb 23 22:08:16 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35798         * st.c, st.h: imported additional file changes on
35799           Oniguruma 3.7.0.
35801 Wed Feb 23 21:45:29 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35803         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
35804           regenc.c, regenc.h, regerror.c, regexec.c, regint.h,
35805           regparse.c, regparse.h, sjis.c, utf8.c: imported Oni Guruma
35806           3.7.0.
35808 Wed Feb 23 15:04:32 2005  akira yamada  <akira@ruby-lang.org>
35810         * lib/uri/generic.rb (split_userinfo): should split ":pass" into ""
35811           and "pass".  [ruby-dev:25667]
35813 Wed Feb 23 08:00:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35815         * array.c (rb_ary_s_create): no need for negative argc check.
35816           [ruby-core:04463]
35818         * array.c (rb_ary_unshift_m): ditto.
35820 Wed Feb 23 01:53:29 2005  Shugo Maeda  <shugo@ruby-lang.org>
35822         * lib/net/imap.rb (initialize): handle certs correctly. Thanks,
35823           NABEYA Kenichi.
35825 Wed Feb 23 00:37:34 2005  Kouhei Sutou  <kou@cozmixng.org>
35827         * lib/mkmf.rb (mkmf_failed): fixed typo.
35829 Tue Feb 22 23:52:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35831         * configure.in, lib/mkmf.rb: use simple commands if available.
35833         * mkconfig.rb: remove autoconf internal variables from rbconfig.rb.
35835         * lib/mkmf.rb (create_makefile): substitute implicit rules in depend
35836           file.
35838         * {bcc32,win32,wince}/Makefile.sub (COMPILE_RULES, RULE_SUBST):
35839           include $(topdir) and $(hdrdir) to search path.
35841 Tue Feb 22 23:51:45 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35843         * ext/syck/rubyext.c: get rid of warnings caused by a bug of VC.
35845 Tue Feb 22 23:50:26 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35847         * signal.c (ruby_signal, ruby_nativethread_signal): must be valid as
35848           expressions, not only statements.
35850 Tue Feb 22 12:54:13 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35852         * eval.c (rb_thread_start_0): update curr_thread before raising
35853           TAG_THREAD.  [ruby-dev:25712]
35855 Tue Feb 22 07:24:57 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35857         * parse.y (parser_yylex): identifier after dot must not be a variable.
35859 Mon Feb 21 18:31:12 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
35861         * signal.c: Standard signal handlers ignore signals on non-Ruby native
35862           threads. When a handler is entried with ruby_signal() (like as the
35863           standard signal handlers), the handler for the signal is marked as
35864           it cannot accept non-Ruby native threads. If a handler can treat all
35865           signals on all native threads, please use ruby_nativethread_signal()
35866           to entry it.
35868 Sun Feb 20 00:48:48 2005  Tanaka Akira  <akr@m17n.org>
35870         * lib/open-uri.rb (URI::FTP#buffer_open): access mechanism
35871           re-implemented according to RFC 1738.
35872           reported by Guillaume Marcais.  [ruby-talk:131650]
35874 Sat Feb 19 18:46:56 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35876         * lib/drb/drb.rb (DRbObject#respond_to?): take two arguments.
35877           [ruby-dev:25722]
35879         * test/drb/drbtest.rb: ditto.
35881 Sat Feb 19 13:52:02 2005  Tanaka Akira  <akr@m17n.org>
35883         * lib/open-uri.rb: call OpenSSL::SSL::SSLSocket#post_connection_check
35884           after connection is made.
35886 Sat Feb 19 13:31:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35888         * ext/extmk.rb (extract_makefile): remove no longer existing installed
35889           files.
35891         * lib/mkmf.rb (install_dirs): return installation directory list.
35893         * lib/mkmf.rb (create_makefile): reverted wrongly removed lines.
35895 Sat Feb 19 01:28:56 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35897         * ext/bigdecimal/lib/bigdecimal/newton.rb: resolved LoadError.
35898           [ruby-dev:25685]
35900         * ext/bigdecimal/sample/linear.rb: ditto.
35902         * ext/bigdecimal/sample/nlsolve.rb: ditto.
35904         * ext/bigdecimal/lib/bigdecimal/nlsolve.rb: removed because this file
35905           is sample script and same file exists in ext/bigdecimal/sample.
35907 Fri Feb 18 17:14:00 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35909         * lib/xmlrpc/parser.rb (XMLRPC::FaultException): make it subclass
35910           of StandardError class, not Exception class.  [ruby-core:04429]
35912 Fri Feb 18 04:06:41 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35914         * parse.y (fcall_gen): lvar(arg) will be evaluated as
35915           lvar.call(arg) when lvar is a defined local variable. [new]
35917 Thu Feb 17 22:15:34 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35919         * ext/strscan/strscan.c: calls Oniguruma API directly.
35921 Thu Feb 17 21:53:12 2005  K.Kosako  <sndgk393 AT ybb.ne.jp>
35923         * common.mk, LEGAL: remove reggnu.c.
35925 Thu Feb 17 21:53:12 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
35927         * gc.c, re.c: now ruby calls Oniguruma API directly, bypassing
35928           GNU compatible APIs.
35930 Thu Feb 17 20:09:23 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
35932         * lib/drb/drb.rb (DRbServer.default_safe_level): fix typo.
35934 Thu Feb 17 20:09:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35936         * test/digest/test_digest.rb: separate test case for each algorithms.
35937           [ruby-dev:25412]
35939 Thu Feb 17 14:31:52 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35941         * object.c (rb_class_initialize): call inherited method before
35942           calling initializing block.
35944         * eval.c (rb_thread_start_1): initialize newly pushed frame.
35945           fixed: [ruby-dev:25707]
35947 Thu Feb 17 13:46:00 2005  Nathaniel Talbott  <ntalbott@ruby-lang.org>
35949         * lib/test/unit/collector.rb (collect_file): now deletes paths added
35950           to $LOAD_PATH instead of restoring it verbatim.
35952         * lib/test/unit/autorunner.rb (AutoRunner.run): fixed so that
35953           'ruby -rtest/unit -rtest1 -rtest2 -e0' will use the objectspace
35954           collector again. Also tried to simplify the calling convention.
35956         * test/runner.rb: adjusted for new AutoRunner semantics.
35958         * lib/test/unit.rb: ditto.
35960 Thu Feb 17 04:21:47 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35962         * lib/open3.rb (Open3::popen3): $? should not be EXIT_FAILURE.
35963           fixed: [ruby-core:04444]
35965 Thu Feb 17 00:31:21 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
35967         * test/drb/test_drb.rb, ut_safe1.rb: port from 1.8
35969 Thu Feb 17 00:02:27 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
35971         * eval.c (is_defined): NODE_IASGN is an assignment.
35973 Wed Feb 16 23:54:14 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
35975         * eval.c (rb_thread_start_1): outer block variables wasn't linked to
35976           threads.  fixed: [ruby-dev:25700]
35978 Wed Feb 16 15:11:43 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35980         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::Nonblock#initialize):
35981           native win32 platform doesn't have F_GETFL.
35983 Wed Feb 16 02:47:45 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
35985         * ext/openssl/ossl_ssl.c (ossl_ssl_read, ossl_ssl_write): should
35986           call rb_sys_fail instead of raising SSLError if SSL_ERROR_SYSCALL
35987           occurred.
35989         * ext/openssl/lib/openssl/buffering.rb (Buffering#fill_rbuff):
35990           should rescue Errno::EAGAIN.
35992         * ext/openssl/lib/openssl/buffering.rb (Buffering#each): fix typo.
35993           suggested by Brian Ollenberger.
35995         * ext/openssl/lib/openssl/ssl.rb: set non-blocking flag to the
35996           underlying IO.
35998 Tue Feb 15 22:14:34 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
36000         * ext/readline/readline.c (Readline.readline): use rl_outstream
36001           and rl_instream.  [ruby-dev:25699]
36003 Mon Feb 14 23:58:17 2005  Kouhei Sutou  <kou@cozmixng.org>
36005         * lib/rss/parser.rb (RSS::ListenerMixin::tag_end):
36006           fixed invalid namespace handling bug.
36008 Mon Feb 14 13:12:38 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36010         * ext/openssl/lib/openssl/ssl.rb
36011           (OpenSSL::SSL::SSLSocket#post_connection_check): new method.
36013 Mon Feb 14 00:10:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36015         * lib/drb/drb.rb (DRbServer): add default_safe_level, safe_level,
36016           config[:safe_level] ([druby-ja:120])
36018         * test/drb/test_drb.rb, ut_eval.rb, ut_safe1.rb: ditto.
36020 Sun Feb 13 23:13:46 2005  Kouhei Sutou  <kou@cozmixng.org>
36022         * lib/rss/dublincore.rb (RSS::DublicCoreModel#date{,=}): added
36023           convenient methods.
36025         * lib/rss/0.9.rb (RSS::Rss::Channel#date{,=}): ditto.
36027         * lib/rss/2.0.rb (RSS::Rss::Channel::Item#date{,=}): ditto.
36029         * test/rss/: added tests for the convenient methods.
36031 Sun Feb 13 23:12:47 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36033         * eval.c (rb_thread_start_0): restore prot_tag before rewinding.
36035 Sun Feb 13 16:56:52 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36037         * lib/webrick/cgi.rb (WEBrick::CGI.start): should set reason-phrase
36038           to the value of status header field. ([ruby-dev:40617])
36040 Sun Feb 13 11:38:40 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36042         * regparse.c (type_cclass_hash): (Thanks Nobu) fixed
36043           overrun. ([ruby-dev:25676]).
36045 Sun Feb 13 10:53:08 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36047         * oniggnu.h, oniguruma.h, regcomp.c, st.c: imported
36048           Oni Guruma 3.6.0.
36050 Sun Feb 13 01:33:19 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36052         * lib/erb.rb (ERB::Util.h, u): make it module_function.
36054 Sat Feb 12 22:17:11 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36056         * eval.c (TAG_THREAD): to start a new thread.
36058         * eval.c (ruby_init, ruby_options, ruby_cleanup, rb_protect,
36059           rb_load_protect, rb_thread_start_0): make thread anchor.
36061         * eval.c (proc_alloc): clone proc object if klass is not Proc or
36062           created in different thread.
36064         * eval.c (rb_block_pass): call a function with a block.  [new]
36066         * eval.c (rb_f_throw): raise NameError in main thread.
36068 Sat Feb 12 17:29:19 2005  Tanaka Akira  <akr@m17n.org>
36070         * lib/open-uri.rb (OpenURI.open_loop): send authentication only for
36071           the URI directly specified.
36073 Sat Feb 12 15:07:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36075         * random.c (rand_init): suppress warning.
36077 Sat Feb 12 14:10:24 2005  Tanaka Akira  <akr@m17n.org>
36079         * lib/open-uri.rb (OpenURI.open_http): reject userinfo explicitly.
36081 Sat Feb 12 13:54:03 2005  Tanaka Akira  <akr@m17n.org>
36083         * lib/open-uri.rb: support https if the platform provides CA
36084           certificates.
36086 Sat Feb 12 06:18:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
36088         * ext/etc/etc.c (Init_etc): sGroup needs HAVE_ST_GR_PASSWD check
36089           [ruby-dev:25675]
36091 Fri Feb 11 17:37:50 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36093         * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths):
36094           new method OpenSSL::X509::Store#set_default_paths.
36096 Fri Feb 11 11:33:53 2005  Tanaka Akira  <akr@m17n.org>
36098         * lib/open-uri.rb (URI::HTTP#proxy_open): new option supported:
36099           :http_basic_authentication.
36100           suggested by Kent Sibilev.  [ruby-core:4392]
36102 Fri Feb 11 06:30:07 2005  George Ogata  <g_ogata@optushome.com.au>
36104         * misc/ruby-mode.el: ignore parenthesis inside heredoc.
36105           [ruby-core:04415]
36107 Fri Feb 11 04:54:13 2005  Tilman Sauerbeck  <tilman@code-monkey.de>
36109         * lib/rdoc/generators/html_generator.rb: [ruby-core:04412]
36111         * lib/rdoc/generators/ri_generator.rb: ditto.
36113 Thu Feb 10 13:52:42 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36115         * configure.in, win32/Makefile.sub (LIBS, COMMON_HEADERS): use
36116           winsock2 on mswin32/mingw.
36118         * ext/socket/extconf.rb: ditto.
36120         * win32/win32.c (StartSockets): ditto.
36122         * win32/win32.h: ditto.
36124 Thu Feb 10 12:09:16 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36126         * ext/extmk.rb (extract_makefile): default to true if not compiled
36127           previously.
36129         * ext/extmk.rb (extmake): create dummy makefile if extconf failed.
36131 Thu Feb 10 12:07:10 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36133         * win32/win32.c (init_stdhandle): assign standard file handles.
36135         * bcc32/Makefile.sub (COMMON_LIBS): add libraries included in
36136           import32.lib.
36138         * lib/mkmf.rb (create_makefile): restrict prefixing with srcdir to
36139           rule lines, add search path to implicit rules, and set Borland make
36140           special macros for search path.
36142         * win32/win32.c, win32/win32.h (read): avoid a BCC runtime bug.
36144 Thu Feb 10 00:47:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36146         * struct.c (make_struct): fixed: [ruby-core:04402]
36148 Wed Feb  9 16:33:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36150         * ext/socket/socket.c (wait_connectable): fixed wrong condition.
36152 Wed Feb  9 14:42:28 2005  URABE Shyouhei  <shyouhei@ice.uec.ac.jp>
36154         * eval.c (scope_dup): add volatile not to optimize tbl.
36156 Wed Feb  9 10:02:02 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36158         * ext/tk/make-tkutil, ext/tk/tkutil/subconf.rb: no longer used.
36160         * ext/tk/tkutil/extconf.rb: need to compile tkutil. [ruby-dev:25607]
36162 Wed Feb  9 08:07:08 2005  Paul Duncan  <pabs@pablotron.org>
36164         * ext/curses/curses.c (window_color_set): [ruby-core:04393]
36166 Tue Feb  8 23:48:36 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36168         * lib/drb/drb.rb: reject :instance_eval, :class_eval, :module_eval
36169           [druby-ja:117]
36171 Tue Feb  8 22:38:28 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36173         * keywords, parse.y: separate EXPR_VALUE from EXPR_BEG.
36174           fixed: [ruby-core:04310], [ruby-core:04368]
36176 Tue Feb  8 13:06:12 2005  Sam Roberts  <sroberts@uniserve.com>
36178         * ext/socket/socket.c (Init_socket): SO_REUSEPORT added.
36179           [ruby-talk:130092]
36181 Tue Feb  8 00:19:02 2005  Tanaka Akira  <akr@m17n.org>
36183         * lib/resolv.rb (Resolv::DNS::Name#subdomain_of?): new method.
36184           (Resolv::DNS::Name#inspect): ditto.
36185           Suggested by Sam Roberts.  [ruby-talk:129086]
36187 Mon Feb  7 23:14:11 2005  Tanaka Akira  <akr@m17n.org>
36189         * io.c (io_getc): flush rb_stdout before read from stdin, which is
36190           connected to a tty.  [ruby-core:4378]
36192         * rubyio.h (FMODE_TTY): renamed from FMODE_LINEBUF.
36194 Mon Feb  7 10:06:30 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36196         * object.c: [ruby-doc:818]
36198 Mon Feb  7 02:13:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36200         * ext/socket/extconf.rb (sockaddr_storage): winsock2.h have the
36201           definition of struct sockaddr_storage, but socket.c doesn't
36202           include it because this version of ruby still has binary level
36203           compatibility with winsock1.
36205 Mon Feb  7 01:22:50 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36207         * ext/extmk.rb (extract_makefile): extract previously collected
36208           informations from existing Makefile.
36210         * ext/socket/extconf.rb: check if getaddrinfo() works fine only when
36211           wide-getaddrinfo option is not given.  fixed: [ruby-dev:25422]
36213         * ext/tk/extconf.rb: separate tkutil configuration.
36215         * lib/mkmf.rb ($extmk): check if under ext directory.
36217         * lib/mkmf.rb (Logging.postpone): allow recursive operation.
36219         * lib/mkmf.rb (try_constant): make sure if really a constant, reduce
36220           the number of times of compile.
36222         * lib/mkmf.rb (have_macro, have_var, byte_order): new functions.
36224         * lib/mkmf.rb (find_library): allow directory list with separators.
36226         * lib/mkmf.rb (arg_config): manage provided configuration options.
36228         * lib/mkmf.rb (dir_config): accept arrays of directory names as
36229           default values.
36231         * lib/mkmf.rb (with_cppflags, with_cflags, with_ldflags): keep flags
36232           modified if the block returned true.
36234 Sun Feb  6 19:20:05 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36236         * eval.c (stack_extend): add prototype because VC++8 doesn't
36237           accept __declspec(noinline) with K&R style function definitions.
36239 Sun Feb  6 13:56:19 2005  Tadayoshi Funaba  <tadf@dotrb.org>
36241         * lib/date.rb (new_with_hash): changed messages of exception.
36243         * lib/date/format.rb (str[fp]time): undocumented conversion
36244           specifications %[1-3] are now deprecated.
36246 Sun Feb  6 11:27:37 2005  Tanaka Akira  <akr@m17n.org>
36248         * ext/dl/dl.c (Init_dl): function declaration should precede
36249           statements before C99.
36251 Sun Feb  6 03:24:20 2005  Tanaka Akira  <akr@m17n.org>
36253         * lib/resolv.rb (Resolv::DNS::Resource::TXT): multiple strings was not
36254           handled.
36255           (Resolv::DNS::Resource::TXT#strings): new method to return all
36256           strings.
36257           (Resolv::DNS::Message::MessageEncoder#put_string_list): new method.
36258           (Resolv::DNS::Message::MessageDecoder#get_string_list): ditto.
36259           based on [ruby-talk:129732] by Sam Roberts.
36261 Sat Feb  5 02:24:06 2005  Minero Aoki  <aamine@loveruby.net>
36263         * test/ripper/test_scanner_events.rb: fix test.
36265 Fri Feb  4 18:44:35 2005  Minero Aoki  <aamine@loveruby.net>
36267         * ext/ripper/lib/ripper/lexer.rb: last Lexer fix was incomplete;
36268           test all green.
36270 Fri Feb  4 15:57:06 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36272         * parse.y (open_args): fix too verbose warnings for the space
36273           before argument parentheses.  [ruby-dev:25492]
36275         * parse.y (parser_yylex): ditto.
36277 Fri Feb  4 14:33:25 2005  Minero Aoki  <aamine@loveruby.net>
36279         * ext/ripper/lib/ripper/filter.rb: ripper/tokenizer ->
36280           ripper/lexer. [ruby-dev:25632]
36282 Fri Feb  4 00:24:15 2005  Kouhei Sutou  <kou@cozmixng.org>
36284         * lib/rss: supported Image module.
36285           http://web.resource.org/rss/1.0/modules/image/
36287 Thu Feb  3 23:42:36 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36289         * ext/stringio/stringio.c (strio_close, strio_close_read, strio_close_write):
36290           should return nil instead of self as well as IO.  [ruby-dev:25623]
36292         * ext/stringio/stringio.c (strio_extend, strio_putc): fill with zero
36293           extended portion.  [ruby-dev:25626]
36295 Thu Feb  3 16:12:57 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36297         * parse.y (parser_yylex): the first expression in the parentheses
36298           should not be a command.  [ruby-dev:25492]
36300 Thu Feb  3 03:31:20 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36302         * ext/nkf/nkf-utf8/nkf.c: follow original v 1.57
36304         * ext/nkf/nkf-utf8/utf8tbl.c: follow original v 1.8
36306         * ext/nkf/nkf-utf8/config.h: follow original v 1.7
36308 Wed Feb  2 23:52:53 2005  sheepman  <sheepman@tcn.zaq.ne.jp>
36310         * ext/stringio/stringio.c (strio_truncate): should MEMZERO an extended
36311           part.  [ruby-dev:25618]
36313 Wed Feb  2 21:56:01 2005  Kouhei Sutou  <kou@cozmixng.org>
36315         * lib/rss/rss.rb (RSS::Element#convert): added.
36317         * lib/rss/rss.rb: convert -> need_convert.
36319         * lib/rss/1.0.rb: ditto.
36321         * lib/rss/0.9.rb: ditto.
36323         * lib/rss/2.0.rb: ditto.
36325         * lib/rss/trackback.rb: ditto.
36327 Wed Feb  2 03:30:58 2005  Minero Aoki  <aamine@loveruby.net>
36329         * ext/ripper/lib/ripper/tokenizer.rb -> lexer.rb.
36331         * ext/ripper/lib/ripper/lexer.rb: new method Ripper.slice.
36332           [experimental]
36334         * ext/ripper/lib/ripper/sexp.rb: new file. [experimental]
36336         * ext/ripper/lib/ripper.rb: require ripper/lexer and ripper/sexp.
36338 Tue Feb  1 21:49:24 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36340         * lib/drb/drb.rb (DRb::DRbObject#respond_to?): check marshal_dump and
36341           _dump.
36343 Tue Feb  1 00:20:23 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36345         * Makefile.in, configure.in: made EXTOUT configurable.
36347         * ext/extmk.rb (extmake), lib/mkmf.rb: keep topdir as relative style.
36349         * lib/mkmf.rb: make extensions in depth order.  [ruby-dev:25522]
36351         * configure.in (aix): fix linker flags on AIX.  [ruby-talk:125460]
36353 Mon Jan 31 13:16:39 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36355         * ext/tk/extconf.rb: add tkutil configuration step (remove old schema)
36357         * ext/tk/depend: remove the information of tkutil
36359         * ext/tk/make-tkutil: sub-part of Makefile to compile tkutil
36361         * ext/tk/tkutil/tkutil.c: move tkutil.c to subdirectory
36363         * ext/tk/tkutil/subconf.rb: configuration file for tkutil.c
36365         * ext/tk/tkutil/depend: ditto
36367 Mon Jan 31 13:13:35 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36369         * ext/tk/tcltklib.c: add invalid namespace check
36371         * ext/tk/lib/multi-tk.rb: add invalid_namespace? method
36373         * ext/tk/lib/remote-tk.rb: ditto
36375 Mon Jan 31 10:29:18 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36377         * lib/irb/context.rb (IRB::Context::initialize): [ruby-core:04330]
36379 Mon Jan 31 09:44:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36381         * object.c (Init_Object): remove Object#type.  [ruby-core:04335]
36383 Sat Jan 29 09:42:12 2005  Sam Roberts  <sroberts@uniserve.com>
36385         * lib/resolv.rb (Resolv::DNS::Resource::IN::SRV): Added RFC2782 SRV
36386           resource record for specifying location of services.
36388 Sat Jan 29 00:10:33 2005  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
36390         * ascii.c, euc_jp.c, hash.c, oniggnu.h, oniguruma.h, regcomp.c,
36391           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c, regint.h,
36392           regparse.c, regparse.h, sjis.c, st.c, st.h, utf8.c: imported
36393           Oni Guruma 3.5.4.
36395 Fri Jan 28 17:16:55 2005  Tanaka Akira  <akr@m17n.org>
36397         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf):
36398           parse options line for ndots option.
36399           (Resolv::Hosts#lazy_initialize): return self.
36400           (Resolv::DNS#lazy_initialize): ditto.
36401           (Resolv::DNS::Config#lazy_initialize): ditto.
36402           Suggested by Sam Roberts.
36404 Thu Jan 27 17:15:03 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36406         * ext/tk/extconf.rb: support new tk scheme on bccwin32.
36407           fixed: [ruby-dev:25546]
36409 Thu Jan 27 13:18:03 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36411         * st.c (st_foreach): report success/failure by return value.
36412           [ruby-Bugs-1396]
36414 Thu Jan 27 00:12:19 2005  Minero Aoki  <aamine@loveruby.net>
36416         * test/fileutils/test_fileutils.rb (setup): support BSD style
36417           directory group inheritance (again).
36419 Thu Jan 27 00:02:40 2005  Minero Aoki  <aamine@loveruby.net>
36421         * test/fileutils/test_fileutils.rb (setup): support BSD style
36422           directory group inheritance. [ruby-dev:25440]
36424         * test/fileutils/fileasserts.rb (assert_same_entry): show entry
36425           difference.
36427 Wed Jan 26 17:12:50 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36429         * parse.y: forgot to initialize parser struct.  [ruby-dev:25492]
36431         * parse.y (parser_yylex): no tLABEL on EXPR_BEG.
36432           [ruby-talk:127711]
36434 Wed Jan 26 14:12:58 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36436         * ext/Setup*: remove tcltklib.
36438 Wed Jan 26 12:45:16 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36440         * ext/tk/extconf.rb: support new tk scheme on mswin32.
36441          fixed: [ruby-dev:25535]
36443 Wed Jan 26 10:45:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36445         * win32/win32.c (flock_winnt, flock_win95): unlock file even if
36446           LOCK_NB is specified.
36448 Tue Jan 25 23:10:48 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36450         * ext/tk: merge tcltklib for Ruby/Tk installation control
36452         * ext/tcltklib: remove
36454 Tue Jan 25 17:05:15 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36456         * ruby.c (proc_options): correct -T option in RUBYOPT.
36457           fixed: [ruby-dev:25512]
36459 Tue Jan 25 14:05:52 2005  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36461         * ext/tcltklib/tcltklib.c: fix SEGV bug; trouble on canceling remained
36462           after scripts [ruby-dev:25479]: NULL current namespace when deleting
36463             Tk interpreter [ruby-talk:126225]
36465         * ext/tcltklib/extconf.rb: bug fix; TCL_ENABLE_THREAD flag is inverted
36466           [ruby-talk:126360]
36468         * ext/tcltklib/extconf.rb: add yet another native-thread check
36470         * ext/tk/tkutil.c: fix SEGV bug; NULL string pointer when finalize
36471           Ruby interpreter
36473         * ext/tk/lib/multi-tk.rb: avoid warning for deleted safeTk ip frame
36475         * ext/tk/lib/tk/bindtag.rb: bug fix; new method of named bindtag
36476           doesn't return the created object [ruby-dev:25479]
36478         * ext/tk/lib/tk/menu.rb: bug on treating arguments [ruby-dev:25479]
36480         * ext/tk/lib/tk.rb: bug fix; cannot accept a callback ID string for
36481           a command argument [ruby-dev:25479]
36483         * ext/tk/lib/multi-tk.rb: ditto
36485         * ext/tk/lib/tk/*.rb: ditto
36487         * ext/tk/lib/tkextlib/*.rb: ditto
36489         * ext/tk/sample/demos-jp/anilabel.rb: new demo script
36491         * ext/tk/sample/demos-en/anilabel.rb: ditto
36493         * ext/tk/sample/tkHTML/ss.rb: local variable scope bug fix
36494           [ruby-dev:25479]
36496 Mon Jan 24 16:00:53 2005  NARUSE, Yui  <naruse@ruby-lang.org>
36498         * ext/nkf/lib/kconv.rb (guess_old): not use NKF.guess_old
36499           but NKF.guess1. fixed: [ruby-dev:25491]
36501 Mon Jan 24 15:44:25 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36503         * document updates - [ruby-core:04296], [ruby-core:04301],
36504           [ruby-core:04302], [ruby-core:04307]
36506 Sun Jan 23 12:38:01 2005  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
36508         * lib/soap/wsdlDriver.rb: from 1.5.3-ruby1.8.2, operation which has
36509           capitalized name (such as KeywordSearchRequest in AWS) is defined as
36510           a method having uncapitalized name. (converted with
36511           GenSupport.safemethodname to handle operation name 'foo-bar').  it
36512           introduced serious incompatibility; in the past, it was defined as a
36513           capitalized.
36515           define capitalized method as well under that circumstance.
36517 Sun Jan 23 05:24:42 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36519         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_to_der): should call
36520           GetOCSPReq at first.
36522 Sat Jan 22 22:59:08 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36524         * lib/drb/ssl.rb (accept): rescue SSLError. [druby-ja:110]
36526 Sat Jan 22 22:27:28 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36528         * lib/drb/unix.rb: fail if UNIXFileOwner is set. [druby-ja:111]
36530 Fri Jan 21 20:07:02 2005  Tanaka Akira  <akr@m17n.org>
36532         * lib/resolv.rb (Resolv::DNS::Config.resolv): don't raise ResolvError.
36533           reported by Sam Roberts.  [ruby-talk:127133]
36535 Fri Jan 21 17:09:44 2005  Shugo Maeda  <shugo@ruby-lang.org>
36537         * lib/net/imap.rb (decode_utf7): use pack("U*") to encode UTF-8.
36539         * lib/net/imap.rb (encode_utf7): use unpack("U*") to decode UTF-8.
36541         * test/net/imap/test_imap.rb: added tests for Net::IMAP.
36543 Fri Jan 21 16:58:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36545         * dir.c (rb_push_glob): should work for NUL delimited patterns.
36547         * dir.c (rb_glob2): should aware of offset in the pattern.
36549 Fri Jan 21 13:58:37 2005  Shugo Maeda  <shugo@ruby-lang.org>
36551         * lib/net/imap.rb (u8tou16): fixed typo. fixed: [ruby-list:40546]
36553 Fri Jan 21 00:37:09 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36555         * ext/syck/rubyext.c (syck_parser_bufsize_set): avoid VC++ warning
36556           "local variable 'size' used without having been initialized".
36558 Thu Jan 20 11:42:02 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36560         * string.c (rb_str_new4): should propagate taintedness.
36562         * env.h: rename member names in struct FRAME; last_func -> callee,
36563           orig_func -> this_func, last_class -> this_class.
36565         * struct.c (rb_struct_set): use original method name, not callee
36566           name, to retrieve member slot.  [ruby-core:04268]
36568         * time.c (time_strftime): protect from format modification from GC
36569           finalizers.
36571 Thu Jan 20 02:01:10 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36573         * object.c (Init_Object): remove rb_obj_id_obsolete()
36575 Wed Jan 19 18:02:19 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36577         * lib/ipaddr.rb (to_s, test_to_s): too many colons with some cases.
36579 Wed Jan 19 01:16:30 2005  Tanaka Akira  <akr@m17n.org>
36581         * lib/resolv.rb (Resolv::DNS::Config.parse_resolv_conf): ignore
36582           domain and search directive without an argument.
36583           reported by Sam Roberts.  [ruby-talk:126781]
36585 Mon Jan 17 23:33:46 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36587         * configure.in (aix): fix typo.  [ruby-talk:126401]
36589 Mon Jan 17 07:08:51 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36591         * ext/readline/readline.c: suppress warnings.
36593         * lib/irb/extend-command.rb (IRB::ContextExtender.def_extend_command):
36594           ditto.
36596         * lib/irb/ext/history.rb (IRB::Context::set_last_value): ditto.
36598         * lib/irb/ext/history.rb (IRB::Context::eval_history): ditto.
36600         * lib/irb/locale.rb (IRB::Locale::real_load): ditto.
36602         * lib/irb/slex.rb (SLex::Node::create_subnode): remove garbage.
36604 Mon Jan 17 00:09:42 2005  WATANABE Hirofumi  <eban@ruby-lang.org>
36606         * lib/uri/common.rb (PORT): typo fix. fixed: [ruby-core:04256]
36608 Sat Jan 15 14:57:22 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36610         * ruby.c (proc_options): ignore trailing CRs at the end of short
36611           options as well as long options.  fixed: [ruby-core:04232]
36613 Sat Jan 15 13:44:22 2005  Kouhei Sutou  <kou@cozmixng.org>
36615         * lib/rss/rss.rb (RSS::VERSION): 0.1.2 -> 0.1.3.
36617         * lib/rss/rss.rb: accept inheritance. [ruby-talk:126104]
36619 Wed Jan 12 12:29:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36621         * eval.c (rb_mod_define_method): incomplete subclass check.
36622           [ruby-dev:25464]
36624         * class.c (rb_make_metaclass): class of metaclasses should be
36625           plain Class.  [ruby-list:40524]
36627 Tue Jan 11 20:58:52 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36629         * io.c (remain_size): use buffered data instead of unreading to avoid
36630           inconsistency of text mode.  fixed: [ruby-dev:25446]
36632 Tue Jan 11 09:37:53 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36634         * numeric.c (Init_Numeric): turn off floating point exceptions
36635           on bcc32. "1e300".to_f had crashed by overflow.
36637 Mon Jan 10 15:28:51 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36639         * lib/webrick/cgi.rb (WEBrick::CGI::Socket#request_line): should
36640           escape SCRIPT_NAME and PATH_INFO before being parsed as a URI.
36642         * lib/webrick/httputils.rb (WEBrick::HTTPUtils#escape_path): add
36643           new method to escape URI path component.
36645         * lib/webrick/ssl.rb (WEBrick::Config::SSL): the default value
36646           of :SSLEnable is false.
36648         * test/webrick/{test_cgi.rb,webrick.cgi}: new file.
36650         * test/webrick/utils.rb: require "webrick/https.h".
36652 Mon Jan 10 01:22:55 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36654         * gc.c (rb_data_object_alloc): klass may be NULL.
36655           [ruby-list:40498]
36657 Sun Jan  9 14:12:17 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36659         * io.c (rb_f_select): IO list could be altered.  [ruby-dev:25312]
36661 Sun Jan  9 04:08:40 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36663         * test/webrick/test_server.rb (test_daemon): delete an assertion
36664           which has possibility to fail by race condition.
36666 Sun Jan  9 03:22:46 2005  Minero Aoki  <aamine@loveruby.net>
36668         * test/fileutils/test_fileutils.rb (test_copy_entry): copy_entry
36669           copies only file type, not mtime. [ruby-dev:25383]
36671 Sat Jan  8 04:38:47 2005  why the lucky stiff  <why@ruby-lang.org>
36673         * lib/yaml.rb: Kernel#y requires an argument.
36675 Fri Jan  7 21:12:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
36677         * random.c (rand_init): use ALLOC_N instead of ALLOCA_N
36678           [ruby-dev:25426]
36680 Fri Jan  7 20:01:31 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36682         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_service):
36683           should delete trailing LF from the result of pack("m*").
36685         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
36686           - should delete trailing LF from the result of pack("m*").
36687           - clear Request-Line not to send the response by HTTPServer#run.
36689         * lib/webrick/httputils (WEBrick::HTTPUtils.parse_qvalues):
36690           refine regexp (and change the name of a local variable).
36692         * lib/webrick/server.rb (WEBrick::Daemon.start): prepared stdio
36693           don't allow changing its mode.
36695         * test/webrick/*, sample/webrick/httpproxy.rb: add new files.
36697 Fri Jan  7 18:03:35 2005  Tanaka Akira  <akr@m17n.org>
36699         * gc.c (mark_locations_array): avoid core dump with -O3.
36700           [ruby-dev:25424]
36702 Thu Jan  6 20:29:18 2005  NAKAMURA Usaku  <usa@ruby-lang.org>
36704         * ext/zlib/zlib.c (zstream_end): should return value.
36706 Thu Jan  6 19:59:03 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36708         * win32/win32.c (rb_w32_close): didn't close socket handle.
36709           [ruby-dev:25414]
36711         * win32/win32.c (rb_w32_open_osfhandle): bcc32's _open_osfhandle
36712           never set EMFILE.
36714 Thu Jan  6 17:22:41 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36716         * random.c (random_seed): O_NONBLOCK isn't defined on some
36717           platforms. [ruby-dev:25417]
36719 Thu Jan  6 13:45:35 2005  Tanaka Akira  <akr@m17n.org>
36721         * lib/time.rb: recognize +00:00 and GMT as a localtime.
36723 Thu Jan  6 07:58:28 2005  Dave Thomas  <dave@pragprog.com>
36725         * lib/rdoc/usage.rb (RDoc::RDoc.usage_no_exit): Allow for colons
36726           in path names on DOS machines. (thanks to Johan Nilsson)
36728 Thu Jan  6 00:02:35 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36730         * test/rinda/test_rinda.rb: use MockClock.sleep instead of Kernel.sleep
36731           [ruby-dev:25387]
36733 Wed Jan  5 20:16:32 2005  Tanaka Akira  <akr@m17n.org>
36735         * random.c (limited_big_rand): didn't work if SIZEOF_BDIGITS == 2.
36736           [ruby-dev:25408]
36738         * random.c (random_seed): refined.
36740 Wed Jan  5 16:39:54 2005  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
36742         * parse.y (BITSTACK_POP): workaround for bcc32 compiler's bug.
36743           shift assignment operator '>>=' for __int64 in struct may
36744           generate collapsed code. [ruby-dev:25342]
36746         * win32/win32.[ch]: failed to compile on bcc32 (and probably wince)
36747           [ruby-dev:25306]
36749 Wed Jan  5 12:49:39 2005  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36751         * eval.c (rb_thread_initialize): Thread objects cannot be initialized
36752           again.  fixed: [ruby-core:04067]
36754 Wed Jan  5 02:30:11 2005  Tanaka Akira  <akr@m17n.org>
36756         * random.c (init_by_array): imported from mt19937ar-cok.tgz.
36757           (genrand_int32): ditto.
36758           (genrand_real): replaced with genrand_res53 in mt19937ar-cok.
36759           (rand_init): support bignum for longer seed.
36760           (random_seed): generate longer seed.
36761           (make_mask): new function.
36762           (limited_rand): ditto.
36763           (limited_big_rand): ditto.
36764           (rb_f_rand): call limited_rand and limited_big_rand.
36765           [ruby-dev:25403]
36767 Tue Jan  4 23:25:29 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36769         * bignum.c (rb_big_rand): should return positive random number.
36770           [ruby-dev:25401]
36772 Tue Jan  4 21:25:43 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36774         * test/drb/{test_drbssl.rb,test_drbunix.rb,ut_drb.rb}: use
36775           DRbService.ext_service. reduce sleep.
36777 Mon Jan  3 14:01:54 2005  Tanaka Akira  <akr@m17n.org>
36779         * random.c (random_seed): don't use /dev/urandom if it is not
36780           character device.
36782 Mon Jan  3 11:37:42 2005  Tanaka Akira  <akr@m17n.org>
36784         * random.c (random_seed): use /dev/urandom if available.
36785           [ruby-dev:25392]
36787 Tue Jan  4 11:15:29 2005  TAMURA Takashi  <sheepman@tcn.zaq.ne.jp>
36789         * bignum.c (rb_big_rand): do not use rb_big_modulo to generate
36790           random bignums.  [ruby-dev:25396]
36792 Mon Jan  3 11:03:37 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36794         * test/drb/test_drb.rb: move TestDRbReusePort to new file.
36795           [ruby-dev:25238]
36797         * test/drb/drbtest.rb: change timeout.
36799         * test/drb/ignore_test_drb.rb: new file.
36801 Mon Jan  3 07:27:46 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36803         * lib/webrick/httpauth/htpasswd.rb (WEBrick::Htpasswd#reload):
36804           raise NotImplementedError if password is encrypted by digest
36805           algorithms. This patch is contributed by sheepman. [ruby-list:40467]
36807         * lib/webrick/httpauth/digestauth.rb
36808           (WEBrick::HTTPAuth::DigestAuth#_authenticate): fix digest calculation.
36809           This patch is contributed by sheepman. [ruby-list:40482]
36811         * lib/webrick/{httpauth.rb,httpauth/basicauth.rb,httpproxy.rb}: use
36812           pack/unpack-template char "m" instead of lib/base64.rb to do base64
36813           encoding/decoding. fixed: [ruby-dev:25336]
36815         * test/webrick/test_httpauth.rb: new file.
36817 Sun Jan  2 15:42:10 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36819         * lib/drb/drb.rb: add lazy stop_service.
36821         * lib/drb/extserv.rb: ditto.
36823 Sun Jan  2 01:17:17 2005  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
36825         * test/drb/drbtest.rb: add method DRbService.ext_service.
36827         * test/drb/test_drb.rb: ditto.
36829         * test/drb/test_drbssl.rb: ditto.
36831 Sat Jan  1 20:23:02 2005  Tanaka Akira  <akr@m17n.org>
36833         * io.c (argf_readpartial): new method ARGF.readpartial.
36834           (io_getpartial): extracted from io_readpartial.
36835           (io_readpartial): call io_getpartial.
36837 Sat Jan  1 17:44:54 2005  Minero Aoki  <aamine@loveruby.net>
36839         * lib/net/http.rb (each_capitalized): should join header field
36840           value.  This patch is contributed sheepman [ruby-list:40478]
36842         * test/net/http/test_httpheader.rb: test it.
36844 Sat Jan  1 16:21:29 2005  Minero Aoki  <aamine@loveruby.net>
36846         * lib/fileutils.rb (copy_stream): use read/write instead of
36847           sysread/syswrite, which allows duck typing. [ruby-dev:25369]
36849         * lib/fileutils.rb (copy_stream): does NOT support nonblocking IO.
36850           [ruby-dev:25370]
36852         * lib/fileutils.rb (copy_entry): could not copy symlink.
36854         * test/fileutils/test_fileutils.rb: test copy_entry, copy_file,
36855           copy_stream.
36857 Sat Jan  1 04:20:23 2005  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36859         * ext/openssl/ossl_ns_spki.c (ossl_spki_set_challenge): should call
36860           StringValue before GetSPKI. fixed: [ruby-dev:25359].
36862 Sat Jan  1 01:13:28 2005  Yukihiro Matsumoto  <matz@ruby-lang.org>
36864         * variable.c (rb_autoload): [ruby-dev:25373]
36866 Fri Dec 31 14:10:43 2004  Dave Thomas  <dave@pragprog.com>
36868         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
36869           Fix problem if heading contains formatting.
36871 Fri Dec 31 00:08:02 2004  Tanaka Akira  <akr@m17n.org>
36873         * configure.in (HAVE_RLIM_T): removed because not used.
36875 Thu Dec 30 22:45:39 2004  Tanaka Akira  <akr@m17n.org>
36877         * rubyio.h: don't deprecate rb_read_check.
36879         * io.c (STDIO_READ_DATA_PENDING): reverted from old READ_DATA_PENDING
36880           to check stdio read buffer.
36881           (rb_read_check): use STDIO_READ_DATA_PENDING.
36882           (rb_read_pending): ditto.
36883           (rb_getc): ditto.
36885 Thu Dec 30 05:39:35 2004  Minero Aoki  <aamine@loveruby.net>
36887         * parse.y: eliminate unused members in struct parser_params.
36888           [ruby-dev:25258] (again)
36890         * parse.y: make parser_new() static.
36892 Thu Dec 30 00:41:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36894         * eval.c (svalue_to_avalue): [ruby-dev:25366]
36896         * string.c (rb_str_justify): [ruby-dev:25367]
36898 Wed Dec 29 11:07:07 2004  Dave Thomas  <dave@pragprog.com>
36900         * lib/rdoc/generators/template/html/kilmer.rb: Update to use new
36901           sections.
36903 Tue Dec 28 22:31:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36905         * string.c (rb_str_justify): create buffer string after argument type
36906           conversion.  fixed: [ruby-dev:25341]
36908 Tue Dec 28 17:18:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36910         * lib/net/telnet.rb (preprocess): remove NULL unless binmode.
36911           fixed: [ruby-list:40320]
36913 Tue Dec 28 15:41:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36915         * ext/nkf/nkf-utf8/nkf.c (reinit): should initialize all static
36916           variables.  fixed: [ruby-list:40445]
36918 Tue Dec 28 15:25:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36920         * ext/nkf/lib/kconv.rb (Kconv::RegexpEucjp): second byte is up to
36921           0xfe.
36923         * ext/nkf/lib/kconv.rb (Kconv#kconv): should handle UTF8 and UTF16
36924           properly.
36926 Tue Dec 28 13:35:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36928         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate): ensure
36929           freeing internal zstreams.  fixed: [ruby-dev:25309]
36931         * ext/zlib/zlib.c (rb_deflate_init_copy): replace rb_deflate_clone.
36933 Mon Dec 27 20:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36935         * ext/tcltklib/tcltklib.c: fix SEGV bug when deleting Tk interp
36937         * ext/tk/lib/multi-tk.rb: ditto
36939 Mon Dec 27 16:54:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
36941         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): should use
36942           rb_hash_new to get exactly a Hash. fix [ruby-dev:25325].
36944 Mon Dec 27 15:29:12 2004  Minero Aoki  <aamine@loveruby.net>
36946         * test/fileutils/test_fileutils.rb (cp_r): tested wrong file name.
36947           [ruby-dev:25339]
36949 Mon Dec 27 15:15:18 2004  Minero Aoki  <aamine@loveruby.net>
36951         * lib/fileutils.rb (mv): should raise error when moving a
36952           directory to the (empty) directory. [ruby-talk:124368]
36954         * lib/fileutils.rb (mv): wrongly did not overwrite file on Win32
36955           platforms.
36957 Mon Dec 27 14:36:20 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
36959         * process.c (NUM2RLIM, RLIM2NUM): Without SIZEOF_RLIM_T is not error.
36960           fixed: [ruby-dev:25346]
36962 Sun Dec 26 16:21:39 2004  Shugo Maeda  <shugo@ruby-lang.org>
36964         * lib/net/imap.rb (Net::IMAP::PlainAuthenticator): added a new class
36965           to support the PLAIN authentication mechanism. Thanks, Benjamin
36966           Stiglitz.
36968 Sat Dec 25 01:28:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
36970         * io.c (rb_f_select): [ruby-dev:25312]
36972 Fri Dec 24 23:27:18 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36974         * ext/tk/lib/tk/image.rb: TkPhotoImage#cget bug fix
36976 Fri Dec 24 03:06:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36978         * io.c (io_reopen, rb_io_reopen): prohibit to change access mode for
36979           special IO ports.  [ruby-dev:25225]
36981         * io.c (next_argv): reduce use of stdio.
36983 Fri Dec 24 02:22:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
36985         * ext/syck/rubyext.c (syck_loader_transfer): check type conversion.
36987         * ext/syck/rubyext.c (syck_parser_assign_io, rb_new_syck_node): duck
36988           typing.
36990         * ext/syck/rubyext.c (syck_parser_s_alloc, syck_parser_initialize):
36991           allocation framework.
36993         * ext/syck/rubyext.c (syck_emitter_s_alloc, syck_emitter_initialize):
36994           ditto.
36996 Fri Dec 24 01:21:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
36998         * ext/tk/lib/tkextlib/blt.rb: add BLT extension support
37000         * ext/tk/lib/tkextlib/blt/*.rb: ditto
37002         * ext/tk/lib/tkextlib/blt/tile/*.rb: ditto
37004 Thu Dec 23 23:43:24 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37006         * process.c (proc_setgroups): check if the argument length is
37007           modified.  fixed: [ruby-dev:25285]
37009         * process.c (SIZEOF_RLIM_T): err if size of rlim_t is not set.
37011 Thu Dec 23 19:08:41 2004  Tanaka Akira  <akr@m17n.org>
37013         * rubyio.h: rename FMODE_UNSEEKABLE to FMODE_DUPLEX.
37015         * io.c (io_check_tty): extracted function to set FMODE_LINEBUF and
37016           FMODE_DUPLEX.
37018 Thu Dec 23 13:13:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37020         * ext/tcltklib/tcltklib.c: define TclTkLib::COMPILE_INFO and
37021           RELEASE_DATE
37023         * ext/tcltklib/extconf.rb: ditto
37025         * ext/tk/tkutil.c: define TkUtil::RELEASE_DATE
37027         * ext/tk/lib/tk.rb: define Tk::RELEASE_DATE
37029 Thu Dec 23 00:16:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37031         * configure.in (bsdi): use $(CC) for LDSHARED.  fixed [ruby-dev:25270]
37033 Wed Dec 22 11:14:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37035         * io.c (rb_io_mode_modenum): replace O_ACCMODE with O_RDWR.
37036           fixed: [ruby-dev:25273]
37038 Wed Dec 22 08:34:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37040         * ext/dl/sym.c (rb_dlsym_initialize): extract internal pointers after
37041           all argument conversion.  fixed: [ruby-dev:25271]
37043 Tue Dec 21 16:15:21 2004  Michael Neumann  <mneumann@ruby-lang.org>
37045         * lib/xmlrpc/client.rb: use "" instead of "." if prefix argument is
37046           nil in proxy methods. nil is default value.
37048         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
37049           use threads instead of forking. this should fix issue #1208
37050           (http://rubyforge.org/tracker/?func=detail&atid=1698&aid=1208&group_id=426).
37051           removed testing of SSL enabled servlet as this hangs.
37053 Wed Dec 22 00:05:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37055         * lib/soap/*, test/soap/*, sample/soap/authheader/*: eval cleanup.
37057 Tue Dec 21 22:07:41 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37059         * ext/openssl/ossl_asn1.c (ossl_asn1_decode_all): use rb_str_new4
37060           to avoid SEGV.
37062         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode,
37063           ossl_asn1_decode_all): temporary value should be marked volatile.
37065 Tue Dec 21 12:42:34 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37067         * ext/openssl/ossl_asn1.c (ossl_asn1_traverse, ossl_asn1_decode):
37068           use rb_str_new4 to avoid SEGV. fix [ruby-dev:25261]
37070         * test/openssl/test_asn1.rb: add tests for OpenSSL::ASN1.
37072 Tue Dec 21 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37074         * ext/tk/lib/tk/grid.rb: rescue bug of 'grid configure' on Tcl/Tk8.3-
37076 Mon Dec 20 22:52:29 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37078         * added samples for the previous soap4r's commit.
37080 Mon Dec 20 22:56:39 2004  Tanaka Akira  <akr@m17n.org>
37082         * gc.c (set_stack_end): gcc noinline attribute is available since
37083           gcc-3.1.
37085 Mon Dec 20 22:40:31 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37087         * added files:
37088           * lib/soap/mapping/wsdl*.rb
37089           * lib/wsdl/soap/element.rb
37090           * lib/wsdl/xmlSchema/simpleContent.rb
37092         * modified files:
37093           * lib/soap/*
37094           * lib/wsdl/*
37095           * lib/xsd/*
37096           * test/soap/*
37097           * test/wsdl/*
37098           * test/xsd/*
37100         * summary
37101           * imported from the soap4r repository.  Version: 1.5.3-ruby1.8.2
37103           * added several XSD basetype support: nonPositiveInteger,
37104             negativeInteger, nonNegativeInteger, unsignedLong, unsignedInt,
37105             unsignedShort, unsignedByte, positiveInteger
37107           * HTTP client connection/send/receive timeout support.
37109           * HTTP client/server gzipped content encoding support.
37111           * improved WSDL schema definition support; still is far from
37112             complete, but is making step by step improvement.
37114 Mon Dec 20 14:45:19 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37116         * lib/net/https.rb: delete descriptions about key_file and cert_file.
37117           fixed: [ruby-dev:25243]
37119         * ext/openssl/lib/net/telnets.rb: ditto.
37121 Mon Dec 20 14:07:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37123         * ext/tk/lib/multi-tk.rb: supports new features of Tcl/Tk8.5a2
37125         * ext/tk/lib/tk/clock.rb: ditto
37127         * ext/tk/lib/tk/text.rb: ditto
37129         * ext/tk/lib/tk/panedwindow.rb: ditto
37131 Mon Dec 20 13:51:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37133         * ext/socket/socket.c (sock_s_getservbyport): [ruby-talk:124072]
37135 Mon Dec 20 10:51:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37137         * parse.y (special_local_set): prevent the parser object from GC.
37138           fixed: [ruby-dev:25252]
37140 Mon Dec 20 03:30:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37142         * lib/cgi/session.rb (CGI::Session#initialize): empty session id was
37143           used if request had no session key.  fixed: [ruby-core:03981]
37145 Mon Dec 20 01:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37147         * struct.c (make_struct): [ruby-dev:25249]
37149 Mon Dec 20 00:16:54 2004  Kouhei Sutou  <kou@cozmixng.org>
37151         * lib/rexml/encodings/SHIFT_JIS.rb: fixed LoadError bug.
37152           [ruby-core:3958]
37154 Sun Dec 19 17:24:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37156         * configure.in (enable_rpath): use rpath flag to embed the library
37157           path into extensions on ELF environment.  [ruby-dev:25035]
37159 Sun Dec 19 11:01:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37161         * lib/test/unit.rb: use standalone runner for -e.
37163         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner#options): accept
37164           multiple -p and -x options.
37166         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#recursive_collect):
37167           ditto.
37169 Sat Dec 18 16:36:23 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37171         * ext/zlib/zlib.c (rb_deflate_s_deflate, rb_inflate_s_inflate):
37172           disallow interrupt by type conversion.  fixed: [ruby-dev:25226]
37174 Sat Dec 18 15:09:02 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
37176         * lib/webrick/httpauth.rb,
37177           lib/webrick/httpauth/{basicauth.rb,digestauth.rb}: use
37178           pack/unpack-template char "m" instead of lib/base64.rb to do base64
37179           encoding/decoding.
37181 Sat Dec 18 10:51:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37183         * dir.c (dir_open_dir): new function.  [ruby-dev:25242]
37185         * io.c (rb_f_open): add type check for return value from to_open.
37187 Fri Dec 17 16:44:26 2004  Tanaka Akira  <akr@m17n.org>
37189         * configure.in (ac_cv_sizeof_rlim_t): set 8 for BSD/OS.
37190           Reported by OHARA Shigeki.  [ruby-dev:25236]
37192 Fri Dec 17 16:28:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37194         * ext/tk/lib/tk.rb: fix bug on setting up system encoding
37196         * ext/tk/lib/tk/event.rb: fix error on require process
37198         * ext/tk/lib/tk/font.rb: fix abnormal termination error on Windows
37200         * ext/tk/lib/tk/virtevent.rb: TkVirtualEvent::PreDefVirtEvent.new()
37201           accepts event-sequence arguments
37203         * ext/tk/lib/tk/text.rb: fail to dump embedded images
37205         * ext/tk/lib/tk/text.rb: tag_nextrange and tag_prevrange returns wrong
37206           types of values
37208         * ext/tk/lib/tk/texttag.rb: nextrange and prevrange returns wrong
37209           types of values
37211         * ext/tk/lib/tk/text.rb: add TkText::IndexModMethods module and
37212           TkText::IndexString class to treat text index modifiers
37214         * ext/tk/lib/tk/texttag.rb: use TkText::IndexModMethods module
37216         * ext/tk/lib/tk/textmark.rb: ditto
37218         * ext/tk/lib/tk/textimage.rb: ditto
37220         * ext/tk/lib/tk/textwindow.rb: ditto
37222         * ext/tk/lib/tk/textimage.rb: wrong gravity of text mark for embedded
37223           image
37225         * ext/tk/lib/tk/textwindow.rb: wrong gravity of text mark for
37226           embedded window
37228 Fri Dec 17 13:33:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37230         * lib/cgi/session.rb (CGI::Session#initialize): control adding
37231           session_id hidden fields.  fixed: [ruby-talk:123850]
37233 Fri Dec 17 00:01:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37235         * eval.c (rb_proc_arity, rb_node_arity, rb_mod_method_arity,
37236           rb_obj_method_arity): new functions to obtain method arity.
37237           [ruby-dev:25143]
37239 Thu Dec 16 23:31:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37241         * lib/mkmf.rb (create_makefile): create RUBYARCHDIR also when no extension
37242           is installed.  fixed: [ruby-dev:25215]
37244 Thu Dec 16 22:36:57 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37246         * test/drb/test_drb.rb: adjust and reduce sleep.
37248 Thu Dec 16 18:37:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37250         * ext/openssl/ossl.c (ossl_raise): refine message format.
37252 Thu Dec 16 16:29:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37254         * ext/tk/sample/demos-en/widget: modify version check for
37255           supporting features
37257 Thu Dec 16 16:03:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37259         * ext/tk/lib/tk/bindtag.rb: bug fix [ruby-talk: 123667]
37261         * ext/tk/lib/tk/timer.rb: accept :idle for the interval argument
37263         * ext/tk/lib/tk.rb: add TkComm._callback_entry?()
37265         * ext/tk/lib/multi-tk.rb: add MultiTkIp.cb_entry_class
37267         * ext/tk/lib/tk/canvas.rb: use TkComm._callback_entry?()
37269         * ext/tk/lib/tk/canvastag.rb: ditto
37271         * ext/tk/lib/tk/dialog.rb: ditto
37273         * ext/tk/lib/tk/optiondb.rb: ditto
37275         * ext/tk/lib/tk/text.rb: ditto
37277         * ext/tk/lib/tk/texttag.rb: ditto
37279         * ext/tk/lib/tk/textwindow.rb: ditto
37281         * ext/tk/lib/tk/timer.rb: ditto
37283         * ext/tk/lib/tk/validation.rb: ditto
37285         * ext/tk/lib/tkextlib/*: ditto
37287 Thu Dec 16 04:02:28 2004  Minero Aoki  <aamine@loveruby.net>
37289         * ext/ripper/extconf.rb: bison is not needed if ripper.c exists.
37290           [ruby-dev:25191]
37292 Thu Dec 16 03:27:10 2004  Minero Aoki  <aamine@loveruby.net>
37294         * lib/net/http.rb: remove junk.
37296 Thu Dec 16 00:57:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37298         * ext/syck/rubyext.c (rb_syck_io_str_read): [ruby-core:03973]
37300 Thu Dec 16 00:43:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37302         * lib/drb/drb.rb: changed default binded address family to use an
37303           available address family of host name. [druby-ja:101]
37305         * lib/drb/ssl.rb: ditto
37307 Wed Dec 15 17:47:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37309         * lib/webrick/server.rb (WEBrick::GenericServer#start_thread):
37310           should log about all accepted socket. [ruby-core:03962]
37312         * lib/webrick/accesslog.rb (WEBrick::AccessLog#setup_params):
37313           "%%" and "%u" are supported. [webricken:135]
37315         * lib/webrick/httpservlet/filehandler.rb
37316           (WEBrick::HTTPServlet::FileHandler#check_filename):
37317           :NondisclosureName is acceptable if it is Enumerable.
37319         * lib/webrick/config.rb (WEBrick::Config::FileHandler):
37320           default value of :NondisclosureName is [".ht*", "*~"].
37322 Wed Dec 15 16:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37324         * object.c (rb_obj_id_obsolete): warn always.
37326 Wed Dec 15 15:31:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37328         * lib/set.rb (Set#==): [ruby-dev:25206]
37330 Wed Dec 15 14:32:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37332         * win32/win32.c (rb_w32_fdisset): check whether the handle is valid.
37334 Wed Dec 15 10:30:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37336         * ext/openssl/ossl_digest.c (ossl_digest_initialize): [ruby-dev:25198]
37338 Tue Dec 14 19:17:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37340         * utf8.c (utf8_is_mbc_ambiguous): [ruby-talk:123561]
37342         * utf8.c (utf8_mbc_to_normalize): ditto.
37344 Tue Dec 14 17:08:15 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37346         * win32/win32.c (rb_w32_close): need to reset osfhnd().
37348 Tue Dec 14 14:03:57 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37350         * ext/openssl/ossl.c (ossl_raise): avoid buffer overrun.
37351           [ruby-dev:25187]
37353 Tue Dec 14 12:36:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37355         * lib/cgi/session.rb (CGI::Session::initialize): generate new
37356           session if given session_id does not exist.  [ruby-list:40368]
37358 Tue Dec 14 08:47:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37360         * eval.c (Init_eval): should mark ruby_eval_tree.  [ruby-dev:25189]
37362 Mon Dec 13 18:13:52 2004  Tanaka Akira  <akr@m17n.org>
37364         * gc.c (set_stack_end): new function to obtain stack end address.
37365           set_stack_end obtains a stack end address by an address of local
37366           variable in the function.
37367           (SET_STACK_END, STACK_END): use set_stack_end.  don't use alloca.
37368           This makes the conservative garbage collector to scan a stack frame
37369           of the garbage_collect function itself.  This is required because
37370           callee-save registers may be stored in the frame.
37371           [ruby-dev:25158]
37373 Mon Dec 13 02:45:51 2004  Shugo Maeda  <shugo@ruby-lang.org>
37375         * ext/curses/curses.c (window_subwin): call NUM2INT() before
37376           GetWINDOW(). fixed: [ruby-dev:25161]
37378 Mon Dec 13 00:58:02 2004  Tanaka Akira  <akr@m17n.org>
37380         * lib/pathname.rb (cleanpath_aggressive): make it private.
37381           (cleanpath_conservative): ditto.
37382           Suggested by Daniel Berger.  [ruby-core:3914]
37384 Sun Dec 12 21:32:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37386         * test/ruby/test_super.rb (TestSuper#test_define_method): now methods
37387           from procs can call super.
37389 Sun Dec 12 10:35:10 2004  Dave Thomas  <dave@pragprog.com>
37391         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Don't
37392           show an accessor's r/w flag if none was specified
37394 Sun Dec 12 10:14:03 2004  Dave Thomas  <dave@pragprog.com>
37396         * lib/rdoc/rdoc.rb (RDoc::RDoc::parse_files): Never exclude files
37397           explicitly given on the command line.
37399 Sat Dec 11 21:10:16 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
37401         * lib/drb/drb.rb: add DRbRemoteError. [ruby-list:40348],
37402           [ruby-list:40390]
37404         * test/drb/drbtest.rb: ditto.
37406         * test/drb/ut_drb.rb: ditto.
37408 Sat Dec 11 13:08:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37410         * sample/optparse/subcommand.rb: a sample for sub commands like
37411           cvs.  contributed by Minero Aoki.
37413 Fri Dec 10 08:39:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37415         * ext/socket/socket.c (sock_listen): get OpenFile just before calling
37416           listen(2).
37418 Thu Dec  9 16:28:35 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37420         * ext/sdbm/init.c (GetDBM): typo.
37422 Thu Dec  9 16:21:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37424         * lib/webrick/cgi.rb (WEBrick::CGI#setup_header): avoid
37425           SecurityError. [ruby-dev:24970]
37427         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should wait
37428           for reading request till data arrive. [ruby-talk:121068]
37430 Thu Dec  9 14:38:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37432         * string.c (rb_str_inspect): escape # which starts an expression
37433           substitution.  fixed: [ruby-core:03922]
37435         * string.c (rb_str_dump): not escape # which isn't a substitution.
37437 Thu Dec  9 12:31:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37439         * io.c (pipe_open): should set prog if argc != 0.
37441 Thu Dec  9 10:54:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37443         * ext/dbm/dbm.c (fdbm_select): [ruby-dev:25132]
37445         * ext/sdbm/init.c: ditto.
37447         * ext/gdbm/gdbm.c: ditto.
37449 Thu Dec  9 10:19:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37451         * test/socket/test_socket.rb (test_setsockopt): use SO_LINGER instead
37452           of SO_BINDTODEVICE.  fixed: [ruby-dev:25133]
37454 Thu Dec  9 03:08:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37456         * ext/tcltklib/tcltklib.c (ip_init): set root-win title to "ruby" when
37457           the running script is '-e one-liner' or '-' (stdin).
37459         * ext/tcltklib/extconf.rb: add find_library("#{lib}#{ver}",..) for
37460           stub libs
37462         * ext/tk/lib/tk/textmark.rb: TkTextMarkCurrent and TkTextMarkAnchor
37463           have a wrong parent class.
37465         * ext/tk/lib/tk/dialog.rb: rename TkDialog2 --> TkDialogObj and
37466           TkWarning2 --> TkWarningObj (old names are changed to alias names)
37468         * ext/tk/lib/tk/dialog.rb: bug fix of treatment of 'prev_command'
37469           option and hashes for configuration
37471         * ext/tk/lib/tk/dialog.rb: add TkDialogObj#name to return the
37472           button name
37474         * ext/tk/lib/tk/radiobutton.rb: rename enbugged method value() ==>
37475           get_value() and value=(val) ==> set_value(val).
37477         * ext/tk/lib/tk/menu.rb: add TkMenu.new_menuspec
37479         * ext/tk/lib/tk/menu.rb: add alias (TkMenuButton = TkMenubutton,
37480           TkOptionMenuButton = TkOptionMenubutton)
37482         * ext/tk/lib/tk/event.rb: new method aliases (same as option keys of
37483           event_generate) for Event object
37485         * ext/tk/lib/tk/font.rb: configinfo returns proper types of values
37487         * ext/tk/lib/tk.rb: bind methods accept subst_args + block
37489         * ext/tk/lib/tk/canvas.rb: ditto
37491         * ext/tk/lib/tk/canvastag.rb: ditto
37493         * ext/tk/lib/tk/frame.rb: ditto
37495         * ext/tk/lib/tk/text.rb: ditto
37497         * ext/tk/lib/tk/texttag.rb: ditto
37499         * ext/tk/lib/tk/toplevel.rb: ditto
37501         * ext/tk/lib/tkextlib/*: ditto and bug fix
37503 Wed Dec  8 23:54:29 2004  Dave Thomas  <dave@pragprog.com>
37505         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Typo
37506           meant that h2 tag was invisible.
37508 Wed Dec  8 22:10:02 2004  Tanaka Akira  <akr@m17n.org>
37510         * rubyio.h, io.c, ext/dl/dl.c, ext/pty/pty.c, ext/socket/socket.c:
37511           create FILE object only when required: popen(3) and DL's IO#to_ptr.
37512           [ruby-dev:25122]
37514         * io.c (rb_io_binmode): use setmode for Human68k.  [ruby-dev:25121]
37516 Wed Dec  8 20:13:06 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37518         * process.c (rb_spawn): support for DJGPP.
37520         * lib/mkmf.rb (VPATH): specify the implicit path separator for DJGPP.
37522 Wed Dec  8 17:48:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37524         * eval.c (proc_invoke): merge Guy Decoux's argument preserve
37525           patch in [ruby-core:03874].
37527 Wed Dec  8 17:37:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37529         * win32/win32.c (rb_w32_pipe_exec): need to close original socket
37530           handle.
37532 Wed Dec  8 14:31:36 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37534         * sprintf.c (rb_f_sprintf): [ruby-dev:25104]
37536 Wed Dec  8 13:49:46 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37538         * win32/win32.c (rb_w32_pipe_exec): must close original handle
37539           before exec. fixed: [ruby-dev:25112]
37541 Wed Dec  8 11:46:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37543         * parse.y (string_content): get rid of segfault at empty evstr.
37544           fixed: [ruby-dev:25113]
37546 Wed Dec  8 03:26:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37548         * ext/openssl/ossl_bio.c (ossl_obj2bio): should not use fptr->f.
37549           [ruby-dev:25101]
37551 Wed Dec  8 03:26:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37553         * runruby.rb: prepend LIBRUBY_SO to LD_PRELOAD as well as rubytest.rb.
37555 Wed Dec  8 01:35:44 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37557         * win32/win32.c (is_socket): reorder of function definitions.
37559 Wed Dec  8 00:44:31 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37561         * io.c (pipe_open): win32 bidirectional pipe support.
37563         * win32/win32.[ch] (rb_w32_pipe_exec): ditto.
37565         * win32/win32.[ch] (socketpair): new function. POSIX socketpair
37566           emulation.
37568         * win32/win32.c (socketpair_internal): ditto.
37570 Wed Dec  8 00:25:07 2004  Kouhei Sutou  <kou@cozmixng.org>
37572         * test/rss/test_version.rb: added version check test.
37573           [ruby-dev:25053]
37575 Tue Dec  7 15:40:38 2004  Tanaka Akira  <akr@m17n.org>
37577         * io.c (io_fwrite): avoid context switch before writing to stderr.
37578           [ruby-dev:25080]
37580         * rubyio.h: refine deprecated declaration.
37582         * configure.in, file.c, io.c: remove useless check: fseeko, etc.
37584 Tue Dec  7 13:42:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37586         * dir.c (dir_s_mkdir): win32 special processing doesn't need any
37587           longer.
37589         * win32/win32.[ch] (rb_w32_mkdir): new function. POSIX.1 compatible
37590           interface.
37592         * win32/win32.[ch] (rb_w32_rmdir): new function.
37594 Tue Dec  7 00:27:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37596         * process.c (proc_setgroups): [ruby-dev:25081]
37598 Mon Dec  6 23:07:57 2004  Tanaka Akira  <akr@m17n.org>
37600         * configure.in: check -lsocket for socketpair and shutdown.
37601           reported by Ville Mattila.  [ruby-core:03903]
37603 Mon Dec  6 23:00:45 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37605         * configure.in (ac_cv_sizeof_rlim_t): setup for DJGPP.
37607         * io.c (is_socket, shutdown): define dummy macros for DJGPP.
37609         * process.c: use SIZEOF_RLIM_T instead of HAVE_RLIM_T for DJGPP.
37611 Mon Dec  6 21:19:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37613         * io.c (is_socket): fix typos. [ruby-core:03900]
37615 Mon Dec  6 20:13:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37617         * io.c (is_socket): new function.
37619         * io.c (rb_io_close_read, rb_io_close_write): use is_socket().
37621         * io.c (rb_io_fptr_finalize): need to check fptr->f before calling
37622           rb_io_fptr_cleanup().
37624         * io.c (pipe_open): win32 pipe support (experimental).
37626         * win32/win32.[ch] (rb_w32_pipe_exec): return file descriptors
37627           instead of FILE structure objects.
37629         * win32/win32.[ch] (rb_w32_is_socket): new function.
37631 Mon Dec  6 19:40:40 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37633         * Makefile.in (.y.c): simplify the rule.
37635 Mon Dec  6 18:08:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37637         * re.c (rb_reg_eqq): document fix.  [ruby-talk:122541]
37639 Mon Dec  6 17:49:30 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37641         * eval.c (run_trap_eval): add prototype for Microsoft compiler.
37643 Mon Dec  6 17:32:38 2004  Tanaka Akira  <akr@m17n.org>
37645         * rubyio.h, intern.h, io.c, file.c, process.c, ext/socket/socket.c,
37646           ext/pty/pty.c, ext/io/wait/wait.c, ext/openssl/ossl_ssl.c:
37647           Use own buffering mechanism instead of stdio.  [ruby-dev:25056]
37649         * io.c, ext/stringio/stringio.c, test/ruby/ut_eof.rb:
37650           EOF flag removed.
37652 Mon Dec  6 17:15:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37654         * test/socket/test_socket.rb (TestBasicSocket#test_setsockopt):
37655           BasicSocket#setsockopt dumps core.  [ruby-dev:25039]
37657         * test/socket/test_tcp.rb (TestTCPSocket#test_recvfrom):
37658           TCPSocket#recvfrom dumps core.  [ruby-dev:24705]
37660         * test/socket/test_udp.rb (TestUDPSocket#test_connect):
37661           UDPSocket#connect dumps core.  [ruby-dev:25045]
37663         * test/socket/test_udp.rb (TestUDPSocket#test_bind):
37664           UDPSocket#bind dumps core.  [ruby-dev:25057]
37666 Mon Dec  6 09:59:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37668         * io.c (io_fread): take VALUE argument.
37670         * ext/socket/socket.c (sock_connect): use rb_str_new4().
37671           [ruby-dev:25052]
37673         * eval.c (rb_yield_0): [ruby-dev:25051]
37675 Mon Dec  6 01:32:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
37677         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_public_encrypt,
37678           ossl_rsa_public_decrypt, ossl_rsa_private_encrypt,
37679           ossl_rsa_private_decrypt): should take an optional argument
37680           to specify padding mode. [ruby-talk:122539]
37682         * ext/openssl/ossl_pkey_rsa.c (Init_ossl_rsa): add new constants
37683           PKCS1_PADDING, SSLV23_PADDING, NO_PADDING and PKCS1_OAEP_PADDING
37684           under OpenSSL::PKey::RSA.
37686         * test/openssl/test_pkey_rsa.rb: new file.
37688 Sun Dec  5 19:39:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37690         * lib/optparse.rb (OptionParser::Completion#complete): new parameter
37691           to direct case insensitiveness.
37693         * lib/optparse.rb (OptionParser#order!): ignore case only for long
37694           option.  [ruby-dev:25048]
37696 Sun Dec  5 00:54:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37698         * mkconfig.rb: setup library paths before requiring library.
37699           [ruby-core:03892]
37701 Sat Dec  4 22:54:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37703         * io.c (io_write): remove rb_str_locktmp().  [ruby-dev:25050]
37705         * io.c (io_fwrite): takes VALUE string as an argument.
37706           [ruby-dev:25050]
37708         * ext/socket/socket.c (sock_connect): remove rb_str_locktmp().
37709           [ruby-dev:25050]
37711         * ext/socket/socket.c (udp_connect): [ruby-dev:25045]
37713         * ext/socket/socket.c (udp_bind): ditto.
37715         * ext/socket/socket.c (udp_send): ditto.
37717         * ext/socket/socket.c (bsock_send): ditto.
37719         * ext/socket/socket.c (s_recvfrom): ditto.
37721         * hash.c (rb_hash_hash): should provide "hash" method where "eql?"
37722           is redefined.  [ruby-talk:122482]
37724 Sat Dec  4 21:29:05 2004  Minero Aoki  <aamine@loveruby.net>
37726         * lib/fileutils.rb: (In previous commit) new method chown.
37728         * lib/fileutils.rb: (In previous commit) new method chown_R.
37730         * lib/fileutils.rb: (In previous commit) new method chmod_R
37731           wrongly added.  Removed now.
37733 Sat Dec  4 20:45:52 2004  Minero Aoki  <aamine@loveruby.net>
37735         * lib/fileutils.rb (mkdir, mkdir_p): should chmod explicitly.
37736           [ruby-core:03881]
37738 Sat Dec  4 18:54:09 2004  Kouhei Sutou  <kou@cozmixng.org>
37740         * lib/rss/rss.rb: removed empty lines from output.
37742 Sat Dec  4 18:49:09 2004  Kouhei Sutou  <kou@cozmixng.org>
37744         * lib/rss/rss.rb (RSS::VERSION): 0.1.1 -> 0.1.2
37746         * lib/rss/rss.rb: #item=/#set_item and so on are obsolete.
37748 Sat Dec  4 14:28:56 2004  Dave Thomas  <dave@pragprog.com>
37750         * lib/rdoc/code_objects.rb (RDoc::Context::Section::set_comment):
37751           Section comments may now be bracketed by lines which are
37752           ignored. You can now write
37753               # -----------
37754               # :section: Dave's Section
37755               # comment material
37756               # -----------
37757            The lines before :section: are removed, and identical lines at the end are
37758            also removed if present.
37760 Sat Dec  4 00:35:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37762         * ext/socket/socket.c (bsock_setsockopt): [ruby-dev:25039]
37764 Fri Dec  3 12:25:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37766         * st.h: fix prototype for C++.
37768 Fri Dec  3 01:55:24 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
37770         * ext/tk/lib/tk.rb: widget configuration by TkWindow#method_missing
37771           returns proper object. "widget.option = val" returns val, and
37772           "widget.option(val)" returns self.
37774         * ext/tk/lib/tk/font.rb: TkFont#replace accepts only one font argument.
37776         * ext/tk/lib/tk/radiobutton.rb: add TkRadiobutton#value and
37777           TkRadiobutton#value=(val).
37779         * ext/tk/lib/tk/spinbox.rb: callback substitution support on
37780           command option.
37782         * ext/tk/sample/demos-en/widget: bug fix (wrong image height)
37784         * ext/tk/sample/demos-jp/widget: ditto.
37786 Fri Dec  3 00:21:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37788         * eval.c (proc_invoke): prepare to pass a block from "call" method
37789           to a Proc generated by Method#to_proc.  [ruby-dev:25031]
37791         * eval.c (rb_yield_0): actually passes a block given to "call".
37793         * object.c (convert_type): use rb_respond_to() again.  this fix is
37794           based on [ruby-dev:25021]
37796         * eval.c (rb_respond_to): funcall respond_to? if it's redefined.
37797           [ruby-dev:25021]
37799 Thu Dec  2 15:13:53 2004  Michael Neumann  <mneumann@ruby-lang.org>
37801         * test/xmlrpc/test_parser.rb, test/xmlrpc/data/*.expected: Expected
37802           values are now stored in YAML instead of using #inspect. This fixes
37803           false hash order.
37805 Fri Dec  3 00:11:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37807         * io.c (rb_file_initialize): [ruby-dev:25032]
37809 Thu Dec  2 16:41:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37811         * eval.c (rb_protect): prevent continuations created inside from being
37812           called from the outside.  [ruby-dev:25003]
37814         * eval.c (rb_callcc, rb_cont_call): prohibit calling from different
37815           signal contexts.  [ruby-dev:25022]
37817 Thu Dec  2 10:45:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
37819         * test/readline/test_readline.rb: fix for NetBSD.
37821 Thu Dec  2 09:57:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37823         * lib/ostruct.rb (OpenStruct::Marshaler): OpenStruct can be
37824           marshaled again.  [ruby-core:03862]
37826 Thu Dec  2 09:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37828         * eval.c (thread_mark): mark thread group.  [ruby-dev:25020]
37830         * eval.c (thgroup_add): check whether the argument is really a Thread.
37832 Thu Dec  2 07:57:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37834         * io.c (rb_io_ctl): [ruby-dev:25019]
37836 Wed Dec  1 06:13:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
37838         * ext/nkf/nkf.c: add constant NKF::VERSION
37840         * ext/nkf/nkf.c(guess): this becomes an alias of guess2
37842         * ext/nkf/test.rb: add --no-cp932
37844         * ext/nkf/nkf-utf8/nkf.c: original nkf2 revision 1.47
37846 Wed Dec  1 02:21:02 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37848         * signal.c (sighandler): call handler immediately only for default
37849           handlers.  [ruby-dev:25003]
37851 Tue Nov 30 23:49:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37853         * io.c (pipe_open): errno should be preserved for rb_sys_fail() when
37854           fork failed.
37856 Tue Nov 30 16:18:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37858         * io.c (io_fread): need not to null terminate.  [ruby-dev:24998]
37860         * eval.c (rb_eval): should check previous frame for ZSUPER.
37862         * io.c (read_all): remove unnecessary rb_str_resize().
37863           [ruby-dev:24996]
37865         * io.c (io_readpartial): ditto.
37867         * io.c (io_read): ditto.
37869 Tue Nov 30 14:58:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
37871         * instruby.rb (install): add arguments explicitly to "super".
37873 Tue Nov 30 00:49:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37875         * eval.c (PUSH_FRAME): flags should have been initialized.
37877         * eval.c (rb_eval): [ruby-core:03856]
37879         * io.c (rb_io_sysread): use temporary lock.  [ruby-dev:24992]
37881 Tue Nov 30 00:12:57 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37883         * regparse.c: now handles many alternatives (over 500000)
37884           in regexp. [ruby-dev:24773]
37886 Mon Nov 29 16:06:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37888         * ext/stringio/stringio.c (strio_write): insufficiently filled string
37889           being extended when overwriting.  [ruby-core:03836]
37891 Mon Nov 29 15:59:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37893         * lib/ostruct.rb (OpenStruct::method_missing): check method
37894           duplication for -d.
37896         * lib/ostruct.rb (OpenStruct::initialize): ditto.
37898 Mon Nov 29 15:22:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37900         * test/io/nonblock/test_flush.rb: abandon tests when io/nonblock is
37901           not supported.
37903 Mon Nov 29 13:37:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
37905         * io.c (fptr_finalize): must not use FILE after fclose().
37906           [ruby-dev:24985]
37908 Mon Nov 29 13:13:13 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
37910         * win32/win32.c (CreateChild): push back the last space before next
37911           loop because CharNext() eats it.
37913 Mon Nov 29 03:08:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37915         * object.c (convert_type): [ruby-core:03845]
37917         * eval.c (rb_funcall_rescue): new function.
37919         * object.c (rb_Array): avoid using rb_respond_to().
37921         * object.c (rb_Integer): ditto.
37923         * eval.c (get_backtrace): no conversion for nil.
37925         * parse.y (reduce_nodes): empty body should return nil.
37927 Mon Nov 29 01:18:18 2004  Tanaka Akira  <akr@m17n.org>
37929         * io.c (rb_io_check_writable): call io_seek regardless of
37930           NEED_IO_SEEK_BETWEEN_RW.  [ruby-dev:24986]
37932 Sun Nov 28 15:57:58 2004  Kouhei Sutou  <kou@cozmixng.org>
37934         * lib/rss/rss.rb (RSS::Element#tag): not use block_given? for
37935           working with ruby 1.6 again.
37937         * lib/rss/{0.9,2.0,trackback}.rb, lib/rss/maker/base.rb:
37938           undef -> remove_method for working with ruby 1.6 again.
37940 Sun Nov 28 15:51:40 2004  Kouhei Sutou  <kou@cozmixng.org>
37942         * lib/rss/rss.rb (RSS::NotSetError): added.
37944         * lib/rss/maker/{1.0,0.9,2.0}.rb: changed RSS Maker to raise
37945           RSS::NotSetError if required values of maker.channel are not
37946           set. [ruby-talk:120061]
37948         * test/rss/test_maker_{1.0,0.9,2.0}.rb: changed tests to check RSS
37949           Maker raises or not.
37951 Sun Nov 28 12:14:47 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37953         * regparse.c (fetch_token): fixed test failure on HP-UX ia64
37954           ([ruby-dev:24859]).
37956 Sun Nov 28 12:08:15 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37958         * regparse.c, test/ruby/test_regexp.rb: fixed problem with UTF-8
37959           characters that have U+00FE or invalid characters.
37961 Sun Nov 28 12:07:04 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37963         * regexec.c, test/ruby/test_regexp.rb: fixed segmentation fault
37964           ([ruby-dev:24887]).
37966 Sun Nov 28 12:05:48 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
37968         * regcomp.c, regint.h: fixed PLATFORM_UNALIGNED_WORD_ACCESS
37969           problem ([ruby-dev:24802] and [ruby-core:3733])
37971 Sat Nov 27 23:43:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
37973         * io.c (rb_io_initialize): [ruby-dev:24972]
37975 Sat Nov 27 21:43:39 2004  Tanaka Akira  <akr@m17n.org>
37977         * io.c: avoid data lost with nonblocking fd and
37978           stdio buffering in sync mode.  [ruby-dev:24966]
37979           based on matz's patch [ruby-dev:24967]
37980           (io_fwrite): new primitive writing function which writes
37981           directly if sync mode.
37982           (rb_io_fwrite): wrapper for io_fwrite now.
37983           (io_write): call io_fwrite instead of rb_io_fwrite.
37985 Sat Nov 27 17:43:21 2004  Kouhei Sutou  <kou@cozmixng.org>
37987         * lib/rss/{0.9,1.0,2.0,trackback,xml-stylesheet}.rb: added
37988           #setup_maker.
37990         * test/rss/test_setup_maker_*.rb: added tests for #setup_maker.
37992         * lib/rss/maker/base.rb(RSS::Maker::Items#max_size=): supported
37993           output item size limitation.
37995         * sample/rss/blend.rb: added sample for RSS Maker.
37997 Sat Nov 27 17:41:35 2004  Kouhei Sutou  <kou@cozmixng.org>
37999         * lib/rss/maker/0.9.rb: supported RSS::Maker.make("0.91"). Now,
38000           "0.9" is just alias of "0.91."
38002         * test/rss/test_maker_0.9.rb: make("0.9") -> maker("0.91").
38004         * test/rss/test_to_s.rb: ditto.
38006 Sat Nov 27 17:21:30 2004  Kouhei Sutou  <kou@cozmixng.org>
38008         * sample/rss/list_description.rb: untabified.
38010         * sample/rss/rss_recent.rb: ditto.
38012 Sat Nov 27 14:44:15 2004  Kent Sibilev  <ksibilev@bellsouth.net>
38014         * lib/cgi/session.rb (CGI::Session::initialize): [ruby-core:03832]
38016 Sat Nov 27 09:41:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38018         * io.c (io_fread): old rb_io_fread with file closing checking.
38019           (rb_io_fread): wrapper for io_fread now.
38020           [ruby-dev:24964]
38022 Fri Nov 26 18:02:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38024         * ext/tk/lib/tk.rb: Tk.destroy uses TkWindow#epath
38026         * ext/tk/lib/tk/image.rb: bug fix
38028         * ext/tk/lib/tk/wm.rb: add 'iconphoto' method(Windows only)
38030         * ext/tk/lib/tkextlib/*: some methods uses TkWindow#epath
38032 Fri Nov 26 14:29:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38034         * io.c (rb_io_initialize): uninitialized fd was checked to see open
38035           mode.  [ruby-dev:24963]
38037         * io.c (rb_io_initialize): uninitialized fd was used.  [ruby-dev:24962]
38039 Fri Nov 26 13:49:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38041         * io.c (rb_io_initialize): should retrieve flags from copying file
38042           descriptor. [ruby-dev:24961]
38044         * eval.c (method_missing): raise TypeError for classes do not
38045           have allocators.  [ruby-core:03752]
38047         * lib/erb.rb: add RDoc by James Edward Gray II.  [ruby-core:03786]
38049 Fri Nov 26 13:29:02 2004  Dave Thomas  <dave@pragprog.com>
38051         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::look_for_directives_in): Break
38052           out of preprocessing when we find a :section: directive (previously cleared out the
38053           comment, but this apparently now generates an error in gsub!)
38055 Fri Nov 26 00:17:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38057         * io.c (io_read): move StringValue() check before GetOpenFile().
38058           [ruby-dev:24959]
38060 Thu Nov 25 20:14:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38062         * lib/thwait.rb (ThreadsWait#join_nowait): abnormally terminated
38063           threads should be also processed.  [ruby-talk:121320]
38065 Thu Nov 25 18:06:37 2004  Tanaka Akira  <akr@m17n.org>
38067         * configure.in: AC_CHECK_SIZEOF(rlim_t) to include stdio.h to fix
38068           problem with autoconf 2.52 or earlier.
38069           revert AC_PREREQ to 2.50.
38070           [ruby-core:3809]
38072 Thu Nov 25 07:59:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38074         * configure.in: AC_PREREQ(2.53) [ruby-core:03800]
38076         * io.c (read_all): stringify non-nil buffer argument, and always
38077           taint the result.  [ruby-dev:24955]
38079 Wed Nov 24 01:01:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38081         * io.c (io_read): integer conversion should be prior to
38082           GetOpenFile().  [ruby-dev:24952]
38084         * configure.in, io.c: cancel [ ruby-Patches-1074 ].
38086 Tue Nov 23 08:09:50 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38088         * ext/tk/lib/tk/menu.rb: improve usability of TkOptionMenubutton
38090 Tue Nov 23 02:00:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38092         * file.c (rb_file_chown): integer conversion should be prior to
38093           GetOpenFile().  [ruby-dev:24949]
38095 Tue Nov 23 00:10:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38097         * file.c (rb_file_chown): integer conversion should be prior to
38098           GetOpenFile().  [ruby-dev:24947]
38100         * file.c (rb_file_truncate): ditto.
38102         * file.c (rb_file_s_truncate): ditto.
38104         * dir.c (dir_seek): use NUM2OFFT().
38106         * misc/ruby-mode.el (ruby-non-block-do-re): [ruby-core:03719]
38108 Mon Nov 22 22:33:02 2004  Dave Thomas  <dave@pragprog.com>
38110         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Don't use names
38111           of variables or constants when parsing 'require'
38113 Mon Nov 22 00:13:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38115         * dir.c (dir_seek): should retrieve dir_data after NUM2INT().
38116           [ruby-dev:24941]
38118 Sat Nov 20 23:57:33 2004  Dave Thomas  <dave@pragprog.com>
38120         * lib/rdoc/README (et al): Add a new directive, :section:, and
38121           change the output format to accommodate. :section: allows to to
38122           group together methods, attributes, constants, etc under
38123           headings in the output. If used, a table of contents is
38124           generated.
38126 Sat Nov 20 23:56:54 2004  Dave Thomas  <dave@pragprog.com>
38128         * lib/rdoc/options.rb (Options::parse): Force --inline-source if
38129           --one-file option given
38131 Sat Nov 20 23:55:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38133         * string.c (rb_str_splice): should place index wrapping after
38134           possible modification.  [ruby-dev:24940]
38136 Sat Nov 20 23:25:12 2004  Minero Aoki  <aamine@loveruby.net>
38138         * io.c (rb_io_getline): f.gets("") did not work. [ruby-core:03771]
38140         * test/ruby/test_io.rb (test_gets_rs): test it.
38142 Sat Nov 20 22:55:09 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38144         * test/runner.rb (CROSS_COMPILING): need to require rbconfig.rb before
38145           using CROSS_COMPILNG.
38147 Sat Nov 20 20:42:42 2004  Minero Aoki  <aamine@loveruby.net>
38149         * ext/ripper/depend: fix ripper.o dependency.
38151 Sat Nov 20 17:48:29 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38153         * io.c (io_reopen): work around problem with Cygwin fseeko
38154           returning ESPIPE.
38156 Sat Nov 20 05:34:24 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38158         * ext/nkf/nkf-utf8/nkf.c: original nkf.c rev:1.40
38160         * ext/nkf/test.rb: add test for mime encode/decode
38162 Sat Nov 20 01:45:04 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38164         * test/xmlrpc/test_webrick_server.rb: move `requrie "webrick/https"'
38165           into #setup_http_server method to avoid soap test errors.
38167 Sat Nov 20 01:37:34 2004  Johan Holmberg  <holmberg@iar.se>
38169         * eval.c (error_print): nicer traceback at interrupt.
38170           [ruby-core:03774]
38172 Sat Nov 20 00:07:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38174         * string.c (str_gsub): internal buffer should not be listed by
38175           ObjectSpace.each_object() by String#gsub.  [ruby-dev:24931]
38177 Fri Nov 19 22:44:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38179         * lib/test/unit/collector/dir.rb: better support for -p/-x option.
38181 Fri Nov 19 17:46:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38183         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Image#have_required_values):
38184           changed /rss/channel/image to be optional. [ruby-Bugs:1047]
38186         * test/rss/test_maker_0.9.rb: added tests for the above.
38188 Fri Nov 19 17:18:17 2004  Kouhei Sutou  <kou@cozmixng.org>
38190         * lib/rss/rss.rb (RSS::VERSION): 0.1.0 -> 0.1.1.
38192         * lib/rss: #to_s used #tag.
38194         * test/rss/test_to_s.rb: added.
38196         * lib/rss/maker.rb (RSS::Maker.make): changed API. It's not
38197           received modules which is used as the second argument.
38199         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#alternate):
38200           changed return value type which is not String but Boolean.
38202         * lib/rss/2.0.rb (RSS::Rss::Channel#ttl): changed return value
38203           type which is not String but Integer.
38205         * lib/rss/0.9.rb (RSS::Rss::Channel): <skipDays> has <day>s and
38206           <skipHours> has <hour>s.
38208         * lib/rss/maker/0.9.rb (RSS::Maker::RSS09::Channel): ditto.
38210         * lib/rss/0.9.rb (RSS::Rss::Channel::Item): <item> has <category>s.
38212         * lib/rss/maker/2.0.rb (RSS::Maker::Rss20::Channel::Item): ditto.
38214         * lib/rss/2.0.rb (RSS::Rss::Channel): <channel> has <category>s.
38216         * lib/rss/maker/2.0.rb (RSS::Maker::RSS20::Channel): ditto.
38218         * lib/rss/trackback.rb: parent element has <trackback:about>s.
38220         * lib/rss/maker/trackback.rb: ditto.
38222 Fri Nov 19 11:10:16 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38224         * lib/test/unit/collector/dir.rb: add support for directory name
38225           with -p/-x options.
38227         * test/testunit/collector/test_dir.rb: ditto.
38229         * lib/xmlrpc/datetime.rb (XMLRPC::DateTime#==): should use Array()
38230           instead of to_a.
38232 Fri Nov 19 10:32:36 2004  Shugo Maeda  <shugo@ruby-lang.org>
38234         * ext/readline/readline.c (readline_s_set_completion_append_character):
38235           accept nil.  [ruby-core:03765]
38237 Fri Nov 19 01:20:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38239         * lib/cgi/session.rb (CGI::Session::FileStore::initialize): raise
38240           exception if data corresponding to session specified from the
38241           client does not exist.
38243 Fri Nov 19 00:59:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38245         * string.c (str_gsub): internal buffer should not be listed by
38246           ObjectSpace.each_object().  [ruby-dev:24919]
38248 Thu Nov 18 23:42:36 2004  Minero Aoki  <aamine@loveruby.net>
38250         * ext/ripper/depend: Never regenerate lib/ripper/core.rb
38251           automatically. [ruby-dev:24911]
38253 Thu Nov 18 20:47:24 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38255         * win32/win32.[ch] (rb_w32_isatty): new function to replace MSVCRT's
38256           isatty because it never sets errno.
38258 Thu Nov 18 18:41:08 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38260         * test/ruby/test_stringchar.rb (test_bang): added.
38262         * string.c (rb_str_upcase_bang, rb_str_capitalize_bang)
38263           (rb_str_swapcase_bang): missing rb_str_modify().
38265 Thu Nov 18 17:05:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38267         * parse.y (f_rest_arg): store rest args into invisible local variable
38268           in order to get rid of SEGV at ZSUPER.  [ruby-dev:24913]
38270 Thu Nov 18 15:39:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38272         * hash.c (rb_f_getenv): prohibit for $SAFE=4. [ruby-dev:24908]
38274 Thu Nov 18 14:58:42 2004  Shugo Maeda  <shugo@ruby-lang.org>
38276         * ext/readline/readline.c: check $SAFE.
38278         * test/readline/test_readline.rb: added tests for readline.
38280 Thu Nov 18 00:21:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38282         * process.c (proc_getpgrp): prohibit for $SAFE=2.
38283           [ruby-dev:24899]
38285         * process.c (get_pid): ditto.  [ruby-dev:24904]
38287         * process.c (get_ppid): ditto.
38289         * array.c (rb_ary_delete): defer rb_ary_modify() until actual
38290           modification.  [ruby-dev:24901]
38292 Thu Nov 18 10:10:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38294         * io.c, rubyio.h (rb_io_modenum_flags): exported.
38296         * ext/stringio/stringio.c (strio_initialize): allow Fixnum as mode as
38297           well as IO.new does.  [ruby-dev:24896]
38299 Wed Nov 17 23:47:30 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38301         * test/ruby/test_settracefunc.rb: added.  [ruby-dev:24884]
38303 Wed Nov 17 18:59:16 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
38305         * process.c (proc_getrlimit, proc_setrlimit): add rb_secure(2) to
38306           methods of Process.{getrlimit,setrlimit}
38308 Wed Nov 17 13:56:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38310         * parse.y (newline_node): should not use FL_SET. [ruby-dev:24874]
38312         * parse.y (string_content): should not use FL_UNSET.
38314         * node.h (NODE_NEWLINE): remove unused bit to utilize flag field
38315           in nodes.
38317 Wed Nov 17 13:05:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38319         * dir.c (rb_push_glob): fix overrun.  [ruby-dev:24886]
38321 Wed Nov 17 11:48:17 2004  Michael Neumann  <mneumann@ruby-lang.org>
38323         * lib/xmlrpc/parser.rb, test/xmlrpc/test_features.rb: fixed "assigning
38324           to constants" warnings
38326 Wed Nov 17 09:38:18 2004  Johan Holmberg  <holmberg@iar.se>
38328         * re.c (rb_reg_initialize_m): should raise exception instead of
38329           compile error.  [ruby-core:03755]
38331 Wed Nov 17 03:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38333         * string.c (rb_str_splice): move rb_str_modify() after
38334           StringValue(), which may alter the receiver.  [ruby-dev:24878]
38336         * error.c (rb_error_frozen): now raise RuntimeError instead of
38337           TypeError.
38339 Tue Nov 16 21:22:47 2004  Michael Neumann  <mneumann@ruby-lang.org>
38341         * lib/xmlrpc/server.rb (CGIServer): fixed bug when client sends
38342           "Content-typ: text/xml; ..."
38344 Tue Nov 16 23:45:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38346         * numeric.c (flo_divmod): protect float values from GC by
38347           assignment to local variables.  [ruby-dev:24873]
38349 Tue Nov 16 14:31:54 2004  Michael Neumann  <mneumann@ruby-lang.org>
38351         * test/xmlrpc/*: imported and refactored original test cases.
38353         * test/xmlrpc/test_webrick_server.rb, test/xmlrpc/webrick_testing.rb:
38354           added test case that starts up a WEBrick XML-RPC server and performs
38355           some tests on it (both http and https servers are started).
38357         * lib/xmlrpc/create.rb (XMLWriter::each_installed_writer),
38358           lib/xmlrpc/parser.rb (XMLParser::each_installed_parser):
38359           added methods to simply original test cases
38361         * lib/xmlrpc/parser.rb, lib/xmlrpc/datetime.rb: applied patch by
38362           MoonWolf <moonwolf@moonwolf.com> to allow parsing datetime.iso8601
38363           (e.g. 20041105T01:15:23Z).
38365         * lib/xmlrpc/server.rb: fixed issue #998
38366           (http://rubyforge.org/tracker/?func=detail&atid=1700&aid=998&group_id=426)
38368         * lib/xmlrpc/create.rb, lib/xmlrpc/utils.rb: when marshalling/loading
38369           user-defined data structures, use Class#allocate instead of defining
38370           an empty #initialize method. module XMLRPC::Marshallable is now only
38371           used for tagging.
38373         * lib/xmlrpc/.document, lib/xmlrpc/README.rdoc: added howto
38375 Tue Nov 16 16:26:12 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38377         * {bcc32,win32,wince}/setup.mak (-epilogue-): remove config.h and
38378           config.status to force updating them.
38380 Tue Nov 16 16:20:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38382         * ext/stringio/stringio.c (strio_read): position was ignored when a
38383           buffer was passed.  http://www.yo.rim.or.jp/~nov/d/?date=20041116#p03
38385 Tue Nov 16 13:35:54 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38387         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): add
38388           new option --exclude (-x) to skip some tests. [ruby-core:3363],
38389           [ruby-dev:24865]
38391         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir.exclude):
38392           ditto.
38394 Tue Nov 16 11:19:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38396         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::options): use
38397           Regexp conversion.
38399 Tue Nov 16 01:41:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38401         * string.c (str_mod_check): frozen check should be separated.
38402           [ruby-core:3742]
38404         * array.c (rb_ary_update): pedantic check to detect
38405           rb_ary_to_ary() to modify the receiver.  [ruby-dev:24861]
38407 Mon Nov 15 18:58:05 2004  Tanaka Akira  <akr@m17n.org>
38409         * configure.in: check rlim_t more portably. [ruby-core:3735]
38411 Mon Nov 15 11:50:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38413         * misc/ruby-mode.el (ruby-special-char-p, ruby-parse-partial): handle
38414           operator symbols.  [ruby-talk:120177]
38416 Mon Nov 15 08:58:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38418         * eval.c (Init_Proc): make proc as an alias to Proc.new.
38419           [ruby-dev:24848]
38421 Mon Nov 15 00:46:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38423         * eval.c (rb_yield_0): lambda{}.call(1) should raise exception.
38424           [ruby-talk:120253]
38426 Mon Nov 15 00:33:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38428         * string.c (rb_str_clear): avoid revealing NULL pointer.
38429           [ruby-dev:24766]
38431         * string.c (str_gsub): add paranoid check. [ruby-dev:24827]
38433         * string.c (str_mod_check): check frozen status as well.
38434           [ruby-dev:24801]
38436 Sun Nov 14 18:59:03 2004  Tanaka Akira  <akr@m17n.org>
38438         * process.c (proc_getrlimit): new function for Process.getrlimit.
38439           (proc_setrlimit): new function for Process.setrlimit.
38440           [ruby-dev:24834]
38442         * configure.in: check rlim_t and its size.  check setrlimit.
38444         * ruby.h (NUM2ULL): new macro.
38446 Sun Nov 14 13:27:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38448         * lib/pp.rb (PP#object_address_group): remove odd number of 'f'
38449           prefixed to negative address.
38451 Sun Nov 14 10:48:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38453         * lib/mathn.rb (Integer::gcd2): faster implementation by
38454           <erlercw@siu.edu>. [ruby-talk:120232]
38456 Sun Nov 14 08:46:33 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
38458         * test/logger/test_logger.rb: Logger just expects
38459           Logger#datetime_format to be used for Time#strftime independently of
38460           locale. [ruby-dev:24828]
38462 Fri Nov 12 17:32:07 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38464         * bcc32/README.bcc32, win32/README.win32: need bison instead of
38465           byacc.
38467 Fri Nov 12 15:15:06 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38469         * eval.c (ruby_options): now we cannot call rb_glob() before
38470           ruby_init(), so call rb_w32_cmdvector() at ruby_options().
38472         * win32/win32.{c,h} (rb_w32_cmdvector): rename make_cmdvector() and
38473           export it.
38475 Fri Nov 12 14:08:01 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38477         * ext/tk/lib/tk/event.rb: remove $LOADED_FEATURES trick
38479         * ext/tk/lib/tk.rb: ditto
38481 Fri Nov 12 00:31:05 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38483         * ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter string
38484           pointer.  [ruby-dev:24783]
38486 Thu Nov 11 17:58:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38488         * dir.c (rb_glob): should have called rb_glob_caller().
38489           [ruby-dev:24773]
38491 Thu Nov 11 16:56:10 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38493         * test/ruby/test_file.rb (test_truncate_wbuf): we want to test
38494           only File#truncate, not behavior of seek(2).
38496 Thu Nov 11 01:52:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38498         * error.c (syserr_initialize): use stringified object.
38499           [ruby-dev:24768]
38501 Wed Nov 10 22:49:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38503         * lib/delegate.rb (SimpleDelegator::dup): wrong number of
38504           arguments.
38506         * lib/delegate.rb (DelegateClass::dup): ditto.
38508 Wed Nov 10 19:47:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38510         * dir.c (glob_helper): path is a string object now.
38512 Wed Nov 10 12:31:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38514         * README.EXT (Example): extconf.rb is indispensable now.
38516 Wed Nov 10 03:33:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38518         * ext/tcltklib/tcltklib.c: fix SEGV when compiled with Tcl/Tk8.3.x
38519           or older
38521         * ext/tk/lib/tkextlib/tile/style.rb: bug fix
38523 Tue Nov  9 22:24:07 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38525         * ext/nkf: original nkf.c rev:1.38
38527         * ext/nkf/nkf.c: fix bug: can't parse long-name options
38529         * ext/nkf/test.rb: fix bug: mime tests fail
38531 Tue Nov  9 14:27:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38533         * lib/optparse.rb (OptionParser::Officious): moved from DefaultList.
38535 Tue Nov  9 00:50:06 2004  Dave Thomas  <dave@pragprog.com>
38537         * lib/rdoc/rdoc.rb: Change version numbering of RDoc and ri
38539 Tue Nov  9 01:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38541         * dir.c (rb_glob2): do not allocate buffer from heap to avoid
38542           memory leaks.  use string object for buffering instead.
38543           [ruby-dev:24738]
38545         * dir.c (join_path): ditto.
38547         * io.c (io_read): external input buffer may be modified even after
38548           rb_str_locktmp().  [ruby-dev:24735]
38550         * dir.c (fnmatch): p or s may be NULL.  [ruby-dev:24749]
38552 Tue Nov  9 00:36:26 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
38554         * lib/drb/extservm.rb: add DRb::ExtServManager#uri=.
38555           [ruby-dev:24743]
38557 Mon Nov  8 22:20:19 2004  Dave Thomas  <dave@pragprog.com>
38559         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
38560           Fix bug where parent class wasn't being detected if the
38561           child class was defined using the A::B notation.
38563 Mon Nov  8 00:14:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38565         * configure.in: add setup for mignw32 cross compiling.
38566           [ruby-talk:119413]
38568 Sun Nov  7 23:49:26 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38570         * ext/tk/lib/tk.rb: bind-event methods accept multi substitution
38571           arguments.
38573         * ext/tk/lib/tk/canvas.rb: ditto.
38575         * ext/tk/lib/tk/canvastag.rb: ditto.
38577         * ext/tk/lib/tk/text.rb: ditto.
38579         * ext/tk/lib/tk/texttag.rb: ditto.
38581         * ext/tk/lib/tkextlib: ditto.
38583 Sat Nov  6 20:40:16 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38585         * ext/win32ole/win32ole.c: rename WIN32OLE#ole_obj_help to
38586           WIN32OLE#ole_type. alias ole_obj_help to ole_type.
38588         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
38590 Sat Nov  6 11:18:59 2004  Tadayoshi Funaba  <tadf@dotrb.org>
38592         * lib/date.rb (_parse): checks whether zone was given.
38594 Sat Nov  6 00:46:27 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38596         * string.c (rb_str_locktmp): check STR_TMPLOCK flag before
38597           locking.  [ruby-dev:24727]
38599 Fri Nov  5 19:07:16 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38601         * ext/nkf: follow CVS Head of original nkf.
38603 Fri Nov  5 18:12:42 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38605         * ext/tk/lib/tk/scrollable.rb: divide Scrollable module into
38606           X_Scrollable and Y_Scrollable
38608         * ext/tk/lib/tk/entry.rb: include X_Scrollable instead of Scrollable
38610         * ext/tk/lib/tk/autoload.rb: define autoload for X_Scrollable and
38611           Y_Scrollable
38613 Fri Nov  5 16:05:32 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38615         * ext/tk/lib/tk.rb: TkComm._at() supprts both of "@x,y" and "@x"
38617 Fri Nov  5 13:22:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38619         * ext/tk/lib/tk/text.rb: sorry. bug fix again.
38621 Fri Nov  5 13:17:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38623         * ext/tk/lib/tk/text.rb: bug fix
38625 Fri Nov  5 08:52:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38627         * gc.c (gc_mark): stricter GC stack check.
38629 Fri Nov  5 08:34:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38631         * string.c (str_gsub): should have removed rb_str_unlocktmp(str).
38632           [ruby-dev:24708]
38634         * ext/socket/socket.c (s_recvfrom): buffer modification check.
38635           [ruby-dev:24708]
38637 Thu Nov  4 23:54:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38639         * regexec.c, regparse.c, regint.h: fixed conflicts between
38640           vendor branch.
38642 Thu Nov  4 23:41:55 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
38644         * ascii.c, euc_jp.c, oniggnu.h, oniguruma.h, regcomp.c,
38645           regenc.c, regenc.h, regerror.c, regexec.c, reggnu.c,
38646           regint.h, regparse.c, regparse.h, sjis.c, utf8.c:
38647           imported Oni Guruma 3.4.0.
38649         * parse.y, re.c: Now mbclen() takes unsigned char as
38650           its argument.
38652 Thu Nov  4 21:25:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38654         * string.c (str_gsub): string modify check no longer based on
38655           tmplock.  [ruby-dev:24706]
38657 Thu Nov  4 21:13:48 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38659         * ext/win32ole/win32ole.c(typelib_file_from_typelib): search "win16"
38660           entry to get library path.
38662         * ext/win32ole/win32ole.c(oletypelib_path): ditto.
38664         * ext/win32ole/win32ole.c(ole_typedesc2val): add VT_LPWSTR, VT_LPSTR,
38665           VT_ERROR case.
38667 Thu Nov  4 15:02:14 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38669         * ext/tk/lib/tk/variable.rb: forget to initialize instance_variables
38670           of TkVarAccess objects
38672 Thu Nov  4 09:11:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38674         * gc.c (gc_mark): enable GC stack checking.
38676 Thu Nov  4 03:11:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38678         * string.c (str_gsub): lock strings temporarily.  [ruby-dev:24687]
38680         * ext/socket/socket.c (s_recvfrom): tmplock input buffer.
38681           [ruby-dev:24705]
38683 Wed Nov  3 22:24:17 2004  Daigo Moriwaki  <techml@sgtpepper.net>
38685         * lib/webrick/httpauth/digestauth.rb: use Base64.encode64 to
38686           avoid warnings.
38688 Wed Nov  3 17:19:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38690         * array.c (rb_ary_uniq_bang): do not push frozen string from hash
38691           table.  [ruby-dev:24695]
38693         * array.c (rb_ary_and): ditto.
38695         * array.c (rb_ary_or): ditto.
38697 Wed Nov  3 17:02:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
38699         * ext/tk/lib/tk.rb: support to use different Tcl commands between
38700           configure and configinfo
38702         * ext/tk/lib/font.rb: ditto.
38704         * ext/tk/lib/itemconfig.rb: support to use different Tcl commands
38705           between item_configure and item_configinfo
38707         * ext/tk/lib/itemfont.rb: ditto.
38709         * ext/tk/extconf.rb: install SUPPORT_STATUS
38711         * ext/tk/lib/tkextlib: some bug fixes (see ext/tk/ChangeLog.tkextlib)
38713 Wed Nov  3 15:38:28 2004  Kouhei Sutou  <kou@cozmixng.org>
38715         * test/rss/*.rb: removed tab width configuration headers.
38717         * test/rss/test_maker_{0.9,1.0}.rb: sort -> do_sort.
38719         * lib/rss/maker/*.rb: changed API to RSS version independence.
38721         * lib/rss/maker/base.rb
38722           (RSS::Maker::XMLStyleSheets::XMLStyleSheet): checked required
38723           (pseudo) attributes.
38725         * lib/rss/maker/base.rb (RSS::Maker::Items): sort -> do_sort.
38727         * lib/rss/rss.rb (RSS::BaseModel.install_date_element): avoided
38728           warning.
38730         * lib/rss/0.9.rb (RSS::Rss#textinput): added convenience method.
38732 Tue Nov  2 16:35:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38734         * ext/enumerator/enumerator.c (each_cons_i): pass copy of an
38735           internal consequent array.  [ruby-talk:118691]
38737 Tue Nov  2 14:54:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38739         * io.c (pipe_open): need to set cmd if argc == 0 (win32).
38741 Tue Nov  2 01:20:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38743         * io.c (pipe_open): IO.popen should take array as 1st argument for
38744           a command line.  [ruby-dev:24678]
38746         * eval.c (proc_invoke): nail down dyna_var node when Proc object
38747           or continuation is created.  [ruby-dev:24671]
38749         * io.c (rb_io_s_popen): do not expand argv array.  [ruby-dev:24670]
38751 Mon Nov  1 22:25:56 2004  Kouhei Sutou  <kou@cozmixng.org>
38753         * lib/rss/maker/base.rb: changed xml-stylesheet's API of RSS Maker
38754           like to item's one.
38756         * lib/rss/xml-stylesheet.rb (RSS::XMLStyleSheet#guess_type): fixed
38757           regular expression bug.
38759         * test/rss/test_maker_xml-stylesheet.rb: updated tests for
38760           xml-stylesheet.
38762 Mon Nov  1 13:59:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38764         * ext/extmk.rb (MANIFEST): do not use anymore, use extconf.rb instead.
38766         * ext/enumerator/extconf.rb, ext/fcntl/extconf.rb,
38767           ext/stringio/extconf.rb: added.
38769         * MANIFEST, ext/**/MANIFEST: removed.
38771         * README.EXT, README.EXT.ja: remove MANIFEST stuff.
38773 Mon Nov  1 11:52:18 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38775         * io.c (pipe_open): avoid conflict of variable name. [ruby-dev:24662]
38777 Mon Nov  1 11:46:19 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38779         * process.c (rb_f_exec): should check whether prog is NULL.
38781 Mon Nov  1 09:37:19 2004  Kouhei Sutou  <kou@cozmixng.org>
38783         * lib/rss/maker.rb: added entry point of RSS Maker.
38785 Mon Nov  1 03:14:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38787         * eval.c (rb_get_method_body): store ICLASS in the cache.
38788           [ruby-core:03672]
38790         * eval.c (rb_provided): should return true for loading library
38791           too for autoloading.  [ruby-core:03655]
38793 Mon Nov  1 01:14:52 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38795         * io.c (rb_f_open): create copy of popen specifier.  [ruby-dev:24656]
38797         * string.c (rb_str_locktmp): lock string temporarily.
38799         * string.c (str_independent): add tmplock check.
38801         * io.c (io_write): lock output string temporarily.
38802           [ruby-dev:24649]
38804         * io.c (io_write): use rb_str_locktmp().
38806         * io.c (read_all): ditto.
38808 Sun Oct 31 23:37:00 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38810         * process.c: on NetBSD don't use setruid() and setrgid().
38812 Sun Oct 31 23:12:10 2004  Kouhei Sutou  <kou@cozmixng.org>
38814         * lib/rss/maker/*.rb: added RSS Maker.
38816         * test/rss/test_maker_*.rb: added tests for RSS Maker.
38818 Sun Oct 31 16:58:12 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38820         * ext/win32ole/win32ole.c: add WIN32OLE.codepage, WIN32OLE.codepage=.
38822         * ext/win32ole/tests/testWIN32OLE.rb: ditto.
38824 Sun Oct 31 14:35:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38826         * ext/nkf/nkf-utf8/nkf.c: add "\075?UTF-8?Q?" for Gmail.
38828 Sun Oct 31 14:18:56 2004  Minero Aoki  <aamine@loveruby.net>
38830         * parse.y [ripper]: emit lexer-event values to the parser
38831           (still incomplete).
38833 Sat Oct 30 15:24:41 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
38835         * ext/win32ole/win32ole.c: add WIN32OLE_TYPELIB class. add
38836           WIN32OLE#ole_typelib method.
38838         * ext/win32ole/tests/testOLETYPELIB.rb: add WIN32OLE_TYPELIB class.
38840 Sat Oct 30 06:53:24 2004  Peter Vanbroekhoven  <peter.vanbroekhoven@cs.kuleuven.ac.be>
38842         * eval.c (rb_eval): NODE_XSTR should pass copy of literal string.
38844 Sat Oct 30 00:19:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38846         * array.c (rb_ary_update): a[n,m]=nil no longer works as element
38847           deletion.
38849         * enum.c (enum_sort_by): protect continuation jump in.
38850           [ruby-dev:24642]
38852         * eval.c (rb_eval), gc.c (gc_mark_children), node.h (NEW_ALIAS,
38853           NEW_VALIAS), parse.y (fitem): allow dynamic symbols to
38854           NODE_UNDEF and NODE_ALIAS.
38856 Fri Oct 29 21:27:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38858         * io.c (rb_io_check_initialized): new function to check uninitialized
38859           object.  [ruby-talk:118234]
38861         * file.c (rb_file_path), io.c (rb_io_closed): check if initialized.
38863 Fri Oct 29 19:05:33 2004  NARUSE, Yui  <naruse@ruby-lang.org>
38865         * ext/nkf: follow nkf2.0.
38867 Fri Oct 29 17:18:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
38869         * parse.y (ripper_s_allocate): add prototype for Microsoft compiler.
38871         * range.c (range_step, range_each): need cast.
38873 Fri Oct 29 16:34:19 2004  Daiki Ueno  <ueno@unixuser.org>
38875         * misc/ruby-mode.el (ruby-parse-partial): Parse the rest of the
38876           line after opening heredoc identifier.  [ruby-dev:24635]
38878 Fri Oct 29 11:35:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38880         * parse.y (rb_parser_append_print, rb_parser_while_loop): body node
38881           can be empty.  [ruby-dev:24628]
38883 Fri Oct 29 10:00:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38885         * eval.c (rb_thread_start_0): forget to free some memory chunks.
38886           [ruby-core:03611]
38888         * eval.c (ruby_cleanup): ruby_finalize_1 may cause exception,
38889           should be wrapped by PUSH_TAG/POP_TAG().  [ruby-dev:24627]
38891 Thu Oct 28 08:42:02 2004  Tanaka Akira  <akr@m17n.org>
38893         * io.c (argf_forward): use ANSI style.
38894           (argf_read): call argf_forward with argv argument.
38895           [ruby-dev:24624]
38897 Wed Oct 27 09:17:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38899         * string.c (str_gsub): use a string object for exception safeness.
38900           [ruby-dev:24601]
38902 Wed Oct 27 07:38:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38904         * node.h (NODE_TYPESHIFT): allow 4 more bits for line numbers.
38905           [ruby-talk:117841]
38907         * ruby.h (FL_ABLE): nodes are not subject for flag operations.
38909         * io.c (ARGF_FORWARD): should have specified argv explicitly,
38910           since we no longer have frame->argv saved.  [ruby-dev:24602]
38912 Tue Oct 26 23:30:39 2004  Dave Thomas  <dave@pragprog.com>
38914         * lib/rdoc/code_objects.rb (RDoc::Context::add_class_or_module):
38915           Restore correct :nopdoc: behavior with nested classes and modules.
38917 Tue Oct 26 18:21:29 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38919         * string.c (RESIZE_CAPA): check string attribute before modifying
38920           capacity member of string structure.  [ruby-dev:24594]
38922 Tue Oct 26 11:33:26 2004  David G. Andersen  <dga@lcs.mit.edu>
38924         * ext/zlib/zlib.c (gzreader_gets): use memchr() to to gain
38925           performance.  [ruby-talk:117701]
38927 Tue Oct 26 10:56:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38929         * sprintf.c (rb_f_sprintf): raise ArgumentError for extra
38930           arguments, unless (digit)$ style used.
38932 Mon Oct 25 18:35:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38934         * win32/win32.c (isUNCRoot): should check NUL after '.'.
38935           [ruby-dev:24590]
38937         * win32/win32.c (isUNCRoot): fixed buffer overrun.
38939 Mon Oct 25 08:03:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38941         * eval.c (get_backtrace): ignore illegal backtrace.  [ruby-dev:24587]
38943 Sun Oct 24 00:40:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38945         * eval.c (rb_load, search_required, rb_require_safe, rb_require): use
38946           frozen shared string to avoid outside modification.  [ruby-dev:24580]
38948 Sat Oct 23 23:40:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38950         * io.c (rb_io_fptr_finalize): leave stdin/stdout/stderr open in
38951           interpreter termination.  [ruby-dev:24579]
38953 Sat Oct 23 22:18:32 2004  Guy Decoux  <ts@moulon.inra.fr>
38955         * eval.c (frame_free): Guy Decoux solved the leak problem.
38956           Thanks.  [ruby-core:03549]
38958 Sat Oct 23 00:20:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38960         * ext/zlib/zlib.c (zstream_append_input): clear klass for z->input
38961           to avoid potential vulnerability.
38963         * ext/zlib/zlib.c (zstream_run): always use zstream_append_input()
38964           to avoid SEGV.  [ruby-dev:24568]
38966 Fri Oct 22 12:02:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38968         * eval.c (rb_alias): was warning for wrong condition.
38969           [ruby-dev:24565]
38971 Fri Oct 22 10:36:37 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38973         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#meta_vars):
38974           should check if path_info is not nil.
38976 Fri Oct 22 00:22:31 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
38978         * ext/zlib/zlib.c (zstream_shift_buffer): should restore class
38979           field of a buffer.  [ruby-dev:24562]
38981 Fri Oct 22 00:20:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
38983         * string.c (rb_str_include): should not treat char as negative value.
38984           [ruby-dev:24558]
38986 Thu Oct 21 21:32:30 2004  IWATSUKI Hiroyuki  <don@na.rim.or.jp>
38988         * lib/pstore.rb (PStore#transaction): Use the empty content when a
38989           file is not found.  [ruby-dev:24561]
38991 Thu Oct 21 19:06:15 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
38993         * lib/webrick/httpresponse.rb (WEBrick::HTTPResponse#send_body_io):
38994           ensure to close @body. (http://bugs.debian.org/277520)
38996 Thu Oct 21 13:11:31 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
38998         * io.c (pipe_open): variable name "fpw" is conflicted.
39000 Thu Oct 21 00:36:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39002         * eval.c (rb_alias): should warn on method discarding.
39003           [ruby-dev:24546]
39005         * ext/zlib/zlib.c (zstream_expand_buffer_into): hide internal
39006           string buffer by clearing klass.  [ruby-dev:24548]
39008         * parse.y (lex_getline): should not touch ruby_debug_lines if
39009           RIPPER is defined.  [ruby-dev:24547]
39011 Wed Oct 20 19:45:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39013         * string.c (str_gsub):  reentrant check.  [ruby-dev:24432]
39015 Wed Oct 20 12:42:53 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39017         * io.c (rb_io_getline): rs modification check should not interfere
39018           in the loop.
39020 Wed Oct 20 10:31:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39022         * parse.y (lex_getline): should update ruby_debug_lines.
39024 Wed Oct 20 04:17:55 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39026         * ext/dbm/dbm.c (fdbm_delete_if): should check if deleting element
39027           is a string.  [ruby-dev:24490]
39029         * ext/sdbm/init.c (fsdbm_delete_if): ditto.
39031 Wed Oct 20 01:37:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39033         * array.c (rb_ary_times): Array#* should return an instance of
39034           the class of right operand.  [ruby-dev:24526]
39036         * ext/zlib/zlib.c (zstream_detach_buffer): should not expose
39037           class-less object to Ruby world. [ruby-dev:24530]
39039         * eval.c (proc_dup): provide Proc#dup as well.  [ruby-talk:116915]
39041         * eval.c (ruby_exec): stack marking position may be higher than
39042           expected.  thanks to Guy Decoux.  [ruby-core:03527]
39044 Wed Oct 20 00:25:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39046         * eval.c (search_required): required name must not be changed before
39047           loading.  [ruby-dev:24492]
39049 Tue Oct 19 23:59:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39051         * eval.c (rb_require_safe): provide the feature after loaded.
39052           [ruby-list:40085]
39054 Tue Oct 19 22:43:12 2004  Dave Thomas  <dave@pragprog.com>
39056         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_attr): If
39057           we come across 'attr' in a context where it isn't
39058           followed by a symbol, just issue a warning.
39060 Tue Oct 19 20:32:50 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39062         * ext/win32ole.c(ole_invoke): retrieve the result value when
39063           retrying the IDispatch::invoke.
39065 Tue Oct 19 17:24:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39067         * io.c (read_all): block string buffer modification during
39068           rb_io_fread() by freezing it temporarily. [ruby-dev:24479]
39070         * dir.c (rb_push_glob): block call at once the end of method.
39071           [ruby-dev:24487]
39073         * ext/enumerator/enumerator.c (enum_each_slice): remove
39074           rb_gc_force_recycle() to prevent potential SEGV.
39075           [ruby-dev:24499]
39077         * ext/zlib/zlib.c (zstream_expand_buffer): hide internal string
39078           buffer by clearing klass.  [ruby-dev:24510]
39080 Tue Oct 19 08:47:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39082         * string.c (rb_str_upto): method result must be checked.  [ruby-dev:24504]
39084         * eval.c (error_print): ditto.  [ruby-dev:24519]
39086 Mon Oct 18 23:37:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39088         * marshal.c (r_object0): check inheritance by the internal function.
39089           [ruby-dev:24515]
39091 Mon Oct 18 11:29:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39093         * io.c (rb_io_flags_mode, rb_io_mode_flags): distinguish whether file
39094           not existing is created.  [ruby-dev:24505]
39096 Mon Oct 18 07:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39098         * file.c (rb_file_truncate): discard read buffer before truncation.
39099           [ruby-dev:24197]
39101 Mon Oct 18 01:56:03 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39103         * lib/webrick/httprequest.rb (WEBrick::HTTPRequest#initialize):
39104           initial value of accpet-* should be array.
39106 Mon Oct 18 00:42:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39108         * ext/socket/socket.c (sock_s_getservbyaname): protocol string
39109           might be altered.  [ruby-dev:24503]
39111         * string.c (rb_str_upto): check if return value from succ is a
39112           string.  [ruby-dev:24504]
39114 Sun Oct 17 23:03:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39116         * ext/tk/lib/tk/timer.rb: TkTimer#start and restart accept a block
39118 Sun Oct 17 12:53:46 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
39120         * ext/win32ole/win32ole.c (fole_func_methods): correct argument mismatch.
39121         * ext/win32ole/win32ole.c (fole_get_methods): ditto.
39122         * ext/win32ole/win32ole.c (fole_put_methods): ditto.
39123         * ext/win32ole/tests/testWIN32OLE.rb: add test for WIN32OLE#ole_func_methods
39124           WIN32OLE#ole_get_methods, WIN32OLE#ole_put_methods
39126 Sat Oct 16 14:45:28 2004  Kouhei Sutou  <kou@cozmixng.org>
39128         * lib/rss/0.9.rb (RSS::Rss#to_s): removed garbage.
39130 Sat Oct 16 13:42:49 2004  Kouhei Sutou  <kou@cozmixng.org>
39132         * lib/rss/: untabified.
39133         * test/rss/: untabified.
39134         * lib/rss/0.9.rb (RSS::Rss#to_s): inent -> indent.
39136 Sat Oct 16 13:34:56 2004  Kouhei Sutou  <kou@cozmixng.org>
39138         * lib/rss: supported prety print.
39139         * test/rss/test_1.0.rb: added test for calculating default indent size.
39141 Sat Oct 16 10:56:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39143         * lib/mkmf.rb (create_makefile): install-rb is needed for statically
39144           linked extensions.  [ruby-dev:24491]
39146 Fri Oct 15 18:07:08 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39148         * ext/openssl/ossl_x509store.c
39149           (ossl_x509stctx_initialize): setup OpenSSL::X509::StoreContext with
39150           ossl_x509stctx_* functions instead of X509_STORE_CTX_*.
39151           (ossl_x509store_set_time): add OpenSSL::X509::Store#time=.
39152           (ossl_x509stctx_set_time): add OpenSSL::X509::StoreContext#time=.
39154         * test/openssl/ossl_x509store.rb: test certificate validity times.
39156 Fri Oct 15 18:04:35 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39158         * ext/tk/lib/tk/timer.rb: TkTimer.new(interval, loop){ ... } is
39159           acceptable. Add TkTimer.start ( == new + start ).
39161 Fri Oct 15 12:43:09 2004  Tanaka Akira  <akr@m17n.org>
39163         * eval.c (Init_stack): make prototype declaration consistent with
39164           the definition in gc.c.
39166 Thu Oct 14 13:33:59 2004  Kouhei Sutou  <kou@cozmixng.org>
39168         * lib/rss/rss.rb: added link to Tutorial.
39170 Tue Oct 12 21:22:50 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39172         * lib/webrick/config.rb:
39173           add WEBrick::Config::FileHandler[:AcceptableLanguages].
39175         * lib/webrick/httpservlet/filehandler.rb
39176           (WEBrick::HTTPServlet::FileHandler#set_filename): search files
39177           having suffix of language-name which Accept-Language header field
39178           includes if :AcceptableLanguages options is present.
39180         * lib/webrick/httpservlet/filehandler.rb
39181           (WEBrick::HTTPServlet::FileHandler#get_servlet): new method to
39182           search servlet correspond to the suffix of filename.
39184         * lib/webrick/httprequest.rb: add attributes access methods: accept,
39185           accept_charset, accept_encoding, accept_language, content_length
39186           and content_type.
39188         * lib/webrick/httpresponse.rb: add attribute access methods:
39189           content_length, content_length=, content_type and content_type=.
39191         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.mime_types):
39192           use the second suffix to detect media type. (the first suffix
39193           may be a language name.)
39195         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_qvalues):
39196           add method to parse Accept header field. it returns an Array of
39197           values sorted by the qvalues.
39199 Tue Oct 12 15:05:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39201         * io.c (MODE_BINMODE, MODE_BINARY): fixed reversed condition.
39203 Mon Oct 11 17:51:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39205         * io.c (rb_io_popen): get mode string via rb_io_flags_mode() to
39206           avoid mode string modification.  [ruby-dev:24454]
39208         * io.c (rb_io_getline_fast): should take delim as unsigned char to
39209           distinguish EOF and '\377'.  [ruby-dev:24460]
39211         * io.c (rb_io_getline): add check for RS modification.
39212           [ruby-dev:24461]
39214         * enum.c (enum_sort_by): use qsort() directly instead using
39215           rb_iterate().  [ruby-dev:24462]
39217         * enum.c (enum_each_with_index): remove rb_gc_force_recycle() to
39218           prevent access to recycled object (via continuation for
39219           example).  [ruby-dev:24463]
39221 Mon Oct 11 13:48:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39223         * ext/tk/lib/tk/*: untabify
39225 Sun Oct 10 12:32:08 2004  Dave Thomas  <dave@pragprog.com>
39227         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_require): Allow 'require'
39228           to be used as a variable name
39230 Sun Oct 10 02:49:14 2004  Minero Aoki  <aamine@loveruby.net>
39232         * ext/ripper/lib/ripper/filter.rb: require ripper/tokenizer.
39234         * ext/ripper/lib/ripper/filter.rb (parse): argument is optional.
39236 Sun Oct 10 02:43:13 2004  Minero Aoki  <aamine@loveruby.net>
39238         * parse.y [ripper]: \n between two comments disappeared.
39240 Sat Oct  9 21:23:37 2004  Kouhei Sutou  <kou@cozmixng.org>
39242         * lib/rss/converter.rb: changed to try to use Iconv for default
39243           conversion.
39245         * lib/rss/rss.rb: 0.0.9 -> 0.1.0.
39247 Sat Oct  9 19:50:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39249         * io.c (rb_io_getline): should not treat char as negative value.
39250           [ruby-dev:24460]
39252 Sat Oct  9 00:25:39 2004  Tanaka Akira  <akr@m17n.org>
39254         * io.c (rb_io_fread): rb_thread_wait_fd() was lost.
39255           [ruby-dev:24457]
39257 Fri Oct  8 21:36:56 2004  Minero Aoki  <aamine@loveruby.net>
39259         * lib/fileutils.rb (fu_traverse): return value of Dir.entries is
39260           reliable. (pass $SAFE=1)
39262         * lib/fileutils.rb (remove_dir): return value of Dir.foreach is
39263           reliable. (pass $SAFE=1)
39265 Fri Oct  8 09:49:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39267         * pack.c (pack_pack): pointer modification check before each
39268           iteration.  [ruby-dev:24445]
39270 Fri Oct  8 01:13:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39272         * ext/tk/lib/tk/optiondb.rb: make it more secure
39274 Thu Oct  7 23:47:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39276         * ext/tk/lib/tk/scrollbar.rb: When 'set' operation, a scrollbar
39277           cannot propagate view port information from the source widget
39278           (that calls 'set') to other assigned widgets.
39280 Thu Oct  7 17:36:25 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39282         * ext/tk/lib/tk.rb: When CHILDKILLED and so on, Tk.errorCode returns
39283           a Fixnum for 2nd element (it's pid) of the return value.
39285 Thu Oct  7 12:55:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39287         * io.c (io_read): should freeze buffer before thread context
39288           switch. [ruby-dev:24442]
39290         * pack.c (pack_unpack): string conversion should at the top of the
39291           method.  [ruby-dev:24439]
39293         * io.c (io_read): buffer should be frozen only after the length
39294           check.  [ruby-dev:24440]
39296 Thu Oct  7 02:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39298         * ext/stringio/stringio.c: use FMODE_APPEND.
39300 Thu Oct  7 01:05:33 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39302         * ext/tk/lib/tk.rb: add Tk.errorInfo and Tk.errorCode
39304 Thu Oct  7 00:08:37 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39306         * io.c (rb_io_s_sysopen): preserve path in the buffer allocated by
39307           ALLOCA_N() to prevent modification.  [ruby-dev:24438]
39309 Wed Oct  6 09:21:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39311         * io.c (rb_io_mode_flags): preserve append mode flag.
39312           [ruby-dev:24436]
39314         * io.c (rb_io_modenum_mode): do not use external output buffer.
39316         * string.c (rb_str_justify): differ pointer retrieval to prevent
39317           padding string modification.  [ruby-dev:24434]
39319         * range.c (range_each_func): allow func to terminate loop by
39320           returning RANGE_EACH_BREAK.
39322         * range.c (member_i): use RANGE_EACH_BREAK. [ruby-talk:114959]
39324 Tue Oct  5 09:53:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39326         * io.c (rb_fopen): mode string copy at the lowest level.
39328         * io.c (rb_io_flags_mode): requires output buffer no more.  no
39329           allocation needed.
39331         * array.c (rb_ary_index): takes a block to compare items in an
39332           array.  [ruby-talk:113069] [Ruby2]
39334         * array.c (rb_ary_rindex): ditto.
39336 Mon Oct  4 14:03:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39338         * io.c (rb_file_open_internal, rb_io_reopen): fname might be altered
39339           while GC.  [ruby-dev:24408]
39341 Mon Oct  4 12:53:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39343         * ext/tk/lib/tk/optiondb.rb: support definition of command
39344           resources on widgets
39346         * ext/tk/lib/tk/image.rb: bug fix
39348 Sun Oct  3 21:16:05 2004  Shugo Maeda  <shugo@ruby-lang.org>
39350         * lib/net/imap.rb (TEXT_REGEXP): allow 8-bit characters for the german
39351           version of Microsoft Exchange Server.
39353         * lib/net/imap.rb (RTEXT_REGEXP): ditto.
39355         * lib/net/imap.rb (CTEXT_REGEXP): ditto.
39357 Sat Oct  2 20:34:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39359         * parse.y (local_vars): moved to struct parser_params.
39360           [ruby-dev:24391]
39362         * parser.y (stmts): remove suspicious NODE_BEGIN.  [ruby-dev:24390]
39364         * node.h (NEW_DVAR): extra semicolon.
39366 Sat Oct  2 00:42:20 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39368         * marshal.c (r_byte): retrieve pointer from string value for each
39369           time.  [ruby-dev:24404]
39371         * marshal.c (r_bytes0): ditto.
39373         * enum.c (sort_by_i): re-entrance check added.  [ruby-dev:24399]
39375         * io.c (io_read): should freeze all reading buffer.
39376           [ruby-dev:24400]
39378         * string.c (rb_str_sum): should use bignums when bits is greater
39379           than or equals to sizeof(long)*CHAR_BITS. [ruby-dev:24395]
39381         * eval.c (specific_eval): defer pointer retrieval to prevent
39382           unsafe sourcefile string modification.  [ruby-dev:24382]
39384         * string.c (rb_str_sum): wrong cast caused wrong result.
39385           [ruby-dev:24385]
39387         * enum.c (enum_sort_by): hide temporary array from
39388           ObjectSpace.each_object.  [ruby-dev:24386]
39390         * string.c (rb_str_sum): check was done with false pointer.
39391           [ruby-dev:24383]
39393         * string.c (rb_str_sum): string may be altered.  [ruby-dev:24381]
39395 Fri Oct  1 11:40:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39397         * eval.c (rb_f_eval): defer pointer retrieval to prevent unsafe
39398           sourcefile string modification.  [ruby-dev:24373]
39400         * io.c (io_read): block string buffer modification during
39401           rb_io_fread() by freezing it temporarily. [ruby-dev:24366]
39403         * io.c (rb_io_s_popen): mode argument may be altered.
39404           [ruby-dev:24375]
39406         * file.c (rb_file_s_basename): ext argument may be altered.
39407           [ruby-dev:24377]
39409         * enum.c (enum_sort_by): use NODE instead of 2 element arrays.
39410           [ruby-dev:24378]
39412         * string.c (rb_str_chomp_bang): StringValue() may change the
39413           receiver.  [ruby-dev:24371]
39415 Fri Oct  1 11:25:20 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39417         * ext/tk/lib/tk/grid.rb: revive TkGrid.grid
39419         * ext/tk/lib/tk/pack.rb: revive TkPack.pack
39421         * ext/tk/lib/tk/place.rb: revive TkPlace.place
39423 Thu Sep 30 00:50:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39425         * ext/tcltklib/tcltklib.c (ip_init): bug fix
39427         * ext/tk/tkutil.c (get_eval_string_core): accept a Regexp object
39429         * ext/tk/lib/multi-tk.rb: fix bug on 'exit' operation
39431         * ext/tk/lib/tk/text.rb: 'tksearch' accepts a Regexp object as a
39432           matting pattern argument
39434 Wed Sep 29 10:58:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39436         * enum.c (sort_by_i): internally used object must not be changed
39437           outside.  [ruby-dev:24368]
39439 Mon Sep 27 21:25:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39441         * eval.c (rb_call0): invoke finalizers periodically.
39443         * gc.c (gc_sweep): defer running finalizers.  [ruby-dev:24354]
39445         * gc.c (rb_gc_finalize_deferred): run deferred finalizers.
39447 Mon Sep 27 15:01:59 2004  Minero Aoki  <aamine@loveruby.net>
39449         * parse.y [ripper]: missing ';'.
39451 Mon Sep 27 13:46:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
39453         * intern.h, struct.c (rb_struct_s_members, rb_struct_members): public
39454           accessors.  [ruby-dev:24342]
39456         * marshal.c (w_object, r_object0): use accessors.
39458 Mon Sep 27 09:14:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39460         * array.c (rb_ary_delete): comparison may change the capacity.
39461           [ruby-dev:24348]
39463         * array.c (rb_ary_fill): fill should honor length argument.
39464           [ruby-dev:24346]
39466         * array.c (rb_ary_replace): should not use ptr from shared array.
39467           [ruby-dev:24345]
39469         * ext/socket/socket.c (s_accept): don't retry for EWOULDBLOCK.
39470           [ruby-talk:113807]
39472 Sun Sep 26 08:05:10 2004  Tadayoshi Funaba  <tadf@dotrb.org>
39474         * lib/date.rb: provides {Time,Date,DateTime}#to_{time,date,datetime}.
39476         * sample/cal.rb: uses getoptlong instead of getopts.
39478 Sat Sep 25 18:39:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39480         * array.c (flatten): element size might change during comparison.
39481           [ruby-dev:24343]
39483 Sat Sep 25 01:52:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39485         * struct.c (rb_struct_s_members): wrong call of struct_members.
39486           [ruby-dev:24333]
39488 Fri Sep 24 16:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39490         * eval.c (proc_invoke): propagate DVAR_DONT_RECYCLE on termination
39491           to avoid double call to rb_gc_force_recycle(). [ruby-dev:24311]
39493 Fri Sep 24 08:29:45 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39495         * parse.y (rb_parser_append_print): should handle prelude.
39496           [llama@u01.gate0]
39498         * parse.y (rb_parser_while_loop): ditto.
39500         * array.c (rb_ary_subseq): original object might be modified after
39501           sharing data creation.  [ruby-dev:24327]
39503         * array.c (rb_ary_replace): ditto.
39505         * array.c (ary_make_shared): freeze shared array. [ruby-dev:24325]
39507         * struct.c (struct_members): always check struct size and size of
39508           members list in the class.  [ruby-dev:24320]
39510 Thu Sep 23 19:48:14 2004  Minero Aoki  <aamine@loveruby.net>
39512         * ext/ripper/Makefile.dev: removed.
39514         * ext/ripper/ripper.rb.in: moved to lib/ripper/core.rb.in.
39516         * ext/ripper/lib/ripper/core.rb: new file.
39518         * ext/ripper/lib/ripper/core.rb.in: new file.
39520         * ext/ripper/tools/generate-ripper_rb.rb: change comment.
39522         * test/ripper/*.rb: on__scan event removed.
39524         * test/ripper/*.rb: event name is changed: on__XXX -> on_XXX.
39526 Thu Sep 23 09:29:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39528         * string.c (rb_str_sub_bang): check if string is not modified
39529           during iteration.  [ruby-dev:24315]
39531         * hash.c (rb_hash_rehash): replace st_foreach() by its deep
39532           checking counterpart.  [ruby-dev:24310]
39534 Wed Sep 22 14:21:54 2004  Minero Aoki  <aamine@loveruby.net>
39536         * parse.y [ripper]: on__scan event removed.
39538         * parse.y [ripper]: event name is changed: on__XXX -> on_XXX.
39540         * ext/ripper/eventids2.c: ditto.
39542         * ext/ripper/ripper.rb.in: ditto.
39544         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39546         * ext/ripper/lib/ripper/tokenizer: ditto.
39548         * ext/ripper/lib/ripper/filter: new file.
39550         * sample/ripper/colorize.rb: new file.
39552         * sample/ripper/strip-comment.rb: new file.
39554 Wed Sep 22 13:50:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39556         * hash.c (hash_alloc): was using tbl pointer without
39557           initialization.
39559 Wed Sep 22 13:38:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39561         * hash.c (rb_hash_rehash): add iteration check.  [ruby-dev:24301]
39563         * st.c (st_foreach): add deep check.
39565         * hash.c (rb_hash_fetch): returns KeyError instead of IndexError.
39567         * hash.c (env_fetch): ditto.
39569 Wed Sep 22 13:02:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39571         * win32/win32.c (rb_w32_call_handler): workaround for Ctrl-C.
39573 Wed Sep 22 09:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39575         * parse.y: remove global variables ruby_eval_tree and
39576           ruby_eval_tree_begin.
39578         * array.c (rb_ary_collect_bang): element size might change during
39579           comparison.  [ruby-dev:24300]
39581         * array.c (rb_ary_reject_bang): ditto. [ruby-dev:24300]
39583         * array.c (rb_ary_eql): ditto. [ruby-dev:24300]
39585 Wed Sep 22 00:11:12 2004  Dave Thomas  <dave@pragprog.com>
39587         * process.c: Add documentation for fork()
39589 Tue Sep 21 18:29:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39591         * array.c (rb_ary_uniq_bang): element size might change during
39592           comparison.  [ruby-dev:24298]
39594 Mon Sep 20 17:46:51 2004  Minero Aoki  <aamine@loveruby.net>
39596         * ext/ripper/lib/ripper/tokenizer.rb: fix typo.
39598 Mon Sep 20 17:38:43 2004  Minero Aoki  <aamine@loveruby.net>
39600         * test/ripper/test_scanner_events.rb: tokens must be reordered.
39602         * ext/ripper/lib/ripper/tokenizer.rb: ditto.
39604 Mon Sep 20 16:58:16 2004  Minero Aoki  <aamine@loveruby.net>
39606         * parse.y [ripper]: do not delay dispatching.
39608         * ext/ripper/lib/ripper/tokenizer.rb: sort tokens by right order.
39610 Mon Sep 20 15:17:47 2004  Minero Aoki  <aamine@loveruby.net>
39612         * ext/ripper/lib/ripper/tokenizer.rb: new file.
39614 Mon Sep 20 15:13:52 2004  Minero Aoki  <aamine@loveruby.net>
39616         * test/ripper/test_scanner_events.rb: test #lineno and #column.
39618 Mon Sep 20 14:50:17 2004  Minero Aoki  <aamine@loveruby.net>
39620         * parse.y [ripper]: delayed heredocument events should be
39621           dispatched after EOF.
39623 Mon Sep 20 14:39:42 2004  Minero Aoki  <aamine@loveruby.net>
39625         * parse.y [ripper]: adjust lineno and columns for multi-line
39626           strings.
39628         * parse.y [ripper]: delay heredocument events until seeing
39629           end-of-line.
39631         * parse.y [ripper]: event on__heredoc_contentn ->
39632           on__tstring_content.
39634         * ext/ripper/eventids2.c: ditto.
39636         * ext/ripper/lib/ripper.rb: sync with eventids2.c.
39638         * test/ripper/test_scanner_events.rb: test it.
39640         * ext/ripper/tools/generate-ripper_rb.rb: show basename of input.
39642         * ext/ripper/Makefile.dev: support objdir build.
39644 Mon Sep 20 13:22:55 2004  Minero Aoki  <aamine@loveruby.net>
39646         * parse.y [ripper]: remove Ripper#pos.
39648         * parse.y [ripper]: Ripper#column should return the column of the
39649           current token.
39651 Mon Sep 20 12:02:41 2004  Minero Aoki  <aamine@loveruby.net>
39653         * parse.y [ripper]: unify old_lex_p and token_head.
39655         * test/ripper/test_scanner_events.rb: now \r\n is saved correctly.
39657         * parse.y: new macro lex_goto_eol() for next change.
39659 Mon Sep 20 11:01:55 2004  Minero Aoki  <aamine@loveruby.net>
39661         * parse.y [ripper]: adjust line number for heredoc.  [ruby-dev:24272]
39663 Mon Sep 20 04:49:22 2004  Minero Aoki  <aamine@loveruby.net>
39665         * ext/ripper/ripper.rb.in: new const Ripper::PARSER_EVENT_TABLE.
39667         * ext/ripper/ripper.rb.in: new const Ripper::SCANNER_EVENT_TABLE.
39669         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39671 Mon Sep 20 04:13:00 2004  Minero Aoki  <aamine@loveruby.net>
39673         * test/ripper/test_scanner_events.rb: test spaces before heredoc
39674           mark.
39676 Mon Sep 20 03:46:54 2004  Minero Aoki  <aamine@loveruby.net>
39678         * parse.y [ripper]: spaces before heredoc marker was lost.
39679           [ruby-dev:24272]
39681         * keywords: rb_reserved_word() should be defined only in ruby
39682           core.  [ruby-dev:24272]
39684         * lex.c: sync with keywords.
39686         * ext/ripper/ripper.rb.in (parse): fix typo.
39688         * ext/ripper/lib/ripper.rb: sync with ripper.rb.in.
39690 Mon Sep 20 03:37:59 2004  Tanaka Akira  <akr@m17n.org>
39692         * ext/zlib/zlib.c (gzfile_read_raw): call readpartial at first.
39693           (Zlib::GzipReader#readpartial): new method.
39695 Mon Sep 20 00:24:19 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39697         * enum.c (enum_sort_by): do not use qsort directly.  use
39698           rb_ary_sort_bang() instead.  [ruby-dev:24291]
39700         * enum.c (enum_sort_by): pedantic type check added.
39701           [ruby-dev:24291]
39703         * hash.c (rb_hash_foreach_iter): check iter_lev after each
39704           iteration.  [ruby-dev:24289]
39706         * array.c (rb_ary_and): element size might change during
39707           comparison.  [ruby-dev:24290]
39709         * array.c (rb_ary_or): ditto. [ruby-dev:24292]
39711         * array.c (rb_ary_equal): wrong fix. [ruby-dev:24286]
39713 Sat Sep 18 15:02:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39715         * array.c (rb_ary_equal): element size might change during
39716           comparison.  [ruby-dev:24254]
39718         * array.c (rb_ary_diff): ditto. [ruby-dev:24274]
39720         * array.c (rb_ary_select): ditto. [ruby-dev:24278]
39722         * array.c (rb_ary_delete): ditto. [ruby-dev:24283]
39724         * array.c (rb_ary_rindex): ditto. [ruby-dev:24275]
39726         * array.c (rb_ary_initialize): element size might change during
39727           initializing block.  [ruby-dev:24284]
39729 Sat Sep 18 14:10:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39731         * dir.c (dir_s_chdir): avoid memory leak and unnecessary chdir to
39732           the original directory when exception has caused in changing
39733           direcotry or within block.  thanks to Johan Holmberg
39734           <holmberg@iar.se> [ruby-core:03446]
39736 Fri Sep 17 20:29:33 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39738         * parse.y: add prototypes for Microsoft compiler.
39740         * ext/ripper/depend (parse.obj): lex.c exists at hdrdir.
39742         * {bcc32,win32,wince}/Makefile.sub (YACC, YFLAGS, parse.c):
39743           use bison.
39745 Fri Sep 17 17:11:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39747         * array.c (rb_ary_delete): element comparison might change array
39748           size. [ruby-dev:24273]
39750         * parse.y: make ruby parser reentrant. merge ripper parser to the
39751           real one.  this change makes ruby require bison.
39753         * file.c (rb_file_truncate): clear stdio buffer before truncating
39754           the file.  [ruby-dev:24191]
39756         * ext/digest/digest.c: use rb_obj_class() instead of CLASS_OF
39757           which might return singleton class.  [ruby-dev:24202]
39759 Fri Sep 17 16:07:09 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39761         * ext/tk/lib/multi-tk.rb: improve exit operation
39763 Fri Sep 17 15:01:57 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39765         * ext/tcltklib/tcltklib.c: fix SEGV when (thread_)vwait or
39766           (thread_)tkwait
39768         * ext/tk/lib/tk.rb: add alias wait_window to wait_destroy
39770         * ext/tk/lib/multi-tk.rb: support calling 'mainloop' on slave
39771           interpreters (however, the 'real' eventloop must be run on the
39772           Default Master IP)
39774         * ext/tk/lib/remote-tk.rb: follow the changes of ext/tk/lib/multi-tk.rb
39776         * ext/tk/sample/remote-ip_sample2.rb: ditto
39778         * ext/tk/sample/tkoptdb-safeTk.rb: ditto
39780 Thu Sep 16 18:12:13 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39782         * lib/webrick/cgi.rb (WEBrick::CGI#start): should set REMOTE_USER
39783           to request.user attribute.
39785         * lib/webrick/httpservlet/filehandler.rb
39786           (WEBrick::HTTPServlet::FileHandler#initialize): should expand
39787           the pathname of document root directory.
39789 Thu Sep 16 15:49:28 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
39791         * string.c (rb_str_intern): protect string argument from GC.
39792           [ruby-core:03411]
39794 Wed Sep 15 20:22:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39796         * ext/tk/sample/tkoptdb-safeTk.rb: fix a bug depend on the changes
39797           of MultiTkIp
39799 Tue Sep 14 23:54:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39801         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string was en-bugged by
39802           the previous changes.
39804 Tue Sep 14 23:45:44 2004  Dave Thomas  <dave@pragprog.com>
39806         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::TextFormatter.for):
39807           Add Eric Hodel's simpleformatter.
39809 Tue Sep 14 22:11:08 2004  Minero Aoki  <aamine@loveruby.net>
39811         * parse.y [ripper]: Add rdoc.
39813 Tue Sep 14 20:24:49 2004  Minero Aoki  <aamine@loveruby.net>
39815         * parse.y [ripper]: space event is on__sp, not on__lwsp.
39816           [ruby-dev:24257]
39818         * ext/ripper/eventids2.c: ditto.
39820         * ext/ripper/lib/ripper.rb: ditto.
39822         * ext/ripper/depend (ripper.o): No action is needed.
39823           [ruby-dev:24260]
39825         * ext/ripper/depend: Borland make does not accept pipes in
39826           Makefile rules. [ruby-dev:24589]
39828         * ext/ripper/depend: separate rules for developpers.
39830         * ext/ripper/Makefile.dev: new file.
39832         * ext/ripper/MANIFEST: add Makefile.dev.
39834         * ext/ripper/tools/generate-eventids1.rb: read from file, not
39835           stdin.
39837         * ext/ripper/extconf.rb: clean ripper.E.
39839         * ext/ripper/tools/generate-ripper_rb.rb: #include ids1/ids2
39840           function was lost.
39842         * ext/ripper/tools/generate-ripper_rb.rb: SCANNER_EVENTS wrongly
39843           contained parser events.
39845         * ext/ripper/lib/ripper.rb: ditto.
39847 Tue Sep 14 16:59:37 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39849         * ext/tcltklib/tcltklib.c: fix SEGV
39851         * ext/tk/lib/multi-tk.rb: improve safe-level handling of argument proc
39853         * ext/tk/sample/multi-ip_sample.rb: rename of old 'safe-tk.rb'
39855         * ext/tk/sample/safe-tk.rb: new sample script
39858 Mon Sep 13 21:33:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
39860         * ext/openssl/ossl_x509name.c (ossl_x509name_to_s): add optional
39861           second argument to specify the output format (see also
39862            X509_NAME_print_ex).
39864         * ext/openssl/ossl_x509name.c (ossl_x509name_init): new constants:
39865           OpenSSL::X509::Name::COMPAT, OpenSSL::X509::Name::RFC2253,
39866           OpenSSL::X509::ONELINE, OpenSSL::X509::MULTILINE.
39868         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name::RFC2253DN):
39869           new module to provide the parse for RFC2253 DN format.
39871         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name.parse_rfc2253):
39872           new method to parse RFC2253 DN format.
39874 Mon Sep 13 19:16:33 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
39876         * eval.c (blk_copy_prev): need frame_dup().  [ruby-dev:24103]
39878 Mon Sep 13 16:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39880         * ext/tk/lib/multi-tk.rb: MultiTkIp.new_master and new_slave accept
39881           safe-level value argument
39883 Mon Sep 13 10:48:37 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39885         * win32/win32.c (rb_w32_getpid): don't need to use _getpid() on
39886           mswin32 and mingw32.
39888 Mon Sep 13 10:22:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
39890         * object.c (nil_inspect): fix typo.
39892 Mon Sep 13 09:29:58 2004  Minero Aoki  <aamine@loveruby.net>
39894         * ext/ripper/depend: (nmake hack) prepend "./" to ripper.c to
39895           avoid {$(srcdir)}.
39897 Mon Sep 13 06:43:42 2004  Minero Aoki  <aamine@loveruby.net>
39899         * ext/ripper/tools/list-parse-event-ids.rb: does not use getopts.
39901         * ext/ripper/tools/list-scan-event-ids.rb: ditto.
39903 Mon Sep 13 02:42:28 2004  Minero Aoki  <aamine@loveruby.net>
39905         * ext/Setup: add ripper.
39907         * ext/Setup.atheos: ditto.
39909         * ext/Setup.dj: ditto.
39911         * ext/Setup.emx: ditto.
39913         * ext/Setup.nt: ditto.
39915         * ext/Setup.x68: ditto.
39917 Mon Sep 13 02:26:31 2004  Minero Aoki  <aamine@loveruby.net>
39919         * ext/ripper: ripper extention added.
39921         * ext/ripper/MANIFEST: new file.
39923         * ext/ripper/README: new file.
39925         * ext/ripper/depend: new file.
39927         * ext/ripper/extconf.rb: new file.
39929         * ext/ripper/eventids2.c: new file.
39931         * ext/ripper/ripper.rb.in: new file.
39933         * ext/ripper/lib/ripper.rb: new file.
39935         * ext/ripper/test/check-event-arity.rb: new file.
39937         * ext/ripper/test/check-event-coverage.sh: new file.
39939         * ext/ripper/test/check-scanner-event-coverage.rb: new file.
39941         * ext/ripper/test/list-called-events.rb: new file.
39943         * ext/ripper/test/src_rb: new file.
39945         * ext/ripper/test/validate.rb: new file.
39947         * ext/ripper/tools/generate-eventids1.rb: new file.
39949         * ext/ripper/tools/generate-param-macros.rb: new file.
39951         * ext/ripper/tools/generate-ripper_rb.rb: new file.
39953         * ext/ripper/tools/list-parse-event-ids.rb: new file.
39955         * ext/ripper/tools/list-scan-event-ids.rb: new file.
39957         * ext/ripper/tools/preproc.rb: new file.
39959         * ext/ripper/tools/strip.rb: new file.
39961         * test/ripper: ripper tests added.
39963         * test/ripper/dummyparser.rb: new file.
39965         * test/ripper/test_parser_events.rb: new file.
39967         * test/ripper/test_scanner_events.rb: new file.
39969 Mon Sep 13 01:03:02 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39971         * ext/tcltklib/tcltklib.c: improve control of preserv/release tcltkip
39973         * ext/tcltklib/tcltklib.c: store original 'exit' command
39975         * ext/tk/tkutil.c: fix(?) SEGV
39977 Mon Sep 13 00:22:53 2004  Minero Aoki  <aamine@loveruby.net>
39979         * parse.y: fix file header.
39981 Mon Sep 13 00:20:39 2004  Minero Aoki  <aamine@loveruby.net>
39983         * parse.y: ripper merged.
39985         * lex.c: ditto.
39987         * keywords: ditto.
39989 Sun Sep 12 23:53:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
39991         * util.c (ruby_strdup): remove unnecessary code. (xmalloc never
39992           returns NULL.)
39994         * util.c (ruby_getcwd): fix memory leak on failure.
39996 Sun Sep 12 02:41:58 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
39998         * ext/tcltklib/tcltklib.c: add TclTkIp#allow_ruby_exit? and
39999           allow_ruby_exit=
40001         * ext/tk/lib/multi-tk.rb: ditto.
40003         * ext/tk/lib/remote-tk.rb: ditto.
40005         * ext/tcltklib/MANUAL.euc: ditto.
40007         * ext/tcltklib/MANUAL.eng: ditto.
40009         * ext/tcltklib/tcltklib.c: fix some reasons of SEGV
40011         * ext/tk/tkutil.c: ditto.
40013         * ext/tk/lib/multi-tk.rb: ditto.
40015         * ext/tk/lib/tk/timer.rb: ditto.
40017 Sat Sep 11 16:09:46 2004  Dave Thomas  <dave@pragprog.com>
40019         * lib/rdoc/parsers/parse_rb.rb: Fix up cross-file class merging.
40021 Fri Sep 10 20:18:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40023         * ext/tcltklib/tcltklib.c (lib_merge_tklist): fix suspicious
40024           pointer conversion.
40026 Fri Sep 10 19:16:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40028         * bcc32/Makefile.sub: bccwin32 port starts to use RTL dll.
40029           (need to rebuild all) [ruby-dev:24138]
40031         * win32/win32.{h,c}: ditto.
40033 Fri Sep 10 15:55:59 2004  Minero Aoki  <aamine@loveruby.net>
40035         * lib/fileutils.rb (mkdir_p): should pass mode argument to
40036           Dir.mkdir. [ruby-dev:24242]
40038         * test/fileutils/test_fileutils.rb: test it.
40040 Fri Sep 10 02:43:54 2004  Dave Thomas  <dave@pragprog.com>
40042         * lib/rdoc/generators/template/kilmer.rb: James Buck's
40043           patch for call-seq.
40045 Thu Sep  9 13:58:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40047         * ext/tcltklib/tcltklib.c (ip_init): change flag value for setting
40048           'argv' and 'argv0' variable
40050         * ext/tk/lib/remote-tk.rb: follow changes of multi-tk.rb
40052 Thu Sep  9 11:46:18 2004  Dave Thomas  <dave@pragprog.com>
40054         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_classes): Allow
40055           spaces aroun parameter to define_method_under (James Buck)
40057 Wed Sep  8 18:44:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40059         * ext/stringio/stringio.c (strio_write): zero fill a gap if exsts.
40060           [ruby-dev:24190]
40062 Wed Sep  8 15:19:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40064         * ext/tcltklib/tcltklib.c (ip_init): cannot create a IP at level 4
40066         * ext/tk/lib/multi-tk.rb: improve 'exit' operation, security check,
40067           and error treatment
40069         * ext/tk/lib/multi-tk.rb: allow a trusted slave IP to create slave IPs
40071         * ext/tk/lib/tk/listbox.rb: add TkListbox#value, value=, clear, and
40072           erase
40074         * ext/tk/lib/tk/text.rb: add TkText#clear and erase
40076 Tue Sep  7 15:17:49 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40078         * ext/socket/socket.c (ruby_connect): break immediately if a
40079           socket is non-blocking.  [ruby-talk:111654]
40081 Tue Sep  7 12:48:22 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40083         * {bcc32,win32,wince}/Makefile.sub (config.h): add fcntl.
40085         * win32/win32.[ch] (fcntl): ditto.
40087         * win32/win32.c (rb_w32_connect): support nonblocking mode.
40089         * ext/socket/socket.c (wait_connectable, ruby_connect): support
40090           nonblocking connect on various platforms.
40092 Mon Sep  6 11:00:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40094         * dir.c (dir_s_chdir): the patch to shut up false warning when
40095           exception occurred within a block.  a patch was given from Johan
40096           Holmberg <holmberg at iar.se>.  [ruby-core:03292]
40098 Mon Sep  6 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40100         * ext/tk/lib/tk/menu.rb(TkOptionMenubutton#insert): call correct method
40102 Mon Sep  6 07:51:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40104         * eval.c (cvar_cbase): singletons should refer outer cvar scope.
40105           [ruby-dev:24223]
40107         * eval.c (rb_load): should preserve previous ruby_wrapper value.
40108           [ruby-dev:24226]
40110 Sat Sep  4 01:14:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40112         * eval.c (cvar_cbase): class variables cause SEGV in
40113           instance_eval() for fixnums and symbols. [ruby-dev:24213]
40115 Fri Sep  3 17:47:58 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40117         * struct.c (make_struct): remove redefining constant when
40118           conflict.  [ruby-dev:24210]
40120 Fri Sep  3 11:31:44 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40122         * ext/tk/lib/tk.rb: Tk.after makes TkCore::INTERP.tk_cmd_tbl grow
40123           [ruby-dev:24207]
40125 Fri Sep  3 02:12:48 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40127         * ext/tcltklib/tcltklib.c: fix typo [ruby-talk:111266]
40129         * ext/tk/lib/tk/text.rb: fix typo
40131         * ext/tk/lib/multi-tk.rb: improve safe-level treatment on slave IPs
40133 Fri Sep  3 01:54:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40135         * ext/extmk.rb (extmake): extact target prefix from Makefiles.
40137         * ext/extmk.rb: already built-in libraries satisfy dependencies.
40138           [ruby-dev:24028]
40140 Wed Sep  1 21:16:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40142         * ext/tk/lib/tk/spinbox.rb: fix typo
40144 Wed Sep  1 19:28:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40146         * process.c (rb_proc_exec): label cannot precede variable declarations.
40148 Tue Aug 31 18:20:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40150         * ext/tk/tkutil.c (cbsubst_init): fix memory leak
40152         * ext/tk/tkutil.c (cbsubst_get_all_subst_keys): fix SEGV
40154 Tue Aug 31 16:04:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40156         * ext/tcltklib/tcltklib.c (ip_delete): when a tcltkip is deleted,
40157           destroy its root widget
40159 Tue Aug 31 12:30:36 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40161         * ext/tcltklib/tcltklib.c (del_root): fix SEGV
40163 Mon Aug 30 21:50:14 2004  Dave Thomas  <dave@pragprog.com>
40165         * object.c: Add RDoc for Module.included.
40167 Mon Aug 30 23:11:06 2004  Dave Thomas  <dave@pragprog.com>
40169         * lib/rdoc/ri/ri_driver.rb (and others): ri now merges documentation
40170           if it finds the same class in multiple places.
40172 Mon Aug 30 22:40:30 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40174         * ext/tk/lib/multi-tk.rb: 'restart' method accepts arguments
40176 Mon Aug 30 15:10:46 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40178         * configure.in (GNU/k*BSD): fixed FTBFS on GNU/k*BSD. [ruby-dev:24051]
40180 Sun Aug 29 14:08:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40182         * ext/tcltklib/tcltklib.c: compile error on bcc32 [ruby-dev:24081]
40184         * ext/tk/lib/multi-tk.rb: MultiTkIp#eval_string does not work
40186 Sat Aug 28 23:04:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40188         * bignum.c (rb_big_and): protect parameters from GC.
40189           [ruby-talk:110664]
40191 Fri Aug 27 12:13:50 2004  Tanaka Akira  <akr@m17n.org>
40193         * ext/stringio/stringio.c (Init_stringio): add StringIO#readpartial as
40194           an alias for StringIO#sysread.
40196 Fri Aug 27 10:14:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40198         * process.c (rb_proc_exec): strip trailing spaces.  [ruby-dev:24143]
40200         * win32/win32.c (CreateChild): ditto.
40202 Thu Aug 26 04:38:29 2004  Dave Thomas  <dave@pragprog.com>
40204         * eval.c (return_jump): Minor typo in error message. Now reads
40205           "return can't jump across threads".
40207 Wed Aug 25 15:18:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40209         * eval.c (rb_longjmp): Exception#to_str is no longer defined.
40211 Wed Aug 25 11:39:10 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40213         * error.c (exc_equal): exceptions are equal if they share same
40214           class, message and backtrace. [ruby-talk:110354]
40216         * error.c (name_err_mesg_equal): ditto.
40218 Tue Aug 24 16:41:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
40220         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): do not
40221           use a session id as a filename.
40223         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): ditto.
40225         * lib/cgi/session/pstore.rb (CGI::Session::PStore#initialize): use
40226           Dir::tmpdir.
40228 Tue Aug 24 14:32:17 2004  Shugo Maeda  <shugo@ruby-lang.org>
40230         * lib/cgi/session.rb (CGI::Session::FileStore#initialize): untaint
40231           session id after check.
40233 Tue Aug 24 08:57:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40235         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): d2i
40236           functions may replace the pointer indicated by the first argument.
40238         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
40240         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
40242 Mon Aug 23 12:43:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40244         * lib/resolv.rb (Config.default_config_hash): when multiple domains
40245           are set, Win32::Resolv.get_resolv_info returns Array.
40247 Sun Aug 22 16:27:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40249         * ext/openssl/ossl_ssl.c (ossl_ssl_read):
40250           - should return an empty string if specified length to read is 0.
40251           - should check for pending data and wait for fd before reading.
40252           - call underlying IO's sysread if SSL session is not started.
40253           [ruby-dev:24072], [ruby-dev:24075]
40255         * ext/openssl/ossl_ssl.c (ossl_ssl_write):
40256           - call underlying IO's syswrite if SSL session is not started.
40258         * ext/openssl/ossl_ssl.c (ossl_ssl_pending): new method
40259           OpenSSL::SSL#pending.
40261         * ext/openssl/lib/openssl/buffering.rb: should not use select.
40263 Sun Aug 22 01:10:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40265         * lib/webrick/httpproxy.rb (WEBrick::HTTPProxyServer#proxy_connect):
40266           should call :ProxyContentHandler before finishing CONNECT.
40268 Sat Aug 21 06:41:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40270         * ext/tcltklib/extconf.rb (find_tcl, find_tk): find stub library.
40272         * lib/mkmf.rb (arg_config, with_config): deal with '-' and '_'
40273           uniformly.  [ruby-dev:24118]
40275 Fri Aug 20 14:49:42 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40277         * io.c (rb_io_check_writable): no need to check read buffer if
40278           already changed to write mode.
40280 Fri Aug 20 11:46:43 2004  UENO Katsuhiro  <katsu@blue.sky.or.jp>
40282         * ext/zlib/zlib.c: GzipReader#ungetc caused crc error.
40284 Thu Aug 19 16:29:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40286         * ext/tk/lib/tk.rb: Fail to treat a hash value of 'font' option.
40288         * ext/tk/lib/tk.rb: bindinfo cannot return '%' substiturion infomation.
40290         * ext/tk/lib/menu.rb: typo bug.
40292 Thu Aug 19 15:15:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40294         * dir.c (free_dir): fix memory leak.  reported by yamamoto
40295           madoka.
40297 Thu Aug 19 09:19:27 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40299         * configure.in, win32/Makefile.sub (LIBS): need to link shell32
40300           library for SH* functions on mswin32 and mingw32.
40302         * wince/Makefile.sub (LIBS): need to link ceshell library for SH*
40303           functions on mswince.
40305 Thu Aug 19 03:07:00 2004  why the lucky stiff  <why@ruby-lang.org>
40307         * lib/yaml/baseemitter.rb: folding now handles double-quoted strings,
40308           fixed problem with extra line feeds at end of folding, whitespace
40309           opening scalar blocks.
40311         * lib/yaml/rubytypes.rb: subtelties in handling strings with
40312           non-printable characters and odd whitespace patterns.
40314 Wed Aug 18 23:44:20 2004  Minero Aoki  <aamine@loveruby.net>
40316         * lib/net/protocol.rb (rbuf_fill): OpenSSL::SSLSocket has its own
40317           buffer, select(2) might not work. [ruby-dev:24072]
40319 Wed Aug 18 17:10:12 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40321         * ext/tcltklib/stubs.c (ruby_tcltk_stubs): need to call
40322           Tcl_FindExecutable() for Tcl/Tk 8.4.
40324 Wed Aug 18 12:52:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40326         * eval.c (rb_obj_instance_eval): evaluates under special singleton
40327           classes as for special constants.
40329 Wed Aug 18 11:22:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40331         * win32/win32.c (init_env): initialize HOME and USER environment
40332           variables unless set.
40334 Wed Aug 18 10:17:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40336         * eval.c (bind_eval): new method. [RCR 251]
40338         * string.c (rb_str_clear): new method. [ruby-dev:24104]
40340 Tue Aug 17 17:20:59 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40342         * io.c (rb_io_reopen): should clear allocated OpenFile.  pointed
40343           out by Guy Decoux. [ruby-core:03288]
40345 Tue Aug 17 01:36:32 2004  Dave Thomas  <dave@pragprog.com>
40347         * lib/rdoc/usage.rb: Remove extra indent. Tidy 'ri' option
40348           parsing so RDoc::usage plays better with OptionParser.
40350 Sat Aug 14 02:48:16 2004  Dave Thomas  <dave@pragprog.com>
40352         * lib/rdoc/usage.rb: Added. Allows command line programs
40353           to report usage using their initial RDoc comment.
40355 Sat Aug 14 01:25:48 2004  why the lucky stiff  <why@ruby-lang.org>
40357         * ext/syck/token.c: re2c no longer compiled with bit vectors.  caused
40358           problems for non-ascii characters. [ruby-core:03280]
40359         * ext/syck/implicit.c: ditto.
40360         * ext/syck/bytecode.c: ditto.
40362 Fri Aug 13 12:55:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40364         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.parse_range_header):
40365           fix regex for range-spec.
40367         * lib/webrick/httpservlet/filehandler.rb
40368           (WEBrick::HTTPServlet::DefaultFileHandler#make_partial_content):
40369           multipart/byteranges response was broken.
40371         * lib/xmlrpc/server.rb: refine example code.
40373 Thu Aug 12 10:54:17 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
40375         * rubyio.h (rb_eof_error): should mark as NORETURN.
40377         * win32/win32.c (make_cmdvector): adjust escaped successive
40378           double-quote handling.
40380 Thu Aug 12 01:53:10 2004  Tanaka Akira  <akr@m17n.org>
40382         * io.c (read_buffered_data): extracted from rb_io_fread.
40383           (io_readpartial): new method IO#readpartial.
40384           [ruby-dev:24055]
40386 Wed Aug 11 17:17:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40388         * configure.in (RPATHFLAG): stop setting RPATHFLAG on Interix.
40390 Mon Aug  9 15:03:20 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40392         * lib/webrick/httpservlet/erbhandler.rb
40393           (WEBrick::HTTPServlet::ERBHandler#do_GET): should select media type
40394           by suffix of script filename.
40396 Mon Aug  9 12:51:43 2004  Dave Thomas  <dave@pragprog.com>
40398         * dir.c (dir_s_glob): Roll in Austin Ziegler's Dir.glob and
40399           fnmatch updates.
40401 Mon Aug  9 06:33:06 2004  Minero Aoki  <aamine@loveruby.net>
40403         * lib/fileutils.rb (cp_r): copies symlink to symlink, except
40404           root entries of cp_r.
40406         * lib/fileutils.rb: new method FileUtils.copy_entry.
40408         * test/fileutils/test_fileutils.rb: more cp_r tests.
40410 Sun Aug  8 00:43:31 2004  why the lucky stiff  <why@ruby-lang.org>
40412         * lib/implicit.c: added sexagecimal float#base60.
40414         * ext/syck/rubyext.c (yaml_org_handler): ditto.
40416         * lib/token.c: indentation absolutely ignored when processing flow
40417           collections.  plain scalars are trimmed if indentation follows in
40418           an ambiguous flow collection.
40420 Sat Aug  7 03:08:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40422         * process.c (proc_daemon): new method.  should be modified for
40423           platforms without /dev/null.
40425 Sat Aug  7 00:50:01 2004  Tanaka Akira  <akr@m17n.org>
40427         * ext/zlib/zlib.c: Zlib::GzipReader#read(0) returns "" instead of nil.
40429 Wed Aug  4 13:26:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40431         * marshal.c (r_bytes0): optimize out read(0). [ruby-talk:108276]
40433 Tue Aug  3 13:49:12 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40435         * ext/tk/lib/tk/namespace.rb: bug fix
40437         * ext/tk/lib/tkextlib/treectrl/tktreectrl.rb: add Tk::TreeCtrl.loupe
40439 Mon Aug  2 23:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40441         * test/ruby/test_file.rb (test_fnmatch): added more tests.
40443 Mon Aug  2 18:04:21 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40445         * ext/tk/lib/tk/msgcat.rb (set_translation): bug fix (fail to set
40446           trans_str to the same as src_str when trans_str is not given.)
40448 Mon Aug  2 17:40:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40450         * eval.c (blk_free): fixed serious memory leak. [ruby-dev:24013]
40452 Mon Aug  2 11:53:06 2004  Dave Thomas  <dave@pragprog.com>
40454         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): Fix infinite recursion
40455           looking up some top level symbols (batsman)
40457 Mon Aug  2 11:48:29 2004  Dave Thomas  <dave@pragprog.com>
40459         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Allow '.'s in
40460           variable names to support SWIG generated files (Hans Fugal)
40462 Sat Jul 31 23:08:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40464         * eval.c (is_defined): stupid mistakes fixed. [ruby-dev:24006]
40466 Sat Jul 31 17:39:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40468         * misc/ruby-mode.el (ruby-expr-beg, ruby-parse-partial,
40469           ruby-calculate-indent, ruby-move-to-block, ruby-forward-sexp,
40470           ruby-backward-sexp): keywords must match word-wise.
40472 Sat Jul 31 13:37:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40474         * eval.c (is_defined): avoid unnecessary method invocations.
40476 Sat Jul 31 05:35:37 2004  why the lucky stiff  <why@ruby-lang.org>
40478         * lib/yaml/rubytypes.rb: exceptions were using an older
40479           YAML.object_maker. [ruby-core:03080]
40481         * ext/syck/token.c (sycklex_yaml_utf8): using newline_len to
40482           handline CR-LFs.  "\000" was showing up on folded blocks which
40483           stopped at EOF.
40485 Sat Jul 31 01:25:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40487         * eval.c (is_defined): call is_defined() before invoking
40488           rb_eval().  [ruby-talk:107867]
40490 Fri Jul 30 16:10:54 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40492         * ext/tcltklib/tcltklib.c (lib_fromUTF8_core): raise ArgumentError when
40493           the unknown encoding name is given.
40495         * ext/tcltklib/tcltklib.c (lib_toUTF8_core): ditto.
40497         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertfrom): bug fix.
40499         * ext/tk/lib/tk.rb (Tk::Encoding.encoding_convertto): ditto.
40501 Wed Jul 28 18:59:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40503         * lib/cgi.rb (CGI::initialize): remove at_exit code for CGI_PARAMS
40504           and CGI_COOKIES.  they will no longer be used.
40506 Wed Jul 28 15:44:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40508         * eval.c (rb_call0): should call rb_call_super() directly for
40509           visibility overriding.  [ruby-dev:23989]
40511 Wed Jul 28 01:04:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40513         * env.h: remove argv from ruby_frame.
40515         * eval.c (rb_eval): no more copy on write.
40517         * eval.c (assign): ditto.
40519         * eval.c (rb_call0): can receive *rest by specifying negative
40520           argc.  (-1 means 0 arg and *rest, -2 means 1 arg and *rest...)
40522         * eval.c (rb_call0): properly set frame's argc counter.
40524         * gc.c (rb_gc_mark_frame): need not to mark frame's argv
40526         * gc.c (run_final): wrong order of data. [ruby-dev:23984]
40528 Tue Jul 27 07:05:04 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40530         * eval.c (rb_eval): copy on write for argument local variable
40531           assignment.
40533         * eval.c (assign): ditto.
40535         * eval.c (rb_call0): update ruby_frame->argv with the default
40536           value used for the optional arguments.
40538         * object.c (Init_Object): "===" calls rb_obj_equal() directly.
40539           [ruby-list:39937]
40541 Mon Jul 26 11:22:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40543         * lib/webrick/httputils.rb (WEBrick::HTTPUtils.escape): should
40544           escape space.
40546 Sun Jul 25 10:56:28 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40548         * win32/win32.{h,c} (rb_w32_{f,fd,fs}open): workaround for bcc32's
40549           {f,fd,fs}open bug. set errno EMFILE and EBADF. [ruby-dev:23963]
40551         * test/drb/drbtest.rb: fix method duplication.
40553 Sat Jul 24 13:32:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40555         * range.c (rb_range_beg_len): returns Qnil only when "beg" points
40556           outside of a range.  No boundary check for "end".
40558 Fri Jul 23 16:40:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40560         * gc.c (define_final): should not disclose NODE* to Ruby world.
40561           [ruby-dev:23957]
40563 Fri Jul 23 08:52:22 2004  Shugo Maeda  <shugo@ruby-lang.org>
40565         * lib/net/imap.rb (disconnected?): new method.
40567 Thu Jul 22 16:41:54 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40569         * lib/cgi/session.rb (CGI::Session::FileStore#update): sets the
40570           permission of the session data file to 0600.
40572         * lib/cgi/session/pstore.rb (CGI::Session::Pstore#initialize):
40573           ditto.
40575 Mon Jul 19 00:53:46 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40577         * lib/webrick/httpservlet/cgihandler.rb
40578           (WEBrick::HTTPServlet::CGIhandler#do_GET): set SystemRoot environment
40579           variable to CGI process on Windows native platforms. [ruby-dev:23936]
40581 Sun Jul 18 16:14:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40583         * ext/tk/lib/tk/msgcat.rb (TkMsgCatalog.callback): bug fix
40584           ( wrong number of argument )
40586 Sun Jul 18 08:13:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40588         * sprintf.c (rb_f_sprintf): remove extra sign digit.
40590 Sun Jul 18 03:19:14 2004  Akinori MUSHA  <knu@iDaemons.org>
40592         * dir.c (bracket): use NULL instead of 0.
40594 Sun Jul 18 02:35:30 2004  Shugo Maeda  <shugo@ruby-lang.org>
40596         * lib/net/imap.rb (receive_responses): return if a LOGOUT response
40597           received.
40599 Sat Jul 17 23:59:01 2004  Shugo Maeda  <shugo@ruby-lang.org>
40601         * lib/net/imap.rb (send_string_data): wait command continuation
40602           requests before sending octet data of literals.
40604 Sat Jul 17 23:54:59 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40606         * ext/tk/lib/tk/variable.rb: TkVariable#ref returns a TkVariable object
40608 Sat Jul 17 22:04:44 2004  akira yamada  <akira@ruby-lang.org>
40610         * lib/uri/ldap.rb: method hierarchical? should be in URI::LDAP.
40612 Sat Jul 17 18:29:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40614         * parse.y (stmt): not to show same error messages twice.
40616 Sat Jul 17 14:18:11 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40618         * string.c (rb_str_match_m): String#match should also take
40619           optional argument.  [ruby-core:03205]
40621         * re.c (rb_reg_match_m): add optional second argugment "pos" to
40622           specify match start point.  [ruby-core:03203]
40624 Sat Jul 17 13:13:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40626         * lib/irb/ruby-lex.rb (RubyLex::identify_string): %s string do not
40627           process expression interpolation.  [ruby-talk:106691]
40629 Sat Jul 17 05:26:27 2004  Dave Thomas  <dave@pragprog.com>
40631         * lib/rdoc/diagram.rb: Incorporate Micheal Neumann's
40632           client-side imagemao patch
40634 Sat Jul 17 01:57:03 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40636         * eval.c (THREAD_ALLOC): th->thread should be initialized to NULL.
40637           [ruby-talk:106657]  The solution was found by Guy Decoux.
40639 Fri Jul 16 22:30:28 2004  Michael Neumann  <mneumann@ntecs.de>
40641         * file.c (rb_stat_dev_major): new methods File::Stat#dev_major and
40642           #dev_minor. [ruby-core:03195]
40644 Fri Jul 16 11:17:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40646         * error.c (exit_initialize): use EXIT_SUCCESS instead of 0.
40647           [ruby-dev:23913]
40649         * error.c (exit_success_p): new method SystemExit#success?.
40650           [ruby-dev:23912]
40652         * error.c (syserr_initialize): initialization for subclasses.
40653           [ruby-dev:23912]
40655 Thu Jul 15 23:53:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40657         * lib/optparse.rb (OptionParser#warn, OptionParser#abort): Exception
40658           no longer has to_str method.
40660 Thu Jul 15 22:59:48 2004  Shugo Maeda  <shugo@ruby-lang.org>
40662         * ext/readline/extconf.rb: added dir_config for curses, ncurses,
40663           termcap.
40665 Thu Jul 15 20:44:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40667         * class.c: rdoc patch
40669 Thu Jul 15 14:12:34 2004  why the lucky stiff  <why@ruby-lang.org>
40671         * lib/yaml.rb (YAML::load_file, YAML::parse_file): added.
40673         * ext/syck/token.c: re2c compiled with bit vectors now.
40674         * ext/syck/implicit.c: ditto.
40675         * ext/syck/bytecode.c: ditto.
40677 Thu Jul 15 10:15:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40679         * ext/tk/, ext/tcltklib/: bug fix
40681         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
40682           callbacks.
40683         * ext/tk/lib/tk/msgcat.rb: ditto.
40684         * ext/tk/lib/tk/variable.rb: ditto.
40685         * ext/tk/lib/tk/timer.rb: ditto.
40687         * ext/tk/lib/tk/validation.rb: add Tk::ValidateConfigure.__def_validcmd
40688           to define validatecommand methods easier
40690         * ext/tk/lib/tk.rb (_genobj_for_tkwidget): support autoload Tk ext
40691           classes
40693         * ext/tk/lib/tk/canvas.rb and so on: remove the parent widget type
40694           check for items (e.g. canvas items; depends on the class) to
40695           avoid some troubles on Tk extension widget class definition.
40697         * ext/tk/lib/tkextlib/: add Iwidget and TkTable extension support
40699         * ext/tk/sample/tkextlib/: add samples of Iwidget and TkTable
40702 Wed Jul 14 23:49:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
40704         * enum.c (enum_min_by): new method Enum#min_by.  added Enum#max_by
40705           as well.
40707 Wed Jul 14 18:05:21 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40709         * ext/openssl/ossl_asn1.c (ossl_asn1cons_to_der): fix type of
40710           argument. [ruby-dev:23891]
40712         * test/openssl/test_x509store.rb: prune tests for CRL checking
40713           unless X509::V_FLAG_CRL_CHECK is defined.
40715 Wed Jul 14 12:20:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40717         * util.c (ruby_strtod): should not convert string in the form of
40718           "-I.FE-X" which both "I" and "F" are ommitted. [ruby-dev:23883]
40720         * test/ruby/test_float.rb (test_strtod): add test for bug fix.
40722 Wed Jul 14 00:33:48 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40724         * array.c: rdoc patch. merged patch from Johan Holmberg
40725           <holmberg@iar.se> [ruby-core:3170]
40727 Tue Jul 13 19:39:12 2004  akira yamada  <akira@ruby-lang.org>
40729         * lib/uri/generic.rb (URI::Generic#merge_path):
40730           "URI('http://www.example.com/foo/..') + './'" should return
40731           "URI('http://www.example.com/')".  [ruby-list:39838]
40732           "URI('http://www.example.com/') + './foo/bar/..'" should return
40733           "URI('http://www.example.com/foo/')".  [ruby-list:39844]
40735         * test/uri/test_generic.rb (TestGeneric#test_merge): added tests.
40737 Tue Jul 13 15:48:56 2004  Akinori MUSHA  <knu@iDaemons.org>
40739         * lib/mkmf.rb (init_mkmf): Do not add $(libdir) to $LIBPATH in
40740            extmk mode.
40742         * lib/mkmf.rb (dir_config): Prepend a new library path instead of
40743           appending so it is tried first.
40745 Tue Jul 13 00:50:48 2004  Dave Thomas  <dave@pragprog.com>
40747         * lib/rdoc/parsers/parse_rb.rb: Support call-seq: for Ruby files.
40749 Mon Jul 12 21:20:51 2004  Dave Thomas  <dave@pragprog.com>
40751         * html_generator.rb: Support hyperlinks of the form {any text}[xxx]
40752           as well as stuff[xxx]
40754 Sat Jul 10 09:30:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40756         * test/soap/marshal/test_struct.rb: use qualified built-in class name
40757           (::Struct) to avoid name crash.
40759 Sat Jul 10 04:21:56 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40761         * ext/tk/lib/tk.rb: better operation for SIGINT when processing
40762           callbacks.
40763         * ext/tk/lib/tk/msgcat.rb: ditto.
40764         * ext/tk/lib/tk/variable.rb: ditto.
40765         * ext/tk/lib/tk/timer.rb: ditto.
40767         * ext/tk/lib/tk/validation.rb (__def_validcmd):  add a module
40768           function of Tk::ValidateConfigure to define validatecommand
40769           methods easier
40771 Fri Jul  9 22:18:59 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40773         * array.c, enum.c, pack.c: rdoc patch from Johan Holmberg
40774           <holmberg@iar.se> [ruby-core:3132] [ruby-core:3136]
40776         * numeric.c: rdoc patch.
40778 Fri Jul  9 19:26:39 2004  Tanaka Akira  <akr@m17n.org>
40780         * lib/open-uri.rb (URI::HTTPS#proxy_open): raise ArgumentError to
40781           notice https is not supported.
40783 Fri Jul  9 14:28:54 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40785         * eval.c (rb_thread_raise): accept third argument as well as
40786           Kernel#raise, and evaluate the arguments to create an exception in
40787           the caller's context.  [ruby-talk:105507]
40789 Fri Jul  9 01:47:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40791         * ext/tk/lib: bug fix
40792         * ext/tk/lib/tkextlib/itcl: add [incr Tcl] support
40793         * ext/tk/lib/tkextlib/itk: add [incr Tk] support
40794         * ext/tk/lib/tkextlib/iwidgets: midway point of [incr Widgets] support
40795         * ext/tk/sample/tkextlib/iwidgets: very simple examples of
40796           [incr Widgets]
40798 Thu Jul  8 19:27:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40800         * configure.in (rb_cv_stack_end_address): detect stack end address
40801           variable supplied by system.  [ruby-core:03115]
40803         * gc.c (Init_stack): use system provided address if possible.
40805 Thu Jul  8 00:05:23 2004  akira yamada  <akira@ruby-lang.org>
40807         * lib/tempfile.rb (Tempfile::initialize): got out code of
40808           generating tmpname.  [ruby-dev:23832][ruby-dev:23837]
40810 Wed Jul  7 02:31:41 2004  Kouhei Sutou  <kou@cozmixng.org>
40812         * lib/rss/{rss,parser,0.9,1.0,2.0}.rb: supported RSS 0.9x/2.0
40813           validation and validation which disregard order of elements.
40814         * test/rss/test_parser.rb: added tests for RSS 0.9x/2.0
40815           validation.
40816         * test/rss/{test_trackback,rss-testcase}.rb: fixed no good method
40817           name.
40819 Wed Jul  7 00:48:34 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40821         * ext/tk/lib/tkextlib/tktrans.rb,
40822           ext/tk/lib/tkextlib/treectrl.rb: fix syntax errors.
40824 Tue Jul  6 18:38:45 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40826         * ext/tk/lib: improve framework of developping Tcl/Tk extension
40827           wrappers
40829 Mon Jul  5 23:56:42 2004  Kouhei Sutou  <kou@cozmixng.org>
40831         * lib/rss/{trackback,syndication,dublincore,content}.rb: worked
40832           with ruby 1.6 again.
40834         * test/rss/rss-assertions.rb: ditto.
40836 Mon Jul  5 22:54:39 2004  Tanaka Akira  <akr@m17n.org>
40838         * lib/uri/common.rb (Kernel#URI): new global method for parsing URIs.
40840 Mon Jul  5 09:02:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40842         * eval.c (rb_thread_yield, rb_f_catch): 4th argument to rb_yield_0()
40843           is a set of bit flags.  [ruby-dev:23859]
40845 Mon Jul  5 01:20:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
40847         * lib/drb/drb.rb(DRbConn self.open): If socket pool is full, close
40848           the socket whose last-access-time is oldest. (and add new one)
40849           [ruby-dev:23860]
40851 Sun Jul  4 12:24:50 2004  Kouhei Sutou  <kou@cozmixng.org>
40853         * lib/rss/rss.rb: added copyright header.
40855 Sat Jul  3 22:25:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
40857         * added files:
40858           * lib/soap/header/*
40859           * lib/soap/rpc/httpserver.rb
40860           * lib/wsdl/soap/cgiStubCreator.rb
40861           * lib/wsdl/soap/classDefCreator.rb
40862           * lib/wsdl/soap/classDefCreatorSupport.rb
40863           * lib/wsdl/soap/clientSkeltonCreator.rb
40864           * lib/wsdl/soap/driverCreator.rb
40865           * lib/wsdl/soap/mappingRegistryCreator.rb
40866           * lib/wsdl/soap/methodDefCreator.rb
40867           * lib/wsdl/soap/servantSkeltonCreator.rb
40868           * lib/wsdl/soap/standaloneServerStubCreator.rb
40869           * lib/wsdl/xmlSchema/enumeration.rb
40870           * lib/wsdl/xmlSchema/simpleRestriction.rb
40871           * lib/wsdl/xmlSchema/simpleType.rb
40872           * lib/xsd/codegen/*
40873           * lib/xsd/codegen.rb
40874           * sample/soap/authheader/*
40875           * sample/soap/raa2.4/*
40876           * sample/soap/ssl/*
40877           * sample/soap/swa/*
40878           * sample/soap/whois.rb
40879           * sample/wsdl/raa2.4/*
40880           * test/soap/header/*
40881           * test/soap/ssl/*
40882           * test/soap/struct/*
40883           * test/soap/swa/*
40884           * test/soap/wsdlDriver/*
40885           * test/wsdl/multiplefault.wsdl
40886           * test/wsdl/simpletype/*
40887           * test/wsdl/test_multiplefault.rb
40889         * modified files:
40890           * lib/soap/baseData.rb
40891           * lib/soap/element.rb
40892           * lib/soap/generator.rb
40893           * lib/soap/netHttpClient.rb
40894           * lib/soap/parser.rb
40895           * lib/soap/property.rb
40896           * lib/soap/soap.rb
40897           * lib/soap/streamHandler.rb
40898           * lib/soap/wsdlDriver.rb
40899           * lib/soap/encodingstyle/handler.rb
40900           * lib/soap/encodingstyle/literalHandler.rb
40901           * lib/soap/encodingstyle/soapHandler.rb
40902           * lib/soap/mapping/factory.rb
40903           * lib/soap/mapping/mapping.rb
40904           * lib/soap/mapping/registry.rb
40905           * lib/soap/mapping/rubytypeFactory.rb
40906           * lib/soap/mapping/wsdlRegistry.rb
40907           * lib/soap/rpc/cgistub.rb
40908           * lib/soap/rpc/driver.rb
40909           * lib/soap/rpc/proxy.rb
40910           * lib/soap/rpc/router.rb
40911           * lib/soap/rpc/soaplet.rb
40912           * lib/soap/rpc/standaloneServer.rb
40913           * lib/wsdl/data.rb
40914           * lib/wsdl/definitions.rb
40915           * lib/wsdl/operation.rb
40916           * lib/wsdl/parser.rb
40917           * lib/wsdl/soap/definitions.rb
40918           * lib/wsdl/xmlSchema/complexContent.rb
40919           * lib/wsdl/xmlSchema/complexType.rb
40920           * lib/wsdl/xmlSchema/data.rb
40921           * lib/wsdl/xmlSchema/parser.rb
40922           * lib/wsdl/xmlSchema/schema.rb
40923           * lib/xsd/datatypes.rb
40924           * lib/xsd/qname.rb
40925           * sample/soap/sampleStruct/server.rb
40926           * sample/wsdl/amazon/AmazonSearch.rb
40927           * sample/wsdl/amazon/AmazonSearchDriver.rb
40928           * test/soap/test_property.rb
40929           * test/soap/calc/test_calc_cgi.rb
40930           * test/wsdl/test_emptycomplextype.rb
40932         * summary
40933           * add SOAP Header mustUnderstand support.
40935           * add HTTP client SSL configuration and Cookies support (works
40936             completely with http-access2).
40938           * add header handler for handling sending/receiving SOAP Header.
40940           * map Ruby's anonymous Struct to common SOAP Struct in SOAP Object
40941             Model.  it caused error.
40943           * add WSDL simpleType support to restrict lexical value space.
40945 Sat Jul  3 17:19:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
40947         * ext/tk/lib/tkextlib/tkDND.rb: fix syntax error.
40949 Thu Jul  1 18:36:08 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
40951         * ext/tk/lib/tcltklib: bug fix
40953         * ext/tk/lib/tk: bug fix and add Tcl/Tk extension support libraries
40955 Thu Jul  1 18:31:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
40957         * lib/pstore.rb (PStore#transaction): get rid of opening in write mode
40958           when read only transaction.  [ruby-dev:23842]
40960 Thu Jul  1 00:44:42 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40962         * ext/openssl/ossl_cipher.c (ossl_cipher_encrypt, ossl_cipher_decrypt):
40963           re-implemnt (the arguments for this method is ).
40965         * ext/openssl/ossl_cipher.c (ossl_cipher_pkcs5_keyivgen): new method
40966           OpenSSL::Cipher::Cipher#pkcs5_keyivgen. it calls EVP_BytesToKey().
40968         * ext/openssl/ossl_cipher.c (ossl_cipher_set_key_length): new method
40969           OpenSSL::Cipher::Cipher#key_len=.
40971 Wed Jun 30 19:48:09 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
40973         * ext/openssl/extconf.rb: check for EVP_CIPHER_CTX_copy, ENGINE_add,
40974           EVP_CIPHER_CTX_set_padding, EVP_CipherFinal_ex, EVP_CipherInit_ex,
40975           EVP_DigestFinal_ex and EVP_DigestInit_ex.
40977         * ext/openssl/openssl_missing.c (EVP_CIPHER_CTX_copy): new function.
40979         * ext/openssl/openssl_missing.h (EVP_DigestInit_ex, EVP_DigestFinal_ex,
40980           EVP_CipherInit_ex, EVP_CipherFinal_ex, HMAC_Init_ex): new macro for
40981           OpenSSL 0.9.6.
40983         * ext/openssl/ossl_cipher.c (ossl_cipher_alloc, ossl_cipher_initialize,
40984           ossl_cipher_copy, ossl_cipher_reset, ossl_cipher_encrypt,
40985           ossl_cipher_decrypt, ossl_cipher_final, ossl_cipher_set_key,
40986           ossl_cipher_set_iv): replace all EVP_CipherInit and
40987           EVP_CipherFinal into EVP_CipherInit_ex and EVP_CipherFinal_ex.
40988           and EVP_CIPHER_CTX_init should only be called once.
40990         * ext/openssl/ossl_cipher.c (ossl_cipher_set_padding): check for
40991           EVP_CIPHER_CTX_set_padding.
40993         * ext/openssl/ossl_cipher.c (Init_ossl_cipher): Cipher#<< is deprecated.
40995         * ext/openssl/ossl_digest.c: replace all EVP_DigestInit and
40996           EVP_DigestFinal into EVP_DigestInit_ex and EVP_DigestFinal_ex.
40997           and EVP_MD_CTX_init should only be called once.
40999         * ext/openssl/ossl_digest.c (digest_final): should call
41000           EVP_MD_CTX_cleanup to avoid memory leak.
41002         * ext/openssl/ossl_hmac.c (ossl_hmac_initialize): repalce HMAC_init
41003           into HMAC_init_ex. and HMAC_CTX_init is moved to ossl_hmac_alloc.
41005         * ext/openssl/ossl_hmac.c (hmac_final): should call
41006           HMAC_CTX_cleanup to avoid memory leak.
41008         * test/openssl/test_cipher.rb, test/openssl/test_digest.rb,
41009           test/openssl/test_hmac.rb: new file.
41011 Wed Jun 30 16:59:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41013         * test/ruby/test_file.rb (test_fnmatch): some tests for File.fnmatch
41014           are added.
41016 Wed Jun 30 11:38:51 2004  Mikael Brockman  <phubuh@phubuh.org>
41018         * parse.y (primary): should not be NULL.  [ruby-core:03098]
41020 Wed Jun 30 02:41:10 2004  why the lucky stiff  <why@ruby-lang.org>
41022         * ext/syck/rubyext.c (syck_emitter_new): set buffer after
41023           Data_Wrap_Struct to avoid possible GC. [ruby-talk:104835]
41025 Tue Jun 29 10:31:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41027         * eval.c (rb_eval_cmd, rb_thread_trap_eval): restore safe level.
41029         * gc.c (define_final, run_final): preserve and restore safe level for
41030           finalizers.  [ruby-core:03058]
41032         * signal.c (signal_exec, rb_trap_exit, trap): preserve and restore
41033           safe level for signal handlers.  [ruby-dev:23829]
41035 Mon Jun 28 14:57:56 2004  Jeff Mitchell  <quixoticsycophant@yahoo.com>
41037         * configure.in, lib/mkmf.rb (LIBPATHFLAG): use double quotes due to
41038           DOSISH compilers.  [ruby-core:03107]
41040 Mon Jun 28 00:35:29 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41042         * sample/drb/*.rb: using 'DRb.thread.join' instead of 'gets'
41044 Sun Jun 27 22:36:47 2004  Kouhei Sutou  <kou@cozmixng.org>
41046         * sample/rss/tdiary_plugin/rss-recent.rb: supported Hiki.
41048 Sat Jun 26 15:17:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41050         * variable.c (rb_mod_class_variables): class variables are no longer
41051           inherited.  [ruby-dev:23808]
41053 Sat Jun 26 11:07:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41055         * configure.in (aix): -b must come at the start of the command line,
41056           and -e must not appear while testing libraries.  [ruby-talk:104501]
41058         * lib/mkmf.rb (find_header, dir_config): quote directory names if
41059           necessary.  [ruby-talk:104505]
41061 Sat Jun 26 00:13:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41063         * io.c (rb_fopen, rb_fdopen, rb_io_reopen): setvbuf() may return
41064           positive value on failure.  [ruby-dev:23792]
41066 Fri Jun 25 18:07:15 2004  Michal Rokos  <michal@ruby-lang.org>
41068         * gc.c: bring back _stklen for DJGPP [ruby-core:3084]
41070 Fri Jun 25 15:33:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41072         * ext/iconv/extconf.rb: check stricter.  [ruby-talk:104501]
41074 Fri Jun 25 01:58:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41076         * {bcc32,win32,wince}/setup.mak: remove RUBY_EXTERN lines when
41077           including version.h. [ruby-talk:104456]
41079 Thu Jun 24 14:23:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41081         * io.c (rb_io_fread): return already read data when system call is
41082           interrupted.  [ruby-talk:97206]
41084 Thu Jun 24 01:25:21 2004  Shugo Maeda  <shugo@ruby-lang.org>
41086         * version.h: added declarations of ruby_version,
41087           ruby_release_date, ruby_platform.
41089 Thu Jun 24 01:07:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41091         * ext/socket/socket.c (sock_sockaddr): Socket#gethostbyname()
41092           should give us packed address, not struct sockaddr.
41093           [ruby-core:03053]
41095 Wed Jun 23 22:19:10 2004  Dave Thomas  <dave@pragprog.com>
41097         * ext/socket/socket.c (sock_s_gethostbyaddr): Work around problem
41098           with OS X not returning 'from' parameter to recvfrom for
41099           connection-oriented sockets.
41101 Wed Jun 23 22:16:16 2004  Michal Rokos  <michal@ruby-lang.org>
41103         * io.c: io_seek()'s retval should be checked [ruby-core:03045]
41105 Wed Jun 23 21:48:27 2004  Michal Rokos  <michal@ruby-lang.org>
41107         * time.c: Fix indentation.
41109         * main.c: Remove _stklen, and _CRT_glob. Move _stacksize for
41110           __human68k__ to gc.c where the others are.
41112         * gc.c: put _stacksize in place and clean the #ifdefs macros.
41114 Wed Jun 23 17:37:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
41116         * lib/net/imap.rb: added new option --ssl.
41118 Wed Jun 23 01:45:27 2004  Dave Thomas  <dave@pragprog.com>
41120         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_quotation):
41121           Fix problem with the 'r' being dropped from %r{xxx}
41123 Wed Jun 23 00:10:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41125         * ext/win32ole/win32ole.c (ole_hresult2msg): remove trailing
41126           CRs and LFs. (doesn't depend on CR+LF) [ruby-dev:23749]
41128 Wed Jun 23 00:00:25 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41130         * eval.c (return_jump, break_jump): raise unexpected local jump
41131           exception directly.  [ruby-dev:23740]
41133         * io.c (rb_io_initialize): should check fcntl result.  [ruby-dev:23742]
41135 Tue Jun 22 23:35:43 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41137         * sprintf.c (rb_f_sprintf): support FZERO and FSPACE with NaN/Inf.
41139         * test/ruby/test_sprintf.rb (test_nan, test_inf): add tests.
41141 Tue Jun 22 21:11:36 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
41143         * ext/win32ole/win32ole.c (OLE_FREE): should not call CoFreeUnuse-
41144           dLibraries().
41146         * ext/win32ole/win32ole.c (ole_event_free): ditto.
41148         * ext/win32ole/win32ole.c (ole_hresult2msg): truncate error message
41149           before CR.
41151 Tue Jun 22 19:24:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41153         * sprintf.c (rb_f_sprintf): unify output of NaN, Inf and -Inf with
41154           "%f" or etc on all platform. [ruby-dev:23704], [ruby-dev:23747]
41156 Tue Jun 22 15:28:12 2004  Michal Rokos  <michal@ruby-lang.org>
41158         * compar.c: Remove explicit NIL_P() checks since rb_cmpint() does it
41159           again in the exactly same manner.
41161 Tue Jun 22 01:32:40 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41163         * ext/openssl/ossl_pkey_dh.c (ossl_dh_initialize): should create
41164           empty pkey object if no argument is passed. [ruby-talk:103328]
41166         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_initialize): ditto.
41168         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_initialize): ditto.
41170         * ext/openssl/ossl_pkey_dh.c: add new methods: OpenSSL::PKey::DH#p,
41171           OpenSSL::PKey::DH#p=, OpenSSL::PKey::DH#g, OpenSSL::PKey::DH#g=,
41172           OpenSSL::PKey::DH#pub_key, OpenSSL::PKey::DH#pub_key=,
41173           OpenSSL::PKey::DH#priv_key and OpenSSL::PKey::DH#priv_key=.
41175         * ext/openssl/ossl_pkey_dsa.c: add new methods: OpenSSL::PKey::DSA#p,
41176           OpenSSL::PKey::DSA#p=, OpenSSL::PKey::DSA#q, OpenSSL::PKey::DSA#q=,
41177           OpenSSL::PKey::DSA#g, OpenSSL::PKey::DSA#g=,
41178           OpenSSL::PKey::DSA#pub_key, OpenSSL::PKey::DSA#pub_key=,
41179           OpenSSL::PKey::DSA#priv_key and OpenSSL::PKey::DSA#priv_key=.
41181 Mon Jun 21 09:24:51 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41183         * win32/win32.c (rb_w32_opendir): should set errno if error occurs
41184           when calling OS API.
41186 Sun Jun 20 21:12:54 2004  Shugo Maeda  <shugo@ruby-lang.org>
41188         * lib/net/ftp.rb (binary=): send TYPE commands only once.
41190 Sat Jun 19 13:27:01 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41192         * eval.c (method_call): allow changing $SAFE.  [ruby-dev:23713]
41194         * eval.c (proc_set_safe_level, proc_invoke, rb_mod_define_method): not
41195           set $SAFE for methods defined from Proc.  [ruby-dev:23697]
41197 Sat Jun 19 01:10:12 2004  Kouhei Sutou  <kou@cozmixng.org>
41199         * sample/rss/tdiary_plugin/rss-recent.rb: added more information.
41201 Fri Jun 18 23:12:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41203         * eval.c (proc_save_safe_level, rb_set_safe_level, safe_setter): limit
41204           safe level.
41206 Wed Jun 16 23:05:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41208         * object.c (rb_mod_freeze): prepare string representation before
41209           freezing. [ruby-talk:103646]
41211 Wed Jun 16 19:57:24 2004  Michal Rokos  <michal@ruby-lang.org>
41213         * test/ruby/test_array.rb: extend testcase to check #first, #last,
41214           #shift, #unshift, #pop, #push
41216 Wed Jun 16 16:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41218         * array.c (ary_new): move alloc behind checks.  [ruby-core:02982]
41220         * array.c (rb_ary_pop_m, rb_ary_shift_m): take arg to behave as push
41221           and unshift.
41223         * array.c (rb_ary_first, rb_ary_last): make shared array for result
41224           array, and correct doc for Array#first(n) and Array#last(n)
41226         * array.c (rb_ary_select): not accept any arg.
41228 Wed Jun 16 16:03:59 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41230         * object.c (rb_class_inherited_p): singleton class inherits Class
41231           rather than its object's class.  [ruby-dev:23690]
41233 Wed Jun 16 16:01:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41235         * gc.c (stack_grow_direction): memoize the direction.
41237         * gc.c (Init_stack): should always move to end of VALUE.
41239 Tue Jun 15 12:10:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41241         * ext/tk/lib/tk.rb: bug fix (TkWindow#grab)
41243 Mon Jun 14 18:23:27 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41245         * ext/tk/lib/remote-tk.rb: bug fix
41247 Sun Jun 13 00:23:04 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41249         * ext/tcltklib/extconf.rb: [EXPERIMENTAL] MacOS X (darwin) support
41251         * ext/tcltklib/tcltklib.c: fix thread trouble on callback proc, and
41252           eliminate warning about instance variable access
41254         * ext/tk/lib/tk/menubar.rb: improve supported menu_spec
41256         * ext/tk/lib/tk/menuspec.rb: [add] menu_spec support library
41258         * ext/tk/lib/tk/root.rb: add menu_spec support
41260         * ext/tk/lib/tk/text.rb: bug fix
41262         * ext/tk/lib/tk/toplevel.rb: add menu_spec support
41264         * ext/tk/sample/menubar?.rb: [add] sample of menu_spec usage
41266 Sat Jun 12 14:15:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41268         * dir.c: RDOC for File::FNM_CASEFOLD was missed.
41270 Sat Jun 12 11:15:53 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41272         * configure.in (target_os): strip -gnu suffix on Linux.
41274 Fri Jun 11 22:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41276         * array.c: remove #indexes, #indices.
41278         * hash.c: ditto.
41280         * ext/dbm/dbm.c: remove #indexes, #indices, "values_at" warning
41281           from #select.
41283         * ext/gdbm/gdbm.c: ditto.
41285         * ext/sdbm/init.c: ditto.
41287         * ext/dbm/dbm.c (Init_dbm): set VERSION constant as "unknown" when
41288           DB_VERSION_STRING is not available.
41290 Thu Jun 10 19:19:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41292         * ext/sdbm/init.c (fsdbm_store): sdbm should use StringValue().
41293           [ruby-talk:103062]
41295 Wed Jun  9 16:09:01 2004  akira yamada  <akira@ruby-lang.org>
41297         * lib/uri/generic.rb (URI::Generic::merge,
41298           URI::Generic::route_from): accepts non-hierarchical URI.
41299           [ruby-dev:23631]
41301         * test/uri/test_generic.rb (TestGeneric::test_route,
41302           TestGeneric::test_merge): added tests for above changes.
41304 Wed Jun  9 15:39:55 2004  Akinori MUSHA  <knu@iDaemons.org>
41306         * configure.in: Add support for DragonFly BSD.
41308 Wed Jun  9 15:07:06 2004  Akinori MUSHA  <knu@iDaemons.org>
41310         * config.guess, config.sub: Update to a more recent version as of
41311           2004-01-20.
41313 Wed Jun  9 11:20:05 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41315         * win32/win32.c: remove unused functions and variables.
41317 Wed Jun  2 20:16:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41319         * string.c (str_new4): should share shared instance if it already
41320           exists.  [ruby-dev:23665]
41322 Wed Jun  2 12:41:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41324         * io.c (rb_io_gets_m): set lastline ($_) even when read line is
41325           nil.  [ruby-dev:23663]
41327 Fri May 28 11:20:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41329         * eval.c (rb_eval): bad influence on frame node.
41331         * eval.c (eval): reverted wrongly removed condition.  [ruby-dev:23638]
41333 Thu May 27 21:37:50 2004  Tanaka Akira  <akr@m17n.org>
41335         * lib/pathname.rb (Pathname#initialize): fix pathname initialization
41336           by pathname.
41338 Thu May 27 20:02:09 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41340         * io.c (rb_io_fwrite): check all case errno != 0 [ruby-dev:23648]
41342 Thu May 27 15:54:02 2004  Shugo Maeda  <shugo@ruby-lang.org>
41344         * lib/net/ftp.rb (MDTM_REGEXP): fix for demon's ftp server.
41345           Thanks, Rutger Nijlunsing.
41347 Thu May 27 14:53:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41349         * io.c (rb_io_fwrite): workaround for bcc32's fwrite bug.
41350           add errno checking.  [ruby-dev:23627]
41352         * io.c (rb_io_fwrite): should check if errno == ENOENT, too.
41354 Thu May 27 11:25:03 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41356         * test/csv/test_csv.rb: illegal require module name (../lib/csv.rb).
41358 Wed May 26 23:12:13 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41360         * lib/csv.rb (CSV.read, CSV.readlines): added.  works as IO.read and
41361           IO.readlines in CSV format.
41363         * lib/csv.rb (CSV.parse): [CAUTION] behavior changed.  in the past,
41364           CSV.parse accepts a filename to be read-opened (it was just a
41365           shortcut of CSV.open(filename, 'r')).  now CSV.parse accepts a
41366           string or a stream to be parsed e.g.
41367           CSV.parse("1,2\n3,r") #=> [['1', '2'], ['3', '4']]
41369         * test/csv/test_csv.rb: follow above changes.
41371 Wed May 26 14:19:42 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41373         * eval.c (rb_eval, eval): make line number consistent on eval with
41374           Proc.  [ruby-talk:101253]
41376 Wed May 26 13:59:17 2004  Dave Thomas  <dave@pragprog.com>
41378         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::skip_for_variable): Allow for
41379           'do' after for statement
41381 Wed May 26 13:56:03 2004  Dave Thomas  <dave@pragprog.com>
41383         * lib/rdoc/generators/html_generator.rb (Generators::MarkUp::style_url): Fix
41384           relative path to code CSS file
41386 Wed May 26 13:14:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41388         * io.c (rb_io_init_copy): copy also positions.  [ruby-talk:100910]
41390 Wed May 26 00:00:00 2004  why the lucky stiff  <why@ruby-lang.org>
41392         * ext/syck/syck.c (syck_new_parser): clear parser on init.
41393           thanks, ts. [ruby-core:02931]
41395         * ext/syck/token.c (sycklex_yaml_utf8): buffer underflow.
41396           thanks, ts. [ruby-core:02929]
41398         * lib/yaml/baseemitter.rb (indent_text): simpler flow block code.
41400 Tue May 25 11:54:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41402         * eval.c (rb_yield_0, proc_invoke, proc_arity): allow passing a block
41403           to a Proc.  [ruby-dev:23533]
41405         * parse.y (block_par, block_var): ditto.
41407 Tue May 25 01:50:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41409         * ext/openssl/ossl_asn1.c (ossl_i2d_ASN1_TYPE, ossl_ASN1_TYPE_free):
41410           workaround for the versions earlier than OpenSSL-0.9.7.
41412 Mon May 24 10:46:26 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
41414         * lib/rdoc/generators/template/html/html.rb: SYSTEM identifiers
41415           must be absolute URIs
41417 Sun May 23 04:53:50 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
41419         * lib/pstore.rb (transaction): allow overriding dump and load.
41420           [ruby-dev:23567]
41422         * lib/yaml/store.rb: follow lib/pstore.rb's change.
41424 Sat May 22 11:54:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41426         * MANIFEST: add test/openssl/test_x509store.rb.
41428         * ext/tk/MANIFEST: add recent files.
41430 Sat May 22 05:37:11 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41432         * ext/tk/lib/remote-tk.rb: (NEW library) controll Tk interpreters
41433           on the other processes by Tcl/Tk's 'send' command
41435 Fri May 21 09:22:05 2004  Dave Thomas  <dave@pragprog.com>
41437         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_parameters):
41438           Add ()'s around parameters that don't have them
41440 Fri May 21 02:21:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41442         * lib/csv.rb: fixed a few bugs around multi char record/field separator.
41444         * test/csv/test_csv.rb: added boundary test for above feature.
41446 Thu May 20 17:02:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41448         * lib/mkmf.rb (check_sizeof): define result size.  [ruby-core:02911]
41450         * lib/mkmf.rb (create_header): macro name should not include equal
41451           sign.
41453 Thu May 20 14:35:52 2004  Tanaka Akira  <akr@m17n.org>
41455         * ext/socket/socket.c: check SCM_RIGHTS macro addition to
41456           the msg_control field to test existence of file descriptor passing
41457           by msg_control.
41459 Thu May 20 12:38:06 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41461         * numeric.c (flo_eq): always check if operands are NaN.
41462           [ruby-list:39685]
41464 Thu May 20 12:34:39 2004  Dave Thomas  <dave@pragprog.com>
41466         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_visibility):
41467           At Ryan Davis' suggestion, honor visibility modifers if guarded by a
41468           statement modifier
41470 Thu May 20 12:22:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41472         * lib/mkmf.rb (have_type): do not check pointer to incomplete type,
41473           which always get compiled.
41474           [ruby-list:39683]
41476 Wed May 19 23:45:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41478         * test/inlinetest.rb (InlineTest::loadtest): requiring library with
41479           replaced $0 can make $0 == __FILE__ block be evaluated twice.
41481         * test/ruby/envutil.rb (EnvUtil::rubybin): give priority to
41482           environment variable.  [ruby-dev:23538]
41484 Wed May 19 11:08:10 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41486         * ext/tk/lib/tk.rb: change permition of TkObject#tk_send from
41487           private to public
41489 Wed May 19 02:29:36 2004  Minero Aoki  <aamine@loveruby.net>
41491         * lib/net/http.rb: support TRACE.
41493 Wed May 19 02:21:53 2004  Minero Aoki  <aamine@loveruby.net>
41495         * lib/net/http.rb: do not use class variables.
41497 Tue May 18 21:21:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41499         * lib/csv.rb: writes lines with "\n" when row separator is not given.
41500           formerly it was "\r\n".
41502         * lib/csv.rb: [CAUTION] API change
41504           * CSV::Row removed.  a row is represented as just an Array.  since
41505             CSV::Row was a subclass of Array, it won't hurt almost all programs
41506             except one which depended CSV::Row#match.
41508           * CSV::Cell removed.  a cell is represented as just a String or
41509             nil(NULL).  this change will cause widespread destruction.
41511               CSV.open("foo.csv", "r") do |row|
41512                 row.each do |cell|
41513                   if cell.is_null       # Cell#is_null
41514                     p "(NULL)"
41515                   else
41516                     p cell.data         # Cell#data
41517                   end
41518                 end
41519               end
41521             must be just;
41523               CSV.open("foo.csv", "r") do |row|
41524                 row.each do |cell|
41525                   if cell.nil?
41526                     p "(NULL)"
41527                   else
41528                     p cell
41529                   end
41530                 end
41531               end
41533         * lib/csv.rb: [CAUTION] record separator(CR, LF, CR+LF) behavior
41534           change.  CSV.open, CSV.parse, and CSV,generate now do not force
41535           opened file binmode.  formerly it set binmode explicitly.
41537           with CSV.open, binmode of opened file depends the given mode
41538           parameter "r", "w", "rb", and "wb".  CSV.parse and CSV.generate open
41539           file with "r" and "w".
41541           setting mode properly is user's responsibility now.
41543         * lib/csv.rb: accepts String as a fs (field separator/column separator)
41544           and rs (record separator/row separator)
41546         * lib/csv.rb: added CSV.foreach(path, rs = nil, &block).  CSV.foreach
41547           now does not handle "| cmd" as a path different from IO.foreach.
41548           needed?
41550         * test/csv/test_csv.rb: updated.
41552 Tue May 18 14:24:20 2004  why the lucky stiff  <why@ruby-lang.org>
41554         * lib/yaml.rb: added rdoc to beginning of lib.
41556 Tue May 18 14:00:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41558         * node.h (NEW_DSTR): adjust list length.
41560         * parse.y (literal_concat): ditto.
41562 Tue May 18 09:30:25 2004  SASADA Koichi  <ko1@atdot.net>
41564         * eval.c (rb_method_node): search cache entry first.
41566 Mon May 17 16:04:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41568         * numeric.c (flo_to_s): it's preferable that "p 0.0" outputs "0.0"
41569           instead of "0.0e+00". [ruby-dev:23480]
41571         * numeric.c (flo_to_s): it's preferable that "p 0.00000000000000000001"
41572           outputs "1.0e-20" instead of "9.999999999999999e-21". (the precision
41573           is considered, but there is assumption DBL_DIG == 15 in current
41574           implementation)
41576 Mon May 17 10:13:33 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41578         * ext/socket/socket.c (setup_domain_and_type): honor duck typing.
41579           [ruby-dev:23522]
41581         * ext/socket/socket.c (sock_s_getnameinfo): ditto.
41583 Mon May 17 00:36:21 2004  why the lucky stiff  <why@ruby-lang.org>
41585         * lib/yaml/baseemitter.rb (indent_text): was forcing a mod value
41586           of zero at times, which kept some blocks from getting indentation.
41588 Mon May 17 00:07:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41590         * lib/drb/drb.rb: Cosmetic documentation changes.
41592 Sun May 16 20:55:49 2004  Tanaka Akira  <akr@m17n.org>
41594         * ext/dbm/dbm.c (fdbm_initialize): accept optional 3rd argument to
41595           specify an open flag.
41596           (Init_dbm): define open flags: DBM::READER, DBM::WRITER, DBM::WRCREAT
41597           and DBM::NEWDB.
41599 Sat May 15 17:52:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41601         * test/ruby/test_float.rb(test_strtod): Add test for signed 0.000...1
41603 Sat May 15 14:20:13 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41605         * ext/syck/depend: add ruby's headers.
41607 Sat May 15 13:38:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41609         * ext/syck/MANIFEST, ext/syck/depend: new file.
41611         * lib/yaml/rubytypes.rb: range of exponential floats.  [ruby-core:02824]
41613         * test/yaml/test_yaml.rb: tests for strings start with colon and some
41614           round trip.
41616 Sat May 15 12:04:58 2004  why the lucky stiff  <why@ruby-lang.org>
41618         * lib/yaml.rb: removed fallback to pure Ruby parser.
41620         * lib/yaml/baseemitter.rb (node_text): rewriting folded scalars.
41622         * ext/syck/syck.h: reports style of scalars now, be they plain, block
41623           single-, or double-quoted.
41625         * ext/syck/syck.c: ditto.
41627         * ext/syck/gram.c: ditto.
41629         * ext/syck/node.c: ditto.
41631         * ext/syck/token.c: ditto.
41633         * ext/syck/rubyext.c (yaml_org_handler): symbols loaded only
41634           if scalar style is plain.
41636         * test/yaml/test_yaml.rb (test_perl_regexp): updated test to
41637           match new regexp serialization.
41639 Sat May 15 01:41:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41641         * eval.c (eval): forgot to restore $SAFE value before evaluating
41642           compiled node.  [ruby-core:02872]
41644 Sat May 15 01:33:12 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41646         * range.c (range_each_func): terminates loop if generating value
41647           is same to @end.  [ruby-talk:100269]
41649 Fri May 14 22:08:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41651         * string.c (rb_str_new4): should not reuse frozen shared string if
41652           the original is not an instance of String. [ruby-talk:100193]
41654 Fri May 14 21:29:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41656         * time.c (time_mdump): preserve GMT bit in the marshal data.
41657           [ruby-talk:100213]
41659 Fri May 14 18:37:49 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41661         * ext/tk/lib/tk/canvas.rb: improve coords support for canvas
41662           items. Now, supports all of the followings.
41663                TkcLine.new(c, 0, 0, 100, 100, :fill=>'red')
41664                TkcLine.new(c, [0, 0, 100, 100], :fill=>'red')
41665                TkcLine.new(c, [0, 0], [100, 100], :fill=>'red')
41666                TkcLine.new(c, [[0, 0], [100, 100]], :fill=>'red')
41667                TkcLine.new(c, :coords=>[0, 0, 100, 100], :fill=>'red')
41668                TkcLine.new(c, :coords=>[[0, 0], [100, 100]], :fill=>'red')
41670 Fri May 14 13:30:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41672         * test/ruby/test_float.rb: Add test for util.c revision 1.42.
41674 Fri May 14 12:13:46 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41676         * util.c (ruby_strtod): strtod("0", &end); => end should point '\0'.
41677          [ruby-dev:23498]
41679 Thu May 13 15:47:30 2004  akira yamada  <akira@ruby-lang.org>
41681         * lib/net/telnet.rb (Net::Telnet::login): "options" can specify
41682           regexps for login prompt and/or password prompt.
41684 Thu May 13 14:17:57 2004  why the lucky stiff  <why@ruby-lang.org>
41686         * ext/syck/rubyext.c (yaml_org_handler): some empty strings were
41687           loaded as symbols.
41689 Thu May 13 11:04:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41691         * pack.c (pack_pack): always add with null for 'Z'.
41693         * pack.c (pack_unpack): terminated by null for 'Z'.  [ruby-talk:98281]
41695 Wed May 12 19:59:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41697         * lib/mkmf.rb (have_type, check_sizeof): replace unusable characters.
41698           [ruby-talk:99788]
41700 Wed May 12 17:41:42 2004  Tanaka Akira  <akr@m17n.org>
41702         * lib/resolv.rb (Resolv::DNS::Config): make it configurable without
41703           external file such as /etc/resolv.conf.
41705 Wed May 12 14:37:27 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
41707         * ext/openssl/ossl_x509name.c: attribute value of DC (short name of
41708           domainComponent) should be IA5String.
41710 Wed May 12 13:20:19 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41712         * ext/tk/lib/tk/composite.rb: improve configure methods (based on
41713           the proposal of [ruby-talk:99671]).
41715 Wed May 12 11:51:08 2004  Dave Thomas  <dave@pragprog.com>
41717         * class.c (rb_obj_singleton_methods): fix rdoc
41719 Tue May 11 07:09:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41721         * eval.c (is_defined): do not protect exception during receiver
41722           evaluation.
41724 Mon May 10 22:28:14 2004  Minero Aoki  <aamine@loveruby.net>
41726         * lib/net/protocol.rb (each_crlf_line): remove junk line.
41728 Mon May 10 21:44:42 2004  Dave Thomas  <dave@pragprog.com>
41730         * lib/rdoc/generators/html_generator.rb: Change scheme for
41731           looking up symbols in  HTML generator.
41733 Mon May 10 16:45:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41735         * eval.c (eval): warning during eval should not cause deadlock.
41736           [ruby-talk:98651]
41738         * eval.c (rb_eval): raise TypeError exception for superclass
41739           mismatch.  [ruby-list:39567]
41741 Mon May 10 12:11:37 2004  Dave Thomas  <dave@pragprog.com>
41743         * lib/rdoc/generators/html_generator.rb: Hack to search parents
41744           for unqualified constant names.
41746 Mon May 10 01:18:15 2004  Minero Aoki  <aamine@loveruby.net>
41748         * lib/net/pop.rb (logging): append "\n".
41750 Sun May  9 23:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41752         * lib/net/ftp.rb: ported documentation improvement from 1.8 branch
41754         * lib/net/imap.rb:   ditto
41756         * lib/net/pop.rb:    ditto
41758         * lib/net/smtp.rb:   ditto
41760         * lib/net/telnet.rb: ditto
41762 Sun May  9 23:34:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
41764         * test/ruby/test_float.rb: added test_strtod to test Float("0").
41766 Sun May  9 13:24:24 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41768         * lib/yaml/store.rb: use FileUtils::copy.
41770 Sun May  9 12:34:26 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41772         * regex.c: removed unused file.
41774 Sat May  8 10:53:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41776         * io.c (rb_f_open): open should not ignore block when "to_open"
41777           method is used.  [ruby-dev:23478]
41779 Fri May  7 22:07:39 2004  Minero Aoki  <aamine@loveruby.net>
41781         * lib/fileutils.rb (mv): new option `force'. [ruby-talk:99457]
41783         * lib/fileutils.rb: new method for command option reflection:
41784           FileUtils.commands, .options, .have_option?, .options_of,
41785           .collect_methods.
41787         * lib/fileutils.rb: module Verbose, NoWrite, DryRun do not have
41788           option flags @fileutils_verbose and @fileutils_noop, they make no
41789           sense.
41791 Fri May  7 21:50:21 2004  Dave Thomas  <dave@pragprog.com>
41793         * lib/rdoc/parsers/parse_rb.rb (RDoc::parse_include): Allow
41794           multiple arguments to 'include'
41796 Fri May  7 21:03:51 2004  Minero Aoki  <aamine@loveruby.net>
41798         * lib/fileutils.rb (fu_list): Array() breaks pathes including "\n".
41799           [ruby-core:02843]
41801         * test/fileutils/test_fileutils.rb (mkdir): test "\n" in path.
41803 Fri May  7 20:53:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41805         * ext/dbm/dbm.c (fdbm_modify): typo fixed. [ruby-dev:23473]
41807 Fri May  7 11:17:27 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41809         * util.c (ruby_strtod): "0.0000000000000000001" should be converted
41810           to 1.0e-19 instead of 0.0. (leading zeros aren't significant digits)
41811           [ruby-talk:99318] [ruby-dev:23465]
41813 Thu May  6 22:27:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41815         * ext/socket/socket.c (ippaddr): use NUMERICHOST if can not resolve
41816           hostname.
41818 Thu May  6 22:09:29 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41820         * ext/tk/tkutil.c (get_eval_string_core): bug fix. [ruby-dev:23466]
41822 Thu May  6 14:22:29 2004  why the lucky stiff  <why@ruby-lang.org>
41824         * lib/yaml/rubytypes.rb (to_yaml): added instance variable handling
41825           for Ranges, Strings, Structs, Regexps.
41827         * lib/yaml/rubytypes.rb (to_yaml_fold): new method for setting a
41828           String's flow style.
41830         * lib/yaml.rb (YAML::object_maker): now uses Object.allocate.
41832         * ext/syck/gram.c: fixed transfer methods on structs, broke it
41833           last commit.
41835 Thu May  6 14:38:02 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
41837         * dir.c (rb_push_glob): simplified code (not change behavior)
41839 Thu May  6 13:32:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41841         * ext/extmk.rb: get rid of side effect of Config.expand, patched by
41842           <tttt01@infoseek.jp>  (ruby-bugs:PR#597)
41844 Thu May  6 11:40:28 2004  Shugo Maeda  <shugo@ruby-lang.org>
41846         * lib/net/imap.rb (string): accept NIL.
41848         * lib/net/imap.rb (body_type_basic): allow body-fields omissions.
41850 Thu May  6 01:59:04 2004  Dave Thomas  <dave@pragprog.com>
41852         * lib/rdoc/generators/html_generator.rb (Generators::HtmlMethod::params):
41853           Don't include the &block parameter if we have explicit
41854           yield parameters.
41856 Wed May  5 03:52:31 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41858         * lib/rinda/ring.rb: use recv instead of recvfrom.
41860 Wed May  5 00:38:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
41862         * lib/gserver.rb: documented
41863         * lib/xmlrpc/README.txt: introduced for documentation purposes
41865 Mon May  3 09:47:24 2004  Dave Thomas  <dave@pragprog.com>
41867         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
41868           Fix parsing bug if yield called within 1 line block
41870 Sun May  2 21:56:48 2004  Minero Aoki  <aamine@loveruby.net>
41872         * test/fileutils/test_fileutils.rb (rm_f, rm_r): test :force flag.
41874 Sun May  2 01:04:38 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
41876         * ext/tcltklib, ext/tk: renewal Ruby/Tk
41878 Fri Apr 30 20:08:41 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41880         * time.c (SIZEOF_TIME_T): support SIZEOF_TIME_T == SIZEOF_INT.
41882 Wed Apr 28 01:26:11 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41884         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.8.
41886 Wed Apr 28 01:16:23 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41888         * oniguruma.h, regparse.c: imported Oni Guruma 2.2.7.
41890 Tue Apr 27 14:43:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41892         * common.mk: LIBURUBY_A is needed for extconf.rb even when
41893           cross-compiling.
41895 Tue Apr 27 13:33:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41897         * parse.y (string_content): turn off NODE_NEWLINE flag to avoid
41898           unnecessary line trace for inlined expression.
41899           (ruby-bugs PR#1320)
41901 Tue Apr 27 08:15:13 2004  why the lucky stiff  <why@ruby-lang.org>
41903         * lib/yaml/rubytypes.rb: passing Range tests.
41905         * ext/syck/syck.h: version 0.44.
41907         * ext/syck/gram.c: transfers no longer open an indentation.
41908           fixed transfers which precede blocks.
41910         * ext/syck/token.c: ditto.
41912         * ext/syck/syck.c: fixed segfault if an anchor has been released already.
41914         * ext/syck/node.c (syck_free_members): organized order of free'd nodes.
41916         * ext/syck/rubyext.c (syck_emitter_write_m): test for proper string with
41917           StringValue.
41919 Mon Apr 26 23:56:54 2004  Daniel Kelley  <news-1082945587@dkelley.gmp.san-jose.ca.us>
41921         * README.EXT, README.EXT.ja: fixed wrong function signature.
41922           [ruby-talk:98349]
41924 Mon Apr 26 21:40:09 2004  Dave Thomas  <dave@pragprog.com>
41926         * lib/rdoc/code_objects.rb (RDoc::Context::add_alias): Only alias
41927           to instance methods.
41929 Sun Apr 25 18:26:23 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
41931         * configure.in (ac_cv_func_fork): set to no on DJGPP.
41933 Sat Apr 24 14:32:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
41935         * re.c: applied stack error handling patch. [ruby-dev:23431]
41937 Sat Apr 24 10:38:31 2004  Dave Thomas  <dave@pragprog.com>
41939         * lib/rdoc/markup/simple_markup.rb (SM::SimpleMarkup::group_lines):
41940           Fix bug where consecutive headings are merged.
41942 Fri Apr 23 23:24:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41944         * lib/mkmf.rb: $hdrdir should not contain macros, for backward
41945           compatibility.  [bruby-dev:28]
41947         * lib/mkmf.rb (create_makefile): in the case of extout, just copy
41948           script files, without comparison.
41950 Fri Apr 23 16:38:46 2004  Tanaka Akira  <akr@m17n.org>
41952         * lib/pathname.rb: sync taint/freeze flag between
41953           a pathname object and its internal string object.
41955 Fri Apr 23 14:52:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41957         * parse.y (stmt, arg, aref_args): should not make sole splat into
41958           array, in aref_args other than aref with op_asgn.
41960 Fri Apr 23 14:14:38 2004  Tanaka Akira  <akr@m17n.org>
41962         * lib/resolv.rb: don't use Regexp#source to embed regexps.
41963           [ruby-dev:23432]
41965 Thu Apr 22 18:25:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41967         * common.mk, ext/extmk.rb: make ext and .ext get removed by distclean.
41969 Thu Apr 22 10:07:01 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
41971         * */Makefile.sub (distclean-local): should remove $(RBCONFIG).
41973 Thu Apr 22 04:17:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
41975         * eval.c (rb_mod_define_method): allow binding methods to modules.
41976           [ruby-dev:23410]
41978         * parse.y (aref_args): should pass expanded list.  [ruby-core:02793]
41980 Thu Apr 22 01:12:57 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
41982         * numeric.c (flo_to_s): tweak output string based to preserve
41983           decimal point and to remove trailing zeros.  [ruby-talk:97891]
41985         * string.c (rb_str_index_m): use unsigned comparison for T_FIXNUM
41986           search.  [ruby-talk:97342]
41988 Wed Apr 21 23:04:42 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
41990         * lib/rinda/rinda.rb, test/rinda/test_rinda.rb: check Hash tuple size.
41992 Wed Apr 21 20:05:00 2004  Tanaka Akira  <akr@m17n.org>
41994         * lib/open-uri.rb (URI::HTTP#proxy_open): set Host: field explicitly.
41995           [ruby-list:39542]
41997 Wed Apr 21 18:39:46 2004  Minero Aoki  <aamine@loveruby.net>
41999         * lib/net/smtp.rb: merge SMTP-TLS patch.  This patch is
42000           contributed by Daniel Hob. [ruby-core:02789]
42002 Wed Apr 21 18:23:45 2004  Minero Aoki  <aamine@loveruby.net>
42004         * lib/net/smtp.rb: change coding style: def m( a ) -> def m(a).
42006 Wed Apr 21 18:01:47 2004  Minero Aoki  <aamine@loveruby.net>
42008         * lib/net/pop.rb: do not use class variables.
42010         * lib/net/pop.rb (do_start): ensure to clean up connection when
42011           authentication failed.
42013 Wed Apr 21 17:23:59 2004  Minero Aoki  <aamine@loveruby.net>
42015         * lib/net/http.rb (HTTP#connect): CONNECT must precede SSL connect.
42016           [ruby-dev:23379]
42018         * lib/net/http.rb (HTTP.new): class variables are not inherited
42019           now.
42021 Wed Apr 21 15:56:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42023         * lib/test/unit/ui/console/testrunner.rb (test_started): restore $0
42024           after changing process title.  [ruby-talk:97426]
42026 Wed Apr 21 10:18:06 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42028         * process.c(rb_spawn): fix SEGV at "p system('command line here')"
42029          (may happen only in bccwin32) [ruby-dev:23380]
42031 Mon Apr 19 20:58:44 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42033         * dir.c: Updated RDocs.
42035 Mon Apr 19 18:11:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42037         * hash.c (rb_hash_equal): returns true if two hashes have same set
42038           of key-value set.  [ruby-talk:97559]
42040         * hash.c (rb_hash_eql): returns true if two hashes are equal and
42041           have same default values.
42043 Mon Apr 19 08:19:11 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
42045         * dln.c, io.c, pack.c, lib/benchmark.rb, lib/cgi.rb, lib/csv.rb,
42046           lib/date.rb, lib/ftools.rb, lib/getoptlong.rb, lib/logger.rb,
42047           lib/matrix.rb, lib/monitor.rb, lib/set.rb, lib/thwait.rb,
42048           lib/timeout.rb, lib/yaml.rb, lib/drb/drb.rb, lib/irb/workspace.rb,
42049           lib/net/ftp.rb, lib/net/http.rb, lib/net/imap.rb, lib/net/pop.rb,
42050           lib/net/telnet.rb, lib/racc/parser.rb, lib/rinda/rinda.rb,
42051           lib/rinda/tuplespace.rb, lib/shell/command-processor.rb,
42052           lib/soap/rpc/soaplet.rb, lib/test/unit/testcase.rb,
42053           lib/test/unit/testsuite.rb: typo fix.
42055 Mon Apr 19 08:14:18 2004  Dave Thomas  <dave@pragprog.com>
42057         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Allow for
42058           #ifdef HAVE_PROTOTYPES
42060 Fri Apr 16 17:04:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42062         * string.c (rb_str_equal): always returns true or false, never
42063           returns nil. [ruby-dev:23404]
42065 Fri Apr 16 12:38:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42067         * lib/drb/drb.rb (DRb::DRbUnknown::initialize): Exception#to_str is
42068           deprecated.
42070         * lib/drb/drb.rb (DRb::DRbServer::InvokeMethod::perform): multiple
42071           value class changed.
42073         * lib/drb/invokemethod.rb (DRb::DRbServer::InvokeMethod18Mixin::block_yield):
42074           ditto.
42076 Fri Apr 16 08:27:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42078         * ext/extmk.rb: skip linking when libraries to be preloaded not
42079           compiled.  [ruby-list:39561]
42081 Thu Apr 15 19:57:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42083         * process.c (pst_success_p): new method Process::Status#success?.
42084           [ruby-dev:23385]
42086         * rubytest.rb: do nothing while cross-compiling, return status in
42087           system independent style.
42089 Thu Apr 15 19:26:54 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42091         * dir.c (rb_push_glob): Dir.glob() should return nil if block is given.
42092           (http://www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=Dir)
42094         * dir.c (push_braces): Dir.glob() should handle '{ }' nested more than
42095           3 times.
42097         * dir.c (push_braces, rb_push_glob): Dir.glob() should handle escaped
42098           '{' and '}' and ','.
42100           [ruby-dev:23376]
42102 Thu Apr 15 17:12:13 2004  Tanaka Akira  <akr@m17n.org>
42104         * ext/gdbm/gdbm.c (Init_gdbm): define GDBM::READER, GDBM::WRITER,
42105           GDBM::WRCREAT and GDBM::NEWDB.
42106           (fgdbm_initialize): use specified read/write flag.
42108 Wed Apr 14 13:06:09 2004  Doug Kearns  <djkea2@mugca.its.monash.edu.au>
42110         * array.c, enum.c, eval.c, file.c, io.c, numeric.c, object.c, prec.c,
42111           process.c, re.c, string.c: typos in RDoc comments.  [ruby-core:02783]
42113 Wed Apr 14 11:29:56 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42115         * numeric.c (flo_eq): workaround for bcc32's bug.
42116           (ruby-bugs-ja:PR#594)
42118 Wed Apr 14 11:06:38 2004  Dave Thomas  <dave@pragprog.com>
42120         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::scan): Changed
42121           behavior of :enddoc: -- it now unconditionally terminates
42122           processing of the current file.
42124 Wed Apr 14 10:57:40 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42126         * defines.h: include <net/socket.h> to get fd_set definition in BeOS.
42128 Tue Apr 13 23:00:55 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42130         * lib/rinda/rinda.rb: change pattern matching.
42131           a === b -> a == b || a === b. [druby-ja:98]
42133         * test/rinda/test_rinda.rb: ditto.
42135 Tue Apr 13 21:50:57 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42137         * bcc32/Makefile.sub (PHONY): Borland make disallows empty command
42138           rules.
42140 Tue Apr 13 17:55:16 2004  Minero Aoki  <aamine@loveruby.net>
42142         * lib/net/http.rb (begin_transport): should not overwrite HTTP
42143           request header. [ruby-list:39543]
42145 Tue Apr 13 16:48:00 2004  Minero Aoki  <aamine@loveruby.net>
42147         * lib/net/pop.rb: merge POP3S patch.  This patch is contributed by
42148           Daniel Hobe.
42150 Tue Apr 13 02:56:29 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42152         * common.mk: changed the order of ascii.c alphabetically.
42154 Mon Apr 12 19:11:21 2004  Eric Hodel  <drbrain@segment7.net>
42156         * gc.c (rb_gc_copy_finalizer): typo.  [ruby-core:02774]
42158 Mon Apr 12 18:45:58 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42160         * ext/openssl/ossl_x509name.c (ossl_x509name_init_i): should return
42161           a value.
42163 Mon Apr 12 10:39:50 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42165         * dir.c (rb_glob2, rb_glob, push_globs, push_braces, rb_push_glob):
42166           fix memory leak. (leaked when block was interrupted)
42168 Sun Apr 11 19:10:13 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42170         * ruby.c (require_libraries): restore source file/line after
42171           statically linked extensions initialized.  [ruby-dev:23357]
42173 Sun Apr 11 10:47:04 2004  Dave Thomas  <dave@pragprog.com>
42175         * lib/rdoc/code_objects.rb (RDoc::TopLevel::add_class_or_module): Toplevel
42176           classes and modules are a special case too... (handle extending existing
42177           classes with or without :enddoc:)
42179 Sat Apr 10 23:51:13 2004  Dave Thomas  <dave@pragprog.com>
42181         * lib/rdoc/code_objects.rb (RDoc::Context::add_to): Implementation of :enddoc:
42182           made one too many assumptions...
42184 Sat Apr 10 00:00:19 2004  Dave Thomas  <dave@pragprog.com>
42186         * lib/rdoc/markup/simple_markup/inline.rb: Fix problem
42187           with \_cat_<b>dog</b>
42189 Fri Apr  9 17:05:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42191         * dir.c (has_magic, find_dirsep): incomplete '[' matches no character
42192           in Dir.glob. (follows File.fnmatch's behavior)
42194         * dir.c (fnmatch_helper): incomplete escape is ignored in File.fnmatch.
42195           (follows Dir.glob's behavior)
42197         * dir.c (find_dirsep): '/' between '[' and ']' is ignored in Dir.glob.
42198           (follows File.fnmatch with File::FNM_PATHNAME 's behavior)
42200         * dir.c (find_dirsep): escaped slash '\/' loses its meaning as
42201           directory separator in Dir.glob.
42203           [ruby-dev:23291]
42205 Thu Apr  8 20:25:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42207         * ext/extmk.rb (extmake): skip uncompiled extensions.
42209         * lib/mkmf.rb (create_makefile): emit no rules for static library if
42210           $static is nil, e.g., outside of ext/.
42212         * lib/test/unit/ui/console/testrunner.rb (test_started): show test
42213           name via $0.
42215         * runruby.rb: set environments to use the compiled binary.
42217         * test/runner.rb: do nothing while cross-compiling.
42219         * test/drb/drbtest.rb, test/soap/calc/test_calc_cgi.rb: use envutil to
42220           know ruby binary, and restore $: after require.
42222         * test/ruby/envutil.rb: give priority to RUBY environment variable to
42223           use just compiled binary and libraries.
42225 Thu Apr  8 19:03:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42227         * io.c (rb_io_binmode): inverted condition.  [ruby-dev:23349]
42229 Thu Apr  8 18:22:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42231         * ext/iconv/iconv.c (iconv_s_list): return encoding list if no block
42232           is given.  [ruby-dev:23063]
42234 Wed Apr  7 15:29:24 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42236         * pack.c (pack_pack): use NUM2INT() instead of num2i32().
42238 Wed Apr  7 12:32:02 2004  Kouhei Sutou  <kou@cozmixng.org>
42240         * lib/rss/parser.rb, lib/rss/1.0.rb: accepted rdf:resource or
42241           resource attribute in rdf:li.
42242         * test/rss/test_parser.rb: added test for above change.
42244         * lib/rss/dublincore.rb: reverted style.
42246         * lib/rss/xmlparser.rb: normalized XMLParser class hierarchy.
42248 Wed Apr  7 10:43:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42250         * Makefile.in, common.mk, */Makefile.sub (ext/extinit.o): OUTFLAG
42251           doesn't work for object files on VC.
42253         * */Makefile.sub (config.h): need SIZEOF_TIME_T now.
42255 Wed Apr  7 00:24:34 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42257         * lib/rinda/rinda.rb: fix hash tuple bug.
42259         * lib/rinda/tuplespace.rb: ditto.
42261         * test/rinda/test_rinda.rb
42263 Tue Apr  6 18:24:18 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42265         * file.c (rb_get_path): get path string via "to_path" method if
42266           path object is not a string. [Ruby2]
42268         * gc.c (rb_gc_call_finalizer_at_exit): do not free threads in the
42269           exit finalizers.
42271         * io.c (rb_io_reopen): should use rb_io_check_io().
42273 Tue Apr  6 16:46:09 2004  Tanaka Akira  <akr@m17n.org>
42275         * configure.in: check the size of time_t.
42277         * time.c (time_add): new function.
42278           (time_plus): use time_add.
42279           (time_minus): use time_add.
42281 Tue Apr  6 13:11:48 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42283         * ext/socket/socket.c (raise_socket_error): never return.
42285         * ext/socket/socket.c (make_hostent): must return value.
42287 Tue Apr  6 00:14:43 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42289         * error.c (Init_Exception): remove Exception#to_str. [Ruby2]
42291         * eval.c (error_print): should no call "to_str" anymore use
42292           "message" method instead.
42294         * io.c (rb_f_open): Kernel#open() calls "to_open" if the first
42295           argument responds to it. [Ruby2]
42297 Tue Apr  6 00:13:43 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42299         * lib/rinda/rinda.rb: add require 'drb/drb'
42301 Mon Apr  5 22:25:32 2004  Tanaka Akira  <akr@m17n.org>
42303         * test/zlib/test_zlib.rb: new file.
42304           (TestZlibGzipWriter#test_new_nil): test for [ruby-dev:23228].
42306 Mon Apr  5 22:16:23 2004  Minero Aoki  <aamine@loveruby.net>
42308         * parse.y (assoc_list): {a: 1, b: 2} should be allowed.
42309           [ruby-dev:23328]
42311 Mon Apr  5 19:43:40 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42313         * regexec.c: imported Oni Guruma 2.2.6.
42315 Mon Apr  5 19:39:10 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42317         * regparse.c, oniguruma.h: imported Oni Guruma 2.2.6.
42319 Mon Apr  5 12:12:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42321         * ext/socket/socket.c (raise_socket_error): some platforms don't have
42322           EAI_SYSTEM.
42324 Mon Apr  5 08:18:23 2004  Dave Thomas  <dave@pragprog.com>
42326         * lib/rdoc/rdoc.rb: Remove leading ./ from file names so that cross
42327           references work properly.
42329 Sun Apr  4 14:01:20 2004  Dave Thomas  <dave@pragprog.com>
42331         * lib/rdoc/options.rb (Options::parse): Allow multiple -x options to
42332           RDoc. Fix bug where files weren't being excluded properly
42334 Sat Apr  3 09:36:38 2004  why the lucky stiff  <why@ruby-lang.org>
42336         * ext/syck/syck.h: version 0.43.
42338 Sat Apr  3 08:28:47 2004  why the lucky stiff  <why@ruby-lang.org>
42340         * ext/syck/lib/gram.c: allow root-level inline collections.
42341           [ruby-talk:94922]
42343         * lib/yaml/rubytypes.rb (Symbol#to_yaml): emit symbols as implicits.
42344           [ruby-talk:94930]
42346 Fri Apr  2 19:28:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42348         * bcc32/Makefile.sub (OUTFLAG): needed for static-linked-ext.
42350 Fri Apr  2 18:00:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42352         * ext/extmk.rb (extmake): extract necessary variables for static link
42353           from Makefile.
42355         * lib/mkmf.rb (create_makefile): save preload and libpath for next
42356           compile.
42358 Fri Apr  2 17:27:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42360         * eval.c (top_include): include in the wrapped load is done for
42361           the wrapper, not for a singleton class for wrapped main.
42362           [ruby-dev:23305]
42364 Fri Apr  2 15:13:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42366         * bignum.c (rb_big_eq): use temporary double variable to save the
42367           result (internal float register may be bigger than 64 bits, for
42368           example, 80 bits on x86).  [ruby-dev:23311]
42370 Fri Apr  2 14:35:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42372         * eval.c (block_pass): should generate unique identifier of the
42373           pushing block.  [ruby-talk:96363]
42375 Fri Apr  2 11:36:20 2004  Minero Aoki  <aamine@loveruby.net>
42377         * eval.c (Init_load): make $LOADED_FEATURES built-in.
42378           [ruby-dev:23299]
42380         * ruby.c (ruby_prog_init): make $PROGRAM_NAME built-in.
42382         * lib/English.rb: remove $LOADED_FEATURES and $PROGRAM_NAME.
42384 Fri Apr  2 07:31:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42386         * ext/socket/socket.c: mistakingly removed do_not_reverse_lookup.
42387           [ruby-list:39475]
42389         * ext/socket/socket.c (make_hostent): fix memory leak, based on
42390           the patch from HORIKAWA Hisashi <vzw00011@nifty.ne.jp>.
42392 Thu Apr  1 22:55:33 2004  Dave Thomas  <dave@pragprog.com>
42394         * lib/rdoc/parsers/parse_rb.rb: Allow rdoc comments in
42395           =begin rdoc/=end
42397         * lib/rdoc/parsers/parse_rb.rb: Fix problem with comment in
42398           top-level method being taken as file comment.
42400 Thu Apr  1 22:55:04 2004  Dave Thomas  <dave@pragprog.com>
42402         * lib/rdoc/ri/ri_options.rb: Fix undefined variable warning.
42404 Thu Apr  1 19:58:37 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42406         * lib/soap/mapping/{factory.rb,registry.rb}: fixed illegal mapped URI
42407           object with soap/marshal.
42408           added URIFactory class for URI mapping.  BasetypeFactory checks
42409           instance_variables when original mapping is not allowed (ivar must
42410           be empty).  Instance of URI have instance_variables but it must be
42411           llowed whenever original mapping is allowed or not.
42413 Wed Mar 31 19:06:23 2004  Tanaka Akira  <akr@m17n.org>
42415         * time.c (year_leap_p): new function.
42416           (timegm_noleapsecond): ditto.
42417           (search_time_t): use timegm_noleapsecond instead of
42418           mktime for first guess.
42420 Wed Mar 31 12:05:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42422         * lib/delegate.rb (DelegateClass): define internal methods of the
42423           result class, but not metaclass of the caller.  [ruby-talk:96156]
42425         * intern.h: provide proper prototypes.  [ruby-core:02724]
42427         * ruby.h: missing.h is now prerequisite to intern.h.
42429 Wed Mar 31 11:17:16 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42431         * pack.c (pack_pack): raises RangeError if uv is out of UTF8 value
42432           range.  [ruby-dev:23281]
42434         * io.c (rb_io_binmode): stdio buffer should be empty when calling
42435           IO#binmode.  [ruby-talk:96155]
42437 Tue Mar 30 20:25:34 2004  Tanaka Akira  <akr@m17n.org>
42439         * time.c (search_time_t): limit guess range by mktime if it is
42440           available.  [ruby-dev:23274]
42442 Tue Mar 30 18:19:00 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42444         * eval.c (rb_eval): fix SEGV at retry in iterator's receiver.
42445           [ruby-dev:23227]
42447 Mon Mar 29 20:17:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42449         * process.c (rb_exec): follow older behavior if close-on-exec is not
42450           available.
42452         * process.c (rb_fork): protect from exceptions while waiting failed
42453           process, if status is given.
42455 Sun Mar 28 16:25:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42457         * cygwin/GNUmakefile.in (clean-local, distclean-local): remove
42458           work files.
42460         * win32/Makefile.sub (clean-local): ditto.
42462 Sun Mar 28 14:23:02 2004  Minero Aoki  <aamine@loveruby.net>
42464         * lib/net/pop.rb: def m( arg ) -> def m(arg).
42466 Sun Mar 28 14:09:13 2004  Minero Aoki  <aamine@loveruby.net>
42468         * lib/net/pop.rb (auth): failed when account/password include "%".
42469           [ruby-talk:95933]
42471 Sat Mar 27 21:40:41 2004  Tanaka Akira  <akr@m17n.org>
42473         * lib/open-uri.rb: permit extra semicolon in content-type field.
42475 Sat Mar 27 10:40:48 2004  Tanaka Akira  <akr@m17n.org>
42477         * (lib/pp.rb, lib/prettyprint.rb): define seplist in PP::PPMethods
42478           instead of PrettyPrint.
42480 Sat Mar 27 01:47:09 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
42482         * lib/logger.rb: trim tail space of each line.  no user visible change.
42484         * lib/rss/dublincore.rb: fixed class definition mismatch.
42486         * sample/openssl/gen_csr.rb: fixed wrong usage text.
42488 Thu Mar 25 23:15:24 2004  Dave Thomas  <dave@pragprog.com>
42490         * lib/rdoc/ri/ri_options.rb (RI::Options::show_version):
42491           Add --version option
42493 Thu Mar 25 21:45:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
42495         * ext/bigdecimal/bigdecimal.c: Bug in + and - reported by Bret Jolly
42496           fixed.
42498 Thu Mar 25 21:01:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42500         * version.c (ruby_show_copyright): obtain copyright year from
42501           RUBY_RELEASE_YEAR.
42503         * win32/resource.rb: ditto.
42505 Thu Mar 25 19:37:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42507         * win32/resource.rb: default rubyw icon to ruby.ico, and let DLL also
42508           include them.
42510         * win32/resource.rb: include winver.h for older WindowsCE.
42512 Thu Mar 25 14:01:03 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42514         * common.mk, */Makefile.sub (lib, dll): phony targets.
42516         * configure.in (ruby, miniruby): ditto.
42518         * cygwin/GNUmakefile.in (rubyw): ditto.
42520 Thu Mar 25 04:16:18 2004  Dave Thomas  <dave@pragprog.com>
42522         * lib/rdoc/ri/ri_options.rb (RI::Options): Add the --list-names option,
42523           which dumps our all known names
42525 Thu Mar 25 03:57:47 2004  Dave Thomas  <dave@pragprog.com>
42527         * lib/rdoc/ri/ri_util.rb (NameDescriptor::initialize): No longer
42528           allow nested classes to be designated using "."--you must
42529           now use "::"
42531 Thu Mar 25 02:00:18 2004  Dave Thomas  <dave@pragprog.com>
42533         * lib/rdoc/generators/template/html/one_page_html.rb (Page):
42534           Fix to work with C modules.
42536 Wed Mar 24 20:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
42538         * lib/uri.rb: Documented (thanks Dmitry V. Sabanin).
42539         * lib/uri/common.rb: Ditto.
42540         * lib/uri/ftp.rb: Ditto.
42541         * lib/uri/generic.rb: Ditto.
42542         * lib/uri/http.rb: Ditto.
42543         * lib/uri/https.rb: Ditto.
42544         * lib/uri/ldap.rb: Ditto.
42545         * lib/uri/mailto.rb: Ditto.
42547 Wed Mar 24 18:48:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42549         * lib/mkmf.rb ($ruby, $topdir, $hdrdir): should not be affected by
42550           DESTDIR after installed.
42552         * lib/mkmf.rb (dummy_makefile): default file lists to be cleaned.
42554 Wed Mar 24 12:32:56 2004  Dave Thomas  <dave@pragprog.com>
42556         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::handle_class_module):
42557           Don't document methods if we don't know for sure the
42558           class or module.
42560         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
42561           Don't store documentation for singleton classes if we
42562           don't know the real class.
42564 Wed Mar 24 11:11:26 2004  Dave Thomas  <dave@pragprog.com>
42566         * lib/rdoc/generators/html_generator.rb (Generators::HTMLGenerator::load_html_template):
42567           Allow non-RDoc templates by putting a slash in the template name
42569 Wed Mar 24 10:05:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42571         * lib/tempfile.rb (Tempfile::_close): should not clear @tmpname
42572           until the file is really removed. [ruby-core:02684]
42574 Wed Mar 24 04:12:44 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42576         * object.c (rb_mod_cvar_get): new method Module#class_variable_get.
42578         * object.c (rb_mod_cvar_set): ditto (Module#class_variable_set).
42580 Tue Mar 23 17:45:22 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42582         * eval.c (rb_thread_atfork): 1.9 warns no more for thread
42583           termination.  [ruby-dev:23212]
42585 Tue Mar 23 14:46:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42587         * Makefile.in, */Makefile.sub, common.mk (clean-local, distclean-local):
42588           separate files under directories due to directory separator.
42590         * */Makefile.sub (MKFILES): common.mk and */Makefile.sub should not be
42591           removed.
42593         * win32/Makefile.sub, wince/Makefile.sub: $* cannot appear in explicit
42594           rules.
42596         * cygwin/GNUmakefile.in: some mingw stuffs were missed.
42598         * lib/mkmf.rb (create_makefile): Borland make wrongly removes braces
42599           from command lines.
42601         * bcc32/Makefile.sub: needs bcc32/mkexports.rb.
42603 Mon Mar 22 08:21:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42605         * Makefile.in, */Makefile.sub, common.mk: extract common portions.
42607         * Makefile.in, cygwin/GNUmakefile.in, */Makefile.sub (RBCONFIG):
42608           separated time stamp file for rbconfig.rb.
42610         * configure.in: append common.mk to Makefile.
42612         * mkconfig.rb: keep mtime of rbconfig.rb if unchanged.
42614         * win32/rm.bat: remove multiple files.
42616         * wince/mkconfig_wce.rb: use fake.rb instead.
42618 Sun Mar 21 22:17:35 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42620         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host):
42621           sort @virtual_hosts in address, port, host order.
42623         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
42624           hostname should not be match if :ServerAlias is not given.
42626 Sun Mar 21 21:11:16 2004  Keiju Ishitsuka  <keiju@ishitsuka.com>
42628         * lib/shell/*: bug fix for Shell#system(command_line_string).
42630 Sun Mar 21 21:04:42 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42632         * ruby.1: add -width option to .Bl for old groff.
42634 Sun Mar 21 18:57:37 2004  Kouhei Sutou  <kou@cozmixng.org>
42636         * test/rss/*: Test::Unit::TestCase -> RSS::TestCase and
42637           Test::Unit::Assertions -> RSS::Assertions.
42639 Sun Mar 21 18:48:20 2004  Kouhei Sutou  <kou@cozmixng.org>
42641         * lib/rss/{rss,dublincore,syndication}.rb: handled W3CDTF correctly.
42643 Sun Mar 21 18:15:29 2004  Kouhei Sutou  <kou@cozmixng.org>
42645         * test/rss/test_xml-stylesheet.rb: added tests for xml-stylesheet.
42647         * lib/rss/xml-stylesheet.rb: added xml-stylesheet parsing
42648           function.
42650 Sat Mar 20 23:51:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42652         * eval.c (rb_require_safe): preserve old ruby_errinfo.
42653           [ruby-talk:95409]
42655         * eval.c (rb_f_raise): should not clear backtrace information if
42656           exception object already have one.
42658 Sat Mar 20 21:21:03 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42660         * ext/extmk.rb: rm -rf $extout, not extout.
42662 Sat Mar 20 15:25:36 2004  Dave Thomas  <dave@pragprog.com>
42664         * lib/rdoc/generators/template/html/html.rb (RDoc::Page): Force
42665           page background to white.
42667 Sat Mar 20 09:33:36 2004  Tadayoshi Funaba  <tadf@dotrb.org>
42669         * lib/date.rb, lib/date/format.rb: _parse() now accepts fractional
42670           part of second minute that follows a comma or a full stop.
42672 Fri Mar 19 21:06:21 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42674         * parse.y (assoc_list): allow {sym: val} style Hash. [Ruby2]
42675           this change is done by Nobuyoshi Nakada <nobu@ruby-lang.org>.
42677 Fri Mar 19 15:15:15 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42679         * variable.c (rb_cvar_set): class variables become private to the
42680           particular class/module. [Ruby2]
42682         * variable.c (rb_cvar_get): ditto.
42684         * variable.c (rb_cvar_defined): ditto.
42686 Fri Mar 19 11:31:32 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42688         * lib/mkmf.rb ($beos, $solaris): add OS flags.
42690         * lib/mkmf.rb (RUBY): / is not recognized as path separator on
42691            nmake/bmake. [ruby-list:39388]
42693         * lib/mkmf.rb (CLEANLIBS, CLEANOBJS): should remove *.exp with *.so.
42695 Fri Mar 19 01:55:57 2004  Mauricio Fernandez  <batsman.geo@yahoo.com>
42697         * io.c (rb_io_sync): need not to check writable. [ruby-core:02674]
42699 Thu Mar 18 19:47:44 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42701         * instruby.rb, rubytest.rb: do not depend on srcdir.
42703 Thu Mar 18 18:50:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42705         * mkconfig.rb: no longer embed srcdir and compile_dir into
42706           rbconfig.rb.
42708         * ext/extmk.rb, lib/mkmf.rb: obtain top_srcdir and topdir from library
42709           paths.
42711 Thu Mar 18 17:46:35 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42713         * lib/drb/drb.rb: do not undef :to_a.
42715 Thu Mar 18 16:22:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42717         * eval.c (proc_eq): avoid false positive by using scope and
42718           dyna_vars.  no longer use frame.uniq.
42720         * eval.c (proc_arity): arity is now defined as number of
42721           parameters that would not be ignored. i.e. Proc.new{}.arity
42722           returns zero.  update test suites too.
42724 Thu Mar 18 15:27:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42726         * eval.c: remove specialized version of rb_Array().  use simple
42727           one defined in object.c.
42729         * object.c (Init_Object): remove Kernel#to_a.
42731         * enum.c (enum_zip): use "to_a" instead of "to_ary".
42733 Wed Mar 17 00:22:03 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42735         * oniguruma.h: imported Oniguruma 2.2.5.
42736         * regparse.c: ditto.
42738 Tue Mar 16 11:14:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42740         * dir.c (fnmatch_helper): File.fnmatch('\.', '.') should return true.
42741           (Rev1.112 lost compatiblity)
42743         * dir.c (fnmatch_helper): File.fnmatch('\/', '/', File::FNM_PATHNAME)
42744           should return true. (Rev1.112 lost compatiblity)
42746         * dir.c (fnmatch): File.fnmatch('**/.boo', '.foo/.boo',
42747           File::FNM_PATHNAME) should return false because of leading period.
42749 Mon Mar 15 17:01:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42751         * error.c (exc_initialize): calling 'to_str' each time just for
42752           type checking is too heavy.  [ruby-core:02661]
42754 Mon Mar 15 10:14:51 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42756         * ext/openssl/lib/openssl/ssl.rb (OpenSSL::SSL::SocketForwarder):
42757           add do_not_reverse_lookup.
42759 Mon Mar 15 07:39:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42761         * eval.c (rb_yield_0): should not re-submit TAG_BREAK if this
42762           yield is not break destination. [ruby-dev:23197]
42764 Sun Mar 14 22:07:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42766         * eval.c (rb_thread_raise): err at unstarted thread.  (PR#1302)
42768 Sat Mar 13 14:56:32 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
42770         * test/drb/ut_drb.rb: use 'druby://localhost:0'. [ruby-dev:23078]
42772         * test/drb/ut_eval.rb: ditto.
42774         * test/drb/ut_large.rb: ditto.
42776         * test/drb/ut_safe1.rb: ditto.
42778         * test/drb/ut_drb_drbssl.rb: use 'drbssl://localhost:0'.
42780 Fri Mar 12 23:52:56 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42782         * dir.c (fnmatch): directory recursion '**/' can be used with
42783           File::FNM_PATHNAME. [ruby-dev:22901]
42785         * dir.c (fnmatch, fnmatch_helper): only '/' is accepted as path
42786           separator even in DOSISH environment. [ruby-dev:22974]
42787           [ruby-list:39337]
42789         * dir.c (fnmatch_helper): faster '*' matching.
42791 Fri Mar 12 20:19:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42793         * configure.in (rb_cv_noreturn): default for platforms not support
42794           prototypes.
42796         * ruby.c (ruby_init_loadpath): buffer for path name should have
42797           MAXPATHLEN.
42799         * lib/mkmf.rb (configuration): include topdir and hdrdir in VPATH.
42801         * lib/mkmf.rb (create_makefile): default dependency rule.
42803 Fri Mar 12 07:35:36 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42805         * lib/webrick/config.rb (WEBrick::Config::General): add
42806           :DoNotReverseLookup.
42808         * lib/webrick/server.rb (WEBrick::GenericServer#accept): call
42809           do_not_reverse_lookup for each socket if :DoNotReverseLookup
42810           is set.  [ruby-code:02357]
42812 Wed Mar 10 22:26:25 2004  Minero Aoki  <aamine@loveruby.net>
42814         * lib/fileutils.rb (remove_dir): should handle symlink correctly.
42815           This patch is contributed by Christian Loew.  [ruby-talk:94635]
42817 Wed Mar 10 16:28:42 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42819         * eval.c (return_jump): set return value to the return
42820           destination.  separated from localjump_destination().
42822         * eval.c (break_jump): break innermost loop (or thread or proc).
42824         * eval.c (rb_yield_0): set exit_value for block break.
42826 Wed Mar 10 16:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42828         * struct.c (rb_struct_s_def): Struct::new executes block with
42829           generated struct class. [ruby-talk:02606]
42831 Wed Mar 10 15:58:43 2004  Ryan Davis  <ryand@zenspider.com>
42833         * eval.c (eval): Only print backtrace if generating the backtrace
42834           doesn't generate an exception.  [ruby-core:02621]
42836 Wed Mar 10 10:15:16 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42838         * ruby.c (opt_W_getter): get rid of warning.
42840         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
42841           fixed dependency.
42843 Tue Mar  9 13:04:26 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
42845         * io.c (rb_io_ungetc): raise IOError instead of calling
42846           rb_sys_fail().  [ruby-talk:23181]
42848 Tue Mar  9 10:03:40 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
42850         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
42851           replaced regex.c entry with Oniguruma files.
42853 Tue Mar  9 01:09:46 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42855         * Makefile.in: replaced regex.c entry with Oniguruma files.
42857 Mon Mar  8 23:16:07 2004  Minero Aoki  <aamine@loveruby.net>
42859         * lib/net/http.rb: HTTPHeader did not initialized correctly.
42861         * lib/net/http.rb (connect): does same debug output.
42863 Mon Mar  8 21:38:18 2004  Minero Aoki  <aamine@loveruby.net>
42865         * lib/net/http.rb (add_header): remove warning. [ruby-dev:23170]
42867 Mon Mar  8 21:09:39 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42869         * dir.c (range): Cancel change for incomplete '['. More discussion
42870           is needed.
42872 Mon Mar  8 19:35:13 2004  akira yamada  <akira@arika.org>
42874         * lib/uri/common.rb (URI::REGEXP::PATTERN::HOSTPORT): (?:#{PORT})
42875           -> (?::#{PORT}).  [ruby-dev:23170]
42877 Mon Mar  8 15:03:24 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
42879         * dir.c (range): treat incomplete '[' as ordinary character (like
42880           has_magic does). fix buffer overrun at incomplete escape like '[\'.
42882 Mon Mar  8 13:35:32 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42884         * regparse.c (parse_exp): need to separate initialization for bcc32.
42885           [ruby-dev:23169]
42887         * oniguruma.h (ONIG_EXTERN): check __GNUC__ instead of __CYGWIN__.
42889 Mon Mar  8 01:05:55 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
42891         * lib/webrick/config.rb (WEBrick::Config::HTTP): rename :RequestHander
42892           to :RequestCallback and add new option :ServerAlias.
42894         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): use
42895           :RequestCallback and warn if :RequestHandler is in server's option.
42897         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): should print
42898           error message for WEBrick::HTTPSataus::Error.
42900         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server):
42901           lookup for hostname from :ServerAlias if the req.host is not match
42902           to :ServerName.
42904         * lib/webrick/httpservlet.rb (WEBrick::HTTPServlet::CGIHandler#do_GET):
42905           use $?.exitstatus and refine log message.
42907 Sun Mar  7 16:22:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
42909         * Makefile.in (lex.c): use $? instead of $<.
42911         * lib/pstore.rb (commit_new): use FileUtils.copy_stream for Cygwin.
42912           [ruby-dev:23157]
42914 Sun Mar  7 05:34:42 2004  Minero Aoki  <aamine@loveruby.net>
42916         * lib/net/http.rb: HTTPHeader keeps its header fields as an array.
42918         * lib/net/http.rb: new method HTTPHeader#add_header, get_fields.
42920         * lib/net/http.rb: new method HTTPHeader#content_length=.
42922         * lib/net/http.rb: new method HTTPHeader#content_type, main_type,
42923           sub_type, type_params, content_type=, set_content_type.
42925         * lib/net/http.rb (HTTPHeader#basic_encode): result of pack(m) may
42926           contain multiple LFs.
42928 Sun Mar  7 03:11:00 2004  Minero Aoki  <aamine@loveruby.net>
42930         * lib/net/http.rb: new method Net::HTTPRequest#body(=).
42932         * lib/net/http.rb: new method Net::HTTPRequest#body_stream(=).
42934 Sun Mar  7 02:06:07 2004  Minero Aoki  <aamine@loveruby.net>
42936         * lib/net/http.rb: spin off https code again.
42938         * lib/net/https.rb: new file.
42940         * ext/openssl/lib/net/https.rb: removed.  moved to net/https with
42941           slight modifications.
42943         * ext/openssl/lib/net/protocols.rb: removed.  merged with net/http.
42945         * lib/net/protocol.rb: new class BufferedIO.
42947         * lib/net/protocol.rb: InternetMessageIO < BufferedIO.
42949         * lib/net/protocol.rb: BufferedIO.new takes an IO.
42951         * lib/net/smtp.rb: follow InternetMessageIO's change.
42953         * lib/net/pop.rb: ditto.
42955 Sun Mar  7 00:55:03 2004  Minero Aoki  <aamine@loveruby.net>
42957         * lib/net/protocol.rb: remove method: InternetMessageIO#address,
42958           port, ip_address, read_timeout(=), socket.
42960         * lib/net/protocol.rb: simplify code.
42962         * lib/net/protocol.rb: apply latest coding style.
42964 Sat Mar  6 15:15:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
42966         * ext/strscan/depend: depends on re.h and regex.h.
42968         * ext/strscan/strscan.c: no version check needed.
42970         * ext/strscan/strscan.c (strscan_init_copy): struct re_registers must
42971           not be bitwise copied.
42973 Sat Mar  6 11:14:33 2004  David Black  <dblack@wobblini.net>
42975         * lib/scanf.rb: refixed the previous fix in IO#block_scanf
42977 Sat Mar  6 10:49:40 2004  David Black  <dblack@wobblini.net>
42979         * lib/scanf.rb: fixed a logic glitch in IO#block_scanf
42981 Sat Mar  6 02:00:19 2004  Minero Aoki  <aamine@loveruby.net>
42983         * lib/net/http.rb: net/https is merged.
42985         * ext/openssl/lib/net/https.rb: ditto.
42987 Sat Mar  6 00:39:21 2004  Kazuo Saito  <ksaito@uranus.dti.ne.jp>
42989         * oniggnu.h: imported from Oniguruma library.
42990         * oniguruma.h: ditto.
42991         * regcomp.c: ditto.
42992         * regenc.c: ditto.
42993         * regenc.h: ditto.
42994         * regerror.c: ditto.
42995         * regex.c: ditto.
42996         * regexec.c: ditto.
42997         * reggnu.c: ditto.
42998         * regint.h: ditto.
42999         * regparse.c: ditto.
43000         * regparse.h: ditto.
43001         * ascii.c: ditto.
43002         * euc_jp.c: ditto.
43003         * sjis.c: ditto.
43004         * utf8.c: ditto.
43006         * MANIFEST: added Oniguruma files listed above.
43008         * LEGAL: added Oniguruma license.
43010         * regex.h: now includes oniggnu.h.
43012         * re.c: applied Oniguruma patch.
43014 Fri Mar  5 23:13:08 2004  Minero Aoki  <aamine@loveruby.net>
43016         * lib/net/http.rb: support WebDAV methods, PROPPATCH, LOCK,
43017           UNLOCK, OPTIONS, PROPFIND, DELETE, MOVE, COPY, MKCOL.
43018           This patch is contributed by Tatsuki Sugiura.
43020 Fri Mar  5 20:58:37 2004  Minero Aoki  <aamine@loveruby.net>
43022         * lib/net/http.rb: Net::HTTPResponse#response is obsolete.
43023           [ruby-core:02592]
43025         * lib/net/http.rb: Net::HTTPResponse#header is obsolete.
43027         * lib/net/http.rb: Net::HTTPResponse#read_header is obsolete.
43029 Fri Mar  5 20:10:57 2004  Minero Aoki  <aamine@loveruby.net>
43031         * ext/strscan/strscan.c: new method StringScanner#initialize_copy
43032           to allow #dup and #clone.
43034         * test/strscan/test_strscan.rb: test StringScanner#dup.
43036 Fri Mar  5 19:42:09 2004  Minero Aoki  <aamine@loveruby.net>
43038         * lib/net/http.rb (HTTPResponse#to_ary): should return an object
43039           which does not respond to #to_ary.  It causes infinite loop in
43040           puts. [ruby-core:02578]
43042 Fri Mar  5 00:51:35 2004  Dave Thomas  <dave@pragprog.com>
43044         * lib/test/unit.rb: Move RDoc documentation so that you can
43045           now say 'ri Test::Unit'
43047 Thu Mar  4 22:31:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43049         * Makefile.in: miniruby is not needed for cross compile.
43051         * configure.in (PREP): miniruby for native compile.
43053 Thu Mar  4 11:46:32 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43055         * lib/drb/extservm.rb (DRb::ExtServManager#invoke_service_command):
43056           detach server processes to get rid of zombies.
43058 Thu Mar  4 10:41:25 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43060         * ruby.h (T_MASK): save 1 bit in flags bits by shifting T_xxx
43061           values.
43063 Thu Mar  4 08:08:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43065         * ext/syck/rubyext.c: get rid of warnings.
43067         * lib/rss/taxonomy.rb: ditto.
43069         * lib/rdoc/ri/ri_formatter.rb: ditto.
43071         * test/ruby/test_assignment.rb: ditto.
43073 Thu Mar  4 01:17:28 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43075         * lib/rdoc/ri/ri_display.rb (DefaultDisplay::page): wait until the
43076           pager terminates.
43078 Wed Mar  3 13:10:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43080         * eval.c (method_hash): new method. [ruby-talk:93968]
43082         * eval.c (proc_eq): do not compare dyna_vars.
43084         * eval.c (proc_hash): new method.
43086         * eval.c (rb_yield_0): protect break/return from within orphan (or
43087           lambda) Proc object.
43089 Wed Mar  3 09:52:05 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43091         * lib/mkmf.rb ($topdir): use compile_dir only when not installed yet.
43092           [ruby-talk:94098]
43094 Wed Mar  3 01:18:52 2004  Kouhei Sutou  <kou@cozmixng.org>
43096         * lib/rss/converter.rb: handled Uconv::Error.
43098         * lib/rss/dublincore.rb: DublincoreModel -> DublinCoreModel
43100 Wed Mar  3 00:59:30 2004  David Black  <dblack@wobblini.net>
43102         * lib/scanf.rb: soak_up_spaces only ungetc's non-space last
43103           character
43105         * lib/scanf.rb: IO#block_scanf now returns partial last iteration
43106           array if format string matches partly
43108 Tue Mar  2 16:30:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43110         * io.c (pipe_open): erred program name should be reported by
43111           exceptions, instead of the first argument.
43113         * process.c (rb_spawn): ditto.
43115         * process.c (proc_spawn_v): use first argument as program name.
43117         * win32/win32.c (rb_w32_aspawn): ditto.
43119         * win32/win32.c (CreateChild): search executable file if no program
43120           name given.
43122         * lib/drb/extservm.rb (invoke_service_command): use Process.spawn.
43123           [ruby-dev:23103]
43125         * lib/rdoc/ri/ri_display.rb (setup_pager): use IO.popen.
43126           [ruby-dev:23086], [ruby-dev:23103]
43128         * lib/rdoc/diagram.rb (convert_to_png): ditto.
43130         * lib/rdoc/generators/chm_generator.rb (compile_project): ditto.
43132 Tue Mar  2 12:24:03 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43134         * win32/Makefile.sub, wince/Makefile.sub (config.h): shouldn't check
43135           defined? NORETURN. [ruby-dev:23100]
43137 Tue Mar  2 11:28:40 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43139         * test/ruby/test_iterator.rb (test_ljump): cannot use
43140           assert_nothing_raised due to passing block.
43142 Tue Mar  2 06:23:14 2004  David Black  <dblack@wobblini.net>
43144         * lib/scanf.rb: fixed Kernel#scanf to propagate code block
43146 Mon Mar  1 23:25:40 2004  David Black  <dblack@wobblini.net>
43148         * lib/scanf.rb: Partial fix so STDIN#scanf works with new
43149          STDIN#pos behavior
43151 Mon Mar  1 19:42:05 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43153         * bcc32/setup.mak: configure's default is "--enable-install-doc"
43155         * win32/setup.mak: ditto.
43157 Mon Mar  1 12:24:10 2004  Dave Thomas  <dave@pragprog.com>
43159         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_alias):
43160           Allow aliases to have parentheses
43162 Sun Feb 29 23:14:53 2004  Dave Thomas  <dave@pragprog.com>
43164         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_class):
43165           Handle :nodoc: on singleton classes.
43167 Sat Feb 28 21:50:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43169         * bcc32/Makefile.sub, bcc32/README.bcc32, bcc32/configure.bat,
43170           bcc32/setup.mak: new configure scheme. use ``configure --prefix=dir''
43171           instead of ``make DESTDIR=dir install''.
43172           --with-static-linked-ext support on bccwin32. [ruby-dev:23034]
43174 Sat Feb 28 21:50:20 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43176         * bcc32/setup.mak: "configure --disable-install-doc" is now working.
43178         * win32/setup.mak: ditto.
43180 Sat Feb 28 15:09:49 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43182         * bcc32/configure.bat: append missing label ":exit".
43184         * bcc32/configure.bat: fix typo.
43186 Sat Feb 28 10:31:03 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43188         * MANIFEST: add test_erb.rb
43190         * lib/erb.rb, test/erb/test_erb.rb: don't forget filename,
43191           if both filename and safe_level given. [ruby-dev:23050]
43193 Sat Feb 28 01:08:40 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43195         * parse.y (yylex): should not allow symbol for invalid global
43196           variable (e.g. `:$-)`). [ruby-core:02518]
43198 Fri Feb 27 20:37:09 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43200         * eval.c (proc_invoke): no orphan block check is needed when pcall
43201           is true.
43203         * eval.c (localjump_destination): update localjump condition.
43205 Fri Feb 27 02:10:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43207         * eval.c (localjump_destination): lambda should not interfere
43208           return from the yielded block.
43210 Fri Feb 27 00:53:49 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43212         * lib/drb/drb.rb, test/drb/drbtest.rb: require drb/eq.rb by default
43214 Thu Feb 26 12:15:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43216         * win32/win32.c (make_cmdvector): adjust successive double-quote
43217           handling.
43219 Thu Feb 26 09:42:56 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43221         * hash.c (delete_if_i): use st_delete_safe() (via
43222           rb_hash_delete()) instead of returning ST_DELETE.
43224 Thu Feb 26 02:35:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43226         * process.c (rb_f_exec): get rid of SEGV when exec failed for command
43227           in single string.
43229 Wed Feb 25 21:17:33 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43231         * gc.c (obj_free), io.c (rb_io_fptr_finalize), rubyio.h (OpenFile):
43232           sharing OpenFile.
43234         * io.c (rb_io_initialize): accept IO instance.  [ruby-dev:22195]
43236 Wed Feb 25 21:16:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43238         * instruby.rb (with_destdir): should return the given argument if no
43239           DESTDIR is given.
43241         * instruby.rb: use path name expansion of cmd.exe.
43243 Wed Feb 25 20:44:45 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43245         * lib/cgi-lib.rb, lib/getopts.rb, lib/importenv.rb, lib/parsearg.rb:
43246           warn with caller position.
43248         * test/rss/test_content.rb, test/rss/test_dublincore.rb,
43249           test/rss/test_syndication.rb, test/rss/test_trackback.rb: use cgi
43250           instead of cgi-lib.
43252 Tue Feb 24 18:42:03 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43254         * dir.c (glob_helper): '**/' should not match leading period
43255           unless File::FNM_DOTMATCH is set. (like '*/') [ruby-dev:23014]
43257 Tue Feb 24 18:03:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43259         * test/ruby/test_file.rb (test_fnmatch): test for dir.c:1.108.
43261 Tue Feb 24 17:07:17 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43263         * dir.c (fnmatch): File.fnmatch with File::FNM_PATHNAME was broken
43264           for the pattern including '*' followed by '/'.
43266 Tue Feb 24 13:22:21 2004  Dave Thomas  <dave@pragprog.com>
43268         * lib/rdoc/rdoc.rb (RDoc::RDoc::normalized_file_list): Attempt to get better
43269           heuristics on which files to include and exclude. Now only include
43270           non-standard files if they are explicitly named in ARGV.
43272 Tue Feb 24 07:23:30 2004  Dave Thomas  <dave@pragprog.com>
43274         * lib/rdoc/generators/html_generator.rb: Deal with :stopdoc: when
43275           choosing a default main page to display (ie. don't select a page
43276           if we don't have documentation for it).
43278 Tue Feb 24 06:40:14 2004  Dave Thomas  <dave@pragprog.com>
43280         * lib/rdoc/parsers/parse_rb.rb (RubyLex::identify_identifier): Handle
43281           class variables in code listings
43283 Tue Feb 24 06:32:27 2004  Dave Thomas  <dave@pragprog.com>
43285         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_aliases): Handle
43286           aliases in C files.
43288 Tue Feb 24 06:16:22 2004  Dave Thomas  <dave@pragprog.com>
43290         * lib/rdoc/rdoc.rb (RDoc::RDoc::document): Now create op dir _before_
43291           parsing files.
43293 Tue Feb 24 06:08:47 2004  Dave Thomas  <dave@pragprog.com>
43295         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_constant):
43296           Start collecting text of constant values earlier: was missing
43297           values in output if there was no space after '='
43299 Tue Feb 24 06:08:25 2004  Dave Thomas  <dave@pragprog.com>
43301         * lib/rdoc/generators/html_generator.rb: Escape contant values.
43303 Tue Feb 24 03:45:06 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43305         * ext/openssl/ossl_config.c (ossl_config_each): add new method
43306           OpenSSL::Config#each. it iterates with section name, field name
43307           and value.
43309         * ext/openssl/ossl_config.c (Init_ossl_config): include Enumerable.
43311 Mon Feb 23 09:09:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43313         * instruby.rb (parse_args): use optparse instead of getopts.
43315         * instruby.rb (DOSISH): embedded path in batch files should not be
43316           prefixed by DESTDIR.  [ruby-core:02186]
43318 Sun Feb 22 14:58:04 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43320         * ext/extmk.rb: $extstatic is Array or nil now.  [ruby-talk:93383]
43322         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: terminate options.
43324         * lib/mkmf.rb (init_mkmf): $INCFLAGS also should be lazy-evaluated.
43326 Sun Feb 22 13:05:37 2004  akira yamada  <akira@ruby-lang.org>
43328         * lib/uri/mailto.rb (URI::MailTo::to_s): should include fragment.
43330 Sun Feb 22 12:58:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43332         * ext/extmk.rb: use optparse instead of getopts.
43334         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub: ditto.
43336 Sun Feb 22 09:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43338         * re.c: corrected documentation format (rb_reg_initialize_m)
43340 Sat Feb 21 22:41:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43342         * ext/zlib/zlib.c: documented, but needs more effort.
43344 Sat Feb 21 14:33:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43346         * ext/extmk.rb: prefer relative path.  [ruby-talk:93037]
43348 Sat Feb 21 11:12:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43350         * missing/os2.c, missing/x68.c: typo fix.  pointed out by greentea.
43352 Fri Feb 20 19:11:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43354         * lib/ostruct.rb (OpenStruct#initialize_copy): should not share
43355           members.  [ruby-dev:22966]
43357 Fri Feb 20 18:59:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43359         * lib/irb/init.rb (IRB::IRB.parse_opts): add -I option to
43360           irb. [ruby-dev:39243]
43362 Fri Feb 20 12:55:27 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43364         * io.c (pipe_open): fix typo.
43366         * win32/win32.c (CreateChild): first argument to CreateProcess() must
43367           have path, not just basename.
43369 Thu Feb 19 23:24:16 2004  Dave Thomas  <dave@pragprog.com>
43371         * lib/rdoc/generators/html_generator.rb (Generators::HtmlClass::build_attribute_list):
43372           Support visibility modifiers for attributes
43374 Thu Feb 19 22:39:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43376         * lib/ostruct.rb: documented
43378 Thu Feb 19 22:39:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43380         * test/rinda/test_rinda.rb: DRb.start_service only once in testsuites.
43381           DRb.start_service could handle this.
43383 Thu Feb 19 22:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43385         * lib/soap/mapping/rubytypeFactory.rb: should not dump singleton class.
43386           [ruby-dev:22588]
43387           c = class << Object.new; class C; self; end; end; SOAPMarshal.dump(c)
43389 Thu Feb 19 18:08:18 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43391         * ext/strscan/strscan.c: improved documentation
43393 Thu Feb 19 18:08:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43395         * win32/win32.c, win32/win32.h: fixed prototypes.
43397         * win32/win32.c (wait): same as waitpid() with -1.
43399 Thu Feb 19 02:34:28 2004  Dave Thomas  <dave@pragprog.com>
43401         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::include_file):
43402           Only strip comment markers if all lines start with comments.
43404 Thu Feb 19 03:05:49 2004  Minero Aoki  <aamine@loveruby.net>
43406         * ext/strscan/strscan.c: StringScanner#restsize is obsolete;
43407           use #rest_size instead.
43409         * ext/strscan/strscan.c: StringScanner#matchedsize is obsolete;
43410           use #matched_size instead.
43412 Thu Feb 19 02:42:19 2004  Minero Aoki  <aamine@loveruby.net>
43414         * ext/strscan/strscan.c: don't use rb_eval_string, it defines
43415           classes under the module when required in module clauses.
43416           [ruby-dev:22951]
43418 Thu Feb 19 02:37:28 2004  Minero Aoki  <aamine@loveruby.net>
43420         * ext/strscan/strscan.c: merge documentation from 1.8 branch.
43421           Thanks Gavin Sinclair.
43423 Thu Feb 19 00:20:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43425         * lib/cgi-lib.rb:   deprecated after 1.8.1
43427         * lib/getopts.rb:   ditto
43429         * lib/importenv.rb: ditto
43431         * lib/parsearg.rb:  ditto
43433 Thu Feb 19 00:11:05 2004  Dave Thomas  <dave@pragprog.com>
43435         * lib/rdoc/markup/simple_markup/preprocess.rb (SM::PreProcess::handle):
43436           Strip extraneous space from filenames in :include:
43438 Wed Feb 18 22:53:41 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43440         * lib/drb/unix.rb: remove O_NONBLOCk, thanks \ay
43442 Wed Feb 18 22:42:19 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43444         * test/rinda/test_rinda.rb: improt test_rinda.rb
43446 Wed Feb 18 22:03:11 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43448         * test/*: should not depend on $KCODE.
43450 Wed Feb 18 18:07:09 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43452         * test/ruby/test_sprintf.rb: added tests.
43454 Wed Feb 18 17:18:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43456         * ext/win32ole/win32ole.c: need to include <olectl.h> on Cygwin.
43458 Wed Feb 18 10:40:38 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
43460         * sprintf.c (rb_f_sprintf): sign bit extension should not be done
43461           if FPLUS flag is specified.  [ruby-list:39224]
43463         * sprintf.c (rb_f_sprintf): do not prepend dots for negative
43464           numbers if FZERO is specified.  [ruby-dev:39218]
43466 Wed Feb 18 10:23:34 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43468         * sprintf.c (rb_f_sprintf): clean up.
43470 Tue Feb 17 23:40:34 2004  Guy Decoux  <ts@moulon.inra.fr>
43472         * sprintf.c (rb_f_sprintf): preserve original val for
43473           format_integer. [ruby-talk:92975]
43475 Tue Feb 17 23:28:45 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43477         * test/soap/marshal/test_marshal.rb, test/ruby/test_marshal.rb: do $:
43478           trick to share the testcase test/ruby/marshaltestlib.rb.
43480 Tue Feb 17 23:13:23 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43482         * test/ruby/marshaltestlib.rb: common marshal testcase added.
43484         * test/ruby/test_marshal.rb: use above testsuite.
43486         * test/soap/marshal/test_marshal.rb: ditto.
43488         * test/soap/marshal/cmarshal.rb: removed (not used).
43490 Tue Feb 17 19:34:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43492         * ext/extmk.rb (extmake): $extout_prefix doesn't vary for libraries.
43494         * ext/extmk.rb (extmake): remove compile directory if empty.
43496         * ext/extmk.rb (parse_args) lib/mkmf.rb (create_makefile): move
43497           initialization of $extout_prefix from lib/mkmf.rb.  [ruby-dev:22928]
43499         * ext/extmk.rb: clear ext and extout directory when cleaning.
43501         * lib/mkmf.rb (CLEANLIBS): should be under $(arch) directory.
43503 Tue Feb 17 18:02:10 2004  Minero Aoki  <aamine@loveruby.net>
43505         * ext/strscan/strscan.c: ScanError may be (wrongly) garbage
43506           collected. (thanks Gavin Sinclair)
43508         * ext/strscan/strscan.c: move ::ScanError to StringScanner::Error.
43509           ::ScanError is also defined for backward compatibility.
43511         * ext/strscan/strscan.c: #peep is obsolete, use #peek.
43513         * ext/strscan/strscan.c: #empty? is obsolete, use #eos?.
43515         * ext/strscan/strscan.c: #clear is obsolete, use #terminate.
43517         * ext/strscan/strscan.c: #getbyte is obsolete, use #get_byte.
43519 Tue Feb 17 12:12:47 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43521         * ext/extmk.rb (parse_args): delay expanding $(extout) until invoking
43522           make.
43524         * lib/mkmf.rb (CLEANLIBS): should remove files have specific
43525           extensions.
43527 Tue Feb 17 11:33:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43529         * lib/rss/rexmlparser.rb: REXML version may be 4 digits.
43531 Tue Feb 17 10:45:59 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43533         * ext/syck/rubyext.c (syck_emitter_end_object): takes only one arg.
43535 Tue Feb 17 07:48:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43537         * lib/rexml/encodings/SHIFT_JIS: wrong library name.
43539 Tue Feb 17 01:35:28 2004  Tanaka Akira  <akr@m17n.org>
43541         * eval.c (rb_eval): care that another thread replace NODE_DREGX_ONCE
43542           to NODE_LIT.  [ruby-dev:22920]
43544 Tue Feb 17 01:20:57 2004  Minero Aoki  <aamine@loveruby.net>
43546         * lib/fileutils.rb: new module FileUtils::DryRun.
43548 Mon Feb 16 23:28:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43550         * lib/csv.rb: document reduction.  [ruby-core:02429]
43552         * test/yaml/test_yaml.rb: added 0..1 test with "0".."1" on display.
43553           it should be defined that the specification about what kind of Range
43554           is supported in ruby's custom type in YAML.
43556 Mon Feb 16 22:22:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43558         * lib/generator.rb: corrected doc format
43560         * lib/rinda/rinda.rb: added documentation (from Hugh Sasse)
43562         * lib/rinda/tuplespace.rb: ditto
43564           [Note: rinda files actually committed Wed Feb 18 07:27:00 2004]
43566 Mon Feb 16 20:28:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43568         * bcc32/Makefile.sub: show more warnings. (refering to mingw)
43570         * bcc32/setup.mak: ditto.
43572 Mon Feb 16 18:35:58 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43574         * win32/Makefile.sub (config.status): should create *.pdb on ext/,
43575           not .ext/.
43577         * win32/Makefile.sub (config.status): convert the name of import
43578           library.
43580         * lib/mkmf.rb (create_makefile): now don't need to remove
43581           $(TARGET).lib.
43583 Mon Feb 16 15:45:22 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43585         * configure.in: check functions, fork spawnv.
43587         * io.c (rb_io_s_popen): accept argv not only single command line.
43589         * process.c (rb_proc_exec_n): export.
43591         * process.c (rb_check_argv): check if arguments are safe to invoke.
43593         * process.c (rb_fork): retry to fork.
43595         * process.c (rb_spawn): spawn child process asynchronously.
43597         * process.c (rb_f_system): raise an exception if the command could not
43598           execute.
43600         * win32/win32.c (rb_w32_argv_size): count necessary size for joined
43601           arguments.
43603         * win32/win32.c (rb_w32_join_argv): join arguments with quoting.
43605         * win32/win32.c (rb_w32_pipe_exec, rb_w32_spawn, rb_w32_aspawn):
43606           accept program name adding to command line.
43608 Mon Feb 16 15:18:33 2004  Minero Aoki  <aamine@loveruby.net>
43610         * lib/racc/parser.rb: add note for Racc full package.
43612 Mon Feb 16 15:13:01 2004  Minero Aoki  <aamine@loveruby.net>
43614         * ext/racc/cparse/README: new file.
43616         * ext/racc/cparse/MANIFEST: add README.
43618 Mon Feb 16 12:29:10 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43620         * ext/iconv/iconv.c (iconv_s_list): new method Iconv.list
43621           (libiconv only).
43623 Mon Feb 16 10:29:52 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43625         * dir.c (CompareImpl): File.fnmatch and Dir.glob get better performance
43626           in Win32. This is achived by calling downcase() for single-byte
43627           characters. (CharLower() is slower than downcase())
43629 Mon Feb 16 02:14:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43631         * bcc32/Makefile.sub: should warn suspicious pointer conversion.
43633         * bcc32/setup.mak: ditto.
43635 Sun Feb 15 20:56:22 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43637         * dir.c (push_braces): remove wrong const. [ruby-dev:22891]
43639 Sun Feb 15 20:41:15 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43641         * sample/soap/calc/httpd.rb, sample/soap/exchange/httpd.rb,
43642           sample/soap/sampleStruct/httpd.rb, sample/wsdl/googleSearch/httpd.rb:
43643           use soap/property instead of getopts for configuring DocumentRoot
43644           and port# of httpd.  see samplehttpd.conf below.
43646         * sample/soap/calc/samplehttpd.conf,
43647           sample/soap/exchange/samplehttpd.conf,
43648           sample/soap/sampleStruct/samplehttpd.conf,
43649           sample/wsdl/googleSearch/samplehttpd.conf: added.
43651 Sun Feb 15 19:13:33 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43653         * lib/rinda/tuplespace.rb: read(tpl,0), raise RequestExpiredError
43654           if not found.
43656 Sun Feb 15 15:48:57 2004  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
43658         * ext/win32ole/win32ole.c: add IDispatch wrapper in val2variant.
43659           Thanks, arton.
43661 Sun Feb 15 15:23:29 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43663         * ruby.h, dir.c (rb_glob): add const.
43665 Sun Feb 15 01:46:05 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
43667         * lib/mkmf.rb: absolute path of ruby is assigned to $(RUBY).
43668           [ruby-dev:22870]
43670 Sat Feb 14 23:59:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43672         * mkconfig.rb: use fileutils.rb instead of ftools.rb.
43674         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): define
43675           STACK_GROW_DIRECTION.
43677         * bcc32/Makefile.sub (config.h): add newer checks.
43679         * wince/Makefile.sub (config.h): define NEED_IO_SEEK_BETWEEN_RW.
43681 Sat Feb 14 23:26:27 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43683         * lib/un.rb: use OptionParser instead of getopts.
43685 Sat Feb 14 11:28:14 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43687         * sample/drb/*: import lib/drb/sample
43689 Sat Feb 14 11:14:12 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
43691         * lib/drb/drb.rb: add pretty_print, thanks gotoken.
43693 Fri Feb 13 21:51:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43695         * lib/fileutils.rb: slighly improved documentation (sync with 1.8)
43697 Fri Feb 13 19:57:01 2004  Kouhei Sutou  <kou@cozmixng.org>
43699         * test/rss/test_trackback.rb: added tests for TrackBack with RSS
43700           2.0.
43702         * test/rss/common.rb: added methods make RSS 2.0.
43704         * lib/rss/trackback.rb: TrackBack API is decided.
43706         * lib/rss/rss.rb: RSS::VERSION 0.0.7 -> 0.0.8.
43708         * lib/rss/parser.rb, lib/rss/rss.rb: replaced $DEBUG by RSS::DEBUG.
43710         * lib/rss/2.0.rb: removed RSS 2.0 URI. Because RSS 2.0 doesn't
43711           have URI.
43713 Fri Feb 13 14:41:00 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43715         * ext/tk/lib/tk.rb: en-bugged at last commit (Feb 11 23:24:22 2004)
43717 Fri Feb 13 12:26:37 2004  Minero Aoki  <aamine@loveruby.net>
43719         * test/fileutils/test_fileutils.rb: rescue SystemCallError instead
43720           of EINVAL.  File.link may raise EACCES on network file systems.
43722 Fri Feb 13 05:18:58 2004  Minero Aoki  <aamine@loveruby.net>
43724         * test/fileutils/test_fileutils.rb: File.link raises EINVAL on
43725           Win9x. [ruby-dev:22713]
43727 Thu Feb 12 21:49:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43729         * lib/ftools.rb: documented
43731 Thu Feb 12 21:19:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
43733         * lib/base64.rb: added and tidied documentation
43735 Thu Feb 12 20:45:01 2004  Minero Aoki  <aamine@loveruby.net>
43737         * lib/net/protocol.rb (WriteAdapater#puts): must append "\n" to
43738           the string, don't prepend. (ruby-bugs:PR#1280)
43740 Thu Feb 12 20:31:43 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43742         * lib/mkmf.rb (create_tmpsrc): cpp32 of Borland C++ ignores #error
43743           directives in DOS line-ending files at all.
43745 Thu Feb 12 15:23:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43747         * parse.y (rparen): ignore preceding newlines to right parentheses.
43748           (ruby-bugs:PR#1221) [ruby-dev:22858]
43750 Thu Feb 12 14:17:43 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43752         * configure.in: set ac_cv_func_link to yes to enable link() on MinGW.
43753           [ruby-dev:22241]
43755 Thu Feb 12 13:32:49 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43757         * win32/win32.c (link): raise NotImplementedError on Win9X.
43758           contributed by Tietew. [ruby-dev:22713]
43760         * win32/win32.c, win32/win32.h (link): add const.
43762 Thu Feb 12 09:56:19 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43764         * ext/tk/lib/tk.rb (TkComm::tk_split_list): suppress a warning.
43766 Thu Feb 12 02:23:56 2004  Tanaka Akira  <akr@m17n.org>
43768         * lib/pathname.rb: use assert_raise instead of assert_raises.
43770         * lib/pp.rb: ditto.
43772         * lib/time.rb: ditto.
43774         * lib/tsort.rb: ditto.
43775           use TSortHash and TSortArray instead of Hash and Array in test.
43777 Wed Feb 11 23:24:22 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
43779         * ext/tk/lib/tk.rb: properly treat a Tcl/Tk's string with escaping
43780           special characters.
43782 Tue Feb 10 20:49:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43784         * eval.c (method_proc): return bound Proc object.  [ruby-dev:22854]
43786         * eval.c (rb_mod_define_method): bind method body itself for Method
43787           object.
43789         * node.h (NODE_DMETHOD): deprecated.
43791         * object.c (rb_class_inherited_p): export.
43793 Tue Feb 10 16:43:50 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43795         * eval.c (umethod_bind): purge unused check.  [ruby-dev:22850]
43797 Tue Feb 10 14:33:08 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
43799         * string.c (rb_str_match): raise TypeError when both arguments are
43800           strings. [ruby-dev:22851]
43802         * string.c (rb_str_match2): removed.
43804         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
43805           wince/Makefile.sub (string.c): now not depend on version.h.
43807 Mon Feb  9 17:46:07 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43809         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub, configure.in,
43810           runruby.rb: run rdoc, test and so on with compiled extension
43811           libraries.  [ruby-dev:22688]
43813         * ext/extmk.rb, lib/mkmf.rb: make extension libraries in separated
43814           directory, similar to the actual directory structure.
43816         * lib/fileutils.rb (FileUtils.copy_file): use the mode of the original
43817           file to create new file.
43819         * lib/rdoc/ri/ri_paths.rb (RI::Paths::SYSDIR): get rid of unexpected
43820           influence by envirionment variable.
43822         * bcc32/configure.bat, win32/configure.bat: add install-doc options.
43824         * win32/win32.c, win32/win32.h (rb_w32_fstat): fix Borland C runtime
43825           bug which returns wrong mode.  [ruby-dev:22846]
43827 Mon Feb  9 16:30:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43829         * process.c (detach_process_watcher): return the last status.
43830           [ruby-dev:22841]
43832 Sun Feb  8 16:46:08 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43834         * lib/pp.rb (PP::PPMethods::object_address_group): suppress negative
43835           sign for higher heap areas.
43837 Sun Feb  8 16:18:27 2004  akira yamada  <akira@ruby-lang.org>
43839         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
43840           added tests.
43842 Sun Feb  8 15:51:57 2004  akira yamada  <akira@ruby-lang.org>
43844         * test/ruby/test_file.rb (TestFile::test_fnmatch): added tests for
43845           File.fnmatch. [ruby-dev:22815][ruby-dev:22819]
43847 Sun Feb  8 15:41:45 2004  akira yamada  <akira@ruby-lang.org>
43849         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_range_cycle):
43850           added tests. [ruby-core:02306] [ruby-core:02311]
43852 Sun Feb  8 14:24:35 2004  Minero Aoki  <aamine@loveruby.net>
43854         * lib/net/http.rb (HTTP#request): should not overwrite Connection
43855           header. (ruby-bugs:PR#1274)
43857 Sun Feb  8 10:11:21 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43859         * dir.c (glob_helper): Dir.glob('**/') did not work. [ruby-dev:22832]
43861 Sun Feb  8 00:29:26 2004  Hirokazu Yamamoto  <ocean@m2.ccsnet.ne.jp>
43863         * dir.c (fnmatch): File.fnmatch('*?', 'a') should return true.
43864           [ruby-dev:22815]
43866         * dir.c (fnmatch): File.fnmatch('\[1\]' , '[1]') should return true.
43867           [ruby-dev:22819]
43869         * dir.c: Did some styles (no change to behavior)
43871 Sat Feb  7 19:56:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43873         * lib/irb/init.rb (IRB.rc_files): yield possible rc file names.
43875         * lib/irb/input-method.rb (IRB::ReadlineInputMethod::initialize):
43876           load and save history automatically.  [ruby-core:02352]
43878 Fri Feb  6 22:48:16 2004  Dave Thomas  <dave@pragprog.com>
43880         * lib/rdoc/generators/html_generator.rb (gen_url): Support
43881           https in RDoc hyperlinks
43883 Fri Feb  6 22:41:22 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43885         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): rollback the previous
43886           commit.  [ruby-dev:22813]
43888 Fri Feb  6 22:22:50 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
43890         * lib/pp.rb (PPInspectTest#test_to_s_with_iv): remove instance
43891           variable which is defined in the test.
43893 Fri Feb  6 18:54:18 2004  akira yamada  <akira@ruby-lang.org>
43895         * test/ruby/test_proc.rb (TestProc::test_eq): added a
43896           test.  [ruby-dev:22599]
43898 Fri Feb  6 18:26:00 2004  akira yamada  <akira@ruby-lang.org>
43900         * test/ruby/test_proc.rb (TestProc::test_eq): added tests for
43901           Proc#==.  [ruby-dev:22592], [ruby-dev:22601]
43903 Fri Feb  6 10:12:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43905         * ext/socket/socket.c (bsock_do_not_reverse_lookup): control reverse
43906           lookup for every instance.  [ruby-core:02346]
43908 Fri Feb  6 09:15:11 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43910         * lib/irb/extend-command.rb: add irb_help command.  [ruby-talk:91610]
43912         * lib/irb/cmd/help.rb (IRB::ExtendCommand::Help): show RDoc.
43914 Fri Feb  6 00:48:37 2004  Tanaka Akira  <akr@m17n.org>
43916         * lib/prettyprint.rb (PrettyPrint#first?): obsoleted.
43918 Thu Feb  5 23:56:55 2004  Tanaka Akira  <akr@m17n.org>
43920         * lib/prettyprint.rb (PrettyPrint#seplist): added.
43922         * lib/pp.rb (PPMethods#pp_object): use seplist.
43923           (PPMethods#pp_hash): ditto.
43924           (Array#pretty_print): ditto.
43925           (Struct#pretty_print): ditto.
43926           (MatchData#pretty_print): ditto.
43928         * lib/set.rb (Set#pretty_print): use seplist.
43930 Wed Feb  4 22:39:46 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43932         * file.c (rb_stat_mode): should not sign-expand, so backout.
43934 Wed Feb  4 02:12:06 2004  Tanaka Akira  <akr@m17n.org>
43936         * file.c (test_l): fix wrong method name in document.
43937           (test_S): ditto.
43938           (test_b): ditto.
43939           (test_c): ditto.
43940           (test_suid): ditto.
43941           (test_sgid): ditto.
43942           (test_sticky): ditto.
43944 Tue Feb  3 22:36:25 2004  Kouhei Sutou  <kou@cozmixng.org>
43946         * lib/rss/2.0.rb, lib/rss/content.rb, lib/rss/dublincore.rb,
43947           lib/rss/rss.rb, lib/rss/syndication.rb: removed warnings.
43949         * lib/rss/converter.rb: removed handling load error of nkf.
43951         * test/rss/test_syndication.rb, test/rss/test_trackback.rb,
43952           test/rss/test_dublincore.rb, test/rss/test_content.rb: replaced
43953           'require "rss/parser"' by 'require "rss/1.0"'.
43955         * test/rss/test_parser.rb, test/rss/test_accessor.rb: removed
43956           'require "rss/parser"'.
43958 Tue Feb  3 11:23:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43960         * parse.y (reduce_nodes): remove tail returns.  [ruby-talk:90934]
43962 Tue Feb  3 08:04:57 2004  Tanaka Akira  <akr@m17n.org>
43964         * lib/pp.rb (Struct#pretty_print_cycle): follow 1.8 style.
43966 Mon Feb  2 22:06:31 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
43968         * parse.y (block_append, new_evstr, void_expr0): remove no longer used
43969           labels.
43971 Mon Feb  2 18:45:50 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
43973         * dln.c (dln_load): don't specify RTLD_GLOBAL on Interix,
43974           because it caused SEGV when running runner.rb.
43976 Mon Feb  2 01:54:00 2004  Tanaka Akira  <akr@m17n.org>
43978         * lib/pp.rb (Struct#pretty_print): make it 1.8 style.
43979           (Numeric#pretty_print, FalseClass#pretty_print)
43980           (TrueClass#pretty_print, Module#pretty_print): fix pp for objects
43981           with instance variables.  [ruby-talk:91157]
43983         * lib/open-uri.rb (URI::Generic#find_proxy): return nil on loopback
43984           address.
43986         * lib/resolv-replace.rb (BasicSocket#send): don't replace because
43987           it has no hostname argument.
43988           (IPSocket.getaddress): raise SocketError instead of
43989           Resolv::ResolvError for errors.
43990           (TCPSocket#initialize, UDPSocket#bind, UDPSocket#connect)
43991           (SOCKSSocket#initialize): use IPSocket.getaddress instead of
43992           Resolv.getaddress.
43993           (UDPSocket#send): recognize 3 arguments form.  try all addresses on
43994           4 arguments form.
43996 Sun Feb  1 23:00:00 2004  Shigeo Kobayashi  <shigek@ruby-lang.org>
43998         * ext/bigdecimal.c: Bug in BigDecimal("1e#{n}").add BigDecimal('.5'),n)
43999           reported and fixed by Javier Goizueta.
44001 Sun Feb  1 18:21:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44003           From ruby_1_8 branch:
44004         * lib/test/unit.rb: rearranged documentation for RDoc's sake.
44005         * lib/matrix.rb: improved documentation.
44006         * lib/net/http.rb: slight documentation formatting improvement.
44008 Sun Feb  1 05:30:06 2004  Tanaka Akira  <akr@m17n.org>
44010         * lib/open-uri.rb (URI::Generic#find_proxy): warn HTTP_PROXY.
44011          raise an errror on non-http proxy URI.
44012          (OpenURI::Buffer#<<): make a tempfile binmode.  [ruby-talk:90793]
44014 Sun Feb  1 00:57:41 2004  Kouhei Sutou  <kou@cozmixng.org>
44016         * lib/rss/parser.rb (RSS::Parser): added @@default_parser. Used
44017           XML parser became selectable.
44018         * test/rss/test_parser.rb: added tests for
44019           RSS::Parser.default_parser.
44021 Sat Jan 31 02:28:15 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44023         * configure.in (RPATHFLAG): set to -Wl,-R like NetBSD on Interix.
44025 Sat Jan 31 01:09:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44027         * lib/logger.rb: leading 0 padding of timestamp usec part.
44029 Fri Jan 30 18:53:23 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44031         * re.c (KR_REHASH): wrong hash value on sizeof(long) > sizeof(int).
44033 Thu Jan 29 23:11:57 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44035         * configure.in (DLEXT2): removed.  Ruby does not treat
44036           ".dll" as a extention library anymore.
44038         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub (DLEXT2):
44039           ditto.
44041         * util.c (mblen): fix overrun.  [ruby-dev:22672]
44043 Thu Jan 29 22:41:53 2004  Dave Thomas  <dave@pragprog.com>
44045         * lib/rdoc/generators/html_generator.rb: Allow 'link:' in Tidylinks.
44046           THis means you can write "see f1[link:files/f1_rb.html]".
44048 Thu Jan 29 22:24:47 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44050         * sample/openssl/gen_csr.rb: follow OpenSSL::X509::Name change.
44051           ASN.1 type of subject DN elements were wrong.
44053 Thu Jan 29 22:19:51 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44055         * test/*: remove $: trick.  [ruby-dev:22763]  use test/runner.rb to
44056           run test.
44058 Thu Jan 29 19:28:16 2004  Minero Aoki  <aamine@loveruby.net>
44060         * lib/net/http.rb (Request#initialize): reject only when a path is
44061           empty. [ruby-dev:22771]
44063 Thu Jan 29 18:54:08 2004  H.Yamamoto  <ocean@m2.ccsnet.ne.jp>
44065         * dir.c (glob_helper): infinite loop bug in win32 code.
44066           [ruby-dev:22770]
44068 Thu Jan 29 17:03:49 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44070         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44071           [ruby-dev:22761]
44073 Thu Jan 29 11:32:14 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44075         * test/rss/test_*: do $: trick while searching a module in the current
44076           directory.
44078         * test/xsd/test_xmlschemaparser.rb, test/wsdl/test_emptycomplextype.rb,
44079           test/soap/helloworld/test_helloworld.rb,
44080           test/soap/calc/{test_calc.rb,test_calc2.rb}: do File.expand_path
44081           before using __FILE__.
44083         * test/yaml/test_yaml.rb: assert_equals -> assert_equal.
44085 Thu Jan 29 01:56:02 2004  why the lucky stiff  <why@ruby-lang.org>
44087         * ext/syck/rubyext.c: usec round-tripping skew. [ruby-core:2305]
44089         * lib/yaml/rubytypes.rb: character Range now round-trips. [ruby-core:2306]
44091         * test/yaml/test_yaml.rb: add Time and Range tests.
44093 Thu Jan 29 00:00:46 2004  Kouhei Sutou  <kou@cozmixng.org>
44095         * lib/rss: rss/parser.rb is always required.
44097 Wed Jan 28 15:09:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44099         * test/rss/*.rb: remove "test/" prefix.
44101 Wed Jan 28 13:07:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44103         * ext/iconv/extconf.rb: include iconv.h for libiconv.  [ruby-dev:22715]
44105 Wed Jan 28 12:43:07 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44107         * lib/rss: rss library imported. [ruby-dev:22726]
44109 Wed Jan 28 04:29:41 2004  Eric Schwartz  <emschwar@fc.hp.com>
44111         * lib/cgi/session.rb: use LOCK_SH to read, and a few other
44112           improvements.  [ruby-core:02328]
44114 Tue Jan 27 15:00:14 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44116         * misc/ruby-mode.el: better support for general delimited
44117           strings.  [ruby-dev:22695]
44119 Tue Jan 27 11:04:40 2004  FUKUMOTO Atsushi  <fukumoto@nospam.imasy.or.jp>
44121         * ext/socket/socket.c (s_recvfrom): sending length should be an
44122           invariant while retrying on EAGAIN.  [ruby-talk:89962]
44124 Tue Jan 27 10:31:28 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44126         * ext/win32ole/win32ole.c (set_argv): fix condition.
44128 Tue Jan 27 02:26:31 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44130         * lib/webrick/httputils.rb (WEBrick:HTTPUtils::parse_header):
44131           refine regex for header-name.
44133 Mon Jan 26 22:53:04 2004  Dave Thomas  <dave@pragprog.com>
44135         * io.c: Remove documentation references to $defout.
44137 Mon Jan 26 14:41:46 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44139         * lib/weakref.rb (WeakRef::initialize): set up @__id before
44140           calling "super".
44142         * lib/delegate.rb (Delegator::initialize): preserve
44143           singleton_method_added method [ruby-dev:22685]
44145         * lib/delegate.rb (Delegator::initialize): use Kernel::raise
44146           instead of mere raise.  [ruby-dev:22681]
44148 Mon Jan 26 12:45:23 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44150         * ext/tcltklib/tcltklib.c: define CONST84 when TCL_MAJOR_VERSION == 7
44152 Mon Jan 26 11:30:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44154         * ext/extmk.rb: Makefiles should depend on also rbconfig.rb.
44155           (ruby-bugs:PR#1256)
44157         * ext/win32ole/win32ole.c (set_argv): set real arguments to
44158           WIN32OLE::ARGV.  [ruby-list:39073]
44160 Sun Jan 25 18:25:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44162         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): third
44163           argument become optional.
44165         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): ditto.
44167         * ext/openssl/ossl_x509name.c (Init_x509name): emailAddress and
44168           domainComponent should be IA5String.
44170 Sun Jan 25 01:45:38 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44172         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#run): support
44173           virtual host.
44175         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#virtual_host): add
44176           new method to register virtual hosting server.
44178         * lib/webrick/httpserver.rb (WEBrick::HTTPServer#lookup_server): add
44179           new method to lookup virtual hosting server.
44181 Sat Jan 24 13:06:26 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44183         * ext/openssl/ossl_x509hame.c (ossl_x509name_initialize): change
44184           second argument. it expected to be a Hash not an Integer.
44186         * ext/openssl/ossl_x509name.c (ossl_x509name_add_entry): add new
44187           function for OpenSSL::X509::Name#add_entry.
44189         * ext/openssl/ossl_x509name.c (Init_ossl_x509name): add constants
44190           OpenSSL::X509::Name::DEFAULT_OBJECT_TYPE and OBJECT_TYPE_TEMPLATE.
44192         * ext/openssl/lib/openssl/x509.rb (OpenSSL::X509::Name#initialize):
44193           second argument takes OBJECT_TYPE_TEMPLATE by default.
44195 Fri Jan 23 02:26:30 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44197         * pack.c (num2i32): pack should not raise RangeError.
44198           [ruby-dev:22654]
44200         * pack.c (pack_pack): do not auto convert nil to zero.
44202 Thu Jan 22 22:54:53 2004  Shugo Maeda  <shugo@ruby-lang.org>
44204         * lib/net/imap.rb (BEG_REGEXP): allow 8-bit characters in quoted
44205           strings for Novell GroupWise Internet Agent.
44207         * lib/net/imap.rb (DATA_REGEXP): ditto.
44209 Thu Jan 22 18:35:49 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44211         * lib/e2mmap.rb (VERSION): remove unnecessary version checking.
44213 Thu Jan 22 16:21:02 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44215         * parse.y (string_content): reset lexical states at the beginning of
44216           string contents.  [ruby-list:39061]
44218 Thu Jan 22 08:08:50 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44220         * parse.y (opt_rescue): use NODE_ERRINFO() instead of
44221           NODE_GVAR("$!"), to avoid confusion from variable aliasing.
44222           [ruby-talk:90074]
44224         * version.c (Init_version): remove obsolete constants VERSION
44225           etc.  [ruby-dev:22643]
44227 Thu Jan 22 01:46:32 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44229         * parse.y (newline_node): do not use NODE_NEWLINE node anymore,
44230           use NEWLINE flag instead.
44232 Thu Jan 22 01:12:12 2004  Siena.  <siena@faculty.chiba-u.jp>
44234         * missing/os2.c (chdir, getcwd):
44235           use _chdir2 and _getcwd2 supporting multiple drives in OS/2 with EMX.
44237 Thu Jan 22 00:33:52 2004  Siena.  <siena@faculty.chiba-u.jp>
44239         * configure.in: check availability of link(). [ruby-dev:22237]
44240         * file.c (rb_file_s_link): raise an exception when link() is unavailable.
44241         * missing/os2.c (link): removed. File#link isn't supported.
44242         * bcc32/Makefile.sub: define HAVE_LINK to enable link(). [ruby-dev:22241]
44243         * win32/Makefile.sub: ditto.
44245 Thu Jan 22 00:26:25 2004  Siena.  <siena@faculty.chiba-u.jp>
44247         * ChangeLog: typo: RUBY_MBCHAR_MAX was RUBY_MBCHAR_MAXSIZE.
44249 Thu Jan 22 00:12:51 2004  Siena.  <siena@faculty.chiba-u.jp>
44251         * defines.h: define RUBY_MBCHAR_MAX instead of MB_CUR_MAX.
44252         * dir.c (Next, emx_mblen): use RUBY_MBCHAR_MAX for mblen().
44253         * file.c (CharNext): ditto.
44254         * ruby.c (translate_char): ditto.
44255         * util.c (__crt0_glob_function): ditto.
44257 Thu Jan 22 00:10:01 2004  Dave Thomas  <dave@pragprog.com>
44259         * lib/base64.rb: :nodoc: the Deprecated module
44261 Wed Jan 21 23:52:39 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44263         * configure.in: Interix(SFU) support.
44265 Wed Jan 21 23:03:45 2004  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
44267         * lib/drb/drb.rb: remove O_NONBLOCK, thanks \ay
44268         * lib/drb/extserv.rb: typo
44270 Wed Jan 21 17:57:56 2004  Shugo Maeda  <shugo@ruby-lang.org>
44272         * lib/net/imap.rb (envelope): allow NIL.
44273         * lib/net/imap.rb (body): ditto.
44274         * lib/net/imap.rb (number): ditto.
44275         * lib/net/imap.rb (ensure_nz_number): show a detailed error
44276           message.
44278 Wed Jan 21 16:44:15 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44280         * lib/mkmf.rb (merge_libs): squeeze successive same libraries.
44281           [ruby-dev:22652]
44283 Wed Jan 21 16:10:36 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44285         * lib/base64.rb: enclosed in a module.  [ruby-core:02285]
44287 Wed Jan 21 16:01:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44289         * ext/digest/rmd160/extconf.rb: have_library appends found library.
44291 Wed Jan 21 11:36:00 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44293         * ext/socket/socket.c (sock_gethostbyname): returns host if
44294           ai_canonname is NULL. (ruby-bugs PR#1243)
44296         * parse.y (block_append): update nd_end for "real" head node.
44297           [ruby-list:39058]
44299 Tue Jan 20 14:48:28 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44301         * ext/openssl/extconf.rb: should check <openssl/conf_api.h> instead
44302           of OPENSSL_VERSION_NUMBER. [ruby-list:39056]
44304 Tue Jan 20 14:43:17 2004  Dave Thomas  <dave@pragprog.com>
44306         * lib/base64.rb: Add RDoc
44308 Tue Jan 20 14:25:51 2004  Dave Thomas  <dave@pragprog.com>
44310         * lib/abbrev.rb: Add RDoc
44312 Tue Jan 20 13:22:39 2004  Dave Thomas  <dave@pragprog.com>
44314         * lib/rdoc/generators/html_generator.rb: Document aliases at
44315           top-most level.
44317         * lib/English.rb: Document English.rb.
44319 Tue Jan 20 04:41:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44321         * test/ruby/test_marshal.rb (MarshalTestLib::test_exception): test
44322           for [ruby-dev:22604].
44324         * test/ruby/test_marshal.rb (MarshalTestLibtest_singleton): test
44325           for [ruby-dev:22588].
44327 Tue Jan 20 02:38:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44329         * marshal.c (w_class): should not dump singleton class.
44330           [ruby-dev:22631]
44332 Tue Jan 20 02:49:22 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44334         * ext/openssl/extconf.rb: add check for OpenSSL version.
44335           [ruby-list:39054]
44337 Mon Jan 19 23:56:20 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44339         * error.c (name_err_mesg_to_str): inverted condition for result of
44340           inspection.  [ruby-dev:22628]
44342 Mon Jan 19 22:24:28 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44344         * sample/exyacc.rb: escape '}' to avoid warning.
44346         * lib/rdoc/parsers/parse_c.rb: escape '{' and '}' to avoid warnings.
44348 Mon Jan 19 21:28:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44350         * ext/digest/defs.h, win32/win3.c, win32/win32.h, file.c: remove
44351           useless casts for Borland C.
44353 Mon Jan 19 17:39:38 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44355         * error.c (NameError::message): internal use only.
44357         * eval.c (rb_method_missing): use hidden constant.
44359 Mon Jan 19 16:30:53 2004  akira yamada  <akira@ruby-lang.org>
44361         * test/ruby/test_time.rb: added tests for [ruby-dev:22614] and
44362           [ruby-dev:22617].
44364 Mon Jan 19 13:09:21 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44366         * ext/extmk.rb, win32/Makefile.sub, win32/configure.bat,
44367           win32/setup.mak: --with-static-linked-ext support on mswin32.
44369 Mon Jan 19 06:49:07 2004  Tadayoshi Funaba  <tadf@dotrb.org>
44371         * lib/date.rb: zone was wrong when it was behind UTC.
44372           Thanks Mark J. Reed.
44374         * lib/date/format.rb: %z is now always replaced by four digits
44375           with a leading plus or minus sign.
44377         * sample/cal.rb: added a class, anyway.
44379 Mon Jan 19 01:08:39 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44381         * class.c, error.c, eval.c, intern.h, object.c, variable.c:
44382           do not set path if it is a singleton class.  [ruby-dev:22588]
44384         * lib/cgi.rb (CGI::QueryExtension): give extended string, not a
44385           delegater object.
44387 Sun Jan 18 23:59:44 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44389         * ext/iconv/charset_alias.rb: prefer us_EN locale encodings or
44390           former.  [ruby-dev:22609]
44392         * ext/iconv/iconv.c (iconv_create): raise InvalidEncoding
44393           exception when EINVAL.
44395 Sun Jan 18 23:16:34 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44397         * class.c, error.c, file.c, io.c, numeric.c, object.c, re.c, struct.c,
44398           time.c: marked init_copy functions nodoc.
44400 Sun Jan 18 20:47:35 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44402         * ruby.c: use translate_char() on Cygwin.
44404 Sun Jan 18 20:00:16 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44406         * lib/soap/wsdlDriver.rb, lib/wsdl/soap/operation.rb: add support of
44407           "parts" attribute of soap:body element in WSDL.
44409         * lib/wsdl/xmlSchema/schema.rb: friendly warning message for
44410           simpleType element which is not supported for now.
44412         * test/wsdl/soap/{soapbodyparts.wsdl,test_soapbodyparts.wsdl}: new
44413           files.
44415 Sun Jan 18 16:46:48 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44417         * time.c (time_overflow_p): should return results.  [ruby-dev:22614]
44419 Sun Jan 18 12:07:24 2004  Siena.  <siena@faculty.chiba-u.jp>
44421         * test/ruby/test_time.rb: new test case to test Time#[+-].
44423         * time.c (time_plus, time_minus): fix RangeError for a negative
44424           argument in environments whose time_t is unsigned. [ruby-dev:22608]
44426 Sun Jan 18 02:33:26 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44428         * defines.h (_WIN32): undef _WIN32 on Cygwin before defining DOSISH.
44430 Sun Jan 18 00:23:55 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44432         * marshal.c (class2path): check anonymous class/module before
44433           checking referable, and allow singleton classes.
44435 Sat Jan 17 23:58:51 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44437         * error.c (NameError::Message): new class for lazy evaluation of
44438           message to ensure replaced before marshalling.  [ruby-dev:22604]
44440         * eval.c (rb_method_missing): use NameError::Message.
44442 Sat Jan 17 21:49:50 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44444         * lib/time.rb (test_rfc2822, test_rfc3339, test_encode_xmlschema):
44445           should not expect that all platforms handle negative time_t value.
44447 Fri Jan 16 23:53:09 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44449         * eval.c (proc_eq): compare also arguments and environment
44450           (including local variables).  [ruby-dev:22590]
44452 Fri Jan 16 14:33:35 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44454         * marshal.c (class2path): get class path and check referable.
44455           [ruby-dev:22588]
44457 Thu Jan 15 12:58:26 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44459         * io.c (argf_read): do not append EOF.  (ruby-bugs-ja:PR#585)
44461         * io.c (rb_io_fwrite): ad-hockery hack to get rid of HP-UX stdio
44462           weird behavior.  [ruby-dev:22424]
44464 Wed Jan 14 21:13:06 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44466         * test/inlinetest.rb (InlineTest::eval_part): eval under the top
44467           level environment.
44469 Wed Jan 14 17:54:17 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44471         * test/inlinetest.rb (InlineTest::loadtest): require instead of
44472           load, to get rid of multiple loading.
44474 Wed Jan 14 13:30:52 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44476         * ext/iconv/extconf.rb: wrapper iconv.rb is dependent on platform.
44478 Wed Jan 14 09:32:02 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44480         * MANIFEST: add test/net/test_httpheader.rb. (commit miss?)
44482 Wed Jan 14 00:58:35 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44484         * eval.c (Init_Proc): move SystemStackError from under
44485           StandardError to Exception.  [ruby-talk:89782]
44487 Tue Jan 13 18:03:02 2004  Ian Macdonald  <ian@caliban.org>
44489         * file.c (rb_stat_wr, rb_stat_ww): New functions
44490           implementing new methods (File::Stat#world_readable?,
44491           File::Stat#world_writable?).
44493 Tue Jan 13 16:53:25 2004  why the lucky stiff  <why@ruby-lang.org>
44495         * ext/syck/rubyext.c: omission of Date library code caused
44496           test suite failure. [ruby-core:2251]
44498 Tue Jan 13 16:50:03 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44500         * ext/tk/lib/tk.rb: use $0 as the default application class name.
44502 Tue Jan 13 14:48:00 2004  Ian Macdonald  <ian@caliban.org>
44504         * lib/pathname.rb: New methods (Pathname#world_readable?,
44505           Pathname#world_writable?).
44507 Tue Jan 13 14:48:01 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44509         * parse.y (primary): allow no "when" case. [ruby-dev:22578]
44511         * ruby.h (rb_class_of): reduce branch. [ruby-dev:22577]
44513         * ruby.h (rb_type): ditto.
44515 Tue Jan 13 14:26:59 2004  Kazuhiro NISHIYAMA  <zn@mbf.nifty.com>
44517         * lib/test/unit/ui/testrunnerutilities.rb (TestRunnerUtilities):
44518           moved run method which allows output level.  [ruby-dev:22554]
44520 Tue Jan 13 13:04:24 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44522         * test/test_*.rb: Pathname#parent -> Pathname#dirname.
44524 Tue Jan 13 11:38:58 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44526         * test/yaml/test_yaml.rb (YAML_Unit_Tests::test_spec_type_{int,float}):
44527           fix syntax error.
44529 Tue Jan 13 07:52:40 2004  why the lucky stiff  <why@ruby-lang.org>
44531         * ext/syck/bytecode.c: turn off default implicit typing.
44533         * ext/syck/implicit.c: detect base60 integers.
44535         * ext/syck/rubyext.c: handle base60, as well as hex and octal
44536           with commas.  implicit typing of ruby symbols.
44538         * test/yaml/test_yaml.rb: add test.
44540 Tue Jan 13 04:29:52 2004  Dave Thomas  <dave@pragprog.com>
44542         * lib/rdoc/ri/ri_driver.rb (RiDriver::report_method_stuff):
44543           Show fully-qualified class names in class list.
44545 Tue Jan 13 01:24:17 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44547         * file.c (test_wr): Rdoc fix.  [ruby-core:02225]
44549 Tue Jan 13 01:04:37 2004  Dave Thomas  <dave@pragprog.com>
44551         * lib/rdoc/ri/ri_paths.rb (RI::Paths): First attempt at
44552           incorporating DESTDIR in the rdoc installation.
44554 Mon Jan 12 23:26:21 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44556         * parse.y (primary): fix position after FCALL.  [ruby-dev:22574]
44558 Mon Jan 12 18:00:11 2004  Ian Macdonald  <ian@caliban.org>
44560         * file.c (test_wr, test_ww): New functions implementing new
44561           methods (File::world_readable?, File::world_writable?).
44563         * file.c (S_IRUGO, S_IGUGO): New macros.
44565 Mon Jan 12 12:07:22 2004  Dave Thomas  <dave@pragprog.com>
44567         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods):
44568           Someone changed the "// in eval.c" comments to "/*...*/" style,
44569           so the parsing of the source file name broke.
44571         * object.c: Remove spurious space in TrueClass documentation.
44573         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body): Fix
44574           bad regexp: if the code before a documented method contained
44575           a comment that wasn't terminated by whitespace, that comment
44576           and all intervening code was included in the following
44577           method's documentation.
44579         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter::break_to_newline):
44580           HTML formats need explicit line breaks.
44582 Mon Jan 12 02:24:07 2004  Dave Thomas  <dave@pragprog.com>
44584         * lib/rdoc/ri/ri_formatter.rb (RI::HtmlFormatter): Add HTML
44585           generation support to ri (Elliot Hughes)
44587 Sun Jan 11 23:54:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44589         * env.h (ruby_frame, ruby_scope, ruby_in_eval, ruby_class,
44590           ruby_dyna_vars): export.  [ruby-dev:22566]
44592 Sun Jan 11 02:35:53 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44594         * ext/socket/socket.c (make_hostent): a bug in brace position.
44596         * configure.in: install rdoc by default. if you do not want to
44597           install rdoc, specify --disable-install-doc.
44599 Sun Jan 11 02:07:47 2004  Dave Thomas  <dave@pragprog.com>
44601         * lib/rdoc/ri/ri_options.rb (RI::Options::OptionList::OptionList):
44602           Also accept command line options via the 'RI' environment variable.
44604 Sat Jan 10 21:27:41 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44606         * eval.c (eval): need to add message delimiter. [ruby-dev:22561]
44608 Sat Jan 10 01:54:50 2004  Eric Sunshine  <sunshine@sunshineco.com>
44610         * defines.h (__NeXT__): Ensure that all standard S_IRUSR, S_IWGRP,
44611           S_IRWXO, etc. macros are defined since future code might require
44612           them (even though present code only requires a subset).
44614         * defines.h (__NeXT__): Bug fix: WORDS_BIGENDIAN was not being set
44615           correctly on Rhapsody when -arch compiler flag was used (via
44616           configure's --enable-fat-binary option).
44618 Sat Jan 10 23:01:41 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44620         * configure.in (LIBPATHFLAG, RPATHFLAG): enclose paths with single
44621           quotes.  [ruby-dev:22564]
44623         * lib/mkmf.rb (libpathflag): do not enclose with quotes always.
44625         * {bcc32,win32,wince}/Makefile.sub (LIBPATHFLAG): quoted.
44627 Sat Jan 10 22:46:18 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44629         * dir.c (dir_inspect): new method, Dir#inspect.  [ruby-dev:22562]
44631 Fri Jan  9 17:36:51 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44633         * ext/socket/socket.c (make_hostent): getaddrinfo(3) on BSD do not
44634           fill ai_canonname if serv is not supplied.  (ruby-bugs PR#1243)
44636 Fri Jan  9 13:14:59 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44638         * lib/test/unit/collector/dir.rb: do not ignore exceptions(LoadError
44639           and SystemExitError) while loading a testcase.  smell of bug.
44641         * test/testunit/collector/test_dir.rb: add new test of the LoadError.
44643         * test/drb/{test_drbssl.rb,test_drbunix.rb}: do not define testcase if
44644           openssl is not installed.
44646         * test/testunit/collector/test_dir.rb: assert_raises -> assert_raise.
44648 Fri Jan  9 11:52:16 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44650         * rubysig.h: <errno.h> is needed to use errno which may be a macro.
44652 Fri Jan  9 11:20:24 2004  Siena.  <siena@faculty.chiba-u.jp>
44654         * ext/extmk.rb (extmake): should not reduce necessary libraries.
44655           [ruby-dev:22440]
44657         * lib/mkmf.rb (merge_libs): merge libraries according to
44658           dependency.
44660 Fri Jan  9 10:05:23 2004  Siena.  <siena@faculty.chiba-u.jp>
44662         * lib/mkmf.rb (libpathflag): use single quotes.  [ruby-dev:22440]
44664 Thu Jan  8 23:49:21 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44666         * configure.in (RDOCTARGET): new macro.  if you want to install
44667           rdoc documentation, you need to run configure with
44668           --enable-install-doc.
44670 Thu Jan  8 21:17:43 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44672         * ext/openssl/ossl_pkey.c (ossl_pkey_to_der): removed; it returns
44673           public key only.
44675         * ext/openssl/ossl_pkey_dh.c (ossl_dh_to_der): new function for
44676           OpenSSL::PKey::DH#to_der.
44678         * ext/openssl/ossl_pkey_dsa.c (ossl_dsa_to_der): new function for
44679           OpenSSL::PKey::DSA#to_der.
44681         * ext/openssl/ossl_pkey_rsa.c (ossl_rsa_to_der): new function for
44682           OpenSSL::PKey::RSA#to_der.
44684 Thu Jan  8 18:25:29 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44686         * dir.c (glob_helper): should not recurse in exceptional status.
44688 Thu Jan  8 16:51:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44690         * test/wsdl/datetime/test_datetime.rb: fixed a stupid testcase which
44691           dumps "E" at month-end.
44693 Thu Jan  8 11:20:01 2004  WATANABE Hirofumi  <eban@ruby-lang.org>
44695         * eval.c, object.c, process.c, re.c: don't use C++ style comments.
44697 Thu Jan  8 08:46:14 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44699         * ext/syck/rubyext.c (yaml_org_handler): lazy-load Date for
44700           static-ext.
44702 Thu Jan  8 07:06:30 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44704         * ext/extmk.rb: preserve order in Setup.  [ruby-dev:22503]
44706         * ext/extmk.rb: move dependent libraries just after depended
44707           libraries.
44709         * ext/digest/*/extconf.rb: depend on digest.
44711 Thu Jan  8 04:36:17 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44713         * lib/webrick/cgi.rb (WEBrick::CGI#initialize): should create
44714           @config[:Logger] if it was not given.
44716 Wed Jan  7 22:28:12 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44718         * dir.c (glob_helper): fix memory leak.
44720 Wed Jan  7 21:15:07 2004  GOTOU Yuuzou  <gotoyuzo@notwork.org>
44722         * sample/webrick/*: new files.
44724         * MANIFEST: add sample/webrick/*
44726 Wed Jan  7 20:51:51 2004  Minero Aoki  <aamine@loveruby.net>
44728         * test/net/test_httpheader.rb: new file.
44730         * MANIFEST: add test/net/test_httpheader.rb.
44732 Wed Jan  7 20:42:06 2004  Minero Aoki  <aamine@loveruby.net>
44734         * lib/net/http.rb (HTTPHeader#content_length): should return nil
44735           unless header exists. [ruby-dev:22519]
44737 Wed Jan  7 14:26:05 2004  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
44739         * ext/tk/lib/tk.rb (TkPanedWindow): use epath for embedded windows.
44741         * ext/tk/lib/tktext.rb: use epath for embedded windows.
44743         * ext/tk/lib/tkcanvas.rb: use epath for window items.
44745 Wed Jan  7 14:24:04 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44747         * lib/soap/{attachment.rb,mimemessage.rb}: added from soap4r/1.5.2.
44749 Wed Jan  7 13:00:18 2004  Dave Thomas  <dave@pragprog.com>
44751         * lib/rdoc/ri/ri_driver.rb: Fix problem where ri was
44752           being too eager to find matches of ambiguous method
44753           names (such as "ri Thread.join" would return both
44754           Thread.join and ThreadsWait.join)
44756 Wed Jan  7 12:35:41 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44758         * lib/debug.rb: revert command parse regexps.  [ruby-list:39014] by
44759           Shirai,Kaoru.
44761 Wed Jan  7 08:21:04 2004  Dave Thomas  <dave@pragprog.com>
44763         * lib/rdoc/parsers/parserfactory.rb: Check for shebang
44764           line in files that would otherwise be treated as
44765           plain text.
44767 Tue Jan  6 22:13:34 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44769         * eval.c (rb_mod_modfunc): should break if m has no super class.
44770           [ruby-dev:22498]
44772 Tue Jan  6 21:51:37 2004  Nobuyoshi Nakada  <nobu@ruby-lang.org>
44774         * io.c (fptr_finalize): should save errno just after failure.
44775           [ruby-dev:22492]
44777 Tue Jan  6 20:51:10 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44779         * lib/logger.rb(Logger#msg2str): no special treatment for the object
44780           which responds to :to_str.
44782         * lib/logger.rb(LogDevice#initialize): remove type checking if the
44783           given object is a String.  Kernel.open handles it correctly.
44785         * test/logger/test_logger.rb: follow above change (ArgumentError ->
44786           TypeError.)
44788 Tue Jan  6 14:53:14 2004  Dave Thomas  <dave@pragprog.com>
44790         * bin/ri: split out the display side, making it pluggable. Added
44791           new ri_driver and ri_display files in lib/rdoc/ri.
44793 Tue Jan  6 11:29:43 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44795         * test/inlinetest.rb, test/{test_generator.rb,test_ipaddr.rb,
44796           test_pathname.rb,test_pp.rb,test_prettyprint.rb,test_set.rb,
44797           test_time.rb,test_tsort.rb: added.
44799 Tue Jan  6 09:38:27 2004  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
44801         * import soap4r/1.5.2;
44803         * lib/soap/{attachment.rb,baseData.rb,encodingstyle/soapHandler.rb}:
44804           introduce SOAPExternalReference class as a referenct to SOAPEnvelope
44805           external content.
44807         * lib/soap/{attachment.rb,mimemessage.rb}: great SwA (SOAP messages
44808           with Attachments) support code by Jamie Herre.
44810         * lib/soap/{element.rb,marshal.rb,parser.rb,processor.rb,
44811           streamHandler.rb,wsdlDriver.rb}: SwA support.
44813         * lib/soap/rpc/{cgistub.rb,driver.rb,element.rb,proxy.rb,router.rb,
44814           soaplet.rb}: SwA support and refactoring.
44816         * lib/soap/generator.rb, lib/soap/mapping/mapping.rb: follow
44817           SOAPReference#initialize signature change.
44819         * lib/soap/mapping/factory.rb: deleted unused methods.
44821         * lib/soap/mapping/rubytypeFactory.rb: do no ignore case while xsi:type
44822           string <-> Ruby class name matching.
44824         * lib/xsd/datatypes.rb: check the smallest positive non-zero
44825           single-precision float exactly instead of packing with "f".
44826           [ruby-talk:88822]
44828         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: use 1.402e-45, not
44829           1.4e-45.  1.4e-45 is smaller than 2 ** -149...
44831         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb,
44832           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0".
44834         * test/soap/test_streamhandler.rb: revert to the previous test that
44835           warns "basic_auth unsupported under net/http".
44837 Tue Jan  6 06:37:53 2004  Dave Thomas  <dave@pragprog.com>
44839         * bin/rdoc: Add --ri-system switch
44841         * lib/.document: Update with list of files that seem to have
44842           documentation
44844         * lib/test/unit.rb: Reorder comment to make it RDoc friendly.
44846         * Makefile.in: add install-nodoc target, and make it
44847           generate RDoc on default install.
44849         * lib/rdoc/ri/ri_options.rb (RI::Options::parse): Add
44850           --doc-dir option to ri.
44852 Tue Jan  6 00:04:40 2004  Dave Thomas  <dave@pragprog.com>
44854         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method_or_yield_parameters):
44855           fix parsing if there are braces in a method parameter list
44857 Tue Jan  6 01:01:04 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44859         * win32/dir.h, win32/win32.c: fix patch miss.
44861         * win32/Makefile.sub: fix file dependency.
44863 Mon Jan  5 20:32:00 2004  Gavin Sinclair  <gsinclair@soyabean.com.au>
44865         * lib/logger.rb: enhanced documentation.
44867 Mon Jan  5 18:58:47 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44869         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44870           [ruby-dev:22486]
44872         * pack.c (pack_unpack): unpack requires big endian offet (OFF16B
44873           and OFF32B).  The patch is from Minero Aoki in [ruby-dev:22489]
44875         * pack.c (OFF16B): add big-endian offset again.
44877 Mon Jan  5 03:00:53 2004  Minero Aoki  <aamine@loveruby.net>
44879         * test/ruby/test_pack.rb: new test test_unpack_N.
44881 Mon Jan  5 01:47:53 2004  NAKAMURA Usaku  <usa@ruby-lang.org>
44883         * lib/mkmf.rb (create_makefile): remove duplicated object files
44884           from $objs on DOSISH platforms.
44886 Sat Jan  3 02:44:48 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44888         * rubysig.h (TRAP_END): preserve errno before switching context.
44889           [ruby-core:02137]
44891 Sat Jan  3 01:18:08 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44893         * dir.c: merge tuning from H.Yamamoto <ocean@m2.ccsnet.ne.jp>.
44894           [ruby-dev:22476]
44896 Fri Jan  2 14:54:11 2004  Dave Thomas  <dave@pragprog.com>
44898         * bin/ri: Add new --classes option, and arrange for
44899           help messages to be paged too.
44901         * bin/rdoc: Add statistics.
44903         * process.c: (MG) Added Process documentation
44905         * lib/rdoc/ri/ri_formatter.rb (RI::AttributeFormatter::wrap):
44906           Fix problem with labels not displaying in RI labeled
44907           lists using BS and ANSI modes.
44909 Fri Jan  2 01:50:13 2004  Yukihiro Matsumoto  <matz@ruby-lang.org>
44911         * io.c (argf_eof): ARGF.eof? should not have any side effect.
44912           [ruby-dev:22469]
44914 Thu Jan  1 09:03:20 2004  Dave Thomas  <dave@pragprog.com>
44916         * bin/ri (report_class_stuff): Fix problem with ambiguous nested
44917           classes not matching.
44919 Wed Dec 31 17:25:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44921         * io.c (argf_each_byte): should return self.  [ruby-dev:22465]
44923 Wed Dec 31 15:05:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44925         * lib/pathname.rb: Corrected small coding error.
44927 Wed Dec 31 15:00:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44929         * lib/pathname.rb: Completed documentation.
44931 Wed Dec 31 11:20:34 2003  Dave Thomas  <dave@pragprog.com>
44933         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::do_methods): Make
44934           file referenced in "// in sss.c" relative to current file.
44936 Wed Dec 31 11:17:37 2003  Dave Thomas  <dave@pragprog.com>
44938         * lib/rdoc/generators/html_generator.rb: Fix problem when
44939           a public method was aliased, but the alias is then
44940           made private, and hence doesn't appear in RDoc output.
44942 Wed Dec 31 01:33:05 2003  Dave Thomas  <dave@pragprog.com>
44944         * array.c, error.c, eval.c, io.c, prec.c, range.c, re.c,
44945           string.c, time.c: Add RDoc for Kernel functions, and tidy.
44947 Tue Dec 30 19:39:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
44949         * io.c (rb_f_readline): should raise EOFError at the end of
44950           files.  [ruby-dev:22458]
44952         * io.c (argf_read): should concatenate input files when length
44953           argument is nil. [ruby-dev:22450]
44955         * io.c (argf_read): should update supplied string buffer (2nd
44956           argument) even when IO#read is called multiple times.
44958         * io.c: should initialize lineno by zero. [ruby-dev:22460]
44960 Tue Dec 30 12:30:30 2003  Dave Thomas  <dave@pragprog.com>
44962         * lib/rdoc/code_objects.rb (RDoc::Context::find_symbol): If a
44963           class and a method have the same name, finding Xxx.abc was trying
44964           to find 'abc' in method 'Xxx', not class 'Xxx'.
44966 Tue Dec 30 08:32:32 2003  Dave Thomas  <dave@pragprog.com>
44968         * lib/rdoc/parsers/parse_rb.rb (RDoc::RubyParser::parse_method):
44969           Handle undoing nsting of yield parameters correctly for:
44971             def each_entry(&b) Dir.foreach(@path) {|f| yield P.new(f) } end
44973 Tue Dec 30 07:30:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44975         * lib/pathname.rb: Added documentation.
44977 Mon Dec 29 20:08:17 2003  Minero Aoki  <aamine@loveruby.net>
44979         * lib/net/http.rb (GenericRequest#initialize): check if path
44980           begins with '/'.
44982         * lib/net/http.rb: def m( arg ) -> def m(arg)
44984 Mon Dec 29 12:51:02 2003  Dave Thomas  <dave@pragprog.com>
44986         * eval.c: Add RDoc for Kernel global functions.
44988 Mon Dec 29 11:00:16 2003  Dave Thomas  <dave@pragprog.com>
44990         * array.c: Tidy up RDoc loose ends.
44992 Mon Dec 29 05:05:51 2003  Dave Thomas  <dave@pragprog.com>
44994         * struct.c, random: Add RDoc comments
44996 Mon Dec 29 02:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
44998         * lib/optparse.rb: Improved documentation.
45000 Mon Dec 29 02:20:54 2003  Dave Thomas  <dave@pragprog.com>
45002         * eval.c: Add RDoc for class Proc, Method, UnboundMethod
45004 Mon Dec 29 02:20:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45006         * instruby.rb: fix install directory if destdir and compile_dir are
45007           not in the same drive.
45009         * ext/extmk.rb: ditto. [ruby-list:39009]
45011         * win32/Makefile.sub, win32/README.win32, win32/configure.bat,
45012           win32/setup.mak: new configure scheme. use ``configure --prefix=dir''
45013           instead of ``nmake DESTDIR=dir install''.
45015 Mon Dec 29 00:41:44 2003  Dave Thomas  <dave@pragprog.com>
45017         * math.c: Add RDoc comments
45019 Sun Dec 28 20:19:11 2003  Tanaka Akira  <akr@m17n.org>
45021         * ext/stringio/stringio.c (strio_sysread): StringIO.new.sysread didn't
45022           raise EOFError.
45024         * ext/zlib/zlib.c (gzreader_gets): don't increment lineno when
45025           gzfile_read_all returns "".
45027 Sun Dec 28 15:25:08 2003  Dave Thomas  <dave@pragprog.com>
45029         * class.c,object.c,parse.y,sprintf.c,variable.c: Document classes
45030           Object, Module, etc...
45032 Sun Dec 28 11:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45034         * test/csv/test_csv.rb: generate bom.csv and mac.csv files on the fly.
45035           [ruby-talk:88852]
45037         * test/csv/{bom.csv,mac.csv}: removed.
45039 Sun Dec 28 08:56:51 2003  Dave Thomas  <dave@pragprog.com>
45041         * eval.c: Thead[Group] RDoc (thanks to MG)
45043 Sun Dec 28 03:50:05 2003  Dave Thomas  <dave@pragprog.com>
45045         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_override_comment):
45046           Escape method names used in regexp
45048 Sun Dec 28 01:46:02 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
45050         * lib/rdoc/ri/ri_formatter.rb (RI::TextFormatter::display_flow_item):
45051           Add support for rules in 'ri' output.
45053 Sun Dec 28 01:35:35 2003  Dave Thomas  <dave@pragprog.com>
45055         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_body):
45056           Sometimes the Ruby source aliases two otherwise
45057           unrelated methods (for example Kernel#object_id and
45058           Kernel#hash are both the same C function). Provide a
45059           facility to allow the methods to be documented
45060           separately.
45062 Sun Dec 28 01:05:31 2003  Dave Thomas  <dave@pragprog.com>
45064         * marshal.c, signal.c: RDoc collemts added by Elliott Hughes
45066 Sun Dec 28 00:46:25 2003  Dave Thomas  <dave@pragprog.com>
45068         * lib/rdoc/parsers/parse_c.rb (RDoc::C_Parser::find_class_comment):
45069           Some Ruby source uses lower-case class names for the
45070           Init_Xxx C function name.
45072 Sat Dec 27 23:41:46 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45074         * configure.in: fix "test: too many arguments" error.
45076 Sat Dec 27 15:32:40 2003  Dave Thomas  <dave@wireless_3.local.thomases.com>
45078         * time.c: Add RDoc comments for Time class.
45080 Sat Dec 27 15:07:26 2003  Dave Thomas  <dave@pragprog.com>
45082         * object.c: Add RDoc comments for Symbol class.
45084 Sat Dec 27 14:39:53 2003  Dave Thomas  <dave@pragprog.com>
45086         * numeric.c (Init_Numeric): Add RDoc comments.
45088 Sat Dec 27 00:44:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45090         * io.c (next_argv): warn always for stdin on inplace edit mode.
45092         * io.c (read_all): need to check string value.
45094         * io.c (argf_read): allow ARGF.read(nil).  [ruby-dev:22433]
45096 Fri Dec 26 23:02:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45098         * io.c (rb_f_backquote): need not to check nil result.
45099           [ruby-core:02078]
45101         * io.c (rb_io_getline): should return nil when read_all gives
45102           empty string, even when nil rs is specified. [ruby-core:02077]
45104 Fri Dec 26 18:33:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45106         * configure.in: check if getcontext and setcontext are available.
45108         * eval.c: use presence of getcontext/setcontext.
45110 Fri Dec 26 16:40:53 2003  Tanaka Akira  <akr@m17n.org>
45112         * lib/pathname.rb (PathnameTest#test_plus): add 2 assertions.
45114 Fri Dec 26 14:05:13 2003  Minero Aoki  <aamine@loveruby.net>
45116         * test/ruby/test_pack.rb: new test test_pack_N.
45118 Fri Dec 26 12:53:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45120         * pack.c (pack_pack): add sign check for 'i', and 'l'.
45121           [ruby-dev:22427]
45123         * bignum.c (rb_quad_pack): add range check for 'quad int'.
45125 Fri Dec 26 10:58:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45127         * MANIFEST: add vms/config.h and remove vms/config.h_in.
45129 Fri Dec 26 10:42:00 2003  AKIYOSHI, Masamichi  <masamichi.akiyoshi@hp.com>
45131         * io.c: [VMS] "rfm=stmlf" is specified for open() and fopen().
45133 Thu Dec 25 22:29:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45135         * string.c (rb_str_update): don't return any value.
45137 Thu Dec 25 15:30:17 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45139         * string.c (rb_str_update): call rb_str_modify().
45141 Thu Dec 25 05:08:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45143         * eval.c (search_required): search actual file name once when no
45144           extension specified.
45146 Thu Dec 25 04:00:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45148         * stable version 1.8.1 released.
45150 Thu Dec 25 00:17:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45152         * configure.in: check for nanosleep, -lrt if required.
45153           [ruby-core:02059]
45155         * eval.c (thread_timer): use select(2) if nanosleep(2) is not
45156           available.
45158         * eval.c: check __stub_getcontext for glibc on some platforms.
45159           [ruby-list:38984]
45161 Wed Dec 24 23:48:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45163         * test/soap/test_basetype.rb, test/soap/marshal/test_marshal.rb
45164           test/xsd/test_xsd.rb: use "(-1.0 / (1.0 / 0.0))" instead of "-0.0"
45165           to express -0.0.  [ruby-talk:88786]
45167 Wed Dec 24 23:29:30 2003  Tanaka Akira  <akr@m17n.org>
45169         * lib/tsort.rb (test_orphaned_break): removed.
45171 Wed Dec 24 20:53:06 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45173         * ext/tk/sample/tkmulticolumnlist.rb: new sample
45175         * ext/tk/sample/tkmultilistframe.rb: bug fix
45177 Wed Dec 24 20:37:37 2003  Eric Sunshine  <sunshine@sunshineco.com>
45179         * configure.in (LDSHARED): Fixed typographical error in assignment of
45180           LDSHARED for Rhapsody which caused linking of extension modules to
45181           fail.
45183 Wed Dec 24 17:51:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45185         * file.c (rb_thread_flock): enable thread support again.
45187 Wed Dec 24 16:46:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45189         * eval.c (catch_timer): do not call rb_thread_schedule() inside to
45190           avoid pthread_mutex_lock() deadlock.  interrupts to system calls
45191           are detected by TRAP_END via EINTR error.
45193         * eval.c (thread_timer): do not post signal unless it is
45194           absolutely necessary.
45196         * rubysig.h (TRAP_END): add CHECK_INTS to switch thread.
45198         * regex.c (re_compile_pattern): check if nextp is smaller than
45199           pend.  [ruby-dev:22372]
45201         * eval.c (umethod_bind): remove method overridden check.
45202           [ruby-dev:22366]
45204 Wed Dec 24 16:13:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45206         * ext/openssl/ossl_ssl.c (ossl_ssl_read): should check for error
45207           status by SSL_get_error().
45209         * ext/openssl/ossl_ssl.c (ossl_ssl_write): ditto.
45211 Wed Dec 24 14:23:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45213         * ext/stringio/stringio.c (strio_read): clear the buffer argument
45214           when returning nil.  [ruby-dev:22363]
45216         * test/ruby/ut_eof.rb (TestEOF::test_eof_0, TestEOF::test_eof_1):
45217           add buffer argument tests.
45219 Wed Dec 24 14:07:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45221         * lib/test/unit/assertions.rb: Modules are allowed to rescue.
45223         * lib/test/unit/autorunner.rb: show output_level in order.
45225         * lib/test/unit/collector/dir.rb: get rid of successive same
45226           directories in load path.
45228         * test/testunit/test_assertions.rb (test_assert_nothing_raised,
45229           test_assert_raise): test for modules.
45231 Wed Dec 24 13:43:34 2003  Shugo Maeda  <shugo@ruby-lang.org>
45233         * lib/net/imap.rb (authenticate): remove "\n" from base64 encoded
45234           strings.
45236 Wed Dec 24 11:26:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45238         * test/fileutils/test_fileutils.rb: should not create any
45239           files or directories in current directory.  [ruby-talk:88724]
45241 Wed Dec 24 10:29:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45243         * ext/stringio/stringio.c (strio_read): never return nil at
45244           unlimited read.  [ruby-dev:22334]
45246         * ext/stringio/stringio.c (strio_read): support second
45247           argument.  [ruby-dev:22350]
45249 Wed Dec 24 09:38:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45251         * parse.y (arg): should return 0 after error.  [ruby-dev:22360]
45253 Wed Dec 24 00:56:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45255         * io.c (read_all): do not return nil at the end of file.
45256           [ruby-dev:22334]
45258         * io.c (argf_read): do not depend on nil at eof behavior of
45259           IO#read().
45261         * eval.c (rb_thread_join): dup exception before re-raising it.
45263         * io.c (rb_io_eof): call clearerr() to prevent side effect.  this
45264           patch is supplied by Masahiro Sakai <sakai@tom.sfc.keio.ac.jp>.
45265           [ruby-dev:22234]
45267         * pack.c (OFF16): get offset for big endian machines.
45269         * pack.c (pack_pack): use OFF16 instead of OFF16B.
45270           [ruby-dev:22344]
45272         * pack.c (pack_unpack): ditto.
45274 Tue Dec 23 22:47:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45276         * io.c (rb_io_check_readable): set FMODE_RBUF always, even if
45277           NEED_IO_SEEK_BETWEEN_RW is not defined. [ruby-dev:22340]
45279         * io.c (rb_io_check_writable): clear FMODE_RBUF before writing
45280           something.
45282 Tue Dec 23 22:25:00 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
45284         * lib/optparse.rb: incomplete RDoc documentation added in place of
45285           existing RD comments.  Tabs converted to spaces.
45287 Tue Dec 23 19:44:47 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45289         * test/soap/test_streamhandler.rb (test_basic_auth): removed.
45290           soap4r + basic_auth is not officially supported in ruby/1.8.1 even
45291           though soap4r + basic_auth + http-access2 should run fine.
45293 Tue Dec 23 19:42:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45295         * io.c (rb_io_ungetc): raise an exception at unread stream to
45296           avoid unspecified behavior.  [ruby-dev:22330]
45298         * test/ruby/test_system.rb (test_syntax): glob relatively from
45299           __FILE__.
45301 Tue Dec 23 18:09:40 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45303         * pack.c (pack_pack): remove unnecessary negative value check.
45304           [ruby-dev:22329]
45306 Tue Dec 23 17:26:55 2003  KONISHI Hiromasa  <konishih@fd6.so-net.ne.jp>
45308         * bcc32/Makefile.sub (config.h): bcc has finite(). [ruby-list:38940]
45310 Tue Dec 23 16:08:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45312         * lib/rexml/encodings/US-ASCII.rb: typo.  [ruby-talk:88650]
45314         * test/ruby/test_system.rb: num of asserts depended on running dir.
45316         * test/xsd/test_noencoding.rb: rexml + without iconv/uconv cannot
45317           handle euc-jp.  install iconv, uconv or xmlscan.
45319 Tue Dec 23 14:13:51 2003  akira yamada  <akira@ruby-lang.org>
45321         * lib/uri/generic.rb (URI::Generic::check_userinfo,
45322           URI::Generic::check_user, URI::Generic::check_password): tests
45323           conflicts/depends with other components closely.
45325         * test/uri/test_generic.rb (TestGeneric::test_set_component):
45326           added tets.
45328 Tue Dec 23 11:08:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45330         * test/xsd/test_noencoding.rb: rescue Errno::EINVAL and do not test.
45331           "euc-jp" might not be in supported encoding name list.
45332           [ruby-talk:88650]
45334 Tue Dec 23 06:10:31 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45336         * lib/webrick/cgi.rb (CGI): add support for mod_ruby.
45338         * lib/webrick/cgi.rb (CGI::Socket): add check for existence of
45339           OpenSSL module in all HTTPS related methods.
45341         * lib/webrick/cgi.rb (CGI::Socket#cipher): should create similar
45342           value to OpenSSL::SSLSocket#cipher.
45344         * lib/webrick/httpresponse.rb (HTTPResponse#setup_header): should
45345           set "connection: close" if @keep_alive is false.
45347         * lib/webrick/https.rb (HTTPrequest#meta_vars): add supprt for
45348           SSL_PROTOCOL, SSL_CIPHER_USEKEYSIZE and SSL_CIPHER_ALGKEYSIZE.
45350 Mon Dec 22 23:00:05 2003  akira yamada  <akira@ruby-lang.org>
45352         * lib/uri/generic.rb (URI::Generic::check_opaque): fixed typo.
45354 Mon Dec 22 21:59:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45356         * ext/iconv/iconv.c (map_charset): always ensure code is a String.
45358 Mon Dec 22 21:15:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45360         * class.c (rb_mod_init_copy): always copy singleton class.
45361           [ruby-dev:22325]
45363 Mon Dec 22 20:44:36 2003  akira yamada  <akira@ruby-lang.org>
45365         * lib/uri/generic.rb (URI::Generic#route_from): accepts urls which
45366           has no host-part.
45368         * test/uri/test_generic.rb (TestGeneric::test_route): added a test.
45370 Mon Dec 22 20:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45372         * lib/cgi.rb: reduce eval.
45374         * lib/cgi.rb (CGI::QueryExtension::read_multipart): alias path to
45375           local_path.  [ruby-list:38883]
45377 Mon Dec 22 20:09:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45379         * test/soap/test_property.rb: remove duplicated test method.
45381 Mon Dec 22 18:22:04 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45383         * bcc32/Makefile.sub, win32/Makefile.sub (config.h): remove
45384           HAVE_ISINF definition to follow previous commits of missing.h
45385           and win32/win32.h.
45387 Mon Dec 22 17:23:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45389         * configure.in (ac_cv_func_setitimer): moved from defines.h
45391         * defines.h, rubysig.h, signal.c: removed macro handling which
45392           should be done in configure.
45394         * configure.in (intrinsics.h): check if present.
45396         * ruby.h: include intrinsics.h if available.
45398         * bignum.c, marshal.c: include ieeefp.h if available.
45400         * missing.h (isinf): define as a macro if finite() and isnan()
45401           are available.  [ruby-core:02032]
45403 Mon Dec 22 17:07:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45405         * configure.in (mingw): set isnan, finite and isinf to yes.
45407 Mon Dec 22 13:40:19 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45409         * lib/soap/property.rb: passing block by reference.
45411 Mon Dec 22 00:32:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45413         * eval.c (rb_with_disable_interrupt): use ENABLE_INTS instead of
45414           ALLOW_INTS which may switch context.  [ruby-dev:22319]
45416         * ext/syck/emitter.c (syck_emitter_write): str bigger than
45417           e->bufsize causes buffer overflow.  [ruby-dev:22307]
45419 Sun Dec 21 17:29:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45421         * class.c (rb_check_inheritable): new function.  [ruby-dev:22316]
45423         * intern.h: add prototype.
45425         * eval.c (superclass): use rb_check_inheritable().
45427         * object.c (rb_class_initialize): check argument validity.
45429 Sun Dec 21 16:25:10 2003  Tanaka Akira  <akr@m17n.org>
45431         * lib/pathname.rb (Pathname#+): re-implemented to resolve ".." in
45432           beginning of the argument.
45433           (Pathname#join): concatenate from the last argument.
45434           (Pathname#parent): just use Pathname#+.
45436 Sun Dec 21 00:12:37 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45438         * ext/tk/lib/tk.rb: add new methods (TkScrollbar#assign, assign_list)
45440         * ext/tk/sample/tkmultilistframe.rb: use TkScrollbar#assign method
45442 Sat Dec 20 21:59:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45444         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): refine regexp.
45446         * lib/webrick/cgi.rb (CGI#start): NPH scripts return status line
45447           instead of Status: header field.
45449         * lib/webrick/cgi.rb (CGI::Socket): refine some coditions.
45451 Sat Dec 20 16:07:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45453         * lib/optparse.rb (OptionParser::Completion::complete): wrong
45454           Regexp for word boundary.  pointed out by Gavin Sinclair.
45456         * lib/optparse.rb (OptionParser::make_switch): [no-] prefix was
45457           missing.
45459 Sat Dec 20 11:40:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45461         * lib/yaml.rb (YAML::YAML): adjust Marshal version.
45463 Sat Dec 20 03:56:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45465         * eval.c (rb_with_disable_interrupt): prohibit thread context
45466           switch during proc execution.  [ruby-dev:21899]
45468 Sat Dec 20 02:41:02 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45470         * lib/webrick/cgi.rb: add file. (yet another CGI library)
45472         * MANIFEST: add lib/webrick/cgi.rb.
45474 Sat Dec 20 02:18:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45476         * misc/ruby-mode.el (ruby-calculate-indent): proper indentation
45477           inside of parentheses.  [ruby-dev:22308]
45479 Fri Dec 19 21:24:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45481         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): should not set
45482           HTTP_CONTENT_TYPE and HTTP_CONTENT_LENGTH.
45484         * lib/webrick/https.rb (HTTPRequest#parse): should check presence
45485           of cert() method to detect SSLSocket.
45487 Fri Dec 19 22:56:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45489         * lib/soap/property.rb (SOAP::Property#load): new method for loading
45490           property value into existing property tree.
45492         * test/soap/test_property.rb: add test.
45494 Fri Dec 19 19:21:49 2003  akira yamada  <akira@ruby-lang.org>
45496         * lib/runit/cui/testrunner.rb (RUNIT::CUI::TestRunner::run):
45497           should use Test::Unit::UI::{PROGRESS_ONLY,VERBOSE}.
45499 Fri Dec 19 17:36:49 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45501         * ext/tk/sample/tkmultilistbox.rb: bug fix
45503         * ext/tk/sample/tkmultilistframe.rb: new sample script
45505 Fri Dec 19 03:44:27 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45507         * lib/webrick/httputils.rb (parse_form_data): should return an
45508           empty Hash if the body is empty.
45510 Thu Dec 18 21:47:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45512         * lib/mkmf.rb (create_makefile): should remove deffile if it's
45513           made by miniruby. based on nobu's patch.
45515 Thu Dec 18 21:44:21 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45517         * eval.c (stack_extend): ignore inline optimization on VC7.
45519         * win32/Makefile.sub (OS, RT): can override.
45521         * win32/Makefile.sub (LDFLAGS): ditto. shouldn't use pdb:none
45522           option. based on Tietew's patch [ruby-dev:22289]
45524 Thu Dec 18 16:38:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45526         * dir.c (fnmatch): unlike find_dirsep(), rb_path_next() never
45527           return NULL.
45529 Thu Dec 18 15:27:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45531         * lib/ipaddr.rb (IPSocket::getaddress): merge usa's patch.
45532           [ruby-dev:21678]
45534 Wed Dec 17 15:15:30 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45536         * lib/cgi.rb (CGI::QueryExtension::Value::[]): should work like
45537           String#[] if more than one arguments are specified.
45539         * lib/delegate.rb: avoid using common instance name as "@obj".
45541         * lib/cgi.rb (CGI::QueryExtension::Value): Value is no longer
45542           subclass of String, but DelegateClass(String).
45544         * ext/curses/extconf.rb: restore function check for init_color.
45545           [ruby-list:38905]
45547         * Makefile.in: need to specify $(MAINLIBS) for the miniruby
45548           generation rule.
45550         * configure.in: better FreeBSD -lc_r support.
45552 Wed Dec 17 00:16:14 2003  Minero Aoki  <aamine@loveruby.net>
45554         * ext/strscan/strscan.c: new method
45555           StringScanner#beginning_of_line? (alias #bol?)
45557         * ext/strscan/strscan.c: new method StringScanner#concat and #<<.
45559         * ext/strscan/strscan.c: StringScanner#new(str) does not duplicate
45560           nor freeze STR (allow destructive modification).
45562         * test/strscan/test_stringscanner.rb: test new methods above.
45564         * test/strscan/test_stringscanner.rb: test destructive string
45565           modification.
45567 Tue Dec 16 21:20:47 2003  Tanaka Akira  <akr@m17n.org>
45569         * lib/pp.rb: don't use local variable `pp'.
45571         * lib/prettyprint.rb: ditto.
45573 Tue Dec 16 13:20:43 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45575         * ext/tk/lib/tk.rb: condition bug of if statement on
45576           {pack,grid}_propagate methods
45578 Tue Dec 16 03:17:29 2003  why the lucky stiff  <why@ruby-lang.org>
45580         * lib/yaml/rubytypes.rb: comments in strings. [ruby-talk:88012]
45582         * test/yaml/test_yaml.rb: add test.
45584 Tue Dec 16 01:14:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45586         * eval.c (catch_timer): check rb_thread_crtical in main native
45587           thread.
45589         * eval.c (thread_timer): just sends signals periodically, to
45590           prevent main native thread from receiving them in critical
45591           section.  [ruby-core:01959]
45593 Mon Dec 15 13:32:22 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45595         * dir.c (check_dirname): check string safety and remove extraneous
45596           trailing directory separators.  [ruby-dev:22279]
45598         * file.c: renamed and externalized rb_path_next,
45599           rb_path_skip_prefix, rb_path_last_separator, rb_path_end.
45601         * intern.h: prototypes for rb_path_next, rb_path_skip_prefix,
45602           rb_path_last_separator, rb_path_end.
45604 Mon Dec 15 09:27:46 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
45606         * ext/openssl/ossl_pkcs12.c (ossl_pkcs12_initialize): first argument
45607           of rb_protect should take an argument of VALUE.
45609 Sun Dec 14 18:46:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45611         * ext/socket/socket.c (Init_socket): IPv6 is not supported although
45612           AF_INET6 is defined on MinGW.
45614         * lib/ipaddr.rb (AF_INET6): workaround in the environment which does
45615           not support IPv6.
45617 Sat Dec 13 18:55:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45619         * ext/iconv/charset_alias.rb: preserve original order.
45621         * ext/iconv/extconf.rb: remove wrapper file at clean.
45623 Sat Dec 13 18:09:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45625         * eval.c (thread_timer): use timer by sub-thread and nanosleep.
45626           [ruby-talk:87519]
45628         * gc.c (Init_stack): no stack adjustment for THREAD_SAFE.
45630 Sat Dec 13 17:17:59 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45632         * eval.c (proc_alloc): cache the created object at first time.
45633           [ruby-talk:61288], [ruby-dev:22240]
45635 Sat Dec 13 09:01:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45637         * configure.in: check ucontext.h.
45639         * eval.c: use getcontext/setcontext() instead of setjmp/longjmp()
45640           on ia64 or with native thread enabled.  [ruby-core:01932]
45642 Sat Dec 13 03:09:14 2003  why the lucky stiff  <why@ruby-lang.org>
45644         * lib/yaml/rubytypes.rb: anonymous struct fix. [ruby-core:01946]
45646         * test/yaml/test_yaml.rb: add test.
45648 Fri Dec 12 22:36:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45650         * lib/csv.rb: add Cell#to_str and Cell#to_s for /.../ =~ aCell,
45651           "#{aCell}" and so on.
45653         * test/csv/test_csv.rb: add tests.
45655 Fri Dec 12 19:33:06 2003  Minero Aoki  <aamine@loveruby.net>
45657         * lib/fileutils.rb (mkdir): remove trailing `/' from pathes.
45659         * lib/fileutils.rb (rmdir): ditto. [ruby-dev:22238]
45661         * lib/fileutils.rb (rmdir_r): ditto.
45663         * lib/fileutils.rb (fu_copy_dir): check if it is a directory after
45664           mkdir(2).
45666 Fri Dec 12 06:06:09 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45668         * eval.c (proc_invoke): fix class name in warning message for
45669           define_method.  [ruby-dev:22235]
45671 Thu Dec 11 21:24:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45673         * ext/openssl/ossl_pkcs12.[ch]: new files. add OpenSSL::PKCS12.
45675         * ext/openssl/ossl.[ch]: ditto.
45677         * ext/openssl/MANIFEST: add ossl_pkcs12.[ch].
45679 Thu Dec 11 20:54:28 2003  Minero Aoki  <aamine@loveruby.net>
45681         * lib/fileutils.rb (mkdir_p): remove trailing `/' befere mkdir(2).
45682           mkdir("nonexistdir/") does not work on NetBSD/Alpha 1.6.1.
45684         * lib/fileutils.rb (fu_list): call to_str for all arguments.
45686 Thu Dec 11 20:07:01 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45688         * lib/ftools.rb (makedirs): sync with fileutils.
45690 Thu Dec 11 19:53:03 2003  Minero Aoki  <aamine@loveruby.net>
45692         * lib/fileutils.rb (mkdir_p): catch all SystemCallErrors.
45693           (mkdir("C:\") causes EACCESS on Windows 2000/NTFS)
45695 Thu Dec 11 19:08:02 2003  Minero Aoki  <aamine@loveruby.net>
45697         * lib/fileutils.rb (mkdir_p): check if it is a directory after
45698           mkdir(2) instead of before mkdir(2), to avoid race condition.
45699           [ruby-talk:87730]
45700           Refer: mkinstalldirs sh script, GNU mkdir(1) (coreutils 5.0)
45702 Thu Dec 11 18:49:30 2003  Minero Aoki  <aamine@loveruby.net>
45704         * lib/fileutils.rb: def m( arg ) -> def m(arg).
45706 Thu Dec 11 11:39:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45708         * configure.in (ieeefp.h), numeric.c: needed for finite() on
45709           Solaris.  [ruby-core:01921]
45711         * file.c (rb_stat_inspect): adjust format specifier.
45713         * parse.c (arg_prepend): nodetype() is for debug use.
45715         * ruby.h (ISASCII, etc): cast to int to get rid of warning.
45717         * ruby.h (alloca.h): include even in GCC.  [ruby-core:01925]
45719         * ext/bigdecimal/bigdecimal.c (GetVpValue): adjust format
45720           specifier.
45722         * ext/bigdecimal/bigdecimal.c (BigDecimal_prec, BigDecimal_coerce,
45723           BigDecimal_divmod): use rb_assoc_new() to suppress memory usage.
45725         * ext/bigdecimal/bigdecimal.c (BigDecimal_split): ditto.
45727         * ext/dl/sym.c (rb_dlsym_guardcall): guard itself should be
45728           volatile.
45730         * ext/iconv/iconv.c (iconv_convert): ensure actual parameter with
45731           format specifier.
45733         * ext/pty/pty.c (MasterDevice, SlaveDevice, deviceNo): do not
45734           define unless used.
45736         * ext/pty/pty.c (getDevice): get rid of warning.
45738         * ext/socket/socket.c (port_str, sock_s_getaddrinfo,
45739           sock_s_getnameinfo): FIX2INT() now returns long.
45741         * ext/socket/socket.c (init_inetsock_internal): uninitialized
45742           variable.
45744         * ext/syck/rubyext.c (syck_parser_assign_io): add prototype.
45746         * ext/syck/rubyext.c (rb_syck_mktime, yaml_org_handler): use
45747           ISDIGIT() instead of isdigit() to avoid warnings and for
45748           platforms which don't support non-ascii charater.
45750 Wed Dec 10 19:28:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45752         * ext/stringio/stringio.c (strio_read): set EOF flag at short read.
45753           [ruby-dev:22223], [ruby-dev:22224]
45755 Wed Dec 10 18:07:25 2003  Minero Aoki  <aamine@loveruby.net>
45757         * lib/erb.rb: new method ERB#filename(=). [ruby-dev:22208]
45759 Wed Dec 10 17:54:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45761         * ext/stringio/stringio.c (strio_read): do not set EOF flag when
45762           requested length is zero.  [ruby-dev:22214]
45764 Wed Dec 10 17:17:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45766         * io.c (read_all): should return given string even if data read is
45767           empty.  [ruby-dev:22207]
45769 Wed Dec 10 17:16:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45771         * ext/stringio/stringio.c (strio_read): adjust behavior at reading
45772           beyond EOF to IO.  [ruby-dev:22205]
45774         * test/ruby/ut_eof.rb (TestEOF::Seek): test behaviors at reading
45775           beyond EOF.
45777         * test/ruby/test_file.rb, test/stringio/test_stringio.rb: include
45778           TestEOF::Seek test case.
45780 Wed Dec 10 15:01:19 2003  Shugo Maeda  <shugo@ruby-lang.org>
45782         * test/monitor/test_monitor.rb (test_cond): use Queue#deq
45783           instead of sleep.
45785 Wed Dec 10 14:45:39 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45787         * ext/pty/pty.c (HAVE_SYS_IOCTL_H): need to include <sys/ioctl.h>
45788           for TIOCSCTTY on *BSD.  based on gotoyuzo's patch.
45789           (ruby-bugs:PR#1211)
45791         * ext/pty/pty.c (establishShell): should close descriptors if fork
45792           failed.
45794 Wed Dec 10 12:53:05 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45796         * win32/win32.h: define execv() using do_aspawn().
45798         * process.c (proc_exec_v): remove #ifdef's which stopped needing.
45800 Tue Dec  9 23:32:23 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45802         * ext/tk/lib/tk.rb, ext/tk/lib/tkcanvas.rb, ext/tk/lib/tkdialog.rb,
45803           ext/tk/lib/tkentry.rb, ext/tk/lib/tkscrollbox.rb, ext/tk/lib/tktext.rb,
45804           ext/tk/sample/tkalignbox.rb, ext/tk/sample/tkcombobox.rb,
45805           ext/tk/sample/tkmultilistbox.rb, ext/tk/sample/tkoptdb.rb, ext/tk/sample/tktextframe.rb,
45806           ext/tk/sample/demos-en/dialog1.rb, ext/tk/sample/demos-en/dialog2.rb,
45807           ext/tk/sample/demos-jp/dialog1.rb, ext/tk/sample/demos-jp/dialog2.rb:
45808           overrided instance methods, which are private methods on the super
45809           class, are changed to 'private'
45811 Tue Dec  9 19:53:02 2003  akira yamada  <akira@ruby-lang.org>
45813         * lib/uri/generic.rb (URI::Generic#route_from0): make case insensitive
45814           for host-part.
45816         * test/uri/test_generic.rb (test_route): added tests for the above
45817           change.
45819 Tue Dec  9 14:10:48 2003  Tanaka Akira  <akr@m17n.org>
45821         * io.c (rb_io_check_readable): don't call io_seek if EOF flag is set,
45822           to avoid clearing EOF flag.
45823           (rb_io_check_writable): ditto.
45825 Tue Dec  9 02:53:55 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
45827         * ext/tk/sample/tkalignbox.rb: new sample script
45829 Tue Dec  9 00:45:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
45831         * lib/test/unit/assertions.rb: renamed #assert_raises to #assert_raise
45832           and made the former call the latter. [ruby-core:01890]
45834         * test/testunit/test_assertions.rb: ditto.
45836 Tue Dec  9 00:07:35 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45838         * lib/soap/rpc/standaloneServer.rb: add 'shutdown' and 'status'
45839           methods as delegates to WEBrick.
45841         * test/soap/calc/{test_calc.rb,test_calc2.rb},
45842           test/soap/helloworld/test_helloworld.rb,
45843           test/wsdl/datetime/test_datetime.rb, test/wsdl/raa/test_raa.rb:
45844           follow the change.
45846 Mon Dec  8 22:48:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45848         * lib/test/unit/autorunner.rb: remove dependency to a particular
45849           runner.  [ruby-core:01901], [ruby-list:38869]
45851         * lib/test/unit/ui/testrunnerutilities.rb: moved output level
45852           constants from Console.
45854         * lib/test/unit/ui/console/testrunner.rb: ditto.
45856         * lib/test/unit/ui/{fox,gtk,gtk2,tk}/testrunner.rb (initialize):
45857           accept output_level.
45859 Mon Dec  8 15:03:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45861         * ext/syck/syck.c (syck_io_str_read): get rid of buffer overflow.
45863 Mon Dec  8 13:02:11 2003  Minero Aoki  <aamine@loveruby.net>
45865         * lib/uri/common.rb: new method URI.regexp. [ruby-dev:22121]
45867         * test/uri/test_common.rb: add test for URI.regexp.
45869 Mon Dec  8 12:44:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45871         * pack.c: define swap16 and swap32 only if they are not
45872           defined. OpenBSD defines these macros. [ruby-dev:22181]
45874 Sun Dec  7 20:54:17 2003  Tanaka Akira  <akr@m17n.org>
45876         * ext/iconv/iconv.c (map_charset): make case sensitive.
45877           ext/iconv/charset_alias.rb (charset_alias): don't ignore
45878           config.charset's information.  sort aliases.
45880 Sat Dec  6 22:58:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
45882         * ext/openssl/ossl_ssl.c (ossl_start_ssl): new function to wrap
45883           SSL_connect and SSL_accept; if SSL_connect (or SSL_accept) returned
45884           but not finished the handshake process, we should retry it.
45886         * ext/openssl/ossl_ssl.c (ossl_ssl_connect): call ossl_start_ssl.
45888         * ext/openssl/ossl_ssl.c (ossl_ssl_accept): ditto.
45890         * ext/openssl/ossl_ssl.c (ossl_ssl_read): allow signal traps.
45892 Sat Dec  6 21:45:10 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
45894         * io.c (flush_before_seek): flush before seek on any platform.
45896         * configure.in: ditto.
45898 Sat Dec  6 17:23:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45900         * lib/soap/soap.rb(SOAP::Env.getenv): allow upcase environment variable
45901           as well as downcase one.
45903         * lib/soap/netHttpClient.rb(SOAP::NetHttpClient#proxy=): check URI.
45905 Fri Dec  5 23:22:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45907         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises,
45908           Test::Unit::Assertions::assert_nothing_raised): use the last
45909           argument as message unless class object.
45911         * test/testunit/test_assertions.rb (test_assert_raises): test for
45912           multiple exception list.  [ruby-core:01891]
45914         * test/testunit/test_assertions.rb (test_assert_nothing_raised): test
45915           for non-exception classes.
45917 Fri Dec  5 22:23:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
45919         * lib/soap/netHttpClient.rb: proxy support did not work.  fixed.
45921         * lib/soap/property.rb: add class methods for loading property from
45922           stream/file/propertyfile.  propertyfile is a file which is located at
45923           somedir in $:.
45925         * lib/soap/soap.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb,
45926           lib/wsdl/importer.rb: load property from propertyfile 'soap/property'
45927           e.g. /usr/local/lib/ruby/site_ruby/1.8/soap/property.
45929         * test/soap/test_property.rb, test/soap/test_streamhandler.rb: new file.
45931 Fri Dec  5 17:26:23 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45933         * eval.c (rb_exec_end_proc): maintain tmp_end_procs.
45934           [ruby-dev:22154]
45936 Fri Dec  5 13:36:59 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45938         * eval.c (rb_exec_end_proc): should not clear end_procs and
45939           ephemeral_end_procs before execution. [ruby-dev:22144]
45941         * eval.c (rb_obj_extend): call Module#extended hook after
45942           extended_object.  [ruby-list:38866]
45944         * object.c (Init_Object): Module#extended defined.
45946 Fri Dec  5 13:17:30 2003  Tanaka Akira  <akr@m17n.org>
45948         * test/ruby/test_pipe.rb: use IO.pipe instead of IO.popen.
45950 Fri Dec  5 11:54:45 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45952         * ext/stringio/stringio.c (strio_read): follow IO#read.
45954         * test/ruby/ut_eof.rb, test/ruby/test_file.rb, test/ruby/test_pipe.rb,
45955           test/stringio/test_stringio.rb: add EOF test.
45957 Fri Dec  5 02:49:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45959         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
45960           allow multiple exception list.  [ruby-core:01884]
45962         * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised):
45963           check whether arguments are subclass of Exception.
45965 Thu Dec  4 23:54:00 2003  Rick Ohnemus  <rick.ohnemus@systemware.com>
45967         * dln.c (aix_loaderror): should not use member named 'errno' which
45968           might be a macro (e.g. on AIX).
45970 Thu Dec  4 23:32:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
45972         * io.c (read_all): do not depend on lseek position.
45973           [ruby-dev:22026]
45975 Thu Dec  4 22:37:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45977         * eval.c (rb_eval): preserve $! value when retry happens in the
45978           rescue clause.  [ruby-talk:86697]
45980 Thu Dec  4 21:50:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45982         * lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
45983           should rescue errors and re-raise DRbConnError on write too.
45984           [ruby-dev:22132]
45986 Thu Dec  4 16:41:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
45988         * parse.y (exc_list): allow expanding list.  [ruby-dev:22134]
45990 Thu Dec  4 14:09:24 2003  Minero Aoki  <aamine@loveruby.net>
45992         * test/fileutils/test_fileutils.rb (test_cp): test if the error is
45993           kind of SystemCallError.  It is needless details that which errno
45994           is set on each systems.
45996 Thu Dec  4 13:24:13 2003  Shugo Maeda  <shugo@ruby-lang.org>
45998         * lib/monitor.rb: use Object#__send__ instead of Object#send.
46000 Thu Dec  4 13:17:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46002         * lib/soap/streamHandler.rb: support latest released version of
46003           http-access2.
46005 Thu Dec  4 13:04:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46007         * lib/soap/soap.rb: add SOAP::Env module for environment repository
46008           such as HTTP_PROXY.
46010         * lib/soap/property.rb: property implementation.
46012         * lib/soap/streamHandler.rb, lib/soap/wsdlDriver.rb,
46013           lib/soap/rpc/driver.rb: use soap/property.rb.
46015         * lib/wsdl/importer.rb, lib/soap/wsdlDriver.rb, lib/soap/rpc/driver.rb:
46016           use SOAP::Env.
46018         * lib/soap/netHttpClient.rb: add basic_auth, ssl_config, and cookie
46019           management interface, but ignored for now.
46021         * lib/xsd/charset.rb: add XSD::Charset.encoding= interface to set
46022           wiredump charset explicitly.  it was fixed to 'utf-8' when iconv or
46023           uconv module was found.
46025 Thu Dec  4 10:43:58 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46027         * ext/dl/sym.c (rb_dlsym_guardcall): __declspec(noinline) is VC7
46028           feature.
46030 Thu Dec  4 10:27:12 2003  Minero Aoki  <aamine@loveruby.net>
46032         * lib/net/http.rb: update hyperlink to the Japanese document.
46034 Thu Dec  4 09:12:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46036         * ext/openssl/ossl_asn1.c (asn1time_to_time): should check that
46037           the underlying value of ASN1_TIME isn't NULL. [ruby-core:01881]
46039 Thu Dec  4 08:29:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46041         * lib/webrick/server.rb (GenericServer#start): should rescue
46042           Exception to avoid unexpected aborting. [ruby-core:01853]
46044         * lib/webrick/server.rb (GenericServer#start_thread): should check
46045           that peeraddr isn't nil before printing.
46047         * lib/webrick/httpresponse.rb (HTTPResponse#start_thread): should
46048           rescue Exception to avoid unexpected aborting of thread.
46050 Thu Dec  4 03:48:59 2003  Tanaka Akira  <akr@m17n.org>
46052         * lib/pathname.rb (Pathname#link, Pathname#symlink): obsoleted.
46053           (Pathname#make_link, Pathname#make_symlink): new method.
46055 Thu Dec  4 01:45:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46057         * io.c (argf_read): should not terminate on empty string; wait
46058           until real EOF.  [ruby-dev:21969]
46060         * io.c (argf_read): should adjust length to read, when length is
46061           specified and read spans command line argument files.
46063 Wed Dec  3 19:38:36 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46065         * lib/drb/drb.rb: correct fcntl parameter. [ruby-dev:22120]
46067 Wed Dec  3 13:49:07 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46069         * ext/tk/lib/tk.rb: 'format'==>'Kernel.format' (avoid override trouble)
46071         * ext/tk/lib/tkafter.rb: ditto.
46073         * ext/tk/lib/tkcanvas.rb: ditto.
46075         * ext/tk/lib/tkdialog.rb: ditto.
46077         * ext/tk/lib/tktext.rb: ditto.
46079 Wed Dec  3 13:28:13 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46081         * Makefile.in (lex.c): try gperf first, and copy from the source
46082           directory if failed.  [ruby-dev:22123]
46084         * ext/extmk.rb (MTIMES): let makefiles depend to mkmf.rb.
46086         * lib/mkmf.rb (configuration): DLDFLAGS was duplicated.
46088 Tue Dec  2 23:18:12 2003  Minero Aoki  <aamine@loveruby.net>
46090         * lib/net/http.rb: wrote the warning about HTTP_PROXY environment
46091           variable.
46093 Tue Dec  2 21:31:42 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46095         * bin/testrb: new test runner.  [ruby-core:01845]
46097         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner.run,
46098           Test::Unit::AutoRunner#process_args): take test list to run and
46099           options.
46101         * lib/test/unit/autorunner.rb (Test::Unit::AutoRunner::RUNNERS,
46102           Test::Unit::AutoRunner#run): should not exit inside a library,
46103           just return the result instead.
46105         * lib/test/unit.rb: ditto.
46107         * test/runner.rb: exit with the test result.
46109 Tue Dec  2 20:18:48 2003  Eric Sunshine  <sunshine@sunshineco.com>
46111         * configure.in (AC_PROG_YACC): AC_DEFINE(OLD_YACC) if Yacc is found
46112           instead of Bison or byacc.
46114         * parse.y: If OLD_YACC is defined, ensure that YYMAXDEPTH is at least
46115           10000 (Bison's default) since some old versions of Yacc define it as
46116           low as 150 by default, which is too low for Ruby to parse some files,
46117           such as date/format.rb.  Among other issues, the parse problem causes
46118           "make test" to fail.
46120 Tue Dec  2 20:03:20 2003  Minero Aoki  <aamine@loveruby.net>
46122         * test/fileutils/test_fileutils.rb: check if Pathnames are usable
46123           for arguments.
46125 Tue Dec  2 04:22:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46127         * lib/test/unit/assertions.rb: fixed #assert_no_match message.
46129         * test/testunit/test_assertions.rb: ditto.
46131 Tue Dec  2 00:43:00 2003  why the lucky stiff  <why@ruby-lang.org>
46133         * ext/syck/syck.c: string buffering bug.  decrementing by full
46134           max_size now. [ruby-core:01834]
46136 Mon Dec  1 21:33:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46138         * numeric.c (num_sadded): prohibit singleton method definition for
46139           Numerics.  fill yet another gap between Fixnum and Bignum.
46141 Mon Dec  1 17:33:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46143         * pack.c (htov16): converts endian using swap16. htov32(), hton16,
46144           hton32 as well. [ruby-talk:85377]
46146         * pack.c (swap16): swap 2 bytes no matter how big short is on the
46147           platform.  swap32() is also prepared.
46149         * numeric.c (rb_num2int): returns long to preserve information.
46150           rb_fix2int(), rb_num2uint(), rb_fix2uint() as well.
46151           [ruby-talk:85377]
46153         * numeric.c (rb_num2uint): should not check for value range if the
46154           source value is negative.
46156 Mon Dec  1 17:14:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46158         * sample/optparse/opttest.rb: added.
46160 Mon Dec  1 16:10:52 2003  Dave Thomas  <dave@pragprog.com>
46162         * lib/rdoc/rdoc.rb: (etc) initial merge into main tree.
46164 Mon Dec  1 14:17:49 2003  Minero Aoki  <aamine@loveruby.net>
46166         * lib/fileutils.rb (fu_each_src_dest0): call #to_str to allow
46167           Pathname for arguments. [ruby-core:01795]
46169         * test/fileutils/test_fileutils.rb: does much strict test on
46170           "same" files detecting.
46172 Mon Dec  1 09:28:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46174         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46175           (XCFLAGS): re-export $(XCFLAGS).
46177         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46178           (ARCH_FLAG): export $(ARCH_FLAG) (perhaps empty value).
46180 Mon Dec  1 01:03:27 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46182         * lib/mkmf.rb (TRY_LINK, link_command): added support for DLDFLAGS
46183           and ARCH_FLAG.  [ruby-dev:22085]
46185 Sun Nov 30 20:18:07 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46187         * configure.in: keep ARCH_FLAG separate. export ARCH_FLAG.
46188           [ruby-core:01819]
46190         * Makefile.in: add ARCH_FLAG to CFLAGS.
46192         * Makefile.in: add @CPPFLAGS@ to CPPFLAGS.
46194         * lib/mkmf.rb (link_command, cc_command): use ARCH_FLAG.
46196         * lib/mkmf.rb (configuration): add ARCH_FLAG to DLDFLAGS.
46198         * Makefile.in: add ARCH_FLAG to DLDFLAGS.
46200         * configure.in: should put getcwd in AC_CHECK_FUNCS, not
46201           AC_REPLACE_FUNCS.  [ruby-core:01826]
46203 Sun Nov 30 18:22:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46205         * configure.in: do not override CCDLDFLAGS, LDFLAGS, XLDFLAGS,
46206           DLDFLAGS and LDSHARED.
46208         * configure.in: XCFLAGS for compiling ruby itself.  ARCH_FLAG is
46209           reflected in CFLAGS.
46211         * lib/mkmf.rb: ditto.  do not import XCFLAGS from config.status.
46213 Sun Nov 30 17:37:36 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46215         * ext/tk/lib/tk.rb: bug fix [ruby-talk:86746]
46217 Sun Nov 30 13:02:00 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46219         * lib/soap/encodingstyle/soapHandler.rb: refactoring - Simplifying
46220           Conditional Expressions.
46222         * lib/wsdl/soap/definitions.rb: refactoring - Move Method.
46224         * test/xsd/{test_noencoding.rb,noencoding.xml}: new files.  test for
46225           encoding unspecified XML file parsing.
46227         * test/wsdl/{test_fault.rb,map,datetime}: new files.  test of
46228           SOAPFault, dateTime and Apache's Map.
46230 Sun Nov 30 09:35:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46232         * string.c (rb_str_update): get rid of SEGV at just allocated String.
46233           [ruby-core:01812]
46235 Fri Nov 28 23:19:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46237         * gc.c (gc_mark): explicitly check mark recursion levels, instead
46238           of unreliable stack length.
46240 Fri Nov 28 22:49:56 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46242         * lib/rinda/rinda.rb: fix TupleSpaceProxy#read, read_all.
46244 Fri Nov 28 21:44:40 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46246         * test/fileutils/test_fileutils.rb (test_ln_s): should be a file, not
46247           a directory for FreeBSD.
46249 Fri Nov 28 19:37:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46251         * hash.c (env_has_value, env_index): must match exactly.
46253         * test/ruby/test_env.rb (test_has_value, test_index): condition for
46254           aboves.
46256 Fri Nov 28 17:59:20 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46258         * test/ruby/test_env.rb: add tests for ENV.
46260 Fri Nov 28 17:47:46 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
46262         * lib/drb/drb.rb (DRbMessage#load): rescue Errno::* and raise
46263           DRbConnError.
46265 Fri Nov 28 15:41:15 2003  Tanaka Akira  <akr@m17n.org>
46267         * lib/pathname.rb (Pathname#realpath): obsolete the force_absolute
46268           argument.
46270 Fri Nov 28 14:41:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46272         * lib/soap/streamHandler.rb: drop unused http parameters.
46274         * lib/soap/encodingstyle/soapHandler.rb, lib/soap/mapping/factory.rb,
46275           lib/soap/mapping/mapping.rb, lib/soap/mapping/registry.rb,
46276           lib/wsdl/soap/complexType.rb: ApacheSOAP's map support was broken
46277           under WSDL dynanic client environment.  fixed.
46279         * test/wsdl/raa/*: add tests.
46281         * lib/xsd/datatypes.rb: dateTime precision bug fix (at least, I hope.)
46282           bug of soap4r.  XSDDateTimeImple.to_time passed a Float to
46283           Time.local/Time.gm as an usec, and NUM2LONG(rb_num2long for Float)
46284           causes rounding error.
46286         * test/soap/test_basetype.rb, test/xsd/test_xsd.rb: add tests.
46288 Fri Nov 28 04:15:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46290         * eval.c (method_arity): used wrong Proc object.  [ruby-talk:86504]
46292 Fri Nov 28 00:47:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46294         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): treat true as
46295           success, false as failure.  [ruby-dev:22067]
46297         * eval.c (rb_f_abort, rb_thread_switch), process.c (rb_f_system): use
46298           ANSI macro instead of hard coded value.
46300         * eval.c (rb_f_exit), process.c (rb_f_exit_bang): use VALUEs not but
46301           TYPEs.
46303 Thu Nov 27 22:05:48 2003  Akinori MUSHA  <knu@iDaemons.org>
46305         * eval.c, gc.c: FreeBSD/ia64 currently does not have a way for a
46306           process to get the base address for the RSE backing store, so
46307           hardcode it for the moment.
46308           [submitted by: Marcel Moolenaar <marcel@FreeBSD.org>]
46310 Thu Nov 27 17:36:42 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46312         * ext/tk/lib/tkafter.rb: bug fix on TkTimer#cancel_on_exception=(mode).
46313           TkTimer#wait recieves the exception of the callback.
46314           The exception is kept on @return_value.
46316 Thu Nov 27 16:58:48 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46318         * win32/win32.c (rb_w32_stat): remove _fullpath() for NUL: device.
46320 Wed Nov 26 15:38:47 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46322         * test/fileutils/test_fileutils.rb (test_ln_s): should take the
46323           existing symbolic link for OpenBSD.
46325 Wed Nov 26 04:48:42 2003  why the lucky stiff  <why@ruby-lang.org>
46327         * ext/syck/token.c: removed YYTOKTMP references which
46328           were causing buffer overflows on large block scalars,
46329           comments, quoted scalars and plain scalars.
46331         * ext/syck/rubyext.c: dynamic changing of buffer size.
46333         * ext/syck/syck.h: default buffer size of 4k.
46335 Wed Nov 26 00:55:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46337         * lib/webrick/httpresponse.rb: add HTTPResponse#keep_alive=.
46339         * lib/webrick/httpserver.rb (HTTPServer#run): should pass the
46340           request's keep_alive flag to the response.
46342 Tue Nov 25 21:41:35 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46344         * defines.h (ENV_IGNORECASE): should define when DOSISH without
46345           human68k. [ruby-dev:22047]
46347         * hash.c (env_has_value, env_index): don't ignore case of value.
46348           [ruby-dev:22048]
46350 Tue Nov 25 21:39:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46352         * file.c (path_check_1): honor sticky bits always.
46353           [ruby-talk:86273]
46355 Tue Nov 25 20:02:14 2003  Minero Aoki  <aamine@loveruby.net>
46357         * test/fileutils/test_fileutils.rb: do test in more deep
46358           directory.
46360         * test/fileutils/test_nowrite.rb: ditto.
46362 Tue Nov 25 19:04:23 2003  Tanaka Akira  <akr@m17n.org>
46364         * lib/open-uri.rb (URI::Generic#find_proxy): ENV case sensitivity test
46365           refined.
46367 Tue Nov 25 18:13:30 2003  Minero Aoki  <aamine@loveruby.net>
46369         * test/fileutils/test_fileutils.rb: chdir Dir.tmpdir before each
46370           test. [ruby-dev:22045]
46372         * test/fileutils/test_nowrite.rb: ditto.
46374 Tue Nov 25 17:52:11 2003  Tanaka Akira  <akr@m17n.org>
46376         * lib/open-uri.rb (URI::Generic#find_proxy): use http_proxy under CGI
46377           if the environment variable is case sensitive.
46379 Tue Nov 25 16:41:33 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46381         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb:
46382           removed.  this test requires extra libraries in soap4r/1.5.*.
46384 Tue Nov 25 16:24:42 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46386         * lib/soap/**/*.rb, lib/wsdl/**/*.rb, lib/xsd/**/*.rb: changed license;
46387           GPL2 -> Ruby's.
46389         * lib/soap/rpc/driver.rb, lib/soap/wsdlDriver.rb,
46390           lib/soap/streamHandler.rb: add interface to streamhandler.
46392         * lib/soap/marshal.rb: raise error if parse fails.
46394         * lib/soap/netHttpClient.rb: add https support.  Patched by
46395           Oliver M. Bolzer.
46397         * lib/soap/netHttpClient.rb: dump HTTP response message body by itself.
46399         * lib/soap/rpc/driver.rb, lib/soap/rpc/proxy.rb,
46400           lib/soap/wsdlDriver.rb: add driver#mandatorycharset interface to foce
46401           using charset for parsing response from buggy server.
46403         * lib/soap/encodingstyle/soapHandler.rb: support Apache Axis's half
46404           typed multi-ref array.
46406         * lib/soap/mapping/factory.rb, lib/soap/mapping/registry.rb: map
46407           SOAPStruct which has multi-accessors which name are the same, to an
46408           array.
46410         * lib/soap/rpc/element.rb: fixed illegal parameter order.
46412         * lib/soap/rpc/element.rb: element name of response message could have
46413           the name other than 'return'.
46415         * lib/wsdl/operation.rb, lib/wsdl/operationBinding.rb,
46416           lib/wsdl/soap/classDefCreator.rb, lib/wsdl/soap/methodDefCreator.rb,
46417           lib/wsdl/soap/methodDefCreatorSupport.rb: WSDL/1.1 allows plural
46418           fault definition in a operation. [ruby-talk:84948]
46420         * test/wsdl/multiplefault.wsdl, test/wsdl/test_multiplefault.rb: add
46421           test for above fix.
46423         * lib/wsdl/soap/complexType.rb: support WSDL array definition with
46424           maxOccures="unbound".
46426         * lib/xsd/charset.rb: use cp932 under emx.  Patched by
46427           Siena. / SHINAGAWA, Norihide in [ruby-dev:21972]
46429         * lib/xsd/xmlparser/parser.rb: set @charset nil by default.  Nil means
46430           'follow encoding declaration in XML'.
46432         * sample/soap/digraph.rb, sample/wsdl/amazon/wsdlDriver.rb,
46433           sample/wsdl/googleSearch/sampleClient.rb,
46434           sample/wsdl/googleSearch/wsdlDriver.rb,
46435           test/wsdl/test_emptycomplextype.rb,
46436           test/wsdl/marshal/test_wsdlmarshal.rb,
46437           test/xsd/test_xmlschemaparser.rb: use File.open(...) { |f| f.read }
46438           instead of File.open(...).read. [ruby-dev:21964]
46440         * test/wsdl/emptycomplextype.wsdl, test/wsdl/test_emptycomplextype.rb:
46441           simplify the test case.
46443         * test/wsdl/axisArray/*: add tests for axis's array encoding.
46445 Tue Nov 25 16:15:29 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46447         * ruby.h: don't treat Cygwin as Windows.
46449 Tue Nov 25 15:18:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46451         * configure.in: change default value of --enable-pthread (default: no)
46453 Tue Nov 25 07:31:16 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46455         * parse.y (primary): allow newlines just before right argument
46456           parenthesis.  (ruby-bugs:PR#1221)
46458 Mon Nov 24 23:32:06 2003  Tanaka Akira  <akr@m17n.org>
46460         * lib/open-uri.rb (OpenURI.open_loop, URI::HTTP#proxy_open): use
46461           catch/throw for redirection instead of exception.
46462           (OpenURI.open_loop, OpenURI.redirectable?): restrict redirection.
46464 Mon Nov 24 19:59:48 2003  Tanaka Akira  <akr@m17n.org>
46466         * lib/open-uri.rb (URI::Generic#find_proxy): use CGI_HTTP_PROXY
46467           instead of HTTP_PROXY in the CGI environment.
46469 Mon Nov 24 19:32:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46471         * ext/etc/extconf.rb: check for pw_passwd in struct passwd and
46472           gr_passwd in struct group for DJGPP.
46474         * ext/etc/etc.c: ditto.
46476         * ext/Setup.dj: support for curses, etc, zlib.
46478 Mon Nov 24 17:00:00 2003  Tanaka Akira  <akr@m17n.org>
46480         * lib/open-uri.rb: validate option names.
46481           :content_length_proc and :progress_proc option implemented.
46483 Mon Nov 24 14:53:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46485         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46486           (XCFLAGS): output empty value instead of `-DRUBY_EXPORT'.
46488 Sat Nov 22 23:09:45 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46490         * configure.in: set enable_pthread to no on MinGW.
46492 Sat Nov 22 22:56:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46494         * configure.in: add --enable-pthread option (default: yes)
46496 Sat Nov 22 22:48:46 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46498         * ext/tk/lib/tk.rb: add Tk.grab_release and fix bug of TkComposite
46500         * ext/tk/lib/tkafter.rb: bug fix of TkAfter#start
46502         * ext/tk/sample/tkcombobox.rb: new sample script
46504         * ext/tcltklib/tcltklib.c: add native thread check
46506 Sat Nov 22 18:49:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46508         * ext/curses/curses.c (window_nodelay): nodelay() of NetBSD's
46509           libcruses returns no value, just like keypad().
46511 Sat Nov 22 17:36:36 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46513         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46514           (HAVE_GETCWD): output to config.h.
46516         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub
46517           (XCFLAGS): output to config.status.
46519 Sat Nov 22 13:10:10 2003  Minero Aoki  <aamine@loveruby.net>
46521         * lib/fileutils.rb (have_st_ino?): djgpp has valid st_ino.
46523 Sat Nov 22 11:28:48 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46525         * gc.c (Init_stack): stack region is far smaller than usual if
46526           pthread is used.
46528 Sat Nov 22 07:30:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46530         * lib/test/unit/util/backtracefilter.rb: fixed a bug that occurred
46531           when an exception had no backtrace.
46533         * test/testunit/util/test_backtracefilter.rb: ditto.
46535 Fri Nov 21 16:44:18 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46537         * ext/tk/lib/tkentry.rb: fix the encoding trouble of percent
46538           substitutions on validatecommand option of TkEntry widget
46540         * ext/tk/lib/tk.rb: fix bug on {pack|grid}_propagate() method
46542 Fri Nov 21 16:12:11 2003  Akinori MUSHA  <knu@iDaemons.org>
46544         * ruby.1: Fix markups and grammar.
46546 Fri Nov 21 14:49:42 2003  Minero Aoki  <aamine@loveruby.net>
46548         * ruby.1: wrote about ruby related environment variables.
46550 Fri Nov 21 12:28:03 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46552         * marshal.c (w_extended): singleton methods should not be checked
46553           when dumping via marshal_dump() or _dump(). [ruby-talk:85909]
46555 Fri Nov 21 01:40:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46557         * configure.in: check <pthread.h>
46559         * ruby.h: include pthread.h if existence.
46560           define is_ruby_native() macro when not HAVE_NATIVETHREAD
46562         * eval.c: undef is_ruby_native() function when not HAVE_NATIVETHREAD
46564 Fri Nov 21 00:43:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46566         * lib/test/unit/assertions.rb: use #__send__ instead of #send.
46568         * lib/test/unit/testcase.rb: ditto.
46570 Thu Nov 20 19:19:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46572         * configure.in: don't find the Cygwin's pthread library on MinGW.
46574 Thu Nov 20 19:15:50 2003  Minero Aoki  <aamine@loveruby.net>
46576         * lib/fileutils.rb (have_st_ino?): emx (OS/2 with EMX) does not
46577           have st_ino (always 0). [ruby-dev:21972]
46579         * lib/fileutils.rb (rename_cannot_overwrite_file?): emx does not
46580           allow overwriting files by rename(2).
46582         * test/fileutils/test_fileutils.rb: windows? ->
46583           have_drive_letter?, have_file_perm?
46585 Thu Nov 20 17:50:58 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46587         * ext/tk/sample/tkballoonhelp.rb: new sample script
46589         * ext/tk/sample/tkmultilistbox.rb: ditto
46591         * ext/tk/sample/tktextframe.rb: ditto
46593 Thu Nov 20 13:37:34 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46595         * ruby.h: define is_ruby_native_thread() for no native thread
46596           environment
46598         * eval.c: ditto
46600 Thu Nov 20 12:42:47 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46602         * configure.in: always check existence of the pthread library
46604         * ruby.h: define macros for ruby's native thread check
46606         * eval.c: add ruby's native thread check
46608         * gc.c: ditto
46610 Wed Nov 19 14:45:18 2003  Minero Aoki  <aamine@loveruby.net>
46612         * lib/net/http.rb (to_ary): print more friendly warning message.
46614 Wed Nov 19 14:32:08 2003  Minero Aoki  <aamine@loveruby.net>
46616         * lib/fileutils.rb (fu_same?): add djgpp and wince.
46618         * lib/fileutils.rb (cannot_overwrite_file?): add wince.
46620 Wed Nov 19 11:04:47 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
46622         * lib/fileutils.rb (cannot_overwrite_file?, have_st_ino?): bccwin32
46623           is same as mswin32.
46625 Wed Nov 19 07:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46627         * lib/test/unit.rb: do not run tests if $! is set.
46629         * lib/test/unit/assertionfailederror.rb: extend StandardError instead
46630           Exception (irb catches the former but not the latter).
46632 Tue Nov 18 23:31:36 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
46634         * missing/memmove.c (memmove): take void *, not char *.
46636         * missing.h (memmove): ditto.
46638         * missing.h (strchr, strrchr): return char *, not int.
46640 Tue Nov 18 22:20:10 2003  Minero Aoki  <aamine@loveruby.net>
46642         * lib/fileutils.rb (fu_same?): temporal fix for windows.
46644 Tue Nov 18 19:05:04 2003  Minero Aoki  <aamine@loveruby.net>
46646         * lib/fileutils.rb (fu_same?): check by inode instead of path
46647           name, to detect two hard links pointing to the same content.
46649         * test/fileutils.rb: did not create correctly looped symlinks.
46651 Tue Nov 18 18:23:05 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46653         * ext/stringio/stringio.c (strio_read): behave as IO at empty string.
46654           [ruby-dev:21939], [ruby-dev:21941]
46656         * ext/stringio/stringio.c (strio_getc, strio_getline): set EOF flag.
46658         * ext/stringio/stringio.c (strio_rewind, strio_seek, strio_ungetc):
46659           clear EOF flag.
46661         * test/stringio/test_stringio.rb: imported from [ruby-dev:21941].
46663 Tue Nov 18 14:06:35 2003  Minero Aoki  <aamine@loveruby.net>
46665         * lib/fileutils.rb (fu_each_src_dest): raise if src==dest.
46666           [ruby-talk:85344] [ruby-core:01699]
46668         * lib/fileutils.rb: use Object#is_a? instead of Class#=== to allow
46669           e.g. remote objects for receivers.
46671         * lib/fileutils.rb: FileTest -> File.
46673         * lib/fileutils.rb: put parentheses for arguments of File.xxxx?
46675         * test/fileutils/test_fileutils.rb (test_cp): test "cp a a".
46677         * test/fileutils/test_fileutils.rb (test_mv): test "mv a a".
46679         * test/fileutils/test_fileutils.rb (test_ln): test "ln a a".
46681         * test/fileutils/test_fileutils.rb (test_ln_s): test "ln_s a a".
46683         * test/fileutils/test_fileutils.rb (test_install): test "install a a".
46685         * test/fileutils/fileasserts.rb: new method assert_symlink.
46687         * test/fileutils/fileasserts.rb: assert_is_directory -> assert_directory.
46689 Mon Nov 17 19:38:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46691         * file.c (getcwdofdrv): avoid using getcwd() directly, use
46692           my_getcwd() instead.
46694         * merged NeXT, OpenStep, Rhapsody ports patch from Eric Sunshine
46695           <sunshine@sunshineco.com>.  [ruby-core:01596]
46697 Mon Nov 17 10:50:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46699         * lib/optparse.rb (OptionParser::Completion::complete): allow least
46700           common completion for three or more candidates.
46702 Mon Nov 17 09:41:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46704         * lib/test/unit/ui/tk/testrunner.rb,
46705           lib/test/unit/ui/gtk/testrunner.rb:
46706           run GUI main loop in sub thread.
46708         * lib/test/unit/ui/gtk2/testrunner.rb: imported from rough.
46710         * lib/test/unit/autorunner.rb (keyword_display): sort keywords.
46712 Sun Nov 16 18:10:57 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46714         * eval.c (rb_eval): iterator should return value from next inside
46715           begin/rescue/end.  (ruby-bugs:PR#1218)
46717 Sun Nov 16 13:26:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46719         * marshal.c (w_object): LINK check earlier than anything else,
46720           i.e. do not dump TYPE_IVAR for already dumped objects.
46721           (ruby-bugs:PR#1220)
46723         * eval.c (rb_eval): call "inherited" only when a new class is
46724           generated; not on reopening.
46726         * eval.c (eval): prepend error position in evaluating string to
46727           "mesg" attribute string only when it's available and is a
46728           string.
46730 Sun Nov 16 12:16:10 2003  Minero Aoki  <aamine@loveruby.net>
46732         * lib/net/protocol.rb: logging response body. [experimental]
46733           [ruby-list:38800]
46735 Sun Nov 16 10:49:38 2003  Gavin Sinclair  <gsinclair@soyabean.com.au>
46737         * lib/thread.rb (Thread.exclusive): wrap method definition in
46738           class Thread to enable rdoc to process.
46740 Sun Nov 16 09:45:23 2003  Minero Aoki  <aamine@loveruby.net>
46742         * lib/net/http.rb (set_debug_output): warn if method is called
46743           after #start.  [ruby-dev:38798]
46745 Sun Nov 16 04:41:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46747         * eval.c (eval): do not re-raise exception to avoid unnecessary
46748           exception copying, instead modify exception and internal
46749           information to adjust eval().
46751         * eval.c (backtrace): can return the current frame information
46752           only if lev < -1.
46754 Sat Nov 15 22:16:42 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46756         * /ext/openssl/ossl_x509ext.c (ossl_x509extfactory_create_ext):
46757           refine error message.
46759 Sat Nov 15 10:05:40 2003  Tanaka Akira  <akr@m17n.org>
46761         * lib/open-uri.rb (OpenURI.open_loop, OpenURI::HTTP#proxy_open):
46762           refactored to support options.
46763           (Buffer): maintain size by this class.
46765 Sat Nov 15 07:40:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46767         * eval.c (rb_method_node): new API to retrieve method body.
46769 Fri Nov 14 13:21:30 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46771         * ext/tcltklib/tcltklib.c: fix (en-bugged at 2003/11/07)
46773         * ext/tk/lib/tkdialog.rb: TkDialog.new accepts a parent widget
46774           argument [ruby-talk:85066]
46776 Thu Nov 13 20:53:35 2003  Tanaka Akira  <akr@m17n.org>
46778         * lib/open-uri.rb (Kernel[#.]open): hard coded URI schemes removed.
46779           [ruby-ext:02251]
46781 Thu Nov 13 19:17:00 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46783         * lib/test/unit/ui/tk/testrunner.rb: use grid and panedwindow
46784           (if available)
46786 Thu Nov 13 17:56:41 2003  Tanaka Akira  <akr@m17n.org>
46788         * lib/open-uri.rb (OpenURI.open_uri): use File::RDONLY.
46789           reported by Take_tk <ggb03124@nifty.ne.jp>.
46790           [ruby-ext:02245]
46792 Thu Nov 13 16:45:53 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46794         * ext/openssl/ossl_x509req.c (ossl_x509req_to_der): add function for
46795           X509::Request#to_der.
46797 Thu Nov 13 11:31:14 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46799         * lib/optparse.rb (OptionParser::Completion#complete): prior shorter
46800           name to containing longer name.
46802 Thu Nov 13 06:08:54 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46804         * ext/tk/lib/tk.rb: stop freezing some classes
46806         * ext/tk/lib/multi-tk.rb: ditto.
46808 Wed Nov 12 17:32:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46810         * lib/test/unit/assertions.rb (assert_throws, assert_nothing_thrown):
46811           uncaught throw in sub thread raises ThreadError.
46813         * lib/test/unit/ui/tk/testrunner.rb (setup_ui): "expand" is not
46814           necessary.
46816 Wed Nov 12 14:09:43 2003  Shugo Maeda  <shugo@ruby-lang.org>
46818         * test/monitor/test_monitor.rb: fix the timing problem by Queue.
46820 Wed Nov 12 12:59:44 2003  Shugo Maeda  <shugo@ruby-lang.org>
46822         * test/monitor/test_monitor.rb: added.
46824 Wed Nov 12 10:14:28 2003  Shugo Maeda  <shugo@ruby-lang.org>
46826         * lib/monitor.rb: refactored. Thanks, Gennady Bystritsky.
46828 Wed Nov 12 06:11:39 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46830         * ext/openssl/ossl.c (ossl_x509_sk2ary, ossl_x509crl_sk2ary):
46831           add functions to convert STACK into Array.
46833         * ext/openssl/ossl.h: add prototypes.
46835         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_set_certificates,
46836           ossl_pkcs7_get_certificates, ossl_pkcs7_get_crls,
46837           ossl_pkcs7_set_crls): add functions for PKCS7#certificates=
46838           PKCS7#certificates, PKCS7#crls= and PKCS7#crls.
46840 Wed Nov 12 00:47:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46842         * lib/test/unit/ui/testrunnermediator.rb: should require 'test/unit'.
46844 Tue Nov 11 23:54:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46846         * lib/test/unit/ui/gtk/testrunner.rb: added a rescue clause to handle
46847           the case when the requested font is not available.
46849 Tue Nov 11 22:44:08 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46851         * io.c (appendline): file may not end with newline.  a bug if
46852           READ_DATA_PENDING_PTR is defined. [ruby-talk:84925]
46854 Tue Nov 11 10:42:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46856         * ext/tk/lib/tk.rb: raise an exception when creating TkWindow
46857           object, because TkWindow class is an abstract class.
46859 Tue Nov 11 03:30:43 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
46861         * lib/ext/openssl/ossl_conf.c (ossl_config_get_value): return nil
46862           if the specified value doesn't exist.
46864         * lib/ext/openssl/ossl_conf.c (ossl_config_get_section): return
46865           a empty hash if the specified section doesn't exist.
46867 Mon Nov 10 11:40:29 2003  Shugo Maeda  <shugo@ruby-lang.org>
46869         * lib/monitor.rb (wait): return true on signal/broadcastfalse and
46870           false on timeout. Thanks Gennady Bystritsky.
46872 Mon Nov 10 00:07:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46874         * parse.y (primary): primary_value may be 0 when syntax error.
46875           [ruby-talk:84893]
46877 Sun Nov  9 02:05:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
46879         * lib/test/unit/assertions.rb: un-deprecated #assert_not_nil to
46880           maintain symmetry with #assert_nil. Also added better output for
46881           #assert_kind_of.
46883         * test/testunit/tc_assertions.rb: ditto.
46885 Sat Nov  8 18:50:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46887         * test/wsdl/raa/*: add new testcase for WSDL loading, parsing and
46888           reading.
46890         * test/soap/marshal/*: backport from soap4r/1.5.1.  all differences are
46891           for ruby/1.6.
46893         * lib/soap/*: backport from soap4r/1.5.1.  all differences are for
46894           ruby/1.6.
46896         * lib/wsdl/data.rb, lib/wsdl/xmlSchema/data.rb: move definition of
46897           ArrayTypeAttrName from ::WSDL::XMLSchema::* to ::WSDL::*.
46898           [ruby-talk:84813]
46900         * lib/wsdl/soap/definitions.rb: element name typo in custom exception
46901           struct definition which is needed for wsdlDriver; camelCase ->
46902           underscore_name.
46904 Sat Nov  8 13:49:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46906         * configure.in: improvement of pthread check
46908 Sat Nov  8 13:28:46 2003  Takaaki Tateishi  <ttate@ttsky.net>
46910         * ext/dl/sym.c: Add DL.win32_last_error and DL.last_error.
46911           Thanks, Kaoru Shirai.
46913 Sat Nov  8 06:19:38 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46915         * ext/tcltklib/tcltklib.c: To fix 'pthread-enabled Tcl/Tk' problem,
46916           TclTkIp#_eval calls Tcl_Eval() on the mainloop thread only
46917           (queueing a handler to the EventQueue).
46919         * ext/tcltklib/README.1st: edit the description of '--with-pthread-ext'
46921 Fri Nov  7 23:23:04 2003  Tanaka Akira  <akr@m17n.org>
46923         * lib/pathname.rb (Pathname#+): if self or the argument is `.', return
46924           another.
46925           (Pathname#parent): if self is `.', return `..'.
46926           (Pathname#children): if self is `.', don't prepend self for a
46927           pathname in a result.
46928           (Pathname#join): re-implemented using Pathname#+.
46929           (Pathname#find): if self is `.', remove `./' prefix of yielding
46930           pathname.
46932 Fri Nov  7 10:23:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46934         * ext/socket/socket.c (make_hostent): get rid of SEGV on aliases
46935           lookup failure.  (ruby-bugs:PR#1215)
46937 Fri Nov  7 04:08:05 2003  UENO Katsuhiro  <katsu@blue.sky.or.jp>
46939         * ext/zlib/zlib.c (Init_zlib): define Zlib::GzipReader#each_line as
46940           an alias of Zlib::GzipReader#each.
46942 Fri Nov  7 01:03:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46944         * eval.c (rb_load): save and restore rb_prohibit_interrupt.
46945           [ruby-dev:21857]
46947 Thu Nov  6 18:05:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46949         * io.c (rb_io_inspect): show the path also at a closed file.
46950           [ruby-dev:21851]
46952 Thu Nov  6 11:42:07 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
46954         * ext/stringio/stringio.c (strio_set_string, strio_reopen): check
46955           tainted.
46957         * ext/stringio/stringio.c (strio_copy, strio_ungetc, strio_write,
46958           strio_putc): add infection.
46960         * ext/stringio/stringio.c (strio_path): just nil.  [ruby-dev:21846]
46962         * ruby.c (proc_options): reserve searched script path in the
46963           source file name table.  [ruby-list:38765]
46965         * lib/optparse.rb (OptionParser::Completion#complete): default not to
46966           ignore case on completion.  [ruby-talk:84726]
46968         * win32/win32.c (make_cmdvector): process backslashes even if a quote
46969           is not enclosed.
46971 Wed Nov  5 23:49:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
46973         * sample/openssl/gen_csr.rb: there (at least) is a CA which does not
46974           accept DN in UTF8STRING format.  it's a sample.
46976 Wed Nov  5 22:55:16 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
46978         * configure.in, eval.c, signal.c: : add '--with-pthread-ext'
46979           option to fix the pthread trouble on 'tcltklib'
46981         * ext/tcltklib/README.1st: add the description of '--with-pthread-ext'
46983         * ext/tk/lib/tktext.rb: add TkText#text_copy, text_cut, text_paste
46984           to support Tcl/Tk8.4's tk_textCopy, tk_textCut, tk_textPaste
46986         * ext/tk/lib/tk.rb: add TkMenu#set_focus support Tcl/Tk's
46987           tk_menuSetFocus
46989 Wed Nov  5 17:33:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
46991         * eval.c (rb_load): allow interrupt during loaded program
46992           evaluation.  [ruby-dev:21834]
46994         * hash.c (rb_hash_fetch): always warn if default argument and a
46995           block are supplied at the same time. [ruby-dev:21842]
46997         * hash.c (env_fetch): ditto.
46999         * array.c (rb_ary_fetch): ditto.
47001 Wed Nov  5 19:08:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47003         * lib/optparse.rb (OptionParser::Switch::PlacedArgument::parse):
47004           do not remove next argument if empty value is placed.
47006         * test/optparse: added.
47008 Wed Nov  5 17:05:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47010         * lib/test/unit/ui/gtk/testrunner.rb: typo.
47012 Wed Nov  5 11:13:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47014         * string.c: add #include "version.h". this file still depends on it.
47016         * Makefile.in, bcc32/Makefile.sub, win32/Makefile.sub,
47017           wince/Makefile.sub: add version.h dependency to string.c.
47019 Wed Nov  5 09:14:23 2003  Shugo Maeda  <shugo@ruby-lang.org>
47021         * lib/monitor.rb: revert to the previous revision.
47023 Wed Nov  5 08:39:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47025         * lib/webrick/https.rb (HTTPRequest#parse): set @client_cert_chain.
47027         * lib/webrick/https.rb (HTTPRequest#meta_vars): create
47028           SSL_CLIENT_CERT_CHAIN_n from @client_cert_chain.
47030         * ext/openssl/ossl_ssl.c (ossl_ssl_get_peer_cert_chain): return nil
47031           if no cert-chain was given.
47033 Tue Nov  4 23:44:48 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47035         * bcc32/Makefile.sub, win32/Makefile.sub, wince/Makefile.sub:
47036           remove needless version.h dependency.
47038 Tue Nov  4 23:38:43 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47040         * class.c, hash.c, string.c: remove #include "version.h".
47042         * Makefile.in: remove needless version.h dependency.
47044 Tue Nov  4 06:54:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47046         * io.c (read_all): fptr->f may be NULL, if IO is closed in the
47047           signal handler.
47049         * io.c (io_read): ditto.
47051         * string.c (get_pat): remove 1.8.0 warning code.
47053         * string.c (rb_str_match): extend warning until 1.8.2.
47055         * string.c (rb_str_match2): ditto.
47057         * class.c (class_instance_method_list): remove 1.8.0 warnings.
47058           method_list now recurs.  [ruby-dev:21816]
47060         * class.c (rb_obj_singleton_methods): ditto.
47062         * array.c (rb_ary_select): remove select with block.
47063           [ruby-dev:21824]
47065         * hash.c (rb_hash_select): ditto.
47067         * hash.c (env_select): ditto.
47069         * re.c (match_select): ditto.
47071         * struct.c (rb_struct_select): ditto.
47073 Mon Nov  3 22:53:21 2003  Minero Aoki  <aamine@loveruby.net>
47075         * lib/racc/parser.rb: synchronize with Racc 1.4.4.
47077         * ext/racc/cparse/cparse.c: ditto.
47079         * ext/racc/cparse/cparse.c (parse_main): should abort when
47080           the length of LR state stack <=1, not ==0.
47082 Mon Nov  3 08:50:47 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47084         * process.c (check_uid_switch): remove duplicated error messages.
47086         * process.c (check_gid_switch): ditto.
47088 Sun Nov  2 02:28:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47090         * lib/webrick/ssl.rb: new option :SSLExtraChainCert.
47092 Sun Nov  2 01:02:04 2003  Akinori MUSHA  <knu@iDaemons.org>
47094         * string.c (rb_str_hash): Update the HASH_PERL alternative hash
47095           algorithm in sync with Perl 5.8.
47097         * st.c (strhash): Ditto.
47099 Sat Nov  1 18:21:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47101         * ext/openssl/ossl_ssl.c (ossl_ssl_peer_cert_chain): add new method
47102           SSLSocket#peer_cert_chain.
47104         * ext/openssl/ossl_x509req.c (GetX509ReqPtr): new function
47105           which returns underlying X509_REQ.
47107         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_issuer_cert,
47108           ossl_x509extfactory_set_subject_cert, ossl_x509extfactory_set_crl,
47109           ossl_x509extfactory_set_subject_req, ossl_x509extfactory_set_config):
47110           use underlying C struct without duplication not to leak momory.
47112 Sat Nov  1 01:49:03 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47114         * lib/soap/mapping/factory.rb: mark marshalled basetype objects when
47115           @allow_original_mapping is true.  multi-referencing basetype node is
47116           prohibited in SOAP/1.1 encoding but soap4r's original ruby object
47117           mapping requires basetype to be marked to detect self referencing
47118           loop.  e.g. o = 1; o.instance_eval { @iv = o }  soap4r's original
47119           mapping is only used through soap/marshal API.
47121         * test/soap/marshal/test_marshal.rb: add tests for self referencing
47122           immutable objects.
47124         * test/soap/calc/test_calc_cgi.rb: fix test name.
47126 Fri Oct 31 22:26:29 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
47128         * wince/string_wce.c (strrchr): should decrement pointer.
47130         * wince/Makefile.sub: correct a range of isdigit().
47132 Fri Oct 31 12:55:24 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47134         * configure.in, lib/mkmf.rb: add RPATHFLAG for NetBSD.
47135           [ruby-dev:21791]
47137         * bcc32/Makefile.sub, win32/Makefile.sub, win32/Makefile.sub: ditto.
47139 Fri Oct 31 01:38:14 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47141         * wince/Makefile.sub, win32/Makefile.sub (.y.c): allow white spaces
47142           at the beginning of line to remove by sed. (ruby-bugs-ja:PR#580)
47144 Fri Oct 31 01:02:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47146         * compar.c (cmp_equal): protect exceptions from <=> comparison
47147           again.  returns nil if any exception or error happened during
47148           comparison.
47150         * eval.c (search_required): should update *featurep when DLEXT2 is
47151           defined. (ruby-bugs-ja:PR#581)
47153 Thu Oct 30 23:41:04 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47155         * lib/drb/drb.rb: add DRbArray
47157         * lib/drb/invokemethod.rb: fix Hash#each problem. [ruby-dev:21773]
47159         * lib/drb/unix.rb: add LoadError. [ruby-dev:21743]
47161 Thu Oct 30 23:19:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47163         * lib/soap/generator.rb: better XML pretty printing.
47165         * lib/soap/encodingstyle/soapHandler.rb: remove unnecessary namespace
47166           assignment in the element which has "encodingStyle" attribute, and
47167           add necessary namespace assignment for "arrayType" attribute.
47169         * test/soap/calc/test_calc_cgi.rb: take over $DEBUG to ruby process
47170           through CGI.
47172 Thu Oct 30 22:59:39 2003  why the lucky stiff  <why@ruby-lang.org>
47174         * ext/syck/yaml2byte.c: HASH const too long.  Thanks, matz.
47176 Thu Oct 30 19:13:53 2003  Akinori MUSHA  <knu@iDaemons.org>
47178         * ext/syck/MANIFEST: Add yamlbyte.h.
47180 Thu Oct 30 14:25:31 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47182         * io.c (READ_DATA_BUFFERED): new macro to detect whether stdio
47183           buffer filled.
47185         * io.c (rb_io_fptr_cleanup): move path deallocation to
47186           rb_io_fptr_finalize (finalizer called by GC).
47188 Thu Oct 30 13:23:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47190         * parse.y (logop): left may be NULL. [ruby-talk:84539]
47192         * eval.c (rb_eval): NODE_CASE nd_head may be NULL.
47194 Thu Oct 30 10:14:51 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47196         * lib/test/unit/autorunner.rb: make fox runner work.
47198 Thu Oct 30 09:32:26 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47200         * process.c (rb_f_system): fixed lack of security check before
47201           calling do_spawn() on win32. [ruby-talk:84555]
47203 Thu Oct 30 02:46:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47205         * eval.c (proc_invoke): single array value to normal Proc#call
47206           (i.e. not via lambda call), should be treated just like yield.
47207           [ruby-dev:21726]
47209 Thu Oct 30 02:25:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47211         * ext/openssl/lib/openssl/buffering.rb (Buffering#initialize):
47212           add new method to inherit @sync from @io.sync.
47214         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): no need to
47215           set sync flag explicitly.
47217         * ext/openssl/ossl_ssl.c (ossl_sslctx_initialize): call super.
47219         * ext/openssl/ossl_ssl.c (ossl_sslctx_setup): set extra chain
47220           certificates in @extra_chain_cert.
47222 Wed Oct 29 22:02:04 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47224         * test/drb/drbtest.rb: use rbconfig.rb to make the path of ruby
47225           interpreter to exec, instead of test/ruby/envutil.rb,
47227 Wed Oct 29 19:58:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47229         * ext/tcltklib/tcltklib.c (CONST84): define CONST84 when it is not
47230           defined and TCL_MAJOR_VERSION >= 8.
47232         * ext/tcltklib/tcltklib.c (VwaitVarProc, WaitVariableProc,
47233           rb_threadVwaitProc): use CONST84 instead of CONST.
47235         * ext/tcltklib/tcltklib.c (ip_rbTkWaitCommand,
47236           ip_rb_threadTkWaitCommand): use CONST84 always.
47238 Wed Oct 29 17:27:05 2003  Tanaka Akira  <akr@m17n.org>
47240         * re.c (rb_reg_s_union, Init_Regexp): new method `Regexp.union'.
47242         * lib/pathname.rb (realpath): examine Dir.pwd because it may have
47243           symlinks.
47245 Wed Oct 29 17:16:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47247         * eval.c (rb_longjmp): must not disturb original jump.
47248           [ruby-dev:21733]
47250 Wed Oct 29 15:28:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47252         * eval.c (Init_Proc): taint preallocated exception object
47253           sysstack_error. [ruby-talk:84534]
47255 Wed Oct 29 11:27:39 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47257         * parse.y (ret_args): node may be NULL. [ruby-talk:84530]
47259 Tue Oct 28 15:20:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47261         * ext/tcltklib/tcltklib.c (VwaitVarProc, ip_rbVwaitObjCmd,
47262           WaitVariableProc, WaitVisibilityProc, WaitWindowProc,
47263           ip_rbTkWaitObjCmd, ip_rbTkWaitCommand, rb_threadVwaitProc,
47264           rb_threadWaitVisibilityProc, rb_threadWaitWindowProc,
47265           ip_rb_threadVwaitObjCmd, ip_rb_threadTkWaitObjCmd): prototype;
47266           avoid VC++ warnings.
47268 Mon Oct 27 19:19:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47270         * eval.c (rb_longjmp): ignore reentering error while warning.
47271           [ruby-dev:21730]
47273 Mon Oct 27 00:23:50 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47275         * ext/tcltklib/tcltklib.c (ip_ruby): bug fix on Win : hang-up when
47276           calling 'exit' in the Tk callback procedure. [ruby-list:38656]
47278 Sat Oct 25 09:18:04 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47280         * eval.c (rb_method_missing): protect exception from within
47281           "inspect".  (ruby-bugs:PR#1204)
47283 Fri Oct 24 23:26:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47285         * hash.c (rb_hash_each): Hash#each should yield single value.
47286           [ruby-talk:84420]
47288         * hash.c (env_each): ditto for ENV.each.
47290 Thu Oct 23 20:25:32 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47292         * lib/webrick/server.rb (GenericServer#start): should rescue
47293           IOError from IO::accept. [ruby-dev:21692]
47295 Thu Oct 23 17:59:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47297         * eval.c (ruby_cleanup): initialize stack bottom for embedding.
47298           [ruby-dev:21686]
47300         * ext/dl/extconf.rb: move list of files to clean from DEPEND file,
47301           to get rid of macro redefinitions.
47303 Thu Oct 23 13:44:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47305         * parse.y: integrate operations for stack_type.  [ruby-dev:21681]
47307 Thu Oct 23 00:41:45 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47309         * test/soap/calc/*, test/soap/helloworld/*: set logging threshold
47310           to ERROR.
47312 Wed Oct 22 12:53:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47314         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
47315           ignore tests which raised LoadError.
47317         * test/drb/drbtest.rb, test/ruby/test_beginendblock.rb,
47318           test/ruby/test_system.rb: avoid requiring same file twice.
47320         * test/drb/test_drbssl.rb, test/drb/test_drbunix.rb: should not use
47321           ARGV unless invoked directly.  do not create test cases unless
47322           required libraries are available.
47324 Wed Oct 22 02:31:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47326         * eval.c (ruby_cleanup): should not ignore exit_value in END
47327           execution. [ruby-dev:21670]
47329 Tue Oct 21 23:16:26 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47331         * eval.c (ruby_cleanup): call finalizers and exit procs before
47332           terminating threads.
47334         * eval.c (ruby_cleanup): preserve ruby_errinfo before ruby_finalize_0().
47336 Tue Oct 21 15:57:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47338         * lib/test/unit/collector/dir.rb (Test::Unit::Collector::Dir#collect_file):
47339           prepend the directory of target file to the load path.
47341 Tue Oct 21 15:08:53 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47343         * win32/win32.c (do_spawn, do_aspawn): should wait child process even
47344           if callded with P_OVERLAY.
47346         * win32/win32.c (do_spawn, do_aspawn): should return child's exit
47347           status to parent.
47349 Tue Oct 21 00:35:02 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47351         * test/soap/calc/*, test/soap/helloworld/*: catch the exception from
47352           test server thread and recover.
47354 Tue Oct 21 00:22:57 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
47356         * test/drb/*: import drb/runit.
47358 Mon Oct 20 23:55:47 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47360         * eval.c (rb_eval): set current node after arguments evaluation.
47361           [ruby-dev:21632]
47363         * eval.c (rb_yield_0): set current node and keep it at local jump.
47365 Mon Oct 20 22:01:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47367         * eval.c (rb_thread_cleanup): keep thread group for main thread.
47368           [ruby-dev:21644]
47370 Mon Oct 20 18:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47372         * eval.c (rb_catch): backout.
47374 Mon Oct 20 17:31:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47376         * eval.c (PUSH_FRAME): generate unique number to be TAG_JUMP()
47377           destination.
47379         * eval.c (localjump_destination): use unique number in ruby_frame
47380           for localjump destination.
47382 Mon Oct 20 11:31:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47384         * test/ruby/test_signal.rb (test_signal): restore old trap.
47386 Mon Oct 20 11:00:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47388         * gc.c (gc_sweep): loosen page free condition to avoid add_heap()
47389           race condition. [ruby-dev:21633]
47391         * gc.c (gc_sweep): do not update malloc_limit when malloc_increase
47392           is smaller than malloc_limit.
47394 Mon Oct 20 09:45:12 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47396         * lib/debug.rb (debug_command): remove debug print.
47398 Sun Oct 19 13:12:30 2003  Tanaka Akira  <akr@m17n.org>
47400         * lib/pathname.rb (foreachline, dir_foreach): add obsolete warning.
47402 Sun Oct 19 00:14:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47404         * test/soap/calc/*, test/soap/helloworkd/*: changed port# of test
47405           server. (17171)
47407 Sat Oct 18 23:01:32 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47409         * missing/acosh.c (DBL_MANT_DIG): typo fix(ifdef -> ifndef).
47411 Sat Oct 18 05:48:59 2003  why the lucky stiff  <why@ruby-lang.org>
47413         * ext/syck/rubyext.c: YAML::Syck::compile method.
47415         * ext/syck/syck.c: Buffer edge bug.
47417         * ext/syck/yaml2byte.c: YAML to bytecode converter.
47419         * ext/syck/yamlbyte.h: Ditto.
47421         * ext/syck/bytecode.c: Bytecode parser fixes to empty collections
47422           and empty strings.
47424         * ext/syck/token.c: Ditto.
47426 Fri Oct 17 23:07:38 2003  Akinori MUSHA  <knu@iDaemons.org>
47428         * ext/enumerator/enumerator.c, ext/enumerator/enumerator.txt:
47429           Provide Kernel#to_enum as an alias for Kernel#enum_for.  Maybe
47430           this is a better name.
47432 Fri Oct 17 23:00:30 2003  Akinori MUSHA  <knu@iDaemons.org>
47434         * lib/generator.rb: Add rdoc documentation.
47436 Fri Oct 17 22:16:42 2003  Akinori MUSHA  <knu@iDaemons.org>
47438         * lib/set.rb: Reword and fix Overview.
47440         * lib/set.rb: It is not necessary to require
47441           'test/unit/ui/console/testrunner'.
47443 Fri Oct 17 11:15:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47445         * test/ruby/test_range.rb: added.
47447         * MANIFEST: add test/ruby/test_range.rb.
47449 Fri Oct 17 03:21:23 2003  William Sobel  <will.sobel@barra.com>
47451         * ext/socket/socket.c (make_hostent): h_aliases may be NULL.
47452           (ruby-bugs:PR#1195)
47454         * ext/socket/socket.c (sock_s_gethostbyaddr): ditto.
47456 Fri Oct 17 00:12:41 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47458         * ext/tk/lib/tk.rb: (bug fix) instance variable @frame was used
47459           without initializing on TkComposite module.
47461 Thu Oct 16 23:51:04 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47463         * ext/tk/lib/tk.rb: If $DEBUG == true and some exception is caused
47464           in a callback operation, Ruby/Tk shows a (verbose) backtrace
47465           information on the callback process.
47467 Thu Oct 16 17:09:19 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47469         * lib/debug.rb (DEBUGGER__::Context::debug_command): do not call
47470           debug_silent_eval() when $1 is not set. (ruby-bugs:PR#1194)
47472 Thu Oct 16 16:54:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47474         * string.c (rb_str_upto): ("a"..."a").to_a should return [].
47475           [ruby-core:01634]
47477 Thu Oct 16 16:40:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47479         * ext/tk/lib/tk.rb:
47480           Add Tk::EncodedString and Tk::UTF8_String class to support
47481           characters using the \uXXXX escape to the UNICODE string.
47483         * ext/tk/sample/{demos-en,demos-jp}/unicodeout.rb
47484           new demo-scripts (samples of Tk::UTF8_String)
47486         * ext/tk/sample/{demos-en,demos-jp}/widget
47487           add entries for 'unicodeout.rb'
47489 Thu Oct 16 08:38:06 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47491         * test/digest/test_digest.rb (test_eq): show failed class.
47493         * test/ruby/test_iterator.rb (test_break, test_return_trace_func):
47494           test localjump destination.
47496 Wed Oct 15 20:22:31 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47498         * lib/soap/netHttpClient.rb: use URI::HTTP#request_uri instead of
47499           instance_eval('path_query').  [ruby-list:38575]
47501 Wed Oct 15 17:24:45 2003  URABE Shyouhei  <root@mput.dip.jp>
47503         * lib/cgi.rb (CGI::Cookie): tiny typo fix.
47505 Wed Oct 15 15:00:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47507         * eval.c (ruby_run): just return FAILURE instead of parse error
47508           count.  [ruby-list:38569]
47510 Wed Oct 15 13:17:02 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47512         * ext/digest/digest.c (rb_digest_base_alloc): need to initialize
47513           buffer. [ruby-dev:21622]
47515 Wed Oct 15 11:23:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47517         * marshal.c (w_object): dump extended modules as well.
47519         * marshal.c (r_object0): TYPE_USRMARSHAL should restore extended
47520           modules before invoking marshal_load.  these two fixes are done
47521           by Masatoshi Seki <m_seki@mva.biglobe.ne.jp>.
47523 Wed Oct 15 09:30:34 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
47525         * ext/enumerator/enumerator.c (enumerator_each): avoid VC++ warning.
47527         * ext/syck/syck.h: include stdio.h for definition of FILE.
47529 Wed Oct 15 08:09:07 2003  why the lucky stiff  <why@ruby-lang.org>
47531         * ext/syck/bytecode.c: Checkin of YAML bytecode support.
47533         * ext/syck/gram.c: Ditto.
47535         * ext/syck/syck.c: Ditto.
47537         * ext/syck/token.c: Ditto.
47539         * ext/syck/handler.c: Ditto.
47541         * ext/syck/handler.c: Now using 'tag' rather than 'taguri' in type URIs.
47543         * ext/syck/rubyext.c: Ditto (on both counts).
47545 Wed Oct 15 05:05:53 2003  Akinori MUSHA  <knu@iDaemons.org>
47547         * lib/generator.rb: A new library which converts an internal
47548           iterator to an external iterator.
47550         * lib/abbrev.rb: A new library which creates an abbreviation table
47551           from a list.
47553 Wed Oct 15 04:31:51 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47555         * ext/tk/sample/demos-en/entry3.rb, ext/tk/sample/demos-jp/entry3.rb:
47556           new demo-scripts
47558         * ext/tk/sample/demos-en/widget, ext/tk/sample/demos-jp/widget:
47559           add entries for 'entry3.rb'
47561 Wed Oct 15 04:31:47 2003  Akinori MUSHA  <knu@iDaemons.org>
47563         * test/digest/test_digest.rb: Moved from ext/digest/test.rb.
47565 Wed Oct 15 03:53:20 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47567         * ext/tk/lib/tk.rb: fixed trouble on auto-load Tcl commands (enbug
47568           on the last commit).
47570 Wed Oct 15 00:25:00 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47572         * parse.y (yylex): argument parentheses preceded by spaces should
47573           be warned; not error.  [ruby-talk:84103]
47575 Wed Oct 15 00:20:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
47577         * ext/tcltklib/tcltklib.c: replace Tcl/Tk's vwait and tkwait to
47578           switch on threads smoothly and avoid seg-fault.
47580         * ext/tcltklib/tcltklib.c: add TclTkIp._thread_vwait and
47581           _thread_tkwait for waiting on a thread. (Because Tcl/Tk's vwait
47582           and tkwait command wait on an eventloop.)
47584         * ext/tk/lib/multi-tk.rb: support TclTkIp._thread_vwait and
47585           _thread_tkwait.
47587         * ext/tk/lib/tk.rb: now, TkVariable#wait has 2 arguments.
47588           If 1st argument is true, waits on a thread. If false, waits on
47589           an eventloop. If 2nd argument is true, checks existence of
47590           rootwidgets. If false, doesn't. Default is wait(true, false).
47592         * ext/tk/lib/tk.rb: add TkVariable#tkwait(arg) which is equal to
47593           TkVariable#wait(arg, true). wait_visibility and wait_destroy
47594           have an argument for waiting on a thread or an eventloop.
47596         * ext/tk/lib/tk.rb: improve of accessing Tcl/Tk's special variables.
47598         * ext/tk/lib/tkafter.rb: support 'wait on a thread' and 'wait on
47599           an eventloop'.
47601 Wed Oct 15 00:10:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47603         * lib/soap/baseData.rb: Introduce SOAPType as the common ancestor of
47604           SOAPBasetype and SOAPCompoundtype.
47606         * lib/soap/generator.rb, lib/soap/element.rb, lib/soap/encodingstyle/*:
47607           Encoding methods signature change.  Pass SOAPGenerator as a parameter.
47609         * lib/soap/mapping/*, test/soap/marshal/test_marshal.rb: Refactoring
47610           for better marshalling/unmarshalling support.  Now I think SOAP
47611           marshaller supports all kind of object graph which is supported by
47612           Ruby's original marshaller.  Of course there could be bugs as always.
47613           Find it.  :-)
47615         * lib/soap/rpc/standaloneServer.rb: Set severity threshould to INFO.
47616           DEBUG is too noisy.
47618         * lib/xsd/datatypes.rb: DateTime#of is obsoleted.  Use DateTime#offset.
47620         * test/wsdl/emptycomplextype.wsdl, test/xsd/xmlschema.xml: Avoid
47621           useless warning.
47623 Tue Oct 14 19:09:35 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47625         * eval.c (ruby_finalize_0): return the given exit status unless
47626           SystemExit got raised.
47628 Tue Oct 14 11:53:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47630         * intern.h (ruby_stop): never return.
47632         * ruby.h (ruby_run): ditto.
47634 Tue Oct 14 04:43:55 2003  Tanaka Akira  <akr@m17n.org>
47636         * lib/pathname.rb (realpath): make ELOOP check bit more robust.
47637           (children): prepend self by default.
47638           (chroot): obsoleted.
47640 Tue Oct 14 02:29:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47642         * eval.c (rb_require_safe): segfault after loading .so.
47644 Tue Oct 14 02:05:23 2003  Akinori MUSHA  <knu@iDaemons.org>
47646         * ext/Setup*, ext/enumerator/*: Add ext/enumerator, a helper
47647           module for the Enumerable interface.
47649 Mon Oct 13 23:55:59 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47651         * test/ruby/envutil.rb: use Config::CONFIG["ruby_install_name"],
47652           not "ruby".
47654 Mon Oct 13 23:57:29 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47656         * eval.c (rb_feature_p): match by classified suffix.
47658         * eval.c (rb_require_safe): require library in the specified safe
47659           level.
47661         * variable.c (rb_autoload, rb_autoload_load): restore safe level
47662           when autoload was called.  [ruby-dev:21338]
47664         * intern.h: prototypes; rb_require_safe.
47666         * test/runner.rb: accept non-option arguments.
47668 Mon Oct 13 20:49:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47670         * string.c (str_new4): should not preserve FL_TAINT status in the
47671           internal shared string. [ruby-dev:21601]
47673         * string.c (rb_str_new4): ditto.
47675         * eval.c: use EXIT_SUCCESS and EXIT_FAILURE for exit values.
47677         * process.c: ditto. [ruby-list:38521]
47679 Mon Oct 13 19:51:02 2003  Koji Arai  <jca02266@nifty.ne.jp>
47681         * lib/debug.rb (debug_command): should enter emacs mode when
47682           assigned any value to the environment variable "EMACS".
47683           On Meadow, (getenv "EMACS") is "meadow".
47685 Sun Oct 12 14:45:03 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47687         * ext/win32ole/extconf.rb: check "windows.h", not "windows".
47688           [ruby-talk:84051]
47690 Sat Oct 11 20:41:03 2003  Corinna Vinschen  <corinna@vinschen.de>
47692         * file.c (eaccess): Use access(2) on Cygwin.
47694 Sat Oct 11 17:09:21 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
47696         * lib/rexml/quickpath.rb (REXML::QuickPath::match):
47697           escape '[' to avoid warning.
47699 Sat Oct 11 16:08:41 2003  Tanaka Akira  <akr@m17n.org>
47701         * lib/pathname.rb (realpath): check existence of the file.
47703         * lib/pathname.rb (realpath): re-implemented.
47704           (realpath_root?, realpath_rec): removed
47706 Sat Oct 11 10:19:39 2003  Shugo Maeda  <shugo@ruby-lang.org>
47708         * lib/monitor.rb: handle exceptions correctly. Thanks, Gennady
47709           Bystritsky.
47711 Fri Oct 10 07:50:54 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47713         * eval.c (is_defined): inheritance line adjustment as like as
47714           rb_call_super().
47716 Fri Oct 10 01:19:00 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47718         * ext/openssl/ossl_x509name.c (ossl_x509name_initialize): add
47719           optional argument to specify the DirectoryString type
47720           (ASN1::UTF8STRING by default). RFC3280 deprecates PrintableString
47721           for DirectoryString, and strongly requires to use UTF8String for
47722           all certificates issued after December, 31 2003.
47724         * ext/openssl/lib/openssl/x509.rb (X509::Name::parse): ditto.
47726 Thu Oct  9 23:50:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47728         * eval.c (rb_thread_start_0): prevent thread from GC.
47729           [ruby-dev:21572]
47731 Thu Oct  9 19:11:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47733         * eval.c (rb_thread_start_0): non-volatile should be restored from
47734           volatile.
47736 Thu Oct  9 17:43:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47738         * eval.c (proc_save_safe_level, proc_get_safe_level,
47739           proc_set_safe_level): save/restore safe level 1..4.
47741 Thu Oct  9 16:33:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47743         * marshal.c (r_object0): remove unnecessary iv restoration for
47744           USRMARSHAL. [ruby-dev:21582]
47746         * marshal.c (w_object): dump generic instance variables from
47747           a string from '_dump'.
47749         * variable.c (rb_generic_ivar_table): return 0 if obj's FL_EXIVAR
47750           is not set.
47752         * time.c (time_dump): copy instance variables to dumped string, to
47753           be included in the marshaled data.
47755         * bignum.c (rb_big2ulong): add range check to ensure round trip.
47757 Thu Oct  9 15:45:27 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47759         * pack.c (uv_to_utf8): change message to "out of range", since
47760           negative values are not "too big". [ruby-dev:21567]
47762 Thu Oct  9 14:05:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47764         * eval.c (rb_set_end_proc, rb_exec_end_proc): restore safe level.
47765           [ruby-dev:21557]
47767 Thu Oct  9 10:51:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47769         * eval.c (rb_yield_0): no error if block is empty.
47771 Thu Oct  9 06:43:33 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47773         * eval.c (localjump_error): id should be ID.
47775         * eval.c (rb_eval): nd_rval is set in copy_node_scope().
47777         * eval.c (rb_yield_0): unused variable.
47779         * eval.c (rb_yield_0): nothing to do for empty node.
47781         * eval.c (call_end_proc, proc_invoke): adjust backtrace in END.
47782           [ruby-dev:21551]
47784         * eval.c (rb_thread_start_0): set the value by break as the result.
47785           [ruby-dev:21552]
47787         * eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save
47788           variables across THREAD_SAVE_CONTEXT.
47790 Thu Oct  9 12:05:46 2003  Eric Sunshine  <sunshine@sunshineco.com>
47792         * configure.in: revived NextStep, OpenStep, and Rhapsody ports which
47793           had become unbuildable; enhanced --enable-fat-binary option so that
47794           it accepts a list of desired architectures (rather than assuming a
47795           fixed list), or defaults to a platform-appropriate list if user does
47796           not provide an explicit list; made the default list of architectures
47797           for MAB (fat binary) more comprehensive; now uses -fno-common even
47798           when building the interpreter (in addition to using it for
47799           extensions), thus allowing the interpreter to be embedded into a
47800           plugin module of an external project (in addition to allowing
47801           embedding directly into an application); added checks for
47802           <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now
47803           ensures that -I/usr/local/include is employed when extensions'
47804           extconf.rb scripts invoke have_header() since extension checks on
47805           NextStep and OpenStep will fail without it if the desired resource
47806           resides in the /usr/local tree; fixed formatting of --help message.
47808         * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before
47809           invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives
47810           (see configure's --enable-fat-binary option); added rule for new
47811           missing/getcwd.c.
47813         * defines.h: fixed endian handling during MAB build (see configure's
47814           --enable-fat-binary option) to ensure that all portions of the
47815           project see the correct WORDS_BIGENDIAN value (some extension modules
47816           were getting the wrong endian setting); added missing constants
47817           GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep
47818           and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H
47819           define in NeXT section.
47821         * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on
47822           NextStep since, on some installations, this value always resolves
47823           uselessly to zero.
47825         * dln.c: added error reporting to NextStep extension loader since the
47826           previous behavior of failing silently was not useful; now ensures
47827           that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined
47828           for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice
47829           on Rhapsody since this header lacks multiple-include protection,
47830           which resulted in "redefinition" compilation errors.
47832         * main.c: also create hard reference to objc_msgSend() on NeXT
47833           platforms (in addition to Apple platforms).
47835         * lib/mkmf.rb: now exports XCFLAGS from configure script to extension
47836           makefiles so that extensions can be built MAB (see configure's
47837           --enable-fat-binary option); also utilize XCFLAGS in cc_command()
47838           (but not cpp_command() because MAB flags are incompatible with
47839           direct invocation of `cpp').
47841         * ext/curses/extconf.rb: now additionally checks for presence of these
47842           curses functions which are not present on NextStep or Openstep:
47843           bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(),
47844           setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(),
47845           wscrl(), wsetscrreg()
47847         * ext/curses/curses.c: added appropriate #ifdef's for additional set of
47848           curses functions now checked by extconf.rb; fixed curses_bkgd() and
47849           window_bkgd() to correctly return boolean result rather than numeric
47850           result; fixed window_getbkgd() to correctly signal an error by
47851           returning nil rather than -1.
47853         * ext/etc/etc.c: setup_passwd() and setup_group() now check for null
47854           pointers before invoking rb_tainted_str_new2() upon fields extracted
47855           from `struct passwd' and `struct group' since null pointers in some
47856           fields are common on NextStep/OpenStep (especially so for the
47857           `pw_comment' field) and rb_tainted_str_new2() throws an exception
47858           when it receives a null pointer.
47860         * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for
47861           platforms such as NextStep and OpenStep which lack strdup().
47863         * ext/socket/getaddrinfo.c: cast first argument of getservbyname(),
47864           gethostbyaddr(), and gethostbyname() from (const char*) to non-const
47865           (char*) for older platforms such as NextStep and OpenStep.
47867         * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for
47868           platforms such as NextStep and OpenStep which lack strdup(); include
47869           <netinet/in_systm.h> if present for NextStep and OpenStep; cast first
47870           argument of gethostbyaddr() and getservbyname() from (const char*) to
47871           non-const (char*) for older platforms.
47873         * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for
47874           platforms such as NextStep and OpenStep which lack strdup().
47876 Wed Oct  8 22:19:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
47878         * lib/test/unit.rb: removed installation instructions.
47880         * lib/test/unit/ui/testrunnermediator.rb: moved the run flag to a more
47881           central location.
47883         * lib/test/unit.rb: ditto.
47885         * lib/test/unit.rb: extracted the running code in to AutoRunner.
47887         * lib/test/unit/autorunner.rb: added.
47889         * lib/test/unit/collector/objectspace.rb: extracted common test
47890           collection functionality in to a module.
47892         * lib/test/unit/collector.rb: ditto; added.
47894         * test/testunit/collector/test_objectspace.rb: ditto.
47896         * lib/test/unit/collector/dir.rb: added. Supports collecting tests out
47897           of a directory structure.
47899         * test/testunit/collector/test_dir.rb: added.
47901         * test/runner.rb: simplified to use the new capabilities.
47903 Tue Oct  7 15:23:09 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47905         * test/ruby/test_beginendblock.rb: add tests for nested BEGIN/END.
47907         * test/ruby/beginmainend.rb: add tests for nested BEGIN/END.
47909         * test/ruby/endblockwarn.rb: new file added to test of END-in-method
47910           warning.
47912 Tue Oct  7 12:23:47 2003  Tanaka Akira  <akr@m17n.org>
47914         * ext/fcntl/fcntl.c (Init_fcntl): define Fcntl::O_ACCMODE.
47916         * ext/socket/extconf.rb: useless assignment removed.
47918 Tue Oct  7 09:13:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47920         * test/ruby/test_beginendblock.rb (test_endinmethod): END{} is now
47921           allowed in eval.
47923 Tue Oct  7 04:15:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47925         * parse.y (stmt): should not expand mrhs if lhs is solely starred.
47927 Tue Oct  7 02:57:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47929         * parse.y (stmt): rhs of multiple assignment should not be
47930           expanded using "to_a". [ruby-dev:21527]
47932 Tue Oct  7 01:42:34 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47934         * ext/openssl/ossl_asn1.c (ossl_asn1_get_asn1type): use appropriate
47935           free function for ASN1_OBJECT.
47937         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_sn): add new function for
47938           ASN1::ObjectId#sn; it returns short name text representation of OID.
47940         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_ln): add new function for
47941           ASN1::ObjectId#ln; it returns long name text representation of OID.
47943         * ext/openssl/ossl_asn1.c (ossl_asn1obj_get_oid): add new function for
47944           ASN1::ObjectId#oid; it returns numerical representation of OID.
47946 Mon Oct  6 22:59:46 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47948         * lib/csv.rb (IOReader, BasicWriter): call binmode when a given IO
47949           respond_to?(:binmode).  record separator was wrong when you gave
47950           text mode IO to Reader.parse and Writer.generate.
47952         * test/csv/test_csv.rb: add tests for above change.
47954 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
47956         * ext/socket/extconf.rb: check recvmsg even if sendmsg is exists.
47958         * ext/socket/socket.c (thread_read_select): restored.
47960 Mon Oct  6 16:23:38 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47962         * marshal.c (w_object): wrong method name in the message.
47964 Mon Oct  6 16:02:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47966         * parse.y (stmt): END in method should cause warning.
47967           [ruby-dev:21519]
47969 Mon Oct  6 15:17:23 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47971         * test/ruby/test_iterator.rb (test_block_argument_without_paren):
47972           added. (follows sample/test.rb)
47974 Mon Oct  6 11:57:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
47976         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: added
47977           test for eval-ed BEGIN END order.
47979 Mon Oct  6 09:19:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
47981         * marshal.c (w_object): should pass "weak" value to next level.
47982           [ruby-dev:21496]
47984         * eval.c (proc_alloc): should not use cached object if klass is
47985           different. [ruby-talk:83685]
47987 Sun Oct  5 23:27:09 2003  Tanaka Akira  <akr@m17n.org>
47989         * lib/pathname.rb: version information is added in document.
47991 Sun Oct  5 23:07:03 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
47993         * eval.c (rb_f_END): block should be given.  [ruby-dev:21497]
47995 Sun Oct  5 22:51:23 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
47997         * lib/ext/openssl/extconf.rb: add check for some engine functions
47998           unavailable in OpenSSL-0.9.6.
48000         * lib/ext/openssl/ossl_engine.c: ditto.
48002 Sun Oct  5 17:56:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48004         * eval.c (rb_eval): fix evaluation order.  [ruby-list:38431]
48006 Sun Oct  5 15:05:06 2003  akira yamada  <akira@ruby-lang.org>
48008         * test/uri/*: translated RUNIT to Test::Unit.
48010 Sun Oct  5 14:37:39 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48012         * lib/xsd/datatypes.rb: Rational -> Decimal string bug fix.
48014         * test/soap/marshal/test_marshal.rb: ditto.
48016         * test/soap/calc/test_calc_cgi.rb: add Config::CONFIG["EXEEXT"] to
48017           RUBYBIN.
48019 Sun Oct  5 13:47:22 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48021         * test/ruby/test_beginendblock.rb, test/ruby/beginmainend.rb: add tests
48022           about scope, order and allowed syntax.
48024 Sun Oct  5 11:54:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48026         * test/ruby/envutil.rb: added.  split "rubybin" from test_system.rb.
48028         * test/ruby/test_system.rb: use envutil.rb
48030         * test/ruby/test_beginendblock.rb: added.
48032         * test/ruby/beginmainend.rb: added.  used in test_beginendblock.rb.
48034 Sun Oct  5 11:23:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48036         * test/testunit/runit/test_testresult.rb: removed some unnecessary
48037           cruft.
48039 Sun Oct  5 11:14:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48041         * lib/rubyunit.rb: aliasing TestCase into the top level is
48042           problematic.
48044         * lib/runit/assert.rb: fixed a couple of bugs caused by recent
48045           refactoring in Test::Unit.
48047         * test/testunit/runit/*: added.
48049 Sun Oct  5 10:55:29 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48051         * lib/open-uri.rb (URI::Generic#find_proxy): no_proxy support did not
48052           work.  [ruby-dev:21484]
48054 Sun Oct  5 09:52:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48056         * lib/test/unit/assertions.rb: will use pp for output if available.
48057           Can be disabled by setting Assertions.use_pp = false.
48059         * test/testunit/test_assertions.rb: made a small change to exception
48060           formatting.
48062 Sun Oct  5 07:42:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48064         * lib/test/unit/assertions.rb: made small improvements to assertion
48065           messages. Deprecated Assertions#assert_not_nil; use #assert instead.
48067         * test/testunit/test_assertions.rb: ditto.
48069         * test/testunit/util/test_procwrapper.rb: use #assert instead of
48070           #assert_not_nil.
48072 Sun Oct  5 04:10:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48074         * lib/test/unit/assertions.rb: refactored message building.
48076 Sun Oct  5 03:40:22 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48078         * ext/openssl/ossl_asn1.h: global symbols should be declared
48079           as external.
48081 Sun Oct  5 03:03:20 2003  akira yamada  <akira@ruby-lang.org>
48083         * test/ruby/test_exception.rb (test_else): added.
48085 Sun Oct  5 02:12:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48087         * lib/test/unit/assertions.rb: changed assertion messages to rely more
48088           heavily on #inspect. Added backtrace filtering for exceptions in
48089           assertion messages.
48091         * test/testunit/test_assertions.rb: ditto.
48093 Sun Oct  5 02:12:00 2003  Masatoshi SEKI  <m_seki@mva.biglobe.ne.jp>
48095         * lib/drb/acl.rb, lib/drb/ssl.rb: added.
48097         * lib/drb/drb.rb: exit from a thread using 'break'.
48099 Sat Oct  4 21:49:14 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48101         * gc.c (Init_stack): the type of space is changed to unsigned int
48102           from double.  [ruby-dev:21483]
48104 Sat Oct  4 17:52:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48106         * lib/soap/netHttpClient.rb: follow http-access2.  hosts which matches
48107           ENV['no_proxy'] or ENV['NO_PROXY'] are not proxyed.
48108           - [,:] separated. ("ruby-lang.org:rubyist.net")
48109           - no regexp. (give "ruby-lang.org", not "*.ruby-lang.org")
48110           - if you want specify host by IP address, give full address.
48111             ("192.168.1.1, 192.168.1.2")
48113         * lib/soap/rpc/cgistub.rb: return "Status: XXX MMM" line.
48115         * test/runner.rb: give testsuite name.
48117 Sat Oct  4 15:16:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48119         * marshal.c (w_object): instance variable dump do not cause error
48120           for objects that cannot be dumped, if they traversed from
48121           marshal_dump.  they are just ignored.
48123         * gc.c (Init_stack): cast "space" (doble value) into unsigned
48124           int.  should run on PowerPC.
48126         * eval.c (rb_eval): should not execute else part if any exception
48127           is caught. [ruby-dev:21482]
48129         * parse.y (f_args): should allow unparenthesized block argument.
48131         * parse.y (f_rest_arg): should allow unparenthesized rest
48132           argument.
48134 Sat Oct  4 14:59:51 2003  Tanaka Akira  <akr@m17n.org>
48136         * lib/pathname.rb (initialize): raise ArgumentError if argument has
48137           '\0' character.
48138           (relative_path_from): new method.
48139           (each_entry): new method for replacement of dir_foreach.
48140           (foreach, foreachline, dir_foreach, chdir): obsoleted.
48142 Sat Oct  4 12:58:48 2003  akira yamada  <akira@ruby-lang.org>
48144         * test/uri/* (6 files): added.
48146 Sat Oct  4 12:44:45 2003  akira yamada  <akira@ruby-lang.org>
48148         * lib/uri/ftp.rb, lib/uri/mailto.rb: renamed to #to_s from #to_str.
48150 Sat Oct  4 07:33:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48152         * lib/test/unit/testsuite.rb: changed #<< to return self, and added
48153           #delete.
48155         * test/testunit/test_testsuite.rb: ditto. Also slightly refactored
48156           #test_size.
48158         * lib/test/unit/collector/objectspace.rb: collector now preserves the
48159           hierarchy of suites.
48161         * test/testunit/collector/test_objectspace.rb: ditto.
48163 Sat Oct  4 04:48:49 2003  why the lucky stiff  <why@ruby-lang.org>
48165         * ext/syck/rubyext.c: default keys handled.
48167         * ext/syck/syck.h: lowered default buffer size to 16k for increased
48168           performance.
48170         * test/yaml: checkin of basic unit tests.
48172 Sat Oct  4 04:24:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48174         * ext/openssl/extconf.rb: add check for X509V3_set_nconf.
48176         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_set_config):
48177           cannot implement if X509V3_set_nconf doesn't exist.
48179 Sat Oct  4 02:12:44 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48181         * lib/xsd/datatypes.rb: dump sign by itself.  under the problematic
48182           platform, sprintf("%+.10g", -0.0) => +0.  sigh.
48184         * sample/wsdl/amazon/*: update schema ver2 to ver3.
48186 Sat Oct  4 01:33:46 2003  Tanaka Akira  <akr@m17n.org>
48188         * lib/pathname.rb (initialize): duplicate and freeze argument.
48189           (to_s): return duplicated string.
48190           (children): new method.
48191           (each_line): new alias to foreachline.
48193 Fri Oct  3 16:13:19 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48195         * ext/openssl/ossl_asn1.c: add DER encoder and decoder.
48197         * ext/openssl/ossl_asn1.h: add OpenSSL::ASN1 module.
48199         * ext/openssl/ossl.c (Init_openssl): call Init_ossl_asn1.
48201         * ext/openssl/extconf.rb: check if X509_ATTRIBUTE has field "single".
48203         * ext/openssl/ossl_x509attr.c (ossl_x509attr_set_value): accept
48204           DER encoded data argument.
48206         * ext/openssl/ossl_x509attr.c (ossl_x509attr_get_value): return
48207           DER encoded data in OpenSSL::ASN1 types.
48209 Fri Oct  3 13:02:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48211         * lib/test/unit.rb: refactored to use optparse.
48213         * lib/test/unit.rb: added support for selecting the output
48214           level from the command-line.
48216         * lib/test/unit.rb: added a command-line switch to stop processing
48217           the command-line, allowing arguments to be passed to tests.
48219         * lib/test/unit.rb: changed the method for specifying a runner or a
48220           filter from the command-line.
48222         * lib/test/unit/collector/objectspace.rb: fixed a bug causing all
48223           tests to be excluded when the filter was set to an empty array.
48225         * test/testunit/collector/test_objectspace.rb: ditto.
48227 Fri Oct  3 08:14:32 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48229         * lib/irb/ruby-lex.rb (RubyLex::identify_identifier): support
48230           'class ::Foo' syntax. [ruby-talk:83514]
48232 Fri Oct  3 08:01:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48234         * lib/test/unit/assertions.rb: added a default message for #assert,
48235           #assert_block, and #flunk.
48237         * test/testunit/test_assertions.rb: ditto.
48239         * lib/test/unit/failure.rb: failures now show a better trace of where
48240           they occurred.
48242         * test/testunit/test_failure.rb: ditto (added).
48244         * lib/test/unit/testcase.rb: ditto.
48246         * test/testunit/test_testcase.rb: ditto.
48248         * lib/test/unit/util/backtracefilter.rb: added.
48250         * test/testunit/util/test_backtracefilter.rb: added.
48252         * lib/test/unit/error.rb: changed to use BacktraceFilter and improved
48253           output.
48255         * test/testunit/test_error.rb: ditto.
48257 Thu Oct  2 20:33:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48259         * ext/iconv/iconv.c (iconv_failure_initialize): conform with
48260           orthodox initialization method.
48262         * ext/iconv/iconv.c (iconv_fail): initialize exception instance
48263           from the class, and do not share instance variables with the
48264           others.  [ruby-dev:21470]
48266 Thu Oct  2 18:20:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48268         * time.c (Init_Time): define initialize.  [ruby-dev:21469]
48270 Thu Oct  2 17:39:38 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48272         * ext/openssl/ossl_engine.c: add a new module OpenSSL::Engine.
48273           it supports OpenSSL hardware cryptographic engine interface.
48275         * ext/openssl/ossl_engine.h: ditto.
48277         * ext/openssl/MANIFEST: add ossl_engine.c and ossl_engine.h.
48279         * ext/openssl/extconf.rb: add check for openssl/engine.h.
48281         * ext/openssl/ossl.c: call Init_ossl_engine().
48283         * ext/openssl/ossl.h: include openssl/engine.h.
48285         * ext/openssl/ossl_pkey_{rsa,dsa,dh}.c: check if underlying
48286           EVP_PKEY referes engine.
48288 Thu Oct  2 17:22:37 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48290         * time.c (time_load): restore instance variables (if any) before
48291           loading from marshaled data.
48293 Thu Oct  2 14:19:15 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48295         * ext/iconv/iconv.c (iconv_fail): now yield erred substring, and
48296           set error object to $!.
48298         * ext/iconv/iconv.c (iconv_convert): error handler block should
48299           return appended part and the rest.  if rest is nil, the
48300           conversion stops.
48302 Thu Oct  2 12:00:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48304         * variable.c (rb_const_defined_0): look up constants in Object as
48305           well.  [ruby-dev:21458]
48307         * test/ruby/test_defined.rb (TestDefined::test_defined): test for
48308           constants.
48310 Thu Oct  2 11:17:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48312         * lib/test/unit/assertions.rb: should not capture an
48313           AssertionFailedError unless explicitly requested.
48315         * test/testunit/test_assertions.rb: ditto.
48317         * test/testunit/collector/test_objectspace.rb: fixed a test failure
48318           caused by methods being returned in different orders on different
48319           platforms by moving test sorting from TestSuite into the locations
48320           where suites are constructed. [ruby-talk:83156]
48322         * lib/test/unit/testcase.rb: ditto.
48324         * lib/test/unit/testsuite.rb: ditto.
48326         * lib/test/unit/collector/objectspace.rb: ditto.
48328 Thu Oct  2 03:25:01 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48330         * eval.c (rb_thread_raise): prototype; avoid VC++ warning.
48332 Thu Oct  2 01:37:34 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48334         * time.c (time_mdump): new marshal dumper. _dump is still
48335           available for compatibility.
48337         * time.c (time_mload): new marshal loader.
48339         * marshal.c (w_object): preserve instance variables for objects
48340           with marshal_dump.
48342         * marshal.c (r_object0): restore instance variables before calling
48343           marshal_load.
48345         * error.c (rb_warn_m): always return nil.
48347 Thu Oct  2 01:32:46 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48349         * eval.c (rb_f_block_given_p): real required condition is
48350           ruby_frame->prev->iter == ITER_CUR.
48352         * eval.c (rb_block_given_p): ditto.
48354         * eval.c (block_pass): update ruby_frame->iter only when previous
48355           value is ITER_NOT.
48357 Thu Oct  2 01:02:35 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48359         * variable.c (rb_const_defined_at): should exclude constants from
48360           Object when TYPE(klass) == T_MODULE *and* exclude is on.
48361           [ruby-dev:21458]
48363         * variable.c (rb_const_get_0): do not lookup constants from Object
48364           when TYPE(klass) == T_MODULE *and* exclude is on.
48366 Thu Oct  2 00:21:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48368         * test/logger/test_logger.rb: unlinking file before close causes
48369           problem under win32 box.
48371         * lib/xsd/datatypes.rb(XSDFloat, XSDDouble): add +/- sign explicitly
48372           when stringified and embedded into XML instance.  Ruby's sprintf may
48373           format -0.0 as "0.0" (no minus sign) depending on underlying C
48374           sprintf implementation.
48376         * test/xsd/test_xsd.rb, test/soap/test_basetype.rb: follow above change.
48378         * test/soap/calc/*: give httpd config param "CGIInterpreter".
48379           "/usr/bin/env ruby" thing does not work under non-Unix boxes.
48381 Thu Oct  2 00:25:21 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48383         * signal.c (ruby_signal_name): adjust to the prototype.
48385         * process.c (pst_inspect): ditto.
48387         * ext/etc/etc.c (etc_getgrent, Init_etc): typo.
48389 Wed Oct  1 20:49:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48391         * gc.c (heaps): manage slots and limits together.  [ruby-dev:21453]
48393         * gc.c (add_heap): should not clear heaps slot even if realloc()
48394           failed.
48396 Wed Oct  1 20:36:49 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48398         * MANIFEST: add wince/mkconfig_wce.rb.
48400 Wed Oct  1 17:22:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48402         * ext/etc/etc.c: add new functions: setpwent, getpwent, endpwent,
48403           setgrent, getgrent, endgrent.
48405         * ext/socket/socket.c (sock_s_gethostbyname): do not reverse lookup.
48407 Wed Oct  1 17:01:30 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48409         * eval.c (rb_load): Object scope had priority over required file
48410           scope.  [ruby-dev:21415]
48412 Wed Oct  1 14:09:53 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48414         * wince/mkconfig_wce.rb: sorry, forget to commit.
48416 Wed Oct  1 10:08:42 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48418         * wince/setup.mak: add sigmarionIII SDK support.
48420         * wince/Makefile.sub: ditto.
48422         * wince/mkexports.rb: fix linker error in SH4.
48424         * wince/mkconfig_wce.rb: camouflage RUBY_PLATFORM for compiling ext.
48426 Wed Oct  1 08:02:52 2003  Takaaki Uematsu  <uema2x@jcom.home.ne.jp>
48428         * wince/time_wce.c (time): add zero check.
48430 Tue Sep 30 16:11:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48432         * Makefile.in: copy lex.c from $(srcdir) if it's not the current
48433           directory.  [ruby-dev:21437]
48435 Tue Sep 30 11:29:23 2003  Tanaka Akira  <akr@m17n.org>
48437         * process.c (pst_inspect): describe stopped process "stopped".
48439 Tue Sep 30 09:31:56 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48441         * test/runner.rb: glob for directories.
48443 Tue Sep 30 09:11:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48445         * eval.c (rb_eval): while/until should not capture break unless
48446           they are destination of the break.
48448 Tue Sep 30 03:12:02 2003  Minero Aoki  <aamine@loveruby.net>
48450         * lib/net/http.rb (finish): revert to 1.93.
48452         * lib/net/pop.rb (finish): revert to 1.60.
48454         * lib/net/smtp.rb (finish): revert to 1.67.
48456         * lib/net/http.rb (do_start): ensure to close socket if failed to
48457           start session.
48459         * lib/net/pop.rb (do_start): ditto.
48461         * lib/net/smtp.rb (do_start): ditto.
48463         * lib/net/smtp.rb: SMTP#started? wrongly returned false always.
48465 Tue Sep 30 02:54:49 2003  Minero Aoki  <aamine@loveruby.net>
48467         * test/ruby/test_iterator.rb: new test
48468           test_break__nested_loop[123].
48470 Mon Sep 29 23:39:13 2003  Minero Aoki  <aamine@loveruby.net>
48472         * lib/net/http.rb (finish): does not raise IOError even if
48473           !started?, to allow closing socket which was opened before
48474           session started.
48476         * lib/net/pop.rb (finish): ditto.
48478         * lib/net/smtp.rb (finish): ditto.
48480 Mon Sep 29 19:06:51 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48482         * ext/win32ole/extconf.rb: add windows.h checking.
48483           (ruby-bugs:PR#1185)
48485 Mon Sep 29 16:18:30 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48487         * lib/logger.rb: check if the given logdevice object respond_to :write
48488           and :close, not is_a? IO.  duck duck.
48490         * test/logger/test_logger.rb: self IO.pipe reading/writing may be
48491           locked by the flood.  use tempfile.
48493         * lib/wsdl/xmlSchema/data.rb: wrong constant reference.
48495 Mon Sep 29 16:11:23 2003  Minero Aoki  <aamine@loveruby.net>
48497         * test/fileutils/test_fileutils.rb: clean up temporary symlink.
48498           Patched by NaHi.  [ruby-dev:21420]
48500 Mon Sep 29 11:16:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48502         * eval.c (rb_thread_atfork): wrong format specifier.
48503           [ruby-dev:21428]
48505         * process.c (pst_inspect): better description.
48507 Mon Sep 29 02:31:44 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48509         * lib/webrick/utils.rb (Utils::su): use setgid and setuid to
48510           set real and effective IDs. and setup group access list by
48511           initgroups.
48513 Sun Sep 28 11:14:19 2003  Koji Arai  <jca02266@nifty.ne.jp>
48515         * ext/digest/digest.c (Init_digest): `copy_object' was deprecated.
48516           `initialize_copy' should be defined.
48518         * ext/stringio/stringio.c (Init_stringio): ditto.
48520 Sat Sep 27 18:25:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48522         * lib/xsd/charset.rb: XSD::Charset.is_ces did return always true under
48523           $KCODE = "NONE" environment.  check added.
48525         * test/xsd/test_xsd.rb: add tests for above fix.
48527 Sat Sep 27 15:58:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48529         * lib/soap/rpc/cgistub.rb: make logging severity threshold higher.
48531         * lib/soap/rpc/standaloneServer.rb: defer WEBrick server start to give
48532           a chance to reset logging severity threshold.
48534         * test/soap/calc/test_*, test/soap/helloworld/test_helloworld.rb: run
48535           silent.
48537 Sat Sep 27 09:44:18 2003  Minero Aoki  <aamine@loveruby.net>
48539         * test/fileutils/test_fileutils.rb: clear all errors on Windows.
48540           [ruby-dev:21417]
48542         * test/fileutils/test_nowrite.rb: ditto.
48544 Sat Sep 27 04:57:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48546         * test/ruby/test_file.rb: new file.  only asserts unlink-before-close
48547           behaviour now.
48549         * test/soap/marshal/test_digraph.rb: should close before unlink.
48550           unlink-before-close pattern is not needed here.
48552 Sat Sep 27 03:32:37 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48554         * test/soap/*, test/wsdl/*, test/xsd/*: move TestCase classes into
48555           each module namespace.  TestMarshal in
48556           test/soap/marshal/test_marshal.rb crashed with
48557           test/ruby/test_marshal.rb.
48559 Sat Sep 27 01:30:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48561         * ext/socket/socket.c (ruby_connect): on win32, type of the 4th
48562           argument of getsockopt is char *.
48564 Fri Sep 26 18:35:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48566         * lib/resolv-replace.rb: 1.8 compliance.  [ruby-talk:82946]
48568 Fri Sep 26 17:39:27 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48570         * test/ruby/test_marshal.rb: add test for ruby's objects.
48572 Fri Sep 26 09:52:44 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48574         * defines.h (flush_register_windows): use volatile only for gcc on
48575           Solaris.  [ruby-dev:21403]
48577         * lib/mkmf.rb (xsystem): use system directly to honor shell meta
48578           charaters.
48580 Fri Sep 26 00:10:13 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48582         * lib/README: updated.
48584 Thu Sep 25 17:48:10 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48586         * ext/openssl/ossl.c (ossl_buf2str): fix type of 1st argument for
48587           rb_protect.
48589         * ext/openssl/ossl_hmac.c (ossl_hmac_digest): should return meaningful
48590           value.
48592 Thu Sep 25 09:00:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48594         * lib/ostruct.rb: Added OpenStruct#==.
48596         * test/ostruct/test_ostruct.rb: Added.
48598 Thu Sep 25 07:55:26 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48600         * ext/win32ole/win32ole.c, ext/openssl/ossl_pkey_dsa.c,
48601           ext/openssl/ossl_pkey_rsa.c, ext/bigdecimal/bigdecimal.h: must
48602           not use C++ or C99 style comment yet.  (ruby-bugs:PR#1184)
48604 Thu Sep 25 00:23:22 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48606         * MANIFEST: add SOAP4R.
48608 Thu Sep 25 00:13:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48610         * lib/soap/* (29 files): SOAP4R added.
48612         * lib/wsdl/* (42 files): WSDL4R added.
48614         * lib/xsd/* (12 files): XSD4R added.
48616         * test/soap/* (16 files): added.
48618         * test/wsdl/* (2 files): added.
48620         * test/xsd/* (3 files): added.
48622         * sample/soap/* (27 files): added.
48624         * sample/wsdl/* (13 files): added.
48626 Wed Sep 24 02:08:11 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48628         * lib/webrick/httpservlet/cgihandler.rb: conform to mswin32.
48629           [ruby-talk:82735], [ruby-talk:82748], [ruby-talk:82818]
48631 Tue Sep 23 23:10:16 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48633         * lib/logger.rb: add Logger#<<(msg) for writing msg without any
48634           formatting.
48636         * test/logger/test_logger.rb: ditto.
48638 Tue Sep 23 20:47:51 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48640         * error.c (rb_warn_m): should not warn if -W0 is specified.
48641           [ruby-talk:82675]
48643 Mon Sep 22 21:28:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48645         * MANIFEST: updated.
48647 Mon Sep 22 19:22:26 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48649         * configure.in (AC_CHECK_FUNCS): add setuid and setgid.
48651 Mon Sep 22 12:34:55 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48653         * util.c (ruby_strtod): skip preceding zeros before counting
48654           digits in the mantissa. (ruby-bugs:PR#1181)
48656 Sun Sep 21 04:12:36 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48658         * ext/openssl/ossl_ocsp.c (ossl_ocspreq_initialize): the argument
48659           should be a String.
48661         * ext/openssl/ossl_ocsp.c (ossl_ocspres_initialize): ditt.
48663         * ext/openssl/ossl_x509attr.c (ossl_x509attr_initialize): ditto.
48665         * ext/openssl/ossl_x509ext.c (ossl_x509ext_initialize): ditto.
48667         * ext/openssl/ossl_x509ext.c (ossl_x509ext_set_value): ditto.
48669 Sat Sep 20 11:49:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48671         * lib/logger.rb: typo fixed.
48673         * test/logger/test_logger.rb: new file.
48675 Fri Sep 19 11:39:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
48677         * test/testunit/*: Added.
48679         * lib/test/unit.rb: Documentation update.
48681         * lib/test/unit/ui/console/testrunner.rb (TestRunner#initialize):
48682           Ditto.
48684         * lib/test/unit.rb: Factored out an ObjectSpace collector.
48686         * lib/test/unit/collector/objectspace.rb: Ditto.
48688         * sample/testunit/*: Added.
48690 Fri Sep 19 01:00:48 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48692         * lib/webrick/log.rb (BasicLog#log): get rid of as ineffectual
48693           condition.
48695         * lib/webrick/log.rb (BasicLog#format): add "\n" to message.
48697 Thu Sep 18 22:43:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48699         * eval.c (proc_invoke): should push PROT_PCALL tag for orphans.
48701         * eval.c (proc_invoke): should update "result" for orphans.
48703 Thu Sep 18 20:33:03 2003  Tietew  <tietew-ml-ruby-list@tietew.net>
48705         * parse.y (str_xquote): do not prepend escapes in
48706           backqoute literals.  [ruby-list:38409]
48708 Thu Sep 18 20:30:17 2003  Tanaka Akira  <akr@m17n.org>
48710         * lib/pathname.rb: update document.
48712 Thu Sep 18 15:27:05 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48714         * lib/logger.rb: new file.  Logger, formerly called devel-logger or
48715           Devel::Logger.
48717         * sample/logger/*: new file.  samples of logger.rb.
48719 Wed Sep 17 23:41:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48721         * eval.c (localjump_destination): should not raise ThreadError
48722           exception for "break". [ruby-dev:21348]
48724         * eval.c (proc_invoke): use result instead of prot_tag->retval.
48725           retval is no longer propagated to the ancestors.
48727 Wed Sep 17 20:34:00 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48729         * parse.y (tokadd_string, parse_string, yylex): escaped terminator
48730           is now interpreted as is.  [ruby-talk:82206]
48732 Wed Sep 17 18:52:36 2003  Minero Aoki  <aamine@loveruby.net>
48734         * test/fileutils/fileassertions.rb: new file.
48736         * test/fileutils/test_fileutils.rb: new file.
48738         * test/fileutils/test_nowrite.rb: new file.
48740 Wed Sep 17 18:51:02 2003  Minero Aoki  <aamine@loveruby.net>
48742         * test/strscan/test_stringscanner.rb: require test/unit.
48744 Wed Sep 17 18:35:34 2003  Minero Aoki  <aamine@loveruby.net>
48746         * test/strscan/test_stringscanner.rb: new file.
48748 Wed Sep 17 18:03:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48750         * ext/openssl: all files are reviewed to simplify and avoid memory leak.
48752         * ext/openssl/extconf.rb: add check for assert.h.
48754         * ext/openssl/ossl.c (ossl_buf2str): new function to convert
48755           C buffer to String and free buffer.
48757         * ext/openssl/ossl.c (ossl_x509_ary2sk): new function to convert
48758           Array of OpenSSL::X509 to STACK_OF(X509) with exception safe.
48760         * ext/openssl/ossl.c (ossl_to_der, ossl_to_der_if_possible): new
48761           functions to convert object to DER string.
48763         * ext/openssl/ossl.h: ditto.
48765         * ext/openssl/ossl_bio.c (ossl_membio2str): new function to convert
48766           BIO to String object and free BIO.
48768         * ext/openssl/ossl_bio.h: ditto.
48770         * ext/openssl/ossl_pkcs7.c (ossl_pkcs7_to_der): add for "to_der".
48772         * ext/openssl/ossl_x509name.c (ossl_x509name_to_der): ditto.
48774         * ext/openssl/ossl_x509ext.c (ossl_x509ext_to_der): ditto.
48776         * ext/openssl/ossl_x509ext.c (create_ext_from_array): removed
48777           and reimplement in openssl/x509.rb.
48779         * ext/openssl/ossl_x509attr.c: reimplemented and disable some
48780           method temporarily. this class doesn't work fine without ASN.1
48781           data support;-) I'll rewrite in near future.
48783         * ext/openssl/lib/openssl/x509.c (X509::Attribute): get rid off
48784           unused code.
48786         * ext/openssl/lib/openssl/x509.c (X509::ExtensionFactory): refine all.
48788 Tue Sep 16 22:25:06 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48790         * test/csv/test_csv.rb: add negative tests of row_sep.
48792 Tue Sep 16 18:02:36 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48794         * regex.c (re_compile_pattern): should not translate character
48795           class range edge. [ruby-list:38393]
48797 Tue Sep 16 16:47:56 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
48799         * MANIFEST: add test/csv/mac.csv.
48801         * win32/Makefile.sub, bcc32/Makefile.sub (test): add phony NUL target.
48803 Mon Sep 15 19:02:52 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48805         * lib/csv.rb: add extra pamameter to specify row(record) separater
48806           character.  To parse Mac's CR separated CSV, do like this.
48807             CSV.open("mac.csv", "r", ?,, ?\r) { |row| p row.to_a }
48808           The 3rd parameter in this example ?, is for column separater and the
48809           4th ?\r is for row separater.  Row separater is nil by default.  Nil
48810           separater means "\r\n" or "\n".
48812         * test/csv/test_csv.rb: add tests for above feature.
48814         * test/csv/mac.csv: added.  Sample CR separated CSV file.
48816 Fri Sep 12 22:41:48 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
48818         * ext/openssl/ossl.c: move ASN.1 stuff to ossl_asn1.[ch]
48820         * ext/openssl/ossl.c: move BIO stuff to ossl_bio.[ch]
48822         * ext/openssl/ossl_asn1.[ch]: new files
48824         * ext/openssl/ossl_bio.[ch]: new files
48826 Fri Sep 12 12:30:41 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48828         * intern.h (rb_disable_super, rb_enable_super): replace with dummy
48829           expressions instead of prototypes.  the functions remain yet for
48830           binary compatibility.  [ruby-talk:81758]
48832 Fri Sep 12 12:09:54 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48834         * bignum.c (rb_big_and): convert argument using 'to_int'.
48836         * bignum.c (rb_big_or): ditto.
48838         * bignum.c (rb_big_xor): ditto.
48840 Fri Sep 12 07:06:14 2003  David Black  <dblack@superlink.net>
48842         * lib/scanf.rb: Took out useless @matched_item variable; some small
48843           refactoring.
48845 Thu Sep 11 08:43:44 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
48847         * eval.c (rb_f_require): allow "require" on $SAFE>0, if feature
48848           name is not tainted.
48850         * lib/rexml/parsers/baseparser.rb (REXML::Parsers::BaseParser::stream):
48851           Supports StringIO.
48853 Wed Sep 10 22:47:30 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48855         * ext/openssl/ossl.h: add a workaround for win32 platform.
48856           libeay32.dll doesn't export functions defined in conf_api.h.
48858         * ext/openssl/ossl_config.c (ossl_config_initialize): ditto.
48860         * ext/openssl/ossl_config.c (ossl_config_add_value): ditto.
48862         * ext/openssl/ossl_config.c (set_conf_section_i): should check
48863           if the argument is Array.
48865 Wed Sep 10 22:41:54 2003  Tietew  <tietew@tietew.net>
48867         * eval.c (win32_get_exception_list): avoid VC7 warning.
48868           [ruby-win32:577]
48870 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48872         * eval.c (struct tag): dst should be VALUE.
48874 Tue Sep  9 10:39:51 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48876         * eval.c (localjump_destination): stop at the scope where the current
48877           block was created.  [ruby-dev:21353]
48879 Tue Sep  9 05:17:04 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48881         * ext/openssl/ossl_config.rb: avoid compile error in OpenSSL-0.9.6.
48883 Tue Sep  9 02:41:35 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
48885         * ext/openssl/ossl_config.c: Refine compatibility.
48887 Tue Sep  9 01:50:45 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48889         * lib/webrick/httpserver.rb (HTTPServer#access_log): add "\n" to
48890           the message.
48892         * lib/webrick/log.rb (BasicLog#log): add "\n" only if needed.
48894 Mon Sep  8 22:15:33 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
48896         * ext/tk/lib/multi-tk.rb: modify security check at creating
48897           a new interpreter
48899 Mon Sep  8 20:00:12 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
48901         * lib/optparse.rb, lib/optparse/version.rb: search also all
48902           capital versions.
48904 Mon Sep  8 19:26:33 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48906         * ext/openssl/ossl.h: include openssl/conf.h and openssl/conf_api.h.
48908         * ext/openssl/ossl_config.c: refine all with backward compatibility.
48910         * ext/openssl/ossl_config.h: export GetConfigPtr() and DupConfigPtr().
48912         * ext/openssl/ossl_x509.c: added new constants under X509 module.
48913           DEFAULT_CERT_AREA, DEFAULT_CERT_DIR, DEFAULT_CERT_FILE,
48914           DEFAULT_CERT_DIR_ENV, DEFAULT_CERT_FILE_ENV and DEFAULT_PRIVATE_DIR.
48916         * ext/openssl/ossl_x509ext.c (ossl_x509extfactory_free): don't free
48917           the members of the struct. it's left to GC.
48919         * ext/openssl/ossl_x509ext.c (ossl_x509_set_config): add for config=.
48921         * ext/openssl/ossl_x509ext.c (Xossl_x509extfactory_initialize):
48922           add attr readers: issuer_certificate, subject_certificate,
48923           subject_request, crl and config.
48925 Mon Sep  8 18:26:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48927         * lib/webrick/accesslog.rb (AccessLog::setup_params): use req.port
48928           instead of config[:Port] or req.request_uri.port.
48930         * lib/webrick/httprequest.rb (HTTPRequest#meta_vars): ditto.
48932         * lib/webrick/httpservlet/filehandler.rb (FileHandler#dir_list): ditto.
48934         * lib/webrick/config.rb: :Listen option never be used.
48936         * lib/webrick/server.rb (GenericServer#initialize): don't use :Listen
48937           option and add warning message.
48939         * lib/webrick/log.rb (BasicLog#<<): shortcut of log(INFO, ...).
48941         * lib/webrick/httpserver.rb (HTTPServer#accesslog): use << for logging.
48943 Sun Sep  7 16:08:28 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
48945         * ext/tcltklib/tcltklib.c (lib_mainloop_core): fixed signal-trap bug
48947         * ext/tk/lib/*.rb: Ruby/Tk works at $SAFE == 4
48949 Sat Sep  6 02:26:34 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
48951         * test/ruby/test_*.rb: assert_same, assert_match, and so on.
48953 Sat Sep  6 18:45:46 2003  Mauricio Fernandez  <batsman.geo@yahoo.com>
48955         * parse.y (assignable): call rb_compile_error(), not rb_bug().
48956           [ruby-core:01523]
48958 Sat Sep  6 17:40:41 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
48960         * ext/openssl/ruby_missing.c: rid of unnecessary backward
48961           compatibility stuff. and remove DEFINE_ALLOC_WRAPPER from
48962           all sources.
48964         * ext/openssl/ossl_x509ext.c (X509::Extension.new): new method.
48966         * ext/openssl/ossl_x509ext.c (X509::Extension#oid=): new method.
48968         * ext/openssl/ossl_x509ext.c (X509::Extension#value=): new method.
48970         * ext/openssl/ossl_x509ext.c (X509::Extension#critical=): new method.
48972 Sat Sep  6 01:23:22 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
48974         * win32/win32.c (CreateChild): need to quote cmd if RUBYSHELL is set.
48976         * win32/win32.c (CreateChild): fix condition about whether to call
48977           shell or not.
48979 Sat Sep  6 00:36:20 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
48981         * Makefile.in (test): phony target.
48983         * lib/mkmf.rb (have_library, find_library): configure by library
48984           name.
48986         * lib/optparse.rb (OptionParser#order, #permute, #parse): allow an
48987           array as argument.
48989         * test/ruby/test_*.rb: moved invariants to left side in
48990           assert_equal, and use assert_nil, assert_raises and so on.
48992         * win32/win32.c (isInternalCmd): distinguish command.com and
48993           cmd.exe.
48995         * win32/win32.c (make_cmdvector): a character just after wildcard
48996           was ignored.  [ruby-core:01518]
48998 Fri Sep  5 20:27:08 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49000         * test/ruby/test_*.rb: replace 'assert(a == b)' with assert_equal(a, b)'
49002 Fri Sep  5 18:00:51 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49004         * ext/openssl/lib/openssl/x509.rb: new method X509::Name::parse.
49006         * ext/openssl/ossl_digest.c: add ossl_digest_new().
49008         * ext/openssl/ossl_digest.h: ditto.
49010         * ext/openssl/ossl_cipher.c: add ossl_cipher_new().
49012         * ext/openssl/ossl_cipher.h: ditto.
49014 Fri Sep  5 15:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49016         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): should not
49017           search delimiter forward if found in backward.
49019 Fri Sep  5 13:32:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49021         * test/runner.rb: arguments should be keys.
49023 Fri Sep  5 12:09:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49025         * test/ruby/test_system.rb (test_system): check existence of ruby
49026           interpreter.
49028 Fri Sep  5 11:32:17 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49030         * lib/optparse.rb (--version): fix assignment/reference order.
49032         * lib/optparse.rb (OptionParser#help): new; OptionParser#to_s may
49033           be deprecated in future.
49035         * lib/optparse/version.rb (OptionParser#show_version): hide Object.
49037         * test/runner.rb: fix optparse usage.
49039         * test/runner.rb: glob all testsuits if no tests given.
49041 Fri Sep  5 10:42:58 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49043         * test/runner.rb: added.  gets testcases from command line and runs it.
49045         * test/ruby/test_gc.rb: remove useless part which was for dumping test
49046           result.
49048 Fri Sep  5 09:28:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49050         * test/ruby/test_gc.rb: added.  splitter.rb which I made to split
49051           sample/test.rb into test/ruby/test_* kindly removed GC test (the
49052           last section in the original test) to reduce things to be worried.
49054 Fri Sep  5 03:00:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49056         * test/ruby/test_iterator.rb (test_block_in_arg): add no block
49057           given tests.
49059         * test/ruby/test_iterator.rb (test_ljump): uncomment LocalJumpError
49060           test.
49062 Fri Sep  5 01:10:11 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49064         * test/ruby: tests for ruby itself.
49066         * test/ruby/test_*.rb: split sample/test.rb into 28 test/unit testcases.
49067           some tests could not be translates...  search '!!' mark to see it.
49069         * test/csv/test_csv.rb: should require 'csv', not '../lib/csv'.  test
49070           runner should set load path correctly.
49072 Fri Sep  5 01:03:59 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49074         * test/csv/test_csv.rb: close opened files for CSV::IOBuf explicitly.
49075           opened file cannot be removed under win32 box.
49077 Thu Sep  4 23:59:40 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49079         * parse.y (tokadd_string): newlines have no special meanings in
49080           %w/%W, otherwise they are ignored only when interpolation is
49081           enabled.  [ruby-dev:21325]
49083 Thu Sep  4 19:38:25 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49085         * ext/io/wait/.cvsignore: added.
49087         * ext/openssl/.cvsignore: added.
49089 Thu Sep  4 19:28:24 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49091         * sample/openssl: added.  Sample of standard distribution library
49092           should be locate in sample/{module_name}/*.
49094         * ext/openssl/sample/*: removed.  move to sample/openssl/*.
49096 Thu Sep  4 18:02:15 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49098         * test/csv/test_csv.rb: use remove_const to reduce warnings.  use
49099           Dir.tmpdir to locate working files.
49101 Thu Sep  4 17:41:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49103         * misc/ruby-mode.el (ruby-here-doc-beg-re): underscore also is
49104           valid delimiter.
49106         * misc/ruby-mode.el (ruby-here-doc-end-match): must quote
49107           arbitrary string to use as regexp.
49109         * misc/ruby-mode.el (ruby-font-lock-maybe-here-docs): must not
49110           call `ruby-here-doc-end-match' unless `ruby-here-doc-beg-re'
49111           matched.
49113 Thu Sep  4 15:40:07 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49115         * test/csv/test_csv.rb: run on test/unit original layer.
49117 Thu Sep  4 12:54:50 2003  why the lucky stiff  <why@ruby-lang.org>
49119         * ext/syck/token.c: headerless documents with root-level spacing now
49120           honored.
49122 Thu Sep  4 00:06:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49124         * eval.c (mark_frame_adj): need to adjust argv pointer if using
49125           system's alloca. [ruby-core:01503]
49127 Wed Sep  3 21:33:20 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49129         * test: add test directory.  Test::Unit aware testcases and needed
49130           files should be located in this directory.  dir/file name convention;
49131             test/{module_name}/test_{testcase_name}.rb
49132             test/{module_name}/{needed_files}
49133           someday, someone will write testrunner which searches test_*.rb and
49134           run testcases automatically.
49136         * test/csv/*: add testcase for lib/csv.rb.
49138 Wed Sep  3 01:37:09 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49140         * io.c (rb_f_gets): should call next_argv() before type check
49141           current_file. [ruby-list:38336]
49143 Tue Sep  2 20:37:15 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49145         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): warning
49146           for skipping server verification.
49148 Tue Sep  2 23:36:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49150         * eval.c (proc_invoke): should retrieve retval when pcall is true.
49152 Tue Sep  2 14:09:20 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49154         * ext/socket/extconf.rb: check s6_addr8 in in6_addr (Tru64 UNIX).
49155           the patch is submitted by nmu <nmu@users.sourceforge.jp>.
49157         * ext/socket/getaddrinfo.c (getaddrinfo): should use in6_addr8 on
49158           some platforms.
49160         * ext/socket/getnameinfo.c (getnameinfo): ditto.
49162 Tue Sep  2 14:02:19 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49164         * ext/tcltklib/tcltklib.c (ip_invoke): fixed bug on passing a exception
49166         * ext/tk/lib/{tk.rb, tkcanvas.rb, tkfont.rb, tktext.rb}:
49167           bug fix and improvement of font control
49169 Tue Sep  2 09:51:36 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49171         * eval.c (rb_eval): should not handle exceptions within rescue
49172           argument.  [ruby-talk:80804]
49174 Tue Sep  2 00:44:37 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49176         * re.c (rb_memsearch): fix overrun.  [ruby-talk:80759]
49178 Tue Sep  2 00:41:27 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49180         * ext/iconv/iconv.c (map_charset): use lower case keys.
49182         * ext/iconv/iconv.c (iconv_fail): just yield error and return the
49183           result if a block is given.
49185         * ext/iconv/iconv.c (iconv_convert): yield error and append the
49186           result if a block is given.
49188         * ext/iconv/charset_alias.rb (charset_alias): optional third
49189           argument.
49191         * ext/iconv/charset_alias.rb (charset_alias): use CP932 instead of
49192           SHIFT_JIS on cygwin.
49194 Mon Sep  1 18:34:25 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49196         * eval.c (rb_eval): make tail recursion in ELSE clause of
49197           RESCUE a jump.
49199 Mon Sep  1 18:00:02 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49201         * parse.y (aref_args): forgot to call NEW_SPLAT(). reported by
49202           Dave Butcher.
49204         * eval.c (Init_Thread): protect thgroup_default.  suggested by Guy
49205           Decoux in [ruby-talk:80623]
49207 Mon Sep  1 16:59:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49209         * eval.c (rb_thread_switch): add RESTORE_EXIT; exit by another
49210           thread termination.
49212         * eval.c (rb_thread_start_0): should not error_print() within
49213           terminated thread, because $stderr used by it might be
49214           overriden now.  [ruby-dev:21280]
49216 Sun Aug 31 22:46:55 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49218         * eval.c (TAG_DST()): take no argument.
49220         * process.c (p_gid_sw_ensure): return VALUE.
49222 Sun Aug 31 22:27:10 2003  Hidetoshi NAGAI  <nagai@dumbo.ai.kyutech.ac.jp>
49224         * process.c (p_gid_sw_ensure): lack of function type
49226 Sun Aug 31 12:25:06 2003  Nobuyoshi Nakada  <nobu.nokada@softhome.net>
49228         * lib/optparse.rb: --version takes an optional argument; "all" or
49229           a list of package names.
49231 Sun Aug 31 10:17:02 2003  Tadayoshi Funaba  <tadf@dotrb.org>
49233         * lib/date/format.rb: yyyy/mm is not an acceptable format.
49235         * lib/time.rb: follow above.
49237 Sat Aug 30 14:25:43 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49239         * eval.c (rb_iter_break): should not call TAG_JUMP directly.
49241 Sat Aug 30 03:58:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49243         * eval.c (struct BLOCK): remove BLOCKTAG, use scope instead.
49245         * eval.c (POP_TAG): no longer propagate retval.  retval is now set
49246           directly by localjump_destination().
49248         * eval.c (localjump_destination): new function to cast
49249           return/break local jump.
49251         * eval.c (rb_yield_0): stop TAG_RETURN/TAG_BREAK escaping.
49253 Fri Aug 29 22:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49255         * bigdecimal.c *.html: The 2nd arg. for add,sub,mult, and div is 0,
49256           then result will be the same as +,-,*,/ respectively.
49258 Fri Aug 29 17:30:15 2003  Hidetoshi NAGAI  <nagai@ai.kyutech.ac.jp>
49260         * process.c: bug fix
49262         * process.c: add rb_secure(2) to methods of Process::{UID,GID,Sys}
49264         * process.c: deny handling IDs during evaluating the block given to
49265           the Process::{UID,GID}.switch method
49267         * ext/tcltklib/tcltklib.c: some methods have no effect if on slave-IP
49269         * ext/tcltklib/tcltklib.c: can create a interpreter without Tk
49271         * ext/tcltklib/tcltklib.c: bug fix on handling exceptions
49273         * ext/tcltklib/MANUAL.euc: modify
49275         * ext/tk/lib/tk.rb: freeze some core modules
49277         * ext/tk/lib/multi-tk.rb: more secure
49279         * ext/tk/lib/tk.rb: TkVariable.new(array) --> treat the array as the
49280           Tk's list
49282         * ext/tk/lib/tk.rb: improve accessibility of TkVariable object
49284         * ext/tk/lib/tk.rb, ext/tk/lib/tkfont.rb, ext/tk/lib/tkcanvas.rb,
49285           ext/tk/lib/tktext.rb: fix bug of font handling
49287         * ext/tk/lib/tkfont.rb: TkFont.new() accepts compound fonts
49289 Thu Aug 28 22:07:12 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49291         * variable.c (rb_autoload_load): call const_missing if autoloading
49292           constant is not defined to allow hook.
49294         * eval.c (rb_eval): use rb_const_get_from() instead of
49295           rb_const_get_at().
49297         * eval.c (is_defined): forgot to check NODE_COLON3.
49299 Thu Aug 28 17:30:24 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49301         * variable.c (rb_const_get_0): should check constants defined in
49302           included modules, if klass is Object. [ruby-talk:79302]
49304         * numeric.c (check_uint): check should be done using UINT_MAX, not
49305           INT_MAX. this fix is submitted by Lyle Johnson
49306           <lyle@knology.net> in [ruby-core:01486]
49308 Thu Aug 28 05:02:52 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49310         * parse.y (singleton): typo fixed (ruby-bugs-ja:PR#562)
49312 Thu Aug 28 02:37:45 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49314         * eval.c (rb_eval): *a = [1,2] now assigns [[1,2]] to a.
49315           consistent with *a = [1], which set [[1]] to a.
49317         * node.h: merge NODE_RESTARY to NODE_SPLAT.
49319         * parse.y: rules simplified a bit by removing NODE_RESTARY.
49321         * sample/test.rb: updated for new assignment behavior.
49323 Wed Aug 27 22:33:24 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49325         * error.c (rb_bug): should not use other methods; this function is
49326           not for ordinary use.  [ruby-dev:21259]
49328 Wed Aug 27 15:07:57 2003  Minero Aoki  <aamine@loveruby.net>
49330         * lib/net/smtp.rb (check_response): AUTH CRAM-MD5 returns 334
49331           response. [ruby-list:38279]
49333 Wed Aug 27 05:10:15 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49335         * win32/win32.c (map_errno): support winsock error.
49337         * win32/win32.c (pipe_exec, CreateChild, poll_child_status, waitpid,
49338           kill, link, rb_w32_rename, unixtime_to_filetime, rb_w32_utime):
49339           pass errno to map_errno().
49341         * win32/win32.c (rb_w32_select, rb_w32_accept, rb_w32_bind,
49342           rb_w32_connect, rb_w32_getpeername, rb_w32_getsockname,
49343           rb_w32_getsockopt, rb_w32_ioctlsocket, rb_w32_listen, rb_w32_recv,
49344           rb_w32_recvfrom, rb_w32_send, rb_w32_sendto, rb_w32_setsockopt,
49345           rb_w32_shutdown, rb_w32_socket, rb_w32_gethostbyaddr,
49346           rb_w32_gethostbyname, rb_w32_gethostname, rb_w32_getprotobyname,
49347           rb_w32_getprotobynumber, rb_w32_getservbyname, rb_w32_getservbyport,
49348           rb_w32_fclose, rb_w32_close): use map_errno().
49350         * win32/win32.h: add winsock errors.
49352 Tue Aug 26 23:53:23 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49354         * lib/ostruct.rb (OpenStruct::method_missing): prohibit modifying
49355           frozen OpenStruct. [ruby-talk:80214]
49357 Tue Aug 26 20:03:50 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49359         * lib/mkmf.rb (create_tmpsrc): add the hook for source.
49360           [ruby-list:38122]
49362 Tue Aug 26 15:59:53 2003  why the lucky stiff  <why@ruby-lang.org>
49364         * implicit.c (syck_type_id_to_taguri): corrected detection of
49365           x-private types.
49367 Sun Aug 24 01:02:48 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49369         * file.c (file_expand_path): performance improvement.
49370           [ruby-talk:79748]
49372 Sat Aug 23 23:41:16 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49374         * file.c (rb_file_s_expand_path): avoid calling rb_scan_args() for
49375           apparent cases. [ruby-talk:79748]
49377 Sat Aug 23 18:56:53 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49379         * ext/nkf/nkf.c (rb_nkf_putchar): should use rb_str_resize() to just
49380           resize a string, rb_str_cat() disallows NULL.  [ruby-dev:21237]
49382 Sat Aug 23 16:48:41 2003  Keiju Ishitsuka  <keiju@ishitsuka.com>
49384         * lib/irb/ruby-lex.rb: bug fix for "foo" !~ /bar/. [ruby-talk:79942]
49386 Sat Aug 23 15:59:58 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49388         * eval.c (rb_eval, rb_iterate, block_pass): reduce PUSH/POP_TAG and
49389           EXEC_TAG() for retry.  [ruby-dev:21216]
49391 Sat Aug 23 02:32:33 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49393         * eval.c (rb_yield_splat): should check if "values" is array.
49395         * enum.c (each_with_index_i): typo.
49397 Fri Aug 22 17:07:05 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49399         * enum.c (inject_i): use rb_yield_values.
49401         * enum.c (each_with_index_i): ditto.
49403         * eval.c (rb_yield_splat): new function to call "yield *values".
49405         * string.c (rb_str_scan): use rb_yield_splat().
49407 Fri Aug 22 06:13:22 2003  why the lucky stiff  <why@ruby-lang.org>
49409         * ext/syck/rubyext.c: refactoring of the transfer method
49410           dispatch.  added yaml_org_handler for faster dispatch of
49411           transfers to base types.
49413         * lib/yaml/rubytypes.rb: removed handling of builtins from
49414           Ruby library.
49416         * ext/syck/token.c: quoted and block scalars are now implicit !str
49418         * ext/syck/implicit.c: empty string detected as !null.
49420 Fri Aug 22 01:00:31 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49422         * eval.c (block_pass): improve passing current block.
49424 Fri Aug 22 00:13:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49426         * ext/bigdecimal/bigdecimal.c: Int. overflow bug in multiplication
49427           fixed, and VpNmlz() speed up.
49429 Wed Aug 20 16:44:49 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49431         * ext/socket/socket.c (ruby_connect): many systems seem to have
49432           a problem in select() after EINPROGRESS.  [ruby-list:38080]
49434 Wed Aug 20 01:31:17 2003  why the lucky stiff  <why@ruby-lang.org>
49436         * ext/syck/syck.h: Parser definition problems on HP-UX.
49437           [ruby-talk:79389]
49439         * ext/syck/handler.c (syck_hdlr_get_anchor): Memory leak.
49441         * ext/syck/syck.s (syck_io_file_read): Bad arguments to fread.
49443         * ext/syck/rubyext.c: Tainting issues.
49445 Tue Aug 19 23:20:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49447         * ext/bigdecimal/bigdecimal.c .h .html: to_s("+") implemented.
49449         * ext/bigdecimal/lib/bigdecimal/math.rb: E implemented.
49451 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49453         * lib/webrick/ssl.rb: new file; SSL/TLS enhancement for GenericServer.
49455         * lib/webrick/https.rb: SSLSocket handling is moved to webrick/ssl.rb.
49457         * lib/webrick/compat.rb (File::fnmatch): remove old migration code.
49459         * lib/webrick/httpserver.rb (HTTPServer#run): ditto.
49461         * lib/webrick/server.rb (GenericServer#listen): the body of this
49462           method is pull out as Utils::create_lisnteners.
49464         * lib/webrick/utils.rb (Utils::create_lisnteners): new method.
49466         * lib/webrick/server.rb (GenericServer#start): should rescue
49467           unknown errors. and refine comments.
49469         * ext/openssl/lib/openssl/ssl.rb (SSLServer#accept): should close
49470           socket if SSLSocket raises error.
49472 Tue Aug 19 11:19:33 2003  Shugo Maeda  <shugo@ruby-lang.org>
49474         * io.c (next_argv): should not call GetOpenFile() if rb_stdout is
49475           not a IO (T_FILE).
49477 Tue Aug 19 07:47:09 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49479         * ext/openssl/ossl_ssl.c: sync_close is moved to SSLSocket as
49480           a builtin.
49482         * ext/openssl/lib/openssl/buffering.rb (Buffering#close): ditto.
49484         * ext/openssl/lib/openssl/buffering.rb (Buffering#puts): should
49485           add a return to the tails of each line.
49487         * ext/openssl/lib/openssl/ssl.rb: new class OpenSSL::SSL::SSLServer.
49489         * ext/openssl/lib/net/protocols.rb (SSLIO#ssl_connect): use sync_close.
49491         * ext/openssl/sample/echo_svr.rb: use SSLServer.
49493         * ext/openssl/sample/echo_cli.rb: add example of SSLSocket#sync_close.
49495 Tue Aug 19 01:24:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49497         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): Mac OS X standard
49498           headers are inconsistent at this macro.  [ruby-core:01432]
49500         * ext/curses/extconf.rb: check if _XOPEN_SOURCE_EXTENDED breaks.
49502         * ext/tcltklib/stubs.c: Status macro in X11/Xthreads.h bothers
49503           winspool.h
49505         * instruby.rb: make list at first instead of iterator.
49506           [ruby-talk:79347]
49508 Mon Aug 18 11:23:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49510         * dir.c (glob_helper): preserve raw order for **.
49512 Sun Aug 17 23:39:55 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49514         * ext/openssl/extconf.rb (HAVE_VA_ARGS_MACRO): need to compile.
49516 Sun Aug 17 17:10:03 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49518         * ext/openssl/lib/openssl/ssl.rb (SSLSocket#sync_close=): add a
49519           method to specify if the underlying IO will be closed in
49520           SSLSocket#close.
49522         * ext/openssl/lib/openssl/buffering.rb: add forwarders to
49523           setsockopt, getsockopt and fcntl.
49525         * ext/openssl/lib/net/protocols.rb: enable sync for SSLSocket.
49527 Sun Aug 17 11:32:04 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49529         * ext/extmk.rb (extmake): should not force to remake Makefile when
49530           installation and so on.
49532 Sat Aug 16 23:58:18 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49534         * marshal.c (w_symbol, w_object): get rid of warnings.
49536         * re.c (rb_memsearch): ditto.
49538         * time.c (time_dump): ditto.
49540         * ext/extmk.rb (extmake): not continue making when extconf.rb
49541           failed.
49543         * ext/openssl/extconf.rb: check __VA_ARGS__ macro more precisely.
49545         * ext/openssl/ossl.h: remove version.h dependency.
49547         * ext/openssl/ruby_missing.h: ditto.
49549         * lib/mkmf.rb (pkg_config): use --libs output except with
49550           only-L for other options.  [ruby-list:38099]
49552         * lib/mkmf.rb (create_makefile): separate rule for static
49553           library from shared object.
49555         * win32/Makefile.sub, bcc32/Makefile.sub, wince/Makefile.sub:
49556           define exec_prefix and libdir.
49558 Fri Aug 15 23:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49560         * ext/bigdecimal/bigdecimal.c .h: Bug in combination of limit & div
49561           method fixed.
49563         * ext/bigdecimal/lib/bigdecimal/math.rb: atan() & sqrt() added.
49565 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49567         * configure.in (HUGE_ST_INO): check whether struct stat.st_ino
49568           is larger than long.  [ruby-dev:21194]
49569           http://www.geocities.co.jp/SiliconValley-PaloAlto/1409/ruby/beos.html
49571         * error.c (syserr_eqq): errno might exceed Fixnum limit.
49573         * error.c (Init_Exception): moved base initialization from
49574           init_syserr().
49576         * inits.c (rb_call_inits): postpone initializing errnos until
49577           Bignum is available.
49579 Fri Aug 15 12:01:43 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49581         * ext/curses/curses.c (_XOPEN_SOURCE_EXTENDED): needed to let
49582           keyname() and so on be declared.
49584         * ext/curses/curses.c (curses_resizeterm, window_resize):
49585           arguments conflicted with macros in term.h.
49587         * ext/curses/curses.c (Curses module methods): ensure
49588           initialized.  [ruby-dev:21191]
49590 Fri Aug 15 02:08:53 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49592         * gc.c (id2ref): recycle check should be done by klass == 0.
49593           [ruby-core:01408]
49595 Fri Aug 15 01:34:23 2003  Michal Rokos  <m.rokos@sh.cvut.cz>
49597         * ext/openssl/ossl_pkey.c: move generate_cb here
49599         * ext/openssl/ossl_pkey_{dh|dsa|rsa}.c: adapt to this cb
49601         * ext/openssl/openssl_missing.[ch]: add (0.9.6x, x<j) missing BN funcs
49603         * ext/openssl/ossl_bn.c: use supplied funcs from openssl_missing.c
49605 Fri Aug 15 00:38:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49607         * ext/bigdecimal/bigdecimal.c: Bug in div method fixed.
49609         * ext/bigdecimal/lib/bigdecimal/math.rb: Newly added.
49611         * ext/bigdecimal/sample/pi.rb: Changed so as to use math.rb.
49613 Thu Aug 14 21:19:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49615         * eval.c (Init_Thread): Continuation#[] added.  [ruby-talk:79028]
49617 Thu Aug 14 20:03:34 2003  Masaki Suketa  <masaki.suketa@nifty.ne.jp>
49619         * ext/win32ole/win32ole.c (OLE_FREE): should not call
49620           ole_message_loop.
49622         * ext/win32ole/win32ole.c (ole_event_free): ditto.
49624         * ext/win32ole/win32ole.c (ole_initialize): stop calling
49625           OleUninitialize at exit.
49627 Thu Aug 14 11:27:37 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49629         * gc.c (rb_data_object_alloc): check type of 1st argument.
49630           [ruby-dev:21192]
49632 Thu Aug 14 00:21:14 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49634         * parse.y (mlhs_node): should allow "::Foo" (colon3) as lhs.
49636         * parse.y (lhs): ditto.
49638         * parse.y (yylex): should return tCOLON3 right after kCLASS.
49639           [ruby-talk:78918]
49641         * error.c (exc_initialize): was converting argument to string too
49642           eagerly.  Only check was needed. [ruby-talk:78958]
49644 Wed Aug 13 23:31:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49646         * ext/bigdecimal/bigdecimal.c .h .html: Ambiguity of
49647           BigDecimal::limit removed.
49649 Wed Aug 13 19:21:34 2003  Christian Neukirchen  <chneukirchen@yahoo.de>
49651         * lib/webrick/https.rb (HTTPServer#run): should set syncing-mode
49652           to SSLSocket. [ruby-talk:78919]
49654 Wed Aug 13 18:13:49 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49656         * eval.c (POP_BLOCK): turn on BLOCK_LEFT flag when leaving block.
49658         * eval.c (proc_invoke): unpack return/break destination when block
49659           is already left.
49661 Wed Aug 13 15:58:31 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49663         * object.c (rb_class_s_alloc): add function prototype to avoid VC++
49664           warning.
49666 Wed Aug 13 13:50:59 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49668         * ext/Win32API/Win32API.c (Win32API_initialize): should pass some
49669           class to first argument of Data_Wrap_Struct(). (ruby-bugs:PR#1109)
49671 Tue Aug 12 16:55:11 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49673         * Makefile.in: static link libraries to LIBRUBY_SO with static linked
49674           ext.  [ruby-dev:21157]
49676         * ext/extmk.rb (extmake): sort extension library initialization order.
49678         * ext/extmk.rb (extmake): compact $extlibs.
49680 Tue Aug 12 02:48:56 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49682         * eval.c (THREAD_SAVE_CONTEXT): should explicitly turn off the
49683           flag before calling getcontext(2).
49685         * eval.c (struct thread): add member to save backing store on
49686           IA64. (ruby-bugs PR1086)
49688         * eval.c (thread_mark): mark IA64 backing store region.
49690         * eval.c (thread_free): free saved IA64 backing store.
49692         * eval.c (rb_thread_save_context): save IA64 backing store as well.
49694         * eval.c (rb_thread_restore_context): restore IA64 backing store.
49696         * eval.c (THREAD_ALLOC): initialize IA64 members.
49698 Mon Aug 11 22:31:50 2003  NAKAMURA, Hiroshi  <nahi@ruby-lang.org>
49700         * lib/debug.rb(debug_command): inspection command should inspect
49701           resulting value even if it's nil.  [ruby-dev:21180] by OMAE, jun
49702           <jun66j5@ybb.ne.jp>.
49704         * lib/debug.rb(debug_command): incomplete regexp.
49706 Mon Aug 11 17:33:07 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49708         * eval.c (rb_call_super): do not use rb_block_given_p() for
49709           check. [ruby-talk:78656]
49711         * eval.c (BEGIN_CALLARGS): push ITER_NOT only when ITER_PRE.
49713 Sun Aug 10 10:43:05 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49715         * ext/openssl/lib/openssl/buffering.rb: increase BLOCK_SIZE
49716           from 1k to 16k bytes. [ruby-talk:78603]
49718         * ext/openssl/ossl_ssl.c (ossl_sslctx_s_alloc): enable
49719           partial write to allow interruption in SSLSocket#write.
49721 Sun Aug 10 00:34:16 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49723         * cygwin/GNUmakefile: remove unnecessary '--drive-name=$(CC)'
49724           for ccache.
49726 Sat Aug  9 10:36:21 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49728         * marshal.c (w_object): do not dump generic instance variable when
49729           marshal_dump is defined.
49731 Sat Aug  9 00:35:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49733         * ext/bigdecimal.c: F style output(like 1234.56789) implemented
49734           to to_s method.
49735         * ext/bigdecimal_??.html: F style output(like 1234.56789)
49736           implemented to to_s method.
49738 Fri Aug  8 12:33:17 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49740         * bcc32/Makefile.sub: rubyw.exe should be a Windows GUI program.
49741           add the -aa option to WLDFLAGS.
49743 Fri Aug  8 11:29:26 2003  Koji Arai  <jca02266@nifty.ne.jp>
49745         * marshal.c (w_object): should set `c_arg' at first.
49747 Fri Aug  8 03:22:28 2003  GOTOU Yuuzou  <gotoyuzo@notwork.org>
49749         * lib/webrick/httputils.rb (FormData#list): should not take
49750           a side effect for the receiver.
49752 Thu Aug  7 14:40:37 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49754         * cygwin/GNUmakefile: better --disbale-shared option support.
49756         * cygwin/GNUmakefile: add forwarding DLL target for cygwin.
49758 Thu Aug  7 14:21:05 2003  Corinna Vinschen  <vinschen@redhat.com>
49760         * configure.in: Fix Cygwin specific naming of libraries to
49761           be net distribution compliant. (ruby-bugs:PR#1077)
49762           cygwin-ruby18.dll -> cygruby18.dll
49764 Thu Aug  7 12:51:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49766         * eval.c (rb_f_at_exit): should not be called without a block.
49767           block_given check added.
49769 Thu Aug  7 06:46:06 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49771         * eval.c (rb_call0): forgot to pop ruby_class.
49773         * eval.c (rb_call0): update ruby_class as well as ruby_cref.
49774           (ruby-bugs-ja:PR#540)
49776 Thu Aug  7 04:52:50 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49778         * eval.c (rb_yield_0): remove ruby_frame->cbase and unify to
49779           ruby_cref.  [ruby-talk:78141]
49781 Thu Aug  7 04:19:15 2003  Akinori MUSHA  <knu@iDaemons.org>
49783         * gc.c: FreeBSD/ia64's mcontext_t is a bit different from that of
49784           Linux/ia64.  This makes gc.c compile but miniruby coredumps for
49785           the moment.
49787 Thu Aug  7 00:15:00 2003  Shigeo Kobayashi  <shigek@ruby-lang.org>
49789         * ext/bigdecimal.c: Comparison results adjusted to Float's.
49790         * ext/bigdecimal.c: Use rb_num_coerce_????(x,y) instead of own.
49792 Wed Aug  6 22:58:00 2003  Nathaniel Talbott  <ntalbott@ruby-lang.org>
49794         * lib/test/unit/testcase.rb: Added equality checking.
49795         * lib/test/unit/testsuite.rb: Added equality checking.
49796         * lib/test/unit/assertions.rb: Fixed a warning.
49798 Wed Aug  6 17:28:10 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49800         * ext/extmk.rb (extmake): pass LIBPATH to make ruby.  [ruby-dev:21137]
49802         * ext/extmk.rb (extmake): set library name as source file name in
49803           Init_ext().  [ruby-dev:21137]
49805         * lib/mkmf.rb (Logging::postpone): postpone logging messages after
49806           heading message as the result of the block.
49808         * lib/mkmf.rb (macro_defined?): append newline to src unless ended
49809           with it.
49811         * lib/mkmf.rb (have_library): treat nil function name as "main".
49812           (ruby-bugs:PR#1083)
49814         * lib/mkmf.rb (pkg_config): should append additional libraries to
49815           $libs but not $LIBS.  [ruby-dev:21137]
49817         * ext/io/wait/extconf.rb: check DOSISH macro instead of platform.
49819         * ext/digest/sha1/extconf.rb: have_library already appends library
49820           name.
49822 Wed Aug  6 17:23:57 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49824         * eval.c: initialize /* OK */ variables by Qnil to stop warnings.
49826 Wed Aug  6 04:58:32 2003  NAKAMURA Usaku  <usa@ruby-lang.org>
49828         * ext/Setup*: add io/wait and openssl.
49830 Wed Aug  6 01:13:38 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49832         * eval.c (rb_f_autoload): use ruby_cbase instead of ruby_class.
49834         * eval.c (rb_f_autoload_p): ditto.
49836         * class.c (rb_mod_init_copy): no longer implements independent
49837           clone and dup methods.  override "initialize_copy" instead.
49838           [ruby-core:01352]
49840         * object.c (rb_class_s_alloc): define Class allocation function.
49841           this makes Classes to follow clone framework that uses
49842           initialize_copy.
49844         * object.c (rb_class_initialize): separate instantiation and
49845           initialization.
49847         * object.c (rb_obj_alloc): prohibit instantiation from
49848           uninitialized class.
49850         * object.c (rb_class_superclass): check uninitialized class.
49852         * array.c (rb_ary_fill): wrong index processing with block.  this
49853           fix was done by Koji Arai <JCA02266@nifty.ne.jp> [ruby-list:38029]
49855         * marshal.c (w_object): should preserve generic ivar for nil,
49856           true, false, symbols, and fixnums.
49858         * marshal.c (w_uclass): base_klass check should be done after
49859           rb_class_real().
49861 Wed Aug  6 01:18:50 2003  Minero Aoki  <aamine@loveruby.net>
49863         * lib/net/http.rb: update document.
49865         * lib/net/pop.rb: ditto.
49867         * lib/net/protocol.rb: ditto.
49869 Wed Aug  6 00:48:37 2003  Koji Arai  <jca02266@nifty.ne.jp>
49871         * marshal.c (w_object): should recommend marshal_dump rather than
49872           _dump_data.
49874 Tue Aug  5 17:58:57 2003  WATANABE Hirofumi  <eban@ruby-lang.org>
49876         * lib/fileutils.rb (install): should preserve timestamp only.
49878 Tue Aug  5 17:31:59 2003  Ian Macdonald  <ian@caliban.org>
49880         * lib/shell/command-processor.rb (Shell::CommandProcessor::rmdir):
49881           simple typo.
49883 Tue Aug  5 15:47:34 2003  Nobuyoshi Nakada  <nobu@ruby-lang.org>
49885         * eval.c (rb_load): should preserve current source file/line.
49887 Tue Aug  5 10:04:42 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49889         * string.c (str_new4): ptr may refer null_str.
49891 Mon Aug  4 17:25:18 2003  Yukihiro Matsumoto  <matz@ruby-lang.org>
49893         * stable version 1.8.0 released.
49895 For the changes before 1.8.0, see doc/ChangeLog-1.8.0
49897 Local variables:
49898 add-log-time-format: (lambda ()
49899   (let* ((time (current-time))
49900          (system-time-locale "C")
49901          (diff (+ (cadr time) 32400))
49902          (lo (% diff 65536))
49903          (hi (+ (car time) (/ diff 65536))))
49904   (format-time-string "%a %b %e %H:%M:%S %Y" (list hi lo) t)))
49905 indent-tabs-mode: t
49906 tab-width: 8
49907 end: